Class Term

    • Field Summary

      Fields 
      Modifier and Type Field Description
      static Term ONE
      Holds the multiplicative identity.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int compareTo​(Term that)
      Compares this term with the one specified for order.
      Term copy()
      Returns an entierely new copy of this term allocated by the calling thread (possibly on the stack).
      Term divide​(Term that)
      Return the division of this term with the one specified.
      boolean equals​(Object obj)
      Indicates if this term is equal to the object specified.
      int getPower​(int index)
      Returns the power of the variable at the specified position.
      int getPower​(Variable<?> v)
      Returns the power of the specified variable.
      Variable<?> getVariable​(int index)
      Returns the variable at the specified index (variables are lexically ordered).
      int hashCode()
      Returns a hash code for this term.
      int size()
      Returns the number of variables for this term.
      Term times​(Term that)
      Return the product of this term with the one specified.
      String toString()
      Returns the text representation of this term as a java.lang.String.
      javolution.text.Text toText()
      Returns the text representation of this term.
      static Term valueOf​(Variable<?> v, int n)
      Return the term corresponding to the specified variable raised to the specified power.
    • Field Detail

      • ONE

        public static Term ONE
        Holds the multiplicative identity.
    • Method Detail

      • valueOf

        public static Term valueOf​(Variable<?> v,
                                   int n)
        Return the term corresponding to the specified variable raised to the specified power.
        Parameters:
        v - the variable.
        n - the power.
        Returns:
        the term for vn
        Throws:
        IllegalArgumentException - if n < 0
      • size

        public int size()
        Returns the number of variables for this term.
        Returns:
        the number of variables.
      • getVariable

        public Variable<?> getVariable​(int index)
        Returns the variable at the specified index (variables are lexically ordered).
        Parameters:
        index - the variable index.
        Returns:
        this term variables at specified position.
        Throws:
        IndexOutOfBoundsException - if (index < 0) || (index >= size())
      • getPower

        public int getPower​(int index)
        Returns the power of the variable at the specified position.
        Parameters:
        index - the variable index.
        Returns:
        the power of the variable at the specified index.
        Throws:
        IndexOutOfBoundsException - if (index < 0) || (index >= size())
      • getPower

        public int getPower​(Variable<?> v)
        Returns the power of the specified variable.
        Parameters:
        v - the variable for which the power is returned.
        Returns:
        the power of the corresponding variable or 0 if this term does not hold the specified variable.
      • times

        public Term times​(Term that)
        Return the product of this term with the one specified.
        Parameters:
        that - the term multiplier.
        Returns:
        this · that
        Throws:
        IllegalArgumentException - if the specified term holds a variable having the same symbol as one of the variable of this term; but both variables are distinct.
      • divide

        public Term divide​(Term that)
        Return the division of this term with the one specified.
        Parameters:
        that - the term divisor.
        Returns:
        this / that
        Throws:
        UnsupportedOperationException - if this division would result in negative power.
        IllegalArgumentException - if the specified term holds a variable having the same symbol as one of the variable of this term; but both variables are distinct.
      • equals

        public boolean equals​(Object obj)
        Indicates if this term is equal to the object specified.
        Overrides:
        equals in class Object
        Parameters:
        obj - the object to compare for equality.
        Returns:
        true if this term and the specified object are considered equal; false otherwise.
      • hashCode

        public final int hashCode()
        Returns a hash code for this term.
        Overrides:
        hashCode in class Object
        Returns:
        a hash code value for this object.
      • toString

        public final String toString()
        Returns the text representation of this term as a java.lang.String.
        Overrides:
        toString in class Object
        Returns:
        toText().toString()
      • toText

        public javolution.text.Text toText()
        Returns the text representation of this term.
        Specified by:
        toText in interface javolution.lang.Realtime
      • copy

        public Term copy()
        Returns an entierely new copy of this term allocated by the calling thread (possibly on the stack).
        Specified by:
        copy in interface javolution.lang.ValueType
        Returns:
        an identical and independant copy of this term.
      • compareTo

        public int compareTo​(Term that)
        Compares this term with the one specified for order.
        Specified by:
        compareTo in interface Comparable<Term>
        Parameters:
        that - the term to be compared to.
        Returns:
        a negative integer, zero, or a positive integer as this term is less than, equal to, or greater than the specified term.