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.