Sound Automation of Magic Wands
Thibault Dardinier, Gaurav Parthasarathy, Noé Weeks, Peter Müller, Alexander J. Summers
Abstract
Abstract The magic wand -∗ (also called separating implication) is a separation logic connective commonly used to specify properties of partial data structures, for instance during iterative traversals. Afootprintof a magic wand formula "Equation missing"is a state that, combined with any state in whichAholds, yields a state in whichBholds. The key challenge of proving a magic wand (also calledpackaginga wand) is to find such a footprint. Existing package algorithms either have a high annotation overhead or, as we show in this paper, are unsound. We present a formal framework that precisely characterises a wide design space of possible package algorithms applicable to a large class of separation logics. We prove in Isabelle/HOL that our formal framework is sound and complete, and use it to develop a novel package algorithm that offers competitive automation and is sound. Moreover, we present a novel, restricted definition of wands and prove in Isabelle/HOL that it is possible to soundly combine fractions of such wands, which is not the case for arbitrary wands. We have implemented our techniques for the Viper language, and demonstrate that they are effective in practice.
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.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext ab07b1d1-6a1e-4d1f-b72d-a22348e3fb35Cited by top-tier papers6
- A Hybrid Approach to Semi-automated Rust VerificationSacha-Élie Ayoun, Xavier Denis, Petar Maksimovic, Philippa GardnerPLDI 2025 · 9 citations
- Formal Foundations for Translational Separation Logic VerifiersThibault Dardinier, Michael Sammler, Gaurav Parthasarathy, Alexander J. Summers et al.POPL 2025 · 8 citations
- Verification-Preserving Inlining in Automatic Separation Logic VerifiersThibault Dardinier, Gaurav Parthasarathy, Peter MüllerOOPSLA 2023 · 5 citations
- Fractional resources in unbounded separation logicThibault Dardinier, Peter Müller, Alexander J. SummersOOPSLA 2022 · 5 citations
- Protocols to Code: Formal Verification of a Secure Next-Generation Internet RouterJoão C. Pereira, Tobias Klenze, Sofia Giampietro, Markus Limbeck et al.CCS 2025 · 1 citation
Builds on1
Related papers
- Abductive Inference of Separation Logic Specifications with Isorecursive User-Defined Predicates and Magic WandsNicolas Klose, Peter MüllerOOPSLA 2026 · 1 citation
- Sound State Encodings in Translational Separation Logic VerifiersHongyi Ling, Thibault Dardinier, Ellen Arlt, Peter MüllerOOPSLA 2026
- Verification Algorithms for Automated Separation Logic VerifiersMarco Eilers, Malte Schwerhoff, Peter MüllerCAV 2024 · 5 citations
- Beyond Backtracking: Connections in Fine-Grained Concurrent Separation LogicIke Mulder, Lukasz Czajka, Robbert KrebbersPLDI 2023 · 2 citations
- Towards a unified proof framework for automated fixpoint reasoning using matching logicXiaohong Chen, Minh-Thai Trinh, Nishant Rodrigues, Lucas Peña et al.OOPSLA 2020 · 7 citations
