Open Access
- 15 July 2021
- book chapter
- Published by Springer Nature
- p. 894-917
Abstract
We present a causality-based algorithm for solving two-player reachability games represented by logical constraints. These games are a useful formalism to model a wide array of problems arising, e.g., in program synthesis. Our technique for solving these games is based on the notion of subgoals, which are slices of the game that the reachability player necessarily needs to pass through in order to reach the goal. We use Craig interpolation to identify these necessary sets of moves and recursively slice the game along these subgoals. Our approach allows us to infer winning strategies that are structured along the subgoals. If the game is won by the reachability player, this is a strategy that progresses through the subgoals towards the final goal; if the game is won by the safety player, it is a permissive strategy that completely avoids a single subgoal. We evaluate our prototype implementation on a range of different games. On multiple benchmark families, our prototype scales dramatically better than previously available tools.Keywords
All Related Versions
This publication has 31 references indexed in Scilit:
- Causality-Based Verification of Multi-threaded Programs2013
- Sparse Positional Strategies for Safety GamesElectronic Proceedings in Theoretical Computer Science, 2012
- Synthesis of Reactive(1) designsJournal of Computer and System Sciences, 2012
- Z3: An Efficient SMT Solver2008
- Specify, Compile, Run: Hardware from PSLElectronic Notes in Theoretical Computer Science, 2007
- 12 Modal mu-calculi2007
- A New Algorithm for Strategy Synthesis in LTL GamesLecture Notes in Computer Science, 2005
- A new solution of Dijkstra's concurrent programming problemCommunications of the ACM, 1974
- Three uses of the Herbrand-Gentzen theorem in relating model theory and proof theoryThe Journal of Symbolic Logic, 1957
- Nim, A Game with a Complete Mathematical TheoryAnnals of Mathematics, 1901