Interface NoncomRingElem<C extends NoncomRingElem<C>>

  • Type Parameters:
    C - ring element type
    All Superinterfaces:
    AbelianGroupElem<C>, java.lang.Comparable<C>, Element<C>, MonoidElem<C>, RingElem<C>, java.io.Serializable
    All Known Implementing Classes:
    WordResidue

    public interface NoncomRingElem<C extends NoncomRingElem<C>>
    extends RingElem<C>
    Non-commutative ring element interface. Defines right divide and right remainder.
    • Method Detail

      • rightDivide

        C rightDivide​(C a)
        Right division.
        Specified by:
        rightDivide in interface MonoidElem<C extends NoncomRingElem<C>>
        Parameters:
        a - element.
        Returns:
        right, with a * right = this
      • rightRemainder

        C rightRemainder​(C a)
        Right remainder.
        Specified by:
        rightRemainder in interface MonoidElem<C extends NoncomRingElem<C>>
        Parameters:
        a - element.
        Returns:
        r = this - a * (a/right), where a * right = this.
      • twosidedDivide

        C[] twosidedDivide​(C a)
        Two-sided division.
        Specified by:
        twosidedDivide in interface MonoidElem<C extends NoncomRingElem<C>>
        Parameters:
        a - element.
        Returns:
        [left,right], with left * a * right = this
      • twosidedRemainder

        C twosidedRemainder​(C a)
        Two-sided remainder.
        Specified by:
        twosidedRemainder in interface MonoidElem<C extends NoncomRingElem<C>>
        Parameters:
        a - element.
        Returns:
        r = this - (a/left) * a * (a/right), where left * a * right = this.