Skip to content

adscib/monad-bayes

 
 

Repository files navigation

monad-bayes

Build Status

The library is now maintained by Tweag I/O. The main repo is now here.

A library for probabilistic programming in Haskell using probability monads. The emphasis is on composition of inference algorithms implemented in terms of monad transformers.

Project status

As of February 2020, we are working towards releasing monad-bayes on Hackage. After the initial release, we will focus on improving documentation. In the meantime, see the models folder for examples.

Background

The basis for the code in this repository is the ICFP 2018 paper [2]. For the code associated with the Haskell2015 paper [1], see the haskell2015 branch.

[1] Adam M. Ścibior, Zoubin Ghahramani, and Andrew D. Gordon. 2015. Practical probabilistic programming with monads. In Proceedings of the 2015 ACM SIGPLAN Symposium on Haskell (Haskell ’15), Association for Computing Machinery, Vancouver, BC, Canada, 165–176.

[2] Adam M. Ścibior, Ohad Kammar, and Zoubin Ghahramani. 2018. Functional programming for modular Bayesian inference. In Proceedings of the ACM on Programming Languages Volume 2, ICFP (July 2018), 83:1–83:29.

[3] Adam M. Ścibior. 2019. Formally justified and modular Bayesian inference for probabilistic programs. Thesis. University of Cambridge.

Installation (using Stack)

Ensure stack is installed by following these instructions.

To clone the repo:

git clone https://github.com/tweag/monad-bayes.git

To run the build:

stack build

To test the code:

stack test

To open an interactive session:

stack ghci

About

A library for probabilistic programming in Haskell.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Haskell 93.3%
  • Python 6.1%
  • Other 0.6%