Constraint-Based Synthesis of Coupling Proofs

04/11/2018
by   Aws Albarghouthi, et al.
0

Proof by coupling is a classical technique for proving properties about pairs of randomized algorithms by carefully relating (or coupling) two probabilistic executions. In this paper, we show how to automatically construct such proofs for probabilistic programs. First, we present f-coupled postconditions, an abstraction describing two correlated program executions. Second, we show how properties of f-coupled postconditions can imply various probabilistic properties of the original programs. Third, we demonstrate how to reduce the proof-search problem to a purely logical synthesis problem of the form ∃ f∀ Xϕ, making probabilistic reasoning unnecessary. We develop a prototype implementation to automatically build coupling proofs for probabilistic properties, including uniformity and independence of program expressions.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
10/27/2017

Probabilistic Couplings for Probabilistic Reasoning

This thesis explores proofs by coupling from the perspective of formal v...
research
10/29/2018

Trace Abstraction Modulo Probability

We propose trace abstraction modulo probability, a proof technique for v...
research
11/14/2022

Unrealizability Logic

We consider the problem of establishing that a program-synthesis problem...
research
07/24/2019

A Probabilistic Separation Logic

Probabilistic independence is a fundamental tool for reasoning about ran...
research
05/21/2018

One Monad to Prove Them All (Functional Pearl)

One Monad to Prove Them All is a modern fairy tale about curiosity and p...
research
01/19/2019

Kantorovich Continuity of Probabilistic Programs

The Kantorovich metric is a canonical lifting of a distance from sets to...
research
07/10/2017

Deciding Probabilistic Program Equivalence in NetKAT

We tackle the problem of deciding whether a pair of probabilistic progra...

Please sign up or login with your details

Forgot password? Click here to reset