static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> Poly |
AMultivariatePolynomial.asMultivariate(IUnivariatePolynomial poly,
int nVariables,
int variable,
Comparator<DegreeVector> ordering) |
Converts univariate polynomial to multivariate.
|
static <E> MultivariatePolynomial<E> |
MultivariatePolynomial.asMultivariate(UnivariatePolynomial<E> poly,
int nVariables,
int variable,
Comparator<DegreeVector> ordering) |
Converts univariate polynomial to multivariate.
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.asMultivariate(UnivariatePolynomialZp64 poly,
int nVariables,
int variable,
Comparator<DegreeVector> ordering) |
Converts univariate polynomial to multivariate.
|
abstract MultivariatePolynomial<Poly> |
AMultivariatePolynomial.asOverMultivariateEliminate(int[] variables,
Comparator<DegreeVector> ordering) |
Converts this to a multivariate polynomial with coefficients being multivariate polynomials polynomials over
variables 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) |
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Term,Poly> |
GroebnerBases.BuchbergerGB(List<Poly> generators,
Comparator<DegreeVector> monomialOrder) |
Computes minimized and reduced Groebner basis of a given ideal via Buchberger algorithm.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Term,Poly> |
GroebnerBases.BuchbergerGB(List<Poly> generators,
Comparator<DegreeVector> monomialOrder,
Comparator<GroebnerBases.SyzygyPair> strategy) |
Computes minimized and reduced Groebner basis of a given ideal via Buchberger algorithm.
|
Ideal<Term,Poly> |
Ideal.changeOrder(Comparator<DegreeVector> newMonomialOrder) |
Set the monomial order used for Groebner basis of this ideal
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> List<Poly> |
GroebnerBases.ConvertBasis(List<Poly> generators,
Comparator<DegreeVector> desiredOrder) |
Converts basis into a basis for desired monomial order
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> Ideal<Term,Poly> |
Ideal.create(List<Poly> generators,
Comparator<DegreeVector> monomialOrder) |
Creates ideal given by a list of generators.
|
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 terms
|
static <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 terms
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.create(int nVariables,
IntegersZp64 ring,
Comparator<DegreeVector> ordering,
MonomialSet<MonomialZp64> terms) |
Creates multivariate polynomial from a set of monomials
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.create(int nVariables,
IntegersZp64 ring,
Comparator<DegreeVector> ordering,
MonomialZp64... terms) |
Creates multivariate polynomial from a list of monomial terms
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.create(int nVariables,
IntegersZp64 ring,
Comparator<DegreeVector> ordering,
Iterable<MonomialZp64> terms) |
Creates multivariate polynomial from a list of monomial terms
|
static Comparator<GroebnerBases.SyzygyPair> |
GroebnerBases.defaultSelectionStrategy(Comparator<DegreeVector> monomialOrder) |
Default selection strategy (with or without sugar)
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> Ideal<Term,Poly> |
Ideal.empty(Poly factory,
Comparator<DegreeVector> monomialOrder) |
Creates empty ideal
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Term,Poly> |
GroebnerBases.F4GB(List<Poly> generators,
Comparator<DegreeVector> monomialOrder) |
Computes minimized and reduced Groebner basis of a given ideal via Faugère's F4 F4 algorithm.
|
static <E> MultivariatePolynomial<E> |
MultivariatePolynomial.fromDenseRecursiveForm(UnivariatePolynomial recForm,
int nVariables,
Comparator<DegreeVector> ordering) |
Converts poly from a recursive univariate representation.
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.fromDenseRecursiveForm(IUnivariatePolynomial recForm,
int nVariables,
Comparator<DegreeVector> ordering) |
Converts poly from a recursive univariate representation.
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.fromDenseRecursiveForm(IUnivariatePolynomial recForm,
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.
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.fromSparseRecursiveForm(AMultivariatePolynomial recForm,
int nVariables,
Comparator<DegreeVector> ordering) |
Converts poly from a recursive univariate representation.
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.fromSparseRecursiveForm(AMultivariatePolynomial recForm,
Comparator<DegreeVector> ordering) |
Converts poly from a sparse recursive univariate representation.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> List<Poly> |
GroebnerBases.GroebnerBasis(List<Poly> generators,
Comparator<DegreeVector> monomialOrder) |
Computes Groebner basis (minimized and reduced) of a given ideal represented by a list of generators.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Term,Poly> |
GroebnerBases.GroebnerBasisInGF(List<Poly> generators,
Comparator<DegreeVector> monomialOrder,
GroebnerBases.HilbertSeries hilbertSeries) |
Computes Groebner basis (minimized and reduced) of a given ideal over finite filed represented by a list of
generators.
|
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.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Term,Poly> |
GroebnerBases.HilbertConvertBasis(List<Poly> groebnerBasis,
Comparator<DegreeVector> desiredOrdering) |
Converts Groebner basis to a given monomial order using Hilbert-driven algorithm
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Term,Poly> |
GroebnerBases.HilbertGB(List<Poly> generators,
Comparator<DegreeVector> monomialOrder) |
Hilbert-driven algorithm for Groebner basis computation
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Term,Poly> |
GroebnerBases.HilbertGB(List<Poly> generators,
Comparator<DegreeVector> monomialOrder,
cc.redberry.rings.poly.multivar.GroebnerBases.GroebnerAlgorithm<Term,Poly> baseAlgorithm) |
Hilbert-driven algorithm for Groebner basis computation.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> cc.redberry.rings.poly.multivar.GroebnerBases.GBResult<Term,Poly> |
GroebnerBases.HilbertGB(List<Poly> generators,
Comparator<DegreeVector> monomialOrder,
GroebnerBases.HilbertSeries hilbertSeries) |
Hilbert-driven algorithm for Groebner basis computation
|
static GroebnerBases.HilbertSeries |
GroebnerBases.HilbertSeries(List<DegreeVector> ideal) |
Computes Hilbert-Poincare series of monomial ideal
|
static boolean |
MonomialOrder.isGradedOrder(Comparator<DegreeVector> monomialOrder) |
whether monomial order is graded
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> boolean |
GroebnerBases.isGroebnerBasis(List<Poly> ideal,
List<Poly> generators,
Comparator<DegreeVector> monomialOrder) |
Check whether specified generators form Groebner basis of given ideal
|
E |
MultivariatePolynomial.lc(Comparator<DegreeVector> ordering) |
Returns the leading coefficient of this polynomial with respect to specified ordering
|
long |
MultivariatePolynomialZp64.lc(Comparator<DegreeVector> ordering) |
Returns the leading coefficient of this polynomial with respect to specified ordering
|
abstract Poly |
AMultivariatePolynomial.lcAsPoly(Comparator<DegreeVector> ordering) |
Returns the leading coefficient with respect to specified ordering as a constant poly
|
MultivariatePolynomial<E> |
MultivariatePolynomial.lcAsPoly(Comparator<DegreeVector> ordering) |
|
MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.lcAsPoly(Comparator<DegreeVector> ordering) |
|
Term |
AMultivariatePolynomial.lt(Comparator<DegreeVector> ordering) |
Returns the leading term in this polynomial according to specified ordering
|
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.
|
abstract Poly |
AMultivariatePolynomial.monic(Comparator<DegreeVector> ordering) |
Make this poly monic considering leading term with respect to given ordering
|
MultivariatePolynomial<E> |
MultivariatePolynomial.monic(Comparator<DegreeVector> ordering) |
|
MultivariatePolynomial<E> |
MultivariatePolynomial.monic(Comparator<DegreeVector> ordering,
E factor) |
Sets this to its monic part (with respect to given ordering) multiplied by the given factor;
|
MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.monic(Comparator<DegreeVector> ordering) |
|
MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.monic(Comparator<DegreeVector> ordering,
long factor) |
Sets this to its monic part (with respect to given ordering) multiplied by the given factor;
|
abstract Poly |
AMultivariatePolynomial.monicWithLC(Comparator<DegreeVector> ordering,
Poly oth) |
Sets this to its monic part multiplied by the leading coefficient of other with respect to given
ordering
|
MultivariatePolynomial<E> |
MultivariatePolynomial.monicWithLC(Comparator<DegreeVector> ordering,
MultivariatePolynomial<E> other) |
|
MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.monicWithLC(Comparator<DegreeVector> ordering,
MultivariatePolynomialZp64 other) |
|
static Comparator<GroebnerBases.SyzygyPair> |
GroebnerBases.normalSelectionStrategy(Comparator<DegreeVector> monomialOrder) |
Normal selection strategy: chose syzygy with the less lcm(fi.lt(), fj.lt()) with respect to monomialOrder
|
static <E> MultivariatePolynomial<E> |
MultivariatePolynomial.one(int nVariables,
Ring<E> ring,
Comparator<DegreeVector> ordering) |
Creates unit polynomial.
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.one(int nVariables,
IntegersZp64 ring,
Comparator<DegreeVector> ordering) |
Creates unit polynomial.
|
static <E> Ideal<Monomial<E>,MultivariatePolynomial<E>> |
Ideal.parse(String[] generators,
Ring<E> field,
Comparator<DegreeVector> monomialOrder,
String[] variables) |
Shortcut for parse
|
static <E> MultivariatePolynomial<E> |
MultivariatePolynomial.parse(String string,
Ring<E> ring,
Comparator<DegreeVector> ordering) |
Deprecated.
|
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,
Comparator<DegreeVector> ordering) |
Deprecated.
|
static MultivariatePolynomial<BigInteger> |
MultivariatePolynomial.parse(String string,
Comparator<DegreeVector> ordering,
String... variables) |
Parse multivariate Z[X] polynomial from string.
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.parse(String string,
IntegersZp64 ring,
Comparator<DegreeVector> ordering) |
Deprecated.
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.parse(String string,
IntegersZp64 ring,
Comparator<DegreeVector> ordering,
String... variables) |
Parse multivariate polynomial from string.
|
static Comparator<DegreeVector> |
MonomialOrder.product(Comparator<DegreeVector> a,
int anVariables,
Comparator<DegreeVector> b,
int bnVariable) |
Block product of orderings
|
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 polynomial
|
static 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 by bound
|
static MultivariatePolynomialZp64 |
RandomMultivariatePolynomials.randomPolynomial(int nVars,
int degree,
int size,
IntegersZp64 ring,
Comparator<DegreeVector> ordering,
org.apache.commons.math3.random.RandomGenerator rnd) |
Generates random Zp[X] polynomial over machine integers
|
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 polynomial
|
static <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 polynomial
|
static MultivariatePolynomialZp64 |
RandomMultivariatePolynomials.randomSharpPolynomial(int nVars,
int degree,
int size,
IntegersZp64 ring,
Comparator<DegreeVector> ordering,
org.apache.commons.math3.random.RandomGenerator rnd) |
Generates random Zp[X] polynomial over machine integers
|
static <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 integers
|
static <T extends AMonomial<T>,P extends AMultivariatePolynomial<T,P>> P |
AMultivariatePolynomial.renameVariables(P poly,
int[] newVariables,
Comparator<DegreeVector> newOrdering) |
Rename variables from [0,1,...N] to [newVariables[0], newVariables[1], ..., newVariables[N]] (new instance
created)
|
Poly |
AMultivariatePolynomial.setOrdering(Comparator<DegreeVector> newOrdering) |
Makes a copy of this with the new ordering newOrdering
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> List<Poly> |
GroebnerBases.solveGB(List<Poly> generators,
List<Collection<DegreeVector>> gbSkeleton,
Comparator<DegreeVector> monomialOrder) |
Sparse Groebner basis via "linear lifting".
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> Ideal<Term,Poly> |
Ideal.trivial(Poly factory,
Comparator<DegreeVector> monomialOrder) |
Creates trivial ideal (ideal = ring)
|
static <E> MultivariatePolynomial<E> |
MultivariatePolynomial.zero(int nVariables,
Ring<E> ring,
Comparator<DegreeVector> ordering) |
Creates zero polynomial.
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.zero(int nVariables,
IntegersZp64 ring,
Comparator<DegreeVector> ordering) |
Creates zero polynomial.
|