Verifying higher-order concurrency with data automata
Alex Dixon, Ranko Lazic, Andrzej S. Murawski, Igor Walukiewicz
Abstract
Using a combination of automata-theoretic and game-semantic techniques, we propose a method for analysing higher-order concurrent programs. Our language of choice is Finitary Idealised Concurrent Algol (FICA) due to its relatively simple fully abstract game model.
Our first contribution is an automata model over a treestructured infinite data alphabet, called split automata, whose distinctive feature is the separation of control and memory. We show that every FICA term can be translated into such an automaton. Thanks to the structure of split automata, we are able to observe subtle aspects of the underlying game semantics.
This enables us to identify a fragment of FICA with iteration and limited synchronisation (but without recursion), for which, in contrast to the whole FICA, a variety of verification problems turn out to be decidable.
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 22c14bc8-8117-47f2-8f32-b4c0ef369b32Builds on1
Related papers
- The Geometry of Causality: Multi-token Geometry of Interaction and Its Causal UnfoldingSimon Castellan, Pierre ClairambaultPOPL 2023 · 2 citations
- Deductive verification with ghost monitorsMartin Clochard, Claude Marché, Andrei PaskevichPOPL 2020 · 12 citations
- Operational Algorithmic Game SemanticsBenedict Bunting, Andrzej S. MurawskiLICS 2023 · 1 citation
- Decision Procedures for Sequence TheoriesArtur Jez, Anthony W. Lin, Oliver Markgraf, Philipp RümmerCAV 2023 · 8 citations
- Sound sequentialization for concurrent program verificationAzadeh Farzan, Dominik Klumpp, Andreas PodelskiPLDI 2022 · 24 citations
