Spy game: verifying a local generic solver in Iris
Paulo Emílio de Vilhena, François Pottier, Jacques-Henri Jourdan
Abstract
We verify the partial correctness of a "local generic solver", that is, an on-demand, incremental, memoizing least fixed point computation algorithm. The verification is carried out in Iris, a modern breed of concurrent separation logic. The specification is simple: the solver computes the optimal least fixed point of a system of monotone equations. Although the solver relies on mutable internal state for memoization and for "spying", a form of dynamic dependency discovery, it is apparently pure: no side effects are mentioned in its specification. As auxiliary contributions, we provide several illustrations of the use of prophecy variables, a novel feature of Iris; we establish a restricted form of the infinitary conjunction rule; and we provide a specification and proof of Longley's modulus function, an archetypical example of spying.
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
- The future is ours: prophecy variables in separation logicRalf Jung, Rodolphe Lepigre, Gaurav Parthasarathy, Marianna Rapoport et al.POPL 2020 · 62 citations
- RustHornBelt: a semantic foundation for functional verification of Rust programs with unsafe codeYusuke Matsushita, Xavier Denis, Jacques-Henri Jourdan, Derek DreyerPLDI 2022 · 44 citations
- Trace-based control-flow analysisBenoît Montagu, Thomas P. JensenPLDI 2021 · 13 citations
- VST-A: A Foundationally Sound Annotation VerifierLitao Zhou, Jianxing Qin, Qinshi Wang, Andrew W. Appel et al.POPL 2024 · 12 citations
- Logical Relations for Formally Verified Authenticated Data StructuresSimon Oddershede Gregersen, Chaitanya Agarwal, Joseph TassarottiCCS 2025
Related papers
- Raven: An SMT-Based Concurrency VerifierEkanshdeep Gupta, Nisarg Patel, Thomas WiesCAV 2025 · 1 citation
- A separation logic for effect handlersPaulo Emílio de Vilhena, François PottierPOPL 2021 · 24 citations
- Lawyer: Modular Obligations-Based Liveness Reasoning in Higher-Order Impredicative Concurrent Separation LogicEgor Namakonov, Justus Fasse, Bart Jacobs, Lars Birkedal et al.OOPSLA 2026
- Beyond Backtracking: Connections in Fine-Grained Concurrent Separation LogicIke Mulder, Lukasz Czajka, Robbert KrebbersPLDI 2023 · 2 citations
- A concurrent program logic with a future and historyRoland Meyer, Thomas Wies, Sebastian WolffOOPSLA 2022 · 9 citations
