pub mod exponential;
pub mod gaussian;
pub use self::gaussian::Gaussian;
pub use self::exponential::Exponential;
pub mod consts {
pub const SQRT_2_PI: f64 = 2.50662827463100050241576528481104525_f64;
pub const LN_2_PI: f64 = 1.83787706640934548356065947281123527_f64;
}
pub trait Distribution<T> {
fn pdf(&self, x: T) -> f64;
fn logpdf(&self, x: T) -> f64 {
self.pdf(x).ln()
}
fn cdf(&self, x: T) -> f64;
}