Package edu.jas.ufd

Class FactorModularBerlekamp<MOD extends GcdRingElem<MOD>>

  • All Implemented Interfaces:
    Factorization<MOD>, java.io.Serializable

    public class FactorModularBerlekamp<MOD extends GcdRingElem<MOD>>
    extends FactorAbsolute<MOD>
    Modular coefficients Berlekamp factorization algorithms. This class implements Berlekamp, Cantor and Zassenhaus factorization methods for polynomials over (prime) modular integers.
    See Also:
    Serialized Form
    • Field Detail

      • logger

        private static final org.apache.logging.log4j.Logger logger
    • Constructor Detail

      • FactorModularBerlekamp

        private FactorModularBerlekamp()
        No argument constructor, do not use.
      • FactorModularBerlekamp

        public FactorModularBerlekamp​(RingFactory<MOD> cfac)
        Constructor.
        Parameters:
        cfac - coefficient ring factory.
    • Method Detail

      • baseFactorsSquarefreeSmallPrime

        public java.util.List<GenPolynomial<MOD>> baseFactorsSquarefreeSmallPrime​(GenPolynomial<MOD> P)
        GenPolynomial base factorization of a squarefree polynomial. Small prime version of Berlekamps algorithm.
        Parameters:
        P - squarefree and monic! GenPolynomial.
        Returns:
        [p_1,...,p_k] with P = prod_{i=1,...,r} p_i.
      • baseFactorsSquarefreeBigPrime

        public java.util.List<GenPolynomial<MOD>> baseFactorsSquarefreeBigPrime​(GenPolynomial<MOD> P)
        GenPolynomial base factorization of a squarefree polynomial. Big prime version of Berlekamps algorithm.
        Parameters:
        P - squarefree and monic! GenPolynomial.
        Returns:
        [p_1,...,p_k] with P = prod_{i=1,...,r} p_i.