public class PolyUtil extends java.lang.Object
Constructor and Description |
---|
PolyUtil() |
Modifier and Type | Method and Description |
---|---|
static <C extends RingElem<C>> |
absNorm(GenPolynomial<C> p)
Absoulte norm.
|
static <C extends GcdRingElem<C>> |
algebraicFromComplex(GenPolynomialRing<AlgebraicNumber<C>> fac,
GenPolynomial<Complex<C>> A)
AlgebraicNumber from complex coefficients.
|
static <C extends RingElem<C>> |
baseDensePseudoQuotient(GenPolynomial<C> P,
GenPolynomial<C> S)
GenPolynomial dense pseudo quotient.
|
static <C extends RingElem<C>> |
baseDensePseudoRemainder(GenPolynomial<C> P,
GenPolynomial<C> S)
GenPolynomial dense pseudo remainder.
|
static <C extends RingElem<C>> |
baseDeriviative(GenPolynomial<C> P)
GenPolynomial polynomial derivative main variable.
|
static <C extends RingElem<C>> |
baseDeriviative(GenPolynomial<C> P,
int r)
GenPolynomial polynomial partial derivative variable r.
|
static <C extends RingElem<C>> |
baseIntegral(GenPolynomial<C> P)
GenPolynomial polynomial integral main variable.
|
static <C extends RingElem<C>> |
basePseudoDivide(GenPolynomial<C> P,
GenPolynomial<C> S)
GenPolynomial sparse pseudo divide.
|
static <C extends RingElem<C>> |
basePseudoQuotientRemainder(GenPolynomial<C> P,
GenPolynomial<C> S)
GenPolynomial sparse pseudo quotient and remainder.
|
static <C extends RingElem<C>> |
basePseudoRemainder(GenPolynomial<C> P,
GenPolynomial<C> S)
Deprecated.
|
static <C extends RingElem<C>> |
baseRecursiveDivide(GenPolynomial<GenPolynomial<C>> P,
C s)
GenPolynomial base divide.
|
static <C extends RingElem<C>> |
baseRemainderPoly(GenPolynomial<C> P,
C s)
GenPolynomial coefficient wise remainder.
|
static <C extends RingElem<C>> |
baseSparsePseudoRemainder(GenPolynomial<C> P,
GenPolynomial<C> S)
GenPolynomial sparse pseudo remainder.
|
static <C extends RingElem<C> & Modular> |
chineseRemainder(GenPolynomialRing<C> fac,
GenPolynomial<C> A,
C mi,
GenPolynomial<C> B)
ModInteger chinese remainder algorithm on coefficients.
|
static <C extends RingElem<C>> |
coefficientBasePseudoDivide(GenPolynomial<C> P,
C s)
GenPolynomial pseudo divide.
|
static <C extends RingElem<C>> |
coefficientPseudoDivide(GenPolynomial<GenPolynomial<C>> P,
GenPolynomial<C> s)
GenPolynomial pseudo divide.
|
static <C extends RingElem<C>> |
coeffMaxDegree(GenPolynomial<GenPolynomial<C>> A)
Maximal degree in the coefficient polynomials.
|
static <C extends RingElem<C> & Rational> |
complexDecimalFromRational(GenPolynomialRing<Complex<BigDecimal>> fac,
GenPolynomial<Complex<C>> A)
Convert to complex decimal coefficients.
|
static <C extends GcdRingElem<C>> |
complexFromAlgebraic(GenPolynomialRing<Complex<C>> fac,
GenPolynomial<AlgebraicNumber<C>> A)
Complex from algebraic coefficients.
|
static <C extends GcdRingElem<C>> |
complexFromAny(GenPolynomialRing<Complex<C>> fac,
GenPolynomial<C> A)
Complex from ring element coefficients.
|
static GenPolynomial<BigComplex> |
complexFromRational(GenPolynomialRing<BigComplex> fac,
GenPolynomial<BigRational> A)
Complex from rational coefficients.
|
static <C extends GcdRingElem<C>> |
convertRecursiveToAlgebraicCoefficients(GenPolynomialRing<AlgebraicNumber<C>> pfac,
GenPolynomial<GenPolynomial<C>> A)
Convert to AlgebraicNumber coefficients.
|
static <C extends GcdRingElem<C>> |
convertToAlgebraicCoefficients(GenPolynomialRing<AlgebraicNumber<C>> pfac,
GenPolynomial<C> A)
Convert to AlgebraicNumber coefficients.
|
static <C extends GcdRingElem<C>> |
convertToRecAlgebraicCoefficients(int depth,
GenPolynomialRing<AlgebraicNumber<C>> pfac,
GenPolynomial<C> A)
Convert to recursive AlgebraicNumber coefficients.
|
static <C extends RingElem<C> & Rational> |
decimalFromRational(GenPolynomialRing<BigDecimal> fac,
GenPolynomial<C> A)
Convert to decimal coefficients.
|
static <C extends RingElem<C>> |
distribute(GenPolynomialRing<C> dfac,
GenPolynomial<GenPolynomial<C>> B)
Distribute a recursive polynomial to a generic polynomial.
|
static <C extends RingElem<C>> |
distribute(GenPolynomialRing<C> dfac,
java.util.List<GenPolynomial<GenPolynomial<C>>> L)
Distribute a recursive polynomial list to a generic polynomial list.
|
static <C extends RingElem<C>> |
evaluate(GenPolynomialRing<C> cfac,
GenPolynomialRing<GenPolynomial<C>> rfac,
GenPolynomialRing<GenPolynomial<C>> nfac,
GenPolynomialRing<C> dfac,
GenPolynomial<C> A,
C a)
Evaluate at k-th variable.
|
static <C extends RingElem<C>> |
evaluateAll(RingFactory<C> cfac,
GenPolynomial<C> A,
java.util.List<C> a)
Evaluate all variables.
|
static <C extends RingElem<C>> |
evaluateFirst(GenPolynomialRing<C> cfac,
GenPolynomialRing<C> dfac,
GenPolynomial<C> A,
C a)
Evaluate at first (lowest) variable.
|
static <C extends RingElem<C>> |
evaluateFirstRec(GenPolynomialRing<C> cfac,
GenPolynomialRing<C> dfac,
GenPolynomial<GenPolynomial<C>> A,
C a)
Evaluate at first (lowest) variable.
|
static <C extends RingElem<C>> |
evaluateMain(GenPolynomialRing<C> cfac,
GenPolynomial<C> A,
C a)
Evaluate at main variable.
|
static <C extends RingElem<C>> |
evaluateMain(GenPolynomialRing<C> cfac,
java.util.List<GenPolynomial<C>> L,
C a)
Evaluate at main variable.
|
static <C extends RingElem<C>> |
evaluateMain(RingFactory<C> cfac,
GenPolynomial<C> A,
C a)
Evaluate at main variable.
|
static <C extends RingElem<C>> |
evaluateMain(RingFactory<C> cfac,
java.util.List<GenPolynomial<C>> L,
C a)
Evaluate at main variable.
|
static <C extends RingElem<C>> |
evaluateMainRecursive(GenPolynomialRing<C> cfac,
GenPolynomial<GenPolynomial<C>> A,
C a)
Evaluate at main variable.
|
static <C extends RingElem<C>> |
extendCoefficients(GenPolynomialRing<GenPolynomial<C>> pfac,
GenPolynomial<GenPolynomial<C>> A,
int j,
long k)
Extend coefficient variables.
|
static <C extends RingElem<C>> |
extendCoefficients(GenSolvablePolynomialRing<GenPolynomial<C>> pfac,
GenSolvablePolynomial<GenPolynomial<C>> A,
int j,
long k)
Extend coefficient variables.
|
static BigInteger |
factorBound(ExpVector e)
Factor coefficient bound.
|
static <C extends GcdRingElem<C>> |
fromAlgebraicCoefficients(GenPolynomialRing<GenPolynomial<C>> rfac,
GenPolynomial<AlgebraicNumber<C>> A)
From AlgebraicNumber coefficients.
|
static <C extends RingElem<C>> |
fromIntegerCoefficients(GenPolynomialRing<C> fac,
GenPolynomial<BigInteger> A)
From BigInteger coefficients.
|
static <C extends RingElem<C>> |
fromIntegerCoefficients(GenPolynomialRing<C> fac,
java.util.List<GenPolynomial<BigInteger>> L)
From BigInteger coefficients.
|
static GenPolynomial<BigRational> |
imaginaryPart(GenPolynomialRing<BigRational> fac,
GenPolynomial<BigComplex> A)
Imaginary part.
|
static <C extends RingElem<C>> |
imaginaryPartFromComplex(GenPolynomialRing<C> fac,
GenPolynomial<Complex<C>> A)
Imaginary part.
|
static <C extends RingElem<C> & Modular> |
integerFromModularCoefficients(GenPolynomialRing<BigInteger> fac,
GenPolynomial<C> A)
BigInteger from ModInteger coefficients, symmetric.
|
static <C extends RingElem<C> & Modular> |
integerFromModularCoefficients(GenPolynomialRing<BigInteger> fac,
java.util.List<GenPolynomial<C>> L)
BigInteger from ModInteger coefficients, symmetric.
|
static <C extends RingElem<C> & Modular> |
integerFromModularCoefficientsPositive(GenPolynomialRing<BigInteger> fac,
GenPolynomial<C> A)
BigInteger from ModInteger coefficients, positive.
|
static GenPolynomial<BigInteger> |
integerFromRationalCoefficients(GenPolynomialRing<BigInteger> fac,
java.math.BigInteger gcd,
java.math.BigInteger lcm,
GenPolynomial<BigRational> A)
BigInteger from BigRational coefficients.
|
static GenPolynomial<BigInteger> |
integerFromRationalCoefficients(GenPolynomialRing<BigInteger> fac,
GenPolynomial<BigRational> A)
BigInteger from BigRational coefficients.
|
static java.util.List<GenPolynomial<BigInteger>> |
integerFromRationalCoefficients(GenPolynomialRing<BigInteger> fac,
java.util.List<GenPolynomial<BigRational>> L)
BigInteger from BigRational coefficients.
|
static java.lang.Object[] |
integerFromRationalCoefficientsFactor(GenPolynomialRing<BigInteger> fac,
GenPolynomial<BigRational> A)
BigInteger from BigRational coefficients.
|
static <C extends RingElem<C>> |
interpolate(GenPolynomialRing<C> fac,
GenPolynomial<C> A,
GenPolynomial<C> M,
C mi,
C a,
C am)
Univariate polynomial interpolation.
|
static <C extends RingElem<C>> |
interpolate(GenPolynomialRing<GenPolynomial<C>> fac,
GenPolynomial<GenPolynomial<C>> A,
GenPolynomial<C> M,
C mi,
GenPolynomial<C> B,
C am)
ModInteger interpolate on first variable.
|
static <C extends RingElem<C>> |
intersect(GenPolynomialRing<C> R,
java.util.List<GenPolynomial<C>> F)
Intersection.
|
static <C extends RingElem<C>> |
intersect(GenSolvablePolynomialRing<C> R,
java.util.List<GenSolvablePolynomial<C>> F)
Intersection.
|
static <C extends RingElem<C>> |
intersect(GenWordPolynomialRing<C> R,
java.util.List<GenWordPolynomial<C>> F)
Intersection.
|
static <C extends RingElem<C>> |
isBasePseudoQuotientRemainder(GenPolynomial<C> P,
GenPolynomial<C> S,
GenPolynomial<C> q,
GenPolynomial<C> r)
Is GenPolynomial pseudo quotient and remainder.
|
static <C extends RingElem<C>> |
isRecursivePseudoQuotientRemainder(GenPolynomial<GenPolynomial<C>> P,
GenPolynomial<GenPolynomial<C>> S,
GenPolynomial<GenPolynomial<C>> q,
GenPolynomial<GenPolynomial<C>> r)
Is recursive GenPolynomial pseudo quotient and remainder.
|
static <C extends RingElem<C>> |
leadingExpVector(java.util.List<GenPolynomial<C>> L)
Polynomial list leading exponent vectors.
|
static <C extends RingElem<C>,D extends RingElem<D>> |
map(GenPolynomialRing<D> ring,
GenPolynomial<C> p,
UnaryFunctor<C,D> f)
Map a unary function to the coefficients.
|
static <C extends RingElem<C>> |
maxDegree(java.util.List<GenPolynomial<C>> P)
Maximal degree of polynomial list.
|
static <C extends RingElem<C>> |
monic(GenPolynomial<GenPolynomial<C>> p)
GenPolynomial monic, i.e. leadingBaseCoefficient == 1.
|
static <C extends RingElem<C>> |
monic(GenSolvablePolynomial<GenPolynomial<C>> p)
GenSolvablePolynomial monic, i.e. leadingBaseCoefficient == 1.
|
static <C extends RingElem<C>> |
monic(java.util.List<GenPolynomial<C>> L)
Polynomial list monic.
|
static <C extends RingElem<C>> |
monicRec(java.util.List<GenPolynomial<GenPolynomial<C>>> L)
Recursive polynomial list monic.
|
static GenPolynomial<BigRational> |
realPart(GenPolynomialRing<BigRational> fac,
GenPolynomial<BigComplex> A)
Real part.
|
static <C extends RingElem<C>> |
realPartFromComplex(GenPolynomialRing<C> fac,
GenPolynomial<Complex<C>> A)
Real part.
|
static <C extends RingElem<C>> |
recursive(GenPolynomialRing<GenPolynomial<C>> rfac,
GenPolynomial<C> A)
Recursive representation.
|
static <C extends RingElem<C>> |
recursive(GenPolynomialRing<GenPolynomial<C>> rfac,
java.util.List<GenPolynomial<C>> L)
Recursive representation.
|
static <C extends RingElem<C>> |
recursiveDensePseudoRemainder(GenPolynomial<GenPolynomial<C>> P,
GenPolynomial<GenPolynomial<C>> S)
GenPolynomial dense pseudo remainder.
|
static <C extends RingElem<C>> |
recursiveDeriviative(GenPolynomial<GenPolynomial<C>> P)
GenPolynomial recursive polynomial derivative main variable.
|
static <C extends RingElem<C>> |
recursiveDivide(GenPolynomial<GenPolynomial<C>> P,
GenPolynomial<C> s)
GenPolynomial divide.
|
static <C extends RingElem<C>> |
recursiveDivide(GenWordPolynomial<GenPolynomial<C>> P,
GenPolynomial<C> s)
GenPolynomial divide.
|
static <C extends RingElem<C>> |
recursivePseudoDivide(GenPolynomial<GenPolynomial<C>> P,
GenPolynomial<GenPolynomial<C>> S)
GenPolynomial recursive pseudo divide.
|
static <C extends RingElem<C>> |
recursivePseudoRemainder(GenPolynomial<GenPolynomial<C>> P,
GenPolynomial<GenPolynomial<C>> S)
Deprecated.
|
static <C extends RingElem<C>> |
recursiveSparsePseudoRemainder(GenPolynomial<GenPolynomial<C>> P,
GenPolynomial<GenPolynomial<C>> S)
GenPolynomial sparse pseudo remainder.
|
static <C extends RingElem<C>> |
removeUnusedLowerVariables(GenPolynomial<C> p)
Remove all lower variables which do not occur in polynomial.
|
static <C extends RingElem<C>> |
removeUnusedMiddleVariables(GenPolynomial<C> p)
Remove upper block of middle variables which do not occur in polynomial.
|
static <C extends RingElem<C>> |
removeUnusedUpperVariables(GenPolynomial<C> p)
Remove all upper variables which do not occur in polynomial.
|
static <C extends RingElem<C>> |
selectWithVariable(java.util.List<GenPolynomial<C>> P,
int i)
Select polynomial with univariate leading term in variable i.
|
static <C extends RingElem<C>> |
seriesOfTaylor(GenPolynomial<C> f,
C a)
Taylor series for polynomial.
|
static <C extends RingElem<C>> |
substituteMain(GenPolynomial<C> A,
GenPolynomial<C> s)
Substitute main variable.
|
static <C extends RingElem<C>> |
substituteUnivariate(GenPolynomial<C> f,
GenPolynomial<C> t)
Substitute univariate polynomial.
|
static <C extends RingElem<C>> |
substituteUnivariateMult(GenPolynomial<C> f,
GenPolynomial<C> t)
Substitute univariate polynomial with multivariate coefficients.
|
static <C extends RingElem<C>> |
switchVariables(GenPolynomial<GenPolynomial<C>> P)
Recursive GenPolynomial switch varaible blocks.
|
static <C extends RingElem<C>> |
toComplex(GenPolynomialRing<Complex<C>> fac,
GenPolynomial<C> A)
Complex from real polynomial.
|
static GenPolynomial<Product<ModInteger>> |
toProduct(GenPolynomialRing<Product<ModInteger>> pfac,
GenPolynomial<BigInteger> A)
Product representation.
|
static java.util.List<GenPolynomial<Product<ModInteger>>> |
toProduct(GenPolynomialRing<Product<ModInteger>> pfac,
java.util.List<GenPolynomial<BigInteger>> L)
Product representation.
|
static <C extends RingElem<C>> |
toProduct(ProductRing<GenPolynomial<C>> pfac,
C c,
ExpVector e)
Product representation.
|
static <C extends RingElem<C>> |
toProduct(ProductRing<GenPolynomial<C>> pfac,
GenPolynomial<C> A)
Product representation.
|
static Product<ModInteger> |
toProduct(ProductRing<ModInteger> pfac,
BigInteger c)
Product representation.
|
static <C extends GcdRingElem<C>> |
toProductGen(GenPolynomialRing<Product<C>> pfac,
GenPolynomial<C> A)
Product representation.
|
static <C extends GcdRingElem<C>> |
toProductGen(GenPolynomialRing<Product<C>> pfac,
java.util.List<GenPolynomial<C>> L)
Product representation.
|
static <C extends GcdRingElem<C>> |
toProductGen(ProductRing<C> pfac,
C c)
Product representation.
|
static <C extends RingElem<C>> |
toRecursive(GenPolynomialRing<GenPolynomial<C>> rfac,
GenPolynomial<C> A)
To recursive representation.
|
static <C extends RingElem<C>> |
toRecursive(GenSolvablePolynomialRing<GenPolynomial<C>> rfac,
GenSolvablePolynomial<C> A)
To recursive representation.
|
static <C extends RingElem<C>> |
totalDegree(java.util.List<GenPolynomial<C>> P)
Total degree of polynomial list.
|
static <C extends RingElem<C>> |
totalDegreeLeadingTerm(java.util.List<GenPolynomial<C>> P)
Maximal degree of leading terms of a polynomial list.
|
static <C extends RingElem<C>> |
wordMonic(java.util.List<GenWordPolynomial<C>> L)
Word polynomial list monic.
|
public PolyUtil()
public static <C extends RingElem<C>> GenPolynomial<GenPolynomial<C>> recursive(GenPolynomialRing<GenPolynomial<C>> rfac, GenPolynomial<C> A)
C
- coefficient type.rfac
- recursive polynomial ring factory.A
- polynomial to be converted.public static <C extends RingElem<C>> GenPolynomial<C> distribute(GenPolynomialRing<C> dfac, GenPolynomial<GenPolynomial<C>> B)
C
- coefficient type.dfac
- combined polynomial ring factory of coefficients and this.B
- polynomial to be converted.public static <C extends RingElem<C>> java.util.List<GenPolynomial<GenPolynomial<C>>> recursive(GenPolynomialRing<GenPolynomial<C>> rfac, java.util.List<GenPolynomial<C>> L)
C
- coefficient type.rfac
- recursive polynomial ring factory.L
- list of polynomials to be converted.public static <C extends RingElem<C>> java.util.List<GenPolynomial<C>> distribute(GenPolynomialRing<C> dfac, java.util.List<GenPolynomial<GenPolynomial<C>>> L)
C
- coefficient type.dfac
- combined polynomial ring factory of coefficients and this.L
- list of polynomials to be converted.public static <C extends RingElem<C> & Modular> GenPolynomial<BigInteger> integerFromModularCoefficients(GenPolynomialRing<BigInteger> fac, GenPolynomial<C> A)
fac
- result polynomial factory.A
- polynomial with ModInteger coefficients to be converted.public static <C extends RingElem<C> & Modular> java.util.List<GenPolynomial<BigInteger>> integerFromModularCoefficients(GenPolynomialRing<BigInteger> fac, java.util.List<GenPolynomial<C>> L)
fac
- result polynomial factory.L
- list of polynomials with ModInteger coefficients to be
converted.public static <C extends RingElem<C> & Modular> GenPolynomial<BigInteger> integerFromModularCoefficientsPositive(GenPolynomialRing<BigInteger> fac, GenPolynomial<C> A)
fac
- result polynomial factory.A
- polynomial with ModInteger coefficients to be converted.public static GenPolynomial<BigInteger> integerFromRationalCoefficients(GenPolynomialRing<BigInteger> fac, GenPolynomial<BigRational> A)
fac
- result polynomial factory.A
- polynomial with BigRational coefficients to be converted.public static java.lang.Object[] integerFromRationalCoefficientsFactor(GenPolynomialRing<BigInteger> fac, GenPolynomial<BigRational> A)
fac
- result polynomial factory.A
- polynomial with BigRational coefficients to be converted.public static GenPolynomial<BigInteger> integerFromRationalCoefficients(GenPolynomialRing<BigInteger> fac, java.math.BigInteger gcd, java.math.BigInteger lcm, GenPolynomial<BigRational> A)
fac
- result polynomial factory.gcd
- of rational coefficient numerators.lcm
- of rational coefficient denominators.A
- polynomial with BigRational coefficients to be converted.public static java.util.List<GenPolynomial<BigInteger>> integerFromRationalCoefficients(GenPolynomialRing<BigInteger> fac, java.util.List<GenPolynomial<BigRational>> L)
fac
- result polynomial factory.L
- list of polynomials with BigRational coefficients to be
converted.public static <C extends RingElem<C>> GenPolynomial<C> fromIntegerCoefficients(GenPolynomialRing<C> fac, GenPolynomial<BigInteger> A)
C
- coefficient type.fac
- result polynomial factory.A
- polynomial with BigInteger coefficients to be converted.public static <C extends RingElem<C>> java.util.List<GenPolynomial<C>> fromIntegerCoefficients(GenPolynomialRing<C> fac, java.util.List<GenPolynomial<BigInteger>> L)
C
- coefficient type.fac
- result polynomial factory.L
- list of polynomials with BigInteger coefficients to be
converted.public static <C extends RingElem<C> & Rational> GenPolynomial<BigDecimal> decimalFromRational(GenPolynomialRing<BigDecimal> fac, GenPolynomial<C> A)
fac
- result polynomial factory.A
- polynomial with Rational coefficients to be converted.public static <C extends RingElem<C> & Rational> GenPolynomial<Complex<BigDecimal>> complexDecimalFromRational(GenPolynomialRing<Complex<BigDecimal>> fac, GenPolynomial<Complex<C>> A)
fac
- result polynomial factory.A
- polynomial with complex Rational coefficients to be converted.public static GenPolynomial<BigRational> realPart(GenPolynomialRing<BigRational> fac, GenPolynomial<BigComplex> A)
fac
- result polynomial factory.A
- polynomial with BigComplex coefficients to be converted.public static GenPolynomial<BigRational> imaginaryPart(GenPolynomialRing<BigRational> fac, GenPolynomial<BigComplex> A)
fac
- result polynomial factory.A
- polynomial with BigComplex coefficients to be converted.public static <C extends RingElem<C>> GenPolynomial<C> realPartFromComplex(GenPolynomialRing<C> fac, GenPolynomial<Complex<C>> A)
fac
- result polynomial factory.A
- polynomial with BigComplex coefficients to be converted.public static <C extends RingElem<C>> GenPolynomial<C> imaginaryPartFromComplex(GenPolynomialRing<C> fac, GenPolynomial<Complex<C>> A)
fac
- result polynomial factory.A
- polynomial with BigComplex coefficients to be converted.public static <C extends RingElem<C>> GenPolynomial<Complex<C>> toComplex(GenPolynomialRing<Complex<C>> fac, GenPolynomial<C> A)
fac
- result polynomial factory.A
- polynomial with C coefficients to be converted.public static GenPolynomial<BigComplex> complexFromRational(GenPolynomialRing<BigComplex> fac, GenPolynomial<BigRational> A)
fac
- result polynomial factory.A
- polynomial with BigRational coefficients to be converted.public static <C extends GcdRingElem<C>> GenPolynomial<Complex<C>> complexFromAny(GenPolynomialRing<Complex<C>> fac, GenPolynomial<C> A)
fac
- result polynomial factory.A
- polynomial with RingElem coefficients to be converted.public static <C extends GcdRingElem<C>> GenPolynomial<GenPolynomial<C>> fromAlgebraicCoefficients(GenPolynomialRing<GenPolynomial<C>> rfac, GenPolynomial<AlgebraicNumber<C>> A)
rfac
- result polynomial factory.A
- polynomial with AlgebraicNumber coefficients to be converted.public static <C extends GcdRingElem<C>> GenPolynomial<AlgebraicNumber<C>> convertToAlgebraicCoefficients(GenPolynomialRing<AlgebraicNumber<C>> pfac, GenPolynomial<C> A)
pfac
- result polynomial factory.A
- polynomial with C coefficients to be converted.public static <C extends GcdRingElem<C>> GenPolynomial<AlgebraicNumber<C>> convertToRecAlgebraicCoefficients(int depth, GenPolynomialRing<AlgebraicNumber<C>> pfac, GenPolynomial<C> A)
depth
- recursion depth of AlgebraicNumber coefficients.pfac
- result polynomial factory.A
- polynomial with C coefficients to be converted.public static <C extends GcdRingElem<C>> GenPolynomial<AlgebraicNumber<C>> convertRecursiveToAlgebraicCoefficients(GenPolynomialRing<AlgebraicNumber<C>> pfac, GenPolynomial<GenPolynomial<C>> A)
pfac
- result polynomial factory.A
- recursive polynomial with GenPolynomial<BigInteger>
coefficients to be converted.public static <C extends GcdRingElem<C>> GenPolynomial<Complex<C>> complexFromAlgebraic(GenPolynomialRing<Complex<C>> fac, GenPolynomial<AlgebraicNumber<C>> A)
fac
- result polynomial factory.A
- polynomial with AlgebraicNumber coefficients Q(i) to be
converted.public static <C extends GcdRingElem<C>> GenPolynomial<AlgebraicNumber<C>> algebraicFromComplex(GenPolynomialRing<AlgebraicNumber<C>> fac, GenPolynomial<Complex<C>> A)
fac
- result polynomial factory over Q(i).A
- polynomial with Complex coefficients to be converted.public static <C extends RingElem<C> & Modular> GenPolynomial<C> chineseRemainder(GenPolynomialRing<C> fac, GenPolynomial<C> A, C mi, GenPolynomial<C> B)
fac
- GenPolynomial<ModInteger> result factory with
A.coFac.modul*B.coFac.modul = C.coFac.modul.A
- GenPolynomial<ModInteger>.B
- other GenPolynomial<ModInteger>.mi
- inverse of A.coFac.modul in ring B.coFac.public static <C extends RingElem<C>> GenPolynomial<GenPolynomial<C>> monic(GenPolynomial<GenPolynomial<C>> p)
C
- coefficient type.p
- recursive GenPolynomialpublic static <C extends RingElem<C>> GenSolvablePolynomial<GenPolynomial<C>> monic(GenSolvablePolynomial<GenPolynomial<C>> p)
C
- coefficient type.p
- recursive GenSolvablePolynomialpublic static <C extends RingElem<C>> java.util.List<GenPolynomial<C>> monic(java.util.List<GenPolynomial<C>> L)
C
- coefficient type.L
- list of polynomials with field coefficients.public static <C extends RingElem<C>> java.util.List<GenWordPolynomial<C>> wordMonic(java.util.List<GenWordPolynomial<C>> L)
C
- coefficient type.L
- list of word polynomials with field coefficients.public static <C extends RingElem<C>> java.util.List<GenPolynomial<GenPolynomial<C>>> monicRec(java.util.List<GenPolynomial<GenPolynomial<C>>> L)
C
- coefficient type.L
- list of recursive polynomials with field coefficients.public static <C extends RingElem<C>> java.util.List<ExpVector> leadingExpVector(java.util.List<GenPolynomial<C>> L)
C
- coefficient type.L
- list of polynomials.public static <C extends RingElem<C>> GenPolynomial<GenPolynomial<C>> extendCoefficients(GenPolynomialRing<GenPolynomial<C>> pfac, GenPolynomial<GenPolynomial<C>> A, int j, long k)
pfac
- extended polynomial ring factory (by i variables in the
coefficients).j
- index of variable to be used for multiplication.k
- exponent for x_j.public static <C extends RingElem<C>> GenSolvablePolynomial<GenPolynomial<C>> extendCoefficients(GenSolvablePolynomialRing<GenPolynomial<C>> pfac, GenSolvablePolynomial<GenPolynomial<C>> A, int j, long k)
pfac
- extended polynomial ring factory (by i variables in the
coefficients).j
- index of variable to be used for multiplication.k
- exponent for x_j.public static <C extends RingElem<C>> GenPolynomial<GenPolynomial<C>> toRecursive(GenPolynomialRing<GenPolynomial<C>> rfac, GenPolynomial<C> A)
C
- coefficient type.rfac
- recursive polynomial ring factory.A
- polynomial to be converted.public static <C extends RingElem<C>> GenSolvablePolynomial<GenPolynomial<C>> toRecursive(GenSolvablePolynomialRing<GenPolynomial<C>> rfac, GenSolvablePolynomial<C> A)
C
- coefficient type.rfac
- recursive solvable polynomial ring factory.A
- solvable polynomial to be converted.public static <C extends RingElem<C>> GenPolynomial<C> baseRemainderPoly(GenPolynomial<C> P, C s)
C
- coefficient type.P
- GenPolynomial.s
- nonzero coefficient.GenPolynomial.remainder(edu.jas.poly.GenPolynomial).
@Deprecated public static <C extends RingElem<C>> GenPolynomial<C> basePseudoRemainder(GenPolynomial<C> P, GenPolynomial<C> S)
baseSparsePseudoRemainder(edu.jas.poly.GenPolynomial,edu.jas.poly.GenPolynomial)
insteadC
- coefficient type.P
- GenPolynomial.S
- nonzero GenPolynomial.GenPolynomial.remainder(edu.jas.poly.GenPolynomial).
public static <C extends RingElem<C>> GenPolynomial<C> baseSparsePseudoRemainder(GenPolynomial<C> P, GenPolynomial<C> S)
C
- coefficient type.P
- GenPolynomial.S
- nonzero GenPolynomial.GenPolynomial.remainder(edu.jas.poly.GenPolynomial).
public static <C extends RingElem<C>> GenPolynomial<C> baseDensePseudoRemainder(GenPolynomial<C> P, GenPolynomial<C> S)
P
- GenPolynomial.S
- nonzero GenPolynomial.GenPolynomial.remainder(edu.jas.poly.GenPolynomial).
public static <C extends RingElem<C>> GenPolynomial<C> baseDensePseudoQuotient(GenPolynomial<C> P, GenPolynomial<C> S)
P
- GenPolynomial.S
- nonzero GenPolynomial.GenPolynomial.remainder(edu.jas.poly.GenPolynomial).
public static <C extends RingElem<C>> GenPolynomial<C> basePseudoDivide(GenPolynomial<C> P, GenPolynomial<C> S)
C
- coefficient type.P
- GenPolynomial.S
- nonzero GenPolynomial.GenPolynomial.divide(edu.jas.poly.GenPolynomial).
public static <C extends RingElem<C>> GenPolynomial<C>[] basePseudoQuotientRemainder(GenPolynomial<C> P, GenPolynomial<C> S)
C
- coefficient type.P
- GenPolynomial.S
- nonzero GenPolynomial.GenPolynomial.divide(edu.jas.poly.GenPolynomial).
public static <C extends RingElem<C>> boolean isBasePseudoQuotientRemainder(GenPolynomial<C> P, GenPolynomial<C> S, GenPolynomial<C> q, GenPolynomial<C> r)
C
- coefficient type.P
- base GenPolynomial.S
- nonzero base GenPolynomial.Note: not always meaningful and working
public static <C extends RingElem<C>> GenPolynomial<GenPolynomial<C>> recursiveDivide(GenPolynomial<GenPolynomial<C>> P, GenPolynomial<C> s)
C
- coefficient type.P
- recursive GenPolynomial.s
- GenPolynomial.public static <C extends RingElem<C>> GenWordPolynomial<GenPolynomial<C>> recursiveDivide(GenWordPolynomial<GenPolynomial<C>> P, GenPolynomial<C> s)
C
- coefficient type.P
- recursive GenPolynomial.s
- GenPolynomial.public static <C extends RingElem<C>> GenPolynomial<GenPolynomial<C>> baseRecursiveDivide(GenPolynomial<GenPolynomial<C>> P, C s)
C
- coefficient type.P
- recursive GenPolynomial.s
- coefficient.@Deprecated public static <C extends RingElem<C>> GenPolynomial<GenPolynomial<C>> recursivePseudoRemainder(GenPolynomial<GenPolynomial<C>> P, GenPolynomial<GenPolynomial<C>> S)
recursiveSparsePseudoRemainder(edu.jas.poly.GenPolynomial,edu.jas.poly.GenPolynomial)
insteadC
- coefficient type.P
- recursive GenPolynomial.S
- nonzero recursive GenPolynomial.GenPolynomial.remainder(edu.jas.poly.GenPolynomial).
public static <C extends RingElem<C>> GenPolynomial<GenPolynomial<C>> recursiveSparsePseudoRemainder(GenPolynomial<GenPolynomial<C>> P, GenPolynomial<GenPolynomial<C>> S)
C
- coefficient type.P
- recursive GenPolynomial.S
- nonzero recursive GenPolynomial.GenPolynomial.remainder(edu.jas.poly.GenPolynomial).
public static <C extends RingElem<C>> GenPolynomial<GenPolynomial<C>> recursiveDensePseudoRemainder(GenPolynomial<GenPolynomial<C>> P, GenPolynomial<GenPolynomial<C>> S)
P
- recursive GenPolynomial.S
- nonzero recursive GenPolynomial.GenPolynomial.remainder(edu.jas.poly.GenPolynomial).
public static <C extends RingElem<C>> GenPolynomial<GenPolynomial<C>> recursivePseudoDivide(GenPolynomial<GenPolynomial<C>> P, GenPolynomial<GenPolynomial<C>> S)
C
- coefficient type.P
- recursive GenPolynomial.S
- nonzero recursive GenPolynomial.GenPolynomial.remainder(edu.jas.poly.GenPolynomial).
public static <C extends RingElem<C>> boolean isRecursivePseudoQuotientRemainder(GenPolynomial<GenPolynomial<C>> P, GenPolynomial<GenPolynomial<C>> S, GenPolynomial<GenPolynomial<C>> q, GenPolynomial<GenPolynomial<C>> r)
C
- coefficient type.P
- recursive GenPolynomial.S
- nonzero recursive GenPolynomial.Note: not always meaningful and working
public static <C extends RingElem<C>> GenPolynomial<GenPolynomial<C>> coefficientPseudoDivide(GenPolynomial<GenPolynomial<C>> P, GenPolynomial<C> s)
C
- coefficient type.P
- recursive GenPolynomial.s
- nonzero GenPolynomial.GenPolynomial.remainder(edu.jas.poly.GenPolynomial).
public static <C extends RingElem<C>> GenPolynomial<C> coefficientBasePseudoDivide(GenPolynomial<C> P, C s)
C
- coefficient type.P
- GenPolynomial.s
- nonzero coefficient.GenPolynomial.remainder(edu.jas.poly.GenPolynomial).
public static <C extends RingElem<C>> GenPolynomial<C> baseDeriviative(GenPolynomial<C> P)
C
- coefficient type.P
- GenPolynomial.public static <C extends RingElem<C>> GenPolynomial<C> baseDeriviative(GenPolynomial<C> P, int r)
C
- coefficient type.P
- GenPolynomial.r
- variable for partial deriviate.public static <C extends RingElem<C>> GenPolynomial<C> baseIntegral(GenPolynomial<C> P)
C
- coefficient type.P
- GenPolynomial.public static <C extends RingElem<C>> GenPolynomial<GenPolynomial<C>> recursiveDeriviative(GenPolynomial<GenPolynomial<C>> P)
C
- coefficient type.P
- recursive GenPolynomial.public static BigInteger factorBound(ExpVector e)
e
- degree vector of a GenPolynomial A.public static <C extends RingElem<C>> C absNorm(GenPolynomial<C> p)
p
- GenPolynomialpublic static <C extends RingElem<C>> GenPolynomial<C> evaluateMainRecursive(GenPolynomialRing<C> cfac, GenPolynomial<GenPolynomial<C>> A, C a)
C
- coefficient type.cfac
- coefficent polynomial ring factory.A
- recursive polynomial to be evaluated.a
- value to evaluate at.public static <C extends RingElem<C>> GenPolynomial<C> evaluateMain(GenPolynomialRing<C> cfac, GenPolynomial<C> A, C a)
C
- coefficient type.cfac
- coefficent polynomial ring factory.A
- distributed polynomial to be evaluated.a
- value to evaluate at.public static <C extends RingElem<C>> java.util.List<GenPolynomial<C>> evaluateMain(GenPolynomialRing<C> cfac, java.util.List<GenPolynomial<C>> L, C a)
C
- coefficient type.cfac
- coefficent ring factory.L
- list of univariate polynomials to be evaluated.a
- value to evaluate at.public static <C extends RingElem<C>> C evaluateMain(RingFactory<C> cfac, GenPolynomial<C> A, C a)
C
- coefficient type.cfac
- coefficent ring factory.A
- univariate polynomial to be evaluated.a
- value to evaluate at.public static <C extends RingElem<C>> java.util.List<C> evaluateMain(RingFactory<C> cfac, java.util.List<GenPolynomial<C>> L, C a)
C
- coefficient type.cfac
- coefficent ring factory.L
- list of univariate polynomial to be evaluated.a
- value to evaluate at.public static <C extends RingElem<C>> GenPolynomial<C> evaluate(GenPolynomialRing<C> cfac, GenPolynomialRing<GenPolynomial<C>> rfac, GenPolynomialRing<GenPolynomial<C>> nfac, GenPolynomialRing<C> dfac, GenPolynomial<C> A, C a)
C
- coefficient type.cfac
- coefficient polynomial ring in k variables C[x_1, ..., x_k]
factory.rfac
- coefficient polynomial ring C[x_1, ..., x_{k-1}] [x_k]
factory, a recursive polynomial ring in 1 variable with
coefficients in k-1 variables.nfac
- polynomial ring in n-1 varaibles C[x_1, ..., x_{k-1}]
[x_{k+1}, ..., x_n] factory, a recursive polynomial ring in
n-k+1 variables with coefficients in k-1 variables.dfac
- polynomial ring in n-1 variables. C[x_1, ..., x_{k-1},
x_{k+1}, ..., x_n] factory.A
- polynomial to be evaluated.a
- value to evaluate at.public static <C extends RingElem<C>> GenPolynomial<C> evaluateFirst(GenPolynomialRing<C> cfac, GenPolynomialRing<C> dfac, GenPolynomial<C> A, C a)
C
- coefficient type.cfac
- coefficient polynomial ring in first variable C[x_1] factory.dfac
- polynomial ring in n-1 variables. C[x_2, ..., x_n] factory.A
- polynomial to be evaluated.a
- value to evaluate at.public static <C extends RingElem<C>> GenPolynomial<C> evaluateFirstRec(GenPolynomialRing<C> cfac, GenPolynomialRing<C> dfac, GenPolynomial<GenPolynomial<C>> A, C a)
evaluateFirst()
, but type erasure of parameter
A
does not allow the same name.C
- coefficient type.cfac
- coefficient polynomial ring in first variable C[x_1] factory.dfac
- polynomial ring in n-1 variables. C[x_2, ..., x_n] factory.A
- recursive polynomial to be evaluated.a
- value to evaluate at.public static <C extends RingElem<C>> C evaluateAll(RingFactory<C> cfac, GenPolynomial<C> A, java.util.List<C> a)
C
- coefficient type.cfac
- coefficient ring factory.A
- polynomial to be evaluated.a
- = (a_1, a_2, ..., a_n) a tuple of values to evaluate at.public static <C extends RingElem<C>> GenPolynomial<C> substituteMain(GenPolynomial<C> A, GenPolynomial<C> s)
A
- univariate polynomial.s
- polynomial for substitution.public static <C extends RingElem<C>> GenPolynomial<C> substituteUnivariate(GenPolynomial<C> f, GenPolynomial<C> t)
f
- univariate polynomial.t
- polynomial for substitution.public static <C extends RingElem<C>> GenPolynomial<C> substituteUnivariateMult(GenPolynomial<C> f, GenPolynomial<C> t)
f
- univariate polynomial with multivariate coefficients.t
- polynomial for substitution.public static <C extends RingElem<C>> GenPolynomial<C> seriesOfTaylor(GenPolynomial<C> f, C a)
f
- univariate polynomial.a
- expansion point.public static <C extends RingElem<C>> GenPolynomial<GenPolynomial<C>> interpolate(GenPolynomialRing<GenPolynomial<C>> fac, GenPolynomial<GenPolynomial<C>> A, GenPolynomial<C> M, C mi, GenPolynomial<C> B, C am)
C
- coefficient type.fac
- GenPolynomialA
- GenPolynomial.M
- GenPolynomial interpolation modul of A.mi
- inverse of M(am) in ring fac.coFac.B
- evaluation of other GenPolynomial.am
- evaluation point (interpolation modul) of B, i.e. P(am) = B.public static <C extends RingElem<C>> GenPolynomial<C> interpolate(GenPolynomialRing<C> fac, GenPolynomial<C> A, GenPolynomial<C> M, C mi, C a, C am)
C
- coefficient type.fac
- GenPolynomialA
- GenPolynomial.M
- GenPolynomial interpolation modul of A.mi
- inverse of M(am) in ring fac.coFac.a
- evaluation of other GenPolynomial.am
- evaluation point (interpolation modul) of a, i.e. P(am) = a.public static <C extends RingElem<C>> GenPolynomial<GenPolynomial<C>> switchVariables(GenPolynomial<GenPolynomial<C>> P)
C
- coefficient type.P
- recursive GenPolynomial in R[X,Y].public static <C extends RingElem<C>> long totalDegreeLeadingTerm(java.util.List<GenPolynomial<C>> P)
public static <C extends RingElem<C>> long totalDegree(java.util.List<GenPolynomial<C>> P)
public static <C extends RingElem<C>> long maxDegree(java.util.List<GenPolynomial<C>> P)
public static <C extends RingElem<C>> long coeffMaxDegree(GenPolynomial<GenPolynomial<C>> A)
C
- coefficient type.public static <C extends RingElem<C>,D extends RingElem<D>> GenPolynomial<D> map(GenPolynomialRing<D> ring, GenPolynomial<C> p, UnaryFunctor<C,D> f)
ring
- result polynomial ring factory.p
- polynomial.f
- evaluation functor.public static <C extends GcdRingElem<C>> java.util.List<GenPolynomial<Product<C>>> toProductGen(GenPolynomialRing<Product<C>> pfac, java.util.List<GenPolynomial<C>> L)
C
- coefficient type.pfac
- polynomial ring factory.L
- list of polynomials to be represented.public static <C extends GcdRingElem<C>> GenPolynomial<Product<C>> toProductGen(GenPolynomialRing<Product<C>> pfac, GenPolynomial<C> A)
C
- coefficient type.pfac
- polynomial ring factory.A
- polynomial to be represented.public static <C extends GcdRingElem<C>> Product<C> toProductGen(ProductRing<C> pfac, C c)
C
- coefficient type.pfac
- product ring factory.c
- coefficient to be represented.public static <C extends RingElem<C>> Product<GenPolynomial<C>> toProduct(ProductRing<GenPolynomial<C>> pfac, C c, ExpVector e)
C
- coefficient type.pfac
- product polynomial ring factory.c
- coefficient to be used.e
- exponent vector.public static <C extends RingElem<C>> Product<GenPolynomial<C>> toProduct(ProductRing<GenPolynomial<C>> pfac, GenPolynomial<C> A)
C
- coefficient type.pfac
- product polynomial ring factory.A
- polynomial.public static Product<ModInteger> toProduct(ProductRing<ModInteger> pfac, BigInteger c)
pfac
- product ring factory.c
- coefficient to be represented.public static GenPolynomial<Product<ModInteger>> toProduct(GenPolynomialRing<Product<ModInteger>> pfac, GenPolynomial<BigInteger> A)
pfac
- polynomial ring factory.A
- polynomial to be represented.public static java.util.List<GenPolynomial<Product<ModInteger>>> toProduct(GenPolynomialRing<Product<ModInteger>> pfac, java.util.List<GenPolynomial<BigInteger>> L)
pfac
- polynomial ring factory.L
- list of polynomials to be represented.public static <C extends RingElem<C>> java.util.List<GenPolynomial<C>> intersect(GenPolynomialRing<C> R, java.util.List<GenPolynomial<C>> F)
R
- polynomial ringF
- list of polynomialspublic static <C extends RingElem<C>> java.util.List<GenSolvablePolynomial<C>> intersect(GenSolvablePolynomialRing<C> R, java.util.List<GenSolvablePolynomial<C>> F)
R
- solvable polynomial ringF
- list of solvable polynomialspublic static <C extends RingElem<C>> java.util.List<GenWordPolynomial<C>> intersect(GenWordPolynomialRing<C> R, java.util.List<GenWordPolynomial<C>> F)
R
- word polynomial ringF
- list of word polynomialspublic static <C extends RingElem<C>> GenPolynomial<C> removeUnusedUpperVariables(GenPolynomial<C> p)
p
- polynomial.public static <C extends RingElem<C>> GenPolynomial<C> removeUnusedLowerVariables(GenPolynomial<C> p)
p
- polynomial.public static <C extends RingElem<C>> GenPolynomial<C> removeUnusedMiddleVariables(GenPolynomial<C> p)
p
- polynomial.public static <C extends RingElem<C>> GenPolynomial<C> selectWithVariable(java.util.List<GenPolynomial<C>> P, int i)
i
- variable index.