use_probability_primitives/
basic_usage.rs1use use_probability::{Bernoulli, Probability, independent_union};
2
3fn main() -> Result<(), use_probability::ProbabilityError> {
4 let rain = Probability::from_fraction(1, 4)?;
5 let traffic = Probability::try_new(0.5)?;
6 let either_delay = independent_union(rain, traffic);
7 let commute = Bernoulli::new(rain);
8
9 assert!((either_delay.value() - 0.625).abs() < 1.0e-12);
10 assert_eq!(commute.failure_probability(), Probability::try_new(0.75)?);
11 assert!((commute.variance() - 0.1875).abs() < 1.0e-12);
12
13 Ok(())
14}