Status: New
Owner: ----
Labels: Type-Defect Priority-Medium
New issue 3311 by [email protected]: SymPy is lacking a
expressiontree facility / creator
http://code.google.com/p/sympy/issues/detail?id=3311
To create an Integral <-> Integrand Table for all achievable Integral
expressions one needs to create all expression-trees including all
functions and functionlike expression quantities (==fnq), like:
Constants, +,-,*,/,^,f1(arg1),f2(arg1,arg2),...,fn(arg1,...,argn),
Diff1(f,x),Diff2(f,x,y),...,Diffn(f,x0,x1,...,xn),
Integrate1(f,x1,x1a,x1b),Integrate2(f,x,y,xa,xb,ya,yb),...,
Integraten(f,x0,x1,...,xn,x1a,x1b,x2a,x2b,...,xna,xnb),
where every argument is also an expressiontree.
Every fnq can be numbered, so every expression is equivalent to a
numbertree.
Now: To construct all expressions up to N fnq:s in it one can start from
simplest (one fnq, no arguments), list all fnq:s like that and then proceed
to two, three etc. up to N fnq:s. The result will always become a number
tree.
I think SymPy should include a procedure call that would return all these
fnq-expressions (as number trees or as expressions) in a Table:
Allcombinations_fnq(N)
Then differentiating this Table of all expressions would give an Integral
Table as such. Then all linear combinations would also be Integral Tables.
Applying all available transformation rules would then give alternative
versions of same integrals.
To solve an integral it is then enough to create the number tree of an
Integrand and use the Integral Table, which is fast.
--
You received this message because you are subscribed to the Google Groups
"sympy-issues" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sympy-issues?hl=en.