trait Ring[A] extends Rig[A] with Rng[A]
Ring represents a set (A) that is a group over addition (+) and a monoid over multiplication (*). Aside from this, the 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.
- Alphabetic
- By Inheritance
- Ring
- Rng
- AdditiveAbGroup
- AdditiveCMonoid
- AdditiveCSemigroup
- AdditiveGroup
- Rig
- MultiplicativeMonoid
- Semiring
- MultiplicativeSemigroup
- AdditiveMonoid
- AdditiveSemigroup
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
def
getClass(): Class[_]
- Definition Classes
- Any
-
abstract
def
negate(x: A): A
- Definition Classes
- AdditiveGroup
-
abstract
def
one: A
- Definition Classes
- MultiplicativeMonoid
-
abstract
def
plus(x: A, y: A): A
- Definition Classes
- AdditiveSemigroup
-
abstract
def
times(x: A, y: A): A
- Definition Classes
- MultiplicativeSemigroup
-
abstract
def
zero: A
- Definition Classes
- AdditiveMonoid
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- Any
-
final
def
##(): Int
- Definition Classes
- Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- Any
-
def
additive: AbGroup[A]
- Definition Classes
- AdditiveAbGroup → AdditiveCMonoid → AdditiveCSemigroup → AdditiveGroup → AdditiveMonoid → AdditiveSemigroup
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
equals(arg0: Any): Boolean
- Definition Classes
- Any
-
def
fromInt(n: Int): A
Defined to be equivalent to
additive.sumn(one, n).Defined to be equivalent to
additive.sumn(one, n). That is,nrepeated summations of this ring'sone, or-oneifnis negative. -
def
hashCode(): Int
- Definition Classes
- Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isOne(a: A)(implicit ev: Eq[A]): Boolean
- Definition Classes
- MultiplicativeMonoid
-
def
isZero(a: A)(implicit ev: Eq[A]): Boolean
Tests if
ais zero.Tests if
ais zero.- Definition Classes
- AdditiveMonoid
-
def
minus(x: A, y: A): A
- Definition Classes
- AdditiveGroup
-
def
multiplicative: Monoid[A]
- Definition Classes
- MultiplicativeMonoid → MultiplicativeSemigroup
-
def
pow(a: A, n: Int): A
This is similar to
Semigroup#pow, except thata pow 0is defined to be the multiplicative identity. -
def
prod(as: TraversableOnce[A]): A
Given a sequence of
as, sum them using the monoid and return the total.Given a sequence of
as, sum them using the monoid and return the total.- Definition Classes
- MultiplicativeMonoid
-
def
prodOption(as: TraversableOnce[A]): Option[A]
Given a sequence of
as, sum them using the semigroup and return the total.Given a sequence of
as, sum them using the semigroup and return the total.If the sequence is empty, returns None. Otherwise, returns Some(total).
- Definition Classes
- MultiplicativeSemigroup
-
def
prodn(a: A, n: Int): A
Return
amultiplied with itselfntimes.Return
amultiplied with itselfntimes.- Definition Classes
- MultiplicativeMonoid → MultiplicativeSemigroup
-
def
prodnAboveOne(a: A, n: Int): A
- Attributes
- protected
- Definition Classes
- MultiplicativeSemigroup
-
def
sum(as: TraversableOnce[A]): A
Given a sequence of
as, sum them using the monoid and return the total.Given a sequence of
as, sum them using the monoid and return the total.- Definition Classes
- AdditiveMonoid
-
def
sumOption(as: TraversableOnce[A]): Option[A]
Given a sequence of
as, sum them using the semigroup and return the total.Given a sequence of
as, sum them using the semigroup and return the total.If the sequence is empty, returns None. Otherwise, returns Some(total).
- Definition Classes
- AdditiveSemigroup
-
def
sumn(a: A, n: Int): A
Return
aadded with itselfntimes.Return
aadded with itselfntimes.- Definition Classes
- AdditiveGroup → AdditiveMonoid → AdditiveSemigroup
-
def
sumnAboveOne(a: A, n: Int): A
- Attributes
- protected
- Definition Classes
- AdditiveSemigroup
-
def
toString(): String
- Definition Classes
- Any