# From Muller to Parity and Rabin Automata: Optimal Transformations Preserving (History) Determinism

**Received** May 19, 2023

**Accepted** Jan 21, 2024

**Published** Apr 23, 2024

**Key words and phrases**

Emerson-Lei automata,
Good-for-games automata,
Paritizing methods,
Omega-regular languages.

Antonio Casares<sup>a</sup>✉

<figure><img src="image_1.png" /></figure>

<figure><img src="image_2.png" /></figure>

Thomas Colcombet<sup>b,c</sup>✉

<figure><img src="image_3.png" /></figure>

<figure><img src="image_4.png" /></figure>

Nathanaël Fijalkow<sup>a,b,d</sup>✉

<figure><img src="image_5.png" /></figure>

<figure><img src="image_6.png" /></figure>

Karoliina Lehtinen<sup>b,e</sup>✉

<figure><img src="image_7.png" /></figure>

<figure><img src="image_8.png" /></figure>

a LaBRI, Université de Bordeaux,
France

b CNRS, France

c IRIF, Université Paris Cité,
France

d MIMUW, University of Warsaw,
Poland

e Aix-Marseille Université, LIS,
France

**ABSTRACT.** We study transformations of automata and games using Muller conditions into equivalent ones using parity or Rabin conditions. We present two transformations, one that turns a deterministic Muller automaton into an equivalent deterministic parity automaton, and another that provides an equivalent history-deterministic Rabin automaton. We show a strong optimality result: the obtained automata are minimal amongst those that can be derived from the original automaton by duplication of states. We introduce the notions of locally bijective morphisms and history-deterministic mappings to formalise the correctness and optimality of these transformations.

The proposed transformations are based on a novel structure, called the alternating cycle decomposition, inspired by and extending Zielonka trees. In addition to providing optimal transformations of automata, the alternating cycle decomposition offers fundamental information on their structure. We use this information to give crisp characterisations on the possibility

We want to thank Klara J. Meyer and Salomon Sickert for their comments and for spotting a mistake in a previous version. We also thank Alexandre Duret-Lutz and Florian Renkin for stimulating discussions around the alternating cycle decomposition, and Corto Mascle for his precious suggestions about the presentation of this paper. We thank the anonymous reviewers for their valuable feedback.

Thomas Colcombet: Supported by the European Research Council (ERC) under the European Union's Horizon 2020 research and innovation programme (grant agreement No.670624) – DuaLL – and the DeLTA ANR project (ANR-16-CE40-0007). This article is based on a paper that appeared at ICALP 2021 [23], and incorporates material from another paper that appeared at ICALP 2022 [24].
of relabelling automata with different acceptance conditions and to perform a systematic study
of a normal form for parity automata.

This document contains hyperlinks. Each occurrence of a *notion* is linked to its *definition*. On an electronic device, the reader can click on words or symbols (or just hover over them on some PDF readers) to see their definition.

# 1. Introduction

## Context

**Games and automata for LTL synthesis.** Games and automata over infinite words form the theoretical basis for the verification and synthesis of reactive systems; we refer to chapters 2, 4, and 27 of the recent Handbook of Model Checking [79, 58, 5] for a broad exposition of this research area. A milestone objective is the synthesis of reactive systems with specifications given in *Linear Temporal Logic* (LTL). The original approach of Pnueli and Rosner [80] using automata and games devised more than four decades ago is still at the heart of the state-of-the-art synthesis tools [39, 65, 70, 73]. The limiting factor in this method is the transformation of the LTL formula to a deterministic parity automaton. This automaton is then used to build a game, and a controller for the reactive system can be obtained from a winning strategy for this game. Most solutions to this problem (including the top-ranked tools in the SyntComp competitions [48], Strix [65, 69] and ltlsynt [70]) first construct a Muller (or Emerson-Lei) automaton, and then transform it into an equivalent parity automaton (we remark that, nevertheless, synthesis procedures avoiding the construction of deterministic automata have been proposed, for example, via the use of universal coBüchi automata [61]). The use of an intermediate Muller automaton is also present (although sometimes implicitly) in the most recent improvements in the determinisation of Büchi automata towards deterministic parity automata [64, 78, 88]. For this reason, understanding transformations of Muller automata and finding efficient procedures for them is of great importance.

**Which are the simplest acceptance conditions?** There exist multiple kinds of acceptance conditions that are commonly employed by ω-automata (Büchi, Rabin, Muller...). The use of parity conditions for LTL synthesis is justified by both practical and theoretical reasons. Firstly, there exist several high-performing algorithms solving parity games [33, 41, 48, 62, 92], so the last step in the LTL synthesis method described above can be carried out smoothly once the parity game is obtained. From a theoretical point of view, parity conditions can be considered as the simplest family of conditions that can be used to recognise all ω-regular languages with deterministic automata; it could even be argued that there is a canonical aspect to them:
— The optimal number of colours needed by a parity automaton to recognise a language $L$ reveals a fundamental piece of information about it, called its parity index. The parity index (sometimes called Mostowski index) yields a strict hierarchy both for deterministic automata over words and for non-deterministic automata over trees [74, 16] (and these hierarchies are closely related [60, 76]). In both cases, this index is a measure of the structural complexity of automata recognising $L$ [93, 76] and of its topological complexity [3, 90]. Whether we can decide the parity index of a language of infinite trees represented as a non-deterministic parity tree-automaton is a long-standing open problem [75, 30], which is tightly related with the alternation depth of fixpoint operators in $\mu$-calculus formulas [74].

— Parity languages are exactly Muller languages corresponding to families $\mathcal{F} \subseteq 2_+^\Gamma$ of subsets of colours such that both $\mathcal{F}$ and its complement are closed under union (Proposition 6.4).

— Parity languages are bipositional [37] (in a parity game, both players can play optimally using positional strategies, that is, strategies that use no memory). Moreover, over infinite game graphs, these are the only bipositional languages [31], and over finite game graphs, these are the unique bipositional Muller languages [94].

— Solving parity games is both in NP and co-NP [38] (more precisely, the problem is in $UP \cap \text{co-UP}$ [49]). They can be solved in quasi-polynomial time [18], and whether they can be solved in polynomial time is a major open question. This contrasts with the complexity of solving Rabin and Muller games, which is, respectively, NP-complete [36] and PSPACE-complete [47].

However, these are not the only kind of conditions that deserve our attention. In this work, we further investigate transformations producing automata using a Rabin acceptance condition. Although in practice solvers for Rabin games are not as developed, Rabin languages are a natural choice and interesting from a theoretical point of view: they are exactly the half-positional Muller languages [94], there exists a correspondence between Rabin automata and memory structures for Muller games [21, 24], and the determinisation of Büchi automata naturally produces Rabin automata [40, 83, 88].

**Transformations of games and automata.** There are various existing techniques to transform Muller automata or games into parity ones. The majority of these methods involve composing the input automaton $\mathcal{A}$ with a deterministic parity automaton recognising the acceptance condition used by $\mathcal{A}$. The first such parity automaton was introduced by Gurevich and Harrington in the 1980s [43] and is known as the Latest Appearance Record (LAR). Löding proved that the LAR is optimal in the worst case [63]: there exists a family of Muller languages $L_i$ for which the LAR is minimal amongst deterministic parity automata recognising $L_i$. However, the LAR is far from being minimal in every case, as it only uses the information about the size of the alphabet. Since its introduction, many refinements of the LAR have been proposed for subclasses of Muller languages [53, 63]. The approach using composition of automata has
one significant drawback: it disregards the structure of the original automaton, and only its acceptance condition is taken into account. Some works have explored heuristics to improve this aspect [54, 68, 81]. These refined transformations do still have the following property: each original state $q$ is turned into multiple states of the form $(q, x)$ – although this is done in a non-uniform way, with each state possibly being copied a different number of times. In this work, we introduce morphisms of transition systems to formalise the idea of transformations of automata and games; if a parity automaton $\mathcal{B}$ has been obtained as a transformation of a Muller automaton $\mathcal{A}$, there will be a morphism $\varphi: \mathcal{B} \to \mathcal{A}$ that sends states of the form $(q, x)$ to $q$. A theory of morphisms of transition systems is developed in Section 3.

**History-deterministic automata.** For the purposes of LTL synthesis and game transformations, it is imperative to eliminate non-determinism from automata, since non-deterministic automata do not yield correct games. Unfortunately, deterministic automata can be exponentially larger than non-deterministic ones. Recently, an intermediate model of automata, named history-deterministic (also called good-for-games), has received considerable attention. The reason is that history-determinism exactly captures the features of deterministic automata that make them suitable for synthesis purposes, while being a less restrictive model. A natural question that arises is whether history-deterministic automata can be more succinct than deterministic ones, and, in that case, which languages and automata types can benefit from this succinctness. It was not until several years after the introduction of history-determinism [44, 28] that an example of an $\omega$-regular language for which history-deterministic automata are smaller than deterministic ones was exhibited [57] (and it was even conjectured that such an automaton could not exist [27]). History-deterministic automata are the focus of several lines of research (we refer to the survey [14] for a detailed exposition). Despite this, a complete understanding of history-deterministic automata remains elusive, and their scope of applicability is still uncertain. One key aspect that has not yet been addressed is how to design techniques as general as possible for building history-deterministic automata. To the best of our knowledge, the only existing result in this direction is a polynomial-time algorithm to minimise coBüchi history-deterministic automata [1].

**The Zielonka tree and the alternating cycle decomposition.** The starting point of our work is the notion of Zielonka tree, introduced by Zielonka [94] as an informative representation of Muller languages – languages that can be described by a boolean combination of atomic propositions of the form “the letter ‘a’ appears infinitely often”. The Zielonka tree captures many important properties of Muller languages, such as being Rabin or parity [94], and, most importantly, it characterises their exact memory requirements, both in two-player games [34] and stochastic games [46].

The contribution at the core of this work is a generalisation of Zielonka trees to general Muller automata recognising any $\omega$-regular language, which we call the alternating cycle
decomposition (ACD). The ACD, greatly inspired from Wagner's work on ω-automata [93], is a data structure that provides an abridged representation of the accepting and rejecting cycles of the automaton, encapsulating the interplay between the structure of the underlying graph and the acceptance condition of a Muller automaton.

## Contributions

In this work, we carry out an extensive study of transformations of Muller automata and games. We outline next our main contributions.

1. **Minimal automata for Muller languages.** The basis on which we build up our work is a study of minimal automata recognising Muller languages. Using the Zielonka tree, we propose a construction of a deterministic parity automaton recognising a Muller language (Section 4.2). This construction implicitly appears in the long version of [34]. We show a strong optimality result: for all Muller language *L*, the parity automaton obtained from the Zielonka tree is minimal both amongst deterministic and history-deterministic parity automata recognising *L* (Theorem 4.15).<fnref n="1" /> Moreover, it uses the optimal number of output colours to recognise *L* (Theorem 4.14). The optimality result we obtain is much stronger than the worst case optimality result of the LAR transformation [63], since it applies to every Muller language. In particular, our characterisation yields an algorithm to minimise deterministic parity automata recognising Muller languages in polynomial time (Theorem 6.32). In light of our result, we conclude that the use of history-determinism does not yield any gain in the state complexity of parity automata recognising Muller languages.

We further propose a construction of a history-deterministic Rabin automaton recognising a Muller language (Section 4.3), and prove that this automaton is minimal amongst history-deterministic Rabin automata (Theorem 4.51). This construction is also based on the Zielonka tree.

In essence, our results reinforce the idea that the Zielonka tree precisely captures the fundamental properties of Muller languages.

2. **Introducing morphisms as witnesses of transformations.** In order to formalise transformations of games and automata, we develop a theory of morphisms of transition systems (Section 3). Intuitively, a morphism $\varphi: \mathcal{B} \to \mathcal{A}$ witnesses the fact that $\mathcal{B}$ has been obtained from $\mathcal{A}$ by blowing up each state $q \in \mathcal{A}$ to the states in $\varphi^{-1}(q)$. However, this property on its own does not suffice to guarantee the semantic equivalence of $\mathcal{A}$ and $\mathcal{B}$. It is for this reason that we introduce different variants of morphisms, offering a range of definitions with varying degrees of restrictiveness. Two kinds of morphisms will be of central importance: (1) locally bijective morphisms, which generalise composition with deterministic automata

<footnote n="1">1 The optimality of the Zielonka-tree-parity-automaton amongst deterministic automata has also been obtained in the independent unpublished work [68].</footnote>
and preserve determinism, and (2) history-deterministic mappings (HD mappings), which generalise composition by history-deterministic automata and are defined using a minimal set of hypothesis guaranteeing the semantic equivalence of $\mathcal{A}$ and $\mathcal{B}$.

3. **The alternating cycle decomposition and optimal transformations of Muller transition systems.** In order to generalise the fruitful applications of the Zielonka tree to Muller automata and games, we introduce the alternating cycle decomposition (ACD), a data structure that captures the interplay of the underlying graph of these transition systems and their acceptance condition (Section 5). Using the ACD, we describe a construction that transforms a Muller automaton $\mathcal{A}$ into an equivalent parity automaton $\mathcal{B}$ while preserving the determinism of $\mathcal{A}$ (formally, there is a locally bijective morphism $\varphi: \mathcal{B} \to \mathcal{A}$). This transformation comes with a strong optimality guarantee: for any other parity automaton $\mathcal{B}'$ admitting a locally bijective morphism (or even HD mapping) $\varphi': \mathcal{B}' \to \mathcal{A}$, the automaton $\mathcal{B}$ is smaller than $\mathcal{B}'$ and it uses less output colours (Theorems 5.34 and 5.35). An interesting corollary of our result is the following: if $\mathcal{B}$ is an HD parity automaton that is strictly smaller than any deterministic parity automaton recognising $\mathcal{L}(\mathcal{B})$, then $\mathcal{B}$ cannot be derived from a deterministic Muller automaton (Corollary 5.39). This result sheds light on the difficulty to obtain succinct HD automata and their potential applicability.

We also provide a transformation that translates a Muller automaton $\mathcal{A}$ into a history-deterministic Rabin automaton $\mathcal{B}$ in an optimal way: for any other Rabin automaton $\mathcal{B}'$ admitting an HD mapping $\varphi': \mathcal{B}' \to \mathcal{A}$, the automaton $\mathcal{B}$ is smaller than $\mathcal{B}'$.

4. **Structural results for Muller transition systems.** The ACD does not only provide optimal transformations of games and automata, it also features some of their fundamental structural properties. As an application, we give a set of crisp characterisations for relabelling automata with different classes of acceptance conditions (Section 6.1). For instance, we show that given a Muller automaton $\mathcal{A}$, we can define a Rabin condition over the underlying graph of $\mathcal{A}$ obtaining an equivalent automaton if and only if the union of rejecting cycles of $\mathcal{A}$ is again a rejecting cycle. Our results unify and extend those from [7, 11, 55, 94].

In Section 6.2, we conduct a comprehensive examination of a normal form for parity automata. This normal form implicitly appears in [19], and has since proven instrumental in proofs about history-deterministic automata [1, 35, 57], positionality of $\omega$-regular languages [15] and learning of $\omega$-automata [6]. Similar normalisation procedures are commonly applied to parity games to speed up algorithms solving them [41]. We use the ACD to provide straightforward proofs of the fundamental properties which make automata in normal form practical in both theoretical proofs and applications.

**Our model: transition systems and acceptance over edges.** We want to point out a few technical details about the model used in this paper. First, we work with general transition systems for two reasons: (1) to seamlessly encompass both automata and games models, and
(2) to emphasise that the ACD and the transformations we propose do only depend on the underlying graph and the acceptance condition; we can view the input letters of an automaton, or the partition of the vertices in a game, as add-ons that do not affect the core of our approach.

Also, we define acceptance conditions over the edges of transitions systems – instead of over the vertices. This choice has been shown to yield more canonical results in theory, for instance, in the study of strategy complexity for games [15, 21, 31, 94], the determinisation of Büchi automata [32, 89], or the minimisation of history-deterministic automata [1, 35]. It has also proven to be more applicable in practical scenarios [2, 42]. We believe that the present work provides further evidence to this claim, as the minimal automaton obtained from the Zielonka tree, as well as the transformations based on the ACD, substantially rely on the use of edge-based acceptance.

Finally, we remark that in this work we are concerned with *state complexity*, that is, the efficiency of a construction is measured based on the number of states of the resulting transition system. We do not focus on the representation of the acceptance conditions; for instance, we will not differentiate between Muller or Emerson-Lei conditions, as they have the same expressive power (see also Remark 2.11).

**Follow-up work.** Despite its recent introduction [23], the alternating cycle decomposition has already found applications in both practical and theoretical scenarios. The ACD-parity-transform has been implemented in two open-source tools: Spot 2.10 [2] and Owl 21.0 [52], and it is used in the LTL-synthesis tools ltlsynt [2] and Strix [69]. These implementations were presented in the conference paper [25], where transformations based on the ACD are compared to the state-of-the-art existing paritizing methods.

The *typeness* results stemming from the ACD (Section 6.1) have also been proven instrumental in theoretical applications. They have been used to show a correspondence between Rabin automata and memory structures for games [21], and to provide lower bounds in the size of deterministic Rabin automata [24].

## 2. Preliminaries

In this section, we introduce definitions that will be used throughout the paper.

**Basic definitions.** For a set $A$, we let $|A|$ denote its cardinality, $2^A$ its power set and $2_A^+ = 2^A \setminus \{\emptyset\}$. For natural numbers $i \le j$, $[i, j]$ stands for $\{i, i+1, \dots, j-1, j\}$.

For a set $\Sigma$, a *word* over $\Sigma$ is a sequence of elements from $\Sigma$. An *$\omega$-word* (or simply an *infinite word*) is a word of length $\omega$. The sets of finite and infinite words over $\Sigma$ will be written $\Sigma^*$ and $\Sigma^\omega$, respectively, and we let $\Sigma^\infty = \Sigma^* \cup \Sigma^\omega$. Subsets of $\Sigma^*$ and $\Sigma^\omega$ will be called *languages*.
For a word $w \in \Sigma^\infty$ and $i \ge 0$ we write $w_i$ to represent the $i$-th letter of $w$. We let $\varepsilon$ denote the
empty word, and let $\Sigma^+ = \Sigma^* \setminus \{\varepsilon\}$. The concatenation of two words $u \in \Sigma^*$ and $v \in \Sigma^\infty$ is written $u \cdot v$, or simply $uv$. If $u = v \cdot w$, for $v \in \Sigma^*$ and $u, w \in \Sigma^\infty$, we say that $v$ is a *prefix* of $u$, and we write $v \subseteq u$. For a word $w \in \Sigma^\omega$, we let $\text{Inf}(w) = \{a \in \Sigma \mid w_i = a \text{ for infinitely many } i \in \mathbb{N}\}$.

We say that a language $L \subseteq \Sigma^\omega$ is *prefix-independent* if for all $w \in \Sigma^\omega$ and $u \in \Sigma^*$ we have that $uw \in L$ if and only if $w \in L$.

Given a map $\alpha : A \to B$, we will extend $\alpha$ to words component-wise, i.e., $\alpha : A^\infty \to B^\infty$ will be defined as $\alpha(w_0w_1w_2\dots) = \alpha(w_0)\alpha(w_1)\alpha(w_2)\dots$. We will use this convention throughout the paper without explicitly mentioning it. If $A' \subseteq A$, we denote $\alpha|_{A'}$ the restriction of $\alpha$ to $A'$. We let $\text{Id}_A$ be the identity function on $A$. We write $\alpha : A \to B$ if $\alpha$ is a *partial mapping* (it is defined only over some subset of $A$).

In this work, we will use the term *graph* to denote what is sometimes called a *directed multigraph*: A *graph* is a tuple $G = (V, E, \text{Source}, \text{Target})$, where $V$ is a set of vertices, $E$ a set of edges and *Source*: $E \to V$ and *Target*: $E \to V$ are maps indicating the source and target for each edge. A *path* is a (finite or infinite) sequence $\rho = e_0e_1\dots \in E^\infty$ such that $\text{Source}(e_i) = \text{Target}(e_{i-1})$, for all $i > 0$. For notational convenience, we write $v_0 \xrightarrow{e_0} v_1 \cdots \xrightarrow{e_{n-1}} v_n$ to denote a finite path from $v_0 = \text{Source}(e_0)$ to $v_n = \text{Target}(e_{n-1})$, and we let $\text{Source}(\rho) = v_0$ and $\text{Target}(\rho) = v_n$. For $A \subseteq V$, we let $\text{Path}_A^{\text{fin}}(G)$ and $\text{Path}_A(G)$ denote, respectively, the set of finite and infinite paths on $G$ starting from some $v \in A$ (we omit brackets if $A = \{v\}$ is a singleton). We let $\text{Path}_A^{\infty}(G) = \text{Path}_A^{\text{fin}}(G) \cup \text{Path}_A(G)$. For a subset of vertices $A \subseteq V$ we write:

$$ \text{In}(A) = \{e \in E \mid \text{Target}(e) \in A\}, $$

$$ \text{Out}(A) = \{e \in E \mid \text{Source}(e) \in A\}. $$

All graphs considered in this paper will be finite.

A graph is *strongly connected* if there is a *path* connecting each pair of vertices. A *subgraph* of $(V, E, \text{Source}, \text{Target})$ is a graph $(V', E', \text{Source}', \text{Target}')$ such that $V' \subseteq V$, $E' \subseteq E$ and *Source*' and *Target*' are the restrictions of *Source* and *Target* to $E'$, respectively. A *strongly connected component* (SCC) is a maximal *strongly connected subgraph*. We say that a SCC is *final* if there is no edge leaving it. We say that a vertex $v$ is *recurrent* if it belongs to some SCC, and that it is *transient* on the contrary.

## 2.1 Transition systems, automata and games

**Transition systems.** A *pointed graph* $G = (V, E, \text{Source}, \text{Target}, I)$ is a *graph* together with a non-empty subset of *initial vertices* $I \subseteq V$. An *acceptance condition* over $G$ is a tuple $\text{Acc} = (\gamma, \Gamma, \mathcal{W})$ where $\Gamma$ is a finite set of *colours*, $\gamma: E \to \Gamma \cup \{\varepsilon\}$ is an *edge-colouring* of $G$ and $\mathcal{W} \subseteq \Gamma^\omega$ is a language of infinite words called the *acceptance set*. We allow *uncoloured edges* ($\varepsilon$-edges), but we impose the condition that no infinite path of $G$ is eventually composed exclusively of $\varepsilon$-edges (that is, every cycle contains some edge $e$ with $\gamma(e) \neq \varepsilon$).
A transition system (abbreviated TS) is a tuple $\mathcal{T}S = (G_{\mathcal{T}S}, \text{Acc}_{\mathcal{T}S})$, consisting in a pointed graph $G_{\mathcal{T}S} = (V, E, \text{Source}, \text{Target}, I)$, called the *underlying graph* of $\mathcal{T}S$, and an acceptance condition $\text{Acc}_{\mathcal{T}S} = (\gamma, \Gamma, \mathcal{W})$ over $G_{\mathcal{T}S}$. We will also refer to vertices and edges as states and transitions, respectively. We write $v \xrightarrow{c} v'$ if there is $e \in E$ such that $\text{Source}(e) = v, \text{Target}(e) = v'$ and $\gamma(e) = c$. We will assume for technical convenience that transition systems contain no sink, that is, every vertex has at least one outgoing edge. For any non-empty subset of vertices $\tilde{I} \subseteq V$, we let $\mathcal{T}S_{\tilde{I}}$ be the transition system obtained from $\mathcal{T}S$ by setting $\tilde{I}$ to be its set of initial vertices. The size of a transition system $\mathcal{T}S$ is the cardinality of its set of vertices, written $|\mathcal{T}S|$.

A run on a transition system $\mathcal{T}S$ (or on a pointed graph) is a (finite or infinite) path $\rho = e_0 e_1 \cdots \in E^\infty$ starting from an initial vertex, that is, $\text{Source}(e_0) \in I$. We let $\mathcal{R}un^{\text{fin}}(\mathcal{T}S)$ and $\mathcal{R}un(\mathcal{T}S)$ be the set of finite and infinite runs on $\mathcal{T}S$, respectively, and we let $\mathcal{R}un^{\infty}(\mathcal{T}S) = \mathcal{R}un^{\text{fin}}(\mathcal{T}S) \cup \mathcal{R}un(\mathcal{T}S)$. (We note that $\mathcal{R}un(\mathcal{T}S) = \text{Path}_I(G_{\mathcal{T}S})$.)

The output of a run $\rho \in \mathcal{R}un^{\infty}(\mathcal{T}S)$ is the sequence of colours in $\Gamma^\infty$ obtained by removing the occurrences of $\varepsilon$ from $\gamma(\rho)$; which we will also denote $\gamma(\rho)$ by a small abuse of notation. A run $\rho$ is accepting if $\gamma(\rho) \in \mathcal{W}$, and rejecting otherwise (in particular, finite runs will be rejecting). We write $\rho = v \xrightarrow{w} v'$ to denote a run with $\text{Source}(\rho) = v, \text{Target}(\rho) = v'$ and $\gamma(\rho) = w$.

We say that a vertex $v \in V$ is accessible (or reachable) from a vertex $v_0$ if there exists a finite path from $v_0$ to $v$. We say that $v$ is accessible if it is accessible from some initial vertex. A set of states $B \subseteq V$ is accessible if every state $v \in B$ is accessible. The accessible part of a transition system is the set of accessible states. We define analogously the accessible part from a vertex $v_0$.

A labelled graph $(G, (l_V, L_V), (l_E, L_E))$ is a graph together with labelling functions $l_V : V \to L_V, l_E : E \to L_E$, where $L_V$ and $L_E$ are sets of labels for vertices and edges, respectively. If only the first (resp. the second) of these labelling functions appears, we will use the terms vertex-labelled (resp. edge-labelled) graphs. A labelled transition system is a transition system with labelled underlying graph.

**REMARK 2.1.** We remark that, whenever necessary, we can assume without loss of generality that in the acceptance condition $\text{Acc} = (\gamma, \Gamma, \mathcal{W})$ of a transition system, $\Gamma = E$ is the whole set of edges and $\gamma$ is the identity function. Indeed, an equivalent acceptance condition can always be defined by using the acceptance set $\mathcal{W}' = \{w \in E^\omega \mid \gamma(w) \in \mathcal{W}\} \subseteq E^\omega$.

**Automata.** A (non-deterministic) automaton over $\Sigma$ is an edge-labelled transition system $\mathcal{A} = (G_{\mathcal{A}}, \text{Acc}_{\mathcal{A}}, (l_\Sigma, \Sigma))$, where $\Sigma$ is a finite set of input letters. Let $\mathcal{A}$ be an automaton with $G_{\mathcal{A}} = (Q, \Delta, \text{Source}, \text{Target}, I)$ as underlying graph and $\text{Acc}_{\mathcal{A}} = (\gamma, \Gamma, \mathcal{W})$ as acceptance condition. We write $e = q \xrightarrow{a:c} q'$ to denote that $e \in \Delta$ satisfies $l_\Sigma(e) = a$ and $\gamma(e) = c$. We can assume that $\Delta \subseteq Q \times \Sigma \times \Gamma \times Q$. We define:

