Trait/Object

algebra.ring

BoolRing

Related Docs: object BoolRing | package ring

Permalink

trait BoolRing[A] extends BoolRng[A] with CommutativeRing[A]

A Boolean ring is a ring whose multiplication is idempotent, that is a⋅a = a for all elements a. This property also implies a+a = 0 for all a, and a⋅b = b⋅a (commutativity of multiplication).

Every Boolean ring is equivalent to a Boolean algebra. See algebra.lattice.BoolFromBoolRing for details.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BoolRing
  2. CommutativeRing
  3. CommutativeRig
  4. MultiplicativeCommutativeMonoid
  5. Ring
  6. Rig
  7. MultiplicativeMonoid
  8. BoolRng
  9. CommutativeRng
  10. CommutativeSemiring
  11. MultiplicativeCommutativeSemigroup
  12. Rng
  13. AdditiveCommutativeGroup
  14. AdditiveGroup
  15. Semiring
  16. MultiplicativeSemigroup
  17. AdditiveCommutativeMonoid
  18. AdditiveCommutativeSemigroup
  19. AdditiveMonoid
  20. AdditiveSemigroup
  21. Serializable
  22. Serializable
  23. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def getClass(): Class[_]

    Permalink
    Definition Classes
    Any
  2. abstract def one: A

    Permalink
    Definition Classes
    MultiplicativeMonoid
  3. abstract def plus(x: A, y: A): A

    Permalink
    Definition Classes
    AdditiveSemigroup
  4. abstract def times(x: A, y: A): A

    Permalink
    Definition Classes
    MultiplicativeSemigroup
  5. abstract def zero: A

    Permalink
    Definition Classes
    AdditiveMonoid

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    Any
  4. def additive: CommutativeGroup[A]

    Permalink
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    Any
  7. def fromBigInt(n: BigInt): A

    Permalink

    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.

    Definition Classes
    Ring
  8. def fromInt(n: Int): A

    Permalink

    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.

    Definition Classes
    Ring
  9. def hashCode(): Int

    Permalink
    Definition Classes
    Any
  10. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  11. def isOne(a: A)(implicit ev: Eq[A]): Boolean

    Permalink

    Tests if a is one.

    Tests if a is one.

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

    Permalink

    Tests if a is zero.

    Tests if a is zero.

    Definition Classes
    AdditiveMonoid
  13. def minus(x: A, y: A): A

    Permalink
    Definition Classes
    AdditiveGroup
  14. def multiplicative: CommutativeMonoid[A]

    Permalink
  15. final def negate(x: A): A

    Permalink
    Definition Classes
    BoolRngAdditiveGroup
  16. def positivePow(a: A, n: Int): A

    Permalink
    Attributes
    protected[this]
    Definition Classes
    MultiplicativeSemigroup
  17. def positiveSumN(a: A, n: Int): A

    Permalink
    Attributes
    protected[this]
    Definition Classes
    AdditiveSemigroup
  18. def pow(a: A, n: Int): A

    Permalink
  19. def product(as: TraversableOnce[A]): A

    Permalink

    Given a sequence of as, compute the product.

    Given a sequence of as, compute the product.

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

    Permalink

    Given a sequence of as, compute the sum.

    Given a sequence of as, compute the sum.

    Definition Classes
    AdditiveMonoid
  21. def sumN(a: A, n: Int): A

    Permalink
  22. def toString(): String

    Permalink
    Definition Classes
    Any
  23. def tryProduct(as: TraversableOnce[A]): Option[A]

    Permalink

    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
  24. def trySum(as: TraversableOnce[A]): Option[A]

    Permalink

    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 CommutativeRing[A]

Inherited from CommutativeRig[A]

Inherited from Ring[A]

Inherited from Rig[A]

Inherited from MultiplicativeMonoid[A]

Inherited from BoolRng[A]

Inherited from CommutativeRng[A]

Inherited from CommutativeSemiring[A]

Inherited from Rng[A]

Inherited from AdditiveCommutativeGroup[A]

Inherited from AdditiveGroup[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