SPLASH 2023
Sun 22 - Fri 27 October 2023 Cascais, Portugal
Fri 27 Oct 2023 16:54 - 17:12 at Room XII - separation logic Chair(s): Jonathan Aldrich

Formal verification is an effective method to address the challenge of designing correct and efficient concurrent data structures.
But verification efforts often ignore \emph{memory reclamation},
which involves nontrivial synchronization between concurrent accesses and reclamation.
When incorrectly implemented, it may lead to critical safety errors such as use-after-free and the ABA problem.
Semi-automatic safe memory reclamation schemes such as hazard pointers and RCU encapsulate the complexity of manual memory management in modular interfaces.
However, this modularity has not been carried over to formal verification.

We propose modular specifications of hazard pointers and RCU, and formally verify realistic implementations of them in concurrent separation logic.
Specifically, we design abstract predicates for hazard pointers that capture the meaning of \emph{validating} the protection of nodes,
and those for RCU that support \emph{optimistic traversal} to possibly retired nodes.
We demonstrate that the specifications indeed facilitate modular verification
in three criteria: compositional verification, general applicability, and easy integration.
In doing so, we present the first formal verification of Harris's list, the Harris-Michael list, the Chase-Lev deque, and RDCSS with reclamation.
We report the Coq mechanization of all our results in the Iris separation logic framework.

Fri 27 Oct

Displayed time zone: Lisbon change

16:00 - 17:30
separation logicOOPSLA at Room XII
Chair(s): Jonathan Aldrich Carnegie Mellon University
16:00
18m
Talk
Verification-Preserving Inlining in Automatic Separation Logic Verifiers
OOPSLA
Thibault Dardinier ETH Zurich, Gaurav Parthasarathy ETH Zurich, Peter Müller ETH Zurich
DOI
16:18
18m
Talk
Leaf: Modularity for Temporary Sharing in Separation Logic
OOPSLA
Travis Hance Carnegie Mellon University, Jon Howell VMware Research, Oded Padon VMware Research, Bryan Parno Carnegie Mellon University
DOI
16:36
18m
Talk
Proof Automation for Linearizability in Separation Logic
OOPSLA
Ike Mulder Radboud University Nijmegen, Robbert Krebbers Radboud University Nijmegen
DOI Pre-print
16:54
18m
Talk
Modular Verification of Safe Memory Reclamation in Concurrent Separation Logic
OOPSLA
Jaehwang Jung KAIST, Janggun Lee KAIST, Jaemin Choi KAIST, Jaewoo Kim KAIST, Sunho Park KAIST, Jeehoon Kang KAIST
DOI
17:12
18m
Talk
Functional collection programming with semi-ring dictionaries
OOPSLA
Amir Shaikhha University of Edinburgh, Mathieu Huot University of Oxford, Jaclyn Smith Oxford University, Dan Olteanu University of Zurich
Link to publication DOI