up previous next
simplifying linear substitution for a univariate poly over QQ
LinearSimplify(F: RINGELEM): RECORD |
This function returns a
RECORD[LinearChange, SimplePoly]
where
LinearChange
is a linear change of variable
and
SimplePoly
is simple (in a heuristic sense).
The composition
SimplePoly(LinearChange)
is equal the
univariate polynomial
F
.
/**/ Use QQ[x];
/**/ LinearSimplify((123*x-456)^9-1);
record[LinearChange := 123*x - 456, SimplePoly := x^9 - 1]
/**/ LinearSimplify(x^9-1); -- the heuristic finds no useful simplification
record[LinearChange := x, SimplePoly := x^9 - 1]
|