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
-
Field Summary
-
Constructor Summary
Constructors Constructor Description MonomialAlgebra(Ring<E> ring)
-
Method Summary
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 / divider
or null if exact division is not possibleMonomial<E>
getUnitTerm(int nVariables)
creates a unit termMonomial<E>
getZeroTerm(int nVariables)
creates a zero termboolean
haveSameCoefficients(Monomial<E> a, Monomial<E> b)
whether two terms have the same coefficientsboolean
isOne(Monomial<E> term)
Whether term is oneboolean
isPureDegreeVector(Monomial<E> term)
Whether term has unit coefficientboolean
isUnit(Monomial<E> term)
Whether term is unitboolean
isZero(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
-
Field Details
-
ring
-
-
Constructor Details
-
MonomialAlgebra
-
-
Method Details
-
multiply
Description copied from interface:IMonomialAlgebra
Multiplies two terms- Specified by:
multiply
in interfaceIMonomialAlgebra<E>
-
multiply
Description copied from interface:IMonomialAlgebra
Multiplies term by a number- Specified by:
multiply
in interfaceIMonomialAlgebra<E>
-
divideOrNull
Description copied from interface:IMonomialAlgebra
Gives quotientdividend / divider
or null if exact division is not possible- Specified by:
divideOrNull
in interfaceIMonomialAlgebra<E>
-
pow
Description copied from interface:IMonomialAlgebra
Raise term in a power ofexponent
- Specified by:
pow
in interfaceIMonomialAlgebra<E>
- Parameters:
term
- the termexponent
- the exponent- Returns:
term^exponent
-
negate
Description copied from interface:IMonomialAlgebra
Negates term- Specified by:
negate
in interfaceIMonomialAlgebra<E>
-
isZero
Description copied from interface:IMonomialAlgebra
Whether term is zero- Specified by:
isZero
in interfaceIMonomialAlgebra<E>
-
isOne
Description copied from interface:IMonomialAlgebra
Whether term is one- Specified by:
isOne
in interfaceIMonomialAlgebra<E>
-
isUnit
Description copied from interface:IMonomialAlgebra
Whether term is unit- Specified by:
isUnit
in interfaceIMonomialAlgebra<E>
-
isPureDegreeVector
Description copied from interface:IMonomialAlgebra
Whether term has unit coefficient- Specified by:
isPureDegreeVector
in interfaceIMonomialAlgebra<E>
-
create
Description copied from interface:IMonomialAlgebra
creates term with specified exponents and unit coefficient- Specified by:
create
in interfaceIMonomialAlgebra<E>
-
create
Description copied from interface:IMonomialAlgebra
creates term with specified exponents and unit coefficient- Specified by:
create
in interfaceIMonomialAlgebra<E>
-
createArray
Description copied from interface:IMonomialAlgebra
creates generic array of specified length- Specified by:
createArray
in interfaceIMonomialAlgebra<E>
-
getUnitTerm
Description copied from interface:IMonomialAlgebra
creates a unit term- Specified by:
getUnitTerm
in interfaceIMonomialAlgebra<E>
-
getZeroTerm
Description copied from interface:IMonomialAlgebra
creates a zero term- Specified by:
getZeroTerm
in interfaceIMonomialAlgebra<E>
-
haveSameCoefficients
Description copied from interface:IMonomialAlgebra
whether two terms have the same coefficients- Specified by:
haveSameCoefficients
in interfaceIMonomialAlgebra<E>
-