The mwc-probability package

[ Tags: library, math, mit ] [ Propose Tags ]

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

Properties

Versions 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.1.3, 1.2.0, 1.2.1, 1.2.2, 1.3.0
Dependencies base (>=4.8 && <5), mwc-random (>0.13 && <0.14), primitive (>=0.6 && <1.0), transformers (>=0.5 && <1.0) [details]
License MIT
Author Jared Tobin
Maintainer jared@jtobin.ca
Category Math
Home page http://github.com/jtobin/mwc-probability
Source repository head: git clone http://github.com/jtobin/mwc-probability.git
Uploaded Sun Dec 4 09:19:39 UTC 2016 by JaredTobin
Updated Thu Jul 20 14:48:27 UTC 2017 by HerbertValerioRiedel to revision 1   [What is this?]
Distributions LTSHaskell:1.3.0, NixOS:1.3.0, Stackage:1.3.0, Tumbleweed:1.3.0
Downloads 813 total (72 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2016-12-08 [all 1 reports]
Hackage Matrix CI

Modules

[Index]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees