Improving the complexity of Parys' recursive algorithm

by   Karoliina Lehtinen, et al.

Parys has recently proposed a quasi-polynomial version of Zielonka's recursive algorithm for solving parity games. In this brief note we suggest a variation of his algorithm that improves the complexity to meet the state-of-the-art complexity of broadly 2^O(( n)( c)), while providing polynomial bounds when the number of colours is logarithmic.



There are no comments yet.


page 1

page 2

page 3

page 4


A Recursive Approach to Solving Parity Games in Quasipolynomial Time

Zielonka's classic recursive algorithm for solving parity games is perha...

A Formulation of Recursive Self-Improvement and Its Possible Efficiency

Recursive self-improving (RSI) systems have been dreamed of since the ea...

The Strahler number of a parity game

The Strahler number of a rooted tree is the largest height of a perfect ...

Priority Promotion with Parysian Flair

We develop an algorithm that combines the advantages of priority promoti...

A Recursive Algorithm for Solving Simple Stochastic Games

We present two recursive strategy improvement algorithms for solving sim...

The exact complexity of the Tutte polynomial

This is a survey on the exact complexity of computing the Tutte polynomi...

Bouncing Towers move faster than Hanoi Towers, but still require exponential time

The problem of the Hanoi Tower is a classic exercise in recursive progra...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

In 2017 Calude et al. published the first quasi-polynomial algorithm for solving parity games [CJK17]. Since then, several alternative algorithms have appeared [Leh18, JL17], the most recent of which is Parys’s quasi-polynomial version of the Zielonka’s recursive algorithm [Par].

Parys’s algorithm, although enjoying much of the conceptual simplicity of Zielonka’s algorithm [Zie98], its complexity is a quasi-polynomial factor larger than [CJK17][JL17], and [FJS17]. More precisely, their complexity is, modulo a small polynomial factor, , with being or and , for games with positions and colours. This also provides fixed-parameter tractability and a polynomial bound for the common case where the number of colours is logarithmic in the number of states. We propose a simplification that brings the complexity of Pary’s algorithm down to match this. Note, however, that in a fine grained comparison the recursive algorithm still operates symmetrically, going through every colour, rather than just half of them, and hides a factor of . Thus, a very careful analysis still reveals a small gap.

We also briefly comment on the relationship between this recursive algorithm and universal trees.

1.0.1 Notation

A parity game

is a two-player game between players Even and Odd, on a finite graph

, of which positions are partitioned between those belonging to Even, and those belonging of Odd , and labelled by with integer colour from a finite co-domain by . We assume that every position has a successor and that there are no self-loops.

A play is an infinite path through the game graph. It is winning for Even if the highest colour occurring infinitely often on it is even; else it is winning for Odd. We write for the position in and for its prefix of length .

A strategy for a player maps every prefix of a play ending in a position that belongs to this player to one of its successors. A play agrees with a strategy for Even (Odd) if whenever (), then . A strategy for a player is winning from a position if all plays beginning at that it agrees with are winning for that player. Parity games are determined: from every position, one of the two players has a winning strategy [Mar75].

Even’s (Odd’s) winning region in a parity game is the set of nodes from which Even (Odd) has a winning strategy. We are interested in the problem of computing, given a parity game , the winning regions of each player.

Given a set , the E-attractor of in , written , is the set of nodes from which Even has a strategy which only agrees with plays that reach . O-attractors, written are defined similarly for Odd.

An even dominion is a set of nodes such that nodes in have at least one successor in and nodes in have all of their successors in , and Even has a winning strategy within the game induces by . An odd dominion is defined similarly.

2 The Algorithm

We first recall Parys’ quasi-polynomial version of Zielonka’s algorithm in Algorithm 1. In brief, the difference between this algorithm and Zielonka’s is that this procedure takes a parameter that bounds the size of the dominions the procedure looks for; it first removes one player’s dominions (and their attractors) of size up to half the parameter until this does not yield anything anymore, then searches for a single dominion of the size up to the input parameter, then again carries on with searching for small dominions. In each of the recursive calls, the algorithm solves a parity game with one colour less, and either half the input parameter (most of the time) or the full input parameter (once). The correctness hinges on the observation that only one dominion can be larger than half the size of the game, so the costliest call with the full size of the game as parameter needs to be called just once.

1:  if  then
2:     return  
3:  end if
4:  while  do
9:  end while
14:  while  do
19:  end while
20:  return  
Algorithm 1

Our simplification, in Algorithm 2, replaces each of the two while-loops with a single recursive call that also halves the precision parameter, but, unlike Parys’s algorithm, operates on the whole input game arena at once, rather than on a series of subgames of lower priority.

For both algorithms, the dual, is defined by replacing with and vice-versa.

1:  if  then
2:     return  
3:  end if
10:  if  then
17:  end if
18:  return  
Algorithm 2

3 Correctness

Lemma 1

returns a set that:

  • contains all even dominions up to size , and

  • does not intersect with an odd dominion with size up to .

Similarly, returns a set that:

  • contains all odd dominions up to size , and

  • does not intersect with an even dominion with size up to .


We show this by induction over the sum .

Base case

Since we assume there are no self-loops, non-empty dominions have size at least two; hence any set will do.

