| Package | Description |
|---|---|
| cc.redberry.rings | |
| cc.redberry.rings.io | |
| cc.redberry.rings.poly | |
| cc.redberry.rings.poly.multivar | |
| cc.redberry.rings.poly.univar |
| Modifier and Type | Method and Description |
|---|---|
static <Term extends AMonomial<Term>,mPoly extends AMultivariatePolynomial<Term,mPoly>,sPoly extends IUnivariatePolynomial<sPoly>> |
Rings.MultipleFieldExtension(sPoly... minimalPolynomials)
Multiple field extension generated by given algebraic elements represented by their minimal polynomials (not
tested that they are irreducible)
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
Rings.MultivariateRing(Poly factory)
Ring of multivariate polynomials with specified factory
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
Rings.QuotientRing(MultivariateRing<Poly> baseRing,
Ideal<Term,Poly> ideal)
Quotient ring
baseRing/<ideal> |
static <Term extends AMonomial<Term>,mPoly extends AMultivariatePolynomial<Term,mPoly>,sPoly extends IUnivariatePolynomial<sPoly>> |
Rings.SplittingField(sPoly polynomial)
Splitting field of a given polynomial.
|
| Modifier and Type | Class and Description |
|---|---|
class |
Coder<Element,Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>>
High-level parser and stringifier of ring elements.
|
| Modifier and Type | Method and Description |
|---|---|
static <Element,Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
Coder.mkCoder(Ring<Element> baseRing,
Map<String,Element> eVariables,
MultivariateRing<Poly> polyRing,
Map<String,Poly> pVariables,
SerializableFunction<Poly,Element> polyToElement) |
static <Term extends AMonomial<Term>,mPoly extends AMultivariatePolynomial<Term,mPoly>,sPoly extends IUnivariatePolynomial<sPoly>> |
Coder.mkMultipleExtensionCoder(MultipleFieldExtension<Term,mPoly,sPoly> field,
Map<String,mPoly> variables)
Create coder for multiple field extension
|
static <Term extends AMonomial<Term>,mPoly extends AMultivariatePolynomial<Term,mPoly>,sPoly extends IUnivariatePolynomial<sPoly>> |
Coder.mkMultipleExtensionCoder(MultipleFieldExtension<Term,mPoly,sPoly> field,
String... variables)
Create coder for multiple field extension
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
Coder.mkMultivariateCoder(MultivariateRing<Poly> ring,
Map<String,Poly> variables)
Create coder for multivariate polynomial rings
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
Coder.mkMultivariateCoder(MultivariateRing<Poly> ring,
String... variables)
Create coder for multivariate polynomial rings
|
| Modifier and Type | Class and Description |
|---|---|
class |
MultipleFieldExtension<Term extends AMonomial<Term>,mPoly extends AMultivariatePolynomial<Term,mPoly>,sPoly extends IUnivariatePolynomial<sPoly>>
Multiple field extension
F(α_1, α_2, ..., α_N). |
class |
MultivariateRing<Poly extends AMultivariatePolynomial<?,Poly>>
Ring of multivariate polynomials.
|
class |
QuotientRing<Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>>
Multivariate quotient ring
|
| Modifier and Type | Method and Description |
|---|---|
<Term extends AMonomial<Term>,mPoly extends AMultivariatePolynomial<Term,mPoly>> |
SimpleFieldExtension.asMultipleExtension()
Returns a view of this as a multiple field extension
|
static <Term extends AMonomial<Term>,mPoly extends AMultivariatePolynomial<Term,mPoly>,sPoly extends IUnivariatePolynomial<sPoly>> |
MultipleFieldExtension.mkMultipleExtension(SimpleFieldExtension<sPoly> ext) |
static <Term extends AMonomial<Term>,mPoly extends AMultivariatePolynomial<Term,mPoly>,sPoly extends IUnivariatePolynomial<sPoly>> |
MultipleFieldExtension.mkMultipleExtension(sPoly... minimalPolynomials)
Creates multiple field extension
F(α_1, α_2, ..., α_i) where α_i are specified by their minimal
polynomials over F. |
static <Term extends AMonomial<Term>,mPoly extends AMultivariatePolynomial<Term,mPoly>,sPoly extends IUnivariatePolynomial<sPoly>> |
MultipleFieldExtension.mkMultipleExtension(sPoly a) |
static <Term extends AMonomial<Term>,mPoly extends AMultivariatePolynomial<Term,mPoly>,sPoly extends IUnivariatePolynomial<sPoly>> |
MultipleFieldExtension.mkSplittingField(sPoly poly)
Constructs splitting field for a given polynomial.
|
<MPoly extends AMultivariatePolynomial> |
SimpleFieldExtension.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.
|
| Modifier and Type | Method and Description |
|---|---|
Poly[] |
QuotientRing.divideAndRemainder(Poly dividend,
Poly divider) |
Poly[] |
MultivariateRing.divideAndRemainder(Poly dividend,
Poly divider) |
mPoly[] |
MultipleFieldExtension.extendedGCD(mPoly a,
mPoly b) |
| Modifier and Type | Method and Description |
|---|---|
mPoly |
MultipleFieldExtension.gcd(mPoly... elements) |
Poly |
MultivariateRing.gcd(Poly[] elements) |
| Modifier and Type | Class and Description |
|---|---|
class |
AMultivariatePolynomial<Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>>
Parent class for multivariate polynomials.
|
static class |
AMultivariatePolynomial.PolynomialCollector<Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>>
Collector which collects stream of element to a UnivariatePolynomial
|
class |
Ideal<Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>>
Ideal represented by its Groebner basis.
|
class |
PairedIterator<Term1 extends AMonomial<Term1>,Poly1 extends AMultivariatePolynomial<Term1,Poly1>,Term2 extends AMonomial<Term2>,Poly2 extends AMultivariatePolynomial<Term2,Poly2>>
Iterator over a pair of polynomials
|
class |
PairedIterator<Term1 extends AMonomial<Term1>,Poly1 extends AMultivariatePolynomial<Term1,Poly1>,Term2 extends AMonomial<Term2>,Poly2 extends AMultivariatePolynomial<Term2,Poly2>>
Iterator over a pair of polynomials
|
| Modifier and Type | Class and Description |
|---|---|
class |
MultivariatePolynomial<E> |
class |
MultivariatePolynomialZp64
Multivariate polynomial over Zp ring with the modulus in the range (0, 2^62) (see
MachineArithmetic.MAX_SUPPORTED_MODULUS). |
| Modifier and Type | Method and Description |
|---|---|
static <Poly extends AMultivariatePolynomial> |
GroebnerMethods.algebraicallyDependentQ(List<Poly> sys)
Returns true if a given set of polynomials is algebraically dependent or false otherwise.
|
static <Poly extends AMultivariatePolynomial> |
GroebnerMethods.algebraicRelations(List<Poly> polys)
Gives a list of algebraic relations (annihilating polynomials) for the given list of polynomials
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
AMultivariatePolynomial.asMultivariate(IUnivariatePolynomial poly,
int nVariables,
int variable,
Comparator<DegreeVector> ordering)
Converts univariate polynomial to multivariate.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
AMultivariatePolynomial.asMultivariate(UnivariatePolynomial<Poly> uPoly,
int variable)
Convert univariate polynomial over multivariate polynomials to a normal multivariate poly
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
AMultivariatePolynomial.asMultivariate(UnivariatePolynomial<Poly> univariate,
int uVariable,
boolean join) |
static <Poly extends AMultivariatePolynomial<?,Poly>> |
MultivariateConversions.asUnivariate(IPolynomialRing<Poly> ring,
int variable)
Given poly in R[x1,x2,...,xN] converts to poly in R[other_variables][variable]
|
static <Poly extends AMultivariatePolynomial<?,Poly>> |
MultivariateConversions.asUnivariate(Poly poly,
int variable)
Given poly in R[x1,x2,...,xN] converts to poly in R[other_variables][variable]
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>,uPoly extends IUnivariatePolynomial<uPoly>> |
HenselLifting.bivariateLiftNoLCCorrection0(Poly base,
Poly[] factors,
cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluation,
int degreeBound)
Fast bivariate Hensel lifting which uses dense representation for bivariate polynomials
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<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>> |
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.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateResultants.ClassicalResultant(Poly a,
Poly b,
int variable)
Computes resultant via subresultant sequences
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,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.create(List<Poly> generators)
Creates ideal given by a list of generators.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
Ideal.create(List<Poly> generators,
Comparator<DegreeVector> monomialOrder)
Creates ideal given by a list of generators.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
Ideal.create(Poly... generators)
Creates ideal given by a list of generators.
|
static <Poly extends AMultivariatePolynomial> |
MultivariateResultants.Discriminant(Poly a,
int variable)
Computes discriminant of polynomial
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.divideAndRemainder(Poly dividend,
Poly... dividers)
Performs multivariate division with remainder.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.divideAndRemainder(Poly dividend,
Poly divider)
Performs multivariate division with remainder.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.divideExact(Poly dividend,
Poly divider)
Divides
dividend by divider or throws exception if exact division is not possible |
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.divideOrNull(Poly dividend,
Poly divider)
Divides
dividend by divider or returns null if exact division is not possible |
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.dividesQ(Poly dividend,
Poly divider)
Tests whether
divisor is a divisor of poly |
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateGCD.EEZGCD(Poly a,
Poly b)
Calculates GCD of two multivariate polynomials over Zp using enhanced EZ algorithm
|
static <Poly extends AMultivariatePolynomial> |
GroebnerMethods.eliminate(List<Poly> ideal,
int... variables)
Eliminates specified variables from the given ideal.
|
static <Poly extends AMultivariatePolynomial> |
GroebnerMethods.eliminate(List<Poly> ideal,
int variable)
Eliminates specified variables from the given ideal.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
Ideal.empty(Poly factory)
Creates empty ideal
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
Ideal.empty(Poly factory,
Comparator<DegreeVector> monomialOrder)
Creates empty ideal
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<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 <Poly extends AMultivariatePolynomial<?,Poly>> |
MultivariateFactorization.Factor(Poly poly)
Factors multivariate polynomial
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateFactorization.FactorInGF(Poly polynomial)
Factors multivariate polynomial over finite field
|
static <Poly extends AMultivariatePolynomial<?,Poly>> |
MultivariateConversions.fromUnivariate(IPolynomialRing<UnivariatePolynomial<Poly>> ring,
int variable)
Given poly in R[variables][other_variables] converts it to poly in R[x1,x2,...,xN]
|
static <Poly extends AMultivariatePolynomial<?,Poly>> |
MultivariateConversions.fromUnivariate(UnivariatePolynomial<Poly> poly,
int variable)
Given poly in R[variables][other_variables] converts it to poly in R[x1,x2,...,xN]
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,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>> |
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 <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
GroebnerBases.GroebnerBasisRegardingGrevLexWithPermutation(List<Poly> ideal,
cc.redberry.rings.poly.multivar.GroebnerBases.GroebnerAlgorithm<Term,Poly> baseAlgorithm,
MonomialOrder.GrevLexWithPermutation order)
computes Groebner basis in GREVLEX with shuffled variables
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
GroebnerBases.GroebnerBasisWithOptimizedGradedOrder(List<Poly> ideal)
computes Groebner basis in GREVLEX with shuffled variables
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
GroebnerBases.GroebnerBasisWithOptimizedGradedOrder(List<Poly> ideal,
cc.redberry.rings.poly.multivar.GroebnerBases.GroebnerAlgorithm<Term,Poly> baseAlgorithm)
computes Groebner basis in GREVLEX with shuffled variables
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<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>> |
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>> |
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>> |
GroebnerBases.HilbertGB(List<Poly> generators,
Comparator<DegreeVector> monomialOrder,
GroebnerBases.HilbertSeries hilbertSeries)
Hilbert-driven algorithm for Groebner basis computation
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
GroebnerBases.isGroebnerBasis(List<Poly> ideal,
List<Poly> generators,
Comparator<DegreeVector> monomialOrder)
Check whether specified generators form Groebner basis of given ideal
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateSquareFreeFactorization.isSquareFree(Poly poly)
Tests whether the given
poly is square free. |
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
GroebnerMethods.JacobianMatrix(List<Poly> sys)
Creates a Jacobian matrix of a given list of polynomials
|
static <Poly extends AMultivariatePolynomial> |
GroebnerMethods.LeinartasDecomposition(Rational<Poly> fraction)
Computes Leinartas's decomposition of given rational expression (see https://arxiv.org/abs/1206.4740)
|
static <Poly extends AMultivariatePolynomial<?,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 <Poly extends AMultivariatePolynomial<?,Poly>> |
MultivariateConversions.merge(MultivariatePolynomial<Poly> poly,
int... variables)
Given poly in R[variables][other_variables] converts it to poly in R[x1,x2,...,xN]
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
GroebnerBases.minimizeGroebnerBases(List<Poly> basis)
Minimizes Groebner basis.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
HenselLifting.multivariateLiftAutomaticLC(Poly base,
Poly[] factors,
cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluation)
Multivariate lift with automatic leading coefficient correction
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
HenselLifting.multivariateLiftAutomaticLC(Poly base,
Poly[] factors,
cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluation,
int from)
Multivariate lift with automatic leading coefficient correction
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.nontrivialQuotientQ(Poly dividend,
Poly divider)
Tests whether there is nontrivial quotient
dividend / divider |
static <Poly extends AMultivariatePolynomial> |
GroebnerMethods.NullstellensatzCertificate(List<Poly> polynomials)
Computes Nullstellensatz certificate for a given list of polynomials assuming that they have no common zeros (or
equivalently assuming that the ideal formed by the list is trivial).
|
static <Poly extends AMultivariatePolynomial> |
GroebnerMethods.NullstellensatzCertificate(List<Poly> polynomials,
boolean boundTotalDeg)
Computes Nullstellensatz certificate for a given list of polynomials assuming that they have no common zeros (or
equivalently assuming that the ideal formed by the list is trivial).
|
static <Poly extends AMultivariatePolynomial> |
GroebnerMethods.NullstellensatzSolver(List<Poly> polynomials,
Poly rhs,
boolean boundTotalDeg)
Tries to find solution of the equation {@code S_1 * f_1 + ...
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
GroebnerBases.optimalOrder(List<Poly> ideal)
Deduce the optimal order for GB algorithms
|
static <Poly extends AMultivariatePolynomial> |
MultivariateGCD.PolynomialGCD(Iterable<Poly> arr)
Calculates greatest common divisor of the array of polynomials
|
static <Poly extends AMultivariatePolynomial> |
MultivariateGCD.PolynomialGCD(Poly... arr)
Calculates greatest common divisor of the array of polynomials
|
static <Poly extends AMultivariatePolynomial> |
MultivariateGCD.PolynomialGCD(Poly a,
Poly b)
Calculates greatest common divisor of two multivariate polynomials
|
static <Poly extends AMultivariatePolynomial> |
MultivariateGCD.PolynomialGCDinGF(Poly a,
Poly b)
Calculates greatest common divisor of two multivariate polynomials over finite fields
|
static <Poly extends AMultivariatePolynomial> |
GroebnerMethods.probablyAlgebraicallyDependentQ(List<Poly> sys)
Returns true if a given set of polynomials is probably algebraically dependent or false otherwise (which means
that the given set is certainly independent).
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.pseudoRemainder(Poly dividend,
Collection<Poly> dividers)
Performs multivariate division with remainder and rerurns the remainder.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.pseudoRemainder(Poly dividend,
Poly... dividers)
Performs multivariate pseudo division with remainder and returns the remainder.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.pseudoRemainder(Poly dividend,
Poly divider)
Performs multivariate division with remainder and rerurns the remainder.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
RandomMultivariatePolynomials.randomPolynomial(Poly factory,
int degree,
int size,
org.apache.commons.math3.random.RandomGenerator rnd)
Generates random multivariate polynomial
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.remainder(Poly dividend,
Collection<Poly> dividers)
Performs multivariate division with remainder and rerurns the remainder.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.remainder(Poly dividend,
Poly... dividers)
Performs multivariate division with remainder and returns the remainder.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.remainder(Poly dividend,
Poly divider)
Performs multivariate division with remainder and rerurns the remainder.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
GroebnerBases.removeRedundant(List<Poly> basis)
Computes reduced Groebner basis
|
static <T extends AMonomial<T>,P extends AMultivariatePolynomial<T,P>> |
AMultivariatePolynomial.renameVariables(P poly,
int[] newVariables)
Rename variables from [0,1,...N] to [newVariables[0], newVariables[1], ..., newVariables[N]] (new instance
created)
|
static <T extends AMonomial<T>,P extends AMultivariatePolynomial<T,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)
|
static <Poly extends AMultivariatePolynomial> |
MultivariateResultants.Resultant(Poly a,
Poly b,
int variable)
Calculates polynomial resultant of two given polynomials with respect to specified variable
|
static <Poly extends AMultivariatePolynomial> |
MultivariateResultants.ResultantInGF(Poly a,
Poly b,
int variable)
Computes polynomial resultant of two polynomials over finite field
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateResultants.ResultantInSmallCharacteristic(Poly a,
Poly b,
int variable)
Resultant in small characteristic
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>,uPoly extends IUnivariatePolynomial<uPoly>> |
HenselLifting.seriesExpansionDense(Ring<uPoly> ring,
Poly poly,
int variable,
cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluate)
Generates a power series expansion for poly about the point specified by variable and evaluation
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
GroebnerBases.solveGB(List<Poly> generators,
List<Collection<DegreeVector>> gbSkeleton,
Comparator<DegreeVector> monomialOrder)
Sparse Groebner basis via "linear lifting".
|
static <Poly extends AMultivariatePolynomial<?,Poly>> |
MultivariateConversions.split(IPolynomialRing<Poly> ring,
int... variables)
Given poly in R[x1,x2,...,xN] converts to poly in R[variables][other_variables]
|
static <Poly extends AMultivariatePolynomial<?,Poly>> |
MultivariateConversions.split(Poly poly,
int... variables)
Given poly in R[x1,x2,...,xN] converts to poly in R[variables][other_variables]
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateSquareFreeFactorization.SquareFreeFactorization(Poly poly)
Performs square-free factorization of a {@code poly.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateSquareFreeFactorization.SquareFreeFactorizationMusser(Poly poly)
Performs square-free factorization of a
poly which coefficient ring has any characteristic using Musser's
algorithm. |
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateSquareFreeFactorization.SquareFreeFactorizationMusserZeroCharacteristics(Poly poly)
Performs square-free factorization of a
poly which coefficient ring has zero characteristic using
Musser's algorithm. |
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateSquareFreeFactorization.SquareFreeFactorizationYunZeroCharacteristics(Poly poly)
Performs square-free factorization of a
poly which coefficient ring has zero characteristic using Yun's
algorithm. |
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateSquareFreeFactorization.SquareFreePart(Poly poly)
Returns square-free part of the
poly |
static <T extends AMonomial<T>,P extends AMultivariatePolynomial<T,P>> |
AMultivariatePolynomial.swapVariables(P poly,
int i,
int j)
Renames variable
i to j and j to i (new instance created) |
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
GroebnerBases.syzygy(GroebnerBases.SyzygyPair<Term,Poly> sPair)
Computes syzygy of given polynomials
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
GroebnerBases.syzygy(Poly a,
Poly b)
Computes syzygy of given polynomials
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
Ideal.trivial(Poly factory)
Creates trivial ideal (ideal = ring)
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
Ideal.trivial(Poly factory,
Comparator<DegreeVector> monomialOrder)
Creates trivial ideal (ideal = ring)
|
| Modifier and Type | Method and Description |
|---|---|
Poly[] |
AMultivariatePolynomial.derivative()
Gives the derivative vector
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.divideAndRemainder(Poly dividend,
Poly... dividers)
Performs multivariate division with remainder.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.divideAndRemainder(Poly dividend,
Poly divider)
Performs multivariate division with remainder.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
GroebnerMethods.JacobianMatrix(List<Poly> sys)
Creates a Jacobian matrix of a given list of polynomials
|
AMultivariatePolynomial |
MultivariatePolynomialZp64.toSparseRecursiveForm()
Gives a recursive sparse univariate representation of this poly.
|
AMultivariatePolynomial |
MultivariatePolynomial.toSparseRecursiveForm()
Gives a recursive sparse univariate representation of this poly.
|
| Modifier and Type | Method and Description |
|---|---|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>,uPoly extends IUnivariatePolynomial<uPoly>> |
HenselLifting.bivariateLiftNoLCCorrection0(Poly base,
Poly[] factors,
cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluation,
int degreeBound)
Fast bivariate Hensel lifting which uses dense representation for bivariate polynomials
|
Poly |
AMultivariatePolynomial.composition(int[] variables,
Poly[] values)
Substitutes given polynomial instead of specified variable (that is
this(x_1, ..., value, ..., x_N),
where value is on the place of specified variable) |
Poly |
AMultivariatePolynomial.composition(Poly... values)
Substitutes given polynomials instead of variables of this (that is
this(values_1, ..., values_N)) |
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
Ideal.create(Poly... generators)
Creates ideal given by a list of generators.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.divideAndRemainder(Poly dividend,
Poly... dividers)
Performs multivariate division with remainder.
|
static <E> E |
MultivariatePolynomial.evaluateSparseRecursiveForm(AMultivariatePolynomial recForm,
int nVariables,
E[] values)
Evaluates polynomial given in a sparse recursive form at a given points
|
static long |
MultivariatePolynomialZp64.evaluateSparseRecursiveForm(AMultivariatePolynomial recForm,
long[] values)
Evaluates polynomial given in a sparse recursive form at a given points
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.fromSparseRecursiveForm(AMultivariatePolynomial recForm,
Comparator<DegreeVector> ordering)
Converts poly from a sparse recursive univariate representation.
|
static MultivariatePolynomialZp64 |
MultivariatePolynomialZp64.fromSparseRecursiveForm(AMultivariatePolynomial 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.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
HenselLifting.multivariateLiftAutomaticLC(Poly base,
Poly[] factors,
cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluation)
Multivariate lift with automatic leading coefficient correction
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
HenselLifting.multivariateLiftAutomaticLC(Poly base,
Poly[] factors,
cc.redberry.rings.poly.multivar.HenselLifting.IEvaluation<Term,Poly> evaluation,
int from)
Multivariate lift with automatic leading coefficient correction
|
static <Poly extends AMultivariatePolynomial> |
MultivariateGCD.PolynomialGCD(Poly... arr)
Calculates greatest common divisor of the array of polynomials
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.pseudoRemainder(Poly dividend,
Poly... dividers)
Performs multivariate pseudo division with remainder and returns the remainder.
|
static <Term extends AMonomial<Term>,Poly extends AMultivariatePolynomial<Term,Poly>> |
MultivariateDivision.remainder(Poly dividend,
Poly... dividers)
Performs multivariate division with remainder and returns the remainder.
|
boolean |
AMultivariatePolynomial.sameSkeletonExceptQ(AMultivariatePolynomial oth,
int... variables)
Tests whether
this and oth have the same skeleton with respect all except specified variables |
boolean |
AMultivariatePolynomial.sameSkeletonQ(AMultivariatePolynomial oth)
Tests whether
this and oth have the same skeleton |
boolean |
AMultivariatePolynomial.sameSkeletonQ(AMultivariatePolynomial oth,
int... variables)
Tests whether
this and oth have the same skeleton with respect to specified variables |
| Modifier and Type | Method and Description |
|---|---|
static GroebnerBases.HilbertSeries |
GroebnerBases.HilbertSeriesOfLeadingTermsSet(List<? extends AMultivariatePolynomial> ideal)
Computes Hilbert-Poincare series of specified ideal given by its Groebner basis
|
static boolean |
GroebnerBases.isHomogeneousIdeal(List<? extends AMultivariatePolynomial> ideal)
Check whether ideal is homogeneous
|
static boolean |
GroebnerBases.isMonomialIdeal(List<? extends AMultivariatePolynomial> ideal)
Check whether all specified generators are monomials
|
static List<DegreeVector> |
GroebnerBases.leadTermsSet(List<? extends AMultivariatePolynomial> ideal)
List of lead terms of generators
|
| Modifier and Type | Method and Description |
|---|---|
default AMultivariatePolynomial |
IUnivariatePolynomial.asMultivariate()
Convert to multivariate polynomial
|
AMultivariatePolynomial |
UnivariatePolynomialZ64.asMultivariate(Comparator<DegreeVector> ordering) |
AMultivariatePolynomial |
IUnivariatePolynomial.asMultivariate(Comparator<DegreeVector> ordering)
Convert to multivariate polynomial
|
AMultivariatePolynomial |
UnivariatePolynomialZ64.composition(AMultivariatePolynomial value) |
AMultivariatePolynomial |
IUnivariatePolynomial.composition(AMultivariatePolynomial value)
Calculates the composition of this(oth)
|
| Modifier and Type | Method and Description |
|---|---|
MultivariatePolynomialZp64 |
UnivariatePolynomialZp64.composition(AMultivariatePolynomial value) |
AMultivariatePolynomial |
UnivariatePolynomialZ64.composition(AMultivariatePolynomial value) |
MultivariatePolynomial<E> |
UnivariatePolynomial.composition(AMultivariatePolynomial value) |
AMultivariatePolynomial |
IUnivariatePolynomial.composition(AMultivariatePolynomial value)
Calculates the composition of this(oth)
|
Copyright © 2022. All rights reserved.