ICFP 2024
Mon 2 - Sat 7 September 2024 Milan, Italy
Wed 4 Sep 2024 14:06 - 14:24 at Green 1-2-3 - Separation Logic Chair(s): Jacques Garrigue

Almost-sure termination is an important correctness property for probabilistic programs, and a number of program logics have been developed for establishing it. However, these logics have mostly been developed for first-order programs written in languages with specific syntactic patterns for looping. In this paper, we consider almost-sure termination for higher-order probabilistic programs with general references. This combination of features allows for recursion and looping to be encoded through a variety of patterns. Therefore, rather than developing proof rules for reasoning about particular recursion patterns, we instead propose an approach based on proving refinement between a higher-order program and a simpler probabilistic model, in such a way that the refinement preserves termination behavior. By proving a refinement, almost-sure termination behavior of the program can then be established by analyzing the simpler model.

We present this approach in the form of Caliper, a higher-order separation logic for proving termination-preserving refinements. Caliper uses probabilistic couplings to carry out relational reasoning between a program and a model. To handle the range of recursion patterns found in higher-order programs, Caliper uses guarded recursion, in particular the principle of Löb induction. A technical novelty is that Caliper does not require the use of transfinite step indexing or other technical restrictions found in prior work on guarded recursion for termination-preservation refinement. We demonstrate the flexibility of this approach by proving almost-sure termination of several examples, including first-order loop constructs, a random list generator, treaps, and a sampler for Galton-Watson trees that uses higher-order store. All the results have been mechanized in the Coq proof assistant.

Wed 4 Sep

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

13:30 - 15:00
Separation Logic ICFP Papers and Events at Green 1-2-3
Chair(s): Jacques Garrigue Nagoya University
13:30
18m
Talk
Error Credits: Resourceful Reasoning about Error Bounds for Higher-Order Probabilistic ProgramsDistinguished Paper
ICFP Papers and Events
Alejandro Aguirre Aarhus University, Philipp G. Haselwarter Aarhus University, Markus de Medeiros New York University, Kwing Hei Li Aarhus University, Simon Oddershede Gregersen New York University, Joseph Tassarotti New York University, Lars Birkedal Aarhus University
DOI Pre-print
13:48
18m
Talk
Snapshottable StoresDistinguished Paper
ICFP Papers and Events
Clément Allain Inria, Basile Clément OCamlPro, Alexandre Moine Inria, Gabriel Scherer Université Paris Cité - Inria - CNRS
DOI
14:06
18m
Talk
Almost-Sure Termination by Guarded Refinement
ICFP Papers and Events
Simon Oddershede Gregersen New York University, Alejandro Aguirre Aarhus University, Philipp G. Haselwarter Aarhus University, Joseph Tassarotti New York University, Lars Birkedal Aarhus University
DOI Pre-print
14:24
18m
Talk
Refinement Composition Logic
ICFP Papers and Events
Youngju Song MPI-SWS, Dongjae Lee Seoul National University
DOI
14:42
18m
Talk
Specification and Verification for Unrestricted Algebraic Effects and Handling
ICFP Papers and Events
Yahui Song National University of Singapore, Darius Foo National University of Singapore, Wei-Ngan Chin National University of Singapore
DOI Pre-print