Interface IMonomialAlgebra<Term extends AMonomial<Term>>

    • Method Detail

      • multiply

        Term multiply​(Term a,
                      Term b)
        Multiplies two terms
      • divideOrNull

        Term divideOrNull​(Term dividend,
                          Term divider)
        Gives quotient dividend / divider or null if exact division is not possible
      • divideExact

        default Term divideExact​(Term dividend,
                                 Term divider)
        Gives quotient dividend / divider or throws ArithmeticException if exact division is not possible
      • divideExact

        default Term divideExact​(DegreeVector dividend,
                                 Term divider)
        Gives quotient dividend / divider or throws ArithmeticException if exact division is not possible
      • pow

        Term pow​(Term term,
                 int exponent)
        Raise term in a power of exponent
        Parameters:
        term - the term
        exponent - the exponent
        Returns:
        term^exponent
      • negate

        Term negate​(Term term)
        Negates term
      • isZero

        boolean isZero​(Term term)
        Whether term is zero
      • isOne

        boolean isOne​(Term term)
        Whether term is one
      • isUnit

        boolean isUnit​(Term term)
        Whether term is unit
      • isConstant

        default boolean isConstant​(Term term)
        Whether term is constant
      • isPureDegreeVector

        boolean isPureDegreeVector​(Term term)
        Whether term has unit coefficient
      • create

        Term create​(int[] exponents)
        creates term with specified exponents and unit coefficient
      • create

        Term create​(DegreeVector degreeVector)
        creates term with specified exponents and unit coefficient
      • createArray

        Term[] createArray​(int length)
        creates generic array of specified length
      • getUnitTerm

        Term getUnitTerm​(int nVariables)
        creates a unit term
      • getZeroTerm

        Term getZeroTerm​(int nVariables)
        creates a zero term
      • haveSameCoefficients

        boolean haveSameCoefficients​(Term a,
                                     Term b)
        whether two terms have the same coefficients