# Trace abstraction modulo probability

@article{Smith2019TraceAM, title={Trace abstraction modulo probability}, author={Calvin Smith and Justin Hsu and Aws Albarghouthi}, journal={Proceedings of the ACM on Programming Languages}, year={2019}, volume={3}, pages={1 - 31} }

We propose trace abstraction modulo probability, a proof technique for verifying high-probability accuracy guarantees of probabilistic programs. Our proofs overapproximate the set of program traces using failure automata, finite-state automata that upper bound the probability of failing to satisfy a target specification. We automate proof construction by reducing probabilistic reasoning to logical reasoning: we use program synthesis methods to select axioms for sampling instructions, and then… Expand

#### Figures, Tables, and Topics from this paper

#### 7 Citations

Data-Driven Invariant Learning for Probabilistic Programs

- Computer Science
- ArXiv
- 2021

This work proposes a new view of invariant expectation synthesis as a regression problem: given an input state, predict the average value of the postexpectation, and develops the first data-driven invariant synthesis method for probabilistic programs. Expand

Quantitative analysis of assertion violations in probabilistic programs

- Computer Science
- PLDI
- 2021

The main novelty of this approach is that new and dedicated fixed-point theorems are proved which serve as the theoretical basis of the algorithms and enable us to reason about assertion violation bounds in terms of pre and post fixed- point functions. Expand

Synthesizing differentially private programs

- Computer Science
- Proc. ACM Program. Lang.
- 2019

This paper develops a novel type-directed synthesis algorithm that constructs randomized differentially private programs and applies it to the problems of synthesizing database-like queries as well as recursive differential privacy mechanisms from the literature. Expand

A language for probabilistically oblivious computation

- Computer Science
- Proc. ACM Program. Lang.
- 2020

It is proved that Lambda Obliv's type system enforces obliviousness and show that it is expressive enough to typecheck advanced tree-based oblivious RAMs. Expand

Deciding accuracy of differential privacy schemes

- Computer Science
- Proc. ACM Program. Lang.
- 2021

This work identifies program discontinuity as a common theme in existing ad hoc definitions and introduces an alternative notion of accuracy parametrized by, which subsumes the definition used in theoretical computer science, and captures known accuracy claims for differential privacy algorithms. Expand

A Programming Language for Data Privacy with Accuracy Estimations

- Computer Science
- ACM Trans. Program. Lang. Syst.
- 2021

The distinguishing feature of DPella is a novel component that statically tracks the accuracy of different data analyses, and leverages taint analysis for automatically inferring statistical independence of the different noise quantities added for guaranteeing privacy. Expand

A Programming Framework for Differential Privacy with Accuracy Concentration Bounds

- Computer Science
- 2020 IEEE Symposium on Security and Privacy (SP)
- 2020

The distinguishing feature of DPella is a novel component which statically tracks the accuracy of different data analyses, which leverages taint analysis for automatically inferring statistical independence of the different noise quantities added for guaranteeing privacy. Expand

#### References

SHOWING 1-10 OF 102 REFERENCES

Abstract interpretation of programs as Markov decision processes

- Computer Science
- Sci. Comput. Program.
- 2005

A formal language for the specification of trace properties of probabilistic, nondeterministic transition systems, encompassing the properties expressible in Linear Time Logic is proposed, and an enhancement of this technique when the state space is partitioned allowing the use of faster iteration methods. Expand

Abstraction Refinement for Probabilistic Software

- Computer Science
- VMCAI
- 2009

This work uses abstraction-refinement techniques that represent probabilistic programs as Markov decision processes and their abstractions as stochastic two-player games to verify ANSI-C programs that exhibit probabilism behaviour, such as failures or randomisation. Expand

A Program Logic for Union Bounds

- Computer Science, Mathematics
- ICALP
- 2016

A probabilistic Hoare logic aHL based on the union bound, a tool from basic probability theory that enables a clean separation between reasoning about probabilities and reasoning about events, which are expressed as standard first-order formulas in the logic. Expand

Constraint-Based Synthesis of Coupling Proofs

- Computer Science
- CAV
- 2018

This paper presents f-coupled postconditions, an abstraction describing two correlated program executions, and develops a prototype implementation to automatically build coupling proofs for probabilistic properties, including uniformity and independence of program expressions. Expand

Probabilistic Couplings for Probabilistic Reasoning

- Computer Science, Mathematics
- ArXiv
- 2017

An approximate coupling proof of privacy for the Sparse Vector mechanism is given, a well-known algorithm from the privacy literature whose privacy proof is notoriously subtle, and the first formalized proof ofPrivacy for SparseVector in apRHL is produced. Expand

The Probabilistic Model Checking Landscape*

- Computer Science
- 2016 31st Annual ACM/IEEE Symposium on Logic in Computer Science (LICS)
- 2016

This paper surveys the algorithmic verification of probabilistic models, in particular Probabilistic model checking, and provides an informal account of the main models, the underlying algorithms, applications from reliability and dependability analysis—and beyond—and describes recent developments towards automated parameter synthesis. Expand

Probabilistic Program Analysis with Martingales

- Computer Science
- CAV
- 2013

We present techniques for the analysis of infinite state probabilistic programs to synthesize probabilistic invariants and prove almost-sure termination. Our analysis is based on the notion of… Expand

Refinement of Trace Abstraction

- Computer Science
- SAS
- 2009

A central idea enabling this approach is to use interpolants (assertions generated, e.g., by the infeasibility proof for an error trace) in order to automatically construct a finite automaton that recognizes a set of infeasible traces. Expand

Trace abstraction modulo probability

- Computer Science
- 2019

We propose trace abstraction modulo probability, a proof technique for verifying high-probability accuracy guarantees of probabilistic programs. Our proofs overapproximate the set of program traces...

Termination Analysis of Probabilistic Programs Through Positivstellensatz's

- Computer Science
- CAV
- 2016

The approach synthesizes polynomial ranking-supermartingales through Positivstellensatz’s, yielding an efficient method which is not only sound, but also semi-complete over a large subclass of programs. Expand