Package cc.redberry.rings.poly.univar
Class UnivariateFactorization
java.lang.Object
cc.redberry.rings.poly.univar.UnivariateFactorization
public final class UnivariateFactorization extends Object
Factorization of univariate polynomials.
- Since:
- 1.0
-
Method Summary
-
Method Details
-
Factor
public static <Poly extends IUnivariatePolynomial<Poly>> PolynomialFactorDecomposition<Poly> Factor(Poly poly)Factors univariatepoly
.- Parameters:
poly
- the polynomial- Returns:
- factor decomposition
-
FactorInQ
public static <E> PolynomialFactorDecomposition<UnivariatePolynomial<Rational<E>>> FactorInQ(UnivariatePolynomial<Rational<E>> poly)Factors polynomial over Q- Parameters:
poly
- the polynomial over finite field- Returns:
- irreducible factor decomposition
-
FactorInGF
public static <Poly extends IUnivariatePolynomial<Poly>> PolynomialFactorDecomposition<Poly> FactorInGF(Poly poly)Factors polynomial over finite field- Parameters:
poly
- the polynomial over finite field- Returns:
- irreducible factor decomposition
- See Also:
UnivariateSquareFreeFactorization
,DistinctDegreeFactorization
,EqualDegreeFactorization
-
FactorSquareFreeInGF
public static <T extends IUnivariatePolynomial<T>> PolynomialFactorDecomposition<T> FactorSquareFreeInGF(T poly)Factors square-free polynomial over finite field- Parameters:
poly
- the square-free polynomial over finite field- Returns:
- irreducible factor decomposition
- See Also:
DistinctDegreeFactorization
,EqualDegreeFactorization
-
FactorSquareFreeInZ
public static <PolyZ extends IUnivariatePolynomial<PolyZ>> PolynomialFactorDecomposition<PolyZ> FactorSquareFreeInZ(PolyZ poly) -
FactorInZ
public static <Poly extends IUnivariatePolynomial<Poly>> PolynomialFactorDecomposition<Poly> FactorInZ(Poly poly)Factors polynomial in Z[x].- Parameters:
poly
- the polynomial- Returns:
- factor decomposition
- See Also:
FactorInGF(IUnivariatePolynomial)
,HenselLifting
-
FactorInNumberField
public static PolynomialFactorDecomposition<UnivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>> FactorInNumberField(UnivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> poly)Factors polynomial in Q(alpha)[x] via Trager's algorithm- Parameters:
poly
- the polynomial- Returns:
- factor decomposition
- See Also:
FactorInGF(IUnivariatePolynomial)
,HenselLifting
-
FactorSquareFreeInNumberField
public static PolynomialFactorDecomposition<UnivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>> FactorSquareFreeInNumberField(UnivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> poly)Factors polynomial in Q(alpha)[x] via Trager's algorithm
-