|
|
Re: A bug in Reduce package 'algint'?
Posted:
Jan 22, 2013 4:24 PM
|
|
Axel Vogt schrieb: > On 22.01.2013 18:42, clicliclic@freenet.de wrote: > > acer schrieb: > >> > >> Just because Axel's brought up Maple (and not wishing to side-track Martin), in Maple 16.02, > >> > >> expr := sqrt(sqrt(a^2 + x^2) + x)/x: > >> p := u = sqrt(a^2 + x^2) + x: > >> new := student[changevar](p, Int(expr,x), u): > >> sol := eval(value(new),p): > >> lprint(sol); > >> > >> -((2*a^2*((a^2+x^2)^(1/2)+x)^2+a^4+((a^2+x^2)^(1/2)+x)^4) > > /((a^2+x^2)^(1/2)+x)^2)^(1/2) > > *((a^2+x^2)^(1/2)+x)*4^(1/2)*(-((a^2+x^2)^(1/2)+x)^(1/2) > > +a^(1/2)*arctan(((a^2+x^2)^(1/2)+x)^(1/2)/a^(1/2)) > > +a^(1/2)*arctanh(((a^2+x^2)^(1/2)+x)^(1/2)/a^(1/2))) > > /(a^2+((a^2+x^2)^(1/2)+x)^2) > >> > >> other := expand(radnormal(sol),power): > >> lprint(other): > >> > >> 2*((a^2+x^2)^(1/2)+x)^(1/2)-2*a^(1/2)*arctan(((a^2+x^2)^(1/2)+x)^(1/2)/a^(1/2))-2*a^(1/2)*arctanh(((a^2+x^2)^(1/2)+x)^(1/2)/a^(1/2)) > >> > >> What should we expect from the system, automatically? > >> > > > > My outside viewpoint: if the integrand is given in terms of elementary > > functions, an elementary antiderivative whenever one exists. Even if it > > can be expressed more compactly in terms of higher functions. But then > > an infinite 3F2 series is not really simple. > > > > The Wolfram Integrator produces an elementary answer, but includes an > > unnecessary extra factor. Perhaps this is arrived at by automatic > > simplification of 3F2(-1/4, -1/4, 1/4; 1/2, 3/4; -a^2/x^2) ? > > > > How does Maple arrive at 3F2 in the first place? Solution of an ODE? > > Series expansion of the integrand? > > > > Side-tracking won't harm my ramblings, > > > > I have not checked, how Maple 'finds' the solution, but it does > not have implemented the 'catalog' of rules you have worked out > and at hand now. Unfortunately.
I suspect you may be referring to a paper discussed last autumn, something about umpteen theorems on a few pages. As Maple appears to be comparatively weak on pattern matching, it would probably be better here to implement this kind of reduction by setting up and solving the systems of linear equations anew for each problem (by the Extended Euclidean Algorithm if you like), and generalizing to arbitrary order at the same time.
However, those reduction rules only suffice to handle algebraic integrands not involving nested roots - for the latter you need Bronstein's generalization of Hermite reduction, of which Davenport's version was a forerunner, I believe. Waldek should have aquired a much deeper knowledge of all this - perhaps you wait for his review of "Variations on modern Hermite reduction" before starting to work?
I am a bit curious what Reduce (with 'algint' loaded) does return for Vladimir's infamous
INT(SQRT(SQRT(x^4 + 1) + x^2)/((x + 1)^2*SQRT(x^4 + 1)), x)
<http://mathforum.org/kb/message.jspa?messageID=6271992>
Does anybody want to give it a try?
Martin.
|
|