Abstract
We consider algorithms for parity games that use attractor decomposition, such as Zielonka’s recursive algorithm, priority promotion, and tangle learning. In earlier work, we identified the Two Counters parity game family that requires exponential time for many algorithms, including attractor decomposition algorithms, and we identified the main mechanism that slows down parity game algorithms as so-called distractions. We observe a fundamentally different approach in avoiding distractions between algorithms that use attractor decomposition and algorithms that compute progress measures. We now propose an alternative attractor-based method to avoid distractions by applying the attractor decomposition recursively. We demonstrate that this algorithm solves the Two Counters games efficiently, but that a modification of the Two Counters method can also delay the recursive algorithm exponentially.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
See generators counter_ortl and tc+ at https://www.github.com/trolando/oink.
- 2.
Available online via https://www.github.com/trolando/oink.
- 3.
Available online via https://www.github.com/trolando/oink.
References
Benerecetti, M., Dell’Erba, D., Mogavero, F.: Solving parity games via priority promotion. In: Chaudhuri, S., Farzan, A. (eds.) Computer Aided Verification: 28th International Conference, CAV 2016, Toronto, ON, Canada, July 17-23, 2016, Proceedings, Part II, pp. 270–290. Springer International Publishing, Cham (2016). https://doi.org/10.1007/978-3-319-41540-6_15
Benerecetti, M., Dell’Erba, D., Mogavero, F.: Solving parity games via priority promotion. Formal Methods Syst. Design 52(2), 193–226 (2018)
Berwanger, D., Grädel, E., Lenzi, G.: On the variable hierarchy of the modal \(mu\)-calculus. In: Bradfield, J. (ed.) CSL 2002. LNCS, vol. 2471, pp. 352–366. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45793-3_24
Calude, C.S., Jain, S., Khoussainov, B., Li, W., Stephan, F.: Deciding parity games in quasipolynomial time. In: STOC, pp. 252–263. ACM (2017)
Chatterjee, K., Fijalkow, N.: A reduction from parity games to simple stochastic games. In: GandALF EPTCS, vol. 54, pp. 74–86 (2011)
Condon, A.: The complexity of stochastic games. Inf. Comput. 96(2), 203–224 (1992)
Dam, M.: CTL* and ECTL* as fragments of the modal mu-calculus. Theor. Comput. Sci. 126(1), 77–96 (1994)
van Dijk, T.: Attracting tangles to solve parity games. In: Chockler, H., Weissenbacher, G. (eds.) Computer Aided Verification: 30th International Conference, CAV 2018, Held as Part of the Federated Logic Conference, FloC 2018, Oxford, UK, July 14-17, 2018, Proceedings, Part II, pp. 198–215. Springer International Publishing, Cham (2018). https://doi.org/10.1007/978-3-319-96142-2_14
van Dijk, T.: Oink: an implementation and evaluation of modern parity game solvers. In: Beyer, D., Huisman, M. (eds.) Tools and Algorithms for the Construction and Analysis of Systems: 24th International Conference, TACAS 2018, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2018, Thessaloniki, Greece, April 14-20, 2018, Proceedings, Part I, pp. 291–308. Springer International Publishing, Cham (2018). https://doi.org/10.1007/978-3-319-89960-2_16
van Dijk, T.: A parity game tale of two counters. In: GandALF. EPTCS, vol. 305, pp. 107–122 (2019)
van Dijk, T.: RTL experiments (may 2024). https://doi.org/10.5281/zenodo.11265650
van Dijk, T., van Abbema, F., Tomov, N.: Knor: reactive synthesis using Oink. In: Finkbeiner, B., Kovács, L. (eds.) Tools and Algorithms for the Construction and Analysis of Systems: 30th International Conference, TACAS 2024, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2024, Luxembourg City, Luxembourg, April 6–11, 2024, Proceedings, Part I, pp. 103–122. Springer Nature Switzerland, Cham (2024). https://doi.org/10.1007/978-3-031-57246-3_7
van Dijk, T., Rubbens, B.: Simple fixpoint iteration to solve parity games. In: GandALF. EPTCS, vol. 305, pp. 123–139 (2019)
Emerson, E.A., Jutla, C.S.: Tree automata, mu-calculus and determinacy (extended abstract). In: FOCS, pp. 368–377. IEEE Computer Society (1991)
Fearnley, J., Jain, S., Schewe, S., Stephan, F., Wojtczak, D.: An ordered approach to solving parity games in quasi polynomial time and quasi linear space. In: SPIN, pp. 112–121. ACM (2017)
Halman, N.: Simple stochastic games, parity games, mean payoff games and discounted payoff games are all lp-type problems. Algorithmica 49(1), 37–50 (2007)
Jacobs, S., et al.: The 5th reactive synthesis competition (SYNTCOMP 2018): Benchmarks, participants & results. CoRR abs/1904.07736 (2019)
Jurdziński, M.: Small progress measures for solving parity games. In: Reichel, H., Tison, S. (eds.) STACS 2000, pp. 290–301. Springer Berlin Heidelberg, Berlin, Heidelberg (2000). https://doi.org/10.1007/3-540-46541-3_24
Jurdzinski, M., Lazic, R.: Succinct progress measures for solving parity games. In: LICS, pp. 1–9. IEEE Computer Society (2017)
Keiren, J.: Parity games (2018). https://doi.org/10.6084/m9.figshare.6004130.v1
Keiren, J.J.A.: Benchmarks for parity games. In: Dastani, M., Sirjani, M. (eds.) Fundamentals of Software Engineering: 6th International Conference, FSEN 2015, Tehran, Iran, April 22-24, 2015. Revised Selected Papers, pp. 127–142. Springer International Publishing, Cham (2015). https://doi.org/10.1007/978-3-319-24644-4_9
Lapauw, R., Bruynooghe, M., Denecker, M.: Improving parity game solvers with justifications. In: Beyer, D., Zufferey, D. (eds.) Verification, Model Checking, and Abstract Interpretation: 21st International Conference, VMCAI 2020, New Orleans, LA, USA, January 16–21, 2020, Proceedings, pp. 449–470. Springer International Publishing, Cham (2020). https://doi.org/10.1007/978-3-030-39322-9_21
Meyer, P.J., Sickert, S., Luttenberger, M.: Strix: explicit reactive synthesis strikes back! In: Chockler, H., Weissenbacher, G. (eds.) Computer Aided Verification: 30th International Conference, CAV 2018, Held as Part of the Federated Logic Conference, FloC 2018, Oxford, UK, July 14-17, 2018, Proceedings, Part I, pp. 578–586. Springer International Publishing, Cham (2018). https://doi.org/10.1007/978-3-319-96145-3_31
Parys, P.: Parity games: Zielonka’s algorithm in quasi-polynomial time. In: MFCS. LIPIcs, vol. 138, pp. 10:1–10:13. Schloss Dagstuhl - Leibniz-Zentrum für Informatik (2019)
Renkin, F., Schlehuber, P., Duret-Lutz, A., Pommellet, A.: Improvements to ltlsynt. CoRR abs/2201.05376 (2022), presented at SYNT 2021
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Ethics declarations
Data Availability Statement
The software, benchmarks and analysed dataset are available as [11] and on Github as: https://github.com/trolando/rtl-experiments. In addition, the version of the algorithms studied in the current paper is tagged in the Github repository of Oink as: https://github.com/trolando/oink/tree/ISOLA24.
Optimizations
Optimizations
We describe several optimizations for large practical games. These optimizations are all implemented in OinkFootnote 3. Some of these optimizations were already described in the original paper on tangle learning [8].
-
1.
After attracting to all vertices of the highest priority: if the next highest priority is of the same parity, we simply continue attracting.
-
2.
To check if a region is closed, we only check the top vertices (that we attracted towards). We already know that attracted vertices of player \(\alpha \) play to the region and that attracted vertices of player \({\overline{\alpha }}\) cannot escape to the remaining subgame.
-
3.
If the highest region in the game is closed, then we immediately add it to the corresponding winning region and remove it from the game.
-
4.
We do not need to check if the lowest region is open, as it is always closed.
-
5.
When attracting vertices and tangles, we track the number of remaining edges towards the remaining game; when this number is 0, the vertex of player \({\overline{\alpha }}\) or the tangle can be attracted.
-
6.
We only run Tarjan’s algorithm starting from the top vertices. Tarjan’s algorithm may find SCCs that are existing tangles; in the example of Fig. 2b, if we had learned the tangle \(\{2,1\rightarrow 2\}\) before and we attracted that tangle to region 6 instead of attracting 1 to 8, then region 6 would be closed and contain two SCCs, but only one new tangle. We can avoid duplicate tangles by only running Tarjan’s algorithm starting from the top vertices.
-
7.
When running Tarjan’s algorithm, we immediately add dominions to a special queue so they can be processed afterwards, instead of separating dominions from other tangles later.
-
8.
An optional optimization that improves the solver for some parity games, but delays it for other parity games: if a region is open, remove all open vertices O and iteratively remove all player \({\overline{\alpha }}\) controlled vertices with an edge to the removed vertices and all player \(\alpha \) controlled vertices which have as the attractor strategy to play to a removed vertex. The remaining vertices, if any, now form a closed region from which new tangles can be obtained.
-
9.
If a tangle overlaps with a winning region, we delete the tangle on-the-fly.
Most optimizations for tl also work for rtl. Optimization 5 does not fully work; we need to reset the number of remaining edges for the recursion. Optimization 8 is obviously replaced with the recursive decomposition. For ortl, additionally, optimization 4 no longer works, as the lowest region could still be open. We include these optimizations even though we are not primarily interested in the practical performance of the proposed algorithms. The algorithms are slower on practical games because they perform extra work that is not necessary. They are only faster on games that are designed to be hard for other algorithms.
Rights and permissions
Copyright information
© 2025 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
van Dijk, T. (2025). Avoiding Distractions in Parity Games. In: Margaria, T., Steffen, B. (eds) Leveraging Applications of Formal Methods, Verification and Validation. Specification and Verification. ISoLA 2024. Lecture Notes in Computer Science, vol 15221. Springer, Cham. https://doi.org/10.1007/978-3-031-75380-0_19
Download citation
DOI: https://doi.org/10.1007/978-3-031-75380-0_19
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-75379-4
Online ISBN: 978-3-031-75380-0
eBook Packages: Computer ScienceComputer Science (R0)