$$ \delta(q, a) = \{(q', c) \in Q \times \Gamma \mid \text{there is } e = q \xrightarrow{a:c} q' \in \Delta\}. $$
We note that we can now recover the classical representation of an automaton as a tuple $\mathcal{A} = (Q, \Sigma, I, \Gamma, \delta, W)$, (or $(Q, \Sigma, I, \Gamma, \Delta, W)$) which we might use when working exclusively with automata.

We say that an automaton $\mathcal{A}$ is *deterministic* if $I$ is a singleton and for every $q \in Q$ and $a \in \Sigma$, $|\delta(q, a)| \le 1$. We say that $\mathcal{A}$ is *complete* if for every $q \in Q$ and $a \in \Sigma$, $|\delta(q, a)| \ge 1$. We remark that we can assume that automata are complete without loss of generality by adding a sink state.

Given an automaton $\mathcal{A}$ and a word $w \in \Sigma^\infty$, a run over $w$ in $\mathcal{A}$ is a run $\rho = e_0 e_1 \cdots \in \mathcal{R}un^\infty(\mathcal{A})$ such that $l_\Sigma(e_i) = w_i$ for all $i \ge 0$. A word $w \in \Sigma^\omega$ is *accepted* by $\mathcal{A}$ if there is a run over $w$ that is accepting (that is, a run $\rho$ such that $\gamma(\rho) \in W$). The *language accepted* (or recognised) by an automaton $\mathcal{A}$ is the set

$$ \mathcal{L}(\mathcal{A}) := \{w \in \Sigma^\omega \mid w \text{ is accepted by } \mathcal{A}\}. $$

Two automata recognising the same language are said to be *equivalent*.

We remark that if $\mathcal{A}$ is deterministic (resp. complete), there is at most one (resp. at least one) run over $w$ for each $w \in \Sigma^\infty$.

Given a subgraph $G'$ of the underlying graph of an automaton $\mathcal{A}$ and a subset of states $I'$ in $G'$, the *subautomaton induced by $G'$* with initial states $I'$ is the automaton having $G'$ as underlying graph, $I'$ as set of initial states, and whose acceptance condition and labelling with input letters are the restrictions of those of $\mathcal{A}$.

**History-deterministic automata.** Let $\mathcal{A}$ be a (non-deterministic) automaton over $\Sigma$ with $\Delta$ as set of transitions and $I$ as set of initial states. A resolver for $\mathcal{A}$ is a pair $(r_0, r)$, consisting of a choice of an initial state,<fnref n="2" /> $r_0 \in I$, and a function $r: \Delta^* \times \Sigma \to \Delta$ such that for all words $w = w_0 w_1 \cdots \in \Sigma^\omega$, the sequence $e_0 e_1 \cdots \in \Delta^\omega$, called the *run induced by $r$* over $w$ and defined by $e_i = r(e_0 \dots e_{i-1}, w_i)$ is actually a run over $w$ in $\mathcal{A}$ starting from $r_0$. We say that the resolver is *sound* if it satisfies that for every $w \in \mathcal{L}(\mathcal{A})$, the run induced by $r$ over $w$ is an accepting run. In other words, $r$ should be able to construct an accepting run in $\mathcal{A}$ letter-by-letter with only the knowledge of the word so far, for all words in $\mathcal{L}(\mathcal{A})$. An automaton $\mathcal{A}$ is called *history-deterministic* (shortened HD, also called *good-for-games* in the literature) if there is a sound resolver for it.

**REMARK 2.2.** Deterministic automata are history-deterministic, and they admit a unique resolver.

<footnote n="2">2 Sometimes in the literature [9, 14, 44] the initial state $r_0$ is not required to be specified. This would permit to choose it after the first letter $w_0$ is given. We consider that a resolver constructing a run without guessing the future should pick the initial state before the first letter is revealed, hence the introduction of $r_0$ in the definition of a resolver. The suitability of this choice will be further supported by the generalisation of HD automata to HD mappings (Section 3.3).</footnote>
**EXAMPLE 2.3.** In Figure 1, we show an automaton $\mathcal{A}$ over $\Sigma = \{a, b, c\}$ that is not deterministic (as it has two b-transitions from $q_1$) but is history-deterministic. Its set of output colours is $\Gamma = \{1, 2\}$ and its acceptance set is $\mathcal{W} = \{u \in \{1, 2\}^\omega \mid u \text{ contains finitely many 1s}\}$ (this is a coBüchi condition, as introduced in the next section). It is easy to check that $\mathcal{A}$ recognises the language:

$$ \mathcal{L}(\mathcal{A}) = \{w \in \Sigma^\omega \mid \text{Inf}(w) \subseteq \{a, b\} \text{ or } \text{Inf}(w) \subseteq \{b, c\}\}. $$

A resolver for $\mathcal{A}$ only has to take a decision when the automaton is in the state $q_1$ and letter $b$ is provided. In this case, a sound resolver is obtained by using the following strategy: if the last letter seen was $a$, we take the transition leading to state $q_0$; if it was $c$, we take the transition leading to $q_2$. This strategy ensures that, if eventually only letters in $\{a, b\}$ (resp. $\{b, c\}$) are seen, the run will end up in state $q_0$ (resp. $q_2$) and remain there indefinitely, without producing any colour 1.

<figure><img src="image_9.png" /><figcaption>**Figure 1.** An example of a history-deterministic automaton that is not deterministic. The acceptance set is $\mathcal{W} = \{u \in \{1, 2\}^\omega \mid u \text{ contains finitely many 1s}\}$. An arrow of the form $q \xrightarrow{a,b:2} q'$ represents two different transitions with input letters $a$ and $b$, respectively. The initial state $q_0$ is marked with one incoming arrow.</figcaption></figure>

<figure><img src="image_10.png" /></figure>

We say that a state $q$ is *reachable using the resolver* $(r_0, r)$ if there is a finite run $\rho = r_0 \rightsquigarrow q$ such that $\rho$ is the run induced by $r$ over some word $w \in \Sigma^*$.

The next remark indicates that we can assume without loss of generality that all states in an HD automaton are reachable using some sound resolver.

**REMARK 2.4.** Let $\mathcal{A}$ be an HD automaton, let $(r_0, r)$ be a sound resolver for it and let $\tilde{\mathcal{A}}$ be the subautomaton induced by the set of states reachable using $(r_0, r)$, with initial state $r_0$. Then, $\mathcal{L}(\mathcal{A}) = \mathcal{L}(\tilde{\mathcal{A}})$.

The next lemma provides a simplification for automata recognising prefix-independent languages. Its proof can be found in Appendix C. Together with Remark 2.4, it indicates that when dealing with HD automata for this kind of languages, we can assume that any state of the automaton is the initial one. In particular there will be no need to specify the initial states of subautomata induced by subgraphs of HD automata recognising prefix-independent languages.
**LEMMA 2.5.** Let $\mathcal{A}$ be a history-deterministic automaton recognising a prefix-independent language and using as acceptance set a prefix-independent language. For any state $q$ of $\mathcal{A}$ that is reachable using some sound resolver, it holds that $\mathcal{A}$ recognises the same language if we fix $q$ as initial state, that is, $\mathcal{L}(\mathcal{A}) = \mathcal{L}(\mathcal{A}_q)$. Moreover, $\mathcal{A}_q$ is also history-deterministic. In particular, if $\mathcal{A}$ is deterministic, this is the case for any reachable state $q$.

**Games.** A *game* is a vertex-labelled transition system $\mathcal{G} = (G_{\mathcal{G}}, \text{Acc}_{\mathcal{G}}, (l_{\text{Players}}, \{\text{Eve}, \text{Adam}\}))$, with $G_{\mathcal{G}} = (V, E, \text{Source}, \text{Target}, I)$ a pointed graph, and $l_{\text{Players}}: V \to \{\text{Eve}, \text{Adam}\}$ a vertex-labelling function inducing a partition of $V$ into vertices controlled by two *players* that we refer to as *Eve* and *Adam*. We let $V_{\text{Eve}} = l_{\text{Players}}^{-1}(\text{Eve})$ and $V_{\text{Adam}} = l_{\text{Players}}^{-1}(\text{Adam})$.

During a play, players move a token from one vertex to another for an infinite amount of time. The player who owns the vertex $v$ where the token is placed chooses an edge in $\text{Out}(v)$ and the token travels through this edge to its target. In this way, they produce an infinite run $\rho$ on $\mathcal{G}$ (that we also call a *play*). The objective of Eve is to produce an *accepting run* (a sequence of colours in $\mathbb{W}$), and Adam tries to prevent it.

A *strategy* from $v \in V$ for Eve is a (partial) function $\text{strat}_v : \text{Path}_{v}^{\text{fin}}(\mathcal{G}) \to E$, defined for finite paths from $v$ ending in a vertex in $V_{\text{Eve}}$, that tells Eve which move to choose after any possible finite play. We say that a play $\rho \in \text{Path}_{v}^{\infty}(\mathcal{G})$ is *consistent with the strategy* $\text{strat}_v$ if after each finite prefix $\rho' \sqsubseteq \rho$ ending in a vertex controlled by Eve, the next edge in $\rho$ is $\text{strat}_v(\rho')$. We say that $\text{strat}_v$ is a *winning strategy for Eve* if all infinite plays from $v$ consistent with $\text{strat}_v$ are *accepting*. We say that Eve *wins* the game $\mathcal{G}$ from $v$ if there is a *winning strategy* from $v$ for her. Strategies for Adam are defined dually.

Given a game $\mathcal{G}$, the *winning region* of $\mathcal{G}$ for Eve, written $W_{\text{Eve}}(\mathcal{G})$, is the set of initial vertices $v \in I$ such that she wins the game $\mathcal{G}$ from $v$. The *full winning region* of $\mathcal{G}$ for Eve is her winning region in the game $G_V$ where all vertices are initial, that is, the set of vertices $v \in V$ such that Eve wins the game $\mathcal{G}$ from $v$.

In some proofs, we will need to take a close look into the *strategies* used in games, for which we need to introduce *finite memory strategies*. For a set $X$ (usually the set of edges of a game), we define a *memory skeleton* over $X$ as an edge-labelled pointed graph $\mathcal{M} = (\mathcal{M}, E_{\mathcal{M}}, \text{Source}, \text{Target}, m_0)$ with a single initial state $m_0$ and labels $l_{\mathcal{M}}: E_{\mathcal{M}} \to X$ inducing a deterministic structure, that is, satisfying that for each $m \in \mathcal{M}$ and $x \in X$ there is at most one transition $e \in \text{Out}(m)$ labelled $x$. We denote $\mu: \mathcal{M} \times X \to \mathcal{M}$ the *update function* given by $\mu(m, x) = m'$ if $m \xrightarrow{x} m'$ is the (only) transition from $m$ labelled $x$. We extend $\mu$ to $\mu: \mathcal{M} \times X^* \to \mathcal{M}$ by induction ($\mu(m, \varepsilon) = m$ and $\mu(m, x_1 \dots x_n) = \mu(\mu(m, x_1 \dots x_{n-1}), x_n)$). A *memory structure* (for Eve) for a game $\mathcal{G}$ is a memory skeleton over the set $E$ of edges of $\mathcal{G}$ together with a *next-move function* $\sigma: V_{\text{Eve}} \times \mathcal{M} \to E$. We say that $(\mathcal{M}, \sigma)$ *implies* a strategy $\text{strat}_v : \text{Path}_{v}^{\text{fin}}(\mathcal{G}) \to E$ if for any finite play $\rho \in \text{Path}_{v}^{\text{fin}}(\mathcal{G})$ ending in $V_{\text{Eve}}$, $\text{strat}_v(\rho) = \sigma(\text{Target}(\rho), \mu(m_0, \rho))$. We remark
that a memory structure for $\mathcal{G}$ implements at most one strategy from a given vertex. We say that $\text{strat}_v$ is a *finite memory strategy* if it can be implemented by a finite memory structure.

**Composition of a transition system and an automaton.** We now present the construction of the composition (or product) of a transition system with an automaton, which constitutes the standard method for transforming a transition system that uses an acceptance set $W_1$ to another one using a different acceptance set $W_2$. To guarantee the correctness of the resulting transition system (that is, that it has the same semantic properties as the original one), the automaton must be deterministic or history-deterministic (see Propositions 2.6, 2.7, and 2.8).

Let $\mathcal{T}\mathcal{S} = (G_{\mathcal{T}\mathcal{S}}, \text{Acc}_{\mathcal{T}\mathcal{S}})$ be a transition system, with $G_{\mathcal{T}\mathcal{S}} = (V, E, \text{Source}_{\mathcal{T}\mathcal{S}}, \text{Target}_{\mathcal{T}\mathcal{S}}, I_{\mathcal{T}\mathcal{S}})$ and $\text{Acc}_{\mathcal{T}\mathcal{S}} = (\gamma_{\mathcal{T}\mathcal{S}}, \Sigma, W_{\mathcal{T}\mathcal{S}})$, and let $\mathcal{A} = (G_{\mathcal{A}}, \text{Acc}_{\mathcal{A}}, (l_{\Sigma}, \Sigma))$ be a complete automaton over the alphabet $\Sigma$, where $G_{\mathcal{A}} = (Q, \Delta, \text{Source}_{\mathcal{A}}, \text{Target}_{\mathcal{A}}, I_{\mathcal{A}})$ and $\text{Acc}_{\mathcal{A}} = (\gamma_{\mathcal{A}}, \Gamma, W_{\mathcal{A}})$. The *composition* of $\mathcal{T}\mathcal{S}$ and $\mathcal{A}$ (also called their *product*) is the transition system $\mathcal{T}\mathcal{S} \times \mathcal{A}$ defined as follows:

- The set of vertices is the cartesian product $V \times Q$.

- The set of initial vertices is $I_{\mathcal{T}\mathcal{S}} \times I_{\mathcal{A}}$.

- The set of edges $E^{\times}$ contains a transition $(v, q) \xrightarrow{c} (v', q')$ if there is $a \in \Sigma$ and transitions $e_1 = v \xrightarrow{a} v' \in E$ and $e_2 = q \xrightarrow{a:c} q' \in \Delta$. It also contains $\varepsilon$-edges $(v, q) \xrightarrow{\varepsilon} (v', q)$ if $v \xrightarrow{\varepsilon} v' \in E$. Formally,

$$E^{\times} = \{(e_1, e_2) \in E \times \Delta \mid \gamma_{\mathcal{T}\mathcal{S}}(e_1) = l_{\Sigma}(e_2)\} \cup \{e_1 \in E \mid \gamma_{\mathcal{T}\mathcal{S}}(e_1) = \varepsilon\} \subseteq (E \times \Delta) \cup E.$$

- The acceptance condition is inherited from that of $\mathcal{A}$: the colouring function $\gamma': E^{\times} \to \Gamma$ is defined as $\gamma'(e_1, e_2) = \gamma_{\mathcal{A}}(e_2)$, and the acceptance set is $W_{\mathcal{A}} \subseteq \Gamma^{\omega}$.

We remark that if $\mathcal{T}\mathcal{S}$ does not contain an uncoloured cycle, neither does $\mathcal{T}\mathcal{S} \times \mathcal{A}$. Also, $\mathcal{T}\mathcal{S} \times \mathcal{A}$ does not contain sinks by completeness of $\mathcal{A}$.

If $\mathcal{T}\mathcal{S}$ is a labelled transition system, labelled by the functions $l_V$ and $l_E$, we consider $\mathcal{T}\mathcal{S} \times \mathcal{A}$ as a labelled transition system with the functions $l_V^{\kappa}(v, q) = l_V(v)$ and $l_E^{\kappa}(e_1, e_2) = l_E(e_1)$ (resp. $l_E^{\kappa}(e_1) = l_E(e_1)$ if $e_1$ is an uncoloured edge).

Intuitively, a computation in $\mathcal{T}\mathcal{S} \times \mathcal{A}$ happens as follows: we start from a vertex $v_0 \in I_{\mathcal{T}\mathcal{S}}$ in $\mathcal{T}\mathcal{S}$ and from $q_0 \in I_{\mathcal{A}}$. When we are in a position $(v, q) \in V \times Q$, a transition $e$ between $v$ and $v'$ takes place in $\mathcal{T}\mathcal{S}$, producing a letter $a \in \Sigma$ as output. Then, the automaton $\mathcal{A}$ proceeds using a transition corresponding to $a$, producing an output in $\Gamma$. In this way, a word in $\Gamma^{\omega}$ is generated, and we can use the acceptance set $W_{\mathcal{A}} \subseteq \Gamma^{\omega}$ of the automaton as the acceptance set for $\mathcal{T}\mathcal{S} \times \mathcal{A}$.

In particular, we can perform this operation if $\mathcal{T}\mathcal{S}$ is an automaton. We obtain in this way a new automaton that uses the acceptance condition of $\mathcal{A}$.

We could, of course, apply this construction to a game $\mathcal{G}$, obtaining a new game $\mathcal{G} \times \mathcal{A}$ in which the player who makes a move in $\mathcal{G}$ also chooses a transition in $\mathcal{A}$ corresponding to the letter produced by the selected move. However, in most applications, we intend to obtain an asymmetric form of product game in which one player has full control of the transitions of
the automaton (we take the point of view of Eve and want her to choose these transitions). For this reason, we restrain the class of games to which we can apply the product construction by a non-deterministic automaton.

We say that a game is *suitable for transformations* if it satisfies that for every edge $e = v \to v'$ such that $v \in V_{Adam}$, the edge $e$ is uncoloured ($\gamma(e) = \varepsilon$), $v' \in V_{Eve}$, and $e$ is the only incoming edge to $v'$ ($\mathrm{In}(v') = \{e\}$). We remark that any game $\mathcal{G}$ can be made *suitable for transformations* with at most a linear blow up on the size by inserting an intermediate *Eve-vertex* in each edge outgoing from an *Adam-vertex*. A formal construction, as well as further motivation for this definition, can be found in Appendix B.

The following results are well known and constitute the main application of automata composition. They can be seen as corollaries of our results from Section 3.4, which generalise them.

**PROPOSITION 2.6 (Folklore).** Let $\mathcal{B}$ be an automaton with acceptance set $W_{\mathcal{B}}$ and let $\mathcal{A}$ be an automaton recognising $\mathcal{L}(\mathcal{A}) = W_{\mathcal{B}}$. Then, $\mathcal{L}(\mathcal{B} \times \mathcal{A}) = \mathcal{L}(\mathcal{B})$. Moreover, if $\mathcal{A}$ and $\mathcal{B}$ are deterministic (resp. history-deterministic), so is $\mathcal{B} \times \mathcal{A}$.

**PROPOSITION 2.7 ([44]).** Let $\mathcal{G}$ be a game that is suitable for transformations with acceptance set $W_{\mathcal{G}}$, and let $\mathcal{A}$ be a history-deterministic automaton recognising $\mathcal{L}(\mathcal{A}) = W_{\mathcal{G}}$. Then, the winning region of Eve in $\mathcal{G}$ is the projection of her winning region in $\mathcal{G} \times \mathcal{A}$, that is, Eve wins $\mathcal{G}$ from an initial vertex $v$ if and only if she wins $\mathcal{G} \times \mathcal{A}$ from $(v, q_0)$, for $q_0$ some initial vertex of $\mathcal{A}$.

Proposition 2.7 fails if the automaton is not HD. In fact, this property characterises history-determinism, which is the reason why HD automata are also called good-for-games in the literature. However, it should be noted that history-determinism and good-for-gameness have been generalised to other contexts in which they do not necessarily yield equivalent notions [13, 28].

**PROPOSITION 2.8 ([44]).** Let $\mathcal{A}$ be an automaton recognising $W_{\mathcal{A}} \subseteq \Sigma^{\omega}$ satisfying that for every game $\mathcal{G}$ suitable for transformations with acceptance set $W_{\mathcal{G}}$, Eve wins the game $\mathcal{G}$ from an initial vertex $v$ if and only if she wins $\mathcal{G} \times \mathcal{A}$ from $(v, q_0)$, for $q_0$ some initial vertex of $\mathcal{A}$. Then, $\mathcal{A}$ is history-deterministic.

## 2.2 Muller languages, cycles and the parity hierarchy

Languages commonly used as acceptance sets. We now define the main classes of languages used by $\omega$-regular automata as acceptance sets. We let $\Gamma$ stand for a finite set of colours.

**Büchi.** Given a subset $B \subseteq \Gamma$, we define the *Büchi language associated to B* as:

$$ \text{Büchi}_{\Gamma}(B) = \{w \in \Gamma^{\omega} \mid \text{Inf}(w) \cap B \neq \emptyset\}. $$
We say that a language $L \subseteq \Gamma^\omega$ is a *Büchi language* if there is a set $B \subseteq \Gamma$ such that $L = \text{Büchi}_\Gamma(B)$.

**coBüchi.** Given a subset $B \subseteq \Gamma$, we define the *coBüchi language associated to B* as:

$$ \text{coBüchi}_{\Gamma}(B) = \{w \in \Gamma^{\omega} \mid \text{Inf}(w) \cap B = \emptyset\}. $$

We say that a language $L \subseteq \Gamma^\omega$ is a *coBüchi language* if there is a set $B \subseteq \Gamma$ such that $L = \text{coBüchi}_\Gamma(B)$.

**Rabin.** A Rabin language is represented by a family $R = \{(G_1, R_1), \dots, (G_r, R_r)\}$ of *Rabin pairs*, where $G_j, R_j \subseteq \Gamma$. The *Rabin language associated to R* is defined as:

$$ \text{Rabin}_{\Gamma}(R) = \{w \in \Gamma^{\omega} \mid [\text{Inf}(w) \cap G_j \neq \emptyset \text{ and } \text{Inf}(w) \cap R_j = \emptyset] \text{ for some index } j\}. $$

If $[\text{Inf}(w) \cap G_j \neq \emptyset \text{ and } \text{Inf}(w) \cap R_j = \emptyset]$, we say that $w$ is *accepted by the Rabin pair* $(G_j, R_j)$. We say that a language $L \subseteq \Gamma^\omega$ is a *Rabin language* if there is a family of Rabin pairs $R$ such that $L = \text{Rabin}_\Gamma(R)$.

**Streett.** The *Streett language associated to* a family $S = \{(G_1, R_1), \dots, (G_r, R_r)\}$ of Rabin pairs is defined as:

$$ \text{Streett}_{\Gamma}(S) = \{w \in \Gamma^{\omega} \mid [\text{Inf}(w) \cap G_j \neq \emptyset \text{ implies } \text{Inf}(w) \cap R_j \neq \emptyset] \text{ for all indices } j\}. $$

We say that a language $L \subseteq \Gamma^\omega$ is a *Streett language* if there is a family of Rabin pairs $S$ such that $L = \text{Streett}_\Gamma(S)$.

**Parity.** We define the *parity language* over the alphabet $[d_{\min}, d_{\max}] \subseteq \mathbb{N}$ as:

$$ \text{parity}_{[d_{\min}, d_{\max}]} = \{w \in [d_{\min}, d_{\max}]^{\omega} \mid \min \text{Inf}(w) \text{ is even}\}. $$

We say that a language $L \subseteq \Gamma^\omega$ is a [*d*$_{min}$, *d*$_{max}$]-*parity language* if there is a mapping $\phi: \Gamma \to [d_{\min}, d_{\max}]$ such that for all $w \in \Gamma^\omega$, $w \in L$ if and only if $\phi(w) \in \text{parity}_{[d_{\min}, d_{\max}]}$. We say that $L$ is a *parity language* if there are $d_{\min}, d_{\max} \in \mathbb{N}$ such that $L$ is a [*d*$_{min}$, *d*$_{max}$]-*parity language*.

**Muller.** We define the *Muller language associated to* a family $\mathcal{F} \subseteq 2_+^\Gamma$ of non-empty subsets of $\Gamma$ as:

$$ \text{Muller}_{\Gamma}(\mathcal{F}) = \{w \in \Gamma^{\omega} \mid \text{Inf}(w) \in \mathcal{F}\}. $$

We say that a language $L \subseteq \Gamma^\omega$ is a *Muller language* if there is a family $\mathcal{F} \subseteq 2_+^\Gamma$ such that $L = \text{Muller}_\Gamma(\mathcal{F})$.

We drop the subscript $\Gamma$ (resp. $[d_{\min}, d_{\max}]$) whenever the set of colours is clear from the context. We remark that all languages of the classes above are *prefix-independent* (for all $w \in \Gamma^\omega$ and $u \in \Gamma^*$, $uw \in L$ if and only if $w \in L$).
We say that an acceptance condition (resp. transition system, automaton) is an *X condition* (resp. *X transition system, X automaton*), for *X* one of the classes of languages above, if its acceptance set is an *X language*. In the case of parity transition systems, we will always assume that the set of colours is a subset of $\mathbb{N}$ and $\phi$ is the identity function.

We let *DPA* stand for deterministic parity automaton and *DMA* for deterministic Muller automaton.

We discuss further classes of languages in Appendix A (generalised Büchi and coBüchi languages, as well as generalised weak acceptance). We refer to the survey [8] for a more detailed account on different types of acceptance conditions.

**REMARK 2.9 (Inclusions between classes).** We observe that there are many inclusions between the classes of languages that we have introduced. For example, Büchi languages are exactly [0, 1]-parity languages, and parity languages are Rabin languages [71]. In particular, all classes above are special cases of Muller languages. The relations between these classes of languages are outlined in Figure 2.

<figure><img src="image_11.png" /><figcaption>**Figure 2.** Relations between subclasses of Muller languages. An arrow from a class *X* towards a class *Y* means that if a language *L* ⊆ Γ<sup>ω</sup> is an *X* language, then it is also a *Y* language. Arrows obtained by transitivity have been omitted. Inclusions are strict: if an arrow from *X* to *Y* cannot be obtained by transitivity, then there are *X* languages that are not *Y* languages [94].</figcaption></figure>

**REMARK 2.10.** A language $L \subseteq \Gamma^\omega$ is a Muller language if and only if it satisfies:

$$ \text{For all } w, w' \in \Gamma^\omega, \text{ if } \text{Inf}(w) = \text{Inf}(w'), \text{ then } w \in L \iff w' \in L. $$

**REMARK 2.11 (Representation of acceptance conditions).** In practice, there exists a variety of ways to represent Muller languages and acceptance conditions of automata: using boolean formulas (Emerson-Lei conditions), as a list of accepting subsets of edges, etc. The complexity and practicality of algorithms manipulating automata and games may greatly differ depending on the representation of their acceptance conditions [45, 47]. However, in this work, we are mostly interested in the expressive power of acceptance conditions, and the results we present will not depend on how they are represented.

**EXAMPLE 2.12.** In Figure 3 we show three different types of automata over the alphabet $\Sigma = \{a, b\}$ recognising the language

$$ L = \{w \in \Sigma^\omega \mid w = ub^\omega \text{ or } (w = ua^\omega \text{ and } u \text{ has an even number of 'b's})\}. $$
<figure><img src="image_12.png" /><figcaption>**Figure 3.** Different types of automata recognising the language
$L = \{w \in \Sigma^\omega \mid w = ub^\omega \text{ or } (w = ua^\omega \text{ and } u \text{ has an even number of 'b's})\}$.</figcaption></figure>

**ω-regular languages.** The class of ω-regular languages plays a central role in the theory of formal languages and verification. The significance of ω-regular languages is (partly) due to the robustness of its definition, as they admit multiple equivalent characterisations relating different areas of study.

**PROPOSITION 2.13 ([71, 72]).** Let $L \subseteq \Sigma^\omega$ be a language of infinite words. The following properties are equivalent:

- *L can be recognised by a non-deterministic Büchi automaton.*

- *L can be recognised by a deterministic parity automaton.*

- *L can be recognised by a non-deterministic Muller automaton.*

