Arianna: A Domain-Specific Language for MCMC Algorithms

Project Details


The development of MCMC algorithms involves an implementation in a mathematical language, in addition to one in a programming language. Often further versions are written in faster, lower-level languages (e.g., C++). This development cycle comes with obvious drawbacks (e.g., multiple manual implementations).

We contribute “Arianna” (honoring Rosenbluth), a system for MCMC algorithms based on domain-specific languages (DSLs; special-purpose languages like SQL). Our DSL allows the implementation of algorithms using mathematical notation, which can be translated to different programming languages.

Our DSL constitutes a concise, easily comprehensible, and extensible yet powerful system to streamline MCMC development. We highlight different non-trivial MCMC algorithms including global-local shrinkage priors for factor models.

While researchers retain complete control over the algorithm (no black box), highly optimized backends (e.g., GPU) can be provided by domain specialists. In our presentation we will highlight several backends (Rust for speed, Javascript for in-browser execution, etc.).
Effective start/end date6/01/2030/12/22


  • MCMC
  • Domain-Specific Language
  • Bayesian Computation