# Extract equalities from a list of assumptions

Hi, how can I recognize an equality from an inequality, in a list of assumptions?

thanks,

edit retag close merge delete

Sort by » oldest newest most voted

Let

sage: var('a,b')
sage: eq1 = a == b
sage: eq2 = a < b


Then

sage: eq1.operator() == operator.eq
True


versus

sage: eq2.operator() == operator.lt
True


operator is a python module and the comparison operators are lt (less than), le (lesser or equal), eq (equal), ne (different), gt (greater than) and ge (greater or equal).

more

To complement @vdelecroix answer, the assumptions is a list of symbolic expressions which you can filter as follows:

sage: var('x,y')
(x, y)
sage: assume(x>0)
sage: assume(x<=1)
sage: assume(y==2)
sage: equalities = [ass for ass in assumptions() if ass.operator() == operator.eq]
sage: inequalities = [ass for ass in assumptions() if ass.operator() in [operator.lt, operator.le, operator.gt, operator.ge]]
sage: equalities
[y == 2]
sage: inequalities
[x > 0, x <= 1]


You might want to put operator.ne somewhere.

more