Monthly Archives: December 2015

An application of computable distributions to the semantics of probabilistic programs

Our attempt to give semantics to a core, functional probabilistic programming language uses computable distributions. The semantics uses largely standard techniques from denotational semantics. One nice property of computable distributions is that they are completely characterized by a sampling algorithm. Hence, it is possible to faithfully implement (in a Turing-complete language) a semantics based on computable distributions as a sampling library.… Read the rest

Posted in Uncategorized | Leave a comment

Semantics of Higher-order Probabilistic Programs

For about an year or so, we have been working on the semantics of higher-order probabilistic programming languages that support continuous distributions, such as Church, Venture and Anglican. Our goal was to verify the correctness of program optimisations that we developed for Anglican, and to understand unusual programming concepts in Anglican, such as nested query and distribution object.… Read the rest

Posted in Uncategorized | 5 Comments

Reasoning about Probability and Nondeterminism

Probabilistic and nondeterministic choice are two standard examples of computational effect, and it is important for some problems to be able to use them in combination — for example, to model probabilistic systems that depend on nondeterministic inputs. However, the algebraic properties that characterise their interaction are tricky to get right (and we have ourselves got them wrong in the past).… Read the rest

Posted in Uncategorized | Tagged | Leave a comment

Insomnia: Types and Modules for Probabilistic Programming

In probabilistic programming languages, model construction and inference are separate tasks. The former is done by the language users and the latter by the language developers. Unfettered by concerns about inference, modelers will want to create big, complex probabilistic programs, which will present familiar problems: Models may become too big to comprehend, debug or validate as wholes.… Read the rest

Posted in Uncategorized | Tagged | Leave a comment

Finite-depth higher-order abstract syntax trees for reasoning about probabilistic programs

We define a core calculus for the purpose of investigating reasoning principles of probabilistic programming languages. By using a variation of a technique called higher-order abstract syntax (HOAS), which is common in the implementation of domain-specific languages, the calculus captures the semantics of a stochastic language with observation while being agnostic to the details of its deterministic portions.… Read the rest

Posted in Uncategorized | Tagged | 1 Comment

The Semantics of Figaro, an Embedded Probabilistic Programming Language

The goal of this paper is to show how semantics can be defined for a real-world probabilistic programming language. Figaro has had numerous applications in areas such as malware analysis, climate modeling, vehicle health maintenance, and intelligence analysis.

The Semantics of Figaro, an Embedded Probabilistic Programming Language

Talk slides on Figaro semantics

Avi Pfeffer and Brian Ruttenberg, Charles River Analytics… Read the rest

Posted in Uncategorized | Leave a comment

A Lambda-Calculus Foundation for Universal Probabilistic Programming

Authors: Johannes Borgström, Ugo Dal Lago, Andrew D. Gordon, Marcin Szymczak

We develop the operational semantics of a probabilistic lambda- calculus with continuous distributions, as a foundation for universal probabilistic programming languages such as Church, Anglican, and Venture. Our first contribution is to adapt the classic operational semantics of lambda-calculus to the continuous case, via creating a measure space on terms and defining step-indexed approximations.… Read the rest

Posted in Uncategorized | 7 Comments


Welcome to PPS, workshop on probabilistic programming semantics, on Saturday, 23 January 2016, colocated with POPL. This informal workshop aims to bring programming-language and machine-learning researchers together to advance the semantic foundations of probabilistic programming.

As listed on the posted schedule, we have accepted 20 extended abstracts submitted by a wide range of contributors.… Read the rest

Posted in Uncategorized | Leave a comment