AngouriMath
PrimeFieldFactorization
Description
Summary
Factorisation of a monic square-free polynomial over the prime field F_p into
monic irreducibles, by Berlekamp's algorithm.
monic irreducibles, by Berlekamp's algorithm.
Remarks
automorphism fixing
irreducible factors of
the constants. So the subalgebra is a product of
dimension is
factors — which is what gives the loop below an exact termination test rather than a
heuristic one. Knuth, TAOCP vol. 2, §4.6.2, algorithm B; von zur Gathen and
Gerhard, Modern Computer Algebra, §14.8.
values in different components and therefore separates them; running over a basis of
the subalgebra separates all of them.
modulus Cantor–Zassenhaus wins, because it replaces the
principle 3 of
#746 requires
the same input to give the same answer on every platform and in every thread count.
Berlekamp is deterministic by construction: the matrix, its null space and the sweep
over
linear in the modulus, so this is only sensible for a small one — hence
MaxPrime. That is not a restriction in practice, because the caller
chooses the modulus: factoring over the integers means picking a prime at which the
polynomial stays square-free and lifting the result, and there is no reason for that
prime to be large.
Members
Compare(AngouriMath.Functions.PrimeFieldPolynomial,AngouriMath.Functions.PrimeFieldPolynomial)
MethodIsPrime(System.Int64)
MethodMaxDegree
FieldMaxPrime
FieldNullSpace(System.Int64[][],System.Int32,System.Int64)
MethodSubalgebraBasis(AngouriMath.Functions.PrimeFieldPolynomial)
Method
Angouri © 2019-2023 · Project's repo · Site's repo · Octicons · Transparency · 4378 pages online