Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

FriCAS 1.3.10 on some algebraic integrands

74 views
Skip to first unread message

nob...@nowhere.invalid

unread,
Feb 9, 2024, 12:23:26 PMFeb 9
to

I have been playing around with some old algebraic integrands in the
new version 1.3.10 of FriCAS on the web interface.

Sam Blake's pseudo-elliptic of April 2020 still gives:

integrate((x^4 - 1)*(x^4 + x^2 + 1)*sqrt(-x^4 + x^2 - 1)
/(x^4 + 1)^3, x)

>> Error detected within library code:
catdef: division by zero

perhaps because the radicand is negative everywhere on the real axis.

And an older and presumably truly elliptic case still fails:

integrate((5*x - 9*sqrt(6) + 26)
/((x^2 - 4*x - 50)*sqrt(x^3 - 30*x - 56)), x)

>> Error detected within library code:
catdef: division by zero

in the same manner, although the radicand is cubic here.

The following integrand by Legendre is still evaluated to six complex
logarithms:

integrate(x/((4 - x^3)*sqrt(1 - x^3)), x)

(((-3)^(1/2)+(-1))*((-1)/432)^(1/6)*log((((3888*x^5*(-3)^(1/2)+3888*x^5)*(((-1)/432)^(1/6))^5+(360*x^6+1440*x^3+(-1152))*(((-1)/432)^(1/6))^3+(((-6)*x^7+(-96)*x^4+48*x)*(-3)^(1/2)+(6*x^7+96*x^4+(-48)*x))*((-1)/432)^(1/6))*((-1)*x^3+1)^(1/2)+((((-864)*x^7+(-864)*x^4+1728*x)*(-3)^(1/2)+(864*x^7+864*x^4+(-1728)*x))*(((-1)/432)^(1/6))^4+(((-36)*x^8+(-252)*x^5+288*x^2)*(-3)^(1/2)+((-36)*x^8+(-252)*x^5+288*x^2))*(((-1)/432)^(1/6))^2+((-1)*x^9+(-66)*x^6+72*x^3+(-32))))/(x^9+(-12)*x^6+48*x^3+(-64)))+(((-3)^(1/2)+1)*((-1)/432)^(1/6)*log((((3888*x^5*(-3)^(1/2)+(-3888)*x^5)*(((-1)/432)^(1/6))^5+((-360)*x^6+(-1440)*x^3+1152)*(((-1)/432)^(1/6))^3+(((-6)*x^7+(-96)*x^4+48*x)*(-3)^(1/2)+((-6)*x^7+(-96)*x^4+48*x))*((-1)/432)^(1/6))*((-1)*x^3+1)^(1/2)+(((864*x^7+864*x^4+(-1728)*x)*(-3)^(1/2)+(864*x^7+864*x^4+(-1728)*x))*(((-1)/432)^(1/6))^4+((36*x^8+252*x^5+(-288)*x^2)*(-3)^(1/2)+((-36)*x^8+(-252)*x^5+288*x^2))*(((-1)/432)^(1/6))^2+((-1)*x^9+(-66)*x^6+72*x^3+(-32))))/(x^9+(-12)*x^6+48*x^3+(-64)))+((-2)*((-1)/432)^(1/6)*log(((7776*x^5*(((-1)/432)^(1/6))^5+((-360)*x^6+(-1440)*x^3+1152)*(((-1)/432)^(1/6))^3+(12*x^7+192*x^4+(-96)*x)*((-1)/432)^(1/6))*((-1)*x^3+1)^(1/2)+(((-1728)*x^7+(-1728)*x^4+3456*x)*(((-1)/432)^(1/6))^4+(72*x^8+504*x^5+(-576)*x^2)*(((-1)/432)^(1/6))^2+((-1)*x^9+(-66)*x^6+72*x^3+(-32))))/(x^9+(-12)*x^6+48*x^3+(-64)))+(2*((-1)/432)^(1/6)*log((((-7776)*x^5*(((-1)/432)^(1/6))^5+(360*x^6+1440*x^3+(-1152))*(((-1)/432)^(1/6))^3+((-12)*x^7+(-192)*x^4+96*x)*((-1)/432)^(1/6))*((-1)*x^3+1)^(1/2)+(((-1728)*x^7+(-1728)*x^4+3456*x)*(((-1)/432)^(1/6))^4+(72*x^8+504*x^5+(-576)*x^2)*(((-1)/432)^(1/6))^2+((-1)*x^9+(-66)*x^6+72*x^3+(-32))))/(x^9+(-12)*x^6+48*x^3+(-64)))+(((-1)*(-3)^(1/2)+(-1))*((-1)/432)^(1/6)*log(((((-3888)*x^5*(-3)^(1/2)+3888*x^5)*(((-1)/432)^(1/6))^5+(360*x^6+1440*x^3+(-1152))*(((-1)/432)^(1/6))^3+((6*x^7+96*x^4+(-48)*x)*(-3)^(1/2)+(6*x^7+96*x^4+(-48)*x))*((-1)/432)^(1/6))*((-1)*x^3+1)^(1/2)+(((864*x^7+864*x^4+(-1728)*x)*(-3)^(1/2)+(864*x^7+864*x^4+(-1728)*x))*(((-1)/432)^(1/6))^4+((36*x^8+252*x^5+(-288)*x^2)*(-3)^(1/2)+((-36)*x^8+(-252)*x^5+288*x^2))*(((-1)/432)^(1/6))^2+((-1)*x^9+(-66)*x^6+72*x^3+(-32))))/(x^9+(-12)*x^6+48*x^3+(-64)))+((-1)*(-3)^(1/2)+1)*((-1)/432)^(1/6)*log(((((-3888)*x^5*(-3)^(1/2)+(-3888)*x^5)*(((-1)/432)^(1/6))^5+((-360)*x^6+(-1440)*x^3+1152)*(((-1)/432)^(1/6))^3+((6*x^7+96*x^4+(-48)*x)*(-3)^(1/2)+((-6)*x^7+(-96)*x^4+48*x))*((-1)/432)^(1/6))*((-1)*x^3+1)^(1/2)+((((-864)*x^7+(-864)*x^4+1728*x)*(-3)^(1/2)+(864*x^7+864*x^4+(-1728)*x))*(((-1)/432)^(1/6))^4+(((-36)*x^8+(-252)*x^5+288*x^2)*(-3)^(1/2)+((-36)*x^8+(-252)*x^5+288*x^2))*(((-1)/432)^(1/6))^2+((-1)*x^9+(-66)*x^6+72*x^3+(-32))))/(x^9+(-12)*x^6+48*x^3+(-64))))))))/36

