6 research outputs found
Improved set-based symbolic algorithms for parity games
Graph games with omega-regular winning conditions provide a mathematical framework to analyze a wide range of problems in the analysis of reactive systems and programs (such as the synthesis of reactive systems, program repair, and the verification of branching time properties). Parity conditions are canonical forms to specify omega-regular winning conditions. Graph games with parity conditions are equivalent to mu-calculus model checking, and thus a very important algorithmic problem. Symbolic algorithms are of great significance because they provide scalable algorithms for the analysis of large finite-state systems, as well as algorithms for the analysis of infinite-state systems with finite quotient. A set-based symbolic algorithm uses the basic set operations and the one-step predecessor operators. We consider graph games with n vertices and parity conditions with c priorities (equivalently, a mu-calculus formula with c alternations of least and greatest fixed points). While many explicit algorithms exist for graph games with parity conditions, for set-based symbolic algorithms there are only two algorithms (notice that we use space to refer to the number of sets stored by a symbolic algorithm): (a) the basic algorithm that requires O(n^c) symbolic operations and linear space; and (b) an improved algorithm that requires O(n^{c/2+1}) symbolic operations but also O(n^{c/2+1}) space (i.e., exponential space). In this work we present two set-based symbolic algorithms for parity games: (a) our first algorithm requires O(n^{c/2+1}) symbolic operations and only requires linear space; and (b) developing on our first algorithm, we present an algorithm that requires O(n^{c/3+1}) symbolic operations and only linear space. We also present the first linear space set-based symbolic algorithm for parity games that requires at most a sub-exponential number of symbolic operations
Solving parity games: Explicit vs symbolic
In this paper we provide a broad investigation of the symbolic approach for solving Parity Games. Specifically, we implement in a fresh tool, called, four symbolic algorithms to solve Parity Games and compare their performances to the corresponding explicit versions for different classes of games. By means of benchmarks, we show that for random games, even for constrained random games, explicit algorithms actually perform better than symbolic algorithms. The situation changes, however, for structured games, where symbolic algorithms seem to have the advantage. This suggests that when evaluating algorithms for parity-game solving, it would be useful to have real benchmarks and not only random benchmarks, as the common practice has been
A Comparison of BDD-Based Parity Game Solvers
Parity games are two player games with omega-winning conditions, played on
finite graphs. Such games play an important role in verification,
satisfiability and synthesis. It is therefore important to identify algorithms
that can efficiently deal with large games that arise from such applications.
In this paper, we describe our experiments with BDD-based implementations of
four parity game solving algorithms, viz. Zielonka's recursive algorithm, the
more recent Priority Promotion algorithm, the Fixpoint-Iteration algorithm and
the automata based APT algorithm. We compare their performance on several types
of random games and on a number of cases taken from the Keiren benchmark set.Comment: In Proceedings GandALF 2018, arXiv:1809.0241
Quasipolynomial Set-Based Symbolic Algorithms for Parity Games
Solving parity games, which are equivalent to modal -calculus model
checking, is a central algorithmic problem in formal methods. Besides the
standard computation model with the explicit representation of games, another
important theoretical model of computation is that of set-based symbolic
algorithms. Set-based symbolic algorithms use basic set operations and one-step
predecessor operations on the implicit description of games, rather than the
explicit representation. The significance of symbolic algorithms is that they
provide scalable algorithms for large finite-state systems, as well as for
infinite-state systems with finite quotient. Consider parity games on graphs
with vertices and parity conditions with priorities. While there is a
rich literature of explicit algorithms for parity games, the main results for
set-based symbolic algorithms are as follows: (a) an algorithm that requires
symbolic operations and symbolic space; and (b) an improved
algorithm that requires symbolic operations and symbolic
space. Our contributions are as follows: (1) We present a black-box set-based
symbolic algorithm based on the explicit progress measure algorithm. Two
important consequences of our algorithm are as follows: (a) a set-based
symbolic algorithm for parity games that requires quasi-polynomially many
symbolic operations and symbolic space; and (b) any future improvement
in progress measure based explicit algorithms imply an efficiency improvement
in our set-based symbolic algorithm for parity games. (2) We present a
set-based symbolic algorithm that requires quasi-polynomially many symbolic
operations and symbolic space. Moreover, for the important
special case of , our algorithm requires only polynomially many
symbolic operations and poly-logarithmic symbolic space.Comment: Published at LPAR-22 in 201
Oink: an Implementation and Evaluation of Modern Parity Game Solvers
Parity games have important practical applications in formal verification and
synthesis, especially to solve the model-checking problem of the modal
mu-calculus. They are also interesting from the theory perspective, as they are
widely believed to admit a polynomial solution, but so far no such algorithm is
known. In recent years, a number of new algorithms and improvements to existing
algorithms have been proposed. We implement a new and easy to extend tool Oink,
which is a high-performance implementation of modern parity game algorithms. We
further present a comprehensive empirical evaluation of modern parity game
algorithms and solvers, both on real world benchmarks and randomly generated
games. Our experiments show that our new tool Oink outperforms the current
state-of-the-art.Comment: Accepted at TACAS 201