Comment #5 on issue 2618 by mrock...@gmail.com: Solve fails on expressions containing finite symbols
http://code.google.com/p/sympy/issues/detail?id=2618

Ok, so apparently is_finite is operating correctly, given the definition that finite <= bounded and not infinitesimal (whether or not this is an intuitive definition is another issue) -y-3 is (in this sense) not finite because y might equal 3 so the expression might be zero.

So I change my code to use bounded, rather than finite and obtain the correct answer for boundedness

In [1]: x, y = symbols('x y', real=True, bounded=True)

In [2]: (-y-3).is_bounded
Out[2]: True

However solve still fails.
In [3]: solve(x+y+3, x)
Out[3]: []

This is because the new assumptions system is checked first and because
ask(Q.bounded(y)) == False
so the answer is thrown out.

Two options:
1) change the check_assumptions code that solve calls to check both old and new assumptions and clear the solution if either is true 2) change new assumption so that ask(Q.bounded(y)) is True or, at the very least, is None be default rather than False.

Thoughts?



--
You received this message because you are subscribed to the Google Groups 
"sympy-issues" group.
To post to this group, send email to sympy-issues@googlegroups.com.
To unsubscribe from this group, send email to 
sympy-issues+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sympy-issues?hl=en.

Reply via email to