Updates:
Summary: Piecewise integration failure over multiple symbolically-defined ranges
        Status: Valid

Comment #6 on issue 3801 by julien.r...@gmail.com: Piecewise integration failure over multiple symbolically-defined ranges
http://code.google.com/p/sympy/issues/detail?id=3801

What makes this more difficult is that your Piecewise has symbols in its conditions, i.e. you are defining symbolic ranges. SymPy simply doesn't know which ordering your symbols have. SymPy has two assumption systems, but neither of them at the moment will help in handling this problem. In the old, established assumption system, assumptions are attached to individual symbols themselves, and this sytem does not support relational assumptions of the form t0 < t1 < T. Although the new, yet-to-be-made-mainstream assumption system is expressive enough to represent such assumptions, SymPy doesn't do anything useful with them, yet.

You may look into how Min/Max are implemented and rewrite those parts to use the new assumption system. If you manage to make this part work, you are still likely to run into problems with other functions not obeying your assumptions sooner or later. In the end, rewriting the whole of SymPy to use the new assumption system is necessary, and it is a very difficult task.

One more comment, be careful when writing chained relationals in python:
t0 <= t < t1
to get the mathematical, symbolic meaning you instead have to write:
And(t0 <= t, t < t1)

--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

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


Reply via email to