Trait rv::traits::DiscreteDistr[][src]

pub trait DiscreteDistr<X>: Rv<X> + Support<X> {
    fn pmf(&self, x: &X) -> f64 { ... }
fn ln_pmf(&self, x: &X) -> f64 { ... } }

Is a discrete probability distribution

Provided Methods

Probability mass function (PMF) at x

Panics

If x is not supported

Example

The probability of a fair coin coming up heads in 0.5

use rv::dist::Bernoulli;
use rv::traits::DiscreteDistr;

// Fair coin (p = 0.5)
let b = Bernoulli::uniform();

assert!( (b.pmf(&true) - 0.5).abs() < 1E-12);

Natural logarithm of the probability mass function (PMF)

Panics

If x is not supported

Example

The probability of a fair coin coming up heads in 0.5

use rv::dist::Bernoulli;
use rv::traits::DiscreteDistr;

// Fair coin (p = 0.5)
let b = Bernoulli::uniform();

assert!( (b.ln_pmf(&true) - 0.5_f64.ln()).abs() < 1E-12);

Implementors