Probabilistic programming with densities in SlicStan: efficient, flexible, and deterministic
- Maria I. Gorinova ,
- Andy Gordon ,
- Charles Sutton
Proceedings of the ACM on Programming Languages | , Vol 3(POPL)
This paper provides a formal treatment of the Stan language, and introduces the probabilistic programming language SlicStan — a compositional, self-optimising version of Stan. Our main contributions are (1) the formalisation of a core subset of Stan through an operational density-based semantics; (2) the design and semantics of the Stan-like language SlicStan, which facilities better code reuse and abstraction through its compositional syntax, more flexible functions, and information-flow type system; and (3) a formal, semantic-preserving procedure for translating SlicStan to Stan.