AngouriMath
SquareFreeDecomposition
Description
Summary
Splits a polynomial into square-free parts: f = a_1 * a_2^2 * a_3^3 * ... with
eacha_i square-free and any two of them coprime.
each
Remarks
exactly a factor shared with the derivative —
dividing by it leaves each distinct factor standing once. That is why factoring only
ever has to deal with square-free input, and why a square-free routine is worth having
before the factoriser that consumes it.
round's greatest common divisor is taken between polynomials whose degrees have
already fallen, instead of re-dividing the original every time. The cost is one extra
subtraction a round and the saving is an order of magnitude on high multiplicities.
Yun, On square-free decomposition algorithms, SYMSAC '76; Geddes, Czapor and
Labahn, Algorithms for Computer Algebra, §8.1.
the argument above breaks, which is why the finite-field side handles its own
square-free step rather than calling this.
Members
Angouri © 2019-2023 · Project's repo · Site's repo · Octicons · Transparency · 4378 pages online