Package edu.jas.ufd

Class FactorModular<MOD extends GcdRingElem<MOD> & Modular>

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

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

      • logger

        private static final org.apache.logging.log4j.Logger logger
      • debug

        private static final boolean debug
    • Constructor Detail

      • FactorModular

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

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

      • baseDistinctDegreeFactors

        public java.util.SortedMap<java.lang.Long,​GenPolynomial<MOD>> baseDistinctDegreeFactors​(GenPolynomial<MOD> P)
        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

        public java.util.List<GenPolynomial<MOD>> baseEqualDegreeFactors​(GenPolynomial<MOD> P,
                                                                         long deg)
        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.