Uses of Class
cc.redberry.rings.poly.multivar.MultivariatePolynomial
-
Packages that use MultivariatePolynomial Package Description cc.redberry.rings cc.redberry.rings.io cc.redberry.rings.poly cc.redberry.rings.poly.multivar cc.redberry.rings.poly.univar -
-
Uses of MultivariatePolynomial in cc.redberry.rings
Methods in cc.redberry.rings that return types with arguments of type MultivariatePolynomial Modifier and Type Method Description static <E> MultivariateRing<MultivariatePolynomial<E>>
Rings. MultivariateRing(int nVariables, Ring<E> coefficientRing)
Ring of multivariate polynomials with specified number of variables over specified coefficient ringstatic <E> MultivariateRing<MultivariatePolynomial<E>>
Rings. MultivariateRing(int nVariables, Ring<E> coefficientRing, Comparator<DegreeVector> monomialOrder)
Ring of multivariate polynomials with specified number of variables over specified coefficient ringstatic MultivariateRing<MultivariatePolynomial<Rational<BigInteger>>>
Rings. MultivariateRingQ(int nVariables)
Ring of multivariate polynomials over rationals (Q[x1, x2, ...])static MultivariateRing<MultivariatePolynomial<BigInteger>>
Rings. MultivariateRingZ(int nVariables)
Ring of multivariate polynomials over integers (Z[x1, x2, ...])static MultivariateRing<MultivariatePolynomial<BigInteger>>
Rings. MultivariateRingZp(int nVariables, BigInteger modulus)
Ring of multivariate polynomials over Zp integers (Zp[x1, x2, ...]) with arbitrary large modulus -
Uses of MultivariatePolynomial in cc.redberry.rings.io
Methods in cc.redberry.rings.io that return types with arguments of type MultivariatePolynomial Modifier and Type Method Description static <E> Coder<MultivariatePolynomial<E>,Monomial<E>,MultivariatePolynomial<E>>
Coder. mkMultivariateCoder(MultivariateRing<MultivariatePolynomial<E>> ring, Coder<E,?,?> cfCoder, String... variables)
Create parser for multivariate polynomial ringsstatic <E> Coder<MultivariatePolynomial<E>,Monomial<E>,MultivariatePolynomial<E>>
Coder. mkMultivariateCoder(MultivariateRing<MultivariatePolynomial<E>> ring, Coder<E,?,?> cfCoder, String... variables)
Create parser for multivariate polynomial ringsstatic <E> Coder<MultivariatePolynomial<E>,Monomial<E>,MultivariatePolynomial<E>>
Coder. mkMultivariateCoder(MultivariateRing<MultivariatePolynomial<E>> ring, Coder<E,?,?> cfCoder, Map<String,MultivariatePolynomial<E>> variables)
Create coder for multivariate polynomial ringsstatic <E> Coder<MultivariatePolynomial<E>,Monomial<E>,MultivariatePolynomial<E>>
Coder. mkMultivariateCoder(MultivariateRing<MultivariatePolynomial<E>> ring, Coder<E,?,?> cfCoder, Map<String,MultivariatePolynomial<E>> variables)
Create coder for multivariate polynomial ringsMethod parameters in cc.redberry.rings.io with type arguments of type MultivariatePolynomial Modifier and Type Method Description static <E> Coder<MultivariatePolynomial<E>,Monomial<E>,MultivariatePolynomial<E>>
Coder. mkMultivariateCoder(MultivariateRing<MultivariatePolynomial<E>> ring, Coder<E,?,?> cfCoder, String... variables)
Create parser for multivariate polynomial ringsstatic <E> Coder<MultivariatePolynomial<E>,Monomial<E>,MultivariatePolynomial<E>>
Coder. mkMultivariateCoder(MultivariateRing<MultivariatePolynomial<E>> ring, Coder<E,?,?> cfCoder, Map<String,MultivariatePolynomial<E>> variables)
Create coder for multivariate polynomial ringsstatic <E> Coder<MultivariatePolynomial<E>,Monomial<E>,MultivariatePolynomial<E>>
Coder. mkMultivariateCoder(MultivariateRing<MultivariatePolynomial<E>> ring, Coder<E,?,?> cfCoder, Map<String,MultivariatePolynomial<E>> variables)
Create coder for multivariate polynomial rings -
Uses of MultivariatePolynomial in cc.redberry.rings.poly
Methods in cc.redberry.rings.poly that return MultivariatePolynomial Modifier and Type Method Description static <E> MultivariatePolynomial<Rational<E>>
Util. asOverRationals(Ring<Rational<E>> field, MultivariatePolynomial<E> poly)
static <E> MultivariatePolynomial<Rational<E>>
Util. divideOverRationals(Ring<Rational<E>> field, MultivariatePolynomial<E> poly, E denominator)
Methods in cc.redberry.rings.poly that return types with arguments of type MultivariatePolynomial Modifier and Type Method Description static <E> Util.Tuple2<MultivariatePolynomial<E>,E>
Util. toCommonDenominator(MultivariatePolynomial<Rational<E>> poly)
Brings polynomial with rational coefficients to common denominatorMethods in cc.redberry.rings.poly with parameters of type MultivariatePolynomial Modifier and Type Method Description static <E> MultivariatePolynomial<Rational<E>>
Util. asOverRationals(Ring<Rational<E>> field, MultivariatePolynomial<E> poly)
static <E> E
Util. commonDenominator(MultivariatePolynomial<Rational<E>> poly)
Returns a common denominator of given polystatic <E> MultivariatePolynomial<Rational<E>>
Util. divideOverRationals(Ring<Rational<E>> field, MultivariatePolynomial<E> poly, E denominator)
<MPoly extends AMultivariatePolynomial>
MPolySimpleFieldExtension. normOfPolynomial(MultivariatePolynomial<E> poly)
Gives the norm of multivariate polynomial over this field extension, which is always a polynomial with the coefficients from the base field.static <E> Util.Tuple2<MultivariatePolynomial<E>,E>
Util. toCommonDenominator(MultivariatePolynomial<Rational<E>> poly)
Brings polynomial with rational coefficients to common denominator -
Uses of MultivariatePolynomial in cc.redberry.rings.poly.multivar
Methods in cc.redberry.rings.poly.multivar that return MultivariatePolynomial Modifier and Type Method Description MultivariatePolynomial<E>
MultivariatePolynomial. add(E oth)
Addsoth
to this polynomialstatic <E> MultivariatePolynomial<E>
MultivariatePolynomial. asMultivariate(UnivariatePolynomial<E> poly, int nVariables, int variable, Comparator<DegreeVector> ordering)
Converts univariate polynomial to multivariate.static <E> MultivariatePolynomial<E>
MultivariatePolynomial. asNormalMultivariate(MultivariatePolynomial<MultivariatePolynomial<E>> poly)
Converts multivariate polynomial over multivariate polynomial ring to a multivariate polynomial over coefficient ringstatic <E> MultivariatePolynomial<E>
MultivariatePolynomial. asNormalMultivariate(MultivariatePolynomial<MultivariatePolynomial<E>> poly, int[] coefficientVariables, int[] mainVariables)
Converts multivariate polynomial over multivariate polynomial ring to a multivariate polynomial over coefficient ringstatic <E> MultivariatePolynomial<E>
MultivariatePolynomial. asNormalMultivariate(MultivariatePolynomial<UnivariatePolynomial<E>> poly, int variable)
Converts multivariate polynomial over univariate polynomial ring (R[variable][other_variables]) to a multivariate polynomial over coefficient ring (R[variables])abstract MultivariatePolynomial<Poly>
AMultivariatePolynomial. asOverMultivariate(int... variables)
Converts this to a multivariate polynomial with coefficients being multivariate polynomials polynomials overvariables
that is polynomial in R[variables][other_variables]MultivariatePolynomial<MultivariatePolynomial<E>>
MultivariatePolynomial. asOverMultivariate(int... variables)
MultivariatePolynomial<MultivariatePolynomialZp64>
MultivariatePolynomialZp64. asOverMultivariate(int... variables)
MultivariatePolynomial<Poly>
AMultivariatePolynomial. asOverMultivariateEliminate(int... variables)
Converts this to a multivariate polynomial with coefficients being multivariate polynomials polynomials overvariables
that is polynomial in R[variables][other_variables]abstract MultivariatePolynomial<Poly>
AMultivariatePolynomial. asOverMultivariateEliminate(int[] variables, Comparator<DegreeVector> ordering)
Converts this to a multivariate polynomial with coefficients being multivariate polynomials polynomials overvariables
that is polynomial in R[variables][other_variables]MultivariatePolynomial<MultivariatePolynomial<E>>
MultivariatePolynomial. asOverMultivariateEliminate(int[] variables, Comparator<DegreeVector> ordering)
MultivariatePolynomial<MultivariatePolynomialZp64>
MultivariatePolynomialZp64. asOverMultivariateEliminate(int[] variables, Comparator<DegreeVector> ordering)
MultivariatePolynomial<Poly>
AMultivariatePolynomial. asOverPoly(Poly factory)
Consider coefficients of this as constant polynomials of the same type as a given factory polynomialabstract MultivariatePolynomial<? extends IUnivariatePolynomial>
AMultivariatePolynomial. asOverUnivariate(int variable)
Converts this to a multivariate polynomial with coefficients being univariate polynomials overvariable
MultivariatePolynomial<UnivariatePolynomial<E>>
MultivariatePolynomial. asOverUnivariate(int variable)
MultivariatePolynomial<UnivariatePolynomialZp64>
MultivariatePolynomialZp64. asOverUnivariate(int variable)
abstract MultivariatePolynomial<? extends IUnivariatePolynomial>
AMultivariatePolynomial. asOverUnivariateEliminate(int variable)
Converts this to a multivariate polynomial with coefficients being univariate polynomials overvariable
, the resulting polynomial have (nVariable - 1) multivariate variables (specifiedvariable
is eliminated)MultivariatePolynomial<UnivariatePolynomial<E>>
MultivariatePolynomial. asOverUnivariateEliminate(int variable)
MultivariatePolynomial<UnivariatePolynomialZp64>
MultivariatePolynomialZp64. asOverUnivariateEliminate(int variable)
static MultivariatePolynomial<BigInteger>
MultivariatePolynomial. asPolyZ(MultivariatePolynomial<BigInteger> poly, boolean copy)
Returns Z[X] polynomial formed from the coefficients of the poly.MultivariatePolynomial<BigInteger>
MultivariatePolynomialZp64. asPolyZ()
Returns polynomial over Z formed from the coefficients of thisstatic MultivariatePolynomial<BigInteger>
MultivariatePolynomial. asPolyZSymmetric(MultivariatePolynomial<BigInteger> poly)
Converts Zp[x] polynomial to Z[x] polynomial formed from the coefficients of this represented in symmetric modular form (-modulus/2 <= cfx <= modulus/2
).MultivariatePolynomial<BigInteger>
MultivariatePolynomialZp64. asPolyZSymmetric()
Returns polynomial over Z formed from the coefficients of this represented in symmetric modular form (-modulus/2 <= cfx <= modulus/2
).static <E> MultivariatePolynomial<E>
MultivariateGCD. BrownGCD(MultivariatePolynomial<E> a, MultivariatePolynomial<E> b)
Calculates GCD of two multivariate polynomials over Zp using Brown's algorithm with dense interpolation.static <E> MultivariatePolynomial<E>
MultivariateResultants. BrownResultant(MultivariatePolynomial<E> a, MultivariatePolynomial<E> b, int variable)
Brown's algorithm for resultant with dense interpolationMultivariatePolynomial<E>
MultivariatePolynomial. ccAsPoly()
MultivariatePolynomial<E>
MultivariatePolynomial. clone()
MultivariatePolynomial<E>
MultivariatePolynomial. contentAsPoly()
static <E> MultivariatePolynomial<E>
MultivariatePolynomial. create(int nVariables, Ring<E> ring, Comparator<DegreeVector> ordering, Monomial<E>... terms)
Creates multivariate polynomial from a list of monomial termsstatic <E> MultivariatePolynomial<E>
MultivariatePolynomial. create(int nVariables, Ring<E> ring, Comparator<DegreeVector> ordering, Iterable<Monomial<E>> terms)
Creates multivariate polynomial from a list of monomial termsMultivariatePolynomial<E>[]
MultivariatePolynomial. createArray(int length)
MultivariatePolynomial<E>[][]
MultivariatePolynomial. createArray2d(int length)
MultivariatePolynomial<E>[][]
MultivariatePolynomial. createArray2d(int length1, int length2)
MultivariatePolynomial<E>
MultivariatePolynomial. createConstant(E val)
Creates constant polynomial with specified valueMultivariatePolynomial<E>
MultivariatePolynomial. createConstantFromTerm(Monomial<E> monomial)
MultivariatePolynomial<E>
MultivariatePolynomial. createLinear(int variable, E cc, E lc)
Creates linear polynomial of the formcc + lc * variable
MultivariatePolynomial<E>
MultivariatePolynomial. createOne()
MultivariatePolynomial<E>
MultivariatePolynomial. createZero()
MultivariatePolynomial<E>
MultivariatePolynomial. decrement()
MultivariatePolynomial<E>
MultivariatePolynomial. derivative(int variable, int order)
MultivariatePolynomial<E>
MultivariatePolynomial. divideByLC(MultivariatePolynomial<E> other)
MultivariatePolynomial<E>
MultivariatePolynomial. divideExact(E factor)
Divides this polynomial by afactor
or throws exception if exact division is not possibleMultivariatePolynomial<E>
MultivariatePolynomial. divideOrNull(Monomial<E> monomial)
MultivariatePolynomial<E>
MultivariatePolynomial. divideOrNull(E factor)
Divides this polynomial by afactor
or returnsnull
(causing loss of internal data) if some of the elements can't be exactly divided by thefactor
.MultivariatePolynomial<E>
MultivariatePolynomial. eliminate(int[] variables, E[] values)
Returns a copy of this withvalues
substituted forvariables
MultivariatePolynomial<E>
MultivariatePolynomial. eliminate(int variable, long value)
Substitutesvalue
forvariable
and eliminatesvariable
from the list of variables so that the resulting polynomial hasresult.nVariables = this.nVariables - 1
.MultivariatePolynomial<E>
MultivariatePolynomial. eliminate(int variable, E value)
Substitutesvalue
forvariable
and eliminatesvariable
from the list of variables so that the resulting polynomial hasresult.nVariables = this.nVariables - 1
.MultivariatePolynomial<E>
MultivariatePolynomial. evaluate(int[] variables, E[] values)
Returns a copy of this withvalues
substituted forvariables
.MultivariatePolynomial<E>
MultivariatePolynomial. evaluate(int variable, long value)
Returns a copy of this withvalue
substituted forvariable
.MultivariatePolynomial<E>
MultivariatePolynomial. evaluate(int variable, E value)
Returns a copy of this withvalue
substituted forvariable
.MultivariatePolynomial<E>[]
MultivariatePolynomial. evaluate(int variable, E... values)
Evaluates this polynomial at specified pointsMultivariatePolynomial<E>
MultivariatePolynomial.HornerForm. evaluate(E[] values)
Substitute given values for evaluation variables (for example, if this is in R[x1,x2,x3,x4] and evaluation variables are x2 and x4, the result will be a poly in R[x1,x3]).MultivariatePolynomial<E>
MultivariatePolynomial. evaluateAtRandom(int variable, org.apache.commons.math3.random.RandomGenerator rnd)
MultivariatePolynomial<E>
MultivariatePolynomial. evaluateAtRandomPreservingSkeleton(int variable, org.apache.commons.math3.random.RandomGenerator rnd)
static <E> MultivariatePolynomial<E>
MultivariatePolynomial. fromDenseRecursiveForm(UnivariatePolynomial recForm, int nVariables, Comparator<DegreeVector> ordering)
Converts poly from a recursive univariate representation.static <E> MultivariatePolynomial<E>
MultivariatePolynomial. fromSparseRecursiveForm(AMultivariatePolynomial recForm, int nVariables, Comparator<DegreeVector> ordering)
Converts poly from a recursive univariate representation.MultivariatePolynomial<E>
MultivariateInterpolation.Interpolation. getInterpolatingPolynomial()
Returns resulting interpolating polynomialMultivariatePolynomial<E>
MultivariatePolynomial. increment()
static <E> MultivariatePolynomial<E>
MultivariateInterpolation. interpolateNewton(int variable, E[] points, MultivariatePolynomial<E>[] values)
Constructs an interpolating polynomial which values atpoints[i]
are exactlyvalues[i]
.static <E> MultivariatePolynomial<E>
MultivariateGCD. KaltofenMonaganEEZModularGCDInGF(MultivariatePolynomial<E> a, MultivariatePolynomial<E> b)
Modular GCD algorithm for polynomials over finite fields of small cardinality.static <E> MultivariatePolynomial<E>
MultivariateGCD. KaltofenMonaganSparseModularGCDInGF(MultivariatePolynomial<E> a, MultivariatePolynomial<E> b)
Modular GCD algorithm for polynomials over finite fields of small cardinality.MultivariatePolynomial<E>
MultivariatePolynomial. lcAsPoly()
MultivariatePolynomial<E>
MultivariatePolynomial. lcAsPoly(Comparator<DegreeVector> ordering)
<T> MultivariatePolynomial<T>
MultivariatePolynomial. mapCoefficients(Ring<T> newRing, Function<E,T> mapper)
Maps coefficients of this using specified mapping function<T> MultivariatePolynomial<T>
MultivariatePolynomialZp64. mapCoefficients(Ring<T> newRing, LongFunction<T> mapper)
Maps coefficients of this using specified mapping functionabstract <E> MultivariatePolynomial<E>
AMultivariatePolynomial. mapCoefficientsAsPolys(Ring<E> ring, Function<Poly,E> mapper)
<T> MultivariatePolynomial<T>
MultivariatePolynomial. mapCoefficientsAsPolys(Ring<T> ring, Function<MultivariatePolynomial<E>,T> mapper)
<E> MultivariatePolynomial<E>
MultivariatePolynomialZp64. mapCoefficientsAsPolys(Ring<E> ring, Function<MultivariatePolynomialZp64,E> mapper)
<T> MultivariatePolynomial<T>
MultivariatePolynomial. mapTerms(Ring<T> newRing, Function<Monomial<E>,Monomial<T>> mapper)
Maps terms of this using specified mapping function<T> MultivariatePolynomial<T>
MultivariatePolynomialZp64. mapTerms(Ring<T> newRing, Function<MonomialZp64,Monomial<T>> mapper)
Maps terms of this using specified mapping functionstatic MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. ModularGCDInNumberFieldViaLangemyrMcCallum(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b, BiFunction<MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>> modularAlgorithm)
Zippel's sparse modular interpolation algorithm for polynomials over simple field extensions with the use of Langemyr & McCallum approach to avoid rational reconstructionstatic MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. ModularGCDInNumberFieldViaRationalReconstruction(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b, BiFunction<MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>> modularAlgorithm)
Modular interpolation algorithm for polynomials over simple field extensions with the use of Langemyr & McCallum approach to avoid rational reconstructionstatic MultivariatePolynomial<BigInteger>
MultivariateGCD. ModularGCDInZ(MultivariatePolynomial<BigInteger> a, MultivariatePolynomial<BigInteger> b, BiFunction<MultivariatePolynomialZp64,MultivariatePolynomialZp64,MultivariatePolynomialZp64> gcdInZp)
Modular GCD algorithm for polynomials over Z.static MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateResultants. ModularResultantInNumberField(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b, int variable)
Modular resultant in simple number fieldstatic MultivariatePolynomial<UnivariatePolynomial<BigInteger>>
MultivariateResultants. ModularResultantInRingOfIntegersOfNumberField(MultivariatePolynomial<UnivariatePolynomial<BigInteger>> a, MultivariatePolynomial<UnivariatePolynomial<BigInteger>> b, int variable)
Modular algorithm with Zippel sparse interpolation for resultant over rings of integersstatic MultivariatePolynomial<BigInteger>
MultivariateResultants. ModularResultantInZ(MultivariatePolynomial<BigInteger> a, MultivariatePolynomial<BigInteger> b, int variable)
Modular algorithm with Zippel sparse interpolation for resultant over ZMultivariatePolynomial<E>
MultivariatePolynomial. monic()
Makes this polynomial monic if possible, if not -- destroys this and returns nullMultivariatePolynomial<E>
MultivariatePolynomial. monic(E factor)
Setsthis
to its monic part multiplied by thefactor
modulomodulus
(that ismonic(modulus).multiply(factor)
).MultivariatePolynomial<E>
MultivariatePolynomial. monic(Comparator<DegreeVector> ordering)
MultivariatePolynomial<E>
MultivariatePolynomial. monic(Comparator<DegreeVector> ordering, E factor)
Setsthis
to its monic part (with respect to given ordering) multiplied by the given factor;MultivariatePolynomial<E>
MultivariatePolynomial. monicWithLC(MultivariatePolynomial<E> other)
MultivariatePolynomial<E>
MultivariatePolynomial. monicWithLC(Comparator<DegreeVector> ordering, MultivariatePolynomial<E> other)
MultivariatePolynomial<E>
MultivariatePolynomial. multiply(long factor)
MultivariatePolynomial<E>
MultivariatePolynomial. multiply(Monomial<E> monomial)
MultivariatePolynomial<E>
MultivariatePolynomial. multiply(MultivariatePolynomial<E> oth)
MultivariatePolynomial<E>
MultivariatePolynomial. multiply(E factor)
Multipliesthis
by thefactor
MultivariatePolynomial<E>
MultivariatePolynomial. multiplyByBigInteger(BigInteger factor)
MultivariatePolynomial<E>
MultivariatePolynomial. multiplyByLC(MultivariatePolynomial<E> other)
static <E> MultivariatePolynomial<E>
MultivariatePolynomial. one(int nVariables, Ring<E> ring, Comparator<DegreeVector> ordering)
Creates unit polynomial.static MultivariatePolynomial<BigInteger>
MultivariatePolynomial. parse(String string)
Deprecated.use #parse(string, ring, ordering, variables)static <E> MultivariatePolynomial<E>
MultivariatePolynomial. parse(String string, Ring<E> ring)
Deprecated.use #parse(string, ring, ordering, variables)static <E> MultivariatePolynomial<E>
MultivariatePolynomial. parse(String string, Ring<E> ring, String... variables)
Parse multivariate polynomial from string.static <E> MultivariatePolynomial<E>
MultivariatePolynomial. parse(String string, Ring<E> ring, Comparator<DegreeVector> ordering)
Deprecated.use #parse(string, ring, ordering, variables)static <E> MultivariatePolynomial<E>
MultivariatePolynomial. parse(String string, Ring<E> ring, Comparator<DegreeVector> ordering, String... variables)
Parse multivariate polynomial from string.static MultivariatePolynomial<BigInteger>
MultivariatePolynomial. parse(String string, String... variables)
Parse multivariate Z[X] polynomial from string.static MultivariatePolynomial<BigInteger>
MultivariatePolynomial. parse(String string, Comparator<DegreeVector> ordering)
Deprecated.use #parse(string, ring, ordering, variables)static MultivariatePolynomial<BigInteger>
MultivariatePolynomial. parse(String string, Comparator<DegreeVector> ordering, String... variables)
Parse multivariate Z[X] polynomial from string.MultivariatePolynomial<E>
MultivariatePolynomial. parsePoly(String string)
Deprecated.static MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. PolynomialGCDinNumberField(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b)
Calculates greatest common divisor of two multivariate polynomials over Zstatic MultivariatePolynomial<UnivariatePolynomial<BigInteger>>
MultivariateGCD. PolynomialGCDinRingOfIntegersOfNumberField(MultivariatePolynomial<UnivariatePolynomial<BigInteger>> a, MultivariatePolynomial<UnivariatePolynomial<BigInteger>> b)
Calculates greatest common divisor of two multivariate polynomials over Zstatic MultivariatePolynomial<BigInteger>
MultivariateGCD. PolynomialGCDinZ(MultivariatePolynomial<BigInteger> a, MultivariatePolynomial<BigInteger> b)
Calculates greatest common divisor of two multivariate polynomials over ZMultivariatePolynomial<E>
MultivariatePolynomial. primitivePart()
MultivariatePolynomial<E>
MultivariatePolynomial. primitivePart(int variable)
MultivariatePolynomial<E>
MultivariatePolynomial. primitivePartSameSign()
static <E> MultivariatePolynomial<E>
RandomMultivariatePolynomials. randomPolynomial(int nVars, int minDegree, int maxDegree, int size, Ring<E> ring, Comparator<DegreeVector> ordering, Function<org.apache.commons.math3.random.RandomGenerator,E> method, org.apache.commons.math3.random.RandomGenerator rnd)
Generates random polynomialstatic MultivariatePolynomial<BigInteger>
RandomMultivariatePolynomials. randomPolynomial(int nVars, int degree, int size, BigInteger bound, Comparator<DegreeVector> ordering, org.apache.commons.math3.random.RandomGenerator rnd)
Generates random Z[X] polynomial with coefficients bounded bybound
static <E> MultivariatePolynomial<E>
RandomMultivariatePolynomials. randomPolynomial(int nVars, int degree, int size, Ring<E> ring, Comparator<DegreeVector> ordering, Function<org.apache.commons.math3.random.RandomGenerator,E> method, org.apache.commons.math3.random.RandomGenerator rnd)
Generates random polynomialstatic <E> MultivariatePolynomial<E>
RandomMultivariatePolynomials. randomPolynomial(int nVars, int degree, int size, Ring<E> ring, Comparator<DegreeVector> ordering, org.apache.commons.math3.random.RandomGenerator rnd)
Generates random polynomialstatic MultivariatePolynomial<BigInteger>
RandomMultivariatePolynomials. randomPolynomial(int nVars, int degree, int size, org.apache.commons.math3.random.RandomGenerator rnd)
Generates random Z[X] polynomialstatic <E> MultivariatePolynomial<E>
RandomMultivariatePolynomials. randomSharpPolynomial(int nVars, int degree, int size, Ring<E> ring, Comparator<DegreeVector> ordering, Function<org.apache.commons.math3.random.RandomGenerator,E> rndCoefficients, org.apache.commons.math3.random.RandomGenerator rnd)
Generates random Zp[X] polynomial over machine integersstatic MultivariatePolynomial<BigInteger>
MultivariateResultants. ResultantInZ(MultivariatePolynomial<BigInteger> a, MultivariatePolynomial<BigInteger> b, int variable)
Computes polynomial resultant of two polynomials over ZMultivariatePolynomial<E>
MultivariatePolynomial. seriesCoefficient(int variable, int order)
MultivariatePolynomial<E>
MultivariatePolynomial. setCoefficientRingFrom(MultivariatePolynomial<E> poly)
MultivariatePolynomial<E>
MultivariatePolynomial. setLC(E val)
Sets the leading coefficient to the specified valueMultivariatePolynomial<E>
MultivariatePolynomial. setRing(Ring<E> newRing)
Returns a copy of this with coefficient reduced to anewRing
<E> MultivariatePolynomial<E>
MultivariatePolynomialZp64. setRing(Ring<E> newRing)
Switches to another ring specified bynewRing
MultivariatePolynomial<E>
MultivariatePolynomial. setRingUnsafe(Ring<E> newRing)
internal APIMultivariatePolynomial<E>
MultivariatePolynomial. shift(int[] variables, E[] shifts)
Returns a copy of this withvariables -> variables + shifts
MultivariatePolynomial<E>
MultivariatePolynomial. shift(int variable, long shift)
Returns a copy of this withvariable -> variable + shift
MultivariatePolynomial<E>
MultivariatePolynomial. shift(int variable, E shift)
Returns a copy of this withvariable -> variable + shift
static <Poly extends AMultivariatePolynomial<?,Poly>>
MultivariatePolynomial<Poly>MultivariateConversions. split(Poly poly, int... variables)
Given poly in R[x1,x2,...,xN] converts to poly in R[variables][other_variables]MultivariatePolynomial<E>
MultivariatePolynomial. square()
MultivariatePolynomial<E>
MultivariatePolynomial. substitute(int variable, MultivariatePolynomial<E> poly)
Returns a copy of this withpoly
substituted forvariable
.MultivariatePolynomial<E>
MultivariatePolynomial. subtract(E oth)
Subtractsoth
from this polynomialMultivariatePolynomial<BigInteger>
MultivariatePolynomialZp64. toBigPoly()
Returns polynomial over Z formed from the coefficients of thisstatic <E> MultivariatePolynomial<E>
MultivariatePolynomial. zero(int nVariables, Ring<E> ring, Comparator<DegreeVector> ordering)
Creates zero polynomial.static <E> MultivariatePolynomial<E>
MultivariateGCD. ZippelGCD(MultivariatePolynomial<E> a, MultivariatePolynomial<E> b)
Calculates GCD of two multivariate polynomials over Zp using Zippel's algorithm with sparse interpolation.static MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. ZippelGCDInNumberFieldViaLangemyrMcCallum(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b)
Zippel's sparse modular interpolation algorithm for computing GCD associate for polynomials over simple field extensions with the use of Langemyr & McCallum approach to avoid rational reconstructionstatic MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. ZippelGCDInNumberFieldViaRationalReconstruction(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b)
Zippel's sparse modular interpolation algorithm for polynomials over simple field extensions with the use of rational reconstruction to reconstruct the resultstatic MultivariatePolynomial<BigInteger>
MultivariateGCD. ZippelGCDInZ(MultivariatePolynomial<BigInteger> a, MultivariatePolynomial<BigInteger> b)
Sparse modular GCD algorithm for polynomials over Z.static <E> MultivariatePolynomial<E>
MultivariateResultants. ZippelResultant(MultivariatePolynomial<E> a, MultivariatePolynomial<E> b, int variable)
Zippel's algorithm for resultant with sparse interpolationMethods in cc.redberry.rings.poly.multivar that return types with arguments of type MultivariatePolynomial Modifier and Type Method Description MultivariatePolynomial<MultivariatePolynomial<E>>
MultivariatePolynomial. asOverMultivariate(int... variables)
MultivariatePolynomial<MultivariatePolynomial<E>>
MultivariatePolynomial. asOverMultivariateEliminate(int[] variables, Comparator<DegreeVector> ordering)
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. cyclic(int n)
static PolynomialFactorDecomposition<MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>>
MultivariateFactorization. FactorInNumberField(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> polynomial)
Factors multivariate polynomial over simple number field via Trager's algorithmstatic <E> PolynomialFactorDecomposition<MultivariatePolynomial<Rational<E>>>
MultivariateFactorization. FactorInQ(MultivariatePolynomial<Rational<E>> polynomial)
Factors multivariate polynomial over Qstatic PolynomialFactorDecomposition<MultivariatePolynomial<BigInteger>>
MultivariateFactorization. FactorInZ(MultivariatePolynomial<BigInteger> polynomial)
Factors multivariate polynomial over ZList<MultivariatePolynomial<E>>
MultivariateInterpolation.Interpolation. getValues()
Returns the list of polynomial values at interpolation pointsstatic List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBases. GroebnerBasisInQ(List<MultivariatePolynomial<Rational<BigInteger>>> generators, Comparator<DegreeVector> monomialOrder, GroebnerBases.HilbertSeries hilbertSeries, boolean tryModular)
Computes Groebner basis (minimized and reduced) of a given ideal over Q represented by a list of generators.static cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Monomial<BigInteger>,MultivariatePolynomial<BigInteger>>
GroebnerBases. GroebnerBasisInZ(List<MultivariatePolynomial<BigInteger>> generators, Comparator<DegreeVector> monomialOrder, GroebnerBases.HilbertSeries hilbertSeries, boolean tryModular)
Computes Groebner basis (minimized and reduced) of a given ideal over Z represented by a list of generators.static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. katsura(int i)
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. katsura10()
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. katsura11()
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. katsura12()
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. katsura13()
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. katsura14()
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. katsura2()
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. katsura3()
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. katsura4()
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. katsura5()
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. katsura6()
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. katsura7()
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. katsura8()
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBasesData. katsura9()
static cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Monomial<BigInteger>,MultivariatePolynomial<BigInteger>>
GroebnerBases. ModularGB(List<MultivariatePolynomial<BigInteger>> ideal, Comparator<DegreeVector> monomialOrder)
Modular Groebner basis algorithm.static cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Monomial<BigInteger>,MultivariatePolynomial<BigInteger>>
GroebnerBases. ModularGB(List<MultivariatePolynomial<BigInteger>> ideal, Comparator<DegreeVector> monomialOrder, cc.redberry.rings.poly.multivar.GroebnerBases.GroebnerAlgorithm modularAlgorithm, cc.redberry.rings.poly.multivar.GroebnerBases.GroebnerAlgorithm defaultAlgorithm, BigInteger firstPrime, GroebnerBases.HilbertSeries hilbertSeries, boolean trySparse)
Modular Groebner basis algorithm.static cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Monomial<BigInteger>,MultivariatePolynomial<BigInteger>>
GroebnerBases. ModularGB(List<MultivariatePolynomial<BigInteger>> ideal, Comparator<DegreeVector> monomialOrder, GroebnerBases.HilbertSeries hilbertSeries)
Modular Groebner basis algorithm.static cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Monomial<BigInteger>,MultivariatePolynomial<BigInteger>>
GroebnerBases. ModularGB(List<MultivariatePolynomial<BigInteger>> ideal, Comparator<DegreeVector> monomialOrder, GroebnerBases.HilbertSeries hilbertSeries, boolean trySparse)
Modular Groebner basis algorithm.static <E> Ideal<Monomial<E>,MultivariatePolynomial<E>>
Ideal. parse(String[] generators, Ring<E> field, String[] variables)
Shortcut for parsestatic <E> Ideal<Monomial<E>,MultivariatePolynomial<E>>
Ideal. parse(String[] generators, Ring<E> field, Comparator<DegreeVector> monomialOrder, String[] variables)
Shortcut for parsestatic <Poly extends AMultivariatePolynomial<?,Poly>>
MultivariateRing<MultivariatePolynomial<Poly>>MultivariateConversions. split(IPolynomialRing<Poly> ring, int... variables)
Given poly in R[x1,x2,...,xN] converts to poly in R[variables][other_variables]Methods in cc.redberry.rings.poly.multivar with parameters of type MultivariatePolynomial Modifier and Type Method Description static <E> MultivariatePolynomial<E>
MultivariatePolynomial. asNormalMultivariate(MultivariatePolynomial<MultivariatePolynomial<E>> poly)
Converts multivariate polynomial over multivariate polynomial ring to a multivariate polynomial over coefficient ringstatic <E> MultivariatePolynomial<E>
MultivariatePolynomial. asNormalMultivariate(MultivariatePolynomial<MultivariatePolynomial<E>> poly, int[] coefficientVariables, int[] mainVariables)
Converts multivariate polynomial over multivariate polynomial ring to a multivariate polynomial over coefficient ringstatic <E> MultivariatePolynomial<E>
MultivariatePolynomial. asNormalMultivariate(MultivariatePolynomial<UnivariatePolynomial<E>> poly, int variable)
Converts multivariate polynomial over univariate polynomial ring (R[variable][other_variables]) to a multivariate polynomial over coefficient ring (R[variables])static MultivariatePolynomialZp64
MultivariatePolynomialZp64. asNormalMultivariate(MultivariatePolynomial<MultivariatePolynomialZp64> poly)
Converts multivariate polynomial over multivariate polynomial ring to a multivariate polynomial over coefficient ringstatic MultivariatePolynomialZp64
MultivariatePolynomialZp64. asNormalMultivariate(MultivariatePolynomial<MultivariatePolynomialZp64> poly, int[] coefficientVariables, int[] mainVariables)
Converts multivariate polynomial over multivariate polynomial ring to a multivariate polynomial over coefficient ringstatic MultivariatePolynomialZp64
MultivariatePolynomialZp64. asNormalMultivariate(MultivariatePolynomial<UnivariatePolynomialZp64> poly, int variable)
Converts multivariate polynomial over univariate polynomial ring (Zp[variable][other_variables]) to a multivariate polynomial over coefficient ring (Zp[all_variables])static MultivariatePolynomialZp64
MultivariatePolynomial. asOverZp64(MultivariatePolynomial<BigInteger> poly)
Converts multivariate polynomial over BigIntegers to multivariate polynomial over machine modular integersstatic MultivariatePolynomialZp64
MultivariatePolynomial. asOverZp64(MultivariatePolynomial<BigInteger> poly, IntegersZp64 ring)
Converts multivariate polynomial over BigIntegers to multivariate polynomial over machine modular integersstatic MultivariatePolynomial<BigInteger>
MultivariatePolynomial. asPolyZ(MultivariatePolynomial<BigInteger> poly, boolean copy)
Returns Z[X] polynomial formed from the coefficients of the poly.static MultivariatePolynomial<BigInteger>
MultivariatePolynomial. asPolyZSymmetric(MultivariatePolynomial<BigInteger> poly)
Converts Zp[x] polynomial to Z[x] polynomial formed from the coefficients of this represented in symmetric modular form (-modulus/2 <= cfx <= modulus/2
).static <E> MultivariatePolynomial<E>
MultivariateGCD. BrownGCD(MultivariatePolynomial<E> a, MultivariatePolynomial<E> b)
Calculates GCD of two multivariate polynomials over Zp using Brown's algorithm with dense interpolation.static <E> MultivariatePolynomial<E>
MultivariateResultants. BrownResultant(MultivariatePolynomial<E> a, MultivariatePolynomial<E> b, int variable)
Brown's algorithm for resultant with dense interpolationint
MultivariatePolynomial. compareTo(MultivariatePolynomial<E> oth)
MultivariatePolynomial<E>
MultivariatePolynomial. divideByLC(MultivariatePolynomial<E> other)
static PolynomialFactorDecomposition<MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>>
MultivariateFactorization. FactorInNumberField(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> polynomial)
Factors multivariate polynomial over simple number field via Trager's algorithmstatic <E> PolynomialFactorDecomposition<MultivariatePolynomial<Rational<E>>>
MultivariateFactorization. FactorInQ(MultivariatePolynomial<Rational<E>> polynomial)
Factors multivariate polynomial over Qstatic PolynomialFactorDecomposition<MultivariatePolynomial<BigInteger>>
MultivariateFactorization. FactorInZ(MultivariatePolynomial<BigInteger> polynomial)
Factors multivariate polynomial over Zstatic <E> MultivariatePolynomial<E>
MultivariateInterpolation. interpolateNewton(int variable, E[] points, MultivariatePolynomial<E>[] values)
Constructs an interpolating polynomial which values atpoints[i]
are exactlyvalues[i]
.static <E> MultivariatePolynomial<E>
MultivariateGCD. KaltofenMonaganEEZModularGCDInGF(MultivariatePolynomial<E> a, MultivariatePolynomial<E> b)
Modular GCD algorithm for polynomials over finite fields of small cardinality.static <E> MultivariatePolynomial<E>
MultivariateGCD. KaltofenMonaganSparseModularGCDInGF(MultivariatePolynomial<E> a, MultivariatePolynomial<E> b)
Modular GCD algorithm for polynomials over finite fields of small cardinality.static <Poly extends AMultivariatePolynomial<?,Poly>>
PolyMultivariateConversions. merge(MultivariatePolynomial<Poly> poly, int... variables)
Given poly in R[variables][other_variables] converts it to poly in R[x1,x2,...,xN]static MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. ModularGCDInNumberFieldViaLangemyrMcCallum(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b, BiFunction<MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>> modularAlgorithm)
Zippel's sparse modular interpolation algorithm for polynomials over simple field extensions with the use of Langemyr & McCallum approach to avoid rational reconstructionstatic MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. ModularGCDInNumberFieldViaRationalReconstruction(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b, BiFunction<MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>> modularAlgorithm)
Modular interpolation algorithm for polynomials over simple field extensions with the use of Langemyr & McCallum approach to avoid rational reconstructionstatic MultivariatePolynomial<BigInteger>
MultivariateGCD. ModularGCDInZ(MultivariatePolynomial<BigInteger> a, MultivariatePolynomial<BigInteger> b, BiFunction<MultivariatePolynomialZp64,MultivariatePolynomialZp64,MultivariatePolynomialZp64> gcdInZp)
Modular GCD algorithm for polynomials over Z.static MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateResultants. ModularResultantInNumberField(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b, int variable)
Modular resultant in simple number fieldstatic MultivariatePolynomial<UnivariatePolynomial<BigInteger>>
MultivariateResultants. ModularResultantInRingOfIntegersOfNumberField(MultivariatePolynomial<UnivariatePolynomial<BigInteger>> a, MultivariatePolynomial<UnivariatePolynomial<BigInteger>> b, int variable)
Modular algorithm with Zippel sparse interpolation for resultant over rings of integersstatic MultivariatePolynomial<BigInteger>
MultivariateResultants. ModularResultantInZ(MultivariatePolynomial<BigInteger> a, MultivariatePolynomial<BigInteger> b, int variable)
Modular algorithm with Zippel sparse interpolation for resultant over ZMultivariatePolynomial<E>
MultivariatePolynomial. monicWithLC(MultivariatePolynomial<E> other)
MultivariatePolynomial<E>
MultivariatePolynomial. monicWithLC(Comparator<DegreeVector> ordering, MultivariatePolynomial<E> other)
MultivariatePolynomial<E>
MultivariatePolynomial. multiply(MultivariatePolynomial<E> oth)
MultivariatePolynomial<E>
MultivariatePolynomial. multiplyByLC(MultivariatePolynomial<E> other)
static MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. PolynomialGCDinNumberField(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b)
Calculates greatest common divisor of two multivariate polynomials over Zstatic MultivariatePolynomial<UnivariatePolynomial<BigInteger>>
MultivariateGCD. PolynomialGCDinRingOfIntegersOfNumberField(MultivariatePolynomial<UnivariatePolynomial<BigInteger>> a, MultivariatePolynomial<UnivariatePolynomial<BigInteger>> b)
Calculates greatest common divisor of two multivariate polynomials over Zstatic MultivariatePolynomial<BigInteger>
MultivariateGCD. PolynomialGCDinZ(MultivariatePolynomial<BigInteger> a, MultivariatePolynomial<BigInteger> b)
Calculates greatest common divisor of two multivariate polynomials over Zstatic MultivariatePolynomial<BigInteger>
MultivariateResultants. ResultantInZ(MultivariatePolynomial<BigInteger> a, MultivariatePolynomial<BigInteger> b, int variable)
Computes polynomial resultant of two polynomials over Zboolean
MultivariatePolynomial. sameCoefficientRingWith(MultivariatePolynomial<E> oth)
MultivariatePolynomial<E>
MultivariatePolynomial. setCoefficientRingFrom(MultivariatePolynomial<E> poly)
MultivariatePolynomial<E>
MultivariatePolynomial. substitute(int variable, MultivariatePolynomial<E> poly)
Returns a copy of this withpoly
substituted forvariable
.MultivariateInterpolation.Interpolation<E>
MultivariateInterpolation.Interpolation. update(E[] points, MultivariatePolynomial<E>[] values)
Updates interpolation, so that interpolating polynomial satisfiesinterpolation[point] = value
MultivariateInterpolation.Interpolation<E>
MultivariateInterpolation.Interpolation. update(E point, MultivariatePolynomial<E> value)
Updates interpolation, so that interpolating polynomial satisfiesinterpolation[point] = value
static <E> MultivariatePolynomial<E>
MultivariateGCD. ZippelGCD(MultivariatePolynomial<E> a, MultivariatePolynomial<E> b)
Calculates GCD of two multivariate polynomials over Zp using Zippel's algorithm with sparse interpolation.static MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. ZippelGCDInNumberFieldViaLangemyrMcCallum(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b)
Zippel's sparse modular interpolation algorithm for computing GCD associate for polynomials over simple field extensions with the use of Langemyr & McCallum approach to avoid rational reconstructionstatic MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. ZippelGCDInNumberFieldViaRationalReconstruction(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b)
Zippel's sparse modular interpolation algorithm for polynomials over simple field extensions with the use of rational reconstruction to reconstruct the resultstatic MultivariatePolynomial<BigInteger>
MultivariateGCD. ZippelGCDInZ(MultivariatePolynomial<BigInteger> a, MultivariatePolynomial<BigInteger> b)
Sparse modular GCD algorithm for polynomials over Z.static <E> MultivariatePolynomial<E>
MultivariateResultants. ZippelResultant(MultivariatePolynomial<E> a, MultivariatePolynomial<E> b, int variable)
Zippel's algorithm for resultant with sparse interpolationMethod parameters in cc.redberry.rings.poly.multivar with type arguments of type MultivariatePolynomial Modifier and Type Method Description static <E> MultivariatePolynomial<E>
MultivariatePolynomial. asNormalMultivariate(MultivariatePolynomial<MultivariatePolynomial<E>> poly)
Converts multivariate polynomial over multivariate polynomial ring to a multivariate polynomial over coefficient ringstatic <E> MultivariatePolynomial<E>
MultivariatePolynomial. asNormalMultivariate(MultivariatePolynomial<MultivariatePolynomial<E>> poly, int[] coefficientVariables, int[] mainVariables)
Converts multivariate polynomial over multivariate polynomial ring to a multivariate polynomial over coefficient ringString
MultivariatePolynomial. coefficientRingToString(IStringifier<MultivariatePolynomial<E>> stringifier)
static List<MultivariatePolynomial<Rational<BigInteger>>>
GroebnerBases. GroebnerBasisInQ(List<MultivariatePolynomial<Rational<BigInteger>>> generators, Comparator<DegreeVector> monomialOrder, GroebnerBases.HilbertSeries hilbertSeries, boolean tryModular)
Computes Groebner basis (minimized and reduced) of a given ideal over Q represented by a list of generators.static cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Monomial<BigInteger>,MultivariatePolynomial<BigInteger>>
GroebnerBases. GroebnerBasisInZ(List<MultivariatePolynomial<BigInteger>> generators, Comparator<DegreeVector> monomialOrder, GroebnerBases.HilbertSeries hilbertSeries, boolean tryModular)
Computes Groebner basis (minimized and reduced) of a given ideal over Z represented by a list of generators.<T> MultivariatePolynomial<T>
MultivariatePolynomial. mapCoefficientsAsPolys(Ring<T> ring, Function<MultivariatePolynomial<E>,T> mapper)
static <Poly extends AMultivariatePolynomial<?,Poly>>
MultivariateRing<Poly>MultivariateConversions. merge(IPolynomialRing<MultivariatePolynomial<Poly>> ring, int... variables)
Given poly in R[x1,x2,...,xN] converts to poly in R[variables][other_variables]static cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Monomial<BigInteger>,MultivariatePolynomial<BigInteger>>
GroebnerBases. ModularGB(List<MultivariatePolynomial<BigInteger>> ideal, Comparator<DegreeVector> monomialOrder)
Modular Groebner basis algorithm.static cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Monomial<BigInteger>,MultivariatePolynomial<BigInteger>>
GroebnerBases. ModularGB(List<MultivariatePolynomial<BigInteger>> ideal, Comparator<DegreeVector> monomialOrder, cc.redberry.rings.poly.multivar.GroebnerBases.GroebnerAlgorithm modularAlgorithm, cc.redberry.rings.poly.multivar.GroebnerBases.GroebnerAlgorithm defaultAlgorithm, BigInteger firstPrime, GroebnerBases.HilbertSeries hilbertSeries, boolean trySparse)
Modular Groebner basis algorithm.static cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Monomial<BigInteger>,MultivariatePolynomial<BigInteger>>
GroebnerBases. ModularGB(List<MultivariatePolynomial<BigInteger>> ideal, Comparator<DegreeVector> monomialOrder, GroebnerBases.HilbertSeries hilbertSeries)
Modular Groebner basis algorithm.static cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Monomial<BigInteger>,MultivariatePolynomial<BigInteger>>
GroebnerBases. ModularGB(List<MultivariatePolynomial<BigInteger>> ideal, Comparator<DegreeVector> monomialOrder, GroebnerBases.HilbertSeries hilbertSeries, boolean trySparse)
Modular Groebner basis algorithm.static MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. ModularGCDInNumberFieldViaLangemyrMcCallum(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b, BiFunction<MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>> modularAlgorithm)
Zippel's sparse modular interpolation algorithm for polynomials over simple field extensions with the use of Langemyr & McCallum approach to avoid rational reconstructionstatic MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. ModularGCDInNumberFieldViaLangemyrMcCallum(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b, BiFunction<MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>> modularAlgorithm)
Zippel's sparse modular interpolation algorithm for polynomials over simple field extensions with the use of Langemyr & McCallum approach to avoid rational reconstructionstatic MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. ModularGCDInNumberFieldViaLangemyrMcCallum(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b, BiFunction<MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>> modularAlgorithm)
Zippel's sparse modular interpolation algorithm for polynomials over simple field extensions with the use of Langemyr & McCallum approach to avoid rational reconstructionstatic MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. ModularGCDInNumberFieldViaRationalReconstruction(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b, BiFunction<MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>> modularAlgorithm)
Modular interpolation algorithm for polynomials over simple field extensions with the use of Langemyr & McCallum approach to avoid rational reconstructionstatic MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. ModularGCDInNumberFieldViaRationalReconstruction(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b, BiFunction<MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>> modularAlgorithm)
Modular interpolation algorithm for polynomials over simple field extensions with the use of Langemyr & McCallum approach to avoid rational reconstructionstatic MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>>
MultivariateGCD. ModularGCDInNumberFieldViaRationalReconstruction(MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> a, MultivariatePolynomial<UnivariatePolynomial<Rational<BigInteger>>> b, BiFunction<MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>,MultivariatePolynomial<UnivariatePolynomialZp64>> modularAlgorithm)
Modular interpolation algorithm for polynomials over simple field extensions with the use of Langemyr & McCallum approach to avoid rational reconstructionString
MultivariatePolynomial. toString(IStringifier<MultivariatePolynomial<E>> stringifier)
Constructors in cc.redberry.rings.poly.multivar with parameters of type MultivariatePolynomial Constructor Description Interpolation(int variable, MultivariatePolynomial<E> factory)
Start new interpolationInterpolation(int variable, E point, MultivariatePolynomial<E> value)
Start new interpolation withinterpolation[variable = point] = value
Constructor parameters in cc.redberry.rings.poly.multivar with type arguments of type MultivariatePolynomial Constructor Description Interpolation(int variable, IPolynomialRing<MultivariatePolynomial<E>> factory)
Start new interpolation -
Uses of MultivariatePolynomial in cc.redberry.rings.poly.univar
Methods in cc.redberry.rings.poly.univar that return MultivariatePolynomial Modifier and Type Method Description MultivariatePolynomial<E>
UnivariatePolynomial. asMultivariate()
MultivariatePolynomial<E>
UnivariatePolynomial. asMultivariate(Comparator<DegreeVector> ordering)
MultivariatePolynomial<E>
UnivariatePolynomial. composition(AMultivariatePolynomial value)
-