Interface RingElem<C extends RingElem<C>>

Type Parameters:
C - ring element type
All Superinterfaces:
AbelianGroupElem<C>, Comparable<C>, Element<C>, MonoidElem<C>, Serializable
All Known Subinterfaces:
AlgebraElem<A,C>, FieldElem<C>, GcdRingElem<C>, NoncomRingElem<C>, Polynomial<C>, RegularRingElem<C>, StarRingElem<C>
All Known Implementing Classes:
AlgebraicNumber, BigComplex, BigDecimal, BigDecimalComplex, BigInteger, BigOctonion, BigQuaternion, BigQuaternionInteger, BigRational, Complex, ComplexAlgebraicNumber, GenExteriorPolynomial, GenMatrix, GenPolynomial, GenSolvablePolynomial, GenWordPolynomial, Local, Local, LocalSolvablePolynomial, ModInt, ModInteger, ModLong, MultiVarPowerSeries, Product, QLRSolvablePolynomial, Quotient, Quotient, QuotSolvablePolynomial, RealAlgebraicNumber, RealAlgebraicNumber, RecSolvablePolynomial, RecSolvableWordPolynomial, Residue, Residue, ResidueSolvablePolynomial, ResidueSolvableWordPolynomial, SolvableLocal, SolvableLocalResidue, SolvableQuotient, SolvableResidue, UnivPowerSeries, WordResidue

public interface RingElem<C extends RingElem<C>> extends AbelianGroupElem<C>, MonoidElem<C>
Ring element interface. Combines additive and multiplicative methods. Adds also gcd because of polynomials.
  • Method Details

    • gcd

      C gcd(C b)
      Greatest common divisor.
      Parameters:
      b - other element.
      Returns:
      gcd(this,b).
    • egcd

      C[] egcd(C b)
      Extended greatest common divisor.
      Parameters:
      b - other element.
      Returns:
      [ gcd(this,b), c1, c2 ] with c1*this + c2*b = gcd(this,b).
    • leftGcd

      default C leftGcd(C b)
      Left greatest common divisor. Returns commutative greatest common divisor if not overwritten.
      Parameters:
      b - other element.
      Returns:
      leftGcd(this,b).
    • rightGcd

      default C rightGcd(C b)
      Right greatest common divisor. Returns commutative greatest common divisor if not overwritten.
      Parameters:
      b - other element.
      Returns:
      rightGcd(this,b).