An Assertion-Based Program Logic for Probabilistic Programs [chapter]

Gilles Barthe, Thomas Espitau, Marco Gaboardi, Benjamin Grégoire, Justin Hsu, Pierre-Yves Strub
2018 Lecture Notes in Computer Science  
We present Ellora, a sound and relatively complete assertion-based program logic, and demonstrate its expressivity by verifying several classical examples of randomized algorithms using an implementation in the EasyCrypt proof assistant. Ellora features new proof rules for loops and adversarial code, and supports richer assertions than existing program logics. We also show that Ellora allows convenient reasoning about complex probabilistic concepts by developing a new program logic for
more » ... stic independence and distribution law, and then smoothly embedding it into Ellora. This is the conference version of the paper. 1 Treating a program as a function from input states s to output distributions μ(s), the expected value of E on μ(s) is an expectation. Electronic supplementary material The online version of this chapter (https://
doi:10.1007/978-3-319-89884-1_5 fatcat:vuxgmjepovgslhqggyidblsyxe