trait DistField[A] extends Field[Dist[A]] with DistEuclideanRing[A]
- Alphabetic
- By Inheritance
- DistField
- DistEuclideanRing
- DistRing
- DistRng
- DistSemiring
- Field
- MultiplicativeAbGroup
- MultiplicativeGroup
- EuclideanRing
- CRing
- MultiplicativeCMonoid
- MultiplicativeCSemigroup
- Ring
- Rng
- AdditiveAbGroup
- AdditiveCMonoid
- AdditiveCSemigroup
- AdditiveGroup
- Rig
- MultiplicativeMonoid
- Semiring
- MultiplicativeSemigroup
- AdditiveMonoid
- AdditiveSemigroup
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
def
alg: Field[A]
- Definition Classes
- DistField → DistEuclideanRing → DistRing → DistRng → DistSemiring
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
additive: AbGroup[Dist[A]]
- Definition Classes
- AdditiveAbGroup → AdditiveCMonoid → AdditiveCSemigroup → AdditiveGroup → AdditiveMonoid → AdditiveSemigroup
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
div(x: Dist[A], y: Dist[A]): Dist[A]
- Definition Classes
- DistField → MultiplicativeGroup
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
euclid(a: Dist[A], b: Dist[A])(implicit eq: Eq[Dist[A]]): Dist[A]
- Attributes
- protected[this]
- Definition Classes
- EuclideanRing
- Annotations
- @tailrec()
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
fromDouble(a: Double): Dist[A]
This is implemented in terms of basic Field ops.
This is implemented in terms of basic Field ops. However, this is probably significantly less efficient than can be done with a specific type. So, it is recommended that this method is overriden.
This is possible because a Double is a rational number.
- Definition Classes
- Field
-
def
fromInt(n: Int): Dist[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.- Definition Classes
- Ring
-
def
gcd(x: Dist[A], y: Dist[A]): Dist[A]
- Definition Classes
- DistEuclideanRing → EuclideanRing
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isOne(a: Dist[A])(implicit ev: Eq[Dist[A]]): Boolean
- Definition Classes
- MultiplicativeMonoid
-
def
isZero(a: Dist[A])(implicit ev: Eq[Dist[A]]): Boolean
Tests if
ais zero.Tests if
ais zero.- Definition Classes
- AdditiveMonoid
-
def
lcm(a: Dist[A], b: Dist[A]): Dist[A]
- Definition Classes
- EuclideanRing
-
def
minus(x: Dist[A], y: Dist[A]): Dist[A]
- Definition Classes
- AdditiveGroup
-
def
mod(x: Dist[A], y: Dist[A]): Dist[A]
- Definition Classes
- DistEuclideanRing → EuclideanRing
-
def
multiplicative: AbGroup[Dist[A]]
- Definition Classes
- MultiplicativeAbGroup → MultiplicativeCMonoid → MultiplicativeCSemigroup → MultiplicativeGroup → MultiplicativeMonoid → MultiplicativeSemigroup
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
negate(x: Dist[A]): Dist[A]
- Definition Classes
- DistRng → AdditiveGroup
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
one: Dist[A]
- Definition Classes
- DistRing → MultiplicativeMonoid
-
def
plus(x: Dist[A], y: Dist[A]): Dist[A]
- Definition Classes
- DistSemiring → AdditiveSemigroup
-
def
pow(a: Dist[A], n: Int): Dist[A]
This is similar to
Semigroup#pow, except thata pow 0is defined to be the multiplicative identity. -
def
prod(as: TraversableOnce[Dist[A]]): Dist[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[Dist[A]]): Option[Dist[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: Dist[A], n: Int): Dist[A]
Return
amultiplicated with itselfntimes.Return
amultiplicated with itselfntimes.- Definition Classes
- MultiplicativeGroup → MultiplicativeMonoid → MultiplicativeSemigroup
-
def
prodnAboveOne(a: Dist[A], n: Int): Dist[A]
- Attributes
- protected
- Definition Classes
- MultiplicativeSemigroup
-
def
quot(x: Dist[A], y: Dist[A]): Dist[A]
- Definition Classes
- DistEuclideanRing → EuclideanRing
-
def
quotmod(a: Dist[A], b: Dist[A]): (Dist[A], Dist[A])
- Definition Classes
- EuclideanRing
-
def
reciprocal(x: Dist[A]): Dist[A]
- Definition Classes
- DistField → MultiplicativeGroup
-
def
sum(as: TraversableOnce[Dist[A]]): Dist[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[Dist[A]]): Option[Dist[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: Dist[A], n: Int): Dist[A]
Return
aadded with itselfntimes.Return
aadded with itselfntimes.- Definition Classes
- AdditiveGroup → AdditiveMonoid → AdditiveSemigroup
-
def
sumnAboveOne(a: Dist[A], n: Int): Dist[A]
- Attributes
- protected
- Definition Classes
- AdditiveSemigroup
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
times(x: Dist[A], y: Dist[A]): Dist[A]
- Definition Classes
- DistSemiring → MultiplicativeSemigroup
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
zero: Dist[A]
- Definition Classes
- DistSemiring → AdditiveMonoid