Solving Parity Games in Practice

Parity games are 2-player games of perfect information and infinite duration that have important applications in automata theory and decision procedures (validity as well as model checking) for temporal logics. In this paper we investigate practical aspects of solving parity games. The main contribution is a suggestion on how to solve parity games efficiently in practice: we present a generic solver that intertwines optimisations with any of the existing parity game algorithms which is only called on parts of a game that cannot be solved faster by simpler methods. This approach is evaluated empirically on a series of benchmarking games from the aforementioned application domains, showing that using this approach vastly speeds up the solving process. As a side-effect we obtain the surprising observation that Zielonka's recursive algorithm is the best parity game solver in practice.

[1]  Robert E. Tarjan,et al.  Depth-First Search and Linear Graph Algorithms , 1972, SIAM J. Comput..

[2]  Robin Milner,et al.  On Observing Nondeterminism and Concurrency , 1980, ICALP.

[3]  S. Safra,et al.  On the complexity of omega -automata , 1988, [Proceedings 1988] 29th Annual Symposium on Foundations of Computer Science.

[4]  E. Allen Emerson,et al.  Tree automata, mu-calculus and determinacy , 1991, [1991] Proceedings 32nd Annual Symposium of Foundations of Computer Science.

[5]  Insup Lee,et al.  CONCUR '95: Concurrency Theory , 1995, Lecture Notes in Computer Science.

[6]  Colin Stirling,et al.  Lokal Model Checking Games , 1995, CONCUR.

[7]  Wieslaw Zielonka,et al.  Infinite Games on Finitely Coloured Graphs with Applications to Automata on Infinite Trees , 1998, Theor. Comput. Sci..

[8]  Marcin Jurdziński,et al.  Deciding the Winner in Parity Games is in UP \cap co-Up , 1998, Inf. Process. Lett..

[9]  Alex K. Simpson,et al.  Computational Adequacy in an Elementary Topos , 1998, CSL.

[10]  Perdita Stevens,et al.  Practical Model-Checking Using Games , 1998, TACAS.

[11]  Marcin Jurdzinski,et al.  A Discrete Strategy Improvement Algorithm for Solving Parity Games , 2000, CAV.

[12]  Marcin Jurdzinski,et al.  Small Progress Measures for Solving Parity Games , 2000, STACS.

[13]  Igor Walukiewicz,et al.  Games for synthesis of controllers with partial observation , 2003, Theor. Comput. Sci..

[14]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[15]  Wolfgang J. Paul,et al.  Towards a Worldwide Verification Technology , 2005, VSTTE.

[16]  Nir Piterman,et al.  From Nondeterministic Buchi and Streett Automata to Deterministic Parity Automata , 2006, 21st Annual IEEE Symposium on Logic in Computer Science (LICS'06).

[17]  Uri Zwick,et al.  A deterministic subexponential algorithm for solving parity games , 2006, SODA '06.

[18]  Sven Schewe Solving Parity Games in Big Steps , 2007, FSTTCS.

[19]  Sanjiva Prasad,et al.  FSTTCS 2007: Foundations of Software Technology and Theoretical Computer Science, 27th International Conference, New Delhi, India, December 12-14, 2007, Proceedings , 2007, FSTTCS.

[20]  Jaco van de Pol,et al.  A Multi-Core Solver for Parity Games , 2008, Electron. Notes Theor. Comput. Sci..

[21]  Sven Schewe,et al.  An Optimal Strategy Improvement Algorithm for Solving Parity and Payoff Games , 2008, CSL.

[22]  Thomas Wilke,et al.  Complementation, Disambiguation, and Determinization of Büchi Automata Unified , 2008, ICALP.

[23]  Nathaniel Charlton,et al.  Polynomial-Time Under-Approximation of Winning Regions in Parity Games , 2009, Electron. Notes Theor. Comput. Sci..