On Tue, Nov 28, 2023 at 07:02:16PM +0800, Qian Yun wrote:
> I have examined integrals where rootSum is over degree 4, from a
> subset of Nasser's test.

There are also examples of degree 3.  When there is 1 real root
solver is doing reasonable job and real roots can be recognized,
like

integrate(((-3)*x^2+(-6)*x+6)/(x^3+3*x^2+3*x+(-2)), x)
-- a^3+3*a^2+3*a-2

or

integrate(((-10)*x+(-3))/(x^3+5*x+1), x)
-- a^3 + 5*a + 1

The first one is actually easy one, shifted root of degree 3.
The second one almost works, but the result is bigger than result
with implict root.  And differentiating the integral gives
expression with unsimplified roots.

Actually there is general trouble with using roots of polynomial
of degree 3: splitting field F of polynomial (that is field
generated by all its roots) in normal, that is any irreducible
polynomial which has a root in F splits into linear factors in F.
In particular, if x^3 - a is irreducible and one of the roots
belongs to F, then also other roots belong to F.  So if Cardano
fomula works inside F, then either root is reducible or roots
of 1 of degree 3 belong to F.  Reducible root means that corresponding
extention is of degree lower than 3, so 1 or 2.  As other
roots in Cardano formula are squere roots the polynomial would
have solution in extention of degree which is power of 2.  But root
of irreducible polynomial of degree 3 generates extention of degree 3
and consequently any field containing its root has degree divisible
by 3.  So reducible root is posible only when polynomial is
reducible.   Now, in case of real roots it is clear that
F does not contain primitive root of degree 3 which is complex.
But actually, even if two roots are complex normally F does
not contain primitive root of degree 3.  So Cardano formuals
force work in field of degree 12.  In case of a^3 + 5*a + 1
this means field generated by sqrt(527/3), sqrt(-3) and
root of degree 3.  Our routines rewrite sqrt(527/3) as
sqrt(527)/sqrt(3), so we get extra spurious roots.

Integration process introduces extra spurious roots, sqrt(1581)
should be rewriten as 3*sqrt(527/3), other root apparently
generate extra extentions which however are unnecessary.
So, to get simple result in this case we need special handling.
I think that we should look at discriminant.  When discriminant
is negative we can try Rioobo for two complex roots, but we
need to avoid extra roots introduced by general solver.

-- 
                              Waldek Hebisch

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/fricas-devel/ZWdFyIWBDgPW3TNv%40fricas.org.

Reply via email to