A simple probability distribution type, where distributions are characterized by sampling functions.
This implementation is a thin layer over 'mwc-random', which handles RNG state-passing automatically by using a 'PrimMonad' like 'IO' or 'ST s' under the hood.
/Examples/
Transform a distribution's support while leaving its density structure invariant:
> -- uniform over [0, 1] to uniform over [1, 2] > succ <$> uniform
Sequence distributions together using bind:
> -- a beta-binomial conjugate distribution > beta 1 10 >>= binomial 10
Use do-notation to build complex joint distributions from composable, local conditionals:
> hierarchicalModel = do > [c, d, e, f] <- replicateM 4 $ uniformR (1, 10) > a <- gamma c d > b <- gamma e f > p <- beta a b > n <- uniformR (5, 10) > binomial n p.
Package Version | Update ID | Released | Package Hub Version | Platforms | Subpackages |
---|---|---|---|---|---|
1.3.0-bp150.2.3 info | GA Release | 2018-08-01 | 15 |
|
|
1.3.0-bp150.2.8 info | GA Release | 2018-07-31 | 15 |
|
|
1.3.0-bp150.2.6 info | GA Release | 2018-07-30 | 15 |
|
|