An Optimal Value Iteration Algorithm for Parity Games
aa r X i v : . [ c s . G T ] J a n An Optimal Value Iteration Algorithm for Parity Games
Nathanaël FijalkowCNRS, LaBRI, Bordeaux, FranceAlan Turing Institute, London, United KingdomUniversity of Warwick, United Kingdom
Abstract
The quest for a polynomial time algorithm for solving parity games gained momentum in 2017when two different quasipolynomial time algorithms were constructed. In this paper, we furtheranalyse the second algorithm due to Jurdzi ´nski and Lazi´c and called the succinct progress meas-ure algorithm. It was presented as an improvement over a previous algorithm called the smallprogress measure algorithm, using a better data structure.The starting point of this paper is the observation that the underlying data structure for bothprogress measure algorithms are (subgraph-)universal trees. We show that in fact any universaltree gives rise to a value iteration algorithm à la succinct progress measure, and the complexityof the algorithm is proportional to the size of the chosen universal tree. We then show that bothalgorithms are instances of this generic algorithm for two constructions of universal trees, thefirst of exponential size (for small progress measure) and the second of quasipolynomial size (forsuccinct progress measure).The technical result of this paper is to show that the latter construction is asymptoticallytight: universal trees have at least quasipolynomial size. This suggests that the succinct progressmeasure algorithm of Jurdzi ´nski and Lazi´c is in this framework optimal, and that the polynomialtime algorithm for parity games is hiding someplace else.
The notion of parity games is fundamental in the study of logic and automata. Most often funda-mental notions have very simple definitions and they clearly capture a key aspect of the generalproblem of interest. This cannot be said of parity games: the definition takes a bit of time todigest and once understood it is not clear how central it may be. Indeed, it took years, if notdecades, to formulate the right notion to look at.Parity games first appeared in the context of automata over infinite trees. The first and nat-ural idea to define automata over infinite objects is to have so-called Muller conditions, where todetermine whether a run is accepted one considers which states appear infinitely often. Onecan develop a rich theory relating automata and logic over infinite trees using Muller auto-mata, but some properties are very hard to prove, as witnessed for instance by the technical“tour de force” of Rabin for proving the decidability of monadic second-order logic [Rab69]. Theparity condition appeared in an effort to better understand this proof, and its importance be-came manifest: working with parity automata rather than Muller automata gives an arguablyshort and understandable proof of Rabin’s celebrated result. It was introduced independentlyby Mostowski [Mos84, Mos91], who called them “Rabin chain condition”, and Emerson andJutla [EJ91].The crucial property making the technical developments easier is the positional determinacyof parity games, which is the key result used in many constructions for parity automata. In aprecise sense, one can show that the parity objectives form the largest class of Muller objectivesenjoying positional determinacy, a result due to Zielonka [Zie98], see also [DJW97].1he main algorithmic problem about parity games is to solve them, i.e. to construct an al-gorithm taking as input a parity game and determining whether the first player Eve has a winningstrategy. A strong motivation for constructing efficient algorithms for this problem is the worksof Emerson and Jutla [EJ91], who showed that solving parity games is linear-time equivalent tothe model-checking problem for modal µ -calculus. This logical formalism is an establised tool inprogram verification, and a common denominator to a wide range of modal, temporal and fixpointlogics used in various fields.The literature on algorithms for solving parity games is vast. Up until 2017, the best al-gorithms were subexponential. Two breakthroughs came in 2017: first the succinct countingalgorithm of Calude et al [CJK + n O (log( d )) , for n the number of vertices and d the number of priorities.The aim of this paper is to further analyse the second algorithm and to relate it to the notionof universal trees. Under this new light, we construct a mildly improved algorithm and prove itsoptimality within this framework. The arena is the place where the game is played: the first component is a directed graph givenby a set V of vertices and a set E ⊆ V × V of edges. Additionally, an arena features two sets V E and V A of vertices such that V = V E ⊎ V A : the set V E is the set of vertices controlled by Eve, andthe set V A is those controlled by Adam. We represent vertices in V E by circles, and vertices in V A by squares, and also say that v ∈ V E belongs to Eve, and similarly for Adam. The relevantalgorithmic parameters are the number n of vertices and m of edges of the arena.The interaction between the two players consists in moving a token on the vertices of thearena. It is initially on the vertex v , starting the game. When the token is in some vertex, theplayer who controls the vertex chooses an outgoing edge and pushes the token along this edge tothe next vertex. To ensure not to get stuck we usually, although not always, assume that fromany vertex there is an outgoing edge. The outcome of this interaction is the infinite sequence ofvertices traversed by the token, called a play . Plays are usually written π , with π i the i th vertex of π (indexed from ), and π ≤ i the prefix up to length i . We let V ω denote the set of plays, i.e. infinitesequences of vertices, and V ∗ the set of paths, i.e. finite sequences of vertices.A strategy for a player is a full description of his or her moves in all situations. Formally, astrategy is a function σ : V ∗ → E mapping any path to an edge. Traditionally, strategies for Eveare written σ , and strategies for Adam are written τ . We say that a play π is consistent with astrategy σ for Eve if for all i ∈ N such that π i ∈ V E , we have σ ( π i ) = ( π i , π i +1 ) . Once an initial vertex v , a strategy σ for Eve, and a strategy τ for Adam have been fixed, there exists a unique playstarting from v and consistent with both strategies, written π v σ,τ .So far we defined the rules for playing (the arena), the means to play (the strategy), it remainsto explain the goals to achieve (the objective).We fix a set C of colours and equip the arena with a function c : V → C mapping vertices tocolours. An objective Ω is a subset Ω ⊆ C ω , which we interpret as the set of winning plays. Recallthat a play is an element of V ω , so thanks to the mapping c : V → C , it induces an element of C ω . If the element of C ω induced by π is in Ω , we say that π satisfies Ω , or that π is winning. Astrategy σ for Eve is winning from v if for all strategies τ for Adam, the play π v σ,τ is winning. Wesometimes say that the strategy σ ensures Ω , and that Eve wins from v . Definition 1 (Games) . Let C be a set. An arena A is a tuple ( V, E, V E , V A , c ) where ( V, E ) is a directed graph with V = V E ⊎ V A and c : V → C maps vertices to colours. • An objective Ω is a subset Ω ⊆ C ω .A game G is a pair ( A , Ω) where A is an arena and Ω an objective. The generic algorithmic questionwe address is the following decision problem, later refered to as “solving the game”: INPUT : A game G and an initial vertex v QUESTION : Does Eve win from v ? We let W E ( G ) denote the set of vertices from which Eve has a winning strategy in the game G .When the arena is clear from the context and we consider different objectives over the samearena, we write W E (Ω) for the set of vertices from which Eve has a strategy ensuring Ω .We now define the parity objectives. Let d ∈ N be an even number defining the number ofpriorities. The parity objective with parameter d use the set of colours { , , . . . , d } , which arereferred to as priorities, and is defined byParity = (cid:26) π ∈ V ω (cid:12)(cid:12)(cid:12)(cid:12) the largest priority appearinginfinitely often in π is even (cid:27) . We illustrate the definition on two examples. · · · ∈
Parity · · · / ∈ ParityIn the first play the two priorities which appear infinitely often are and , and the largest one is , which is even, and in the second play the only priority which appears infinitely often is andit is odd. Figure 1 presents an example of a parity game. The priority of a vertex is given by itslabel. Figure 1: An example of a parity game.This paper continues a long line of work aiming at constructing efficient algorithms for solvingparity games. Before starting the technical developments, let us discuss two important propertiesof parity games: • They are determined , meaning that from any vertex, either Eve has a winning strategy orAdam has a winning strategy, which symbolically reads W E ( Parity ) ∪ W A ( Parity ) = V ; The are positionally determined , meaning that if Eve has a winning strategy, then she hasa positional one, i.e. of the form σ : V → E . Such a strategy is called positional, sometimesmemoryless, because it picks the next move only considering the current position, forgettingabout the path played so far.The determinacy of parity games follows from very general topological theorems as for instanceMartin’s theorem [Mar75]. The positional determinacy is due to Emerson and Jutla [EJ91]. Organisation of the paper.
In Section 3 we define signatures and show how analysing Zielonka’salgorithm yields the existence of signatures. This result is used in Section 4 for constructing andproving the correctness of the generic value iteration algorithm. Here generic means that the al-gorithm is parameterised by an underlying data structure called a universal tree. We explain howboth the small progress measure and the succinct progress measure algorithms are instances ofthis framework. Section 5 shows asymptotically tight bounds on the size of universal trees.This paper is self-contained, in particular does not rely on two properties mentioned above(determinacy and positional determinacy). More accurately, we obtain them both in the nextsection as by-products of our analysis of Zielonka’s algorithm.
In this section we revisit the notion of signatures for parity games, which will be the key ingredientfor the correctness proof of the generic value iteration algorithm in the next section.The notion of signature was proposed by Büchi [Büc83] and independently by Streett andEmerson [SE84]. Emerson and Jutla [EJ91] used them to give a proof of positional determinacyfor parity games.
Signatures
We work with tuples in [0 , n ] d/ which we index by odd priorities in [1 , d ] . For instance for d = 8 ,an example of a tuple x is x = ( 2 |{z} , |{z} , |{z} , |{z} ) . We order tuples lexicographically, with the largest priority being the most important, so we have (2 , , , > lex (1 , , , . For a priority p and x a tuple in [0 , n ] d/ , we write x ≥ p for the tuple restrictedto priorities larger than or equal to p . For the tuple x above, we have x ≥ = (2 , and x ≥ = (2 , , .We consider functions µ : V → [0 , n ] d/ ∪ {⊤} . It induces a set of orders on vertices called the p -orders: for p a priority and v, v ′ two vertices, we write µ ( v ) ≥ p µ ( v ′ ) if µ ( v ) ≥ p ≥ lex µ ( v ′ ) ≥ p and add ⊤ as the largest element for all p -orders. Definition 2 (Signatures) . Let G be a parity game with n vertices and d priorities. A function µ : V → [0 , n ] d/ ∪ {⊤} is called a signature if it satisfies the following two properties: • If v ∈ V E has priority p , then there exists ( v, v ′ ) ∈ E such that µ ( v ) ≥ p µ ( v ′ ) , and the inequalityis strict if p is odd; • If v ∈ V A has priority p , then for all ( v, v ′ ) ∈ E we have µ ( v ) ≥ p µ ( v ′ ) , and the inequality is strictif p is odd. The notion of signatures is best explained by the following lemma, which reads: a signature isboth a strategy for Eve and a proof that it is winning.
Lemma 1.
For all parity games with n vertices and d priorities, if µ : V → [0 , n ] d/ ∪{⊤} is a signatureand for v ∈ V we have µ ( v ) = ⊤ , then Eve wins from v . roof. We first observe that µ induces a (positional) strategy σ on vertices v ∈ V E such that µ ( v ) = ⊤ . Indeed, for v ∈ V E of priority p , by definition there exists ( v, v ′ ) ∈ E such that µ ( v ) ≥ p µ ( v ′ ) ,define σ ( v ) = v ′ .We claim that σ is winning on the set of vertices v ∈ V such that µ ( v ) = ⊤ . To this end, considera cycle v , v , . . . , v k , v consistent with σ , and assume for the sake of contradiction that the largest priority in the cycleis odd. Without loss of generality we assume v has the largest priority in the cycle, say p . Wethen have by definition of a signature, and noting c ( v i ) the priority of v i : µ ( v ) > p µ ( v ) ≥ c ( v ) µ ( v ) ≥ c ( v ) · · · ≥ c ( v k ) µ ( v ) . Since p is the largest priority in the loop we have c ( v i ) ≥ p , so in particular these inequalities holdfor the coarser p -order ≥ p : µ ( v ) > p µ ( v ) ≥ p µ ( v ) ≥ p · · · ≥ p µ ( v ) . i.e. µ ( v ) > p µ ( v ) , a contradiction. We just proved that all cycles consistent with σ have a largesteven priority, which implies that σ is indeed winning for the parity objective. Theorem 1 (Existence of signatures for parity games [EJ91]) . For all parity games with n verticesand d priorities, there exists a signature µ : V → [0 , n ] d/ ∪ {⊤} such that for all v ∈ V , we have µ ( v ) = ⊤ if and only if Eve wins from v . The original proof is due to Emerson and Jutla [EJ91]. In the remainder of this section we re-visit Zielonka’s algorithm with one objective in mind: obtaining an alternative proof of Theorem 1.
Zielonka’s algorithm
We revisit the first algorithm constructed to solve parity games due to Zielonka [Zie98], adaptingideas from [McN93].The reader familiar with parity games may jump to the next section; this section does notcontain any new results. We hope that the mildly unusual presentation of Zielonka’s algorithmcan give the non-expert reader some insights into parity games, and help reading the rest of thepaper.We introduce some notations. For a set of vertices U ⊆ V , we let Pre ( U ) ⊆ V be the set ofvertices from which Eve can ensure to reach U in one step:Pre ( U ) = { u ∈ V E | ∃ ( u, v ) ∈ E, v ∈ U }∪ { u ∈ V A | ∀ ( u, v ) ∈ E, v ∈ U } . We use Pre ( U ) for the complement of Pre ( U ) . For a colour c , the objective Reach ( c ) is satisfied byplays visiting some vertex of colour c at least once, and Safe ( c ) by plays never visiting any vertexof colour c .Let us consider a parity game G with d priorities. We construct two recursive procedures,which take as input a (small variant of a) parity game with priorities in [1 , p ] and two additionalcolours: { W IN , L OSE } , and output the winning set for Eve. The vertices with colours W IN or L OSE are terminal: when reaching a terminal vertex, the game stops and one of the players is declaredthe winner. Formally, the objective is ( Parity ∪ Reach ( W IN )) ∩ Safe ( L OSE ) . We write V p for the set of vertices of priority p .5 f the largest priority is evenLemma 2. Consider a parity game G with priorities in [1 , p ] with p even.Then W E (( Parity ∪ Reach ( W IN )) ∩ Safe ( L OSE )) is the greatest fixed point of the operator Y W E Parity ∪ Reach [ W IN ∪ ( V p ∩ Pre ( Y ))] ∩ Safe h L OSE ∪ ( V p ∩ Pre ( Y )) i . In words (for the sake of explanation, we assume that W IN = L OSE = ∅ ): W E ( Parity ) is the largestset of vertices Y such that Eve has a strategy ensuring that • either the priority p is never seen, in which case the parity objective is satisfied with lowerpriorities, • or the priority p is seen, in which case Eve can ensure to reach Y in one step. Proof.
We let W denote W E (( Parity ∪ Reach ( W IN )) ∩ Safe ( L OSE )) . The fact that W is included in the greatest fixed point follows from the fact that it is itself afixed point, which is easy to check.To prove that W contains the greatest fixed point, we observe that any fixed point Y is con-tained in W . Indeed, if Y is a fixed point, the strategy described above ensures parity: either itvisits finitely many times p , and then from some point onwards the parity objective is satisfiedwith lower priorities, or it visits infinitely many times p , and then the parity objective is satisfiedbecause p is maximal and even. Note that this strategy is positional, as disjoint union of twopositional strategies, one for vertices of priorities less than p and the other for V p ∩ Pre ( W ) . ALGORITHM 1:
The recursive algorithm when the largest priority is even.
Data:
A parity game with priorities in [1 , p ] with p even and W IN , L OSE two additional colours Y − ← V ; k ← ; repeat W IN k ← V p ∩ Pre ( Y k − ) ;L OSE k ← V p ∩ Pre ( Y k − ) ; Y k = W E Parity ∪ Reach ( W IN ∪ W IN k ) ∩ Safe ( L OSE ∪ L OSE k ) ; k ← k + 1 ; until Y k = Y k − ; return Y k Algorithm 1 fleshes out the fixed point computation described in Lemma 2, which shows thatit outputs Y k = W E (( Parity ∪ Reach ( W IN )) ∩ Safe ( L OSE )) , with W IN k = Y k ∩ V p and L OSE k = ( V \ Y k ) ∩ V p .For each k the computation of Y k is a recursive call: in the new game, vertices with priorities p are marked terminal, and declared winning if in Pre ( Y k − ) ( i.e. color W IN ), losing otherwise (colorL OSE ). So in this game the priorities are in [1 , p − .6igure 2: The two recursive procedures: even on the left and odd on the right. If the largest priority is oddRemark 1.
At this point it is very tempting to say that the odd case is symmetric to the evencase, swapping the role of the two players. We do not take this road, because it requires assumingdeterminacy of parity games which we want to avoid in this presentation, and obtain as a corollary.It is also convenient to have the odd case spelled out for the construction of signatures.
Lemma 3.
Consider a parity game G with priorities in [1 , p ] with p > odd.Then W E (( Parity ∪ Reach ( W IN )) ∩ Safe ( L OSE )) is the least fixed point of the operator X W E Parity ∪ Reach [ W IN ∪ ( V p ∩ Pre ( X ))] ∩ Safe h L OSE ∪ ( V p ∩ Pre ( X )) i . Proof.
We let W denote W E (( Parity ∪ Reach ( W IN )) ∩ Safe ( L OSE )) . The fact that W contains the least fixed point follows from the fact that it is itself a fixed point,which is easy to check.To prove that W is included in the least fixed point is the interesting and non-trivial bit. Itfollows from the observation that any fixed point X contains W . We show that V \ X ⊆ W A (( Parity ∪ Reach ( W IN )) ∩ Safe ( L OSE )) ⊆ V \ W. Note that here we are not relying on the determinacy of parity games: the second inclusion isvery simple and always true, it only says that Eve and Adam cannot win from the same vertex.Indeed, if X is a fixed point, from V \ X Adam has a strategy ensuring that • either the priority p is never seen, in which case the parity objective is violated with lowerpriorities, • or the priority p is seen, in which case Adam can ensure to reach V \ X in one step.This strategy violates parity: either it visits finitely many times p , and then from some pointonwards the parity objective is violated with lower priorities, or it visits infinitely many times p ,and then the parity objective is violated because p is maximal and odd.The base case p = 1 is easily dealt with by computing W E ( Reach ( W IN ) ∩ Safe ( L OSE )) . Zielonka’salgorithm alternates greatest and least fixed point computations, in total d − of them. Each ofthem computes subsets of the vertices, hence stabilises within at most n steps. A careful analysisgives a time complexity bound of O ( m · ( n/d ) d ) [Jur00].7 LGORITHM 2:
The recursive algorithm when the largest priority is odd.
Data:
A parity game with priorities in [1 , p ] with p > odd and W IN , L OSE two additionalcolours X − ← ∅ ; k ← ; repeat W IN k ← V p ∩ Pre ( X k − ) ;L OSE k ← V p ∩ Pre ( X k − ) ; X k = W E Parity ∪ Reach ( W IN ∪ W IN k ) ∩ Safe ( L OSE ∪ L OSE k ) ; k ← k + 1 ; until X k = X k − ; return X k The construction of signatures
We now analyse the structural decomposition unearthed by Zielonka’s algorithm. We fix a paritygame G . For an odd priority p , consider the the non-decreasing sequence of sets of vertices X ( p ) ⊆ X ( p ) ⊆ X ( p ) ⊆ · · · computed by running the algorithm with inputs G andW IN = W E ( Parity ) ∩ V ≥ p ; L OSE = W A ( Parity ) ∩ V ≥ p . We define a function µ : V → [0 , n ] d/ ∪ {⊤} as follows: for p an odd priority, µ ( p )( v ) is the smallest k such that v is in X k ( p ) , and ⊤ if it does not belong to any of these sets. Lemma 4.
The function µ defined above is a signature such that for all v ∈ V , we have µ ( v ) = ⊤ ifand only if Eve wins from v .Proof. We let σ be the positional strategy constructed in the proof of Lemma 3. Let v ∈ V of priority p , we make two observations. • If v ∈ X k ( p ′ ) with p ′ > p , the strategy σ ensures to remain in X k ( p ′ ) in the next step. • If p is odd and v ∈ X k ( p ) , the strategy σ ensures to reach X k − ( p ) in the next step.These two properties imply that µ is a signature. The equivalence between µ ( v ) = ⊤ and the factthat Eve wins from v is a corollary of the correctness of the algorithm given by Lemma 2 andLemma 3. In this section, we define the notion of universal trees, and show how given a universal tree onecan construct a value iteration algorithm for parity games. Both the small progress measure andthe succinct progress measure algorithms are instances of this generic value iteration algorithm.
Let us fix two parameters n and h . The trees we consider have the following properties: • There are totally ordered, meaning that each node has a totally ordered set of children; • They have a designated root and all leaves have depth exactly h .8e say that a tree embeds into another if the first one can be obtained by removing nodesfrom the second, mapping root to root: in graph-theoretic terms, the first tree is a subgraph ofthe second. We say that a tree T is ( n, h ) -universal if all trees with at most n leaves embed into T . (Equivalently, it is enough to require that all trees with exactly n leaves embed into T .) Anexample of a ( n, h ) -universal tree is the complete tree of height h with each node of degree n , ithas n h leaves, as illustrated in Figure 3.Figure 3: On the left, the naive (5 , -universal tree with 25 leaves. On the right, a tree with leaves and height , and one possible embedding into the naive universal tree.The size of a tree is the number of leaves it has. We show in Figure 4 the smallest (5 , -universal tree. It has leaves, which is less than the naive one ( leaves).Figure 4: The smallest (5 , -universal tree has leaves. The small progress measure algorithm casts the problem of constructing a signature as a leastfixed point computation. It assigns to each vertex a tuple in [0 , n ] d/ and updates the values ofthe vertices in order to satisfy the local constraints of signatures. In other words the algorithmmanipulates functions µ : V → [0 , n ] d/ , which can equivalently seen as trees as illustrated inFigure 5. Each vertex is given by its path from the root, which has length d/ , and each directionis labeled by a number in [0 , n ] .Figure 5: A function µ : V → [0 , n ] d/ induces a tree. Here n = 7 and d = 4 .9he tree representation naturally induces the p -orders ≥ p . Indeed, indexing the levels frombottom to top by pairs of priorities as in Figure 5, whether µ ( v ) ≥ p µ ( v ′ ) can be read off the tree:it is equivalent to saying that the ancestor of v at level p is to the left of the ancestor of v ′ at level p . For instance in Figure 5 we have µ ( v ) > µ ( v ) but µ ( v ) = µ ( v ) , and µ ( v ) > µ ( v ) .Now, recall that the end goal of the algorithm is to construct a signature. A closer inspectionat the definition of signatures reveals that the choice of values for the direction is immaterial:the definition only uses the orders ≥ p . In other words, being a signature is a property of theunderlying (totally ordered) tree, and [0 , n ] is just a total order among others. Theorem 1 considers functions µ : V → [0 , n ] d/ ∪ {⊤} , which as we explained can be seen astrees. In the following theorem we fix a universal tree T and we consider functions of the form µ : V → L ( T ) ∪ {⊤} , where L ( T ) is the set of leaves of T .Such a function induces a set of orders on vertices called the p -orders: for p ∈ [1 , d ] and v, v ′ two vertices, we have µ ( v ) ≥ p µ ( v ′ ) if the ancestor at level p of v is to the left of the ancestor at thesame level of v ′ (where levels are indexed as in Figure 5). The element ⊤ is the largest element forall p -orders ≥ p .We extend the definition of signatures to functions µ : V → L ( T ) ∪ {⊤} , using the exact sametwo properties which only depend upon the p -orders ≥ p . Lemma 1 extends mutatis mutandis :indeed, the proof does not depend upon the choice of the underlying universal tree but only onthe p -orders. Theorem 2.
For all parity games with n vertices and d priorities, for all ( n, d/ -universal tree T ,there exists a signature µ : V → L ( T ) ∪ {⊤} such that for all v ∈ V , we have µ ( v ) = ⊤ if and only ifEve wins from v .Proof. Let T be a ( n, d/ -universal tree T and G be a parity game with n vertices and d priorities.Thanks to Theorem 1 there exists a signature µ : V → [0 , n ] d/ ∪ {⊤} such that for all v ∈ V , wehave µ ( v ) = ⊤ if and only if Eve wins from v . As explained in Figure 5 this induces a tree t with atmost n leaves. The crucial property is that µ and t induce the same p -orders ≥ p for all p ∈ [1 , d ] .Since T is ( n, d/ -universal, the tree t embeds into T . Now, this induces a signature µ : V → L ( T ) ∪ {⊤} , since the definition of signatures only depends on the p -orders ≥ p . We construct a value iteration algorithm parameterised by the choice of a universal tree. We fix n the number of vertices and d the number of priorities, and a ( n, d/ -universal tree T . We let ℓ min denote the smallest leaf with respect to ≥ , i.e. the rightmost leaf of T . For v ∈ V of priority p ,define Lift v ( µ ) ∈ L ( T ) to be: • If v ∈ V E , the smallest leaf ℓ with respect to ≥ p such that there exists ( v, v ′ ) ∈ E and ℓ ≥ p µ ( v ′ ) ,with a strict inequality if p is odd; • If v ∈ V A , the smallest leaf ℓ with respect to ≥ p such that for all ( v, v ′ ) ∈ E , we have ℓ ≥ p µ ( v ′ ) ,with a strict inequality if p is odd.The definition of µ being a signature naturally reformulates in: for all v ∈ V , we have µ ( v ) = Lift v ( µ ) .The algorithm is given in Algorithm 3, and its correctness follows from a lemma we presentnow, an exact replica of Theorem 5 in [JL17]. The operator Lift v is extended to functions V → L ( T ) ∪ {⊤} , updating the value of v and leaving the other values unchanged.10 LGORITHM 3:
The generic value iteration algorithm.
Data:
A parity game with n vertices and d priorities. for v ∈ V do µ ( v ) ← ℓ min ; endrepeat Choose v ∈ V such that µ ( v ) = Lift v ( µ ) ; µ ( v ) ← Lift v ( µ ) ; until ∃ v ∈ V, µ ( v ) = Lift v ( µ ) ; return µ Lemma 5.
The set of all functions V → L ( T ) ∪ {⊤} is equipped with the pointwise order inducedfrom L ( T ) ∪ {⊤} , defining a finite complete lattice. For all v ∈ V , the operator Lift v is inflationary andmonotone. As explained in [JL17], it follows from the lemma that from every µ : V → L ( T ) ∪ {⊤} , everysequence of applications of the operators Lift eventually reaches the least simultaneous fixedpoint of all the operators Lift that is greater than or equal to µ . Hence we obtain the correctnessof the generic value iteration algorithm. Theorem 3.
For all n, d ∈ N with d even, for all ( n, d/ -universal tree T , for all parity games with n vertices, m edges, and d priorities, the value iteration algorithm over the tree T outputs a signature µ such that for all v ∈ V , we have µ ( v ) = ⊤ if and only if Eve wins from v .Furthermore, the algorithm runs in time O ( m log( n ) log( d ) · | T | ) , where | T | is the number of leavesof T . Complexity analysis
The value iteration algorithm given above lifts a vertex v at most | T | many times, hence the totalnumber of lifts is at most n | T | . This bound cannot be much improved: for instance a vertex ofpriority with a self-loop is evidently losing but the algorithm will lift the vertex | T | times to getthis information. Computing a lift for v ∈ V can be performed in time O ( deg ( v ) log( n ) log( d )) . Itfollows that the complexity of the algorithm is proportional to the size of the underlying universaltree. Two instances of the generic algorithm
The small progress measure is an instance of the generic value iteration algorithm, using thenaive universal tree of size n h hence giving a running time in n d/ O (1) .The succinct progress measure is an instance of the generic value iteration algorithm usinga universal tree they construct in [JL17]. Indeed Lemma 1 in their paper exactly says thatthe (implicit) tree they construct is universal, by (inductively) constructing embeddings. Theiruniversal tree has quasipolynomial size (we elaborate on its construction in the next section),hence the running time of the succinct progress measure algorithm is n O (log( d )) .We note that they additionally show that for their universal tree lifts can be performed innearly linear space, implying that the overall space complexity is nearly linear. This result isspecific to the universal tree they construct and does not hold in general. We saw in the previous section that constructing universal trees gives value iteration algorithmsfor parity games, and that the smaller the universal tree the better the time complexity. We provein this section upper and lower bounds on the size of universal trees.11 .1 The (streamlined) succinct universal tree of Jurdzi ´nski and Lazi ´c
We present an inductive construction for succinct universal trees. It is essentially the same asthe construction of Jurdzi ´nski and Lazi´c in [JL17], but the framework of universal trees allowsus to avoid some rounding in the original construction, hence a marginal improvement.
Theorem 4.
There exists a ( n, h ) -universal tree with f ( n, h ) leaves, where f satisfies the following: f ( n, h ) = f ( n, h −
1) + f ( ⌊ n/ ⌋ , h ) + f ( n − − ⌊ n/ ⌋ , h ) ,f ( n,
1) = n,f (1 , h ) = 1 . An upper bound is given by f ( n, h ) ≤ ⌈ log( n ) ⌉ (cid:18) ⌈ log( n ) ⌉ + h − ⌈ log( n ) ⌉ (cid:19) . Proof.
To construct the ( n, h ) -universal tree T , let: • T left be a ( ⌊ n/ ⌋ , h ) -universal tree; • T middle be a ( n, h − -universal tree; • T right be a ( n − − ⌊ n/ ⌋ , h ) -universal tree.We construct T as in Figure 6. More precisely, the children of the root is T are, in order: thechildren of T left , then the root of T middle , and then the children of T right .Figure 6: The inductive construction.We argue that T is ( n, h ) -universal. Consider a tree t with n leaves. The question is where tocut in the middle, i.e. which child of the root of t gets mapped to the root of T middle . Let v , . . . , v m be the children of the root of t , and let n ( v i ) be the number of leaves below v i . Since t has n leaves,we have n ( v ) + · · · + n ( v m ) = n . There exists a unique k such that n ( v ) + · · · + n ( v k − ) ≤ ⌊ n/ ⌋ , and n ( v ) + · · · + n ( v k ) > ⌊ n/ ⌋ . For this choice of k we have n ( v k +1 ) + · · · + n ( v m ) ≤ n − − ⌊ n/ ⌋ . To embed t into T , we proceed as follows: • the tree rooted in v p has height h − and at most n leaves, so in embeds into T middle ; • the tree obtaining by restricting t to all nodes to the left of v k has ⌊ n/ ⌋ , so it embeds into T left by induction hypothesis; • the tree obtaining by restricting t to all nodes to the right of v k has n − − ⌊ n/ ⌋ , so it embedsinto T right by induction hypothesis. 12 nalysis of the function f Define F ( p, h ) = f (2 p , h ) for p ≥ and h ≥ . Then we have F ( p, h ) ≤ F ( p, h −
1) + 2 F ( p − , h ) ,F ( p,
1) = 2 p ,F (0 , h ) = 1 . To obtain an upper bound on F we define F by F ( p, h ) = F ( p, h −
1) + 2 F ( p − , h ) ,F ( p,
1) = 2 p ,F (0 , h ) = 1 , so that F ( p, h ) ≤ F ( p, h ) . Define the bivariate generating function F ( x, y ) = X p ≥ ,h ≥ F ( p, h ) x p y h . Plugging the inductive equalities we obtain F ( x, y ) = y − x − y , from which we extract that F ( p, h ) = 2 p (cid:0) p + h − p (cid:1) , implying F ( p, h ) ≤ p (cid:0) p + h − p (cid:1) . Putting everythingtogether we obtain f ( n, h ) ≤ ⌈ log( n ) ⌉ (cid:18) ⌈ log( n ) ⌉ + h − ⌈ log( n ) ⌉ (cid:19) . Note that this is very close and marginally better than the bound obtained in [JL17], which is ⌈ log( n ) ⌉ (cid:0) ⌈ log( n ) ⌉ + h +1 ⌈ log( n ) ⌉ (cid:1) . Corollary 1.
There exists an algorithm solving parity games in time O (cid:18) mn log( n ) log( d ) · (cid:18) ⌈ log( n ) ⌉ + d/ − ⌈ log( n ) ⌉ (cid:19)(cid:19) . Theorem 5.
Any ( n, h ) -universal tree has at least g ( n, h ) leaves, where g satisfies the following: g ( n, h ) = P nδ =1 g ( ⌊ n/δ ⌋ , h − ,g ( n,
1) = n,g (1 , h ) = 1 . A lower bound is given by g ( n, h ) ≥ (cid:18) ⌊ log( n ) ⌋ + h − ⌊ log( n ) ⌋ (cid:19) . This lower bound shares some similarities with a result from Goldberg and Lifschitz [GL68],which is for universal trees of a different kind: the height is not bounded and the children of anode are not ordered.
Proof.
We proceed by induction. The bounds are clear for h = 1 or n = 1 .Let T be a ( n, h ) -universal tree, and δ ∈ [1 , n ] . We claim that the number of nodes at depth h − of degree greater to or larger than δ is at least g ( ⌊ n/δ ⌋ , h − .Let T δ be the subtree of T obtained by removing all leaves and all nodes at depth h − of degreeless than δ : the leaves of the tree T δ have height exactly h − .13e argue that T δ is ( ⌊ n/δ ⌋ , h − -universal. Indeed, let t be a tree with ⌊ n/δ ⌋ leaves all at depth h − . To each leaf of t we append δ children, yielding the tree t + which has ⌊ n/δ ⌋ · δ ≤ n leavesall at depth h . Since T is ( n, h ) -universal, the tree t + embeds into T . Observe that the embeddinginduces an embedding of t into T δ , since the leaves of t have degree δ in t + , hence are also in T δ .So far we proved that the number of nodes at depth h − of degree greater to or larger than δ is at least g ( ⌊ n/δ ⌋ , h − . Now, note that the sum over δ ∈ [1 , n ] of the number of nodes atdepth h − of degree greater to or larger than δ is a lower bound on the number of leaves, whichconcludes. Analysis of the function g Define G ( p, h ) = g (2 p , h ) for p ≥ and h ≥ . Then we have G ( p, h ) ≥ P pk =0 G ( p − k, h − ,G ( p, ≥ ,G (0 , h ) = 1 . To obtain a lower bound on G we proceed similarly as for F . We define G by G ( p, h ) = G ( p, h −
1) + G ( p − , h ) ,G ( p,
1) = 1 ,G (0 , h ) = 1 , so that G ( p, h ) ≥ G ( p, h ) . Define the bivariate generating function G ( x, y ) = X p ≥ ,h ≥ G ( p, h ) x p y h . Plugging the inductive equalities we obtain G ( x, y ) = y − x − y , from which we extract that G ( p, h ) = (cid:0) p + h − p (cid:1) , implying that G ( p, h ) ≥ (cid:0) p + h − p (cid:1) . Putting everythingtogether we obtain g ( n, h ) ≥ (cid:18) ⌊ log( n ) ⌋ + h − ⌊ log( n ) ⌋ (cid:19) . The term (cid:0) ⌊ log( n ) ⌋ + h − ⌊ log( n ) ⌋ (cid:1) was analysed in depth in [JL17] for various regimes relating h and n .It is quasipolynomial, inducing a quasipolynomial lower bound on the time complexity of anyinstance of the generic value iteration algorithm for parity games.The upper and lower bounds do not match perfectly. However, f ( n, h ) g ( n, h ) ≤ ⌈ log( n ) ⌉ ⌊ log( n ) ⌋ + h ⌊ log( n ) ⌋ = O ( nh ) , i.e. they are polynomially related, so it is fair to say that they almost match. We showed that the two versions of the value iteration algorithm, namely small progress measuresand succinct progress measures, can be seen as instances of a generic value iteration algorithmbased on different universal trees.By proving almost tight bounds on the size of universal trees essentially matching the succinctuniversal tree of Jurdzi ´nski and Lazi´c, we show that their result is optimal in this framework.14he bounds are not tight; it would be satisfying to sharpen the lower bound. We conjecture thatthe succinct universal tree we construct in this paper is actually optimal, meaning that thereexist no smaller universal tree.How to proceed with the quest for a polynomial time algorithm for solving parity games? Theother quasipolynomial time algorithm due to Calude et al [CJK +
17] does not fit the framework weintroduce here, hence is not subjected to the quasipolynomial lower bound proved in this paper.Boja ´nczyk and Czerwi ´nski [BC91] offer an interesting perspective on the algorithm of Caludeet al, showing that it provides a solution to the following separation problem.We consider infinite words over the alphabet V . A cycle is a word v · · · v . It is even if the largestpriority is even, and odd otherwise. We define two languages:AllEvenCycles = { π ∈ V ω | all cycles in π are even } , AllOddCycles = { π ∈ V ω | all cycles in π are odd } . We look at deterministic safe automata: all states are accepting, a word is rejected only if thereexists no run for it. Such automata recognise exactly the set of topologically closed languagesover infinite words.The separation problem reads: construct a deterministic safe automaton recognising a lan-guage L ⊆ V ω such that • AllEvenCycles ⊆ L ; • L ∩ AllOddCycles = ∅ ,as illustrated in Figure 7. Figure 7: The separation problem. Lemma 6. If L is a solution to the separation problem, then the winning regions of Parity and L coincide. Consequently, solving the parity game is equivalent to solving a safety game with n · | L | verticesand m · | L | edges, where | L | is the number of states of a deterministic automaton recognising L .Since solving a safety game can be done in linear time, more precisely in O ( m ) , this gives analgorithm for solving parity games whose running time is O ( m · | L | ) . Proof.
This relies on the positional determinacy of parity games. A positional strategy for Eveensuring Parity also ensures AllEvenCycles, hence L . Conversely, a positional strategy for Adamensuring the complement of Parity also ensures AllOddCycles, hence the complement of L .Boja ´nczyk and Czerwi ´nski [BC91] cast the data structure constructed in the algorithm ofCalude et al [CJK +
17] as a solution of the separation problem.15 heorem 6 ([BC91]) . There exists a deterministic safe automaton solving the separation problemwith n O (log( d )) states. The next question is then: can we construct smaller solutions to the separation problem, orcan we prove lower bounds?
Acknowledgments
The notion of universal trees was hinted at me by Marcin Jurdzi ´nski and Ranko Lazi´c. Theylargely contributed to the making of this paper, and I thank them for their support. I am verygrateful to Albert Atserias for pointing out to me the literature on universal graphs, Amos Kormanfor digging into the connection with distance labelings on trees, Paweł Gawrychowski for discus-sions on lower bounds for universal trees, and Élie de Panafieu for his expertise on combinatorialanalysis.
References [BC91] Mikołaj Boja ´nczyk and Wojciech Czerwi ´nski. An automata toolbox. Technical report,University of Warsaw, 1991.[Büc83] J. Richard Büchi. State-strategies for games in F σδ G δσ . Journal of Symbolic Logic ,48(4):1171–1198, 1983.[CJK +
17] Cristian S. Calude, Sanjay Jain, Bakhadyr Khoussainov, Wei Li, and Frank Stephan.Deciding parity games in quasipolynomial time. In
STOC , 2017.[DJW97] Stefan Dziembowski, Marcin Jurdzi ´nski, and Igor Walukiewicz. How much memory isneeded to win infinite games? In
LICS , 1997.[EJ91] E. Allen Emerson and Charanjit S. Jutla. Tree automata, mu-calculus and determinacy(extended abstract). In
FOCS , 1991.[GL68] M. Goldberg and E. Lifshitz. On minimal universal trees.
Matematicheskie Zametki ,4(3):371–380, 1968. (In Russian).[JL17] Marcin Jurdzi ´nski and Ranko Lazi´c. Succinct progress measures for solving paritygames. In
LICS , 2017.[Jur00] Marcin Jurdzi ´nski. Small progress measures for solving parity games. In
STACS , 2000.[Mar75] Donald A. Martin. Borel determinacy.
Annals of Mathematics , 102(2):363–371, 1975.[McN93] Robert McNaughton. Infinite games played on finite graphs.
Annals of Pure and AppliedLogic , 65(2):149–184, 1993.[Mos84] Andrzej W. Mostowski. Regular expressions for infinite trees and a standard form ofautomata. In
Computation Theory , 1984.[Mos91] Andrzej W. Mostowski. Games with forbidden positions. Technical report, 1991.[Rab69] Michael O. Rabin. Decidability of second-order theories and automata on infinite trees.
Transactions of the AMS , 141:1–23, 1969.[SE84] Robert S. Streett and E. Allen Emerson. The propositional mu-calculus is elementary.In
ICALP , 1984.[Zie98] Wiesław Zielonka. Infinite games on finitely coloured graphs with applications to auto-mata on infinite trees.