A language satisfying the previous conditions is called *ω-regular*. Many other equivalent definitions exist. Notably, *ω-regular languages* are exactly the languages that can be defined using *monadic second-order logic* [17], those that can be described by using *ω-regular expressions* [67], and those that can be recognised by an *ω-semigroup* [77, Chapter 2].

**Cycles.** Let $\mathcal{T}S$ be a transition system with $V$ and $E$ as set of vertices and edges, respectively. A *cycle* of $\mathcal{T}S$ is a subset $\ell \subseteq E$ such that there is a finite path $v_0 \xrightarrow{e_0} v_1 \xrightarrow{e_1} v_2 \to \dots \xrightarrow{e_r} v_0$ with $\ell = \{e_0, e_1, \dots, e_r\}$. We remark that we do not require this *path* to be simple, that is, edges and vertices may appear multiple times. The set of *states of the cycle* $\ell$ is $\text{States}(\ell) = \{v_0, v_1, \dots, v_r\}$. The set of cycles of a transition system $\mathcal{T}S$ is written $\text{Cycles}(\mathcal{T}S)$. We will consider the set of cycles ordered by inclusion. For a state $v \in V$, we denote $\text{Cycles}_v(\mathcal{T}S)$ the subset of cycles of $\mathcal{T}S$ containing $v$. We remark that a vertex $v$ is recurrent if and only if $\text{Cycles}_v(\mathcal{T}S) \neq \emptyset$. We note that
$Cycles_v(TS)$ is closed under union; moreover, the union of two cycles $l_1, l_2 \in Cycles(TS)$ is again a cycle if and only if there is some state $v$ such that both $l_1$ and $l_2$ contain $v$.

Let $\mathcal{T}S$ be a Muller transition system with acceptance condition $(\gamma, \Gamma, \text{Muller}_\Gamma(\mathcal{F}))$. Given a cycle $\ell \in Cycles(\mathcal{T}S)$, we say that $\ell$ is *accepting* (resp. *rejecting*) if $\gamma(\ell) \in \mathcal{F}$ (resp. $\gamma(\ell) \notin \mathcal{F}$). We remark that the maximal cycles of a transition system are exactly the sets of edges of its strongly connected components. In particular, we can apply the adjectives *accepting* and *rejecting* similarly to the SCCs of a Muller transition system.

We note that, by definition, the acceptance of a run in a Muller transition system only depends on the set of transitions taken infinitely often. For any infinite run $\rho \in \mathcal{R}un(\mathcal{T}S)$, the set of transitions taken infinitely often forms a cycle, $\text{Inf}(\rho) = l_\rho \in Cycles(\mathcal{T}S)$, and $\rho$ is an accepting run if and only if $l_\rho$ is an accepting cycle.

**The deterministic and history-deterministic parity hierarchy.** As we have mentioned, every $\omega$-regular language can be recognised by a deterministic parity automaton, but the number of colours required to do so might be arbitrarily large. We can assign to each $\omega$-regular language the optimal number of colours needed to recognise it using a deterministic automaton. We obtain in this way the *deterministic parity hierarchy*, having its origins in the works of Wagner [93], Kaminski [50], and Mostowski [71]. We represented this hierarchy in Figure 4. This hierarchy is strict, that is, for each level of the hierarchy there are languages that do not appear in lower levels [93]. It is known that we can decide in polynomial time the parity index of an $\omega$-regular language represented by a deterministic parity automaton [19], but this problem is NP-complete if the language is given by a deterministic Rabin or Streett automaton [56].

<figure><img src="image_13.png" /><figcaption>**Figure 4.** The (history-)deterministic parity hierarchy.</figcaption></figure>

**DEFINITION 2.14 (Parity index of a language).** Let $L \subseteq \Sigma^\omega$ be an $\omega$-regular language. We say that $L$ has *parity index at least* $[0, d-1]$ (resp. $[1, d]$) if any DPA recognising $L$ with a parity acceptance condition over the set of colours $[d_{\min}, d_{\max}]$ satisfies that $d_{\max} - d_{\min} \ge d-1$, and in case of equality $d_{\min}$ is even (resp. odd). We say that the *parity index* of $L$ is $[0, d-1]$ (resp.
[1, d]) if, moreover, there is a DPA recognising L with a parity acceptance condition over the set of colours [0, d − 1] (resp. [1, d]).

We say that *L* has *parity index at least Weak*<sub>*d*</sub> if any DPA recognising *L* with a parity acceptance condition over the set of colours [*d*<sub>min</sub>, *d*<sub>max</sub>] satisfies that *d*<sub>max</sub> − *d*<sub>min</sub> ≥ *d*. We say that the parity index of *L* is *Weak*<sub>*d*</sub> if, moreover, there are DPAs *A*<sub>1</sub> and *A*<sub>2</sub> recognising *L* with parity acceptance conditions over the sets of colours [0, *d*) and [1, *d* + 1], respectively.

If follows from the definition that for each ω-regular language L, there is a unique d
such that either L has parity index [0, d − 1], [1, d] or Weak<sub>d</sub>, and these options are mutually
exclusive. See also Appendix A for more details about languages of parity index Weak<sub>d</sub>.

One of our contributions is to show that the parity index also applies to Muller automata: any deterministic or HD Muller automaton recognising an ω-regular language of parity index [0, d − 1] uses at least d different colours (Proposition 6.14).

The following proposition states that the notion of parity index of a language does not
change by using HD automata instead of deterministic ones in the definition. However, for
non-deterministic automata, the hierarchy collapses at level [0, 1] (Büchi automata) [67].

**PROPOSITION 2.15 ([12, Theorem 19]).** Let $\mathcal{A}$ be an HD parity automaton recognising a language $L$, and assume that the parity index of $L$ is $[0, d-1]$ (resp. $[1, d]$). Then, the acceptance condition of $\mathcal{A}$ uses at least $d$ output colours, and if it uses exactly $d$ colours, the least of them is even (resp. odd). If the parity index of $L$ is $\textit{Weak}_d$, then $\mathcal{A}$ uses at least $d+1$ output colours.

We show next that the **parity index** of an ω-regular language can be read directly from a
deterministic **Muller automaton**.

Let $\mathcal{T}\mathcal{S}$ be a transition system using the Muller acceptance condition $(\gamma, \Gamma, \text{Muller}_\Gamma(\mathcal{F}))$.
A *d-flower* over a state $v$ of $\mathcal{T}\mathcal{S}$ is a set of $d$ cycles $\ell_1, \ell_2, \dots, \ell_d \in \text{Cycles}_v(\mathcal{T}\mathcal{S})$ such that $\ell_i \supseteq \ell_{i+1}$
and $\gamma(\ell_i) \in \mathcal{F} \iff \gamma(\ell_{i+1}) \notin \mathcal{F}$. We say that it is a *positive flower* if $\gamma(\ell_1) \in \mathcal{F}$ and that it is
*negative* otherwise.

**LEMMA 2.16 (Flower Lemma, [76, 93])**. Let $\mathcal{A}$ be a DMA. If $\mathcal{A}$ admits an accessible positive (resp. negative) *d-flower*, then $\mathcal{L}(\mathcal{A})$ has parity index at least $[0, d-1]$ (resp. $[1, d]$). If $\mathcal{A}$ admits both accessible positive and negative *d-flowers*, then $\mathcal{L}(\mathcal{A})$ has parity index at least $\text{Weak}_d$.

Conversely, if an ω-regular language *L* has parity index at least [0, *d* − 1] (resp. [1, *d*]), then any DMA recognising *L* admits a positive (resp. negative) *d-flower*.

**2.3 Trees**

We introduce some technical notations that will be used to define automata based on the Zielonka tree (Sections 4.2 and 4.3) and the transformations based on the ACD (Sections 5.2 and 5.3).
A tree $T = (N, \leq)$ is a non-empty finite set of *nodes* $N$ equipped with an order relation $\leq$
called the *ancestor relation* (we say that $x$ is an *ancestor* of $y$, or that $y$ is below $x$ if $x \leq y$), such
that (1) there is a minimal node for $\leq$, called *the root*, and (2) the *ancestors* of an element are
totally ordered by $\leq$. The converse relation $\geq$ is the *descendant relation*. Maximal nodes are
called *leaves*, and the set of leaves of $T$ is denoted by $\text{Leaves}(T)$. The minimal strict *descendants* of a node are called its *children*. The set of children of $n$ in $T$ is written $\text{Children}_T(n)$. The *depth* of a node $n$ is the number of strict *ancestors* of it. We note it $\text{Depth}(n)$. The *height* of a tree $T$ is the maximal length of a chain for the *ancestor relation*. A *subtree* of $T = (N, \leq)$ is a tree $T' = (N', \leq')$ such that $N' \subseteq N$, $\leq'$ is the restriction of $\leq$ to $N'$ and $\text{Children}_{T'}(n') \subseteq \text{Children}_T(n')$ for all $n' \in N'$. Given a node $n$ of a tree $T$, the *subtree of $T$ rooted at $n$* is the subtree of $T$ whose nodes are the nodes of $T$ that have $n$ as ancestor. A *branch* is a maximal chain of the order $\leq$.

An *ordered tree* is a tree $T = (N, \leq)$ together with a total order $\leq_n$ over $\text{Children}_T(n)$, for each node $n \in N$ that is not a leaf. We remark that a *subtree* of an *ordered tree* can be seen as an *ordered tree* with the restrictions of these total orders to the existing children. These orders induce a total order $\leq_T$ on $T$ (the depth-first order): let $n, n' \in N$. If $n \leq n'$, we let $n \leq_T n'$. If $n$ and $n'$ are incomparable for the *ancestor relation*, let $n_m$ be the *deepest common ancestor*, and let $n_1, n_2 \in \text{Children}_T(n_m)$ such that $n_1 \leq n$ and $n_2 \leq n'$. We let $n \leq_T n'$ if and only if $n_1 \leq_n n_2$. In the latter case, we say that $n$ is *on the left of $n'$*.

We will make use of these orders through some auxiliary functions. The function $\text{Next}(n)$ gives the next sibling of $n$ in the tree, in a cyclic order. Two examples are shown on the left of Figure 5. The function $\text{Jump}(n, n_m)$ (for $n_m$ an ancestor of $n$) outputs the node given by the following procedure: we go up the tree from $n$ to $n_m$; then, we change to the next branch below $n_m$ (in a cyclic way) and go down again taking the leftmost leaf below it. Examples are given on the right of Figure 5.

<figure><img src="image_14.png" /></figure>

$\text{Next}(5) = 4$ and $\text{Next}(2) = 3$.

<figure><img src="image_15.png" /></figure>

$\text{Jump}(5, 1) = 4$ and $\text{Jump}(6, 0) = 7$.

<caption>**Figure 5.** Illustration of the functions *Next* and *Jump*.</caption>

We give the formal definition now. We also need to define these notions taking into account
some *subtree* $T'$ of $T$: the input can be any node in $T$, but the final output is restricted to be a
node in $T'$. Examples 4.5 and 5.5 further illustrate these notations.
Let $T'$ be a subtree of $T$ and $n'$ a node of $T'$ that is not a leaf in $T'$. For $n \in \text{Children}_T(n')$, we let

$$ \text{Next}_{T'}(n) = \begin{cases} \min_{\le n'} \{n'' \in \text{Children}_{T'}(n') \mid n < n' \text{ and } n''\} & \text{if this set is not empty,} \\ \min_{\le n'} \{n'' \in \text{Children}_{T'}(n')\} & \text{otherwise.} \end{cases} $$

That is, the function $\text{Next}_{T'}$ maps each child of $n'$ to a sibling that is its successor in $T'$ for the $\le n$-order, in a cyclic way.

Let $T' = (N', \le')$ be a subtree of $T = (N, \le)$. Let $n' \in N'$ and $n \in N$ such that $n'$ is a (non-strict) ancestor of $n$ ($n' \le n$). If $n'$ is a leaf of $T'$, we define $\text{Jump}_{T'}(n, n') = n'$. For $n' = n$, we define $\text{Jump}_{T'}(n, n')$ to be the leftmost leaf of $T'$ below $n'$. In any other case, we define $\text{Jump}_{T'}(n, n') = l_{\text{dest}} \in \text{Leaves}(T')$ to be the only node satisfying that there are two children of $n'$ in $T$, $n_1, n_2 \in \text{Children}_T(n')$ such that:

- $n_1 \le n$,

- $n_2 = \text{Next}_{T'}(n_1)$ (in particular, $n_2 \in N'$),

- $l_{\text{dest}} \ge n_2$ is the leftmost<fnref n="3" /> leaf in $T'$ (minimal for $\le_{T'}$) below $n_2$.

We remark that $n_1 = n_2$ if $n_1$ is the only child of $n'$ in $T'$.

An A-labelled (ordered) tree is an (ordered) tree $T$ together with a labelling function $v: N \to A$. A set of trees is called a forest.

### 3. Morphisms as witnesses of transformations

As mentioned in the introduction, all existing methods transforming a Muller into a parity automaton follow a common approach: they turn each state $q$ into multiple states of the form $(q, x)$, where $x$ stores some information about the acceptance condition. It is reasonable to put forward this characteristic as the defining trait establishing that an automaton has been obtained as a transformation of another. In this section, we introduce morphisms of transition systems, which formalise this idea: a morphism $\varphi: \mathcal{B} \to \mathcal{A}$ witnesses that each state $q \in \mathcal{A}$ has been augmented to $\varphi^{-1}(q)$. To ensure that $\mathcal{B}$ is semantically equivalent to $\mathcal{A}$, the morphism has to grant a further guarantee, namely, we need to be able to simulate runs of $\mathcal{A}$ in $\mathcal{B}$. We will examine two properties of morphisms that allow to do this: local bijectivity and history-determinism for mappings.

We note that almost identical notions of morphisms were considered by Sakarovitch [84, Section 2] and Sakarovitch and de Souza [85, Section 2.5] in the context of transducers over finite words.<fnref n="4" /> Similar ideas to the ones presented here were used by Colcombet to characterise

<footnote n="3">3 The choice of the leftmost leaf is arbitrary. In all our uses of the function Jump, it could be replaced by any leaf below $n_2$.</footnote>

<footnote n="4">4 We thank Géraud Sénizergues for pointing us to the works of Sakarovitch and de Souza.</footnote>
history-deterministic automata: an automaton is history-deterministic if it is the homomorphic image of a (possibly infinite) deterministic automaton for the same language [27, Definition 13].

In all of this section, $\mathcal{T}S = (G, \text{Acc})$ and $\mathcal{T}S' = (G', \text{Acc}')$ will stand for transition systems with underlying graphs $G = (V, E, \text{Source}, \text{Target}, I)$ and $G' = (V', E', \text{Source}', \text{Target}', I')$, and acceptance conditions $\text{Acc} = (\gamma, \Gamma, \mathcal{W})$ and $\text{Acc}' = (\gamma', \Gamma', \mathcal{W}')$.

## 3.1 Morphisms of transition systems

**DEFINITION 3.1.** A morphism of graphs from $G$ to $G'$ is a pair of mappings $\varphi = (\varphi_V : V \to V', \varphi_E : E \to E')$ preserving edges, that is:

- Source'($\varphi_E(e)$) = $\varphi_V(\text{Source}(e))$ for every $e \in E$,

- Target'($\varphi_E(e)$) = $\varphi_V(\text{Target}(e))$ for every $e \in E$.

We say that $\varphi$ is a *morphism of pointed graphs* if, moreover, it preserves initial vertices:

- $\varphi_V(v_0) \in I'$ for every $v_0 \in I$.

If $(G, (l_V, L_V), (l_E, L_E))$ and $(G, (l'_V, L'_V), (l'_E, L'_E))$ are labelled graphs, we say that $\varphi$ is a *morphism of labelled graphs* if, in addition, $L_V \subseteq L'_V$, $L_E \subseteq L'_E$ and $\varphi$ preserves labels:

- $l'_V(\varphi_V(v)) = l_V(v)$ for every $v \in V$,

- $l'_E(\varphi_E(e)) = l_E(e)$ for every $e \in V$.

We will write $\varphi: G \to G'$ to denote a morphism $\varphi$. We will drop the subscript in $\varphi_V$ and $\varphi_E$ whenever it can be deduced from its use. We say that $\varphi$ is *surjective* (resp. *injective*) if $\varphi_V$ is.

Note that the mapping $\varphi_V$ does not completely determine a morphism $\varphi$, as multiple edges might exist between two given vertices. However, if $G$ has no isolated vertices, the mapping $\varphi_E$ does determine it. It will be convenient nonetheless to also keep the notation for $\varphi_V$.

We remark that the image of a run in $G$ by a morphism of pointed graphs is a run in $G'$. Therefore, a morphism of pointed graphs $\varphi: G \to G'$ induces a mapping

$$ \varphi_{\mathcal{R}uns}: \mathcal{R}un^{\infty}(G) \to \mathcal{R}un^{\infty}(G'). $$

**DEFINITION 3.2.** Let $\mathcal{T}S$ and $\mathcal{T}S'$ be two (labelled) transition systems. A weak morphism of (labelled) transition systems $\varphi: \mathcal{T}S \to \mathcal{T}S'$ is a morphism of (labelled) pointed graphs between their underlying graphs, $\varphi: G \to G'$. We say that it is a morphism of (labelled) transition systems if it preserves the acceptance of runs, that is:

- for every infinite run $\rho \in \mathcal{R}un(\mathcal{T}S)$, $\gamma(\rho) \in \mathcal{W} \iff \gamma'(\varphi_{\mathcal{R}uns}(\rho)) \in \mathcal{W}'$.

A morphism of labelled TS between automata (resp. between games) will be called a *morphism of automata* (resp. *morphism of games*).
We say that a morphism of TS $\varphi: \mathcal{TS} \to \mathcal{TS}'$ is an *isomorphism* if $\varphi_V$ and $\varphi_E$ are bijective and $\varphi^{-1} = (\varphi_V^{-1}, \varphi_E^{-1})$ is a morphism from $\mathcal{TS}'$ to $\mathcal{TS}$. In that case, we say that $\mathcal{TS}$ and $\mathcal{TS}'$ are *isomorphic*.

**3.2 Local properties of morphisms**

**DEFINITION 3.3.** A morphism of pointed graphs $\varphi : G \to G'$ is called:

— *Locally surjective* if it verifies:

1. For every $v'_0 \in I'$ there exists $v_0 \in I$ such that $\varphi(v_0) = v'_0$.

2. For every $v \in V$ and every $e' \in \mathrm{Out}(\varphi(v))$ there exists $e \in \mathrm{Out}(v)$ such that $\varphi(e) = e'$.

— *Locally injective* if it verifies:

1. For every $v'_0 \in I'$, there is at most one $v_0 \in I$ such that $\varphi(v_0) = v'_0$.

2. For every $v \in V$ and every couple $e_1, e_2 \in \mathrm{Out}(v)$, $\varphi(e_1) = \varphi(e_2)$ implies $e_1 = e_2$.

— *Locally bijective* if it is both locally surjective and locally injective.

Equivalently, a morphism of pointed graphs $\varphi$ is locally surjective (resp. locally injective) if for every $v \in V$ the restriction of $\varphi_E$ to $\mathrm{Out}(v)$ is a surjection onto $\mathrm{Out}(\varphi(v))$ (resp. an injection into $\mathrm{Out}(\varphi(v)))$, and the restriction of $\varphi_V$ to $I$ is a surjection onto $I'$ (resp. an injection into $I'$).

Let $\varphi: \mathcal{TS} \to \mathcal{TS}'$ be a (weak) morphism, and let $\rho' = v'_0 \xrightarrow{e'_0} v'_1 \xrightarrow{e'_1} \dots$ be a run in $\mathcal{TS}'$. If $\varphi$ is locally surjective, we can pick an initial vertex $v_0$ in $\varphi^{-1}(v'_0)$ and build step-by-step a run $\rho$ in $\mathcal{TS}$ from $v_0$ that is sent to $\rho'$ under $\varphi$. If $\varphi$ is moreover locally bijective, the choices of the initial vertex and the edges at each step are unique, so runs in $\mathcal{TS}'$ can be simulated in $\mathcal{TS}$ via $\varphi$ in a unique way. Said differently, if $\varphi: \mathcal{TS} \to \mathcal{TS}'$ is a locally bijective morphism, we can see $\mathcal{TS}$ as an automaton that processes runs of $\mathcal{TS}'$ in a deterministic fashion (this idea is formalised in Section 5.4.3). This property will allow us to show that a locally bijective morphism witnesses the semantic equivalence of $\mathcal{TS}$ and $\mathcal{TS}'$ (see Section 3.4).

We note that the notion of locally bijective morphisms of transition systems almost coincide with the usual concept of bisimulation. The main difference is that locally bijective morphisms treat the acceptance of a run as a whole; we do not impose the output colour of an edge $\gamma(e)$ to coincide with the colour $\gamma'(\varphi(e))$. This allows us to compare transition systems using different types of acceptance conditions.

**REMARK 3.4.** Let $\varphi$ be a morphism of pointed graphs.

1. If $\varphi$ is locally surjective, then $\varphi_{\mathcal{R}uns}$ is surjective.

2. If $\varphi$ is locally injective, then $\varphi_{\mathcal{R}uns}$ is injective.

3. If $\varphi$ is locally bijective, then $\varphi_{\mathcal{R}uns}$ is bijective.

In the following, the weak morphisms under consideration will be locally surjective. The next lemma ensures that we can assume that they are surjective without loss of generality.
**LEMMA 3.5.** If $\varphi: \mathcal{TS} \to \mathcal{TS}'$ is a locally surjective weak morphism, it is onto the accessible part of $\mathcal{TS}'$. That is, for every accessible state $v' \in \mathcal{TS}'$, there exists some state $v \in \mathcal{TS}$ such that $\varphi_v(v) = v'$. In particular, if every state of $\mathcal{TS}'$ is accessible, $\varphi$ is surjective.

**PROOF.** Let $v'$ be an accessible state of $\mathcal{TS}'$. By definition, there exists a finite run $\rho'$ from an initial vertex of $\mathcal{TS}'$ to $v'$. By surjectivity of $\varphi_{\mathcal{R}uns}$, there is a finite run $\rho \in \mathcal{R}un^{\text{fin}}(\mathcal{TS})$ such that $\varphi_{\mathcal{R}uns}(\rho) = \rho'$. As $\varphi$ is a morphism of graphs, we have that $\varphi(\text{Target}(\rho)) = v'$. ■

**EXAMPLE 3.6.** In Figure 6 we provide an example of a locally bijective morphism between the two rightmost transition systems from Figure 3 (we have removed input letters for simplicity). We recall that the acceptance set of the rightmost transition system is the Muller language associated to $\mathcal{F} = \{\{\alpha\}, \{\beta\}\}$. The morphism is given by $\varphi_V(v_1) = \varphi_V(v_2) = v'$ and $\varphi_V(v_2) = v'_2$. In this case, the mapping $\varphi_V$ determines a unique morphism; the (uniquely determined) mapping $\varphi_E$ is represented by the colours of the edges in the figure. It is easy to check that this mapping preserves the acceptance of runs and that it is locally bijective.

<figure><img src="image_16.png" /><figcaption>**Figure 6.** A locally bijective morphism from a parity TS to a Muller TS with acceptance set given by $\mathcal{F} = \{\{\alpha\}, \{\beta\}\}$. We use dashed arrows to represent the images of vertices, and colours to represent the image of edges (that can be inferred from $\varphi_V$).</figcaption></figure>

**3.3 History-deterministic mappings**

Locally bijective morphisms are a natural generalisation of the composition of a transition system with a deterministic automaton. They guarantee the semantic equivalence of the two involved transition systems, but at the cost of the use of some strong hypothesis, as the outgoing edges of a vertex $v$ must exactly correspond to the outgoing edges of its image $\varphi(v)$. We can imagine correct transformations that do not satisfy this requirement. Notably, history-deterministic automata have been introduced as a method to bypass this restriction, with the hope of outperforming transformations that are witnessed by locally bijective morphisms. In
general, if $\mathcal{A}$ is an HD automaton recognising the acceptance set of $\mathcal{T}\mathcal{S}$, the composition $\mathcal{T}\mathcal{S} \times \mathcal{A}$ does not admit a locally bijective morphism to $\mathcal{T}\mathcal{S}$, although it shares most semantic properties with it (Proposition 2.7).

We introduce next HD mappings, which are weak morphisms with the minimal set of hypothesis ensuring that, if $\varphi: \mathcal{T}\mathcal{S} \to \mathcal{T}\mathcal{S}'$ is an HD mapping, we can simulate runs of $\mathcal{T}\mathcal{S}'$ in $\mathcal{T}\mathcal{S}$ via $\varphi$ while preserving their acceptance. This will allow us to show that $\varphi$ witnesses the semantic equivalence of $\mathcal{T}\mathcal{S}$ and $\mathcal{T}\mathcal{S}'$ (Section 3.4).

<figure><img src="image_17.png" /><figcaption>**Figure 7.** Different types of morphisms and the relations between them. The fact that locally surjective morphisms are HD mappings is given by Lemma 3.12. Note that HD mappings are also locally surjective weak morphisms (Remark 3.7).</figcaption></figure>

**History-deterministic mappings.** Let $\mathcal{T}\mathcal{S}$ and $\mathcal{T}\mathcal{S}'$ be transition systems and $\varphi: \mathcal{T}\mathcal{S} \to \mathcal{T}\mathcal{S}'$ a weak morphism between them. A resolver simulating $\varphi$ consists in a pair of functions $r_{\text{Init}}: I' \to I$ and $r: E^* \times E' \to E$ such that:

1. $\varphi(r_{\text{Init}}(v'_0)) = v'_0$ for all $v'_0 \in I'$,

2. $\varphi(r(\rho, e')) = e'$, for all $\rho \in E^*$ and $e' \in E'$,

3. if $e'_0 \in \text{Out}(I')$, $\text{Source}(r(\varepsilon, e'_0)) = r_{\text{Init}}(\text{Source}(e'_0))$, and

4. if $\rho$ is a finite run in $\mathcal{T}\mathcal{S}$ ending in $v$ and $e' \in \text{Out}(\varphi(v))$, then $r(\rho, e') \in \text{Out}(v)$.

Given a run $\rho' = e'_0 e'_1 \cdots \in \mathcal{R}un^\infty(\mathcal{T}\mathcal{S}')$ starting in some $v'_0 \in I'$, the run induced by $r$ is the sequence $r_{\mathcal{R}uns}(\rho') = e_0 e_1 e_2 \cdots \in \mathcal{R}un^\infty(\mathcal{T}\mathcal{S})$ defined by $e_i = r(e_0 \dots e_{i-1}, e'_i)$, which is indeed a run in $\mathcal{T}\mathcal{S}$. We say that the resolver is *sound* if for every accepting run $\rho' \in \mathcal{R}un(\mathcal{T}\mathcal{S}')$, the run $r_{\mathcal{R}uns}(\rho')$ is accepting in $\mathcal{T}\mathcal{S}$. Note that we do not impose $r_{\mathcal{R}uns}(\rho')$ to be rejecting if $\rho'$ is.

**REMARK 3.7.** Provided that all states of $\mathcal{T}\mathcal{S}'$ are accessible, a resolver simulating $\varphi$ can only exist if $\varphi$ is a locally surjective weak morphism.

Said differently, a sound resolver simulating $\varphi$ is a winning strategy for the player Dupli-cator in the following game:
— In round 0, Spoiler picks an initial vertex $v'_0$ in $\mathcal{T}S'$. Duplicator responds by picking an initial vertex $v_0$ in $\mathcal{T}S$ such that $\varphi(v_0) = v'_0$.

