Formal Foundations for Translational Separation Logic Verifiers
Thibault Dardinier, Michael Sammler, Gaurav Parthasarathy, Alexander J. Summers, Peter Müller
Abstract
Program verification tools are often implemented as front-end translations of an input program into an intermediate verification language (IVL) such as Boogie, GIL, Viper, or Why3. The resulting IVL program is then verified using an existing back-end verifier. A soundness proof for such a translational verifier needs to relate the input program and verification logic to the semantics of the IVL, which in turn needs to be connected with the verification logic implemented in the back-end verifiers. Performing such proofs is challenging due to the large semantic gap between the input and output programs and logics, especially for complex verification logics such as separation logic.
This paper presents a formal framework for reasoning about translational separation logic verifiers. At its center is a generic core IVL that captures the essence of different separation logics. We define its operational semantics and formally connect it to two different back-end verifiers, which use symbolic execution and verification condition generation, resp. Crucially, this semantics uses angelic non-determinism to enable the application of different proof search algorithms and heuristics in the back-end verifiers. An axiomatic semantics for the core IVL simplifies reasoning about the front-end translation by performing essential proof steps once and for all in the equivalence proof with the operational semantics rather than for each concrete front-end translation.
We illustrate the usefulness of our formal framework by instantiating our core IVL with elements of Viper and connecting it to two Viper back-ends as well as a front-end for concurrent separation logic. All our technical results have been formalized in Isabelle/HOL, including the core IVL and its semantics, the semantics of two back-ends for a subset of Viper, and all proofs.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers5
- Destabilizing IrisSimon Spies, Niklas Mück, Haoyi Zeng, Michael Sammler et al.PLDI 2025 · 5 citations
- Foundational Multi-Modal Program VerifiersVladimir Gladshtein, George Pîrlea, Qiyuan Zhao, Vitaly Kurin et al.POPL 2026 · 4 citations
- Compositional Symbolic Execution for the Next 700 Memory ModelsAndreas Lööw, Seung Hoon Park, Daniele Nantes-Sobrinho, Sacha-Élie Ayoun et al.OOPSLA 2025 · 4 citations
- Raven: An SMT-Based Concurrency VerifierEkanshdeep Gupta, Nisarg Patel, Thomas WiesCAV 2025 · 1 citation
- Sound State Encodings in Translational Separation Logic VerifiersHongyi Ling, Thibault Dardinier, Ellen Arlt, Peter MüllerOOPSLA 2026
Builds on15
- RefinedC: automating the foundational verification of C code with refined ownership typesMichael Sammler, Rodolphe Lepigre, Robbert Krebbers, Kayvan Memarian et al.PLDI 2021 · 83 citations
- Gillian, part i: a multi-language platform for symbolic executionJosé Fragoso Santos, Petar Maksimovic, Sacha-Élie Ayoun, Philippa GardnerPLDI 2020 · 38 citations
- Conditional Contextual RefinementYoungju Song, Minki Cho, Dongjae Lee, Chung-Kil Hur et al.POPL 2023 · 29 citations
- Gillian, Part II: Real-World Verification for JavaScript and CPetar Maksimovic, Sacha-Élie Ayoun, José Fragoso Santos, Philippa GardnerCAV 2021 · 21 citations
- Formally Validating a Practical Verification Condition GeneratorGaurav Parthasarathy, Peter Müller, Alexander J. SummersCAV 2021 · 19 citations
Related papers
- Towards Trustworthy Automated Program Verifiers: Formally Validating Translations into an Intermediate Verification LanguageGaurav Parthasarathy, Thibault Dardinier, Benjamin Bonneau, Peter Müller et al.PLDI 2024 · 6 citations
- Verification Algorithms for Automated Separation Logic VerifiersMarco Eilers, Malte Schwerhoff, Peter MüllerCAV 2024 · 5 citations
- Verification-Preserving Inlining in Automatic Separation Logic VerifiersThibault Dardinier, Gaurav Parthasarathy, Peter MüllerOOPSLA 2023 · 5 citations
- An Iris Instance for Verifying CompCert C ProgramsWilliam Mansky, Ke DuPOPL 2024 · 14 citations
- Sound Verification of Security Protocols: From Design to Interoperable ImplementationsLinard Arquint, Felix A. Wolf, Joseph Lallemand, Ralf Sasse et al.S&P 2023
