Hi Aaron,

Thanks for your explanation.

How does SymPy evaluates integrals like,

*>>integrate((a + b*u)**m, x) when u = c + dx  (*i.e. Integration by 
substitution)

I couldn't find such an example can give one?

Abdullah Javed Nesar

On Sunday, March 5, 2017 at 11:58:20 AM UTC+5:30, Aaron Meurer wrote:
>
> The SymPy assumptions system lets you define x = Symbol('x', 
> positive=True) (and query like x.is_positive). The pattern matcher 
> will need to be able to set and define restrictions like this. Also 
> note that expand_log() and logcombine() already expand and combine 
> logarithms and check the domain restrictions. 
>
> Another thing is that the integrator should return a Piecewise 
> whenever possible. For example, the current integrator: 
>
> In [6]: integrate(x**n, x) 
> Out[6]: 
> ⎧log(x)  for n = -1 
> ⎪ 
> ⎪ n + 1 
> ⎨x 
> ⎪──────  otherwise 
> ⎪n + 1 
> ⎩ 
>
> This way we get results that are mathematically correct, even when 
> assumptions aren't set. 
>
> Aaron Meurer 
>
> On Thu, Mar 2, 2017 at 8:56 AM, Abdullah Javed Nesar 
> <[email protected] <javascript:>> wrote: 
> > Hi Ondřej, 
> > 
> > I am willing to work on Rubi Integrator this summer. I went through the 
> > issues you raised for this project and this idea really sounds cool. It 
> > would be great to segregate the different methods of integration into a 
> > decision tree which would hence improve its performance. 
> > 
> > Before implementing Rule-based integrator we need to implement fast 
> pattern 
> > matching/replacement for the set of 10,000 rules so we need to plan out 
> an 
> > efficient decision tree for it. 
> > 
> > log(x*y) -> log(x) + log(y);   x > 0, y > 0 
> > 
> > 
> > In the above example how do we exactly move on with domain restrictions 
> > (i.e. x, y). 
> > 
> > On Wednesday, March 1, 2017 at 8:39:41 PM UTC+5:30, Ondřej Čertík wrote: 
> >> 
> >> Hi, 
> >> 
> >> Here is a project that I would love to see happen: 
> >> 
> >> https://github.com/sympy/sympy/issues/12233 
> >> 
> >> I am available to mentor it, and I think quite a few people are 
> >> excited about it and such a system/framework (i.e. set of rules for 
> >> patter matching + compiler to generate a fast if/then/else decision 
> >> tree) would have applications beyond just integration, but integration 
> >> would already be super useful. As you can browse on Rubi web page, the 
> >> integrator's capabilities are very impressive, i.e. the rule based 
> >> system Rubi 4.9 can do more integrals than Mathematica, and is about 
> >> as fast, due to the large number of rules, and the if/then/else 
> >> decision tree Rubi 5 promises an order of magnitude (or more) speedup, 
> >> but it's still in development. 
> >> 
> >> The project is big in scope, so there could even be multiple projects. 
> >> If anybody is interested in this, please get in touch, and try to 
> >> propose a good plan. 
> >> 
> >> Ondrej 
> > 
> > -- 
> > You received this message because you are subscribed to the Google 
> Groups 
> > "sympy" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an 
> > email to [email protected] <javascript:>. 
> > To post to this group, send email to [email protected] 
> <javascript:>. 
> > Visit this group at https://groups.google.com/group/sympy. 
> > To view this discussion on the web visit 
> > 
> https://groups.google.com/d/msgid/sympy/05a4ee3e-7a0b-485b-9918-0a68bb4f3350%40googlegroups.com.
>  
>
> > 
> > For more options, visit https://groups.google.com/d/optout. 
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/0cc84418-0eac-4ab2-b975-c74eeec47d64%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to