Control-Data Separation and Logical Condition Propagation for Efficient Inference on Probabilistic Programs

01/05/2021
by   Ichiro Hasuo, et al.
0

We introduce a novel sampling algorithm for Bayesian inference on imperative probabilistic programs. It features a hierarchical architecture that separates control flows from data: the top-level samples a control flow, and the bottom level samples data values along the control flow picked by the top level. This separation allows us to plug various language-based analysis techniques in probabilistic program sampling; specifically, we use logical backward propagation of observations for sampling efficiency. We implemented our algorithm on top of Anglican. The experimental results demonstrate our algorithm's efficiency, especially for programs with while loops and rare observations.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/24/2023

Asynchronous Probabilistic Couplings in Higher-Order Separation Logic

Probabilistic couplings are the foundation for many probabilistic relati...
research
07/14/2023

Exact Bayesian Inference for Loopy Probabilistic Programs

We present an exact Bayesian inference method for inferring posterior di...
research
04/08/2021

Sound Probabilistic Inference via Guide Types

Probabilistic programming languages aim to describe and automate Bayesia...
research
09/26/2021

Statically Bounded-Memory Delayed Sampling for Probabilistic Streams

Probabilistic programming languages aid developers performing Bayesian i...
research
07/18/2023

Newtonian Program Analysis of Probabilistic Programs

Due to their quantitative nature, probabilistic programs pose non-trivia...
research
09/12/2023

Compositional Separation of Control Flow and Data Flow

Every constructive model of computation (CMC) has an underlying composit...
research
09/10/2020

Disjunctive Delimited Control

Delimited control is a powerful mechanism for programming language exten...

Please sign up or login with your details

Forgot password? Click here to reset