Roulette: A Language for Expressive, Exact, and Efficient Discrete Probabilistic Programming
This program is tentative and subject to change.
Exact probabilistic inference is a requirement for many applications of probabilistic programming languages (PPLs) such as in high-consequence settings or verification. However, designing and implementing a PPL with scalable high-performance exact inference is difficult: exact inference engines, much like SAT solvers, are intricate low-level programs that are hard to implement. Due to this implementation challenge, PPLs that support scalable exact inference are restrictive and lack many features of general-purpose languages.
This paper presents Roulette, the first discrete probabilistic programming language that combines high-performance exact inference with general-purpose language features. Roulette supports a significant subset of Racket, including data structures, first-class functions, surely-terminating recursion, mutable state, modules, and macros, along with probabilistic features such as finitely supported discrete random variables, conditioning, and top-level inference. The key insight is that there is a close connection between exact probabilistic inference and the symbolic evaluation strategy of Rosette. Building on this connection, Roulette generalizes and extends the Rosette solver-aided programming system to reason about probabilistic rather than symbolic quantities. We prove Roulette sound by generalizing a proof of correctness for Rosette to handle probabilities, and demonstrate its scalability and expressivity on a number of examples.
This program is tentative and subject to change.
Wed 18 JunDisplayed time zone: Seoul change
10:30 - 12:10 | |||
10:30 20mTalk | Random Variate Generation with Formal Guarantees PLDI Research Papers DOI | ||
10:50 20mTalk | Semantics of Integrating and Differentiating Singularities PLDI Research Papers DOI | ||
11:10 20mTalk | Probabilistic Refinement Session Types PLDI Research Papers DOI | ||
11:30 20mTalk | Stochastic Lazy Knowledge Compilation for Inference in Discrete Probabilistic Programs PLDI Research Papers Maddy Bowers Massachusetts Institute of Technology, Alexander K. Lew Massachusetts Institute of Technology; Yale University, Joshua B. Tenenbaum Massachusetts Institute of Technology, Armando Solar-Lezama Massachusetts Institute of Technology, Vikash K. Mansinghka Massachusetts Institute of Technology DOI | ||
11:50 20mTalk | Roulette: A Language for Expressive, Exact, and Efficient Discrete Probabilistic Programming PLDI Research Papers Cameron Moy Northeastern University, Jack Czenszak Northeastern University, John Li Northeastern University, Brianna Marshall Northeastern University, Steven Holtzen Northeastern University DOI |