Package edu.jas.ufd
Class FactorModular<MOD extends GcdRingElem<MOD> & Modular>
java.lang.Object
edu.jas.ufd.FactorAbstract<MOD>
edu.jas.ufd.FactorAbsolute<MOD>
edu.jas.ufd.FactorModular<MOD>
- All Implemented Interfaces:
Factorization<MOD>
,Serializable
Modular coefficients factorization algorithms. This class implements
factorization methods for polynomials over (prime) modular integers.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final boolean
private static final org.apache.logging.log4j.Logger
Fields inherited from class edu.jas.ufd.FactorAbstract
engine, sengine
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
No argument constructor, do not use.FactorModular
(RingFactory<MOD> cfac) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionGenPolynomial base distinct degree factorization.baseEqualDegreeFactors
(GenPolynomial<MOD> P, long deg) GenPolynomial base equal degree factorization.GenPolynomial base factorization of a squarefree polynomial.Methods inherited from class edu.jas.ufd.FactorAbsolute
baseAlgebraicPartialFraction, baseAlgebraicPartialFractionIrreducibleAbsolute, baseFactorsAbsolute, baseFactorsAbsoluteIrreducible, baseFactorsAbsoluteSquarefree, factorsAbsolute, factorsAbsoluteIrreducible, factorsAbsoluteSquarefree, isAbsoluteFactorization, isAbsoluteFactorization, isAbsoluteFactorization, isAbsoluteIrreducible, toString
Methods inherited from class edu.jas.ufd.FactorAbstract
baseFactors, baseFactorsRadical, basePrimitivePart, factors, factorsDegree, factorsRadical, factorsRadical, factorsSquarefree, factorsSquarefreeKronecker, factorsSquarefreeOptimize, isFactorization, isFactorization, isIrreducible, isRecursiveFactorization, isReducible, isSquarefree, normalizeFactorization, primitivePart, recursiveFactors, recursiveFactorsSquarefree, removeOnce, squarefreeFactors, squarefreePart
-
Field Details
-
logger
private static final org.apache.logging.log4j.Logger logger -
debug
private static final boolean debug
-
-
Constructor Details
-
FactorModular
private FactorModular()No argument constructor, do not use. -
FactorModular
Constructor.- Parameters:
cfac
- coefficient ring factory.
-
-
Method Details
-
baseDistinctDegreeFactors
GenPolynomial base distinct degree factorization.- Parameters:
P
- squarefree and monic GenPolynomial.- Returns:
- [e_1 -> p_1, ..., e_k -> p_k] with P = prod_{i=1,...,k} p_i and p_i has only irreducible factors of degree e_i.
-
baseEqualDegreeFactors
GenPolynomial base equal degree factorization.- Parameters:
P
- squarefree and monic GenPolynomial.deg
- such that P has only irreducible factors of degree deg.- Returns:
- [p_1,...,p_k] with P = prod_{i=1,...,r} p_i.
-
baseFactorsSquarefree
GenPolynomial base factorization of a squarefree polynomial.- Specified by:
baseFactorsSquarefree
in classFactorAbstract<MOD extends GcdRingElem<MOD> & Modular>
- Parameters:
P
- squarefree and monic! GenPolynomial.- Returns:
- [p_1,...,p_k] with P = prod_{i=1,...,r} p_i.
-