Contextual Equivalence for a Probabilistic Language with Continuous Random Variables and Recursion

07/08/2018
by   Mitchell Wand, et al.
0

We present a complete reasoning principle for contextual equivalence in an untyped probabilistic language. The language includes continuous (real-valued) random variables, conditionals, and scoring. It also includes recursion, since the standard call-by-value fixpoint combinator is expressible. We demonstrate the usability of our characterization by proving several equivalence schemas, including familiar facts from lambda calculus as well as results specific to probabilistic programming. In particular, we use it to prove that reordering the random draws in a probabilistic program preserves contextual equivalence. This allows us to show, for example, that (let x = e_1 in let y = e_2 in e_0) is equivalent to (let y = e_2 in let x = e_1 in e_0) (provided x does not occur free in e_2 and y does not occur free in e_1) despite the fact that e_1 and e_2 may have sampling and scoring effects.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/30/2022

A Probabilistic Call-by-Need Lambda-Calculus – Extended Version

To support the understanding of declarative probabilistic programming la...
research
03/08/2020

The rencontre problem

Let {X^1_k}_k=1^∞, {X^2_k}_k=1^∞, ..., {X^d_k}_k=1^∞ be d independent se...
research
04/27/2020

The Benefit of Being Non-Lazy in Probabilistic λ-calculus

We consider the probabilistic applicative bisimilarity (PAB), a coinduct...
research
12/19/2020

The level crossings of random sums

Let {a_j}_j = 0^N and {b_j}_j = 0^N be sequences of mutually independent...
research
11/07/2022

Asymptotics of the Sketched Pseudoinverse

We take a random matrix theory approach to random sketching and show an ...
research
07/10/2017

Deciding Probabilistic Program Equivalence in NetKAT

We tackle the problem of deciding whether a pair of probabilistic progra...
research
11/23/2022

A Calculus for Amortized Expected Runtimes

We develop a weakest-precondition-style calculus à la Dijkstra for reaso...

Please sign up or login with your details

Forgot password? Click here to reset