Interface NoncomRingElem<C extends NoncomRingElem<C>>
- Type Parameters:
C- ring element type
- All Superinterfaces:
AbelianGroupElem<C>, Comparable<C>, Element<C>, MonoidElem<C>, RingElem<C>, Serializable
- All Known Implementing Classes:
WordResidue
Non-commutative ring element interface. Defines right divide and right remainder.
-
Method Summary
Modifier and TypeMethodDescriptionrightDivide(C a) Right division.rightRemainder(C a) Right remainder.C[]twosidedDivide(C a) Two-sided division.Two-sided remainder.Methods inherited from interface Element
compareTo, copy, equals, factory, hashCode, toScript, toScriptFactoryMethods inherited from interface MonoidElem
divide, inverse, isONE, isUnit, leftDivide, leftRemainder, multiply, power, quotientRemainder, remainder
-
Method Details
-
rightDivide
Right division.- Specified by:
rightDividein interfaceMonoidElem<C extends NoncomRingElem<C>>- Parameters:
a- element.- Returns:
- right, with a * right = this
-
rightRemainder
Right remainder.- Specified by:
rightRemainderin interfaceMonoidElem<C extends NoncomRingElem<C>>- Parameters:
a- element.- Returns:
- r = this - a * (a/right), where a * right = this.
-
twosidedDivide
Two-sided division.- Specified by:
twosidedDividein interfaceMonoidElem<C extends NoncomRingElem<C>>- Parameters:
a- element.- Returns:
- [left,right], with left * a * right = this
-
twosidedRemainder
Two-sided remainder.- Specified by:
twosidedRemainderin interfaceMonoidElem<C extends NoncomRingElem<C>>- Parameters:
a- element.- Returns:
- r = this - (a/left) * a * (a/right), where left * a * right = this.
-