public interface IMonomialAlgebra<Term extends AMonomial<Term>> extends Serializable
| Modifier and Type | Interface and Description |
|---|---|
static class |
IMonomialAlgebra.MonomialAlgebra<E>
Generic term algebra
|
static class |
IMonomialAlgebra.MonomialAlgebraZp64
Term algebra for terms over Zp
|
| Modifier and Type | Method and Description |
|---|---|
Term |
create(DegreeVector degreeVector)
creates term with specified exponents and unit coefficient
|
Term |
create(int[] exponents)
creates term with specified exponents and unit coefficient
|
Term[] |
createArray(int length)
creates generic array of specified length
|
default Term |
divideExact(DegreeVector dividend,
Term divider)
Gives quotient
dividend / divider or throws ArithmeticException if exact division is not
possible |
default Term |
divideExact(Term dividend,
Term divider)
Gives quotient
dividend / divider or throws ArithmeticException if exact division is not
possible |
Term |
divideOrNull(Term dividend,
Term divider)
Gives quotient
dividend / divider or null if exact division is not possible |
Term |
getUnitTerm(int nVariables)
creates a unit term
|
Term |
getZeroTerm(int nVariables)
creates a zero term
|
boolean |
haveSameCoefficients(Term a,
Term b)
whether two terms have the same coefficients
|
default boolean |
isConstant(Term term)
Whether term is constant
|
boolean |
isOne(Term term)
Whether term is one
|
boolean |
isPureDegreeVector(Term term)
Whether term has unit coefficient
|
boolean |
isUnit(Term term)
Whether term is unit
|
boolean |
isZero(Term term)
Whether term is zero
|
Term |
multiply(Term a,
BigInteger b)
Multiplies term by a number
|
Term |
multiply(Term a,
Term b)
Multiplies two terms
|
Term |
negate(Term term)
Negates term
|
Term |
pow(Term term,
int exponent)
Raise term in a power of
exponent |
Term multiply(Term a, BigInteger b)
Term divideOrNull(Term dividend, Term divider)
dividend / divider or null if exact division is not possibledefault Term divideExact(Term dividend, Term divider)
dividend / divider or throws ArithmeticException if exact division is not
possibledefault Term divideExact(DegreeVector dividend, Term divider)
dividend / divider or throws ArithmeticException if exact division is not
possibleTerm pow(Term term, int exponent)
exponentterm - the termexponent - the exponentterm^exponentboolean isZero(Term term)
boolean isOne(Term term)
boolean isUnit(Term term)
default boolean isConstant(Term term)
boolean isPureDegreeVector(Term term)
Term create(int[] exponents)
Term create(DegreeVector degreeVector)
Term[] createArray(int length)
Term getUnitTerm(int nVariables)
Term getZeroTerm(int nVariables)
Copyright © 2022. All rights reserved.