Oh dear! In FriCAS 1.3.9 try:
radicalSolve(64*z^4 + 64*z^3 + 32*z^2 - 8*z + 1)
and then try:
ii := rootOf(ii^2+1)
factor(64*z^4 + 64*z^3 + 32*z^2 - 8*z + 1, [ii])
to see what is wrong with radicalSolve(). (The integer quartic splits
into gaussian-integer quadratics.)
Also, unparse() in FriCAS refuses to convert the result from
radicalSolve() of the type List(Equation(Expression(Integer))) back
to InputForm. Why shouldn't this be be allowed?!? (The prettyprinted
ASCII monster is appended below.)
Derive 6.10 factors the integer polynomial right away as:
FACTOR(64*z^4 + 64*z^3 + 32*z^2 - 8*z + 1, Complex)
= 64*(z - SQRT(2)/4 + 1/4 + #i*(1/4 - SQRT(2)/4))
*(z + SQRT(2)/4 + 1/4 + #i*(SQRT(2)/4 + 1/4))
*(z + SQRT(2)/4 + 1/4 - #i*(SQRT(2)/4 + 1/4))
*(z - SQRT(2)/4 + 1/4 + #i*(SQRT(2)/4 - 1/4))
This polynomial arises in integral 5.66 (#401) from the Timofeev test
suite:
INT(TAN(x)/(SQRT(TAN(x)) - 1)^2, x)
= - x/2 + 1/(1 - SQRT(TAN(x))) + 1/2*LN(COS(x))
+ LN(1 - SQRT(TAN(x)))
+ 1/SQRT(2)*LN((1 + TAN(x) + SQRT(2)*SQRT(TAN(x)))/SEC(x))
- 1/SQRT(2)*ATAN(1 + SQRT(2)*SQRT(TAN(x)))
+ 1/SQRT(2)*ATAN(1 - SQRT(2)*SQRT(TAN(x)))
= - x/2 + 1/(1 - SQRT(TAN(x))) + 1/2*LN(COS(x))
+ LN(1 - SQRT(TAN(x)))
+ 1/SQRT(2)*ATANH((1 + TAN(x))/(SQRT(2)*SQRT(TAN(x))))
- 1/SQRT(2)*ATAN(1 + SQRT(2)*SQRT(TAN(x)))
+ 1/SQRT(2)*ATAN(1 - SQRT(2)*SQRT(TAN(x)))
which was discussed in the <sci.math.symbolic> thread "Boooooooooooooooooooooooooo" from April to June 2016. Note that the
one and only radical extension needed to express the antiderivative is SQRT(2).
No doubt, radicalSolve() in FriCAS needs to be overhauled.
"clicliclic@freenet.de" schrieb:
Oh dear! In FriCAS 1.3.9 try:
radicalSolve(64*z^4 + 64*z^3 + 32*z^2 - 8*z + 1)
and then try:
ii := rootOf(ii^2+1)
factor(64*z^4 + 64*z^3 + 32*z^2 - 8*z + 1, [ii])
to see what is wrong with radicalSolve(). (The integer quartic
splits into gaussian-integer quadratics.)
Also, unparse() in FriCAS refuses to convert the result from
radicalSolve() of the type List(Equation(Expression(Integer))) back
to InputForm. Why shouldn't this be be allowed?!? (The prettyprinted
ASCII monster is appended below.)
Derive 6.10 factors the integer polynomial right away as:
FACTOR(64*z^4 + 64*z^3 + 32*z^2 - 8*z + 1, Complex)
= 64*(z - SQRT(2)/4 + 1/4 + #i*(1/4 - SQRT(2)/4))
*(z + SQRT(2)/4 + 1/4 + #i*(SQRT(2)/4 + 1/4))
*(z + SQRT(2)/4 + 1/4 - #i*(SQRT(2)/4 + 1/4))
*(z - SQRT(2)/4 + 1/4 + #i*(SQRT(2)/4 - 1/4))
This polynomial arises in integral 5.66 (#401) from the Timofeev
test suite:
INT(TAN(x)/(SQRT(TAN(x)) - 1)^2, x)
= - x/2 + 1/(1 - SQRT(TAN(x))) + 1/2*LN(COS(x))
+ LN(1 - SQRT(TAN(x)))
+ 1/SQRT(2)*LN((1 + TAN(x) + SQRT(2)*SQRT(TAN(x)))/SEC(x))
- 1/SQRT(2)*ATAN(1 + SQRT(2)*SQRT(TAN(x)))
+ 1/SQRT(2)*ATAN(1 - SQRT(2)*SQRT(TAN(x)))
= - x/2 + 1/(1 - SQRT(TAN(x))) + 1/2*LN(COS(x))
+ LN(1 - SQRT(TAN(x)))
+ 1/SQRT(2)*ATANH((1 + TAN(x))/(SQRT(2)*SQRT(TAN(x))))
- 1/SQRT(2)*ATAN(1 + SQRT(2)*SQRT(TAN(x)))
+ 1/SQRT(2)*ATAN(1 - SQRT(2)*SQRT(TAN(x)))
which was discussed in the <sci.math.symbolic> thread "Boooooooooooooooooooooooooo" from April to June 2016. Note that the
one and only radical extension needed to express the antiderivative
is SQRT(2).
No doubt, radicalSolve() in FriCAS needs to be overhauled.
According to old notes of mine, a simple way to split any suitable
quartic:
a + b*x + c*x^2 + d*x^3 + e*x^4
into quadratics is by factorizing its resolvent:
4*a*c*e - a*d^2 - b^2*e + e*(b*d - 4*a*e)*y - c*e^2*y^2 + e^3*y^3
and expressing the quadratics in terms of any one resolvent root y as:
1/(4*e)*(e*y - e*(d*y - 2*b)/SQRT(d^2 + 4*e*(e*y - c))
+ (d - SQRT(d^2 + 4*e*(e*y - c)))*x + 2*e*x^2)
*(e*y + e*(d*y - 2*b)/SQRT(d^2 + 4*e*(e*y - c))
+ (d + SQRT(d^2 + 4*e*(e*y - c)))*x + 2*e*x^2)
which applies if d^2 + 4*e*(e*y - c) /= 0 and doesn't involve a, or
as:
1/(4*e)*(e*y - SQRT(e*(e*y^2 - 4*a))
+ (d - e*(d*y - 2*b)/SQRT(e*(e*y^2 - 4*a)))*x + 2*e*x^2)
*(e*y + SQRT(e*(e*y^2 - 4*a))
+ (d + e*(d*y - 2*b)/SQRT(e*(e*y^2 - 4*a)))*x + 2*e*x^2)
which applies if e*y^2 - 4*a /= 0 and doesn't involve c. For d^2 +
4*e*(e*y - c) = 0 one can use:
1/(4*e)*(e*y - SQRT(e*(e*y^2 - 4*a)) + d*x + 2*e*x^2)
*(e*y + SQRT(e*(e*y^2 - 4*a)) + d*x + 2*e*x^2)
while for e*y^2 - 4*a = 0 one finds:
1/(4*e)*(e*y + (d - SQRT(d^2 + 4*e*(e*y - c)))*x + 2*e*x^2)
*(e*y + (d + SQRT(d^2 + 4*e*(e*y - c)))*x + 2*e*x^2)
As no cube roots can appear, this way of splitting a quartic is
advantageous whenever its resolvent possesses at least one rational
root. Indeed, the resolvent of 64*z^4 + 64*z^3 + 32*z^2 - 8*z + 1
simply is:
(4*y - 3)*(4*y + 1)*y
Using all three resolvent roots in turn yields three different ways of splitting the quartic; if the quartic is real, at least one pair of
factors is real as well.
[...]
This polynomial arises in integral 5.66 (#401) from the Timofeev test
suite:
INT(TAN(x)/(SQRT(TAN(x)) - 1)^2, x)
= - x/2 + 1/(1 - SQRT(TAN(x))) + 1/2*LN(COS(x))
+ LN(1 - SQRT(TAN(x)))
+ 1/SQRT(2)*LN((1 + TAN(x) + SQRT(2)*SQRT(TAN(x)))/SEC(x))
- 1/SQRT(2)*ATAN(1 + SQRT(2)*SQRT(TAN(x)))
+ 1/SQRT(2)*ATAN(1 - SQRT(2)*SQRT(TAN(x)))
= - x/2 + 1/(1 - SQRT(TAN(x))) + 1/2*LN(COS(x))
+ LN(1 - SQRT(TAN(x)))
+ 1/SQRT(2)*ATANH((1 + TAN(x))/(SQRT(2)*SQRT(TAN(x))))
- 1/SQRT(2)*ATAN(1 + SQRT(2)*SQRT(TAN(x)))
+ 1/SQRT(2)*ATAN(1 - SQRT(2)*SQRT(TAN(x)))
which was discussed in the <sci.math.symbolic> thread "Boooooooooooooooooooooooooo" from April to June 2016. Note that the
one and only radical extension needed to express the antiderivative is SQRT(2).
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 493 |
Nodes: | 16 (2 / 14) |
Uptime: | 20:55:23 |
Calls: | 9,720 |
Calls today: | 10 |
Files: | 13,741 |
Messages: | 6,182,166 |