AGV 11.4 -- Parity Games
Previous chapter: Büchi Games
This is a learning note of a course in CISPA, UdS. Taught by Bernd Finkbeiner
Introduction
Perhaps the most intriguing type of infinite games are parity games. Parity games play a key role in verification (in particular for
The algorithm discussed in the following takes exponential time. There are also several quasi-polynomial-time algorithms for solving parity games (starting with a breakthrough result by Calude, Jain, Khoussainov, Li, and Stephan in 2017). In practice, however, these algorithms do not perform well (yet).
Parity Condition
The parity condition is satisfied if the biggest number
Example
The winning region for Player 0:
- Strategy:
( have no choices and is arbitrary)
- Strategy:
The winning region for Player 1:
- Strategy:
- Strategy:
We first prove that parity games are memoryless determined, then derive an algorithm for solving parity games. In the following theorem, we emphasize that determinacy holds also for (countably) infinite game arenas.
This will be helpful when we use the determinacy to complement tree automata, because the acceptance game of a tree automaton refers to the infinite input tree and is therefore infinite.
Here, we try to construct a uniform winning strategy for an arbitrary parity game.
Proof
Let
Case
Case
Note that
- for
, there is a with , otherwise would be in - for
, for all with , , hence there is a with .
Let
Let
Let
Now consider the subgame
Note that
It is also clear that
assume Player (1−
Hence, there is a uniform winning memoryless winning strategy
The strategy
(Set of positions that Player 0 can visit the highest color ) is visited infinitely often. Thus, Player wins.Eventually only positions in
are visited. Hence, since Player follows , Player wins.
Construct with McNaughton’s algorithm
The proof above is non-constructive in the sense that we begin the argument by considering (rather than computing) the set
Explaination
(Line 1): The construction begins by determining the highest color
(Line 2): If this color is 0 (or the arena is empty), then Player 0 wins the game from all positions, function ends.
(Line 3): Otherwise we continue by analyzing the game from the perspective of Player
(Line 4): We initialize the winning region for the opponent to
(Line 5a): First, we eliminate all positions where Player
(Line 5b): We recursively solve the resulting subgame
(line 5c): If the oppoent does not have any winning positions in the subgame, then we are done:
If the play of
stays in the subgame, then Player wins with the winning strategy of the subgame.If the play leaves the subgame, then Player
can enforce a visit to the highest color.
So either the play eventually stays in the subgame forever, and Player
(line 5d): If the opponent wins from some non-empty winning region
The opponent is sure to win from every position in the attractor by first ensuring a visit to
and then staying there forever applying its winning strategy inside .Player
cannot force the game out of the subgame, because was constructed by removing Player ’s attractor from .
(line 5e): We remove the entire attractor from
Example
Consider again the example above.
(line 1): The highest color is
(line 3): k is even, hence
(line 5a): We have that
(line 5b): The recursive call returns
(line 5d): We have that
(line 5e): And
(line 5b): Now, the game does not contain any positions with color 4 anymore, we therefore call the algorithm recursively. It returns
(line 5ci): Since
(line 5cii): Return the final result
Next chapter: Muller Games
AGV 11.4 -- Parity Games
Related Issues not found
Please contact @GreenMeeple to initialize the comment