Package edu.jas.ufd

Class SquarefreeAbstract<C extends GcdRingElem<C>>

    • Method Detail

      • baseSquarefreeFactors

        public abstract java.util.SortedMap<GenPolynomial<C>,​java.lang.Long> baseSquarefreeFactors​(GenPolynomial<C> A)
        GenPolynomial polynomial squarefree factorization.
        Parameters:
        A - GenPolynomial.
        Returns:
        [p_1 -> e_1, ..., p_k -> e_k] with A = prod_{i=1,...,k} p_i^{e_i} and p_i squarefree and gcd(p_i, p_j) = 1, for i != j.
      • recursiveUnivariateSquarefreeFactors

        public abstract java.util.SortedMap<GenPolynomial<GenPolynomial<C>>,​java.lang.Long> recursiveUnivariateSquarefreeFactors​(GenPolynomial<GenPolynomial<C>> P)
        GenPolynomial recursive univariate polynomial squarefree factorization.
        Parameters:
        P - recursive univariate GenPolynomial.
        Returns:
        [p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i^{e_i} and p_i squarefree and gcd(p_i, p_j) = 1, for i != j.
      • isRecursiveSquarefree

        public boolean isRecursiveSquarefree​(GenPolynomial<GenPolynomial<C>> P)
        Recursive GenPolynomial test if is squarefree.
        Parameters:
        P - recursive univariate GenPolynomial.
        Returns:
        true if P is squarefree, else false.
      • coPrimeSquarefree

        public java.util.List<GenPolynomial<C>> coPrimeSquarefree​(java.util.List<GenPolynomial<C>> A)
        GenPolynomial squarefree and co-prime list.
        Specified by:
        coPrimeSquarefree in interface Squarefree<C extends GcdRingElem<C>>
        Parameters:
        A - list of GenPolynomials.
        Returns:
        B with gcd(b,c) = 1 for all b != c in B and for all non-constant a in A there exists b in B with b|a and each b in B is squarefree. B does not contain zero or constant polynomials.
      • coPrimeSquarefree

        public java.util.List<GenPolynomial<C>> coPrimeSquarefree​(GenPolynomial<C> a,
                                                                  java.util.List<GenPolynomial<C>> P)
        GenPolynomial squarefree and co-prime list.
        Specified by:
        coPrimeSquarefree in interface Squarefree<C extends GcdRingElem<C>>
        Parameters:
        a - polynomial.
        P - squarefree co-prime list of GenPolynomials.
        Returns:
        B with gcd(b,c) = 1 for all b != c in B and for non-constant a there exists b in P with b|a. B does not contain zero or constant polynomials.
      • isCoPrimeSquarefree

        public boolean isCoPrimeSquarefree​(java.util.List<GenPolynomial<C>> B)
        Test if list of GenPolynomials is squarefree and co-prime.
        Specified by:
        isCoPrimeSquarefree in interface Squarefree<C extends GcdRingElem<C>>
        Parameters:
        B - list of GenPolynomials.
        Returns:
        true, if for all b != c in B gcd(b,c) = 1 and each b in B is squarefree, else false.
      • normalizeFactorization

        public java.util.SortedMap<GenPolynomial<C>,​java.lang.Long> normalizeFactorization​(java.util.SortedMap<GenPolynomial<C>,​java.lang.Long> F)
        Normalize factorization. p'_i > 0 for i > 1 and p'_1 != 1 if k > 1.
        Parameters:
        F - = [p_1->e_1;, ..., p_k->e_k].
        Returns:
        F' = [p'_1->e_1, ..., p'_k->e_k].
      • factorCount

        public long factorCount​(java.util.SortedMap<GenPolynomial<C>,​java.lang.Long> F)
        Count number of factors in a (squarefree) factorization.
        Parameters:
        F - = [p_1 -> e_1, ..., p_k -> e_k].
        Returns:
        sum_{i=1,...,k} e_i.
      • recursiveSquarefreeFactors

        public java.util.SortedMap<GenPolynomial<GenPolynomial<C>>,​java.lang.Long> recursiveSquarefreeFactors​(GenPolynomial<GenPolynomial<C>> P)
        GenPolynomial recursive polynomial squarefree factorization.
        Parameters:
        P - recursive GenPolynomial.
        Returns:
        [p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i^{e_i} and p_i squarefree and gcd(p_i, p_j) = 1, for i != j.
      • basePartialFraction

        public java.util.List<java.util.List<GenPolynomial<C>>> basePartialFraction​(GenPolynomial<C> A,
                                                                                    java.util.SortedMap<GenPolynomial<C>,​java.lang.Long> D)
        Univariate GenPolynomial partial fraction decomposition.
        Parameters:
        A - univariate GenPolynomial.
        D - sorted map [d_1 -> e_1, ..., d_k -> e_k] with d_i squarefree.
        Returns:
        [ [Ai0, Ai1,..., Aie_i], i=0,...,k ] with A/prod(D) = A0 + sum( sum ( Aij/di^j ) ) with deg(Aij) < deg(di).
      • isBasePartialFraction

        public boolean isBasePartialFraction​(GenPolynomial<C> A,
                                             java.util.SortedMap<GenPolynomial<C>,​java.lang.Long> D,
                                             java.util.List<java.util.List<GenPolynomial<C>>> F)
        Test for Univariate GenPolynomial partial fraction decomposition.
        Parameters:
        A - univariate GenPolynomial.
        D - sorted map [d_1 -> e_1, ..., d_k -> e_k] with d_i squarefree.
        F - a list of lists [ [Ai0, Ai1,..., Aie_i], i=0,...,k ]
        Returns:
        true, if A/prod(D) = A0 + sum( sum ( Aij/di^j ) ), else false.
      • squarefreePart

        public C squarefreePart​(C P)
        Coefficients greatest squarefree divisor.
        Parameters:
        P - coefficient.
        Returns:
        squarefree part of P.
      • squarefreeFactors

        public abstract java.util.SortedMap<C,​java.lang.Long> squarefreeFactors​(C P)
        Coefficients squarefree factorization.
        Parameters:
        P - coefficient.
        Returns:
        [p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i^{e_i} and p_i squarefree and gcd(p_i, p_j) = 1, for i != j.