— In round $n > 0$, Spoiler picks an edge $e'_n$ in $\mathcal{T}S'$, and Duplicator responds by picking an edge $e_n$ in $\mathcal{T}S$ such that $\varphi(e_n) = e'_n$.

— Duplicator wins if either $e_1e_2\dots$ is an accepting run in $\mathcal{T}S$ from $v_0$ or $e'_1e'_2\dots$ is not an accepting run in $\mathcal{T}S'$ from $v'_0$ (it is either not a run from $v_0$ or not accepting). Spoiler wins otherwise.

**DEFINITION 3.8.** Let $\mathcal{T}S$ and $\mathcal{T}S'$ be (labelled) transition systems. A history-deterministic mapping (HD mapping) of transition systems from $\mathcal{T}S$ to $\mathcal{T}S'$ is a pair of mappings $\varphi = (\varphi_V : V \to V', \varphi_E : E \to E')$ such that:

— $\varphi$ is a weak morphism,

— $\varphi$ preserves accepting runs: $\rho \in \mathcal{R}un(\mathcal{T}S)$ and $\gamma(\rho) \in \mathcal{W} \implies \gamma'(\varphi_{\mathcal{R}uns}(\rho)) \in \mathcal{W'}$, and

— there exists a sound resolver simulating $\varphi$.

Even if a history-deterministic mapping is not necessarily locally bijective (and not even a morphism of transition systems), the existence of a sound resolver allows us to define a right inverse to $\varphi_{\mathcal{R}uns}$ preserving the acceptance of runs.

**LEMMA 3.9.** Let $\varphi: \mathcal{T}S \to \mathcal{T}S'$ be an HD mapping and let $(r_{\text{Init}}, r)$ be a sound resolver simulating it. The following holds:

