SPLASH 2023
Sun 22 - Fri 27 October 2023 Cascais, Portugal
Fri 27 Oct 2023 14:00 - 14:18 at Room I - verification 2 Chair(s): Jonathan Aldrich

One of the most common tools for proving behavioral refinements between transition systems is the method of \emph{simulation} proofs, which has been explored extensively over the past several decades.
Stuttering simulations are an extension of traditional simulations—used, for example, in CompCert—in which either the source or target of the simulation is permitted to ``stutter'' (stay in place) while the other side steps forward.
In the interest of ensuring soundness, however, existing stuttering simulations restrict proofs to only perform a finite number of stuttering steps before making \emph{synchronous progress}—a step of reasoning in which both sides of the simulation progress forward together.
This restriction guarantees that a terminating program cannot be proven to simulate a non-terminating one.

In this paper, we observe that the requirement to eventually achieve synchronous progress is burdensome and, what's more, unnecessary: it is possible to ensure soundness of stuttering simulations while only requiring \emph{asynchronous progress} (progress on both sides of the simulation that may be achieved with only stuttering steps).
Building on this observation, we develop a new simulation technique we call \textbf{FreeSim} (short for ``freely-stuttering simulations''), mechanized in Coq, and we demonstrate its effectiveness on a range of interesting case studies.
These include a simplification of the meta-theory of CompCert, as well as the \textbf{DTrees} library, which enriches the ITrees (Interaction Trees) library with dual non-determinism.

Fri 27 Oct

Displayed time zone: Lisbon change

14:00 - 15:30
verification 2OOPSLA at Room I
Chair(s): Jonathan Aldrich Carnegie Mellon University
14:00
18m
Talk
Stuttering for Free
OOPSLA
Minki Cho Seoul National University, Youngju Song MPI-SWS, Dongjae Lee Seoul National University, Lennard Gäher MPI-SWS, Derek Dreyer MPI-SWS
DOI
14:18
18m
Talk
Generating Proof Certificates for a Language-Agnostic Deductive Program Verifier
OOPSLA
Zhengyao Lin Carnegie Mellon University, Xiaohong Chen University of Illinois at Urbana-Champaign, Minh-Thai Trinh Advanced Digital Sciences Center, John Wang University of Illinois at Urbana-Champaign, Grigore Roşu University of Illinois at Urbana-Champaign
DOI
14:36
18m
Talk
Complete First-Order Reasoning for Properties of Functional Programs
OOPSLA
Adithya Murali University of Illinois at Urbana-Champaign, Lucas Peña University of Illinois at Urbana-Champaign, Ranjit Jhala University of California at San Diego, P. Madhusudan University of Illinois at Urbana-Champaign
DOI
14:54
18m
Talk
Counterexample Driven Quantifier Instantiations with Applications to Distributed Protocols
OOPSLA
Orr Tamir Tel Aviv University, Marcelo Taube Tel Aviv University, Kenneth L. McMillan University of Texas at Austin, Sharon Shoham Tel Aviv University, Jon Howell VMware Research, Guy Gueta VMware Research, Mooly Sagiv Tel Aviv University
DOI
15:12
18m
Talk
A conceptual framework for safe object initialization: a principled and mechanized soundness proof of the Celsius model
OOPSLA
Clément Blaudeau Inria, Fengyun Liu Oracle Labs
Link to publication DOI