Induction step

We consider the case of ; the case of is similar. If , then since i) there are no even dominions of size , and ii) returns , we are done.

Else, we first show i) that returns all even dominions up to size . Let be such a dominion. According to the IH, does not intersect with in line 4 and therefore it does not intersect with on line 5 either. It is therefore contained in on line 6. The intersection of and is an even dominion in , and therefore, from the IH, does not intersect with on line 9 nor its attractor in , . therefore does not intersect with on line 12 and is contained in on line 13. , by IH does not intersect with on line 14, nor its attractor in , and therefore neither does . is therefore contained in the returned .

We proceed with showing ii) that returns a set that does not intersect with odd dominions of size up to . Let be such a dominion, let be the union of odd dominions up to size contained in and let be its O-attractor within .

is contained in on line 4 by IH, and therefore is contained in on line 5 and does not intersect with on line 6. If then is contained in on line 5 and we are done.

We consider the case of . The intersection of and is also an odd dominion in . If is empty, then and therefore, as does not intersect with the returned , we are done. If is non-empty, it contains an odd dominion that does not have a position of colour . on line 8 and by IH is contained in on line 9. is therefore contained in on line 12 and so is the dominion , which is larger than since . Then, is a dominion of on line 13 that is smaller than and therefore contained in on line 14. Hence is included in on line 15 and does not intersect with the returned .

4 Analysis

Let be the number of calls to and of where .

A recursion on shows that . If then and returns immediately. For , we have:


Then, as , this bring the complexity of the simplified algorithm down by a quasi-polynomial factor from Parys’ version.

Remark 1

A -universal tree is a tree into which all trees of height with leaves can be embedded while preserving the ordering of children. These structures have emerged as a unifying thread among quasi-polynomial solutions to parity games and have therefore been the object of a recent spree of attention [CDF19, FGO18, CF]. In particular, the size of a universal trees is at least quasi-polynomial, making this a potentially promising direction for lower bounds. We observe that the call tree where the node has for children its calls to with parameter takes the shape of a universal -tree where is the size of the parity game and its maximal colour. The recursive approach therefore does not seem to be free from universal trees either.

5 Conclusion

This improvement brings the complexity of solving parity games recursively down to a similar complexity to algorithms based on Calude et al.’s method[CJK17, FJS17] and Jurdziński and Lazić’s algorithm [JL17]. In particular it is fixed-parameter tractable, and polynomial when the number of colours is logarithmic. However, since the recursion solves the game symmetrically—that is, it goes through every colour, rather than just every other colour—and since the size of only the guarantees for the even or odd dominions are halved, in the notation both ( vs. ) and ( vs. ) double compared to Jurdziński and Lazić’s algorithm [JL17].

Whether this simplification to the recursion scheme makes this algorithm usable in practice remains to be seen.


  • [CDF19] Wojciech Czerwiński, Laure Daviaud, Nathanaël Fijalkow, Marcin Jurdziński, Ranko Lazić, and Paweł Parys. Universal trees grow inside separating automata: Quasi-polynomial lower bounds for parity games. In Proceedings of the Thirtieth Annual ACM-SIAM Symposium on Discrete Algorithms, pages 2333–2349. SIAM, 2019.
  • [CF] Thomas Colcombet and Nathanaël Fijalkow. Universal graphs and good for small games automata: New tools for infinite duration games. to appear in proceedings of FOSSACS 2019.
  • [CJK17] Cristian S. Calude, Sanjay Jain, Bakhadyr Khoussainov, Wei Li, and Frank Stephan. Deciding parity games in quasipolynomial time. In

    Proceedings of the 49th Annual ACM SIGACT Symposium on Theory of Computing

    , pages 252–263. ACM, 2017.
  • [FGO18] Nathanaël Fijalkow, Paweł Gawrychowski, and Pierre Ohlmann. The complexity of mean payoff games using universal graphs. arXiv preprint arXiv:1812.07072, 2018.
  • [FJS17] John Fearnley, Sanjay Jain, Sven Schewe, Frank Stephan, and Dominik Wojtczak. An ordered approach to solving parity games in quasi polynomial time and quasi linear space. In Proceedings of the 24th ACM SIGSOFT International SPIN Symposium on Model Checking of Software, pages 112–121. ACM, 2017.
  • [JL17] Marcin Jurdziński and Ranko Lazic. Succinct progress measures for solving parity games. In 2017 32nd Annual ACM/IEEE Symposium on Logic in Computer Science (LICS), volume 00, pages 1–9, June 2017.
  • [Leh18] Karoliina Lehtinen. A modal perspective on solving parity games in quasi-polynomial time. In Proceedings of the 33rd Annual ACM/IEEE Symposium on Logic in Computer Science, pages 639–648. ACM, 2018.
  • [Mar75] Donald A Martin. Borel determinacy. Annals of Mathematics, pages 363–371, 1975.
  • [Par] PawełParys. Zielonka’s algorithm in quasi-polynomial time. Online, accessed April 2019:
  • [Zie98] Wieslaw Zielonka. Infinite games on finitely coloured graphs with applications to automata on infinite trees. Theoretical Computer Science, 200(1):135 – 183, 1998.