Ask Your Question
2

Extract equalities from a list of assumptions

asked 2016-01-03 07:49:04 -0500

daniele gravatar image

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

thanks,

edit retag flag offensive close merge delete

2 answers

Sort by ยป oldest newest most voted
3

answered 2016-01-03 10:03:53 -0500

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).

edit flag offensive delete link more
3

answered 2016-01-03 10:13:52 -0500

tmonteil gravatar image

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.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2016-01-03 07:49:04 -0500

Seen: 47 times

Last updated: Jan 03 '16