A short proof of correctness of the quasi-polynomial time algorithm for parity games
Hugo Gimbert, Rasmus Ibsen-Jensen
Parity games
A parity game is given by a directed graph , a starting node , a function which attaches to each a priority from a set ; the main parameter of the game is , the number of nodes, and the second parameter is . Two players Anke and Boris move alternately in the graph with Anke moving first. A move from a node to another node is valid if is an edge in the graph; furthermore, it is required that from every node one can make at least one valid move. The alternate moves by Anke and Boris define an infinite sequence of nodes which is called a play. Anke wins a play through nodes iff is even, otherwise Boris wins the play.
We say that a player wins the parity game if she has a strategy which guarantees the play to be winning for her. Parity games are determined thus either Anke or Boris wins the parity game.
Statistics
The core of the algorithm of Calude et al. is to keep track of statistics about the game, in the form of partial functions
The initial statistic is the empty statistic , which is updated successively by all the priorities visited during the play, thus producing a sequence of statistics. The update of a statistic by a priority is performed by applying successively the following two rules.
Type I update: If is even then it is inserted at the highest index such that is defined and even on .
Type II update: If contains at least one value then is inserted at the highest index such that .
Applying both rules in succession ensures that the update of an increasing statistic is increasing. If rule II triggers an insertion then we say the update is a type II update. Notice that in this case, applying or not rule I in the first place does not change the result. If rule I triggers an insertion but rule II does not then we say the update is a type I update.
Anke (resp. Boris) wins the statistics game if she (resp. he) has a strategy to enforce (resp. to avoid) a visit to a statistic whose domain contains . Similarly to the game of chess, statistics games are determined: either Anke or Boris has a winning strategy .
Correctness of the algorithm
Anke wins the parity game iff she wins the statistics games.
Since statistics games are determined, the direct implication follows from:
If Boris wins the statistics games, he wins the parity game.
Every play won by Boris in the statistics game is won by Boris in the parity game because is odd in every sequence of statistics updates such that , the proof of which follows.
The converse implication (Corollary 1.13) relies on several crucial properties of statistics.
With every statistic is associated its counter value
In the sequel we fix a sequence of statistics updates. We will first give two lemmas that gives information on what can be said when an update of type 1 and 2, respectively, is used on a date.
For all if is a type 1 update, then
Fix a number . Consider the smallest date such that . Then the update on date is of type 1 and
By minimality of we get that (because ). By Lemma 1.7, the update on date has type 1. By Lemma 1.5, we thus get that .
Next, we define even factorization and then show that a long even factorization implies that Anke wins the parity game.
An even factorization of length is a sequence such that for every , the maximum of is even.
We next show that long even sequences exists.
For all , there is an even factorization of length at least .
If Anke wins the statistics game then she wins the parity game.
By definition of the statistics game, Anke can enforce the play to reach a statistic such that .
If is chosen minimal then is an update of type 1 by Corollary 1.9 on entry . Hence, is defined on and is even. This implies that . According to Lemma 1.12, such a play has an even factorization of length . Since is than twice the number of vertices, the play loops on the same vertex at some dates and , while having the same current player, with . By definition of even factorizations, the maximal priority on this loop is even. Thus Boris has no positional winning strategy in the parity game (because if he had followed it, no loop can have even maximal priority), and since parity games are positional , Boris has no winning strategy at all in the parity game.
Consider a fixed . Let . We will show that the following sequence is an even factorization.
For ease of notation, let (note that is not part of the even factorization). For all , let be the last date using rule 1 such that .
Sequence is well-defined. This sequence is well-defined because (1) on the first date where we use rule 1 and , by Corollary 1.9; and (2) (and hence a date exists where ), which is true for by definition of and otherwise follows from Lemma 1.5 because we use rule 1 on date for .
Let be the first date such that . This is well-defined because we have that by Lemma 1.5 (since we use rule 1 on date ). Clearly since by Claim 1. This also implies that . We must thus make an update on date . We cannot make an update of type 1 on date , because would then imply that by Lemma 1.5, which contradicts the choice of (since as noted). We next argue that the update on date cannot be of type 2 either which contradicts that an update have either type 1 or 2, shows that must be even and thus completes the proof of the lemma.
The update on date is not of type 2
Time complexity of solving statistics games
A reachability game is a tuple , where is a set of vertices and is a set of edges. The vertex is a the target vertex. The play starts in some initial vertex , player 1 and 2 alternatively select a vertex . The play then continues to . If the play is ever in , the game ends and player 1 wins, otherwise player 2 wins.
If player has a strategy to ensure a win from some vertex , then is called a winning vertex. The classical algorithm for reachability games is called backward induction and computes in time the set of winning vertices.
Statistics game as a reachability game
Given a parity game , with priorities, vertices and edges, let be the maximum index in the corresponding statistics game. Denote the set of statistics with priorities and being the highest possible index.
The corresponding statistics game is the reachability game with vertices . For every edge and statistic update with , there is an edge from to if or to if .
A naïve upper complexity bound
According to Theorem 1.1, a vertex is winning in the parity game if and only if the vertex is winning in the statistics game.
The statistics game has vertices and edges and there is a naïve upper bound on . This gives a first straightforward upper bound on the complexity of solving parity games:
Tighter upper complexity bounds
We give tighter upper complexity bounds, starting with some bounds on for all .
Each increasing function has a 1-to-1 correspondence with subsets of size of as follows: Let be the set . Observe that since is increasing, for all . Thus has exactly elements. On the other hand, every set corresponds to the function . The function is increasing because for all . There are subsets of size of .
A partial increasing function is a increasing function in its domain. For a fixed , there are domains of size . Since each domain of size corresponds to the domain we can apply Lemma 2.1 and see that there are increasing functions for a fixed domain of size . Thus, there are increasing partial functions in total.
Hence, the time complexity of backwards induction on the statistics game is
Given a parity game with vertices, actions and max priority , the winner of each initial vertex can be found in time
Especially, for , for some constant , the winner can be found in time.
For , the winner can be found in time .
We will give an upper bound on .
Let . For we have that
Observe that .
A trivial bound on for all is . We thus get using Stirling’s approximation that
We first consider the case where for some constant . Observe that is a factor of for this choice of . Also, for we have that . Thus, is decreasing geometrically (with a constant factor of at most ) for and increasing below that. But, is a constant and thus, is . Hence, the time complexity is in this case.
Next we consider smaller values of . Note that is geometrically increasing for a fixed for and geometrically decreasing for . Also, .
Note that the above argument basically finds the maximum of and independently, i.e. without using that it is the same . Thus, one can give better bounds for especially specific values of as a function of . We see that keeps increasing until . Let be the smallest such .
We then get an upper bound on of
This bound is accurate upto a factor of .
Thus, for instance, for , we have that . Inserting this into we get that
where we used Stirling’s approximation for the inequality. We next consider the exponent of .
Inserting it back into the earlier expression, we get that the time complexity is