Documentation of 'edu.jas.ufd.FactorAbstract' Java class
FactorAbstract
edu.jas.ufd

Class FactorAbstract<C extends GcdRingElem<C>>

  • Type Parameters:
    C - coefficient type
    All Implemented Interfaces:
    Factorization<C>, java.io.Serializable
    Direct Known Subclasses:
    FactorAbsolute, FactorInteger, FactorQuotient, FactorRealAlgebraic, FactorRealReal


    public abstract class FactorAbstract<C extends GcdRingElem<C>>
    extends java.lang.Object
    implements Factorization<C>
    Abstract factorization algorithms class. This class contains implementations of all methods of the Factorization interface, except the method for factorization of a squarefree polynomial. The methods to obtain squarefree polynomials delegate the computation to the GreatestCommonDivisor classes and are included for convenience.
    See Also:
    FactorFactory, Serialized Form
    • Constructor Detail

      • FactorAbstract

        public FactorAbstract(RingFactory<C> cfac)
        Constructor.
        Parameters:
        cfac - coefficient ring factory.
    • Method Detail

      • toString

        public java.lang.String toString()
        Get the String representation.
        Overrides:
        toString in class java.lang.Object
        See Also:
        Object.toString()
      • isIrreducible

        public boolean isIrreducible(GenPolynomial<C> P)
        GenPolynomial test if is irreducible.
        Specified by:
        isIrreducible in interface Factorization<C extends GcdRingElem<C>>
        Parameters:
        P - GenPolynomial.
        Returns:
        true if P is irreducible, else false.
      • isReducible

        public boolean isReducible(GenPolynomial<C> P)
        GenPolynomial test if a non trivial factorization exsists.
        Specified by:
        isReducible in interface Factorization<C extends GcdRingElem<C>>
        Parameters:
        P - GenPolynomial.
        Returns:
        true if P is reducible, else false.
      • isSquarefree

        public boolean isSquarefree(GenPolynomial<C> P)
        GenPolynomial test if is squarefree.
        Specified by:
        isSquarefree in interface Factorization<C extends GcdRingElem<C>>
        Parameters:
        P - GenPolynomial.
        Returns:
        true if P is squarefree, else false.
      • factorsSquarefreeOptimize

        public java.util.List<GenPolynomial<C>> factorsSquarefreeOptimize(GenPolynomial<C> P)
        GenPolynomial factorization of a multivariate squarefree polynomial, using Kronecker substitution and variable order optimization.
        Parameters:
        P - squarefree and primitive! (respectively monic) multivariate GenPolynomial over the ring C.
        Returns:
        [p_1,...,p_k] with P = prod_{i=1,...,r} p_i.
      • factorsSquarefree

        public java.util.List<GenPolynomial<C>> factorsSquarefree(GenPolynomial<C> P)
        GenPolynomial factorization of a squarefree polynomial, using Kronecker substitution.
        Specified by:
        factorsSquarefree in interface Factorization<C extends GcdRingElem<C>>
        Parameters:
        P - squarefree and primitive! (respectively monic) GenPolynomial.
        Returns:
        [p_1,...,p_k] with P = prod_{i=1,...,r} p_i.
      • factorsSquarefreeKronecker

        public java.util.List<GenPolynomial<C>> factorsSquarefreeKronecker(GenPolynomial<C> P)
        GenPolynomial factorization of a squarefree polynomial, using Kronecker substitution.
        Parameters:
        P - squarefree and primitive! (respectively monic) GenPolynomial.
        Returns:
        [p_1,...,p_k] with P = prod_{i=1,...,r} p_i.
      • baseFactorsRadical

        public java.util.List<GenPolynomial<C>> baseFactorsRadical(GenPolynomial<C> P)
        Univariate GenPolynomial factorization ignoring multiplicities.
        Parameters:
        P - GenPolynomial in one variable.
        Returns:
        [p_1, ..., p_k] with P = prod_{i=1,...,k} p_i**{e_i} for some e_i.
      • baseFactors

        public java.util.SortedMap<GenPolynomial<C>,java.lang.Long> baseFactors(GenPolynomial<C> P)
        Univariate GenPolynomial factorization.
        Parameters:
        P - GenPolynomial in one variable.
        Returns:
        [p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i**e_i.
      • baseFactorsSquarefree

        public abstract java.util.List<GenPolynomial<C>> baseFactorsSquarefree(GenPolynomial<C> P)
        Univariate GenPolynomial factorization of a squarefree polynomial.
        Parameters:
        P - squarefree and primitive! GenPolynomial in one variable.
        Returns:
        [p_1, ..., p_k] with P = prod_{i=1,...,k} p_i.
      • factorsRadical

        public java.util.List<GenPolynomial<C>> factorsRadical(java.util.List<GenPolynomial<C>> L)
        GenPolynomial list factorization ignoring multiplicities.
        Parameters:
        L - list of GenPolynomials.
        Returns:
        [p_1, ..., p_k] with p = prod_{i=1,...,k} p_i**{e_i} for some e_i for all p in L.
      • factors

        public java.util.SortedMap<GenPolynomial<C>,java.lang.Long> factors(GenPolynomial<C> P)
        GenPolynomial factorization.
        Specified by:
        factors in interface Factorization<C extends GcdRingElem<C>>
        Parameters:
        P - GenPolynomial.
        Returns:
        [p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i**e_i.
      • primitivePart

        public GenPolynomial<C> primitivePart(GenPolynomial<C> P)
        GenPolynomial primitive part. Delegates computation to a GreatestCommonDivisor class.
        Parameters:
        P - GenPolynomial.
        Returns:
        primitivePart(P).
      • basePrimitivePart

        public GenPolynomial<C> basePrimitivePart(GenPolynomial<C> P)
        GenPolynomial base primitive part. Delegates computation to a GreatestCommonDivisor class.
        Parameters:
        P - GenPolynomial.
        Returns:
        basePrimitivePart(P).
      • squarefreeFactors

        public java.util.SortedMap<GenPolynomial<C>,java.lang.Long> squarefreeFactors(GenPolynomial<C> P)
        GenPolynomial squarefree factorization. Delegates computation to a GreatestCommonDivisor class.
        Specified by:
        squarefreeFactors in interface Factorization<C extends GcdRingElem<C>>
        Parameters:
        P - GenPolynomial.
        Returns:
        [p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i**e_i.
      • isFactorization

        public boolean isFactorization(GenPolynomial<C> P,
                                       java.util.SortedMap<GenPolynomial<C>,java.lang.Long> F)
        GenPolynomial is factorization.
        Specified by:
        isFactorization in interface Factorization<C extends GcdRingElem<C>>
        Parameters:
        P - GenPolynomial.
        F - = [p_1 -> e_1, ..., p_k -> e_k].
        Returns:
        true if P = prod_{i=1,...,k} p_i**e_i , else false.
      • factorsDegree

        public long factorsDegree(java.util.SortedMap<GenPolynomial<C>,java.lang.Long> F)
        Degree of a factorization.
        Parameters:
        F - a factors map [p_1 -> e_1, ..., p_k -> e_k].
        Returns:
        sum_{i=1,...,k} degree(p_i)*e_i.
      • isRecursiveFactorization

        public boolean isRecursiveFactorization(GenPolynomial<GenPolynomial<C>> P,
                                                java.util.SortedMap<GenPolynomial<GenPolynomial<C>>,java.lang.Long> F)
        GenPolynomial is factorization.
        Parameters:
        P - GenPolynomial.
        F - = [p_1 -> e_1, ..., p_k -> e_k].
        Returns:
        true if P = prod_{i=1,...,k} p_i**e_i , else false.
      • recursiveFactorsSquarefree

        public java.util.List<GenPolynomial<GenPolynomial<C>>> recursiveFactorsSquarefree(GenPolynomial<GenPolynomial<C>> P)
        Recursive GenPolynomial factorization of a squarefree polynomial.
        Parameters:
        P - squarefree recursive GenPolynomial.
        Returns:
        [p_1,...,p_k] with P = prod_{i=1, ..., k} p_i.
      • recursiveFactors

        public java.util.SortedMap<GenPolynomial<GenPolynomial<C>>,java.lang.Long> recursiveFactors(GenPolynomial<GenPolynomial<C>> P)
        Recursive GenPolynomial factorization.
        Parameters:
        P - recursive GenPolynomial.
        Returns:
        [p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i**e_i.
      • normalizeFactorization

        public java.util.List<GenPolynomial<C>> normalizeFactorization(java.util.List<GenPolynomial<C>> F)
        Normalize factorization. p'_i > 0 for i > 1 and p'_1 != 1 if k > 1.
        Parameters:
        F - = [p_1,...,p_k].
        Returns:
        F' = [p'_1,...,p'_k].

DMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.