Package cc.redberry.rings.poly.multivar
Class IMonomialAlgebra.MonomialAlgebra<E>
- java.lang.Object
-
- cc.redberry.rings.poly.multivar.IMonomialAlgebra.MonomialAlgebra<E>
-
- All Implemented Interfaces:
IMonomialAlgebra<Monomial<E>>,Serializable
- Enclosing interface:
- IMonomialAlgebra<Term extends AMonomial<Term>>
public static class IMonomialAlgebra.MonomialAlgebra<E> extends Object implements IMonomialAlgebra<Monomial<E>>
Generic term algebra- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface cc.redberry.rings.poly.multivar.IMonomialAlgebra
IMonomialAlgebra.MonomialAlgebra<E>, IMonomialAlgebra.MonomialAlgebraZp64
-
-
Constructor Summary
Constructors Constructor Description MonomialAlgebra(Ring<E> ring)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Monomial<E>create(int[] exponents)creates term with specified exponents and unit coefficientMonomial<E>create(DegreeVector degreeVector)creates term with specified exponents and unit coefficientMonomial<E>[]createArray(int length)creates generic array of specified lengthMonomial<E>divideOrNull(Monomial<E> dividend, Monomial<E> divider)Gives quotientdividend / divideror null if exact division is not possibleMonomial<E>getUnitTerm(int nVariables)creates a unit termMonomial<E>getZeroTerm(int nVariables)creates a zero termbooleanhaveSameCoefficients(Monomial<E> a, Monomial<E> b)whether two terms have the same coefficientsbooleanisOne(Monomial<E> term)Whether term is onebooleanisPureDegreeVector(Monomial<E> term)Whether term has unit coefficientbooleanisUnit(Monomial<E> term)Whether term is unitbooleanisZero(Monomial<E> term)Whether term is zeroMonomial<E>multiply(Monomial<E> a, BigInteger b)Multiplies term by a numberMonomial<E>multiply(Monomial<E> a, Monomial<E> b)Multiplies two termsMonomial<E>negate(Monomial<E> term)Negates termMonomial<E>pow(Monomial<E> term, int exponent)Raise term in a power ofexponent-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface cc.redberry.rings.poly.multivar.IMonomialAlgebra
divideExact, divideExact, isConstant
-
-
-
-
Method Detail
-
multiply
public Monomial<E> multiply(Monomial<E> a, Monomial<E> b)
Description copied from interface:IMonomialAlgebraMultiplies two terms- Specified by:
multiplyin interfaceIMonomialAlgebra<E>
-
multiply
public Monomial<E> multiply(Monomial<E> a, BigInteger b)
Description copied from interface:IMonomialAlgebraMultiplies term by a number- Specified by:
multiplyin interfaceIMonomialAlgebra<E>
-
divideOrNull
public Monomial<E> divideOrNull(Monomial<E> dividend, Monomial<E> divider)
Description copied from interface:IMonomialAlgebraGives quotientdividend / divideror null if exact division is not possible- Specified by:
divideOrNullin interfaceIMonomialAlgebra<E>
-
pow
public Monomial<E> pow(Monomial<E> term, int exponent)
Description copied from interface:IMonomialAlgebraRaise term in a power ofexponent- Specified by:
powin interfaceIMonomialAlgebra<E>- Parameters:
term- the termexponent- the exponent- Returns:
term^exponent
-
negate
public Monomial<E> negate(Monomial<E> term)
Description copied from interface:IMonomialAlgebraNegates term- Specified by:
negatein interfaceIMonomialAlgebra<E>
-
isZero
public boolean isZero(Monomial<E> term)
Description copied from interface:IMonomialAlgebraWhether term is zero- Specified by:
isZeroin interfaceIMonomialAlgebra<E>
-
isOne
public boolean isOne(Monomial<E> term)
Description copied from interface:IMonomialAlgebraWhether term is one- Specified by:
isOnein interfaceIMonomialAlgebra<E>
-
isUnit
public boolean isUnit(Monomial<E> term)
Description copied from interface:IMonomialAlgebraWhether term is unit- Specified by:
isUnitin interfaceIMonomialAlgebra<E>
-
isPureDegreeVector
public boolean isPureDegreeVector(Monomial<E> term)
Description copied from interface:IMonomialAlgebraWhether term has unit coefficient- Specified by:
isPureDegreeVectorin interfaceIMonomialAlgebra<E>
-
create
public Monomial<E> create(int[] exponents)
Description copied from interface:IMonomialAlgebracreates term with specified exponents and unit coefficient- Specified by:
createin interfaceIMonomialAlgebra<E>
-
create
public Monomial<E> create(DegreeVector degreeVector)
Description copied from interface:IMonomialAlgebracreates term with specified exponents and unit coefficient- Specified by:
createin interfaceIMonomialAlgebra<E>
-
createArray
public Monomial<E>[] createArray(int length)
Description copied from interface:IMonomialAlgebracreates generic array of specified length- Specified by:
createArrayin interfaceIMonomialAlgebra<E>
-
getUnitTerm
public Monomial<E> getUnitTerm(int nVariables)
Description copied from interface:IMonomialAlgebracreates a unit term- Specified by:
getUnitTermin interfaceIMonomialAlgebra<E>
-
getZeroTerm
public Monomial<E> getZeroTerm(int nVariables)
Description copied from interface:IMonomialAlgebracreates a zero term- Specified by:
getZeroTermin interfaceIMonomialAlgebra<E>
-
haveSameCoefficients
public boolean haveSameCoefficients(Monomial<E> a, Monomial<E> b)
Description copied from interface:IMonomialAlgebrawhether two terms have the same coefficients- Specified by:
haveSameCoefficientsin interfaceIMonomialAlgebra<E>
-
-