Hi Aaron!

On Thu, Aug 5, 2010 at 2:01 PM, Aaron S. Meurer <asmeu...@gmail.com> wrote:
> (copied from issue 2010)
>
> I have ready in my integration3 branch a prototype risch_integrate() 
> function, that is a user-level function for the full Risch Algorithm I have 
> been implementing this summer.  Pull from 
> http://github.com/asmeurer/sympy/tree/integration3

This is just excellent!

I would like to invite everyone to try this. (Read Aaron's email above
for things to try and not to try yet.) So here are some tougher cases:

In [1]: risch_integrate(1/(x**8+1), x)
[hangs]


In [4]: cancel(risch_integrate(1/(x**9+1), x).diff(x))
Out[4]:
      d ⎛       ⎛        6        3                          ⎞⎞      3 d ⎛
1 + 3⋅──⎝RootSum⎝531441⋅t  + 729⋅t  + 1, Λ(t, t⋅log(x + 9⋅t))⎠⎠ + 3⋅x ⋅──⎝Root
      dx                                                               dx
──────────────────────────────────────────────────────────────────────────────
                                                                   3
                                                            3 + 3⋅x

   ⎛        6        3                          ⎞⎞
Sum⎝531441⋅t  + 729⋅t  + 1, Λ(t, t⋅log(x + 9⋅t))⎠⎠

──────────────────────────────────────────────────


It should be equivalent but it's a bit messy. Maybe we need to
implement some symbolic manipulation of RootSum().

In [18]: risch_integrate(sqrt(1+exp(x)), x)
NotImplementedError: Couldn't find an elementary transcendental
extension for (1 + exp(x))**(1/2).  Try using a manual extension with
the extension flag.


[18] is probably not supported yet.


Otherwise it works great. I wasn't able to make it break.


Ondrej

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

Reply via email to