trait Ring[A] extends Rig[A] with Rng[A]

Ring consists of:

  • a commutative group for addition (+)
  • a monoid for multiplication (*)

Additionally, multiplication must distribute over addition.

Ring implements some methods (for example fromInt) in terms of other more fundamental methods (zero, one and plus). Where possible, these methods should be overridden by more efficient implementations.

Source
Ring.scala
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Ring
  2. Rng
  3. AdditiveCommutativeGroup
  4. AdditiveGroup
  5. Rig
  6. MultiplicativeMonoid
  7. Semiring
  8. MultiplicativeSemigroup
  9. AdditiveCommutativeMonoid
  10. AdditiveCommutativeSemigroup
  11. AdditiveMonoid
  12. AdditiveSemigroup
  13. Serializable
  14. Serializable
  15. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def getClass(): Class[_]
    Definition Classes
    Any
  2. abstract def negate(x: A): A
    Definition Classes
    AdditiveGroup
  3. abstract def one: A
    Definition Classes
    MultiplicativeMonoid
  4. abstract def plus(x: A, y: A): A
    Definition Classes
    AdditiveSemigroup
  5. abstract def times(x: A, y: A): A
    Definition Classes
    MultiplicativeSemigroup
  6. abstract def zero: A
    Definition Classes
    AdditiveMonoid

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    Any
  2. final def ##(): Int
    Definition Classes
    Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    Any
  4. def additive: CommutativeGroup[A]
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def equals(arg0: Any): Boolean
    Definition Classes
    Any
  7. def fromBigInt(n: BigInt): A

    Convert the given BigInt to an instance of A.

    Convert the given BigInt to an instance of A.

    This is equivalent to n repeated summations of this ring's one, or -n summations of -one if n is negative.

    Most type class instances should consider overriding this method for performance reasons.

  8. def fromInt(n: Int): A

    Convert the given integer to an instance of A.

    Convert the given integer to an instance of A.

    Defined to be equivalent to sumN(one, n).

    That is, n repeated summations of this ring's one, or -n summations of -one if n is negative.

    Most type class instances should consider overriding this method for performance reasons.

  9. def hashCode(): Int
    Definition Classes
    Any
  10. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  11. def isOne(a: A)(implicit ev: Eq[A]): Boolean

    Tests if a is one.

    Tests if a is one.

    Definition Classes
    MultiplicativeMonoid
  12. def isZero(a: A)(implicit ev: Eq[A]): Boolean

    Tests if a is zero.

    Tests if a is zero.

    Definition Classes
    AdditiveMonoid
  13. def minus(x: A, y: A): A
    Definition Classes
    AdditiveGroup
  14. def multiplicative: Monoid[A]
  15. def positivePow(a: A, n: Int): A
    Attributes
    protected[this]
    Definition Classes
    MultiplicativeSemigroup
  16. def positiveSumN(a: A, n: Int): A
    Attributes
    protected[this]
    Definition Classes
    AdditiveSemigroup
  17. def pow(a: A, n: Int): A
  18. def product(as: TraversableOnce[A]): A

    Given a sequence of as, compute the product.

    Given a sequence of as, compute the product.

    Definition Classes
    MultiplicativeMonoid
  19. def sum(as: TraversableOnce[A]): A

    Given a sequence of as, compute the sum.

    Given a sequence of as, compute the sum.

    Definition Classes
    AdditiveMonoid
  20. def sumN(a: A, n: Int): A
  21. def toString(): String
    Definition Classes
    Any
  22. def tryProduct(as: TraversableOnce[A]): Option[A]

    Given a sequence of as, combine them and return the total.

    Given a sequence of as, combine them and return the total.

    If the sequence is empty, returns None. Otherwise, returns Some(total).

    Definition Classes
    MultiplicativeMonoidMultiplicativeSemigroup
  23. def trySum(as: TraversableOnce[A]): Option[A]

    Given a sequence of as, combine them and return the total.

    Given a sequence of as, combine them and return the total.

    If the sequence is empty, returns None. Otherwise, returns Some(total).

    Definition Classes
    AdditiveMonoidAdditiveSemigroup

Inherited from Rng[A]

Inherited from AdditiveCommutativeGroup[A]

Inherited from AdditiveGroup[A]

Inherited from Rig[A]

Inherited from MultiplicativeMonoid[A]

Inherited from Semiring[A]

Inherited from MultiplicativeSemigroup[A]

Inherited from AdditiveCommutativeMonoid[A]

Inherited from AdditiveCommutativeSemigroup[A]

Inherited from AdditiveMonoid[A]

Inherited from AdditiveSemigroup[A]

Inherited from Serializable

Inherited from Serializable

Inherited from Any

Ungrouped