114,232 research outputs found
Simple Fixpoint Iteration To Solve Parity Games
A naive way to solve the model-checking problem of the mu-calculus uses
fixpoint iteration. Traditionally however mu-calculus model-checking is solved
by a reduction in linear time to a parity game, which is then solved using one
of the many algorithms for parity games. We now consider a method of solving
parity games by means of a naive fixpoint iteration. Several fixpoint
algorithms for parity games have been proposed in the literature. In this work,
we introduce an algorithm that relies on the notion of a distraction. The idea
is that this offers a novel perspective for understanding parity games. We then
show that this algorithm is in fact identical to two earlier published fixpoint
algorithms for parity games and thus that these earlier algorithms are the
same. Furthermore, we modify our algorithm to only partially recompute deeper
fixpoints after updating a higher set and show that this modification enables a
simple method to obtain winning strategies. We show that the resulting
algorithm is simple to implement and offers good performance on practical
parity games. We empirically demonstrate this using games derived from
model-checking, equivalence checking and reactive synthesis and show that our
fixpoint algorithm is the fastest solution for model-checking games.Comment: In Proceedings GandALF 2019, arXiv:1909.0597
Benchmarks for Parity Games (extended version)
We propose a benchmark suite for parity games that includes all benchmarks
that have been used in the literature, and make it available online. We give an
overview of the parity games, including a description of how they have been
generated. We also describe structural properties of parity games, and using
these properties we show that our benchmarks are representative. With this work
we provide a starting point for further experimentation with parity games.Comment: The corresponding tool and benchmarks are available from
https://github.com/jkeiren/paritygame-generator. This is an extended version
of the paper that has been accepted for FSEN 201
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
Courcelle's Theorem - A Game-Theoretic Approach
Courcelle's Theorem states that every problem definable in Monadic
Second-Order logic can be solved in linear time on structures of bounded
treewidth, for example, by constructing a tree automaton that recognizes or
rejects a tree decomposition of the structure. Existing, optimized software
like the MONA tool can be used to build the corresponding tree automata, which
for bounded treewidth are of constant size. Unfortunately, the constants
involved can become extremely large - every quantifier alternation requires a
power set construction for the automaton. Here, the required space can become a
problem in practical applications.
In this paper, we present a novel, direct approach based on model checking
games, which avoids the expensive power set construction. Experiments with an
implementation are promising, and we can solve problems on graphs where the
automata-theoretic approach fails in practice.Comment: submitte
Zielonka's Recursive Algorithm: dull, weak and solitaire games and tighter bounds
Dull, weak and nested solitaire games are important classes of parity games,
capturing, among others, alternation-free mu-calculus and ECTL* model checking
problems. These classes can be solved in polynomial time using dedicated
algorithms. We investigate the complexity of Zielonka's Recursive algorithm for
solving these special games, showing that the algorithm runs in O(d (n + m)) on
weak games, and, somewhat surprisingly, that it requires exponential time to
solve dull games and (nested) solitaire games. For the latter classes, we
provide a family of games G, allowing us to establish a lower bound of 2^(n/3).
We show that an optimisation of Zielonka's algorithm permits solving games from
all three classes in polynomial time. Moreover, we show that there is a family
of (non-special) games M that permits us to establish a lower bound of 2^(n/3),
improving on the previous lower bound for the algorithm.Comment: In Proceedings GandALF 2013, arXiv:1307.416
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
- …