trait Rig[A] extends Semiring[A] with MultiplicativeMonoid[A]

Rig consists of:

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

Alternately, a Rig can be thought of as a ring without multiplicative or additive inverses (or as a semiring with a multiplicative identity).

Mnemonic: "Rig is a Ring without 'N'egation."

Source
Rig.scala
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Rig
  2. MultiplicativeMonoid
  3. Semiring
  4. MultiplicativeSemigroup
  5. AdditiveCommutativeMonoid
  6. AdditiveCommutativeSemigroup
  7. AdditiveMonoid
  8. AdditiveSemigroup
  9. Serializable
  10. Serializable
  11. 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 one: A
    Definition Classes
    MultiplicativeMonoid
  3. abstract def plus(x: A, y: A): A
    Definition Classes
    AdditiveSemigroup
  4. abstract def times(x: A, y: A): A
    Definition Classes
    MultiplicativeSemigroup
  5. 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: CommutativeMonoid[A]
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def equals(arg0: Any): Boolean
    Definition Classes
    Any
  7. def hashCode(): Int
    Definition Classes
    Any
  8. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  9. def isOne(a: A)(implicit ev: Eq[A]): Boolean

    Tests if a is one.

    Tests if a is one.

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

    Tests if a is zero.

    Tests if a is zero.

    Definition Classes
    AdditiveMonoid
  11. def multiplicative: Monoid[A]
  12. def positivePow(a: A, n: Int): A
    Attributes
    protected[this]
    Definition Classes
    MultiplicativeSemigroup
  13. def positiveSumN(a: A, n: Int): A
    Attributes
    protected[this]
    Definition Classes
    AdditiveSemigroup
  14. def pow(a: A, n: Int): A
  15. 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
  16. 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
  17. def sumN(a: A, n: Int): A
    Definition Classes
    AdditiveMonoidAdditiveSemigroup
  18. def toString(): String
    Definition Classes
    Any
  19. 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
  20. 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 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