— $\varphi_{\mathcal{R}uns} \circ r_{\mathcal{R}uns} = \text{Id}_{\mathcal{R}un}^{\infty}(\mathcal{T}S')$.

— $r_{\mathcal{R}uns}$ preserves the acceptance of runs in $\mathcal{T}S'$, that is, for every run $\rho' \in \mathcal{R}un(\mathcal{T}S')$, $\rho'$ is accepting if and only if $r_{\mathcal{R}uns}(\rho')$ is accepting in $\mathcal{T}S$.

**PROOF.** The first item follows from the fact that $\varphi(r(\rho, e')) = e'$ for every $\rho \in E^*$ and $e' \in E'$.

For the second item, the definition of a sound resolver imposes that if $\rho'$ is accepting, so is $r_{\mathcal{R}uns}(\rho')$. For the other direction, if $r_{\mathcal{R}uns}(\rho')$ is accepting, then $\varphi_{\mathcal{R}uns}(r_{\mathcal{R}uns}(\rho')) = \rho'$ has to be accepting, as an HD mapping preserves accepting runs. ■

**EXAMPLE 3.10.** In Figure 8 we give an example of a weak morphism $\varphi: \mathcal{T}S \to \mathcal{T}S'$ that is a history-deterministic mapping, but which is neither a morphism, nor locally bijective. Transition system $\mathcal{T}S$, on the left of the figure, is a parity TS (more precisely, a coBüchi TS). Transition system $\mathcal{T}S'$, depicted on the right of the figure, is a Muller TS using as acceptance set the Muller language associated to $\mathcal{F} = \{\{\alpha\}, \{\alpha, \beta\}, \{\alpha, \lambda\}\}$; that is, a run in $\mathcal{T}S'$ is accepting if and only if it eventually avoids either transition $e'$ or transition $f'$. The weak morphism we propose is given by: $\varphi(v_0) = \varphi(v_1) = \varphi(v_2) = v'$, and $\varphi(u_1) = \varphi(u_2) = u'$. The image of most edges is uniquely determined, and we use colours to represent them. We have named the only edges whose image is not uniquely determined, and we define $\varphi(e_1) = \varphi(e_2) = e'$ and $\varphi(f_1) = \varphi(f_2) = f'$.
<figure><img src="image_18.png" /><figcaption>**Figure 8.** A history-deterministic mapping from a parity TS to a Muller TS with acceptance set given by $\mathcal{F} = \{\{\alpha\}, \{\alpha, \beta\}, \{\alpha, \lambda\}\}$. We use dashed arrows to represent the images of vertices, and colours to represent the image of edges.</figcaption></figure>

We remark that $\varphi$ does not preserve rejecting runs. Indeed, a run in $\mathcal{T}S$ alternating between $v_0$ and $u_1$, taking transition $f_1$ infinitely often, is rejecting, but its image is accepting in $\mathcal{T}S'$. However, $\varphi$ preserves accepting runs: a run is accepting in $\mathcal{T}S$ if and only if it eventually stays in $\{v_1, u_1\}$ or in $\{v_2, u_2\}$. In the first case, the image under $\varphi$ avoids transition $f'$ in $\mathcal{T}S'$, and in the second case, its image avoids transition $e'$.

Finally, we describe a sound resolver simulating $\varphi$. When simulating a run from $\mathcal{T}S'$ in $\mathcal{T}S$, we have a choice to make only when we are in state $v_0$. If the previous transition in $\mathcal{T}S'$ was $e'$, we will go up, that is, $v' \xrightarrow{\alpha} u'$ is simulated by $v_0 \xrightarrow{1} u_1$ and $v' \xrightarrow{\alpha} v'$ is simulated by $v_0 \xrightarrow{1} v_1$. If the previous transition in $\mathcal{T}S'$ was $f'$, we will go down symmetrically. In this way, if transition $f'$ is eventually not visited by the run in $\mathcal{T}S'$, we ensure to stay in $\{v_1, u_1\}$ in $\mathcal{T}S$ (and symmetrically, we ensure to stay in $\{v_2, u_2\}$ if $e'$ is avoided in $\mathcal{T}S'$). $\blackdiamond$

**History-deterministic-for-games mappings.** In the case of games, we need to slightly strengthen the definition of HD mappings to guarantee that, if there is a suitable mapping $\varphi: G \to G'$, then $G$ and $G'$ have the same winner. In order to show that if Eve wins $G'$ then she wins $G$, we need a method to transfer strategies in $G'$ to $G$. A regular resolver simulating $\varphi$ does not suffice to do this, as it does not take into account the partition into Eve and Adam vertices. We need to be able to simulate a play of $G'$ in $G$ in a two-players-game fashion, Adam's moves will be simulated by Adam, and Eve's moves by Eve. This idea leads to the notion of HD-for-games mapping.

Let $G$ and $G'$ be two games, and $\varphi: G \to G'$ be a weak morphism between them admitting a resolver $(r_{\text{Init}}, r)$ simulating $\varphi$. Given runs $\rho' = e'_0 e'_1 \dots \in \mathcal{R}un(G')$ and $\rho = e_0 e_1 \dots \in \mathcal{R}un(G)$, we say that $\rho$ is *consistent with* $(r_{\text{Init}}, r)$ over $\rho'$ if:

1. $\text{Source}(e_0) = r_{\text{Init}}(\text{Source}(e'_0)),$
2. $\varphi(e_i) = e'_i$, and

3. for every finite prefix $e_0e_1\dots e_{n-1} \subseteq \rho$ ending in a vertex controlled by Eve, the next edge in $\rho$ is $e_n = r(e_0\dots e_{n-1}, e'_n)$.

We remark that there exists at least one run consistent with ($r_{\text{Init}}$, $r$) over $\rho'$, namely $r_{\text{Runs}}(\rho')$.
We say that ($r_{\text{Init}}$, $r$) is *sound for G* if it verifies that for any accepting run $\rho' \in \mathcal{R}un(G')$, all runs consistent with ($r_{\text{Init}}$, $r$) over $\rho'$ are accepting in *G*.

Said differently, a resolver sound for $\mathcal{G}$ is a winning strategy for Duplicator in the following game:

- In round 0, Spoiler picks an initial vertex $v'_0$ in $\mathcal{G}'$. Duplicator responds by picking an initial vertex $v_0$ in $\mathcal{G}$ such that $\varphi(v_0) = v'_0$.

- In round $n > 0$, Spoiler picks an edge $e'_n$ in $\mathcal{G}'$. If $v_{n-1}$ is controlled by Adam, Spoiler chooses an edge $e_n = v_{n-1} \to v_n \in \text{Out}(v_{n-1})$ such that $\varphi(e_n) = e'_n$. If $v_n$ is controlled by Eve, it is Duplicator who chooses one such $e_n$.

- Duplicator wins if either $e_1e_2\dots$ is an accepting run in $\mathcal{G}$ from $v_0$ or $e'_1e'_2\dots$ is not an accepting run in $\mathcal{G}'$ from $v'_0$. Spoiler wins otherwise.

**DEFINITION 3.11.** An HD mapping of games $\varphi : \mathcal{G} \to \mathcal{G}'$ is called *history-deterministic-for-games* if it admits a resolver sound for $\mathcal{G}$.

Whenever we apply the term HD-for-games to a map $\varphi : \mathcal{TS} \to \mathcal{TS}'$, it will implicitly imply
that $\mathcal{TS}$ and $\mathcal{TS}'$ are games (that is, they have a fixed vertex-labelling $l_{\text{Players}} : V \to \{\text{Eve}, \text{Adam}\}$),
and that $\varphi$ preserves those vertex-labellings).

In the next lemma, we prove that HD and HD-for-games mappings are a strict generalisation
of locally surjective morphisms (and therefore, also of locally bijective ones). On the other hand,
we remark that HD mappings must be locally surjective, but they are not necessarily morphisms
(they might not preserve rejecting runs).

**LEMMA 3.12.** If $\varphi : \mathcal{TS} \to \mathcal{TS}'$ is a locally surjective morphism, it is also an HD mapping. If $\mathcal{TS}$ and $\mathcal{TS}'$ are games, $\varphi$ is moreover HD-for-games.

**PROOF.** We need to define a sound resolver simulating $\varphi$. Let $r_{\text{Init}}: I' \to I$ be any function choosing initial vertices satisfying that $\varphi \circ r_{\text{Init}} = \text{Id}_{I'}$ (which exists by local surjectivity of $\varphi$). For each $v \in V$ and edge $e' \in \text{Out}(\varphi(v))$ we choose one edge $f(v, e') \in \text{Out}(v)$ such that $\varphi(f(v, e')) = e'$ (which exists by local surjectivity), and we let $r$ be the resolver induced by these choices. Formally, we define $r: E^* \times E' \to E$ recursively. For the base case, if $e'_0 \in \text{Out}(v')$, with $v' \in I'$, we define $r(\varepsilon, e'_0) = f(r_{\text{Init}}(v'), e'_0)$. Assume that $r$ has been defined for runs of length $\le n$, and let $\rho \in E^*$ be of length $n+1$ and $e' \in E'$. If $\rho$ is not a run or $e' \notin \text{Out}(\text{Target}(\varphi(\rho)))$, we let $r(\rho, e')$ be any edge in $\varphi^{-1}(e')$. If not, let $v = \text{Target}(\rho)$ and define $r(\rho, e')$ to be the edge $f(v, e')$.
It is straightforward to check that $(r_{\mathbb{R}_{\text{uns}}}(\rho'), r)$ is indeed a resolver (for every run $\rho' \in \mathbb{R}_{\text{un}}(\mathcal{T}\mathcal{S}')$,
the sequence $r_{\mathbb{R}_{\text{uns}}}(\rho')$ is a run in $\mathcal{T}\mathcal{S}$ and $\rho'$ is its image under $\varphi$). Finally, since $\varphi$ is a morphism,
for every $\rho' \in \mathbb{R}_{\text{un}}(\mathcal{T}\mathcal{S}')$ and every $\rho \in \mathbb{R}_{\text{un}}(\mathcal{T}\mathcal{S})$ consistent with $(r_{\text{Init}}, r)$ over $\rho'$, $\rho$ is accepting in
$\mathcal{T}\mathcal{S}$ if and only if $\rho' = \varphi_{\mathbb{R}_{\text{uns}}}(\rho)$ is accepting in $\mathcal{T}\mathcal{S}'$. We conclude that $(r_{\text{Init}}, r)$ is a sound resolver
(resp. sound for $\mathcal{T}\mathcal{S}$) and therefore $\varphi$ is an HD mapping (resp. HD-for-games mapping). ■

**Restrictions and extensions of initial sets.** The following simple lemma states that reducing the number of initial vertices preserves the history-determinism of mappings.

**LEMMA 3.13.** Let $\mathcal{T}\mathcal{S}$ and $\mathcal{T}\mathcal{S}'$ be two $\mathcal{T}\mathcal{S}$ such that there is an HD (resp. HD-for-games) mapping $\varphi: \mathcal{T}\mathcal{S} \to \mathcal{T}\mathcal{S}'$. For any non-empty subset $\tilde{I} \subseteq I'$, $\varphi$ is also an HD (resp. HD-for-games) mapping between the transition systems $\mathcal{T}\mathcal{S}_{r_{\text{Init}}(\tilde{I})}$ and $\mathcal{T}\mathcal{S}'_{\tilde{I}}$; that is, the transitions systems obtained by setting $r_{\text{Init}}(\tilde{I})$ and $\tilde{I}$ as initial vertices, respectively.

For arbitrary acceptance conditions, enlarging the set of initial vertices does not preserve history-determinism. However, for transition systems using the acceptance conditions considered in this work, we can enlarge the set of initial vertices without loss of generality. The proof can be found in Appendix C.

**LEMMA 3.14.** Let $\mathcal{T}\mathcal{S}$ and $\mathcal{T}\mathcal{S}'$ be two $\mathcal{T}\mathcal{S}$ such that all their states are accessible, and let $\varphi: \mathcal{T}\mathcal{S} \to \mathcal{T}\mathcal{S}'$ be an HD (resp. HD-for-games) mapping between them. If $\mathcal{W}$ and $\mathcal{W}'$ are prefix-independent, the mapping $\varphi$ is also HD (resp. HD-for-games) when considered between the transition systems $\mathcal{T}\mathcal{S}_V$ and $\mathcal{T}\mathcal{S}'_{V'}$, consisting of the transition systems $\mathcal{T}\mathcal{S}$ and $\mathcal{T}\mathcal{S}'$ where all the states are set to be initial.

**3.4 Preservation of semantic properties of automata and games**

We start this section by showing that locally bijective morphisms and HD mappings are a strict generalisation of compositions by deterministic and history-deterministic automata, respectively (Proposition 3.15). Then, we prove that these mappings witness the semantic equivalence of the transition systems under consideration. That is, (1) if $\varphi: \mathcal{A} \to \mathcal{A}'$ is an HD mapping of automata, then $\mathcal{L}(\mathcal{A}) = \mathcal{L}(\mathcal{A}')$, and if $\varphi$ is locally bijective, $\mathcal{A}$ is deterministic (or unambiguous) if and only if $\mathcal{A}'$ is (Proposition 3.16);<fnref n="5" /> and (2) if $\varphi: \mathcal{G} \to \mathcal{G}'$ is an HD-for-games mapping, $\mathcal{G}$ and $\mathcal{G}'$ have the same winner (Proposition 3.18 and Corollary 3.19).

**Morphisms generalise composition by an automaton.**

<footnote n="5">5 The results in this section do not directly imply that if $\mathcal{A}$ is an automaton recognising the acceptance set of another automaton $\mathcal{B}$, then $\mathcal{B} \times \mathcal{A}$ recognises the same language as $\mathcal{B}$, if $\mathcal{A}$ is not history-deterministic (Proposition 2.6). In that case, the equality $\mathcal{L}(\mathcal{B} \times \mathcal{A}) = \mathcal{L}(\mathcal{B})$ follows from the idea that runs in $\mathcal{B}$ can be simulated in $\mathcal{B} \times \mathcal{A}$ “guided by the non-deterministic choices of $\mathcal{A}$”, which we do not formalise in this work.</footnote>
**PROPOSITION 3.15.** Let $\mathcal{A}$ be a complete automaton accepting the language $\mathcal{L}(\mathcal{A}) = \mathbb{W} \subseteq \Sigma^\omega$, and let $\mathcal{T}S$ be a (labelled) $\mathcal{T}S$ with acceptance set $\mathbb{W}$. Then, there exists a locally surjective weak morphism of (labelled) $\mathcal{T}S$ $\varphi: \mathcal{T}S \times \mathcal{A} \to \mathcal{T}S$ that preserves accepting runs. Moreover:

1. If $\mathcal{A}$ is deterministic, $\varphi$ can be chosen to be a locally bijective morphism.

2. If $\mathcal{A}$ is HD, then $\varphi$ can be chosen to be an HD mapping.

3. If $\mathcal{A}$ is HD and $\mathcal{T}S$ is a game suitable for transformations, then $\varphi$ can be chosen to be an HD-for-games mapping.

**PROOF.** We recall that the set of states of $\mathcal{T}S \times \mathcal{A}$ is $V \times Q$ and its set of transitions $E^\kappa$ is a subset of $(E \times \Delta) \sqcup E$, where $V$ and $Q$ (resp. $E$ and $\Delta$) are the states (resp. transitions) of $\mathcal{T}S$ and $\mathcal{A}$, respectively. We let $\mathbb{W}_\mathcal{A} \subseteq \Gamma^\omega$ be the acceptance set of $\mathcal{A}$. We define $\varphi_V(v, q) = v$ and $\varphi_E(e_1, e_2) = e_1$ for $(e_1, e_2) \in E \times \Delta$ and $\varphi_E(e_1) = e_1$ for $e_1 \in E$. It is immediate to check that $\varphi$ is a weak morphism.

Given a run $\rho = (v_0, q_0) \xrightarrow{c_0} (v_1, q_1) \xrightarrow{c_1} \dots$ in $\mathcal{T}S \times \mathcal{A}$, we can consider its projection over $\mathcal{T}S$, $\varphi_{\mathcal{R}uns}(\rho) = v_0 \xrightarrow{a_0} v_1 \xrightarrow{a_1} \dots$. We note that there must exist a unique run in $\mathcal{A}$ of the form

$$ \varphi_{\mathcal{A}}(\rho) = q_0 \xrightarrow{a_0:c_0} q_1 \xrightarrow{a_1:c_1} \dots $$

(Formally, some letters $a_i$ might equal $\varepsilon$, and in this case $q_i \xrightarrow{a_i:c_i} q_{i+1}$ does not appear in the run $\varphi_{\mathcal{A}}(\rho)$).

We show that $\varphi$ preserves accepting runs. Let $\rho$ be an accepting run in $\mathcal{T}S \times \mathcal{A}$. In that case, $c_0c_1c_2 \dots \in \mathbb{W}_\mathcal{A}$, and therefore $\varphi_{\mathcal{A}}(\rho)$ is an accepting run in $\mathcal{A}$ over $a_0a_1a_2 \dots$, so we conclude that $a_0a_1a_2 \dots \in \mathbb{W}$ and $\varphi_{\mathcal{R}uns}(\rho)$ is an accepting run in $\mathcal{T}S$.

We prove next the local surjectivity of $\varphi$. Clearly, $\varphi$ induces a surjection between the initial vertices of $\mathcal{T}S \times \mathcal{A}$ (which are $I_{\mathcal{T}S} \times I_{\mathcal{A}}$) and those of $\mathcal{T}S$. Let $(v, q) \in V \times Q$ and $e_1 = v \xrightarrow{a} v' \in E$. If $a = \varepsilon$, the edge $e_1$ belongs to $E^\kappa$ and $\varphi(e_1) = e_1$. If $a \neq \varepsilon$, since $\mathcal{A}$ is complete there is a transition $e_2 = q \xrightarrow{a} q' \in \Delta$ and $\varphi(e_1, e_2) = e_1$, so $\varphi$ is locally surjective.

1. Since $\mathcal{A}$ has a single initial state $q_0$, $\varphi$ induces a bijection between the initial vertices of $\mathcal{T}S \times \mathcal{A}$ (which are $I_{\mathcal{T}S} \times \{q_0\}$) and those of $\mathcal{T}S$. Let $E_{\text{col}}^\kappa \subseteq E \times \Delta$ and $E_\varepsilon^\kappa \subseteq E$ such that $E^\kappa = E_{\text{col}}^\kappa \cup E_\varepsilon^\kappa$. We remark that $\varphi|_{E_\varepsilon^\kappa}$ is the identity function (so injective) and that $\varphi(E_{\text{col}}^\kappa) \cap \varphi(E_\varepsilon^\kappa) = \emptyset$ because $\varphi(E_{\text{col}}^\kappa)$ are exactly coloured transitions of $\mathcal{T}S$. Finally, let $(e_1, e_2)$ and $(e'_1, e'_2)$ in $\text{Out}(v, q) \cap E_{\text{col}}^\kappa$. Their $\varphi(e_1, e_2) = \varphi(e'_1, e'_2)$ if and only if $e_1 = e'_1$. Let $a \in \Sigma$ be the colour of $e_1$. Since $\mathcal{A}$ is deterministic, there is at most one transition from $q$ labelled by $a$, that must be $e_2 = e'_2$. We conclude that $(e_1, e_2) = (e'_1, e'_2)$ and that $\varphi$ is locally injective.

Let $\rho$ be a rejecting run in $\mathcal{T}S \times \mathcal{A}$ (we use the notations introduced above). In that case, $c_0c_1c_2 \dots \notin \mathbb{W}_\mathcal{A}$, and therefore $\varphi_{\mathcal{A}}(\rho)$ is a rejecting run over $a_0a_1a_2 \dots$. Since $\mathcal{A}$ is deterministic, this is the only run over $a_0a_1a_2 \dots$, so we conclude that it does not belong to $\mathbb{W}$. We conclude that $\varphi_{\mathcal{R}uns}(\rho)$ is a rejecting run in $\mathcal{T}S$.
2. Let $(r_0, r_{\mathcal{A}})$ be a resolver for $\mathcal{A}$. We define a resolver $(r_{\text{Init}}, r_{\varphi})$ simulating $\varphi$. First, we let $r_{\text{Init}}(v_0) = (v_0, r_0)$ for all $v_0 \in I_{\mathcal{T}S}$. We define $r_{\varphi}: E^{\kappa**} \times E \to E^{\kappa}$ by induction on the length of the runs. Let $e_0 = v_0 \xrightarrow{a} v_1 \in \text{Out}(v_0)$ be an edge in $\mathcal{T}S$. If $e_0$ is uncoloured ($a = \varepsilon$), we let $r_{\varphi}(\varepsilon, e_0) = e_0 = (v_0, r_0) \xrightarrow{\varepsilon} (v_1, r_0)$. If not, we let $r_{\varphi}(\varepsilon, e_0) = (e_0, e_a)$, where $e_a = r(\varepsilon, a)$. Assume that $r_{\varphi}$ has been defined for sequences of edges of $\mathcal{T}S \ltimes \mathcal{A}$ of length $< n$ and let $\rho = e_0 e_1 \dots e_{n-1} \in E^{\kappa**}$ be a sequence length $n+1$ and $e_{\mathcal{T}S} = v_n \xrightarrow{a_n} v_{n+1}$ be an edge in $\mathcal{T}S$. If $\rho$ is not a run or if it does not end in $\varphi^{-1}(v_n)$, we let $r_{\varphi}(\rho, e_{\mathcal{T}S})$ be any edge in $\varphi^{-1}(e_{\mathcal{T}S})$. Assume that $\rho$ is a run ending in $\varphi^{-1}(v_n)$. If $a_n = \varepsilon$, we define $r_{\varphi}(\rho, e_{\mathcal{T}S}) = e_{\mathcal{T}S}$. As noted before, $\rho$ induces a run $\varphi_{\mathcal{A}}(\rho) = q_0 \xrightarrow{a_0:c_0} q_1 \xrightarrow{a_1:c_1} \dots \to q_n$ in $\mathcal{A}$. We let $e_{\mathcal{A}} = r_{\mathcal{A}}(\varphi_{\mathcal{A}}(\rho), a_n)$ be the transition chosen by the resolver of $\mathcal{A}$ after this run, and we define $r_{\varphi}(\rho, e_{\mathcal{T}S}) = (e_{\mathcal{T}S}, e_{\mathcal{A}})$.

It directly follows from this definition that $(r_{\text{Init}}, r_{\varphi})$ is indeed a resolver. The proof that if $\rho \in \mathcal{R}_{\text{un}}(\mathcal{T}S)$ is an accepting run then $r_{\varphi, \mathcal{R}_{\text{uns}}}(\rho)$ is accepting follows the same lines as the previous item.

3. We prove that, if $\mathcal{T}S$ is a game suitable for transformations, the resolver $(r_{\text{Init}}, r_{\varphi})$ defined in the previous item is sound for $\mathcal{T}S$. We claim that if $\rho$ is a run in $\mathcal{T}S$, the only run consistent with $(r_{\text{Init}}, r_{\varphi})$ over $\rho$ is $r_{\varphi, \mathcal{R}_{\text{uns}}}(\rho)$. This follows from the fact that if $(v, q)$ is a vertex in $\mathcal{T}S \ltimes \mathcal{A}$ controlled by Adam and $e \in \text{Out}(v)$, then there is a unique $e' \in \text{Out}(v, q)$ such that $\varphi(e') = e$. This is indeed the case: as $\mathcal{T}S$ is suitable for transformations, if $v$ is an Adam's vertex, every $e \in \text{Out}(v)$ is uncoloured, so by definition of $\varphi$ we have that $\varphi(e') = e \implies e' = e$. (This can be seen as that $\varphi$ is locally bijective in Adam's vertices). We conclude that if $\rho$ is an accepting run in $\mathcal{T}S$ and $\rho^{\kappa}$ is a run consistent with $(r_{\text{Init}}, r_{\varphi})$ over $\rho$, then $\rho^{\kappa} = r_{\varphi, \mathcal{R}_{\text{uns}}}(\rho)$, which is accepting by soundness of the resolver $(r_{\text{Init}}, r_{\varphi})$. ■

## Morphisms witness equivalence of automata.

**PROPOSITION 3.16.** Let $\mathcal{A}, \mathcal{A}'$ be two automata over the same input alphabet such that there is an HD mapping of automata $\varphi: \mathcal{A} \to \mathcal{A}'$. Then, $\mathcal{L}(\mathcal{A}) = \mathcal{L}(\mathcal{A}')$, and $\mathcal{A}$ is HD if and only if $\mathcal{A}'$ is HD. If $\varphi$ is moreover locally bijective and surjective, $\mathcal{A}$ is deterministic (resp. complete) if and only if $\mathcal{A}'$ is.

**PROOF.** Since $\varphi$ preserves accepting runs, it is clear that $\mathcal{L}(\mathcal{A}) \subseteq \mathcal{L}(\mathcal{A}')$. Since $\varphi$ admits a sound resolver $(r_{\text{Init}}, r)$, if $\rho$ is an accepting run over $w \in \Sigma^{\omega}$ in $\mathcal{A}'$, then $r_{\mathcal{R}_{\text{uns}}}(\rho)$ is an accepting run over $w$ in $\mathcal{A}$, so $\mathcal{L}(\mathcal{A}') \subseteq \mathcal{L}(\mathcal{A})$.

Let $(r_{\text{Init}}, r_{\varphi})$ be a sound resolver simulating $\varphi$. Assume that $\mathcal{A}$ is HD, admitting a resolver $(r_0, r)$. A resolver $(r'_0, r')$ for $\mathcal{A}'$ can be obtained just by composing $r_{\varphi}$ and $\varphi$, that is: $r'_0 = \varphi(r_0)$ and for $\rho' \in \mathcal{R}_{\text{un}^{\text{fin}}}(\mathcal{A}')$ and $a \in \Sigma$, $r'(\rho', a) = \varphi(r(r_{\varphi, \mathcal{R}_{\text{uns}}}(\rho'), a))$. That is, given a run $\rho'$ in $\mathcal{A}'$, we simulate it in $\mathcal{A}$ using $r_{\varphi}$, then, we look at what is the continuation proposed by the resolver $r$ when we give the letter $a$, and we transfer back this choice to $\mathcal{A}'$ using $\varphi$. Assume now that $\mathcal{A}'$
is HD and that $(r'_0, r')$ is a resolver for it. We define a resolver $(r_0, r)$ for $\mathcal{A}$. We let $r_0 = r_{\text{Init}}(r'_0)$, and for $\rho \in \mathcal{R}_{\text{run}}^{\text{fin}}(\mathcal{A})$ and $a \in \Sigma$, $r(\rho, a) = r_{\phi}((\phi_{\mathcal{R}_{\text{runs}}}(\rho), r(\phi_{\mathcal{R}_{\text{runs}}}(\rho), a)))$. That is, given a run $\rho$ in $\mathcal{A}$, we simulate it in $\mathcal{A}'$ using $\phi$, then, we look at what is the continuation proposed by the resolver $r'$ when we give the letter $a$, and we transfer back this choice to $\mathcal{A}$ using $r_{\phi}$. It is a direct check that the resolvers defined this way witness that $\mathcal{A}'$ and $\mathcal{A}$, respectively, are HD.

The proof that $\mathcal{A}$ is deterministic (resp. complete) if and only if $\mathcal{A}'$ is deterministic (resp. complete), assuming surjectivity and local bijectivity of $\phi$, follows the same lines. ■

A subclass of automata with a restrictive amount of non-determinism that is widely studied is that of *unambiguous automata* (we refer to [29, 20] for a detailed exposition). An automaton is *unambiguous* if for every input word $w \in \Sigma^\omega$ there is at most one accepting run over $w$, and it is *strongly unambiguous* if there is at most one run over $w$. By Remark 3.4, locally bijective morphisms also preserve (strongly) unambiguity: if $\phi: \mathcal{A} \to \mathcal{A}'$ is a locally bijective morphism then $\mathcal{A}$ is (strongly) unambiguous if and only if $\mathcal{A}'$ is.

### Morphisms preserve winning regions of games.

**LEMMA 3.17.** Let $\mathcal{G}, \mathcal{G}'$ be two games, such that there is a weak morphism of games $\phi: \mathcal{G} \to \mathcal{G}'$ that is locally surjective and preserves accepting runs. If Eve wins the game $\mathcal{G}$ from an initial vertex $v$, then she wins $\mathcal{G}'$ from $\phi(v)$.

**PROOF.** Let $v' = \phi(v)$, and let $\text{strat}_v: \text{Path}_v^{\text{fin}}(\mathcal{G}) \to E$ be a strategy from $v$ for Eve in $\mathcal{G}$. Intuitively, we will define a strategy in $\mathcal{G}'$ as follows: for each finite run $\rho'$ from $v'$ in $\mathcal{G}'$, we pick a preimage $\rho \in \phi^{-1}(\rho')$ in $\mathcal{G}$, look at the decision made by $\text{strat}_v$ at the end of $\rho$ and transfer it back to $\mathcal{G}'$ via $\phi$. In order to define a correct strategy, the choices of the preimages have to be made in a coherent manner. We formalise this idea next.

We will make use of a function choice$_{st}$: $\text{Path}_{v'}^{\text{fin}}(\mathcal{G}') \to \text{Path}_v^{\text{fin}}(\mathcal{G})$ satisfying that for any $\rho' = e'_0 e'_1 \dots e'_{n-1} e'_n \in \text{Path}_{v'}^{\text{fin}}(\mathcal{G}')$:

- The run choice$_{st}(\rho')$ has length $n+1$.

- $\phi_{\mathcal{R}_{\text{runs}}}(\text{choice}_{st}(\rho')) = \rho'$.

- Monotonicity: if $\tilde{\rho}' \subseteq \rho'$ then choice$_{st}(\tilde{\rho}') \subseteq \text{choice}_{st}(\rho')$.

- If there exists $e_n \in \phi^{-1}(e'_n)$ such that choice$_{st}(e'_0 e'_1 \dots e'_{n-1}) e_n$ is consistent with $\text{strat}_v$, then choice$_{st}(\rho')$ is consistent with $\text{strat}_v$.

Assume for now that such a function exists, and define a strategy in $\mathcal{G}'$ as

$$ \text{strat}_{v'}(\rho') = \phi(\text{strat}_v(\text{choice}_{st}(\rho'))), \text{ for } \rho' \in \text{Path}_{v'}^{\text{fin}}(\mathcal{G}') $$

We prove that $\text{strat}_{v'}$ is winning. Let $\rho' = e'_0 e'_1 \dots \in \mathcal{R}_{\text{run}}(\mathcal{G}')$ be an infinite play consistent with $\text{strat}_{v'}$. For each finite prefix $\tilde{\rho}' \subseteq \rho'$, choice$_{st}(\tilde{\rho}')$ is a finite play in $\mathcal{G}$, and by the monotonicity
assumption, we can define the limit of these runs as:

$$ \vec{\rho} = e_0 e_1 e_2 \cdots \in \mathcal{R}un(\mathcal{G}), \text{ where } e_0 e_1 \cdots e_n = \text{choice}_{st}(e'_0 e'_1 \cdots e'_n), $$

which is indeed a run in $\mathcal{G}$. We show that $\vec{\rho}$ is consistent with $\text{strat}_v$ by induction. Let $\rho_n = e_0 e_1 \cdots e_{n-1}$ be the prefix of size $n$ of $\vec{\rho}$, and suppose that it ends in a vertex $v_n$ controlled by Eve. We want to show that $e_n = \text{strat}_v(\rho_n)$. By definition of $\text{strat}'_v$, $e'_n = \varphi(\text{strat}_v(\rho_n)) = \varphi(e_n)$, and as $v_n$ is controlled by Eve, $\text{strat}_v(\rho_n)$ is the only continuation of $\rho_n$ consistent with $\text{strat}_v$, so by the last property of $\text{choice}_{st}$, $e_n$ has to coincide with $\text{strat}_v(\rho_n)$, as we wanted. As $\vec{\rho}$ is consistent with the winning strategy $\text{strat}_v$, it is an accepting run in $\mathcal{G}$, and since $\varphi$ preserves accepting runs, $\rho' = \varphi_{\mathcal{R}uns}(\vec{\rho})$ is also an accepting run.

Finally, we show how to build a function choice$_{st}$: $\text{Path}^{\text{fin}}_{v'}(\mathcal{G}') \to \text{Path}^{\text{fin}}_{v}(\mathcal{G})$ by induction on the length of the runs. Assume that choice$_{st}$ has been defined for runs of length $\le n$, and let $e'_0 e'_1 \cdots e'_n$ be a run of length $n+1$, with choice$_{st}(e'_0 e'_1 \cdots e'_{n-1}) = e_0 e_1 \cdots e_{n-1}$. If $e_0 e_1 \cdots e_{n-1}$ is not consistent with $\text{strat}_v$, it ends in a vertex $v_n$ controlled by Adam, or $\text{strat}_v(e_0 e_1 \cdots e_{n-1}) \notin \varphi^{-1}(e_n)$, we let $e_n \in \varphi^{-1}(e_n) \cap \text{Out}(v_n)$ be any edge (one such edge exists by local surjectivity). On the contrary, we let $e_n = \text{strat}_v(e_0 e_1 \cdots e_{n-1})$. We define choice$_{st}(e'_0 e'_1 \cdots e'_{n-1} e'_n) = e_0 e_1 \cdots e_{n-1} e_n$. By construction, the obtained function fulfils the 4 requirements. ■

**PROPOSITION 3.18.** Let $\mathcal{G}, \mathcal{G}'$ be two games such that there is an HD-for-games mapping $\varphi: \mathcal{G} \to \mathcal{G}'$. Eve's winning region in $\mathcal{G}'$ is the projection of her winning region in $\mathcal{G}: W_{\text{Eve}}(\mathcal{G}') = \varphi(W_{\text{Eve}}(\mathcal{G}))$. ■

**PROOF.** If Eve wins $\mathcal{G}$ from an initial vertex $v$, Lemma 3.17 guarantees that she wins $\mathcal{G}'$ from $\varphi(v)$. ■

Assume now that Eve wins $\mathcal{G}'$ from an initial vertex $v'$ with a strategy $\text{strat}'_v$: $\text{Path}^{\text{fin}}_{v'}(\mathcal{G}') \to \mathcal{E}'$. We need to show that she wins $\mathcal{G}$ from some initial vertex in $\varphi^{-1}(v')$. Let $(r_{\text{Init}}, r)$ be a resolver simulating $\varphi$ sound for $\mathcal{G}$ and let $v = r_{\text{Init}}(v')$. We define

$$ \text{strat}_v(\rho) = r(\rho, \text{strat}'_v(\varphi_{\mathcal{R}uns}(\rho))), \text{ for } \rho \in \text{Path}^{\text{fin}}_{v}(\mathcal{G}). $$

That is, $\text{strat}_v$ is a strategy in $\mathcal{G}$ from $v$ that, given a finite run $\rho$, simulates $\rho$ in $\mathcal{G}'$, looks at the move done by the strategy $\text{strat}'_v$, in there, and transfers this choice back to $\mathcal{G}'$ by using the resolver $r$. We prove that $\text{strat}_v$ is winning for Eve in $\mathcal{G}$. Let $\rho = e_0 e_1 \cdots \in \text{Path}_v(\mathcal{G})$ be a play consistent with $\text{strat}_v$. We claim that $\varphi(\rho)$ is consistent with $\text{strat}'_v$, and that $\rho$ is consistent with $(r_{\text{Init}}, r)$ over $\varphi(\rho)$. This implies the desired result; consistency with $\text{strat}'_v$, implies that $\varphi(\rho)$ is accepting, and since $(r_{\text{Init}}, r)$ is sound for $\mathcal{G}$, $\rho$ would be accepting in $\mathcal{G}$. ■

We prove that $\varphi(\rho)$ is consistent with $\text{strat}'_v$. Let $e'_0 e'_1 \cdots e'_{n-1}$ be a subplay of $\varphi(\rho)$ ending in a vertex $v_n$ controlled by Eve. By definition of the strategy $\text{strat}_v$, we have that $e_n = r(e_0 \cdots e_{n-1}, \text{strat}'_v(e'_0 \cdots e'_{n-1}))$, and by definition of a resolver (item 2), we obtain that $e'_n = \varphi(e_n) = \text{strat}'_v(e'_0 \cdots e'_{n-1})$, as we wanted. ■
The fact that $\rho$ is consistent with $(r_{\text{Init}}, r)$ over $\varphi(\rho)$ follows directly from the definition of strat$_V$.

The next corollary follows from the previous proposition and Lemma 3.14.

**COROLLARY 3.19.** Let $\mathcal{G}, \mathcal{G}'$ be two games whose states are accessible and such that their acceptance sets $\mathbb{W}_{\mathcal{G}}$ and $\mathbb{W}_{\mathcal{G}'}$ are prefix-independent. If there is an HD-for-games mapping $\varphi: \mathcal{G} \to \mathcal{G}'$, then Eve's full winning region in $\mathcal{G}'$ is the projection of her full winning region in $\mathcal{G}: \mathbb{W}_{\text{Eve}}(\mathcal{G}'_V) = \varphi(\mathbb{W}_{\text{Eve}}(\mathcal{G}_V))$.

# 4. The Zielonka tree: An optimal approach to Muller languages

In this section, we take a close look into the Zielonka tree, a structure introduced (under the name of split trees) to study Muller languages [94]. We show how to use the Zielonka tree to construct minimal deterministic parity automata and minimal history-deterministic Rabin automata recognising Muller languages. In Section 4.2, we describe the construction of a minimal deterministic parity automaton $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$ for a given Muller language Muller($\mathcal{F}$). Theorem 4.15, the main contribution of this section, states the minimality of $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$ both amongst deterministic and HD parity automata. Theorem 4.14 states the optimality on the number of colours of the acceptance condition of $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$, and implies that we can determine the parity index of a Muller language from its Zielonka tree. We will use the optimality of automaton $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$ to provide a polynomial-time algorithm minimising DPAs recognising Muller languages in Section 6.3.

In Section 4.3, we describe the construction of a minimal history-deterministic Rabin automaton $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$ for a Muller language Muller($\mathcal{F}$). Its minimality amongst HD automata is shown in Theorem 4.51, by using the characterisation of the memory requirements of a Muller language in terms of its Zielonka tree [34].

On the other hand, it has been shown that finding a minimal deterministic Rabin automaton recognising a given Muller language is NP-complete, if the language is represented by a parity or Rabin automaton, or even by its Zielonka tree [21]. Therefore, unless P = NP, there are Muller languages for which minimal deterministic Rabin automata are strictly larger than minimal HD Rabin automata. Some explicit such languages were shown in [24, Section 4]. A summary of the minimal automata recognising Muller languages appears in Table 1.

## 4.1 The Zielonka tree

**DEFINITION 4.1 ([94]).** Let $\mathcal{F} \subseteq 2_+^\Sigma$ be a family of non-empty subsets over a finite set $\Sigma$. A Zielonka tree for $\mathcal{F}$ (over $\Sigma$), denoted $\mathcal{Z}_F = (N, \leq, v: N \to 2_+^\Sigma)$ is a $2_+^\Sigma$-labelled tree with nodes partitioned into *round nodes* and *square nodes*, $N = N_\circ \sqcup N_\square$, such that:

- The root is labelled $\Sigma$.
<table><caption>**Table 1.** Minimal automata recognising a Muller language Muller($\mathcal{F}$), according to the type of acceptance condition (parity or Rabin) and the form of determinism.</caption><thead><tr><th>Type of automata</th><th>Deterministic</th><th>History-deterministic</th></tr></thead><tbody><tr><td>Parity</td><td>A<sub>Z<sub>F</sub></sub><sup>parity</sup></td><td>A<sub>Z<sub>F</sub></sub><sup>parity</sup></td></tr><tr><td>Rabin</td><td>No characterization</td><td>A<sub>Z<sub>F</sub></sub><sup>Rabin</sup></td></tr></tbody></table>

- If a node is labelled $X \subseteq \Sigma$, with $X \in \mathcal{F}$, then it is a round node, and it has a child for each maximal non-empty subset $Y \subseteq X$ such that $Y \notin \mathcal{F}$, which is labelled $Y$.

- If a node is labelled $X \subseteq \Sigma$, with $X \notin \mathcal{F}$, then it is a square node, and it has a child for each maximal non-empty subset $Y \subseteq X$ such that $Y \in \mathcal{F}$, which is labelled $Y$.

**REMARK 4.2.** We note that for each family of subsets $\mathcal{F} \subseteq 2_+^\Sigma$, there is only one Zielonka tree up to renaming of its nodes, so we will talk of the Zielonka tree of $\mathcal{F}$.

For a family of subsets $\mathcal{F} \subseteq 2_+^\Sigma$ and $\Sigma' \subseteq \Sigma$, we write $\mathcal{F}|_{\Sigma'} = \mathcal{F} \cap 2_{\Sigma'}^\Sigma$.

**REMARK 4.3.** We remark that if $n$ is a node of $\mathcal{Z}_F$, then the subtree of $\mathcal{Z}_F$ rooted at $n$ is the Zielonka tree for the family $\mathcal{F}|_{v(n)}$ over the alphabet $v(n)$, that is, for the restriction of $\mathcal{F}$ to the subsets included in the label of $n$.

**REMARK 4.4.** Let $n$ be a node of $\mathcal{Z}_F$ and let $n_1$ be a child of it. If $v(n_1) \subseteq X \subseteq v(n)$, then $v(n_1) \in \mathcal{F} \iff X \notin \mathcal{F} \iff v(n) \notin \mathcal{F}$. In particular, if $n_1, n_2$ are two different children of $n$, then $v(n_1) \in \mathcal{F} \iff v(n_2) \in \mathcal{F} \iff v(n_1) \cup v(n_2) \notin \mathcal{F}$.

We equip Zielonka trees with an order to navigate in them. That is, we equip each set $\text{Children}_{\mathcal{Z}_F}(n)$ with a total order, making $\mathcal{Z}_F$ an ordered tree. The precise order considered will be irrelevant for our purposes. From now on, we will assume that all Zielonka trees are ordered, without explicitly mentioning it.

For a leaf $l \in \text{Leaves}(\mathcal{Z}_F)$ and a letter $a \in \Sigma$ we define $\text{Supp}(l, a) = n$ to be the deepest ancestor of $l$ (maximal for $\le$) such that $a \in v(n)$.

**EXAMPLE 4.5.** We will use the Muller language associated to the following family of subsets as a running example throughout the paper. Let $\Sigma = \{a, b, c\}$ and let $\mathcal{F}$ be:

$$ \mathcal{F} = \{\{a, b\}, \{a, c\}, \{b\}\}. $$

<footnote n="6">6 The definition of $\mathcal{Z}_F$, as well as most subsequent definitions, do not only depend on $\mathcal{F}$ but also on the alphabet $\Sigma$. Although this dependence is important, we do not explicitly include it in the notations in order to lighten them, as most of the time the alphabet will be clear from the context.</footnote>
In Figure 9 we show the Zielonka tree of $\mathcal{F}$. We use Greek letters (in pink) to name the nodes of the tree. Integers appearing on the right of the tree will be used in the next section.

We have that $\text{Supp}(\xi, c) = \lambda$ and $\text{Supp}(\xi, b) = \alpha$. Also, $\text{Jump}(\xi, \lambda) = \zeta$ is the leaf reached by going from $\xi$ to $\lambda$, then changing to the next branch (in a cyclic way) and re-descend by taking the leftmost path. Similarly, $\text{Jump}(\xi, \alpha) = \theta$.

The subtree rooted at $\lambda$ contains the nodes $\{\lambda, \xi, \zeta\}$. We note that this is the Zielonka tree of $\mathcal{F}|_{\{a,c\}} = \{\{a, c\}\}$ (over the alphabet $\{a, c\}$). ♦

<figure><img src="image_19.png" /><figcaption>**Figure 9.** Zielonka tree $\mathcal{Z}_{\mathcal{F}}$ for $\mathcal{F} = \{\{a, b\}, \{a, c\}, \{b\}\}$.</figcaption></figure>

## 4.2 A minimal deterministic parity automaton

We present next the Zielonka-tree-parity-automaton, a minimal deterministic parity automaton for a Muller language Muller($\mathcal{F}$) built from the Zielonka tree $\mathcal{Z}_{\mathcal{F}}$. Our construction will furthermore let us determine the parity index of the language Muller($\mathcal{F}$) from its Zielonka tree.

### 4.2.1 The Zielonka-tree-parity-automaton

We associate a non-negative integer to each level of a Zielonka tree $\mathcal{Z}_{\mathcal{F}} = (N, \leq, v)$. We let $p_Z : N \to \mathbb{N}$ be the function defined as:

- if $\Sigma \in \mathcal{F}$, $p_Z(n) = \text{Depth}(n)$,

- if $\Sigma \notin \mathcal{F}$, $p_Z(n) = \text{Depth}(n) + 1$.

We let $\min_{\mathcal{F}}$ (resp. $\max_{\mathcal{F}}$) be the minimum (resp. maximum) value taken by the function $p_Z$.

**REMARK 4.6.** A node $n$ in the Zielonka tree $\mathcal{Z}_{\mathcal{F}}$ verifies that $p_Z(n)$ is even if and only if $v(n) \in \mathcal{F}$. If $\Sigma \in \mathcal{F}$, $\min_{\mathcal{F}} = 0$ and $\max_{\mathcal{F}}$ equals the height of the Zielonka tree minus one. If $\Sigma \notin \mathcal{F}$, $\min_{\mathcal{F}} = 1$ and $\max_{\mathcal{F}}$ equals the height of the Zielonka tree.

**EXAMPLE 4.7.** The Muller language from Example 4.5 satisfies $\Sigma \notin \mathcal{F}$. The values taken by the function $p_Z$ are represented at the right of the Zielonka tree in Figure 9. We have $p_Z(\alpha) = 1$, $p_Z(\beta) = p_Z(\lambda) = 2$ and $p_Z(\theta) = p_Z(\xi) = p_Z(\zeta) = 3$, so $\min_{\mathcal{F}} = 1$ and $\max_{\mathcal{F}} = 3$. ♦
**DEFINITION 4.8 (Zielonka-tree-parity-automaton).** Given a family of non-empty subsets $\mathcal{F} \subseteq 2_+^\Sigma$, we define the ZT-parity-automaton $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}} = (Q, \Sigma, q_0, [\min_F, \max_F], \delta, \text{parity})$ as the deterministic parity automaton given by:

- $Q = \text{Leaves}(\mathcal{Z}_F)$,

- $q_0$ is the leftmost leaf of $\mathcal{Z}_F$,

- The transition reading $a \in \Sigma$ from $q \in Q$ goes to $\text{Jump}(q, \text{Supp}(q, a))$ and produces $p_Z(\text{Supp}(q, a))$ as output, that is,

$$ \delta(q, a) = (\text{Jump}(q, \text{Supp}(q, a)), p_Z(\text{Supp}(q, a))). $$

Intuitively, the transitions of the automaton are determined as follows: if we are in a leaf $l$ and we read a colour $a$, then we move up in the branch of $l$ until we reach a node $n$ that contains the letter $a$ in its label. Then we pick the child of $n$ just on the right of the branch that we took before (in a cyclic way), and we move to the leftmost leaf below it. The colour produced as output is $p_Z(n)$, determined by the depth of $n$.

**EXAMPLE 4.9.** In Figure 10 we show the ZT-parity-automaton $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$ of the family of subsets from Example 4.5. ♦

<figure><img src="image_20.png" /><figcaption>**Figure 10.** ZT-parity-automaton recognising the Muller language associated to $\mathcal{F} = \{\{a, b\}, \{a, c\}, \{b\}\}$.</figcaption></figure>

**Correctness of the Zielonka-tree-parity-automaton.**

**PROPOSITION 4.10 (Correctness).** Let $\mathcal{F} \subseteq 2_+^\Sigma$ be a family of non-empty subsets. Then,

$$ \mathcal{L}(\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}) = \text{Muller}_\Sigma(\mathcal{F}). $$

That is, a word $w \in \Sigma^\omega$ is accepted by $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$ if and only if $\text{Inf}(w) \in \mathcal{F}$.

The following useful lemma follows directly from the definition of Supp and Jump.

<footnote n="7">7 Any state can be chosen as initial state (see Lemma 2.5).</footnote>
**LEMMA 4.11.** Let $q$ be a leaf of $\mathcal{Z}_F$ and let $n$ be a node above $q$. Then, $\text{Supp}(q, a)$ is a descendant of $n$ if and only if $a \in \nu(n)$, and in this case, $\text{Jump}(q, \text{Supp}(q, a))$ is a descendant of $n$ too.

**PROOF OF PROPOSITION 4.10.** Let $w = w_0w_1w_2\cdots \in \Sigma^\omega$ be an infinite word. For $i > 0$, let $q_i$ be the leaf of $\mathcal{Z}_F$ reached after the (only) run over $w_0w_1\cdots w_{i-1}$ in $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$. For $i \ge 0$ let $n_i = \text{Supp}(q_i, w_i)$ be the “intermediate node” used to determine the next state and the output colour of each transition, and let $c_i = p_{\mathcal{Z}}(n_i) = \gamma(q_i, w_i) \in [\min_F, \max_F]$ be that output colour (the output of the run over $w$ being therefore $c_0c_1c_2\cdots \in \mathbb{N}^\omega$). Let $q_\infty$ be a node appearing infinitely often in the sequence $q_0q_1q_2\cdots$, and let $n_w$ be the deepest ancestor of $q_\infty$ such that $\text{Inf}(w) \subseteq \nu(n_w)$.

**CLAIM 4.12.** There is $K \in \mathbb{N}$ such that for all $i \ge K$, $q_i \ge n_w$ and $\text{Supp}(q_i, w_i) \ge n_w$. In particular, $c_i \ge p_{\mathcal{Z}}(n_w)$ for $i \ge K$.

**Proof.** Let $K \in \mathbb{N}$ be a position such that $w_i \in \text{Inf}(w)$ for all $i \ge K$ and $q_K = q_\infty$. The claim follows from Lemma 4.11 and induction. $\diamond$

**CLAIM 4.13.** Let $n_{w,1}, \dots, n_{w,s}$ be an enumeration of Children$_{\mathcal{Z}_F}(n_w)$ from left to right. It holds that:

1. $\text{Supp}(q_i, w_i) = n_w$ infinitely often. In particular, $c_i = p_{\mathcal{Z}}(n_w)$ for infinitely many $i$'s.

2. There is no $n_{w,k} \in \text{Children}(n_w)$ such that $\text{Inf}(w) \subseteq \nu(n_{w,k})$.

**Proof.** We first remark that for all $n_{w,k}$ there are arbitrarily large positions $i$ such that $q_i$ is not below $n_{w,k}$. Suppose by contradiction that this is not the case. Then, for all $i$ sufficiently large we have that $\text{Supp}(q_i, w_i) \ge n_{w,k}$, and by Lemma 4.11, $\text{Inf}(w) \subseteq \nu(n_{w,k})$. In particular, $q_\infty$ is below $n_{w,k}$, contradicting the fact that $n_w$ is the deepest ancestor of $q_\infty$ containing $\text{Inf}(w)$.

Let $K$ be like in the Claim 4.12. We show that if $i \ge K$ and $q_i \ge n_{w,k}$, then there is $j > i$ such that $w_j \notin \nu(n_{w,k})$, $\text{Supp}(q_j, w_j) = n_w$ and $q_{j+1} \ge n_{w,k+1}$ (by an abuse of notation we let $s+1=1$). It suffices to consider the least $j \ge i$ such that $\text{Supp}(q_j, w_j) \not\subseteq n_{w,k}$ (which exists by the previous remark). Since $\text{Inf}(w) \subseteq \nu(n_w)$ we have that $\text{Supp}(q_j, w_j) = n_w$, so $w_j \notin \nu(n_{w,j})$ (by Lemma 4.11) and by definition of the transitions of $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$, $q_{j+1}$ will be a leaf below $n_{w,k+1}$.

The fact that $q_{j+1} \ge n_{w,k+1}$ implies that for any child $n_{w,k'}$, infinitely many states $q_i$ will be below $n_{w,k'}$ (we go around the children in a round-robin fashion). Therefore, for any $k$, there are arbitrarily large $j$ such that $w_j \notin \nu(n_{w,j})$ and $\text{Supp}(q_j, w_j) = n_w$, implying both items in the claim. $\diamond$

Combining both claims, we obtain that the minimum of the colours that are produced as output infinitely often is $p_{\mathcal{Z}}(n_w)$. By Remark 4.6, $p_{\mathcal{Z}}(n_w)$ is even if and only if $n_w$ is a round node (if $\nu(n_w) \in \mathcal{F}$). It remains to show that $\text{Inf}(w) \in \mathcal{F}$ if and only if $\nu(n_w) \in \mathcal{F}$, which holds by the second item in Claim 4.13 and Remark 4.4. $\blacksquare$
### 4.2.2 Optimality of the Zielonka-tree-parity-automaton

We now state and prove the main results of this section: the optimality of the ZT-parity-automaton in both number of states (Theorem 4.15) and number of colours of the acceptance condition (Theorem 4.14). The minimality of the ZT-parity-automaton comes in two versions. A weaker one states its minimality only amongst deterministic automata (Theorem 4.18), and a stronger one states its minimality amongst all history-deterministic automata (Theorem 4.15). Although the weaker version is implied by the stronger one, we find it instructive to provide a proof for this easier case. The proof of the stronger statement is one of the most technical parts of the paper, but the argument used in its proof is just a careful refinement of the ideas appearing in the weaker version.

**Statement of the results.**

**THEOREM 4.14 (Optimality of the parity condition).** The parity index of a Muller language $Muller_Σ(\mathcal{F})$ is $[\min_F, \max_F]$. That is, the ZT-parity-automaton of $Muller_Σ(\mathcal{F})$ uses the optimal number of colours to recognise this language.

**THEOREM 4.15 (Minimality of the ZT-parity-automaton).** Let $\mathcal{A}$ be a history-deterministic parity automaton recognising a Muller language $Muller_Σ(\mathcal{F})$. Then, $|\mathcal{A}_{Z_F}^{\text{parity}}| \le |\mathcal{A}|$.

**COROLLARY 4.16.** For every Muller language $L$, a minimal deterministic parity automaton recognising $L$ has the same size as a minimal HD parity automaton recognising $L$.

We remark that, nonetheless, there are non-trivial HD parity automata recognising Muller languages. The automaton provided in Example 2.3 is an HD coBüchi automaton recognising a Muller language that cannot be made deterministic just by removing transitions. We note that the (deterministic) ZT-parity-automaton for this Muller language has only 2 states.

We say that an automaton $\mathcal{A}$ is *determinisable by pruning* if there is a subset $\Delta' \subseteq \Delta$ of its transitions and an initial state $q_0$ such that the subautomaton induced by $\Delta'$ with initial state $q_0$ is deterministic and recognises $\mathcal{L}(\mathcal{A})$.

**PROPOSITION 4.17.** There exists an HD parity automaton recognising a Muller language that is not determinisable by pruning.

**Optimality of the parity condition.**

**PROOF OF THEOREM 4.14.** Let $L = \text{Muller}_Σ(\mathcal{F})$. The ZT-parity-automaton of $L$ is a parity automaton recognising $L$ using colours in $[\min_F, \max_F]$, therefore, the parity index of $L$ is at most $[\min_F, \max_F]$.

To prove that the parity index is not less than $[\min_F, \max_F]$, we use the Flower Lemma 2.16. The language $L$ is trivially recognised by a deterministic Muller automaton $\mathcal{A}_L$ with just one
state $q$, transitions $q \xrightarrow{a:a} q$ for each $a \in \Sigma$, and acceptance condition given by $L$ itself. Let $n_1 \le n_2 \le \dots \le n_d$ be a branch of maximal length of $\mathcal{Z}_F$ (that must verify $d = \max_F - \min_F$, and that the root $n_1$ is a round node if and only if $\min_F$ is even). If we let $\ell_i$ be the cycle in $\mathcal{A}_L$ containing exactly the transitions corresponding to letters in $v(n_i)$, we obtain that $\ell_1 \supseteq \ell_2 \supseteq \dots \supseteq \ell_d$ is a $d$-flower over $q$, which is positive if and only if $n_1$ is a round node. Lemma 2.16 allows us to conclude. ■

**Minimality of the ZT-parity-automaton with respect to deterministic automata.** Before presenting the proof of Theorem 4.15, we prove a weaker result, namely, that the ZT-parity-automaton is minimal amongst deterministic parity automata recognising a Muller language.

**THEOREM 4.18 (Minimality of the Zielonka Tree automaton with respect to deterministic automata).** Let $\mathcal{A}$ be a DPA recognising a Muller language $\text{Muller}_\Sigma(\mathcal{F})$. Then, $|\mathcal{A}^{\text{parity}}_{\mathcal{Z}_F}| \le |\mathcal{A}|$.

We recall that, by Remark 2.4 and Lemma 2.5, we can assume that all the states of automata recognising Muller languages are accessible, and that any of them can be chosen to be initial. When considering subautomata of these automata, we will sometimes not mention their initial state.

Let $\mathcal{A} = (Q, \Sigma, I, \Gamma, \Delta, \mathcal{W})$ be an automaton, and let $X \subseteq \Sigma$ be a subset of the input alphabet. We say that a subgraph $S$ of the underlying graph of $\mathcal{A}$ is *X-closed* if for every state $q$ in $S$ and every letter $a \in X$ there is some transition $q \xrightarrow{a:c} q'$ in $S$. An *X-final strongly connected component* (X-FSCC) of $\mathcal{A}$ is an X-closed final SCC in the graph obtained by taking the restriction of the underlying graph of $\mathcal{A}$ to the edges labelled by letters in $X$. We remark that a subset $S \subseteq Q$ is the set of states of an X-FSCC if and only if:

- for any two states $q, q' \in S$ there is a finite word $w \in X^*$ labelling a finite path from $q$ to $q'$, and

- if $q \in S$ and there is a finite path from $q$ to $q'$ labelled with a word $w \in X^*$, then $q' \in S$.

**LEMMA 4.19.** Let $\mathcal{A}$ be a complete automaton. For every subset $X \subseteq \Sigma$, $\mathcal{A}$ contains an accessible X-FSCC.

**PROOF.** As any graph without sinks contains some final SCC, the accessible part of the restriction of $\mathcal{A}$ to edges labelled by letters in $X$ contains one. By completeness of $\mathcal{A}$, one such final SCC has to be an X-closed subgraph, so it is an X-FSCC. ■

**LEMMA 4.20.** Let $\mathcal{A}$ be a DMA recognising a Muller language $\text{Muller}_\Sigma(\mathcal{F})$, let $X \subseteq \Sigma$ and let $S_X$ be an accessible X-FSCC of $\mathcal{A}$. Then, the automaton induced by $S_X$ is a deterministic automaton recognising $\text{Muller}_X(\mathcal{F}|_X) = \{w \in X^\omega \mid \text{Inf}(w) \in \mathcal{F}\}$.

**PROOF.** Let $\mathcal{A} = (Q, \Sigma, q_0, \Gamma, \delta, \mathcal{W})$ (where $\mathcal{W}$ is a Muller language). Let $q_S$ be the state in $S_X$ chosen to be initial, and let $u_0 \in \Sigma^*$ be a finite word such that the run over $u_0$ from $q_0$ ends in $q_S$.
By prefix-independence of Muller languages, a word $w \in X^\omega$ belongs to $\text{Muller}_\Sigma(\mathcal{F})$ if and only if $u_0w \in \text{Muller}_\Sigma(\mathcal{F})$, and therefore, $\mathcal{A}$ accepts $w$ if and only if it accepts $u_0w$. Since the run in $\mathcal{A}$ over $u_0w$ and the run in $S_X$ over $w$ have a suffix in common, and by prefix-independence of $\mathcal{W}$, we have that $w \in \mathcal{L}(S_X)$ if and only if $u_0w \in \mathcal{L}(\mathcal{A})$ if and only if $\text{Inf}(w) \in \mathcal{F}$. ■

The next lemma states that, in a parity automaton, the union of two accepting cycles must be accepting, and similarly for rejecting cycles. In Section 6.1, we will see that this property is actually a characterisation of parity transition systems (Proposition 6.11).

**LEMMA 4.21.** Let $\mathcal{A}$ be a parity automaton. Let $\ell_1, \ell_2 \in \text{Cycles}(\mathcal{A})$ be two cycles with some state in common. If $\ell_1$ and $\ell_2$ are both accepting (resp. rejecting), then $\ell_1 \cup \ell_2$ is also accepting (resp. rejecting).

**PROOF.** Let $\gamma: \Delta \to \mathbb{N}$ be the colouring function of $\mathcal{A}$. The cycles $\ell_1$ and $\ell_2$ are accepting if and only if $d_i = \min \gamma(\ell_i)$ is even, for $i = 1, 2$. In this case, $\min \gamma(\ell_1 \cup \ell_2) = \min\{d_1, d_2\}$ is even. The proof is symmetric if $\ell_1$ and $\ell_2$ are rejecting. ■

By a small abuse of notation, we will say that two SCC $S_1$ and $S_2$ are disjoint, and write $S_1 \cap S_2 = \emptyset$, if their sets of states are disjoint.

**LEMMA 4.22.** Let $\mathcal{F} \subseteq 2_+^\Sigma$ be a family of subsets with Zielonka tree $\mathcal{Z}_\mathcal{F} = (N, \leq, v)$, and let $\mathcal{A}$ be a DPA recognising $\text{Muller}_\Sigma(\mathcal{F})$. Let $n \in N$ be a node of the Zielonka tree of $\mathcal{F}$, and let $n_1, n_2 \in \text{Children}_{\mathcal{Z}_\mathcal{F}}(n)$ be two different children of $n$. If $S_1$ and $S_2$ are two accessible $v(n_1)$-FSCC and $v(n_2)$-FSCC in $\mathcal{A}$, respectively, then $S_1 \cap S_2 = \emptyset$.

**PROOF.** Without loss of generality, we can assume that all states in $\mathcal{A}$ are accessible, and since the language that $\mathcal{A}$ recognises is prefix-independent, we can also suppose that $\mathcal{A}$ is complete. Let $l_\Sigma: \Delta \to \Sigma$ be the labelling of the transitions of $\mathcal{A}$ with input letters. Let $S_i$ be a $v(n_i)$-FSCC in $\mathcal{A}$, for $i = 1, 2$, and let $\ell_i$ be its set of edges, which form a cycle satisfying $l_\Sigma(\ell_i) = v(n_i)$. Suppose by contradiction that $S_1 \cap S_2 \neq \emptyset$. Then $\ell_1$ and $\ell_2$ have some state in common, and their union is also a cycle satisfying $l_\Sigma(\ell_1 \cup \ell_2) = v(n_1) \cup v(n_2)$. By Lemma 4.21, we must have

$$ \ell_1 \text{ accepting} \iff \ell_1 \cup \ell_2 \text{ accepting,} $$

contradicting the fact that $v(n_1) \in \mathcal{F}$ if and only if $v(n_1) \cup v(n_2) \notin \mathcal{F}$ (Remark 4.4). ■

**PROOF OF THEOREM 4.18.** We proceed by induction in the height of $\mathcal{Z}_\mathcal{F}$. For height 1, the result is trivial, since $|\mathcal{A}_{\mathcal{Z}_\mathcal{F}}^{\text{parity}}| = 1$. Let $\mathcal{A}$ be a DPA recognising $\text{Muller}_\Sigma(\mathcal{F})$. Let $n_0$ be the root of $\mathcal{Z}_\mathcal{F}$ and $n_1, n_2, \dots, n_k$ be an enumeration of the children of $n_0$ in $\mathcal{Z}_\mathcal{F}$. By Lemma 4.19, for each $i \in \{1, \dots, k\}$, $\mathcal{A}$ contains some accessible $v(n_i)$-FSCC $S_i$, and by Lemma 4.22 these must be pairwise disjoint. By Lemma 4.20, each $S_i$ induces a deterministic subautomaton recognising $\text{Muller}_{v(n_i)}(\mathcal{F}|_{v(n_i)})$. Let $\mathcal{Z}_i$ by the subtree of $\mathcal{Z}_\mathcal{F}$ rooted at $n_i$, which we recall that is the Zielonka
tree for $\mathcal{F}|_{v(n_i)}$. By induction hypothesis, it must be the case that $|\text{Leaves}(\mathcal{Z}_i)| \le |S_i|$, so we can conclude:

$$|\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}| = |\text{Leaves}(\mathcal{Z}_F)| = \sum_{i=1}^{k} |\text{Leaves}(\mathcal{Z}_i)| \le \sum_{i=1}^{k} |S_i| \le |\mathcal{A}|. \blacksquare$$

**Minimality of the ZT-parity-automaton with respect to HD automata.** We intend to prove Theorem 4.15, that is, that for any $\mathcal{F} \subseteq 2_+^\Sigma$, the automaton $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$ is minimal amongst HD parity automata recognising $\text{Muller}(\mathcal{F})$. We will follow the same proof scheme than in the deterministic case, performing an induction over the height of the Zielonka tree. Assume that $\mathcal{A}$ is an HD parity automaton for $\text{Muller}(\mathcal{F})$ and that $n_0$ is the root of $\mathcal{Z}_F$ having $n_1, \dots, n_k$ as children. For each child $n_i$ we want to find an HD subautomaton $\mathcal{A}_i$ recognising the language associated to $\mathcal{F}|_{v(n_i)}$ in such a way that the automata $\mathcal{A}_i$ are pairwise disjoint, which would allow us to carry out the induction and obtain that $|\mathcal{A}| \ge |\text{Leaves}(\mathcal{Z}_F)| = |\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}|$. Our objective will be therefore to prove:

**PROPOSITION 4.23.** Let $n_0$ be the root of the Zielonka tree of $\mathcal{F}$, and let $n_1, n_2, \dots, n_k$ be an enumeration of the children of $n_0$. If $\mathcal{A}$ is an HD automaton recognising $\text{Muller}_\Sigma(\mathcal{F})$, then, $\mathcal{A}$ contains $k$ pairwise disjoint subautomata $\mathcal{A}_1, \dots, \mathcal{A}_k$ that are history-deterministic and such that $\mathcal{L}(\mathcal{A}_i) = \text{Muller}_{v(n_i)}(\mathcal{F}|_{v(n_i)})$.

The non-determinism of $\mathcal{A}$ will make this task considerably more laborious than in the previous paragraph, and we will have to thoroughly examine the strategies used by the resolvers for $\mathcal{A}$. By the inherently asymmetric semantics of non-deterministic automata, there are two well-differentiated cases to consider, depending on whether the root of the Zielonka tree is round ($\Sigma \in \mathcal{F}$) or square ($\Sigma \notin \mathcal{F}$).

In order to simplify the proof, we will assume that all states are reachable using a sound resolver and that all automata have a single initial state, which can be done without loss of generality since a resolver for an HD automaton fixes such initial state in advance.

**Case 1:** The root of the Zielonka tree is a square node: $\Sigma \notin \mathcal{F}$. Let $\mathcal{A} = (Q, \Sigma, q_0, \Gamma, \Delta, \mathcal{W})$ be a non-deterministic automaton. A memory structure for $\mathcal{A}$ is a memory skeleton $M$ over $\Delta$ together with a function $\sigma: Q \times M \times \Sigma \to \Delta$, where $M$ is the set of states of $M$. We say that $(M, \sigma)$ implements a resolver $(q_0, r)$ if for all $a \in \Sigma$, $r(\varepsilon, a) = \sigma(q_0, m_0, a)$ and for all $\rho \in \Delta^+$, $r(\rho, a) = \sigma(\text{Target}(\rho), \mu(m_0, \rho), a)$, where $m_0$ is the initial state of $M$ and $\mu: M \times \Delta^* \to M$ is its update function.

**LEMMA 4.24 ([9]).** Every HD parity automaton admits a sound resolver implemented by a finite memory structure.

As $M$ is a pointed graph labelled with the transitions of $\mathcal{A}$, we could consider the product automaton $\mathcal{A} \times M$. We want to furthermore restrict the transitions of this automaton to those
that are indicated by the next-move function $\sigma$. Given an automaton $\mathcal{A}$ and a memory structure $(M, \sigma)$, we define their composition, which we write $\mathcal{A} \triangleleft_{\sigma} M = (Q \times M, \Sigma, (q_0, m_0), \Gamma, \Delta', \mathbb{W})$ as the automaton having transitions $(q, m) \xrightarrow{a:c} (q', m')$ if $\sigma(q, m, a) = e = q \xrightarrow{a:c} q'$ and $\mu(m, e) = m'$ (formally, $\Delta'$ is a subset of $\Delta \times E_M$, where $E_M$ are the edges of the memory skeleton). We note that $\mathcal{A} \triangleleft_{\sigma} M$ is deterministic, and it is complete if $\mathcal{A}$ is.

The following lemma follows directly from the definition of soundness of a resolver and the definition of composition of an automaton and a memory structure.

**LEMMA 4.25.** Let $\mathcal{A}$ be an automaton and $(M, \sigma)$ a memory structure for $\mathcal{A}$. The resolver implemented by $(M, \sigma)$ is sound if and only if $\mathcal{A}$ and $\mathcal{A} \triangleleft_{\sigma} M$ recognise the same language.

For the rest of the paragraph, we let $\mathcal{A} = (Q, \Sigma, q_0, \mathbb{N}, \Delta, \text{parity})$ be a complete history-deterministic automaton recognising the Muller language $\text{Muller}_F(\Sigma)$ admitting a sound resolver $(q_0, r)$ implemented by a memory structure $(M, \sigma)$. We let $\pi_{\mathcal{A}}: \mathcal{A} \triangleleft_{\sigma} M \to \mathcal{A}$ be the morphism of automata given by the projection into the first component: $\pi_{\mathcal{A},V}(q, m) = q$ and $\pi_{\mathcal{A},E}(e_1, e_2) = e_1$.

**REMARK 4.26.** If $\rho$ is a path in $\mathcal{A} \triangleleft_{\sigma} M$ that is labelled by input letters $a_0a_1 \cdots \in \Sigma^{\infty}$ and producing output $c_0c_1 \cdots \in \mathbb{N}^{\infty}$, then the $\pi_{\mathcal{A}}$-projection of $\rho$ is a path in $\mathcal{A}$ labelled by $a_0a_1 \cdots \in \Sigma^{\infty}$ and producing $c_0c_1 \cdots \in \mathbb{N}^{\infty}$ as output.

**LEMMA 4.27.** Let $X \subseteq \Sigma$ and let $S_X$ be an accessible X-FSCC of $\mathcal{A} \triangleleft_{\sigma} M$. Then, $\pi_{\mathcal{A}}(S_X)$ induces an HD subautomaton of $\mathcal{A}$ recognising $\text{Muller}_X(F|_X) = \{w \in X^{\omega} | \text{Inf}(w) \in F\}$.

**PROOF.** Let $q_S$ be a state in $\pi_{\mathcal{A}}(S_X)$ chosen to be initial. Let $m_S$ be a state in $M$ such that $(q_S, m_S) \in S_X$. By Lemma 4.20, $S_X$ induces a deterministic subautomaton with initial state $(q_S, m_S)$ recognising $\text{Muller}_X(F|_X)$. On the one hand, since $\pi_{\mathcal{A}}(S_X)$ is an accessible subautomaton of $\mathcal{A}$ having only transitions labelled by X and by prefix-independence of $\mathcal{L}(\mathcal{A})$, we have that

$$ \mathcal{L}(\pi_{\mathcal{A}}(S_X)) \subseteq \mathcal{L}(\mathcal{A}) \cap X^{\omega} = \text{Muller}_X(F|_X). $$

On the other hand, the projection of any accepting run in $S_X$ provides an accepting run in $\pi_{\mathcal{A}}(S_X)$ (by Remark 4.26), so

$$ \mathcal{L}(S_X) = \text{Muller}_X(F|_X) \subseteq \mathcal{L}(\pi_{\mathcal{A}}(S_X)). $$

Moreover, a sound resolver for $\pi_{\mathcal{A}}(S_X)$ is implemented by $(M_{m_S}, \sigma)$ (the memory structure with initial state set to $m_S$).

**LEMMA 4.28.** Let $n \in \mathbb{N}$ be a square node of the Zielonka tree of $F$ ($v(n) \notin F$), and let $n_1, n_2 \in \text{Children}_{\mathbb{Z}_F}(n)$ be two different children of n. If $S_1$ and $S_2$ are two accessible $v(n_1)$-FSCC and $v(n_2)$-FSCC in $\mathcal{A} \triangleleft_{\sigma} M$, respectively, then $\pi_{\mathcal{A}}(S_1) \cap \pi_{\mathcal{A}}(S_2) = \emptyset$.
**PROOF.** Suppose by contradiction that there is some state $q$ in $\pi_A(S_1) \cap \pi_A(S_2)$, and let $m_1, m_2 \in M$ be such that $(q, m_1)$ and $(q, m_2)$ are states in $S_1$ and $S_2$, respectively. For $i = 1, 2$, let $\ell_i \in \textit{Cycles}_{(q,m_i)}(A \triangleleft_\sigma M)$ be the cycle over $(q, m_i)$ containing all edges in $S_i$. We note that $l_\Sigma(\ell_i) = v(n_i)$ and therefore $\min \gamma(\ell_i)$ has to be even (as $A \triangleleft_\sigma M$ is deterministic), where $l_\Sigma$ and $\gamma$ are the labellings of $A \triangleleft_\sigma M$ with input letters and output colours, respectively. By Remark 4.26, the $\pi_A$-projections of $\ell_1$ and $\ell_2$ are cycles over $q$ in $A$ labelled with $v(n_1)$ and $v(n_2)$ and in which the minimal colour appearing is even. By alternating these two cycles, we can build an accepting run in $A$ over a word $w \in \Sigma^\omega$ with $\text{Inf}(w) = v(n_1) \cup v(n_2)$, contradicting the fact that $v(n_1) \cup v(n_2) \notin F$ (Remark 4.4). ■

Lemmas 4.19, 4.27 and 4.28 imply Proposition 4.23 in the case in which the root of the Zielonka tree is a square node.

**Case 2: The root of the Zielonka tree is a round node: $\Sigma \in F$.** Before presenting the formal proof, let us discuss why considering these two cases separately is necessary. A first idea to obtain the desired result would be to follow the same steps as in Case 1. However, this approach encounters a major difficulty: the argument used in the proof of Lemma 4.28 is not valid if $\Sigma \in F$. Indeed, even if we can find two rejecting cycles $\ell_1, \ell_2$ such that $l_\Sigma(\ell_i) = v(n_i)$, their $\pi_A$-projections could a priori have a state in common; this would imply the existence of a rejecting run over the set of letters $v(n_1) \cup v(n_2) \in F$, which is not enough to conclude, as the non-determinism of $A$ leaves room for the existence of other accepting runs over this set of letters. To circumvent this difficulty, we need to take a closer look at the strategies used by the resolver. Rather than considering any finite memory strategy resolving the non-determinism of $A$, we will show that we can choose a specific resolver for which we will be able to obtain a result analogous to Lemma 4.28. To do this, we first construct the letter game of $A$, as introduced in [44], which is a Muller game satisfying that a strategy for it yields a resolver for $A$. The strategy that we will use in this game is the one obtained by applying McNaughton's algorithm to solve Muller games [66] guided by the Zielonka tree, as presented in [34].

Let $\mathcal{A} = (Q, \Sigma, q_0, [d_{\min}, d_{\max}], \Delta, \text{parity})$ be a parity automaton recognising Muller($\mathcal{F}$), and assume that $\Sigma \cap [d_{\min}, d_{\max}] = \emptyset$. The letter game for $\mathcal{A}$ is the game $\mathcal{G}_\mathcal{A}$ defined as follows:

- The set of vertices is $V = Q \sqcup (Q \times \Sigma)$. Adam controls vertices in $Q$, and Eve controls vertices in $Q \times \Sigma$.

- For each letter $a \in \Sigma$ and each $q \in Q$, there is an edge $q \xrightarrow{a} (q, a)$.

- For each position $(q, a) \in Q \times \Sigma$, and for each transition $q \xrightarrow{a:c} q'$ in $\mathcal{A}$, there is an edge $(q, a) \xrightarrow{c} q'$.

- The set of colours is $\Gamma = \Sigma \sqcup [d_{\min}, d_{\max}]$, and the acceptance set is the Muller language associated to

$$ \mathcal{F} \to \text{parity} = \{C \subseteq \Gamma \mid [C \cap \Sigma \in \mathcal{F}] \implies [\min(C \cap [d_{\min}, d_{\max}]) \text{ is even}]\}. $$
That is, in the letter game, Adam provides input letters one by one, and Eve chooses transitions corresponding to those letters in the automaton $\mathcal{A}$. Eve wins this game if she manages to build an accepting run every time that Adam gives as input an infinite word in the language recognised by $\mathcal{A}$.

<figure><img src="image_21.png" /><figcaption>**Figure 11.** Letter game for the HD automaton from Figure 1, recognising the Muller language associated to $\mathcal{F} = \{\{a\}, \{b\}, \{c\}, \{a, b\}, \{b, c\}\}$. Squares represent Adam's vertices (the states of the automaton) and circles Eve's ones. Blue edges correspond to input-letters, and orange edges to the choices of transitions in the automaton after each input letter. The only vertex where Eve has a non-trivial choice to make in order to resolve the non-determinism of the automaton is $(q_1, b)$. In this example, Eve has a winning strategy corresponding to the resolver described in Example 2.3.</figcaption></figure>

We remark that a subgraph of $\mathcal{G}_\mathcal{A}$ induces a subautomaton of $\mathcal{A}$ via the (partial) mapping $\text{aut}_\mathcal{A}: \mathcal{G}_\mathcal{A} \to \mathcal{A}$ that sends states of the form $q \in Q$ to $q$ and edges of the form $(q, a) \xrightarrow{c} q'$ to $q \xrightarrow{a:c} q'$.

**REMARK 4.29.** A strategy for Eve in $\mathcal{G}_\mathcal{A}$ induces a resolver in $\mathcal{A}$, which is sound if and only if the strategy is winning.

**REMARK 4.30.** If two subsets of vertices of the letter game $S_1, S_2 \subseteq V$ are disjoint, then $\text{aut}_\mathcal{A}(S_1) \cap \text{aut}_\mathcal{A}(S_2) = \emptyset$.

**REMARK 4.31.** If $\rho$ is a play in $\mathcal{G}_\mathcal{A}$, labelled $a_0c_0a_1c_1\dots \in (\Sigma \cdot [d_{\min}, d_{\max}])^\infty$, the $\text{aut}_\mathcal{A}$-projection of $\rho$ is a run in $\mathcal{A}$ over $a_0a_1\dots \in \Sigma^\infty$ producing $c_0c_1\dots \in [d_{\min}, d_{\max}]^\infty$ as output.

**LEMMA 4.32 ([44]).** A parity automaton $\mathcal{A}$ is HD if and only if Eve wins the letter game from some initial state of $\mathcal{A}$.

For a subset $X$ of vertices or edges of a game $\mathcal{G}$, we define Eve's *attractor to X* as:

$$ \text{Attr}_{\mathcal{G}}(X) = \{v \in V \mid \text{ there is a strategy for Eve ensuring to eventually visit } X \text{ from } v \}. $$

For a colour $c \in \Gamma$ we note $\text{Attr}_c(\mathcal{G}) = \text{Attr}_c(E_c)$, where $E_c$ is the set of edges coloured $c$.
For the rest of the paragraph, let $\mathcal{A} = (Q, \Sigma, q_0, [0, d], \Delta, \text{parity})$ be a complete history-deterministic parity automaton recognising Muller($\mathcal{F}$). We can assume without loss of generality that the minimal colour that it uses is 0. We let $V$ and $E$ denote the sets of vertices and edges, respectively, of the letter game and $\Gamma = \Sigma \sqcup [0, d]$ its set of colours. Whenever we use expressions like “the minimal colour appearing in a play”, it will refer to the restriction of $\Gamma$ to $[0, d]$. From the prefix-independence of Muller($\mathcal{F}$) we can moreover assume that Eve wins the letter game from any vertex (see Lemma 2.5). We let $n_0$ be the root of the Zielonka tree of $\mathcal{F}$ (assumed to be round, that is $v(n_0) \in \mathcal{F}$), let $n_1, \dots, n_k$ be its children, and let $\Sigma_i = v(n_i) \subseteq \Sigma$ (note that $\Sigma_i \notin \mathcal{F}$ for $i \ge 1$).

Let us examine the condition $\mathcal{F} \to \text{parity}$ used in the letter game a bit closer. The first levels of the Zielonka tree of this condition are depicted in Figure 12. It is clear that a strategy in $\mathcal{G}_\mathcal{A}$ ensuring to produce colour 0 infinitely often is winning. It might be the case that Adam can prevent Eve from doing this, however, since Eve wins $\mathcal{G}_\mathcal{A}$, in that case she could ensure to produce infinitely often a set of colours included in some of the round nodes below the root, that is, to either avoid colour 1, or to produce letters included in some $\Sigma_i$. We use this idea to define next *attractor decompositions* for $\mathcal{G}_\mathcal{A}$.

<figure><img src="image_22.png" /><figcaption>**Figure 12.** First levels of the Zielonka tree of the Muller condition $\mathcal{F} \to \text{parity}$, which is the winning condition of the letter game $\mathcal{G}_\mathcal{A}$.</figcaption></figure>

Given a subset of vertices $V' \subseteq V$ we write $\mathcal{G}_\mathcal{A}(V')$ to denote the subgame of $\mathcal{G}_\mathcal{A}$ containing the vertices of $V'$ and the edges between them.

Let $x$ be an even integer. For a subgame $\mathcal{G}' = \mathcal{G}_\mathcal{A}(V')$ of $\mathcal{G}_\mathcal{A}$ with no colour strictly smaller than $x$, we define an *x-attractor decomposition* of $\mathcal{G}'$ as a partition of $V'$ into

$$V' = \text{Attr}_{\mathcal{G}'}(x) \sqcup V_1 \sqcup A_1 \sqcup \dots \sqcup V_l \sqcup A_l,$$

satisfying:

- $\text{Attr}_{\mathcal{G}'}(x)$ is Eve's attractor to $x$ in $\mathcal{G}'$.

- For each $V_j$, either (1) there is some $i \in \{1, \dots, k\}$ such that no colour of $\Sigma \setminus \Sigma_i$ appears in $\mathcal{G}_\mathcal{A}(V_j)$, or (2) Eve has a winning strategy for $\mathcal{G}_\mathcal{A}(V_j)$ (from any vertex) avoiding colour
$x + 1$; and in both cases, if Adam can leave $V_j$ taking an edge $v \to v'(v \in V_j, v' \notin V_j)$, then $v' \in \text{Attr}_{G'}(x) \sqcup V_1 \sqcup A_1 \sqcup \dots \sqcup V_{j-1} \sqcup A_{j-1}$. In case (1) we say that $V_j$ is a $\Sigma_i$-region of the attractor decomposition and in case (2) that $V_j$ is an $x + 1$-avoiding region.

— Eve wins $G_A(V_j)$ from every vertex for all $j$.

— $A_j = \text{Attr}_{G_j}(V_j)$, where $G_j$ is the subgame induced by the subset of vertices given by $V \setminus (\text{Attr}_{G'}(x) \sqcup V_1 \sqcup \dots \sqcup V_{j-1} \sqcup A_{j-1})$ (we note that this game does not contain edges coloured with $x$).

If $V_j$ is an $x + 1$-avoiding region, we let $G'_j$ be the subgame obtained from $G_A(V_j)$ by removing the transitions labelled $x + 1$.

An $x$-recursive attractor decomposition of $G'$ is:

$$D_{G'} = \langle \text{Attr}_{G'}(x), (V_1, A_1, D_{G'_1}), (V_2, A_2, D_{G'_2}), \dots, (V_l, A_l, D_{G'_l}) \rangle,$$

where $\text{Attr}_{G'}(x) \sqcup V_1 \sqcup A_1 \sqcup \dots \sqcup V_l \sqcup A_l$ is an $x$-attractor decomposition of $G'$, and, if $V_j$ is an $x + 1$-avoiding region, then $D_{G'_j}$ is an $x + 2$-recursive attractor decomposition of $G'_j$. (If $V_j$ is an $\Sigma_i$-region, $D_{G'_j}$ can be disregarded).

A representation of an attractor decomposition appears in Figure 13.

<figure><img src="image_23.png" /><figcaption>**Figure 13.** On the left, a 0-attractor decomposition of a game $G$. On the right, the coloured part represents a 2-attractor decomposition of the subgame $G'_2$ induced by the 1-avoiding region $V_2$. Since no 3-avoiding region appears on it, this is a full attractor decomposition of the game $G$, inducing a partition into three different kinds of regions. The order over the $\Sigma_i$-regions is given by $V_1 <_D V_{2,1} <_D V_{2,2} <_D V_3$. Adam can only force to decrease with respect to this order, that is, at each sublevel of the decomposition, Adam cannot force to go to the right.</figcaption></figure>

We say that a subgame $S$ of $G'$ is a $\Sigma_i$-region of $D_{G'}$ if it is a $\Sigma_i$-region of some of the recursively defined attractor decompositions. Similarly, for $y > x$ an odd integer, we say that $S$ is a $y$-avoiding region of $D_{G'}$ if it is a $y$-avoiding region of some of the recursively defined
attractor decompositions. We say that the full game $G'$ is an $x-1$-avoiding region (note that $x$ might take the value 0). We remark that for any subset $S$ of vertices of $G'$ there is one and only one minimal $y$-avoiding region of $D_{G'}$ containing $S$ (note that $y$ might equal $-1$).

**REMARK 4.33.** A 0-recursive attractor decomposition $D_{G_A}$ of $G_A$ induces a partition of the vertices into

$$V = S_1 \sqcup \dots \sqcup S_r \sqcup A_1 \sqcup \dots A_r \sqcup B_1 \sqcup \dots \sqcup B_s,$$

such that:

- $S_j$ is a $\Sigma_i$-region of $D_{G_j}$, for some $i \in \{1, \dots, k\}$,

- $A_j = \text{Attr}_{G_j}(S_j)$ for some subgame $G_j$ appearing at some level of the decomposition,

- $B_j = \text{Attr}_{G'_j}(x)$ for some even integer $x$ and some $x-1$-avoiding region $G'_j$ appearing at some level of the decomposition.

Moreover, such a decomposition induces a total order over the $\Sigma_i$-regions: for two sets $S_t, S_{t'}$, we write $S_t <_D S_{t'}$ if there are two regions $V_j, V_{j'}$ belonging to the same attractor decomposition in $D_{G_A}$ such that $j < j'$, $S_t \subseteq V_j$ and $S_{t'} \subseteq V_{j'}$.

We call such a partition a *full attractor decomposition of $G_A$*. We remark that, by definition of an attractor decomposition, Eve wins $G_A(S_j)$ from every vertex for every $S_j$. See Figure 13 for an illustration.

The proof that $G_A$ admits a full attractor decomposition uses the ideas appearing in [34, Section 3].

**LEMMA 4.34.** Let $x$ be an even integer. If $G'$ is a subgame of $G_A$ with no colour smaller than $x$ and such that Eve can win from every vertex, then it admits an $x$-attractor decomposition. In particular, $G_A$ admits a full attractor decomposition.

**PROOF.** We assume without loss of generality that $x = 0$. Suppose that $V_1, A_1, \dots, V_{j-1}, A_{j-1}$ have already been defined and that they verify the desired properties. Suppose that the game $G_j$ with vertices $V \setminus (\text{Attr}_{G'}(0) \sqcup V_1 \sqcup \dots \sqcup V_{j-1} \sqcup A_{j-1})$ is non-empty. First, note that Eve wins $G_j$ from any position. Indeed, Eve wins $G'$ from any vertex $v$ in $G_j$ (as we suppose that she can win $G'$ starting anywhere); moreover, since $v \notin A_{j'}$ for any $j' < j$, Adam has a strategy from $v$ forcing to remain in $G_j$, and Eve has to be able to win against any such strategy.

We prove that either (1) there is some $i \in \{1, \dots, k\}$ and $v$ vertex in $G_j$ such that Eve has a winning strategy from $v$ forcing to produce no colour in $\Sigma \setminus \Sigma_i$, or (2) there is some vertex $v$ in $G_j$ such that Eve has a winning strategy from $v$ avoiding colour 1. Suppose by contradiction that this was not the case. Then, Adam can use the following strategy: first, he forces producing colour 1, then, a colour not in $\Sigma_1$, followed by a colour not in $\Sigma_2$, and continues this pattern until a colour not in $\Sigma_l$ is produced (and this without producing colour 0, since no 0-edge appears in $G_j$). Afterward, he continues repeating these steps in a round-robin fashion. This allows him to
produce a play winning for him (the word produced is in Muller($\mathcal{F}$) while the minimal number produced is 1), contradicting the fact that Eve wins $\mathcal{G}_j$ from $v$.

We assume that we are in the case (1) (case (2) is identical), so from some vertices Eve can win producing no colour in $\Sigma \setminus \Sigma_i$. We let $V_j$ be the set of such vertices, and for each of them we fix a strategy strat$_v$ that is winning in $\mathcal{G}_j$ and avoids colours in $\Sigma \setminus \Sigma_i$. By definition of $V_j$, if $\rho = v \rightsquigarrow v'$ is a finite play consistent with strat$_v$ in $\mathcal{G}_j$, then $v' \in V_j$ (Eve can still win without producing colours in $\Sigma \setminus \Sigma_i$), so Adam cannot force leaving $V_j$. This proves that:

1. strat$_v$ is winning in $\mathcal{G}_A(V_j)$ from $v$,

2. if $v \in V_j$ is controlled by Adam and $v \to v'$ is an edge in $\mathcal{G}_A$, then $v' \in \text{Attr}_{\mathcal{G}'}(0) \sqcup V_1 \sqcup A_1 \sqcup \dots V_{j-1} \sqcup A_{j-1} \sqcup V_j$.

Also, if a vertex $v$ controlled by Adam is in $V_j$, no edge $v \xrightarrow{a \notin \Sigma_i} v'$ appears in $\mathcal{G}_j$, so no colour of $\Sigma \setminus \Sigma_i$ appears in $\mathcal{G}_A(V_j)$.

To finish the proof, we define $A_j$ to be the attractor of $V_j$ in $\mathcal{G}_j$.

The existence of a full attractor decomposition for $\mathcal{G}_A$ follows from the fact that any $x+1$-avoiding region of an $x$-attractor decomposition verifies the hypothesis of the lemma. ■

**LEMMA 4.35 ([66]).** Let $\mathcal{G}$ be a game using a Muller acceptance condition such that Eve wins $\mathcal{G}$ from every vertex. Then, there is a finite memory structure $(M, \sigma)$ over $\mathcal{G}$ implementing a winning strategy uniformly, that is, for every vertex $v$ of $\mathcal{G}$ there is a memory state $m_v$ in $M$ such that the memory structure $(M_{m_v}, \sigma)$ implements a winning strategy from $v$.

For the rest of the paragraph, we fix a 0-recursive attractor decomposition $\mathcal{D}_{\mathcal{G}_A}$ for $\mathcal{G}_A$ and let $S_1 <_{\mathcal{D}} S_2 \dots <_{\mathcal{D}} S_r$ be the $\Sigma_i$-regions of the induced full attractor decomposition. For each region $S_j$ we fix a memory structure $(M_j, \sigma_j)$ uniformly implementing a winning strategy for Eve in $\mathcal{G}_A(S_j)$ (as given by Lemma 4.35). As in the previous paragraph, we can consider the composition $\mathcal{G}_A(S_j) \triangleleft_{\sigma_j} M_j$ consisting of the product game in which the choices for Eve are restricted to those of the form $(v, m) \xrightarrow{c} (v', m')$ if $\sigma_j(v, m) = e = v \xrightarrow{c} v'$ and $\mu_j(m, e) = m'$. By definition, Eve does not have any choice in $\mathcal{G}_A(S_j) \triangleleft_{\sigma_j} M_j$, and since $(M_j, \sigma_j)$ implements a winning strategy, any infinite path in $\mathcal{G}_A(S_j) \triangleleft_{\sigma_j} M_j$ produces a set of colours in $\mathcal{F} \to \text{parity}$. We let $\pi_{\mathcal{G}}: \mathcal{G}_A(S_j) \triangleleft_{\sigma_j} M_j \to \mathcal{G}_A(S_j)$ be the projection into $\mathcal{G}_A(S_j)$.

A subgraph $G_j$ of $\mathcal{G}_A(S_j) \triangleleft_{\sigma_j} M_j$ is **X-Adam-closed**, for a subset $X \subseteq \Sigma$, if for every vertex $(q, m)$ controlled by Adam and every $a \in X$, the transition $(q, m) \xrightarrow{a} ((q, a), m')$ remains in $G_j$. We say that $G_j$ is an **X-FSCC** if it is a final SCC of the restriction of $\mathcal{G}_A(S_j) \triangleleft_{\sigma_j} M_j$ to the graph where Adam's choices are restricted to letters in $X$ that is moreover X-Adam-closed. We say that a subgraph $\mathcal{G}$ of $\mathcal{G}_A$ is an **X-closed subgame** (with respect to the attractor decomposition $\mathcal{D}_{\mathcal{G}_A}$ and a family of finite memory strategies) if $\mathcal{G} = \pi_{\mathcal{G}}(G_j)$ for $G_j$ some X-Adam-closed SCC of some product $\mathcal{G}_A(S_j) \triangleleft_{\sigma_j} M_j$.
Intuitively, an X-closed subgame $\mathcal{G}$ of the letter game is a subgame included in a region $S_j$ of the full attractor decomposition such that, if Adam only provides letters in X and Eve plays according to the strategy defined by the memory structures $M_j$, the play will never leave $\mathcal{G}$.

**LEMMA 4.36.** *Eve wins any X-closed subgame of $\mathcal{G}_A$ (from any vertex).*

**PROOF.** In an X-closed subgame included in a region $\mathcal{G}_A(S_j)$, Adam's moves have been restricted; however, all Eve's moves coming from the strategy implemented by $(M_j, \sigma_j)$ are available. Therefore, this strategy is also winning in such a subgame, since it is winning in the full $\mathcal{G}_A(S_j)$. ■

Putting this lemma together with Remark 4.29 we obtain:

**LEMMA 4.37.** Let $X \subseteq \Sigma$, and let $\mathcal{G}_X \subseteq \mathcal{G}_A$ be an X-closed subgame of $\mathcal{G}_A$. The subautomaton of $A$ induced by $\mathrm{aut}_A(\mathcal{G}_X)$ is HD and recognises $\mathrm{Muller}_X(F|_X)$.

**LEMMA 4.38.** If a product $\mathcal{G}_A(S_j) \triangleleft_{\sigma_j} M_j$ does not contain any X-Adam-closed subgraph, for $X \subseteq \Sigma$, then from any vertex $(q, m)$ Adam can force leaving $S_j$ while playing only letters in X. That is, there is a path $(q, m) \rightsquigarrow (q', m')$ in $\mathcal{G}_A(S_j) \triangleleft_{\sigma_j} M_j$ producing exclusively letters in X such that, for some $a \in X$, the edge $q' \xrightarrow{a} (q', a)$ does not belong to $\mathcal{G}_A(S_j)$.

**PROOF.** If this was not the case, the subgraph of $\mathcal{G}_A(S_j) \triangleleft_{\sigma_j} M_j$ consisting of the vertices that can be reachable from $(q, m)$ by reading letters in X would form an X-Adam-closed subgraph. ■

**LEMMA 4.39.** For each label $\Sigma_i$ of the children of the root of $\mathcal{Z}_F$, $\mathcal{G}_A$ admits some $\Sigma_i$-closed subgame contained in a $\Sigma_i$-region of $\mathcal{D}_{\mathcal{G}_A}$.

**PROOF.** Assume that the full attractor decomposition of $\mathcal{G}_A$ induced by $\mathcal{D}_{\mathcal{G}_A}$ is the following:

$$V = S_1 \sqcup \dots \sqcup S_r \sqcup A_1 \sqcup \dots A_r \sqcup B_1 \sqcup \dots \sqcup B_s,$$

We fix the following strategy strat for Eve in the letter game:

- whenever the play lands to $B_j$, where $B_j = \mathrm{Attr}_{G'_j}(x)$ for some even colour $x$, she forces producing colour $x$,

- whenever the play arrives to some $A_j$, she forces going to $S_j$,

- in regions $S_j$ she uses the strategy $(M_j, \sigma_j)$. More precisely, let $m_v$ be the state of $M_j$ such that $(M_{j,v}, \sigma_j)$ implements a winning strategy for $\mathcal{G}_A(V_j)$ from $(v, m_v)$. Each time that the play arrives to a vertex $v$ in $V_j$ from a different region, Eve uses $(M_{j,v}, \sigma_j)$.

**CLAIM 4.40.** Let $\rho$ be a play consistent with strat (from any vertex), and let $y \ge -1$ be the maximal odd number such that $\mathrm{Inf}(\rho)$ is contained in a y-avoiding region $S$ of $\mathcal{D}_{\mathcal{G}_A}$. Then, either $\rho$ eventually stays in a $\Sigma_i$-region $S_j$ contained in $S$, or the minimal colour produced infinitely often by $\rho$ is $y+1$.
**Proof.** Let $\text{Attr}_S(y+1) \sqcup V_1 \sqcup A_1 \sqcup \dotsb$, $V_l \sqcup A_l$ be the attractor decomposition of $S$ appearing in $\mathcal{D}_{G_A}$. By definition of an attractor decomposition, each time that the play leaves a $V_j$ region, the next vertex is in $v' \in \text{Attr}_S(y+1) \sqcup V_1 \sqcup A_1 \sqcup \dotsb V_{j-1} \sqcup A_{j-1}$. First, if $V_j$ is a $y+2$-avoiding region, $\rho$ cannot stay in it (by maximality of $y$). Thus, if $\rho$ does not eventually stay in a $\Sigma_i$-region, it leaves regions $V_j$ infinitely often, so it must produce $y+1$ infinitely often too. Since $S$ is a $y$-avoiding region, no colour smaller than $y+1$ is produced. ♦

We obtain as a consequence that strat is winning for Eve from any initial position: any play staying in a *y*-avoiding region and producing infinitely many *y* + 1's is winning, and if a play eventually stays in a $\Sigma_i$-region $S_j$, it has to be winning since the strategy implemented by $(M_j, \sigma_j)$ is winning in there.

We remark that we can extract a $\Sigma_i$-FSCC from any $\Sigma_i$-Adam-closed subgraph of $G_A(S_j) \triangleleft_{\sigma_j} M_j$, that will be contained in the $\Sigma_i$-region $S_j$, so it suffices to prove the existence of such $\Sigma_i$-Adam-closed subgraphs. We also recall that in $G_A(S_j) \triangleleft_{\sigma_j} M_j$ all choices are left to Adam, so he can choose to produce any path in this product whenever the play arrives to a vertex $v$ in $S_j$.

Suppose by contradiction that no accessible $\Sigma_i$-Adam-closed subgraph exists in any of the products. We consider a play in which Adam does the following:

(a) the letters that he gives form a word $w \in \Sigma^\omega$ such that $\text{Inf}(w) = \Sigma_i$,

(b) each time that the play arrives to a region $S_j$, he exists this region in a finite number of steps.

Indeed, he can ensure to exit regions $S_j$ while only producing letters in $\Sigma_i$ by Lemma 4.38. By Claim 4.40, the minimal colour produced infinitely often by such a play is even. By Remark 4.31, we can project such a play in the automaton $\mathcal{A}$, obtaining an accepting run over $w$. This is a contradiction, since $w \notin \text{Muller}(\mathcal{F}) = \mathcal{L}(\mathcal{A})$ (because $\Sigma_i \notin \mathcal{F}$). We conclude that some $G_A(S_j) \triangleleft_{\sigma_j} M_j$ admits a $\Sigma_i$-FSCC, and therefore $G_A$ admits some $\Sigma_i$-closed subgame. ■

We can now infer Proposition 4.23 in the case in which the root of $\mathcal{Z}_F$ is round: from Lemma 4.39, we obtain $\Sigma_i$-closed subgames in $G_A$ for each $i \in \{1, \dots, k\}$ that are moreover contained in $\Sigma_i$-regions. Therefore, their aut$_A$-projections are disjoint (Remark 4.30), and each of these projections induces an HD-subautomaton recognising $\mathcal{F}|_{\Sigma_i}$ (Lemma 4.37).

## 4.3 A minimal history-deterministic Rabin automaton

In this section, we present the construction of a history-deterministic Rabin automaton $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$ for a Muller language $\text{Muller}(\mathcal{F})$ using the Zielonka tree $\mathcal{Z}_F$, and prove its minimality (Theorem 4.51). The automaton $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$ can be seen as a quotient of the ZT-parity-automaton; that is, $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$ is obtained by merging some states of $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$. Thus, we replace the complexity in the number of states by complexity in the acceptance condition. The size of the automaton $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$ is a well-studied parameter of Zielonka trees: its round-branching width, $\text{rbw}(\mathcal{Z}_F)$. This
parameter was introduced by Dziembowski, Jurdziński and Walukiewicz [34] (under the name of memory of $\mathcal{Z}_F$) and shown to coincide with the memory required by Eve to win in games using Muller($\mathcal{F}$) as an acceptance condition (see Proposition 4.52 below). In this paper, we are not concerned with the memory of winning conditions, but we will use the result from [34] to obtain the minimality of $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$.

We note that this construction is asymmetric, in the sense that we show it for Rabin automata, but not for Streett automata (their dual notion). The reason why we cannot dualize the construction is due to the semantics of non-deterministic automata. However, we could use the same idea to obtain a minimal universal history-deterministic Streett automaton (we refer to [12] for the definition of universal HD automata).

### 4.3.1 The Zielonka-tree-HD-Rabin-automaton

**DEFINITION 4.41 ([34]).** Let $T$ be a tree with nodes partitioned into round and square nodes, and let $T_1, \dots, T_k$ be the subtrees of $T$ rooted at the children of the root of $T$. We define inductively the *round-branching width* of $T$, denoted $\text{rbw}(T)$ as:

$$ \text{rbw}(T) = \begin{cases} 1 & \text{if } T \text{ has exactly one node,} \\ \max\{\text{rbw}(T_1), \dots, \text{rbw}(T_k)\} & \text{if the root is square,} \\ \sum_{i=1}^{k} \text{rbw}(T_i) & \text{if the root is round.} \end{cases} $$

The next lemma directly follows from the definition of $\text{rbw}(T)$.

**LEMMA 4.42.** Let $T = (N = N_\circ \sqcup N_\square, \leq)$ be a tree with nodes partitioned into round and square nodes. There exists a mapping $\eta: \text{Leaves}(T) \to \{1, 2, \dots, \text{rbw}(T)\}$ satisfying:

$$ \text{If } n \in N \text{ is a round node with children } n_1 \neq n_2, \text{ for any pair of leaves } l_1 \text{ and } l_2 \text{ below } n_1 \text{ and } n_2, \text{ respectively, } \eta(l_1) \neq \eta(l_2). \quad (\star) $$

**EXAMPLE 4.43.** Let $\mathcal{F} = \{\{a, b\}, \{a, c\}, \{b\}\}$ be the family of subsets considered in Example 4.5. The round-branching width of $\mathcal{Z}_F$ is $\text{rbw}(\mathcal{Z}_F) = 2$. A labelling $\eta: \text{Leaves}(\mathcal{Z}_F) \to \{1, 2\}$ satisfying Property $\star$ is given by $\eta(\theta) = \eta(\xi) = 1$ and $\eta(\zeta) = 2$. This labelling is represented in the Zielonka tree $\mathcal{Z}_F$ on the left of Figure 14. ♦

**DEFINITION 4.44 (Zielonka-tree-HD-Rabin-automaton).** Let $\mathcal{F} \subseteq 2_+^\Sigma$, let $\mathcal{Z}_F = (N = N_\circ \sqcup N_\square, \leq)$ be its Zielonka tree and $\eta: \text{Leaves}(\mathcal{Z}_F) \to \{1, 2, \dots, \text{rbw}(\mathcal{Z}_F)\}$ be a mapping satisfying Property ($\star$). We define the *ZT-HD-Rabin-automaton* $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}} = (Q, \Sigma, I, \Gamma, \Delta, \text{Rabin}_\Gamma(R))$ as a (non-deterministic) automaton using a Rabin acceptance condition, where:

$$ \text{— } Q = \{1, 2, \dots, \text{rbw}(\mathcal{Z}_F)\}, $$

$$ \text{— } I = Q,^8 $$
— Γ = N (the colours of the acceptance condition are the nodes of the Zielonka tree),

— δ(q, a) = { (Jump(l, Supp(l, a)), Supp(l, a)) | l ∈ Leaves(ZF) such that η(l) = q },

— R = { (Gn, Rn)}n∈N₀, where Gn and Rn are defined as follows: Let n be a round node and n' be any node of ZF,

$$
\begin{cases}
n' \in G_n & \text{if } n' = n, \\
n' \in R_n & \text{if } n' \neq n \text{ and } n \text{ is not an ancestor of } n'.
\end{cases}
$$

**REMARK 4.45.** Although we will usually say that $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$ is the ZT-HD-Rabin-automaton of $\mathcal{F}$, the structure of this automaton is not unique, it depends on two choices: the order over the nodes of the Zielonka tree and the mapping $\eta$.

The intuition behind this definition is the following. The automaton $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$ has rbw($\mathcal{Z}_F$) states, and each of them can be associated to a subset of leaves of $\mathcal{Z}_F$ by $\eta^{-1}(q)$. The mapping $\eta$ is such that the lowest common ancestor of two leaves in $\eta^{-1}(q)$ is a square node. As for the ZT-parity-automaton, for each leaf of $l \in \text{Leaves}(\mathcal{Z}_F)$ and letter $a \in \Sigma$, we identify the deepest ancestor $n = \text{Supp}(l, a)$ containing $a$ in its label, and, using the Jump function, pick a leaf $l'$ below the next child of $n$. We add a transition $q \xrightarrow{a:n} q'$ if there are leaves $l \in \eta^{-1}(q)$ and $l' \in \eta^{-1}(q')$ giving such a path (we note that the output colour is given by $n = \text{Supp}(l, a)$, although this node does not appear as a state of the automaton). This way, we can identify a run in the automaton $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$ with a promenade through the nodes of the Zielonka tree in which jumps between leaves with the same $\eta$-image are allowed. If during this promenade a unique minimal node (for $\leq$) is visited infinitely often, it is not difficult to see that the sequence of input colours belongs to $\mathcal{F}$ if and only if the label of this minimal node belongs to $\mathcal{F}$ (it is a round node). The Rabin condition over the set of nodes of the Zielonka tree is devised so that it accepts exactly these sequences of nodes (see Lemma 4.49 below).

Another way of presenting the automaton $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$ is as a quotient of the deterministic parity automaton $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$. Indeed, the graph structure and the labelling by input letters of $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$ is obtained by merging the states of $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$ (which are the leaves of $\mathcal{Z}_F$) with the same $\eta$-image, and keeping all the transitions between them. However, a parity acceptance condition over this smaller structure is no longer sufficient to accept $\text{Muller}(\mathcal{F})$.

**EXAMPLE 4.46.** The ZT-HD-Rabin-automaton $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$ of the family $\mathcal{F} = \{\{a, b\}, \{a, c\}, \{b\}\}$ from Example 4.5 is shown on the right of Figure 14. The Zielonka tree $\mathcal{Z}_F$ appears on the left of the figure, and the labelling $\eta: \text{Leaves}(\mathcal{Z}_F) \to \{1, 2\}$ is represented by the numbers below its branches.
The Rabin condition of this automaton is given by two Rabin pairs (corresponding to the round nodes of the Zielonka tree):

$$G_{\beta} = \{\beta\}, \quad R_{\beta} = \{\alpha, \lambda, \xi, \zeta\},$$

$$G_{\lambda} = \{\lambda\}, \quad R_{\lambda} = \{\alpha, \beta, \theta\}.$$

We note that the automaton $\mathcal{A}_{\mathcal{Z}_{\mathcal{F}}}^{\text{Rabin}}$ is obtained by merging the states $\theta$ and $\xi$ from the ZT-parity-automaton $\mathcal{A}_{\mathcal{Z}_{\mathcal{F}}}^{\text{parity}}$ appearing in Figure 10, and replacing the output colours by suitable nodes from the Zielonka tree. ♦

<figure><img src="image_24.png" /><figcaption>**Figure 14.** On the left, the Zielonka tree of $\mathcal{F} = \{(a, b), \{a, c\}, \{b\}\}$. On the right, the ZT-HD-Rabin-automaton $\mathcal{A}_{\mathcal{Z}_{\mathcal{F}}}^{\text{Rabin}}$. Blue transitions correspond to those coming from leaf $\theta$, and green ones to those originating from leaf $\xi$.</figcaption></figure>

**REMARK 4.47.** We observe that the automaton from Figure 14 presents duplicated edges, in the sense that there are two transitions $q \xrightarrow{a:x} q'$ and $q \xrightarrow{a:y} q'$ between the same pair of states and reading the same input letter. We can always avoid this and remove duplicated edges from any automaton. We provide a proof in Appendix D (Proposition D.1). For the language from the previous example, an equivalent automaton is proposed in Figure 19

### Correctness of the Zielonka-tree-HD-Rabin-automaton.

**PROPOSITION 4.48 (Correctness).** Let $\mathcal{F} \subseteq 2_{+}^{\Sigma}$ be a family of non-empty subsets. Then,

$$\mathcal{L}(\mathcal{A}_{\mathcal{Z}_{\mathcal{F}}}^{\text{Rabin}}) = \text{Muller}_{\Sigma}(\mathcal{F}).$$

Moreover, the automaton $\mathcal{A}_{\mathcal{Z}_{\mathcal{F}}}^{\text{Rabin}}$ is history-deterministic.

**LEMMA 4.49.** Let $u = n_0 n_1 n_2 \cdots \in N^{\omega}$ be an infinite sequence of nodes of the Zielonka tree. The word $u$ belongs to $\text{Rabin}_N(R)$, for $R = \{(G_n, R_n)\}_{n \in N_0}$ the Rabin condition of $\mathcal{A}_{\mathcal{Z}_{\mathcal{F}}}^{\text{Rabin}}$, if and only if there is a unique minimal node for the ancestor relation in $\text{Inf}(u)$ and this minimal node is round (recall that the root is the minimal element for $\le$).
**PROOF.** Assume that there is a unique minimal node in Inf($u$), called $n$, and that $n$ is round. We claim that $u$ is accepted by the Rabin pair ($G_n, R_n$). It is clear that $\text{Inf}(u) \cap G_n \neq \emptyset$, because $n \in G_n$. It suffices to show that $\text{Inf}(u) \cap R_n = \emptyset$: By minimality, any other node $n' \in \text{Inf}(u)$ is a descendant of $n$ (equivalently, $n$ is an ancestor of $n'$), so $n' \notin R_n$.

Conversely, assume that $u \in \text{Rabin}_N(R)$. Then, there is some round node $n \in N_\circ$ such that $\text{Inf}(u) \cap G_n \neq \emptyset$ and $\text{Inf}(u) \cap R_n = \emptyset$. Since $G_n = \{n\}$, we deduce that $n \in \text{Inf}(u)$. Moreover, as $\text{Inf}(u) \cap R_n = \emptyset$, all nodes in $\text{Inf}(u)$ are descendants of $n$. We conclude that $n$ is the unique minimal node in $\text{Inf}(u)$, and it is round. ■

**LEMMA 4.50.** There exists a morphism of automata $\varphi: \mathcal{A}_{\mathbb{Z}_F}^{\text{parity}} \to \mathcal{A}_{\mathbb{Z}_F}^{\text{Rabin}}$.

**PROOF.** We define the morphism $\varphi$ as follows:

— $\varphi_V(l) = \eta(l)$, for $l \in \text{Leaves}(\mathcal{A}_{\mathbb{Z}_F}^{\text{parity}})$,

— for a transition $e = l \xrightarrow{a:c} l'$ in $\mathcal{A}_{\mathbb{Z}_F}^{\text{parity}}$, we let $\varphi_E(e) = (\eta(l), a, \text{Supp}(l, a), l')$.

It is clear that $\varphi$ is a weak morphism. We prove that it preserve the acceptance of runs. Let $\rho = l_0 \xrightarrow{w_0} l_1 \xrightarrow{w_1} l_2 \xrightarrow{w_2} \dots \in \mathcal{R}un(\mathcal{A}_{\mathbb{Z}_F}^{\text{parity}})$ be an infinite run in $\mathcal{A}_{\mathbb{Z}_F}^{\text{parity}}$ (the only run over $w_0w_1w_2\dots \in \Sigma^\omega$), and let $n_i = \text{Supp}(l_i, w_i)$. By definition of the morphism, the output of the run $\rho' = \varphi_{\mathcal{R}uns}(\rho)$ in $\mathcal{A}_{\mathbb{Z}_F}^{\text{Rabin}}$ is $\gamma'(\rho') = n_0n_1n_2\dots \in N^\omega$. In the proof of Proposition 4.10, we proved (Claims 4.12 and 4.13) that there exists a unique node $n_w$ appearing infinitely often in $\gamma'(\rho')$. Moreover, we proved that $\rho$ is accepting in $\mathcal{A}_{\mathbb{Z}_F}^{\text{parity}}$ if and only if $n_w$ is round. Lemma 4.49 allows us to conclude that $\varphi_{\mathcal{R}uns}(\rho)$ is accepting in $\mathcal{A}_{\mathbb{Z}_F}^{\text{Rabin}}$ if and only if $\rho$ is accepting in $\mathcal{A}_{\mathbb{Z}_F}^{\text{parity}}$. ■

**PROOF OF PROPOSITION 4.48.** $\mathcal{L}(\mathcal{A}_{\mathbb{Z}_F}^{\text{Rabin}}) \subseteq \text{Muller}_\Sigma(\mathcal{F})$: Let $w \in \mathcal{L}(\mathcal{A}_{\mathbb{Z}_F}^{\text{Rabin}})$ and let $u \in N^\omega$ be the sequence of nodes produced as output of an accepting run over $w$ in $\mathcal{A}_{\mathbb{Z}_F}^{\text{Rabin}}$. By Lemma 4.49, there is a unique minimal node $n$ for $\le$ appearing infinitely often in $u$ and moreover $n$ is round. Let $n_1, \dots, n_k$ be an enumeration of the children of $n$ (from left to right), with labels $\nu(n_i) \subseteq \Sigma$ (we remark that $\nu(n_i) \notin \mathcal{F}$, for $1 \le i \le k$). We will prove that $\text{Inf}(w) \subseteq \nu(n)$ and $\text{Inf}(w) \not\subseteq \nu(n_i)$ for $1 \le i \le k$. By definition of the Zielonka tree, as $n$ is round, this implies that $\text{Inf}(w) \in \mathcal{F}$.

Since eventually all nodes produced as output are descendants of $n$ (by minimality), $\text{Inf}(w)$ must be contained in $\nu(n)$ (by definition of the transitions of $\mathcal{A}_{\mathbb{Z}_F}^{\text{Rabin}}$).

We suppose, towards a contradiction, that $\text{Inf}(w) \subseteq \nu(n_j)$ for some $1 \le j \le k$. Let $Q_i = \{\eta(l) : l \text{ is a leaf below } n_i\}$ be the set of states corresponding to leaves under $n_i$, for $1 \le i \le k$. We can assume that the leaves corresponding to transitions of an accepting run over $w$ are all below $n$, and therefore, transitions of such a run only visit states in $\cup_{i=1}^k Q_i$. Indeed, eventually this is going to be the case, because if some leaves $l, l'$ corresponding to a transition $(q, a, n', q')$ are not below $n$, then $n'$ would not be a descendant of $n$ (since $n'$ is the least common ancestor of $l$ and $l'$). Also, by Property (⋆), we have $Q_i \cap Q_j = \emptyset$, for all $i \neq j$. By definition of the transitions of $\mathcal{A}_{\mathbb{Z}_F}^{\text{Rabin}}$, if $a \in \Sigma$ is a letter in $\nu(n)$ but not in $\nu(n_i)$, all transitions from some
state in $Q_i$ reading the colour $a$ go to $Q_{i+1}$, for $1 \le i \le k-1$ (and to $Q_1$ if $i=k$). Also, if $a \in v(n_i)$, transitions from states in $Q_i$ reading $a$ stay in $Q_i$. We deduce that a run over $w$ will eventually only visit states in $Q_j$, for some $j$ such that $\text{Inf}(w) \subseteq v(n_j)$. However, the only transitions from $Q_j$ that would produce $n$ as output are those corresponding to a colour $a \notin v(n_j)$, so the node $n$ is not produced infinitely often, a contradiction.

**Muller$\Sigma(\mathcal{F}) \subseteq \mathcal{L}(\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}})$ and history-determinism:** We claim that the existence of a morphism $\varphi: \mathcal{A}_{\mathcal{Z}_F}^{\text{parity}} \to \mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$ (Lemma 4.50) and the correctness of $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$ (Proposition 4.10) imply that $\mathcal{L}(\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}) = \mathcal{L}(\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}) = \text{Muller}(\mathcal{F})$. Indeed, if $\rho$ is an accepting run over $w \in \Sigma^\omega$ in $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$, then $\varphi_{\text{Runs}}(\rho)$ is an accepting run over $w$ in $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$. We can moreover use $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$ and $\varphi$ to define a sound resolver $(r_0, r)$ for $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$: we let $r_0 = \varphi(q_0)$ be the image of the initial state of $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$. If $\rho_R \in \text{Run}^{\text{fin}}(\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}})$ is the image under $\varphi_{\text{Runs}}$ of some finite run $\rho_P \in \text{Run}^{\text{fin}}(\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}})$, we let $r(\rho_R, a) = \varphi(e)$, where $e$ is the only $a$-labelled transition from $\text{Target}(\rho_P)$. We define $r$ arbitrarily in other case. This way, for every $w \in \Sigma^\omega$, the run induced by $r$ over $w$ is the image of a run over $w$ in $\mathcal{A}_{\mathcal{Z}_F}^{\text{parity}}$, which must be accepting if $w \in \text{Muller}(\mathcal{F})$. ■

### 4.3.2 Optimality of the Zielonka-tree-HD-Rabin-automaton

We devote this section to the proof of the optimality of $\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}$.

**THEOREM 4.51 (Optimality of the ZT-HD-Rabin-automaton).** Let $\mathcal{A}$ be a history-deterministic Rabin automaton accepting a Muller language $\text{Muller}_\Sigma(\mathcal{F})$. Then, $|\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}| \le |\mathcal{A}|$.

**PROPOSITION 4.52 ([34]).** Let $L = \text{Muller}_\Sigma(\mathcal{F})$ be a Muller language.

1. If Eve wins a game with $L$ as acceptance set from a position $v$, there is a winning strategy from $v$ for her implemented by a memory structure of size $\text{rbw}(\mathcal{Z}_F)$.

2. There exists a game $G$ using $L$ as acceptance condition in which Eve can win from a position $v$, but there is no winning strategy from $v$ for her implemented by a memory structure of size strictly smaller than $\text{rbw}(\mathcal{Z}_F)$.

**LEMMA 4.53 ([51, 94]).** Rabin languages are positionally determined, that is, if Eve wins a game using a Rabin acceptance condition from a position $v$, there is a winning strategy from $v$ for her implemented by a memory structure of size 1.

**COROLLARY 4.54.** Let $\mathcal{A}$ be a history-deterministic Rabin automaton. Then, if Eve wins a game with $W = \mathcal{L}(\mathcal{A})$ as acceptance set from a position $v$, there is a winning strategy from $v$ for her implemented by a memory structure of size $|\mathcal{A}|$.

**PROOF.** Let $G$ be a game with $W = \mathcal{L}(\mathcal{A})$ as acceptance set. In order to be able to take the product by $\mathcal{A}$ and obtain an equivalent game, we transform $G$ into a game suitable for transformations. Let $\tilde{G}$ be the game obtained from $G$ in the following way: for every edge
$e = v \xrightarrow{a} v'$ in $\mathcal{G}$, we add a position $(v, e)$ controlled by Eve and replace edge $e$ by $v \xrightarrow{\varepsilon} (v, e) \xrightarrow{a} v'$. It is clear that Eve wins $\mathcal{G}$ from a vertex $v$ if and only if she wins $\tilde{\mathcal{G}}$ from that same vertex. By Proposition 2.7, if Eve wins $\mathcal{G}$ from a vertex $v$, she wins $\tilde{\mathcal{G}} \times \mathcal{A}$ from a vertex $(v, q_0)$, where $q_0$ is an initial vertex of $\mathcal{A}$. Moreover, the game $\tilde{\mathcal{G}} \times \mathcal{A}$ uses the acceptance set from $\mathcal{A}$, which is a Rabin language, so, by Lemma 4.53, she can win using a strategy given by a function $\sigma: \tilde{V}_{\text{Eve}} \to \tilde{E}$, where $Q$ is the set of states of $\mathcal{A}$ and $\tilde{V}_{\text{Eve}}$ the vertices controlled by Eve in $\tilde{\mathcal{G}}$ (a subset of $(V_{\text{Eve}} \sqcup (V \times E)) \times Q$). We build a memory structure $(M, \sigma_M)$ of size $|Q|$ that projects the strategy implemented by $\sigma$ onto $\mathcal{G}$:

- its set of states is $M = Q$,

- the initial state is $q_0$,

- the update function $\mu: M \times E \to M$ sends $\mu(q, e) = q'$ if $\sigma((v, e), q) = ((v, e), q) \to (v', q')$ is the move chosen by $\sigma$ from vertex $((v, e), q)$,

- for $v \in V_{\text{Eve}}$, $q \in M$, we let $\sigma_M(v, q) = e$ if $e$ is the move chosen by $\sigma$ from $(v, q)$, that is, if $\sigma(v, q) = (v, q) \to ((v, q), e)$.

Since $\sigma$ implements a winning strategy in $\tilde{\mathcal{G}} \times \mathcal{A}$ from $(v, q_0)$, its projection onto $\mathcal{G}$ via the memory structure $(M, \sigma_M)$ is a strategy that verifies that any play consistent with it produces as output a word in $\mathcal{L}(\mathcal{A})$, so it is winning. ■

Theorem 4.51 is obtained by combining the fact that $|\mathcal{A}_{\mathcal{Z}_F}^{\text{Rabin}}| = \text{rbw}(\mathcal{Z}_F)$ with Proposition 4.52 (second item) and Corollary 4.54.

# 5. The alternating cycle decomposition: An optimal approach to Muller transition systems

In Section 4, we have provided minimal parity and Rabin automata for Muller languages, using the Zielonka tree. We can use these automata to transform Muller transition systems, by applying the product construction. However, this approach overlooks the structure of the transition system, meaning it does not take into account the relevant interplay between the underlying graph and the acceptance condition.

In this section, we present our main contributions: optimal transformations of Muller transition systems into parity and Rabin ones. The key novelty is that they precisely capture the way the transition system interacts with the acceptance condition. This is achieved by generalising Zielonka trees from Muller languages to Muller transition systems; we define the alternating cycle decomposition (ACD), consisting in a collection of Zielonka-tree-like structures subsuming all the structural information of the transition system necessary to determine whether a run is accepting or not. More precisely, the ACD is a succinct representation of the alternating chains of loops of a Muller automaton, in the sense of Wagner [93]. The alternating chains of loops of a DMA are known to determine the parity index of the language it recognises [93], and, as
we will show, they also capture the essential information to define optimal transformations of automata.

We start with the definition of the alternating cycle decomposition in Section 5.1. In Section 5.2, we describe the ACD-parity-transform, turning a DMA $\mathcal{A}$ into an equivalent DPA ACD$_{parity}(\mathcal{A})$. Formally, the validity of this transformation is witnessed by a locally bijective morphism $\varphi: \text{ACD}_{\text{parity}}(\mathcal{A}) \to \mathcal{A}$ (Proposition 5.19). In Section 5.3, we describe the ACD-HD-Rabin-transform that turns a DMA $\mathcal{A}$ into an equivalent history-deterministic Rabin automaton ACD$_{Rabin}(\mathcal{A})$. The validity of the transformation is witnessed by an HD mapping $\varphi: \text{ACD}_{\text{Rabin}}(\mathcal{A}) \to \mathcal{A}$ (Proposition 5.28). These constructions grant strong optimality guarantees. The automaton ACD$_{parity}(\mathcal{A})$ (resp. ACD$_{Rabin}(\mathcal{A})$) has a minimal number of states amongst parity (resp. Rabin) automata admitting an HD mapping to $\mathcal{A}$ (Theorems 5.35 and 5.36). We note that this implies minimality amongst automata admitting a locally bijective morphism to $\mathcal{A}$. Moreover, the acceptance condition of ACD$_{parity}(\mathcal{A})$ uses an optimal number of colours (Theorem 5.34). The optimality of these constructions is shown in Section 5.4. We are able to prove the optimality of both constructions at the same time, by reducing the problem to an application of the minimality of the ZT-parity-automaton and the ZT-HD-Rabin-automaton.

In all this section, we let $\mathcal{TS} = (G_{\mathcal{TS}}, \text{Acc}_{\mathcal{TS}})$ be a Muller transition system with underlying graph $G_{\mathcal{TS}} = (V, E, \text{Source}, \text{Target}, I)$ and using a Muller acceptance condition $\text{Acc}_{\mathcal{TS}} = (\gamma, \Gamma, \text{Muller}_{\Gamma}(\mathcal{F}))$.

## 5.1 The alternating cycle decomposition

**DEFINITION 5.1.** Let $\ell_0 \in \text{Cycles}(\mathcal{TS})$ be a cycle. We define the *tree of alternating subcycles* of $\ell_0$, denoted $\text{AltTree}(\ell_0) = (N, \leq, v: N \to \text{Cycles}(\mathcal{TS}))$ as a $\text{Cycles}(\mathcal{TS})$-labelled tree with nodes partitioned into *round nodes* and *square nodes*, $N = N_\circ \sqcup N_\square$, such that:

- The root is labelled $\ell_0$.

- If a node is labelled $\ell \in \text{Cycles}(\mathcal{TS})$, and $\ell$ is an accepting cycle $(\gamma(\ell) \in \mathcal{F})$, then it is a round node, and its children are labelled exactly with the maximal subcycles $\ell' \subseteq \ell$ such that $\ell'$ is rejecting $(\gamma(\ell') \notin \mathcal{F})$.

- If a node is labelled $\ell \in \text{Cycles}(\mathcal{TS})$, and $\ell$ is a rejecting cycle $(\gamma(\ell) \notin \mathcal{F})$, then it is a square node, and its children are labelled exactly with the maximal subcycles $\ell' \subseteq \ell$ such that $\ell'$ is accepting $(\gamma(\ell') \in \mathcal{F})$.

For a $\text{Cycles}(\mathcal{TS})$-labelled tree $T = (N, \leq, v: N \to \text{Cycles}(\mathcal{TS}))$ and $n \in N$, we let $v_{\text{States}}(n) = \text{States}(v(n))$ be the set of states of the cycle labelling $n$.

**REMARK 5.2.** Let $n$ be a node of $\text{AltTree}(\ell_0)$ and let $n_1$ be a child of it. If $\ell'$ is a cycle such that $v(n_1) \subseteq \ell' \subseteq v(n)$, then $v(n_1)$ is accepting $\iff \ell'$ is rejecting $\iff v(n)$ is rejecting.
**DEFINITION 5.3 (Alternating cycle decomposition).** Let $\mathcal{T}S$ be a transition system, and let $\ell_1, \ell_2, \dots, \ell_k$ be an enumeration of its maximal cycles (that is, the edge set of its SCCs). We define the alternating cycle decomposition of $\mathcal{T}S$ as the forest $\mathcal{ACD}_{\mathcal{T}S} = \{\text{AltTree}(\ell_1), \dots, \text{AltTree}(\ell_k)\}$.

We let $N_{\ell_i}$ be the set of nodes of AltTree($\ell_i$), and $n_{\ell_i}$ its root. We will assume that $N_{\ell_i} \cap N_{\ell_j} = \emptyset$ if $i \neq j$.

We define the set of nodes of $\mathcal{ACD}_{\mathcal{T}S}$ to be Nodes($\mathcal{ACD}_{\mathcal{T}S}$) = $\bigcup_{i=1}^k N_{\ell_i}$, and we let Nodes$_{\circ}$(\mathcal{ACD}_{\mathcal{T}S}) (resp. Nodes$_{\square}$(\mathcal{ACD}_{\mathcal{T}S})) be the subset of round (resp. square) nodes. As for Zielonka trees, from now on we equip the trees of $\mathcal{ACD}_{\mathcal{T}S}$ with an arbitrary order making them ordered trees, without explicitly mentioning it.

We remark that for a recurrent vertex $v$ of $\mathcal{T}S$, there is one and only one tree AltTree($\ell_i$) in $\mathcal{ACD}_{\mathcal{T}S}$ such that $v \in v_{\text{States}}(n_{\ell_i})$. On the other hand, transient vertices do not appear in the trees of $\mathcal{ACD}_{\mathcal{T}S}$.

If $v$ is a recurrent vertex of $\mathcal{T}S$, we define the local subtree at $v$, noted $\mathcal{T}_v$, as the subtree of AltTree($\ell_i$) containing the nodes $N_v = \{n \in N_{\ell_i} | v \in v_{\text{States}}(n)\}$. If $v$ is a transient vertex, we define $\mathcal{T}_v$ to be a tree with a single node.

For $v$ recurrent, as $N_v$ is a subset of the nodes of AltTree($\ell_i$), the tree $\mathcal{T}_v$ inherits the order from AltTree($\ell_i$), as well as its partition into round and square nodes, $N_v = N_{v,\circ} \sqcup N_{v,\square}$. Also, it inherits the labelling given by the mapping $v$, whose restriction to $\mathcal{T}_v$ has an image in $\text{Cycles}_v(\mathcal{T}S)$.

**REMARK 5.4.** Let $v \in v_{\text{States}}(n_{\ell_i})$. If $n \in N_v$ and $n'$ is an ancestor of $n$ in AltTree($\ell_i$), then $n' \in N_v$. In particular, $\mathcal{T}_v$ is indeed a subtree of AltTree($\ell_i$). Also, we note that the root of $\mathcal{T}_v$ is $n_{\ell_i}$.

For a node $n \in N_{\ell_i}$ and an edge $e \in \ell_i$ we define $\text{Supp}(n, e) = n'$ to be the deepest ancestor of $n$ such that $e \in v(n')$. We remark that if $e = v \to v'$, then $\text{Supp}(n, e)$ is a node in both $\mathcal{T}_v$ and $\mathcal{T}_{v'}$.

**EXAMPLE 5.5.** We will use the transition system $\mathcal{T}S$ from Figure 15 as a running example. We have named the edges of $\mathcal{T}S$ with letters from $a$ to $l$, that are also used as the output colours of the acceptance condition. The acceptance set of $\mathcal{T}S$ is the Muller language associated to:

$$ \mathcal{F} = \{\{c, d, e\}, \{e\}, \{g, h, i\}, \{l\}, \{h, i, j, k\}, \{j, k\}\}. $$

The initial vertex of $\mathcal{T}S$, $v_0$, is its only transient vertex, all the others vertices are recurrent. $\mathcal{T}S$ has 2 strongly connected components, corresponding to cycles $\ell_1$ and $\ell_2$.

The alternating cycle decomposition of $\mathcal{T}S$ is shown in Figure 16. It consists of two trees, AltTree($\ell_1$) and AltTree($\ell_2$). We use Greek letters (in pink) to name the nodes of the tree. Inside each node we indicate both its label $v(n)$ and the set of states of it. For example, $v(\kappa) = \{g, h, i\}$ and $v_{\text{States}}(\kappa) = \{v_3, v_4\}$. We have that $\text{Supp}(\tau, g) = \kappa$ and $\text{Supp}(\tau, j) = \lambda$. We highlight in bold orange the local subtree at $v_4$, $\mathcal{T}_{v_4}$. The tree $\mathcal{T}_{v_0}$, consisting in a single node, does not appear in the figure. The numbering on the right of the trees will be used in the next section. ♦

<figure><img src="image_25.png" /></figure>
<figure><img src="image_26.png" /><figcaption>**Figure 15.** Transition system $\mathcal{T}S$ using a Muller acceptance condition given by $\mathcal{F} = \{\{c, d, e\}, \{e\}, \{g, h, i\}, \{l\}, \{h, i, j, k\}, \{j, k\}\}$. The two maximal cycles, $\ell_1$ and $\ell_2$, are encircled by blue and red dashed lines, respectively.</figcaption></figure>

<figure><img src="image_27.png" /><figcaption>**Figure 16.** Alternating cycle decomposition of $\mathcal{T}S$. In bold orange, the local subtree at $v_4$, $\mathcal{T}_{v_4}$.</figcaption></figure>

**REMARK 5.6.** Let $\mathcal{T}S$ be a Muller TS using as acceptance set $\mathcal{W} = \text{Muller}_\Gamma(\mathcal{F})$, and let $\overline{\mathcal{T}S}$ be the TS obtained by replacing $\mathcal{W}$ with $\overline{\mathcal{W}} = \Gamma^\omega \setminus \mathcal{W}$ (which is a Muller language). Then, the ACD of $\overline{\mathcal{T}S}$ coincides with that of $\mathcal{T}S$, with the only difference that the partition into round and square nodes is inverted: $\text{Nodes}_\circ(\mathcal{A}C\overline{\mathcal{D}}_{\overline{\mathcal{T}S}}) = \text{Nodes}_\square(\mathcal{A}C\mathcal{D}_{\mathcal{T}S})$ and $\text{Nodes}_\square(\mathcal{A}C\overline{\mathcal{D}}_{\overline{\mathcal{T}S}}) = \text{Nodes}_\circ(\mathcal{A}C\mathcal{D}_{\mathcal{T}S})$.

We note that if $\mathcal{A}$ is a DMA recognising $L \subseteq \Sigma^\omega$, the automaton $\overline{\mathcal{A}}$ is a DMA recognising $\Sigma^\omega \setminus L$.

**REMARK 5.7.** The Zielonka tree can be seen as a special case of the alternating cycle decomposition. Indeed, a Muller language $\text{Muller}_\Sigma(\mathcal{F})$ can be trivially recognised by a DMA $\mathcal{A}$ with a single state $q$ and self-loops $q \xrightarrow{a:a} q$. The ACD of this automaton is exactly the Zielonka tree of $\mathcal{F}$.

**REMARK 5.8 (Size and computation of the ACD).** Let $\mathcal{T}S$ be a Muller TS and let $\mathcal{Z}_F$ be the Zielonka tree of its acceptance set. It can be shown that for each vertex $v$ of $\mathcal{T}S$ we have that