A weakest pre-expectation semantics for mixed-sign expectations

We present a weakest-precondition-style calculus for reasoning about the expected values (pre-expectations) of mixed-sign unbounded random variables after execution of a probabilistic program. The semantics of a while-loop is defined as the limit of iteratively applying a functional to a zero-element just as in the traditional weakest pre-expectation calculus, even though a standard least fixed point argument is not applicable in our semantics. A striking feature of our semantics is that it is always well-defined, even if the expected values do not exist. We show that the calculus is sound and allows for compositional reasoning. Furthermore, we present an invariant-based approach for reasoning about pre-expectations of loops.

[1]  Samson Abramsky,et al.  Domain theory , 1995, LICS 1995.

[2]  Joe Hurd,et al.  A Formal Approach to Probabilistic Termination , 2002, TPHOLs.

[3]  Edsger W. Dijkstra,et al.  A Discipline of Programming , 1976 .

[4]  Eric C. R. Hehner,et al.  A probability perspective , 2011, Formal Aspects of Computing.

[5]  Sriram Sankaranarayanan,et al.  Probabilistic Program Analysis with Martingales , 2013, CAV.

[6]  Claire Jones,et al.  Probabilistic non-determinism , 1990 .

[7]  Annabelle McIver,et al.  Partial correctness for probabilistic demonic programs , 2001, Theor. Comput. Sci..

[8]  Joost-Pieter Katoen,et al.  Reasoning about Recursive Probabilistic Programs* , 2016, 2016 31st Annual ACM/IEEE Symposium on Logic in Computer Science (LICS).

[9]  B. Riemann Ueber die Darstellbarkeit einer Function durch eine trigonometrische Reihe , 1867 .

[10]  Annabelle McIver,et al.  Operational versus weakest pre-expectation semantics for the probabilistic guarded command language , 2014, Perform. Evaluation.

[11]  David Cock pGCL for Isabelle , 2014, Arch. Formal Proofs.

[12]  Glynn Winskel,et al.  The formal semantics of programming languages - an introduction , 1993, Foundation of computing series.

[13]  Dexter Kozen,et al.  A probabilistic PDL , 1983, J. Comput. Syst. Sci..

[14]  Thomas A. Henzinger,et al.  Probabilistic programming , 2014, FOSE.

[15]  Johannes Hölzl,et al.  Formalising Semantics for Expected Running Time of Probabilistic Programs , 2016, ITP.

[16]  Annabelle McIver,et al.  Abstraction, Refinement and Proof for Probabilistic Systems , 2004, Monographs in Computer Science.

[17]  Liz Sonenberg,et al.  Fixed Point Theorems and Semantics: A Folk Tale , 1982, Inf. Process. Lett..

[18]  Joost-Pieter Katoen,et al.  Weakest Precondition Reasoning for Expected Run-Times of Probabilistic Programs , 2016, ESOP.

[19]  Marek Karpinski,et al.  Randomized splay trees: Theoretical and experimental results , 2002, Inf. Process. Lett..