p

algebra

ring

package ring

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. All

Type Members

  1. trait AdditiveCommutativeGroup[A] extends AdditiveGroup[A] with AdditiveCommutativeMonoid[A]
  2. trait AdditiveCommutativeMonoid[A] extends AdditiveMonoid[A] with AdditiveCommutativeSemigroup[A]
  3. trait AdditiveCommutativeSemigroup[A] extends AdditiveSemigroup[A]
  4. trait AdditiveGroup[A] extends AdditiveMonoid[A]
  5. trait AdditiveGroupFunctions[G[T] <: AdditiveGroup[T]] extends AdditiveMonoidFunctions[G]
  6. trait AdditiveMonoid[A] extends AdditiveSemigroup[A]
  7. trait AdditiveMonoidFunctions[M[T] <: AdditiveMonoid[T]] extends AdditiveSemigroupFunctions[M]
  8. trait AdditiveSemigroup[A] extends Serializable
  9. trait AdditiveSemigroupFunctions[S[T] <: AdditiveSemigroup[T]] extends AnyRef
  10. 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.

    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.

  11. trait BoolRng[A] extends CommutativeRng[A]

    A Boolean rng is a rng whose multiplication is idempotent, that is a⋅a = a for all elements a.

    A Boolean rng is a rng 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 BoolRng is equivalent to algebra.lattice.GenBool. See algebra.lattice.GenBoolFromBoolRng for details.

  12. trait CommutativeRig[A] extends Rig[A] with CommutativeSemiring[A] with MultiplicativeCommutativeMonoid[A]

    CommutativeRig is a Rig that is commutative under multiplication.

  13. trait CommutativeRing[A] extends Ring[A] with CommutativeRig[A] with CommutativeRng[A]

    CommutativeRing is a Ring that is commutative under multiplication.

  14. trait CommutativeRng[A] extends Rng[A] with CommutativeSemiring[A]

    CommutativeRng is a Rng that is commutative under multiplication.

  15. trait CommutativeSemiring[A] extends Semiring[A] with MultiplicativeCommutativeSemigroup[A]

    CommutativeSemiring is a Semiring that is commutative under multiplication.

  16. trait Field[A] extends CommutativeRing[A] with MultiplicativeCommutativeGroup[A]
  17. trait FieldFunctions[F[T] <: Field[T]] extends RingFunctions[F] with MultiplicativeGroupFunctions[F]
  18. trait MultiplicativeCommutativeGroup[A] extends MultiplicativeGroup[A] with MultiplicativeCommutativeMonoid[A]
  19. trait MultiplicativeCommutativeMonoid[A] extends MultiplicativeMonoid[A] with MultiplicativeCommutativeSemigroup[A]
  20. trait MultiplicativeCommutativeSemigroup[A] extends MultiplicativeSemigroup[A]
  21. trait MultiplicativeGroup[A] extends MultiplicativeMonoid[A]
  22. trait MultiplicativeGroupFunctions[G[T] <: MultiplicativeGroup[T]] extends MultiplicativeMonoidFunctions[G]
  23. trait MultiplicativeMonoid[A] extends MultiplicativeSemigroup[A]
  24. trait MultiplicativeMonoidFunctions[M[T] <: MultiplicativeMonoid[T]] extends MultiplicativeSemigroupFunctions[M]
  25. trait MultiplicativeSemigroup[A] extends Serializable
  26. trait MultiplicativeSemigroupFunctions[S[T] <: MultiplicativeSemigroup[T]] extends AnyRef
  27. trait Rig[A] extends Semiring[A] with MultiplicativeMonoid[A]

    Rig consists of:

    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."

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

    Ring consists of:

    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.

  29. trait RingFunctions[R[T] <: Ring[T]] extends AdditiveGroupFunctions[R] with MultiplicativeMonoidFunctions[R]
  30. trait Rng[A] extends Semiring[A] with AdditiveCommutativeGroup[A]

    Rng (pronounced "Rung") consists of:

    Rng (pronounced "Rung") consists of:

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

    Alternately, a Rng can be thought of as a ring without a multiplicative identity (or as a semiring with an additive inverse).

    Mnemonic: "Rng is a Ring without multiplicative 'I'dentity."

  31. trait Semiring[A] extends AdditiveCommutativeMonoid[A] with MultiplicativeSemigroup[A]

    Semiring consists of:

    Semiring consists of:

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

    Alternately, a Semiring can be thought of as a ring without a multiplicative identity or an additive inverse.

    A Semiring with an additive inverse (-) is a Rng. A Semiring with a multiplicative identity (1) is a Rig. A Semiring with both of those is a Ring.

Value Members

  1. object AdditiveCommutativeGroup extends AdditiveGroupFunctions[AdditiveCommutativeGroup] with Serializable
  2. object AdditiveCommutativeMonoid extends AdditiveMonoidFunctions[AdditiveCommutativeMonoid] with Serializable
  3. object AdditiveCommutativeSemigroup extends AdditiveSemigroupFunctions[AdditiveCommutativeSemigroup] with Serializable
  4. object AdditiveGroup extends AdditiveGroupFunctions[AdditiveGroup] with Serializable
  5. object AdditiveMonoid extends AdditiveMonoidFunctions[AdditiveMonoid] with Serializable
  6. object AdditiveSemigroup extends AdditiveSemigroupFunctions[AdditiveSemigroup] with Serializable
  7. object BoolRing extends RingFunctions[BoolRing] with Serializable
  8. object BoolRng extends AdditiveGroupFunctions[BoolRng] with MultiplicativeSemigroupFunctions[BoolRng] with Serializable
  9. object CommutativeRig extends AdditiveMonoidFunctions[CommutativeRig] with MultiplicativeMonoidFunctions[CommutativeRig] with Serializable
  10. object CommutativeRing extends RingFunctions[CommutativeRing] with Serializable
  11. object CommutativeRng extends AdditiveGroupFunctions[CommutativeRng] with MultiplicativeSemigroupFunctions[CommutativeRng] with Serializable
  12. object CommutativeSemiring extends AdditiveMonoidFunctions[CommutativeSemiring] with MultiplicativeSemigroupFunctions[CommutativeSemiring] with Serializable
  13. object Field extends FieldFunctions[Field] with Serializable
  14. object MultiplicativeCommutativeGroup extends MultiplicativeGroupFunctions[MultiplicativeCommutativeGroup] with Serializable
  15. object MultiplicativeCommutativeMonoid extends MultiplicativeMonoidFunctions[MultiplicativeCommutativeMonoid] with Serializable
  16. object MultiplicativeCommutativeSemigroup extends MultiplicativeSemigroupFunctions[MultiplicativeCommutativeSemigroup] with Serializable
  17. object MultiplicativeGroup extends MultiplicativeGroupFunctions[MultiplicativeGroup] with Serializable
  18. object MultiplicativeMonoid extends MultiplicativeMonoidFunctions[MultiplicativeMonoid] with Serializable
  19. object MultiplicativeSemigroup extends MultiplicativeSemigroupFunctions[MultiplicativeSemigroup] with Serializable
  20. object Rig extends AdditiveMonoidFunctions[Rig] with MultiplicativeMonoidFunctions[Rig] with Serializable
  21. object Ring extends RingFunctions[Ring] with Serializable
  22. object Rng extends AdditiveGroupFunctions[Rng] with MultiplicativeSemigroupFunctions[Rng] with Serializable
  23. object Semiring extends AdditiveMonoidFunctions[Semiring] with MultiplicativeSemigroupFunctions[Semiring] with Serializable

Ungrouped