... even though a real expression for the antiderivative exists:

INT(x/((4 - x^3)*SQRT(1 - x^3)), x) =
2^(1/3)/18*(ATANH(SQRT(1 - x^3))
- 3*ATANH((1 + 2^(1/3)*x)/SQRT(1 - x^3))
- SQRT(3)*ATAN((2^(1/3) - 2^(2/3)*x - x^2)
/(SQRT(3)*2^(1/3)*SQRT(1 - x^3))))

Can't these complex logarithms be broken down similar to those for
integral 5.66 (#401) from the Timofeev suite?

And for the next integrand, FriCAS still produces unreasonable integers
in an arc tangent's argument:

integrate(1/((x + 1)*(x^3 + 2)^(1/3)), x)

(log(((21*x^4+(-6)*x^3+(-96)*x^2+(-60)*x+12)*((x^3+2)^(1/3))^2+(21*x^5+(-48)*x^3+102*x^2+228*x+96)*(x^3+2)^(1/3)+(22*x^6+6*x^5+(-48)*x^4+44*x^3+24*x^2+(-192)*x+(-140)))/(x^6+6*x^5+15*x^4+20*x^3+15*x^2+6*x+1))+2*3^(1/2)*atan(((98966744593197647869364591874*x^4+190053406517364372745124029472*x^3+(-642339750020464731448133545632)*x^2+(-1764382450892402509391037276448)*x+(-1072244631963565627440642667696))*3^(1/2)*((x^3+2)^(1/3))^2+((-45228634350310035870300951616)*x^5+(-453545129950193664973324584892)*x^4+(-726175722499147186465445363320)*x^3+735314591615271415729365586328*x^2+2230842809300000322439227290544*x+1190118508012558386973005239952)*3^(1/2)*(x^3+2)^(1/3)+(93292570833559435663132301885*x^6+382151535711085278859235047618*x^5+673924074224408772959625384792*x^4+889426563183087468015580290048*x^3+888876515195959220955879945824*x^2+351260598258508240019971964880*x+(-47674000995597211057816884304))*3^(1/2))/(236716304443694165237125394649*x^6+1013240117509374668590043803350*x^5+46796858328175763683008212928*x^4+(-2686291575945300326054363894472)*x^3+1085003586721431086608600126056*x^2+7625406903034897531937916271008*x+4664445860470002276943457906640)))/12

... while the antiderivative can in fact be compactly stated as:

INT(1/((x + 1)*(x^3 + 2)^(1/3)), x) =
1/12*(- 3*LN((x^3 + 2)^(1/3) - x)
+ 2*SQRT(3)*ATAN(1/SQRT(3)*(1 + 2*x/(x^3 + 2)^(1/3))))
- 1/4*(LN((x + 2)^3 - (x^3 + 2))
- 3*LN((x + 2) - (x^3 + 2)^(1/3))
+ 2*SQRT(3)*ATAN(1/SQRT(3)*(1 + 2*((x + 2)/(x^3 + 2)^(1/3)))))

If the unreasonable numbers cannot be avoided earlier, they could at
least be removed by subtracting an arc tangent for a suitably chosen
value of x; both x = infinity and x = -2^(1/3) turn out to work well.

Finally I find that FriCAS version 1.3.10 still cannot solve:

integrate((3*x + 2)/((x + 6)*(9*x - 2)*(3*x^2 + 4)^(1/3)), x)

>> Error detected within library code:
integrate: implementation incomplete (residue poly has multiple
non-linear factors)

as first presented in the thread "Risch integrator troubles" of
Autumn/Winter 2019/2020. Why does this one remain too hard for an
algebraic Risch integrator, unlike the many cube-root integrands of
Goursat type now mastered by FriCAS?

Martin.

Nasser M. Abbasi

unread,
Feb 9, 2024, 6:11:53 PMFeb 9
to
On 2/9/2024 11:23 AM, clicl...@freenet.de wrote:
>
> I have been playing around with some old algebraic integrands in the
> new version 1.3.10 of FriCAS on the web interface.
>
> Sam Blake's pseudo-elliptic of April 2020 still gives:
>
> integrate((x^4 - 1)*(x^4 + x^2 + 1)*sqrt(-x^4 + x^2 - 1)
> /(x^4 + 1)^3, x)
>
>>> Error detected within library code:
> catdef: division by zero
>
> perhaps because the radicand is negative everywhere on the real axis.
>

Fyi;

I've reported division by zero to Fricas newsgroup

https://groups.google.com/g/fricas-devel/c/6g0B53qX2TU

Btw, I do not think many Fricas developers read sci.math.symbolic

May be you could CC

fricas...@googlegroups.com

also. I do not know if it will work or not from your end
or if registration is needed or not. Sometimes I get direct email
from the above myself.
--Nasser

nob...@nowhere.invalid

unread,
Feb 12, 2024, 12:51:35 PMFeb 12
to

"Nasser M. Abbasi" schrieb:
>
> On 2/9/2024 11:23 AM, clicl...@freenet.de wrote:
> >
> > I have been playing around with some old algebraic integrands in the
> > new version 1.3.10 of FriCAS on the web interface.
> >
> > Sam Blake's pseudo-elliptic of April 2020 still gives:
> >
> > integrate((x^4 - 1)*(x^4 + x^2 + 1)*sqrt(-x^4 + x^2 - 1)
> > /(x^4 + 1)^3, x)
> >
> >>> Error detected within library code:
> > catdef: division by zero
> >
> > perhaps because the radicand is negative everywhere on the real
> > axis.
> >
>
> Fyi;
>
> I've reported division by zero to Fricas newsgroup
>
> https://groups.google.com/g/fricas-devel/c/6g0B53qX2TU
>
> Btw, I do not think many Fricas developers read sci.math.symbolic
>
> May be you could CC
>
> fricas...@googlegroups.com
>
> also. I do not know if it will work or not from your end
> or if registration is needed or not. Sometimes I get direct email
> from the above myself.

Thanks, will try this next time and see what happpens. In fact, I more
or less regularly follow the posts at <https://www.mail-archive.com/
fricas...@googlegroups.com>, and thus see Waldek occasionally
responding to <sci.math.symbolic> messages over there - so he's still
reading them. Dunno why he doesn't register at Eternal-September - he
even posted via Telekomunikacja Polska in April last year (I suppose
they offered a free trial which ran out).

I have verified that registration at <www.solani.org> also works, but
one may have to remind the operators via e-mail and wait for a week
until one receives a password.

And as stated before, I can e-mail a password for <news.killfile.org>
which I was able to guess to any one of the serious <sci.math.symbolic>
posters.

>
> > And an older and presumably truly elliptic case still fails:
> >
> > integrate((5*x - 9*sqrt(6) + 26)
> > /((x^2 - 4*x - 50)*sqrt(x^3 - 30*x - 56)), x)
> >
> >>> Error detected within library code:
> > catdef: division by zero
> >
> > in the same manner, although the radicand is cubic here.
> >
> > [...]
> >
> > And for the next integrand, FriCAS still produces unreasonable
> > integers in an arc tangent's argument:
> >
> > integrate(1/((x + 1)*(x^3 + 2)^(1/3)), x)
> >
> >
(log(((21*x^4+(-6)*x^3+(-96)*x^2+(-60)*x+12)*((x^3+2)^(1/3))^2+(21*x^5+(-48)*x^3+102*x^2+228*x+96)*(x^3+2)^(1/3)+(22*x^6+6*x^5+(-48)*x^4+44*x^3+24*x^2+(-192)*x+(-140)))/(x^6+6*x^5+15*x^4+20*x^3+15*x^2+6*x+1))+2*3^(1/2)*atan(((98966744593197647869364591874*x^4+190053406517364372745124029472*x^3+(-642339750020464731448133545632)*x^2+(-1764382450892402509391037276448)*x+(-1072244631963565627440642667696))*3^(1/2)*((x^3+2)^(1/3))^2+((-45228634350310035870300951616)*x^5+(-453545129950193664973324584892)*x^4+(-726175722499147186465445363320)*x^3+735314591615271415729365586328*x^2+2230842809300000322439227290544*x+1190118508012558386973005239952)*3^(1/2)*(x^3+2)^(1/3)+(93292570833559435663132301885*x^6+382151535711085278859235047618*x^5+673924074224408772959625384792*x^4+889426563183087468015580290048*x^3+888876515195959220955879945824*x^2+351260598258508240019971964880*x+(-47674000995597211057816884304))*3^(1/2))/(236716304443694165237125394649*x^6+1013240117509374668590043803350*x^5+46796858328175763683008212928*x^4+(-2686291575945300326054363894472)*x^3+1085003586721431086608600126056*x^2+7625406903034897531937916271008*x+4664445860470002276943457906640)))/12
> >
> > ... while the antiderivative can in fact be compactly stated as:
> >
> > INT(1/((x + 1)*(x^3 + 2)^(1/3)), x) =
> > 1/12*(- 3*LN((x^3 + 2)^(1/3) - x)
> > + 2*SQRT(3)*ATAN(1/SQRT(3)*(1 + 2*x/(x^3 + 2)^(1/3))))
> > - 1/4*(LN((x + 2)^3 - (x^3 + 2))
> > - 3*LN((x + 2) - (x^3 + 2)^(1/3))
> > + 2*SQRT(3)*ATAN(1/SQRT(3)*(1 + 2*((x + 2)/(x^3 + 2)^(1/3)))))
> >
> > If the unreasonable numbers cannot be avoided earlier, they could at
> > least be removed by subtracting an arc tangent for a suitably chosen
> > value of x; both x = infinity and x = -2^(1/3) turn out to work
> > well.

I also find that x = -1 works less well; perhaps one should simply try
x = infinity in all cases of algebraic antiderivatives with
unreasonable arc tangent arguments (but only if the radical stays
real?), and perhaps for reasonable arguments as well to avoid deciding
what's unreasonable.

> >
> > [...]
> >

Martin.

Sam Blake

unread,
Feb 12, 2024, 7:53:05 PMFeb 12
to
Mathematica 14 gets the last integral (via my open source package IntegrateAlgebraic)

In[1235]:= $VersionNumber

Out[1235]= 14.


In[1236]:= Integrate[(3*x + 2)/((x + 6)*(9*x - 2)*(3*x^2 + 4)^(1/3)), x]

Out[1236]= -((1/(28*14^(1/3)))*(2*Sqrt[3]*ArcTan[(10*14^(1/3) - 3*14^(1/3)*x + 7*(4 + 3*x^2)^(1/3))/
(7*Sqrt[3]*(4 + 3*x^2)^(1/3))] -
2*Log[-10*14^(1/3) + 3*14^(1/3)*x + 14*(4 + 3*x^2)^(1/3)] +
Log[100*14^(2/3) - 60*14^(2/3)*x + 9*14^(2/3)*x^2 +
196*(4 + 3*x^2)^(2/3) + 14*(10 - 3*x)*(56 + 42*x^2)^(1/3)]))
0 new messages