Semantics for probabilistic programming: higher-order functions, continuous distributions, and soft constraints - Staton, Sam; Yang, Hongseok; Wood, Frank; Heunen, Chris; Kammar, Ohad (Proceedings of the 31st Annual ACM/IEEE Symposium on Logic in Computer Science, 2016)
We study the semantic foundation of expressive probabilistic programming languages, that support higher-order functions, continuous distributions, and soft constraints (such as Anglican, Church, and Venture). We define a metalanguage (an idealised version of Anglican) for probabilistic computation with the above features, develop both operational and denotational semantics, and prove soundness, adequacy, and termination. This involves measure theory, stochastic labelled transition systems, and functor categories, but admits intuitive computational readings, one of which views sampled random variables as dynamically allocated read-only variables. We apply our semantics to validate nontrivial equations underlying the correctness of certain compiler optimisations and inference algorithms such as sequential Monte Carlo simulation. The language enables defining probability distributions on higher-order functions, and we study their properties.