@staticmethod<EOL><INDENT>def _get_assumptions(t):<DEDENT>
if t.op in ('<STR_LIT>', '<STR_LIT>', '<STR_LIT>', '<STR_LIT>'):<EOL><INDENT>return [ t.args[<NUM_LIT:0>] >= <NUM_LIT:0> ]<EOL><DEDENT>elif t.op in ('<STR_LIT>', '<STR_LIT>', '<STR_LIT>', '<STR_LIT>'):<EOL><INDENT>return [ t.args[<NUM_LIT:0>] <= <NUM_LIT:2>**len(t.args[<NUM_LIT:0>])-<NUM_LIT:1> ]<EOL><DEDENT>elif t.op in ('<STR_LIT>', '<STR_LIT>'):<EOL><INDENT>return [ _all_operations.SGE(t.args[<NUM_LIT:0>], -(<NUM_LIT:1> << (len(t.args[<NUM_LIT:0>])-<NUM_LIT:1>))) ]<EOL><DEDENT>elif t.op in ('<STR_LIT>', '<STR_LIT>'):<EOL><INDENT>return [ _all_operations.SLE(t.args[<NUM_LIT:0>], (<NUM_LIT:1> << (len(t.args[<NUM_LIT:0>])-<NUM_LIT:1>)) - <NUM_LIT:1>) ]<EOL><DEDENT>else:<EOL><INDENT>return [ ]<EOL><DEDENT>
Given a constraint, _get_assumptions() returns a set of constraints that are implicitly
assumed to be true. For example, `x <= 10` would return `x >= 0`.