Improved Algorithms for Parity and Streett objectives
The computation of the winning set for parity objectives and for Streett objectives in graphs as well as in game graphs are central problems in computer-aided verification, with application to the verification of closed systems with strong fairness conditions, the verification of open systems, checking interface compatibility, well-formedness of specifications, and the synthesis of reactive systems. We show how to compute the winning set on $n$ vertices for (1) parity-3 (aka one-pair Streett) objectives in game graphs in time $O(n^{5/2})$ and for (2) k-pair Streett objectives in graphs in time $O(n^2 + nk \log n)$. For both problems this gives faster algorithms for dense graphs and represents the first improvement in asymptotic running time in 15 years.
💡 Research Summary
The paper addresses two fundamental algorithmic problems that arise in formal verification and synthesis: computing the winning set for parity objectives (specifically parity‑3, which is equivalent to a one‑pair Streett objective) in game graphs, and computing the winning set for general k‑pair Streett objectives in ordinary directed graphs. Both problems are central to the analysis of systems with fairness constraints, reactive synthesis, interface compatibility, and model checking of the µ‑calculus.
Previous state of the art.
For game graphs with parity‑3 objectives the best known algorithm since 2000 required O(m n) time, which for dense graphs (m = Θ(n²)) amounts to O(n³). For general parity games with a constant number c of priorities, the Big‑Step algorithm of Schewe (2010) achieved O(m·(n/c)^{γ(c)}) time, but it does not improve the bound for the special case c = 3. In ordinary graphs, the winning set for k‑pair Streett objectives could be computed in O((m + b)·min{n, k}) time, where b = Σ_j (|L_j| + |U_j|) is the total size of the Streett pairs, or in O(m·min{√m log n, k, n}) using more sophisticated techniques. Moreover, existing algorithms either ignored the cost of producing a certificate (a lasso‑shaped witness) or incurred an additional O(n·min{n, k}) term.
Main contributions.
-
Parity‑3 game graphs in O(n^{5/2}) time.
The authors combine the hierarchical graph‑decomposition technique (originally introduced for handling edge deletions) with a refined dominion‑search procedure. A dominion is a set of vertices from which player 2 can force a win. By repeatedly finding small dominions (size ≤ h) in O(m h) time and observing that it suffices to examine a subgraph with only O(n h) edges, they reduce the total work to Σ_{h=1}^{√n} O(n h·(n/h)) = O(n^{5/2}). Large dominions are handled by invoking a known O(n²) Büchi‑game algorithm. This breaks the long‑standing O(m n) barrier for dense graphs and extends to general parity games with c priorities, yielding a running time O(n^{1+γ(c+1)}) = O(n^{2+γ(c)} − β(c)), where γ(c) and β(c) are the constants from Schewe’s analysis. For constant c the term n^{2 − β(c)} approaches n^{4/3}, improving over the previous O(m n) bound. -
General Streett objectives in ordinary graphs in O(n² + b log n) time.
The algorithm repeatedly computes strongly connected components (SCCs) using Tarjan’s method on both the graph and its reverse. When a previously identified SCC ceases to be strongly connected, the algorithm extracts a “top” or “bottom” SCC that contains at most half of the vertices of the former component. This halving property guarantees that each vertex participates in at most O(log n) SCC extractions, leading to an overall O(n²) cost for the SCC‑handling part. Adding the linear term b log n for processing the Streett pairs yields the claimed bound. The method is faster than the previous O(m·min{√m log n, k, n}) algorithm whenever m = Ω(max{n^{4/3} log^{−1/3} n, b^{2/3} log^{1/3} n}) and k = Ω(n²/m). -
Certificate generation.
For both settings the authors provide a procedure to output a lasso‑shaped certificate for any winning vertex. In the graph case the certificate consists of a path from the start vertex to a strongly connected subgraph S and a (possibly non‑simple) cycle inside S that respects the Streett condition. The certificate can be produced in O(m + n·min{n, k}) time, and the authors prove that the worst‑case size of a minimal certificate is Θ(n·min{n, k}), showing that their algorithm is optimal up to a logarithmic factor when k = Ω(n).
Technical innovations.
- Hierarchical game‑graph decomposition: By constructing a hierarchy of subgraphs with progressively fewer edges, the algorithm isolates small dominions without scanning the entire dense graph.
- Dominion detection via Büchi games: The algorithm reduces the search for small dominions to solving Büchi games on the subgraph, leveraging the O(n²) Büchi solver from previous work.
- Half‑size SCC extraction: In the Streett algorithm, the authors identify the smallest SCC that either has no incoming or no outgoing edges, guaranteeing that each iteration removes at least half of the remaining vertices from the current SCC. This avoids the amortization difficulties present in earlier approaches where only a subset of vertices could be removed.
- Efficient handling of Streett pairs: The term b log n arises from maintaining counters for each pair (L_j, U_j) while processing SCCs, which is done in logarithmic time per pair using standard data structures.
Impact and relevance.
The new O(n^{5/2}) algorithm makes parity‑3 games tractable for dense models such as synchronous products of many components, which frequently appear in hardware synthesis (e.g., GR(1) specifications) and timed‑automaton games. The O(n² + b log n) algorithm for general Streett objectives improves the analysis of systems with strong fairness constraints, where the number of Streett pairs can be large. Both results also provide certificates, an essential feature for counterexample‑guided abstraction refinement (CEGAR) and debugging. By breaking the O(m n) barrier that has stood for 15 years, the paper represents a significant theoretical advance with immediate practical implications for verification tools.
Comments & Academic Discussion
Loading comments...
Leave a Comment