Package cc.redberry.rings.poly.multivar
Class MultivariateSquareFreeFactorization
- java.lang.Object
-
- cc.redberry.rings.poly.multivar.MultivariateSquareFreeFactorization
-
public final class MultivariateSquareFreeFactorization extends Object
- Since:
- 1.0
-
-
Method Summary
Modifier and Type Method Description static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>>
booleanisSquareFree(Poly poly)
Tests whether the givenpoly
is square free.static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>>
PolynomialFactorDecomposition<Poly>SquareFreeFactorization(Poly poly)
Performs square-free factorization of a {@code poly.static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>>
PolynomialFactorDecomposition<Poly>SquareFreeFactorizationMusser(Poly poly)
Performs square-free factorization of apoly
which coefficient ring has any characteristic using Musser's algorithm.static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>>
PolynomialFactorDecomposition<Poly>SquareFreeFactorizationMusserZeroCharacteristics(Poly poly)
Performs square-free factorization of apoly
which coefficient ring has zero characteristic using Musser's algorithm.static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>>
PolynomialFactorDecomposition<Poly>SquareFreeFactorizationYunZeroCharacteristics(Poly poly)
Performs square-free factorization of apoly
which coefficient ring has zero characteristic using Yun's algorithm.static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>>
PolySquareFreePart(Poly poly)
Returns square-free part of thepoly
-
-
-
Method Detail
-
SquareFreeFactorization
public static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> PolynomialFactorDecomposition<Poly> SquareFreeFactorization(Poly poly)
Performs square-free factorization of a {@code poly.- Parameters:
poly
- the polynomial- Returns:
- square-free decomposition
-
isSquareFree
public static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> boolean isSquareFree(Poly poly)
Tests whether the givenpoly
is square free.- Parameters:
poly
- the polynomial- Returns:
- whether the given
poly
is square free
-
SquareFreePart
public static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> Poly SquareFreePart(Poly poly)
Returns square-free part of thepoly
- Parameters:
poly
- the polynomial- Returns:
- square free part
-
SquareFreeFactorizationYunZeroCharacteristics
public static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> PolynomialFactorDecomposition<Poly> SquareFreeFactorizationYunZeroCharacteristics(Poly poly)
Performs square-free factorization of apoly
which coefficient ring has zero characteristic using Yun's algorithm.- Parameters:
poly
- the polynomial- Returns:
- square-free decomposition
-
SquareFreeFactorizationMusserZeroCharacteristics
public static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> PolynomialFactorDecomposition<Poly> SquareFreeFactorizationMusserZeroCharacteristics(Poly poly)
Performs square-free factorization of apoly
which coefficient ring has zero characteristic using Musser's algorithm.- Parameters:
poly
- the polynomial- Returns:
- square-free decomposition
-
SquareFreeFactorizationMusser
public static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> PolynomialFactorDecomposition<Poly> SquareFreeFactorizationMusser(Poly poly)
Performs square-free factorization of apoly
which coefficient ring has any characteristic using Musser's algorithm.- Parameters:
poly
- the polynomial- Returns:
- square-free decomposition
-
-