This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

\knowledge

outputscope=automata,notion \knowledgeoutputscope=game,notion \knowledgesizescope=automata,notion \knowledgesizescope=memory,notion \knowledgeMuller language[—Muller languages]scope=language,notion \knowledgeMuller condition[—Muller conditions— Muller]scope=condition,notion \knowledgeaccepting[—rejecting]scope=cycle,notion \knowledgenotion — graph — directed graph \knowledgenotion — parity index — Rabin index \knowledgenotion — undirected \knowledgenotion — simple \knowledgenotion — coloured graph \knowledgenotion — automaton — automata \knowledgenotion — run over — run \knowledgenotion — graph associated to — G(\A) — G(\A_c) — its graph — G(\A’) \knowledgenotion — cycle — cycles \knowledgenotion — Rabin condition — Rabin — Rabin conditions — R \knowledgenotion — Streett condition — Streett \knowledgenotion — parity condition — parity \knowledgenotion — game — games \knowledgenotion — play \knowledgenotion — ε\varepsilon-free — ε\varepsilon-free games — ε\varepsilon-free game — \ee\ee-free \knowledgenotion — memory structure for the game \G\G — memory structure — memories — non-chromatic memory — memory — memory structures \knowledgenotion — chromatic memory — chromatic memories — chromatic memory structure — chromatic — chromatic memory structures — Chromatic memories \knowledgenotion — arena-independent — arena-independent memory — arena-independent memory for \WW\WW-games — arena-independent memories for \WW\WW-games — arena-independent memory for \F\F-games — arena-independent memories for \F\F-games — Arena-independent memories — arena-independent memories \knowledgenotion — half-positionally determined — half-positional — half-positionality \knowledgenotion — leaf — leaves \knowledgenotion — nodes \knowledgenotion — Zielonka tree — \Z_\F \knowledgenotion — m_\ZFm_\ZFin \knowledgenotion — Inf(w) — Inf \knowledgenotion — language accepted by — Ł(\A) — Ł(\A’) — Ł(\A_1) — Ł(\A_2) \knowledgenotion — States — state in common — pass through — containing \knowledgenotion — condition of type XX on top of \A\A — on top of \knowledgenotion — winning \knowledgenotion — wins — winning strategy \knowledgenotion — strategy \knowledgenotion — sets a winning strategy — setting a winning strategy \knowledgenotion — mem_gen(\F) — mem_gen(\F_n) — memory requirements — non-chromatic memory requirements — general memory requirements \knowledgenotion — rabin(L_G) — \mr(L) — \mr(L_G) — \mr(L_\F) \knowledgenotion — mem_chrom(\F) — chromatic memory requirements \knowledgenotion — mem_ind(\F) \knowledgenotion — mem_gen^\ee\hyphenfree(\F) \knowledgenotion — mem_chrom^\ee\hyphenfree(\F) \knowledgenotion — mem_ind^\ee\hyphenfree(\F) \knowledgenotion — Letters \knowledgenotion — L_\F— L_\F_n \knowledgenotion — L_G \knowledgenotion — colouring \knowledgenotion — chromatic number — χ(G) \knowledgenotion — \A\A-subgraph \knowledgenotion — Max\hyphenPriority \knowledgenotion — complete \knowledgenotion — CC-Strongly Connected Component — CC-SCC — CiC_{i}-SCC \knowledgenotion — SCC\hyphenDecomposition \knowledgenotion — Complete\hyphenSCCComplete \hyphenSCC \knowledgenotion — MaxInclusion \knowledgenotion — ι\knowledgenotion — \GG\GG-labelled-tree — tree \knowledgenotion — equivalent \knowledgenotion — ≫(ℓ) — ≫(ℓ_i) \knowledgenotion — adheres \knowledgenotion — strongly connected \knowledgenotion — strongly connected component — strongly connected components \knowledgenotion — ergodic \knowledgenotion — generalised Büchi — generalised Büchi condition \knowledgenotion — generalised co-Büchi — generalised co-Büchi condition

On the Minimisation of Transition-Based Rabin Automata and the Chromatic Memory Requirements of Muller Conditions

Antonio Casares This work was done while the author was participating in the program Theoretical Foundations of Computer Systems at the Simons Institute for the Theory of Computing.
Abstract

In this paper, we relate the problem of determining the chromatic memory requirements of Muller conditions with the minimisation of transition-based Rabin automata. Our first contribution is a proof of the 𝙽𝙿\mathtt{NP}-completeness of the minimisation of transition-based Rabin automata. Our second contribution concerns the memory requirements of games over graphs using Muller conditions. A memory structure is a finite state machine that implements a strategy and is updated after reading the edges of the game; the special case of chromatic memories being those structures whose update function only consider the colours of the edges. We prove that the minimal amount of chromatic memory required in games using a given Muller condition is exactly the size of a minimal Rabin automaton recognising this condition. Combining these two results, we deduce that finding the chromatic memory requirements of a Muller condition is 𝙽𝙿complete\mathtt{NP}\mathchar 45\relax\text{complete}. This characterisation also allows us to prove that chromatic memories cannot be optimal in general, disproving a conjecture by Kopczyński.

1 Introduction

Games and memory.

Automata on infinite words and infinite duration games over graphs are well established areas of study in Computer Science, being central tools used to solve problems such as the synthesis of reactive systems (see for example the Handbook [CHVB18]). Games over graphs are used to model the interaction between a system and the environment, and winning strategies can be used to synthesize controllers ensuring that the system satisfies some given specification. The games we will consider are played between two players (Eve and Adam), that alternatively move a pebble through the edges of a graph forming an infinite path. In order to define which paths are winning for the first player, Eve, we suppose that each transition in the game produces a colour in a set \GG\GG, and a winning condition is defined by a subset \WW\GGω\WW\subseteq\GG^{\omega}. A fundamental parameter of the different winning conditions is the amount of memory that the players may require in order to define a winning strategy in games where they can force a victory. This parameter will influence the complexity of algorithms solving games that use a given winning condition, as well as the resources needed in a practical implementation of such a strategy as a controller for a reactive system.

A ”memory structure” for Eve for a given game is a finite state machine that implements a strategy: for every position of the game, each state of the memory determines what move to perform next. After a transition of the game takes place, the memory state is updated according to an update function. We consider 33 types of memory structures:

  • General memories.

  • ”Chromatic memories”: if the update function only takes as input the colour produced by the transition of the game.

  • ”Arena-independent memories” for a condition \WW\WW: if the memory structure can be used to implement winning strategies in any game using the condition \WW\WW.

In this work, we study these three notions of memories for \kl(condition)Muller conditions, an important class of winning conditions that can be used to represent any ω\omega-regular language via some deterministic ”automaton”. Muller conditions appear naturally, for example, in the synthesis of reactive systems specified in Linear Temporal Logic [PR89, MS17].

In the seminal paper [DJW97], the authors establish the exact general memory requirements of Muller conditions, giving matching upper and lower bounds for every Muller condition in terms of its ”Zielonka tree”. However, the memory structures giving the upper bounds are not ”chromatic”. In his PhD thesis [Kop06, Kop08], Kopczyński raised the questions of whether minimal ”memory structures” for a given game can be chosen to be ”chromatic”, and whether ”arena-independent memories” can be optimal, that is, if for each condition \WW\WW there is a game won by Eve where the optimal amount of memory she can use is the size of a minimal ”arena-independent memory” for \WW\WW. Another question appearing in [Kop06, Kop08] concerns the influence in the memory requirements of allowing or not \ee\ee-transitions in games (that is, transitions that do not produce any colour). In particular, Kopczyński asks whether all conditions that are ”half-positionally determined” over transition-coloured games without ε\varepsilon-transitions are also half-positionally determined when allowing ε\varepsilon-transitions (it was already shown in [Zie98] that it is not the case in state-coloured games).

In this work, we characterise the minimal amount of ”chromatic memory” required by Eve in games using a \kl(condition)Muller condition as the size of a minimal deterministic transition-based ”Rabin” automaton recognising the Muller condition, that can also be used as an ”arena-independent” memory (Theorem 28); further motivating the study of the minimisation of transition-based Rabin automata. We prove that, in general, this quantity is strictly greater than the ”general memory requirements” of the Muller condition, answering negatively the question by Kopczyński (Proposition 32). Moreover, we show that the ”general memory requirements” of a Muller condition are different over ”\ee\ee-free” games and over games with \ee\ee-transitions (Proposition 25), but that this is no longer the case when considering the ”chromatic memory requirements” (Theorem 28). In particular, in order to obtain the lower bounds of [DJW97] we need to use ε\varepsilon-transitions. However, the question stated in [Kop06, Kop08] of whether allowing \ee\ee-transitions could have an impact on the ”half-positionality” of conditions remains open, since it cannot be the case for \kl(condition)Muller conditions (Lemma 24).

Minimisation of transition-based automata.

Minimisation is a well studied problem for many classes of automata. Automata over finite words can be minimised in polynomial time [Hop71], and for every regular language there is a canonical minimal automaton recognising it. For automata over infinite words, the status of the minimisation problem for different models of ω\omega-automata is less well understood. Traditionally, the acceptance conditions of ω\omega-automata have been defined over the set of states; however, the use of transition-based automata is becoming common in both practical and theoretical applications (see for instance [GL02]), and there is evidence that decision problems relating to transition-based models might be easier than the corresponding problems for state-based ones. The minimisation of state-based Büchi automata has been proven to be 𝙽𝙿complete\mathtt{NP}\mathchar 45\relax\text{complete} by Schewe (therefore implying the 𝙽𝙿\mathtt{NP}-hardness of the minimisation of state-based ”parity”, ”Rabin” and ”Streett” automata), both for deterministic [Sch10] and Good-For-Games (GFG) automata [Sch20]. However, these reductions strongly use the fact that the acceptance condition is defined over the states and not over the transitions. Abu Radi and Kupferman have proven that the minimisation of GFG-transition-based co-Büchi automata can be done in polynomial time and that a canonical minimal GFG-transition-based automaton can be defined for co-Büchi languages [AK19, AK20]. This suggests that transition-based automata might be a more adequate model for ω\omega-automata, raising many questions about the minimisation of different kinds of transition-based automata (Büchi, ”parity”, ”Rabin”, GFG-parity, etc). Moreover, Rabin automata are of great interest, since the determinization of Büchi automata via Safra’s construction naturally provides deterministic transition-based Rabin automata [Saf88, Sch09], and, as proven in Theorem 28, these automata provide minimal ”arena-independent memories” for Muller games.

In Section 2.2, we prove that the minimisation of transition-based ”Rabin” automata is 𝙽𝙿complete\mathtt{NP}\mathchar 45\relax\text{complete} (Theorem 14). The proof consists in a reduction from the ”chromatic number” problem of graphs. This reduction uses a particularly simple family of ω\omega-regular languages: languages LSSωL\subseteq\SS^{\omega} that correspond to \kl(condition)Muller conditions, that is, whether a word wSSωw\in\SS^{\omega} belongs to LL or not only depends in the set of letters appearing infinitely often in ww (we called them \kl(language)Muller languages). A natural question is whether we can extend this reduction to prove the 𝙽𝙿\mathtt{NP}-hardness of the minimisation of other kinds of transition-based automata, like ”parity” or ”generalised Büchi” ones. However, we prove in Section 2.3 that the minimisation of ”parity” and ”generalised Büchi” automata recognising \kl(language)Muller languages can be done in polynomial time. This is based in the fact that the minimal parity automaton recognising a \kl(condition)Muller condition is given by the ”Zielonka tree” of the condition [CCF21, MS21].

These results allow us to conclude that determining the ”chromatic memory requirements” of a \kl(condition)Muller condition is 𝙽𝙿complete\mathtt{NP}\mathchar 45\relax\text{complete} even if the condition is represented by its ”Zielonka tree” (Theorem 31). This is a surprising result, since the ”Zielonka tree” of a \kl(condition)Muller condition allows to compute in linear time the ”non-chromatic memory requirements” of it [DJW97].

Related work.

As already mentioned, the works [DJW97, Kop06, Zie98] extensively study the ”memory requirements” of \kl(condition)Muller conditions. In the paper [CN06], the authors characterise ”parity” conditions as the only prefix-independent conditions that admit positional strategies over transition-coloured infinite graphs. This characterisation does not apply to state-coloured games, which supports the idea that transition-based systems might present more canonical properties. Conditions that admit ”arena-independent” memories are characterised in [BRO+20], extending the work of [GZ05] characterising conditions that accept positional strategies over finite games. The ”memory requirements” of generalised safety conditions have been established in [CFH14]. The use of Rabin automata as memories for games with ω\omega-regular conditions have been fruitfully used in [CZ09] in order to obtain theoretical lower bounds on the size of deterministic Rabin automata obtained by the process of determinisation of Büchi automata.

Concerning the minimisation of automata over infinite words, beside the aforementioned results of [Sch10, Sch20, AK19], it is also known that weak automata can be minimised in 𝒪(nlogn)\mathcal{O}(n\log n) [Löd01]. The algorithm minimising a ”parity” ”automaton” recognising a \kl(language)Muller language presented in the proof of Proposition 17 can be seen as a generalisation of the algorithm appearing in [CM99] computing the Rabin index of a parity automaton. Both of them have their roots in the work of Wagner [Wag79].

Organisation of this paper.

In Section 2 we discuss the minimisation of transition-based Rabin and parity automata. We give the necessary definitions in Section 2.1, in Section 2.2 we show the 𝙽𝙿\mathtt{NP}-completeness of the minimisation of Rabin automata and in Section 2.3 we prove that we can minimise transition-based parity and generalised Büchi automata recognising Muller languages in polynomial time.

In Section 3 we introduce the definitions of games and memory structures, and we discuss the impact on the memory requirements of allowing or not \ee\ee-transitions in the games.

In Section 4, the main contributions concerning the chromatic memory requirements of Muller conditions are presented.

2 Minimising transition-based automata

In this section, we present our main contributions concerning the minimisation of transition-based automata. We start in Section 2.1 by giving some basic definitions and results related to automata used throughout the paper. In Section 2.2 we show a reduction from the problem of determining the ”chromatic number” of a graph to the minimisation of ”Rabin” automata, proving the 𝙽𝙿\mathtt{NP}-completeness of the latter. Moreover, the languages used in this proof are \kl(language)Muller languages. In Section 2.3 we prove that, on the contrary, we can minimise ”parity” and ”generalised Büchi” automata recognising Muller languages in polynomial time.

2.1 Automata over infinite words

General notations

The greek letter ω\omega stands for the set {0,1,2,}\{0,1,2,\dots\}. Given a set AA, we write 𝒫(A)\mathcal{P}(A) to denote its power set and |A||A| to denote its cardinality. A word over an alphabet SS\SS is a sequence of letters from SS\SS. We let SS\SS^{*} and SSω\SS^{\omega} be the set of finite and infinite words over SS\SS, respectively. For an infinite word wSSωw\in\SS^{\omega}, we write \AP𝐼𝑛𝑓(w)\AP""\mathit{Inf}(w)"" to denote the set of letters that appear infinitely often in ww. We will extend functions γ:A\GG\gamma:A\rightarrow\GG to AA^{*}, AωA^{\omega} and 𝒫(A)\mathcal{P}(A) in the natural way, without explicitly stating it.

A (directed) \AP””graph”” G=(V,E)G=(V,E) is given by a set of vertices VV and a set of edges EV×VE\subseteq V\times V. A graph G=(V,E)G=(V,E) is \AP””undirected”” if every pair of vertices (v,u)(v,u) verifies (v,u)E(u,v)E(v,u)\in E\;\Leftrightarrow\;(u,v)\in E. A graph G=(V,E)G=(V,E) is \AP””simple”” if (v,v)E(v,v)\notin E for any vVv\in V. A subgraph 𝒮\mathcal{S} of GG is \AP””strongly connected”” if for every pair of vertices v1,v2v_{1},v_{2} in 𝒮\mathcal{S}, there is a path in 𝒮\mathcal{S} from v1v_{1} to v2v_{2}. A \AP””strongly connected component”” of GG is a maximal strongly connected subgraph of GG. We say that a ”strongly connected component” 𝒮\mathcal{S} is \AP””ergodic”” if no vertex of 𝒮\mathcal{S} has outgoing edges leading to vertices not in 𝒮\mathcal{S}.

A \AP””coloured graph”” G=(V,E)G=(V,E) is given by a set of vertices VV and a set of edges EV×C1××Ck×VE\subseteq V\times C_{1}\times\dots\times C_{k}\times V, where C1,,CkC_{1},\dots,C_{k} are sets of colours.

Automata

An \AP””automaton”” is a tuple \A=(Q,Σ,q0,δ,\GG,𝐴𝑐𝑐)\A=(Q,\Sigma,q_{0},\delta,\GG,\mathit{Acc}), where QQ is a finite set of states, SS\SS is a finite input alphabet, q0Qq_{0}\in Q is an initial state, δ:Q×SSQ×\GG\delta:Q\times\SS\rightarrow Q\times\GG is a transition function, \GG\GG is an output alphabet and 𝐴𝑐𝑐\mathit{Acc} is an accepting condition defining a subset \WW\GGω\WW\subseteq\GG^{\omega} (the conditions will be defined more precisely in the next paragraph). In this paper, all automata will be deterministic and complete (that is, δ\delta is a function) and transition-based (that is, the output letter that is produced depends on the transition, and not only on the arrival state). The \intro(automata)size of an automaton is its number of states, |Q||Q|.

Given an input word w=w0w1w2SSωw=w_{0}w_{1}w_{2}\dots\in\SS^{\omega}, the \AP””run over”” ww in \A\A is the only sequence of pairs (q0,c0),(q1,c1),Q×\GG(q_{0},c_{0}),(q_{1},c_{1}),\dots\in Q\times\GG verifying that q0q_{0} is the initial state and δ(qi,wi)=(qi+1,ci)\delta(q_{i},w_{i})=(q_{i+1},c_{i}). The \AP\intro(automata)output produced by ww is the word c0c1c2\GGωc_{0}c_{1}c_{2}\dots\in\GG^{\omega}. A word wSSωw\in\SS^{\omega} is accepted by the automaton \A\A if its output belongs to the set \WW\GGω\WW\subseteq\GG^{\omega} defined by the accepting condition. The \AP””language accepted by”” an automaton \A\A, written (\A)\mathcal{L}(\A), is the set of words accepted by \A\A. Given two automata \A\A and \mathcal{B} over the same input alphabet SS\SS, we say that they are \AP””equivalent”” if (\A)=()\mathcal{L}(\A)=\mathcal{L}(\mathcal{B}).

Given an automaton \A\A, the \AP””graph associated to”” \A\A, denoted G(\A)G(\A), is the ”coloured graph” G(\A)=(Q,E\A)G(\A)=(Q,E_{\A}), whose set of vertices is QQ, and the set of edges E\AQ×SS×\GG×QE_{\A}\subset Q\times\SS\times\GG\times Q is given by (q,a,c,q)E\A(q,a,c,q^{\prime})\in E_{\A} if δ(q,a)=(q,c)\delta(q,a)=(q^{\prime},c). We denote by \APι:E\ASS\AP""\iota""\colon E_{\A}\to\SS the projection over the second component and by γ:E\A\GG\gamma\colon E_{\A}\to\GG the projection over the third one.

A \AP””cycle”” of an automaton \A\A is a subset of edges E\A\ell\subseteq E_{\A} such that there is a state qQq\in Q and a path in G(\A)"G(\A)" starting and ending in qq passing through exactly the edges in \ell. We write \APγ()=eγ(e)\AP""\gamma(\ell)""=\bigcup_{e\in\ell}\gamma(e) to denote the set of colours appearing in the cycle \ell. A state qQq\in Q is contained in a cycle E\A\ell\subseteq E_{\A} if there is some edge in \ell whose first component is qq. We write \AP𝑆𝑡𝑎𝑡𝑒𝑠()\AP""\mathit{States}""(\ell) to denote the set of states contained in \ell.

Acceptance conditions

Let \GG\GG be a set of colours. We define next some of the acceptance conditions used to define subsets \WW\GGω\WW\subseteq\GG^{\omega}. All the subsequent conditions verify that the acceptance of a word u\GGωu\in\GG^{\omega} only depends on the set 𝐼𝑛𝑓(u)"\mathit{Inf}"(u).

Muller.

A \AP\intro(condition)Muller condition is given by a family of subsets \F={S1,,Sk}\F=\{S_{1},\dots,S_{k}\}, SiΓS_{i}\subseteq\Gamma. A word uΓωu\in\Gamma^{\omega} is accepting if 𝐼𝑛𝑓(u)\F"\mathit{Inf}"(u)\in\F.

Rabin.

A \AP””Rabin condition”” is represented by a family of Rabin pairs, R={(E1,F1),,(Er,Fr)}R=\allowbreak\{(E_{1},F_{1}),\dots,\allowbreak(E_{r},F_{r})\}, where Ei,FiΓE_{i},F_{i}\subseteq\Gamma. A word uΓωu\in\Gamma^{\omega} is accepting if 𝐼𝑛𝑓(u)Ei"\mathit{Inf}"(u)\cap E_{i}\neq\emptyset and 𝐼𝑛𝑓(u)Fi="\mathit{Inf}"(u)\cap F_{i}=\emptyset for some index i{1,,r}i\in\{1,\dots,r\}.

Streett.

A \AP””Streett condition”” is represented by a family of pairs S={(E1,F1),,(Er,Fr)}S=\{(E_{1},F_{1}),\dots,\allowbreak(E_{r},F_{r})\}, Ei,FiΓE_{i},F_{i}\subseteq\Gamma. A word uΓωu\in\Gamma^{\omega} is accepting if 𝐼𝑛𝑓(u)Ei𝐼𝑛𝑓(u)Fi"\mathit{Inf}"(u)\cap E_{i}\neq\emptyset\;\rightarrow\;"\mathit{Inf}"(u)\cap F_{i}\neq\emptyset for every i{1,,r}i\in\{1,\dots,r\}.

Parity.

To define a \AP””parity condition”” we suppose that Γ\Gamma is a finite subset of \mathbb{N}. A word uΓωu\in\Gamma^{\omega} is accepting if max𝐼𝑛𝑓(u) is even\max"\mathit{Inf}"(u)\text{ is even}. The elements of Γ\Gamma are called priorities in this case.

Generalised Büchi.

A \AP””generalised Büchi condition”” is represented by a family of subsets {B1,,Br}\{B_{1},\dots,B_{r}\}, BiΓB_{i}\subseteq\Gamma. A word uΓωu\in\Gamma^{\omega} is accepted if 𝐼𝑛𝑓(u)Bi"\mathit{Inf}"(u)\cap B_{i}\neq\emptyset for all i{1,,r}i\in\{1,\dots,r\}.

Generalised co-Büchi.

A \AP””generalised co-Büchi condition”” is represented by a family of subsets {B1,,Br}\{B_{1},\dots,B_{r}\}, BiΓB_{i}\subseteq\Gamma. A word uΓωu\in\Gamma^{\omega} is accepted if 𝐼𝑛𝑓(u)Bi="\mathit{Inf}"(u)\cap B_{i}=\emptyset for some i{1,,r}i\in\{1,\dots,r\}.

An ”automaton” \A\A using a condition of type XX will be called an XX-automaton.

We remark that all the previous conditions define a family of subsets \F𝒫(Γ)\F\subseteq\mathcal{P}(\Gamma) and can therefore be represented as Muller conditions (in particular, all automata referred to in this paper can be regarded as Muller automata). Also, parity conditions can be represented as Rabin or Streett ones. We say that a language L\GGωL\subseteq\GG^{\omega} is a \AP\intro(language)Muller language if u1Lu_{1}\in L and u2Lu_{2}\notin L implies that 𝐼𝑛𝑓(u1)𝐼𝑛𝑓(u2)"\mathit{Inf}"(u_{1})\neq"\mathit{Inf}"(u_{2}). We associate to each Muller condition \F\F the language \APL\F={w\GGω:𝐼𝑛𝑓(w)\F}\AP""L_{\F}""=\{w\in\GG^{\omega}\>:\>"\mathit{Inf}"(w)\in\F\}.

The \AP””parity index”” (also called Rabin index) of an ω\omega-regular language LSSωL\subseteq\SS^{\omega} is the minimal pp\in\mathbb{N} such that there exists a deterministic parity automaton recognising LL using pp priorities in its parity condition.

Given an ω\omega-regular language LSSωL\subseteq\SS^{\omega}, we write \AP\mr(L)\AP""\mr(L)"" to denote the \kl(automata)size of a minimal Rabin automaton recognising LL.

Remark 1.

Let \A\A be a ”Rabin”-automaton recognising a language LSSωL\subseteq\SS^{\omega} using Rabin pairs R={(E1,F1),,(Er,Fr)}R=\allowbreak\{(E_{1},F_{1}),\dots,\allowbreak(E_{r},F_{r})\}. If we consider the ”Streett” automaton obtained by setting the pairs of RR as defining a Streett condition over the structure of \A\A, we obtain a Streett automaton \A\A^{\prime} recognising the language SSωL\SS^{\omega}\setminus L (and vice versa). Therefore, the size of a minimal Rabin automaton recognising LL coincides with that of a minimal Streett automaton recognising SSωL\SS^{\omega}\setminus L, and the minimisation problem for both classes of automata is equivalent. Similarly for ”generalised Büchi” and ”generalised co-Büchi” automata.

Let \A\A be an ”automaton” using some of the acceptance conditions above defining a family \F𝒫(Γ)\F\subseteq\mathcal{P}(\Gamma). We remark that since the acceptance of a ”run” only depends on the set of colours produced infinitely often, we can associate to each ”cycle” \ell of \A\A an accepting or rejecting status. We say that a ”cycle” \ell of \A\A is \intro(cycle)accepting if γ()\F"\gamma(\ell)"\in\F and that it is rejecting otherwise.

We are going to be interested in simplifying the acceptance conditions of automata, while preserving their structure. We say that we can define a condition of type XX on top of a Muller automaton \A\A if we can recolour the transitions of \A\A with colours in a set \GG\GG^{\prime} and define a condition of type XX over \GG\GG^{\prime} such that the resulting automaton is equivalent to \A\A. Definition 2 formalises this notion.

Definition 2.

Let XX be some of the conditions defined previously and let \A=(Q,Σ,q0,δ,\GG,\F)\A=(Q,\Sigma,q_{0},\delta,\GG,\F) be a Muller automaton. We say that we can define a \AP””condition of type XX on top of \A\A”” if there is an XX-condition over a set of colours \GG\GG^{\prime} and an automaton \A=(Q,Σ,q0,δ,\GG,X)\A^{\prime}=(Q,\Sigma,q_{0},\delta^{\prime},\GG^{\prime},X) verifying:

  • \A\A and \A\A^{\prime} have the same set of states and the same initial state.

  • δ(q,a)=(p,c)δ(q,a)=(p,c)\delta(q,a)=(p,c)\;\Rightarrow\delta^{\prime}(q,a)=(p,c^{\prime}), for some c\GGc^{\prime}\in\GG^{\prime}, for every qQq\in Q and aSSa\in\SS (that is, \A\A and \A\A^{\prime} have the same transitions, except for the colours produced).

  • (\A)=(\A)"\mathcal{L}(\A)"="\mathcal{L}(\A^{\prime})".

The next proposition, proven in [CCF21], characterises automata that admit ”Rabin” conditions ”on top of” them. It will be a key property used throughout the paper.

Proposition 3 ([CCF21]).

Let \A=(Q,Σ,q0,δ,\GG,\F)\A=(Q,\Sigma,q_{0},\delta,\GG,\F) be a Muller automaton. The following properties are equivalent:

  1. 1.

    We can define a ”Rabin” condition ”on top of” \A\A.

  2. 2.

    Any pair of ”cycles” 1\ell_{1} and 2\ell_{2} in \A\A verifying 𝑆𝑡𝑎𝑡𝑒𝑠(1)𝑆𝑡𝑎𝑡𝑒𝑠(2)"\mathit{States}"(\ell_{1})\cap"\mathit{States}"(\ell_{2})\neq\emptyset satisfies that if both 1\ell_{1} and 2\ell_{2} are \kl(cycle)rejecting, then 12\ell_{1}\cup\ell_{2} is also a rejecting cycle.

The Zielonka tree of a Muller condition

In order to study the memory requirements of Muller conditions, Zielonka introduced in [Zie98] the notion of split trees (later called Zielonka trees) of Muller conditions. The Zielonka tree of a Muller condition naturally provides a minimal parity automaton recognising this condition [CCF21, MS21]. We will use this property to show that parity automata recognising Muller languages can be minimised in polynomial time in Proposition 17. We will come back to Zielonka trees in Section 4 to discuss the characterisation of the memory requirements of Muller conditions.

Definition 4.

Let \GG\GG be a set of labels. We give the definition of a \AP””\GG\GG-labelled-tree”” by induction:

  • T=A,T=\langle A,\langle\emptyset\rangle\rangle is a \GG\GG-labelled-tree for any A\GGA\subseteq\GG. In this case, we say that TT is a \AP””leaf”” and AA is its label.

  • If T1,,TnT_{1},\dots,T_{n} are \GG\GG-labelled-trees, then T=A,T1,,TnT=\langle A,\langle T_{1},\dots,T_{n}\rangle\rangle is a \GG\GG-labelled-tree for any A\GGA\subseteq\GG. In that case, we say that AA is the label of TT and T1,,TnT_{1},\dots,T_{n} are their children.

The set of \AP””nodes”” of a tree TT is defined recursively as:

𝑁𝑜𝑑𝑒𝑠(T)={T}T child of T𝑁𝑜𝑑𝑒𝑠(T).\mathit{Nodes}(T)=\{T\}\cup\bigcup\limits_{T^{\prime}\text{ child of }T}\mathit{Nodes}(T^{\prime}).
Definition 5 ([Zie98]).

Let \F𝒫(\GG)\F\subseteq\mathcal{P}(\GG) be a \kl(condition)Muller condition. The \AP””Zielonka tree”” of \F\F, denoted \ZF\ZF, is the \GG\GG-labelled-tree defined recursively as follows: let A1,AkA_{1},\dots A_{k} be the maximal subsets of \GG\GG such that Ai\F\GG\FA_{i}\in\F\;\Leftrightarrow\;\GG\notin\F.

  • If no such subset Ai\GGA_{i}\subseteq\GG exists, then \ZF=\GG,\ZF=\langle\GG,\langle\emptyset\rangle\rangle.

  • Otherwise, \ZF=\GG,\ZFi1,,\ZFik\ZF=\langle\GG,\langle\ZFi{1},\dots,\ZFi{k}\rangle\rangle, where \ZFii\ZFi{i} is the Zielonka tree for the condition \Fi=\F𝒫(Ai)\F_{i}=\F\cap\mathcal{P}(A_{i}) over the colours AiA_{i}.

An example of a Zielonka tree can be found in Figure 2 (page 28).

Proposition 6 ([CCF21], [MS21]).

Let \F\F be a \kl(condition)Muller condition and \ZF\ZF its Zielonka tree. We can build in linear time in the representation of \ZF\ZF a ”parity” ”automaton” recognising L\F"L_{\F}" that has as set of states the leaves of \ZF\ZF. This automaton is minimal, that is, any other parity automaton recognising L\F"L_{\F}" has at least as many states as the number of leaves of \ZF\ZF.

2.2 Minimising transition-based Rabin and Streett automata is NP-complete

This section is devoted to proving the 𝙽𝙿\mathtt{NP}-completeness of the minimisation of transition-based ”Rabin” automata, stated in Theorem 14.

For the containment in 𝙽𝙿\mathtt{NP}, we use the fact that we can test language equivalence of Rabin automata in polynomial time.

Proposition 7 ([CDK93]).

Let \A1\A_{1} and \A2\A_{2} be two ”Rabin” ”automata” over SS\SS. We can decide in polynomial time on the representation of the automata if (\A1)=(\A2)"\mathcal{L}(\A_{1})"="\mathcal{L}(\A_{2})". (We recall that all considered automata are deterministic).

Corollary 8.

Given a ”Rabin” ”automaton” \A\A and a positive integer kk, we can decide in non-deterministic polynomial time whether there is an ”equivalent” Rabin automaton of size kk.

Proof.

A non-deterministic Turing machine just has to guess an equivalent automaton \Ak\A_{k} of size kk, and by Proposition 7 it can check in polynomial time whether (\A)=(\Ak)\mathcal{L}(\A)=\mathcal{L}(\A_{k}). ∎

In order to prove the 𝙽𝙿\mathtt{NP}-hardness, we will describe a reduction from the 𝙲𝚑𝚛𝚘𝚖𝚊𝚝𝚒𝚌𝙽𝚞𝚖𝚋𝚎𝚛\mathtt{Chromatic}\mathchar 45\relax\mathtt{Number} problem (one of 21 Karp’s 𝙽𝙿\mathtt{NP}-complete problems) to the minimisation of transition-based Rabin automata. Moreover, this reduction will only use languages that are \kl(language)Muller languages of Rabin index 3.

Definition 9.

Let G=(V,E)G=(V,E) be a ”simple” ”undirected” ”graph”. A \AP””colouring”” of size kk of GG is a function c:V[1,k]c:V\rightarrow[1,k] such that for any pair of vertices v,vVv,v^{\prime}\in V, if (v,v)E(v,v^{\prime})\in E then c(v)c(v)c(v)\neq c(v^{\prime}).

The \AP””chromatic number”” of a simple undirected GG, written χ(G)\chi(G), is the smallest number kk such that there exists a colouring of size kk of GG.

Lemma 10 ([Kar72]).

Deciding whether a ”simple” ”undirected” ”graph” has a ”colouring” of size kk is 𝙽𝙿complete\mathtt{NP}\mathchar 45\relax\text{complete}.

Let G=(V,E)G=(V,E) be a simple undirected ”graph”, nn be its number of vertices and mm its number of edges. We consider the language \APLG\AP""L_{G}"" over the alphabet VV given by:

LG=(v,u)EV(v+u+)ω.L_{G}=\bigcup\limits_{(v,u)\in E}V^{*}(v^{+}u^{+})^{\omega}.

That is, a sequence wVωw\in V^{\omega} is in LGL_{G} if eventually it alternates between exactly two vertices connected by an edge in GG.

Remark 11.

For any ”simple” ”undirected” ”graph” GG, LG"L_{G}" is a \kl(language)Muller language over VV, that is, whether a word wVωw\in V^{\omega} belongs to LG"L_{G}" or not only depends on 𝐼𝑛𝑓(w)"\mathit{Inf}"(w). Moreover, the parity index of this condition is at most [13][1\mathchar 45\relax 3].

However, we cannot extend this reduction to show 𝙽𝙿\mathtt{NP}-hardness of the minimisation of transition-based ”parity” automata, as we will show in Section 2.3 that we can minimise ”parity” automata recognising \kl(language)Muller languages in polynomial time.

Lemma 12.

We can build a ”Rabin” automaton \AG\A_{G} of \kl(automata)size nn over the alphabet VV recognising LG"L_{G}" in 𝒪(mn2)\mathcal{O}(mn^{2}).

Proof.

We define the automaton \AG=(Q,V,q0,δ,V×V,R)\A_{G}=(Q,V,q_{0},\delta,V\times V,R) as follows:

  • Q=VQ=V.

  • q0q_{0} an arbitrary vertex in QQ.

  • δ(v,x)=(x,(v,x))\delta(v,x)=(x,(v,x)), for v,xVv,x\in V.

  • R={(E(v,u),F(v,u)):(v,u)E}R=\{(E_{(v,u)},F_{(v,u)})\>:\>{(v,u)\in E}\}, where we define for each (v,u)E(v,u)\in E the sets E(v,u),F(v,u)E_{(v,u)},F_{(v,u)} as:

    • E(v,u)={(v,u)}E_{(v,u)}=\{(v,u)\}

    • F(v,u)=V×V{(v,u),(u,v),(v,v),(u,u)}F_{(v,u)}=V\times V\setminus\{(v,u),(u,v),(v,v),(u,u)\}.

That is, the states of the automaton are the vertices of the graph GG, and when we read a letter uVu\in V we jump to the state uu. The colours defining the ”Rabin condition” are all pairs of vertices, and we define one Rabin pair for each edge of the graph. This Rabin pair will enable to accept words that eventually alternate between the endpoints of the edge.

We prove that LG=(\AG)"L_{G}"=\mathcal{L}(\A_{G}). If wLGw\in"L_{G}", the word ww is eventually of the form (v+u+)ω(v^{+}u^{+})^{\omega} for some v,uVv,u\in V such that (v,u)E(v,u)\in E, so eventually we will only visit the states vv and uu of the automaton. If we are in vv and read the letter vv, we produce the colour (v,v)(v,v) that is not contained in the set F(v,u)F_{(v,u)}. If we read the letter uu, we will produce (v,u)(v,u), contained in E(v,u)E_{(v,u)} and not appearing in F(v,u)F_{(v,u)} nor in F(u,v)F_{(u,v)}. The behaviour is symmetric from the state uu. Let us denote αEω\alpha\in E^{\omega} the word \kl(automata)output by the automaton reading ww. We obtain that 𝐼𝑛𝑓(α)E(v,u)"\mathit{Inf}"(\alpha)\cap E_{(v,u)}\neq\emptyset and 𝐼𝑛𝑓(α)F(v,u)="\mathit{Inf}"(\alpha)\cap F_{(v,u)}=\emptyset, so the word ww is accepted by the automaton.

Conversely, if a word ww is accepted by \AG\A_{G}, then the \kl(automata)output α(V×V)ω\alpha\in(V\times V)^{\omega} must verify 𝐼𝑛𝑓(α)F(v,u)="\mathit{Inf}"(\alpha)\cap F_{(v,u)}=\emptyset for some (v,u)E(v,u)\in E, so eventually α\alpha only contains the pairs (v,u),(u,v),(v,v)(v,u),(u,v),(v,v) and (u,u)(u,u). If ww was eventually of the form vωv^{\omega} or uωu^{\omega}, we would have that 𝐼𝑛𝑓(α)E(v,u)="\mathit{Inf}"(\alpha)\cap E_{(v,u)}=\emptyset for all (v,u)E(v,u)\in E. We conclude that the word ww eventually alternates between two vertices connected by an edge, so wLGw\in"L_{G}".

The automaton has nn states, the transition function δ\delta has size 𝒪(n2)\mathcal{O}(n^{2}) and the Rabin condition RR has size 𝒪(mn2)\mathcal{O}(mn^{2}).∎

Lemma 13.

Let G=(V,E)G=(V,E) be a ”simple” ”undirected” ”graph”. Then, the \kl(automata)size of a minimal ”Rabin” automaton recognising LG"L_{G}" coincides with the ”chromatic number” of GG.

Proof.

We denote \mr(LG)"\mr(L_{G})" the size of a minimal Rabin automaton recognising LG"L_{G}" and χ(G)"\chi(G)" the ”chromatic number” of GG.

𝔯𝔞𝔟𝔦𝔫(LG)χ(G)"\mathfrak{rabin}(L_{G})"\leq"\chi(G)":

Let c:V[1,k]c:V\rightarrow[1,k] be a colouring of size kk of GG. We will define a Muller automaton of size kk recognising LG"L_{G}" and then use Proposition 3 to show that we can put a ”Rabin condition” ”on top of” it. Let \Ac=(Q,V,q0,δ,V,\F)\A_{c}=(Q,V,q_{0},\delta,V,\F) be the Muller automaton defined by:

  • Q={1,2,,k}Q=\{1,2,\dots,k\}.

  • q0=1q_{0}=1.

  • δ(q,x)=(c(x),x)\delta(q,x)=(c(x),x) for qQq\in Q and xVx\in V.

  • A set CVC\subseteq V belongs to \F\F if and only if C={v,u}C=\{v,u\} for two vertices v,uVv,u\in V such that (v,u)E(v,u)\in E.

The language recognised by \Ac\A_{c} is clearly LG"L_{G}", since the \kl(automata)output produced by a word wVωw\in V^{\omega} is ww itself, and the acceptance condition \F\F is exactly the \kl(condition)Muller condition defining the language LG"L_{G}".

Let G(\Ac)=(Q,E\Ac)"G(\A_{c})"=(Q,E_{\A_{c}}) be the ”graph associated to” \Ac\A_{c}. We will prove that the union of any pair of \kl(cycle)rejecting ”cycles” of \Ac\A_{c} that have some ”state in common” must be \kl(cycle)rejecting. By Proposition 3 this implies that we can define a ”Rabin condition” ”on top of” \Ac\A_{c}.

Let 1,2E\Ac\ell_{1},\ell_{2}\subseteq E_{\A_{c}} be two ”cycles” such that γ(i)\F"\gamma(\ell_{i})"\notin\F for i{1,2}i\in\{1,2\} and such that 𝑆𝑡𝑎𝑡𝑒𝑠(1)𝑆𝑡𝑎𝑡𝑒𝑠(2)"\mathit{States}"(\ell_{1})\cap"\mathit{States}"(\ell_{2})\neq\emptyset. We distinguish 33 cases:

  • |γ(i)|3|\gamma(\ell_{i})|\geq 3 for some i{1,2}i\in\{1,2\}. In this case, their union also has more than 33 colours, so it must be rejecting.

  • γ(i)={u,v}\gamma(\ell_{i})=\{u,v\}, (u,v)E(u,v)\notin E for some i{1,2}i\in\{1,2\}. In that case, γ(12)\gamma(\ell_{1}\cup\ell_{2}) also contains two vertices that are not connected by an edge, so it must be rejecting.

  • γ(1)={v1}\gamma(\ell_{1})=\{v_{1}\} and γ(2)={v2}\gamma(\ell_{2})=\{v_{2}\}. In this case, since from every state qq of \Ac\A_{c} and every vVv\in V δ(q,v)=(c(v),v)\delta(q,v)=(c(v),v), the only state in each ”cycle” is, respectively, c(v1)c(v_{1}) and c(v2)c(v_{2}). As 1\ell_{1} and 2\ell_{2} share some state, we deduce that c(v1)=c(v2)c(v_{1})=c(v_{2}). If v1=v2v_{1}=v_{2}, 12\ell_{1}\cup\ell_{2} is \kl(cycle)rejecting because |γ(12)|=1|\gamma(\ell_{1}\cup\ell_{2})|=1. If v1v2v_{1}\neq v_{2}, it is also \kl(cycle)rejecting because c(v1)=c(v2)c(v_{1})=c(v_{2}) and therefore (v1,v2)E(v_{1},v_{2})\notin E.

Since γ(i)\gamma(\ell_{i}) is \kl(cycle)rejecting, it does not consist on two vertices connected by some edge and we are always in some of the cases above. We conclude that we can put a ”Rabin” condition ”on top of” \Ac\A_{c}, obtaining a Rabin automaton recognising LG"L_{G}" of \kl(automata)size kk.

χ(G)𝔯𝔞𝔟𝔦𝔫(LG)"\chi(G)"\leq"\mathfrak{rabin}(L_{G})":

Let \A=(Q,V,q0,δ,\GG,R)\A=(Q,V,q_{0},\delta,\GG,R) be a ”Rabin” automaton of \kl(automata)size kk recognising LG"L_{G}" and G(\A)=(Q,E\A)"G(\A)"=(Q,E_{\A}) ”its graph”. We will define a ”colouring” of size kk of GG, c:VQc:V\rightarrow Q.

For each vVv\in V we define a subset QvQQ_{v}\subseteq Q as:

Qv={qQ:there is a ”cycle”  ”containing” q and γ()={v}}.Q_{v}=\{q\in Q\;:\;\text{there is a "cycle" }\ell\text{ "containing" }q\text{ and }\gamma(\ell)=\{v\}\}.

For every vVv\in V, the set QvQ_{v} is non-empty, as it must exist a (non-accepting) ”run over” vωv^{\omega} in \A\A. For each vVv\in V we pick some qvQvq_{v}\in Q_{v}, and we define the ”colouring” c:VQc:V\rightarrow Q given by c(v)=qvc(v)=q_{v}.

In order to prove that it is indeed a ”colouring”, we we will show that any two vertices v,uVv,u\in V such that (v,u)E(v,u)\in E verify that QvQu=Q_{v}\cap Q_{u}=\emptyset, and therefore they also verify c(v)c(u)c(v)\neq c(u). Suppose by contradiction that there was some qQvQuq\in Q_{v}\cap Q_{u}. Let us write x\ell_{x} for a ”cycle” containing qq labelled with xx, for x{v,u}x\in\{v,u\}. By the definition of LG"L_{G}", both ”cycles” v\ell_{v} and u\ell_{u} have to be \kl(cycle)rejecting as xωLGx^{\omega}\notin"L_{G}" for any xVx\in V. However, since (u,v)E(u,v)\in E, their union would be \kl(cycle)accepting, contradicting Proposition 3. ∎

These results allow us to deduce the 𝙽𝙿\mathtt{NP}-completeness of the minimisation of ”Rabin” automata.

Theorem 14.

Given a ”Rabin” automaton \A\A and a positive integer kk, deciding whether there is an equivalent ”Rabin” automaton of \kl(automata)size kk is 𝙽𝙿complete\mathtt{NP}\mathchar 45\relax\text{complete}.

Corollary 15.

Given a ”Streett” automaton \A\A and a positive integer kk, deciding whether there is an equivalent ”Streett” automaton of \kl(automata)size kk is 𝙽𝙿complete\mathtt{NP}\mathchar 45\relax\text{complete}.

2.3 Parity and generalised Büchi automata recognising Muller languages can be minimised in polynomial time

In Section 2.2 we have proven the 𝙽𝙿\mathtt{NP}-hardness of the minimisation of ”Rabin” automata showing a reduction that uses a language that is a \kl(language)Muller language, that is, whether an infinite word ww belongs to the language only depends on 𝐼𝑛𝑓(w)"\mathit{Inf}"(w). We may wonder whether \kl(language)Muller languages could be used to prove 𝙽𝙿\mathtt{NP}-hardness of minimising ”parity” or ”generalised Büchi” automata. We shall see now that this is not the case, as we prove in Propositions 17 and 18 that we can minimise parity and generalised Büchi automata recognising \kl(language)Muller languages in polynomial time. Before proving these propositions we fix some notations.

For the rest of the section, let SS\SS stand for an input alphabet, \F\F for a \kl(condition)Muller condition over SS\SS and let \A=(Q,SS,q0,δ,\GG,P)\A=(Q,\SS,q_{0},\delta,\GG,P) be a ”parity” ”automaton” recognising L\FL_{\F}, with \GG\GG a finite subset of \mathbb{N}. Let G(\A)=(V\A,E\A)"G(\A)"=(V_{\A},E_{\A}) be the ”graph associated to” \A\A, and ι"\iota" and γ\gamma the projections over the input and output alphabet, respectively. We can suppose without loss of generality that G(\A)"G(\A)" is ”strongly connected”, since any ”ergodic” ”strongly connected component” of it must recognise the Muller language L\F"L_{\F}". We call a subgraph 𝒮=(VS,ES)\mathcal{S}=(V_{S},E_{S}) of G(\A)G(\A) an \AP””\A\A-subgraph”” and we write \AP𝐿𝑒𝑡𝑡𝑒𝑟𝑠(𝒮)=eESι(e)\AP""\mathit{Letters}""(\mathcal{S})=\bigcup_{e\in E_{S}}"\iota"(e) and \AP𝑀𝑎𝑥𝑃𝑟𝑖𝑜𝑟𝑖𝑡𝑦(𝒮)=maxeESγ(e)\AP""\mathit{Max\mathchar 45\relax Priority}""(\mathcal{S})=\max\limits_{e\in E_{S}}\gamma(e).

We say that 𝒮\mathcal{S} is \AP””complete”” if for all vertices vVSv\in V_{S} and letters a𝐿𝑒𝑡𝑡𝑒𝑟𝑠(𝒮)a\in"\mathit{Letters}"(\mathcal{S}), vv has an outgoing edge ee in 𝒮\mathcal{S} such that ι(e)=a"\iota"(e)=a. Let CSSC\subseteq\SS be a set of letters; we say that a subgraph 𝒮\mathcal{S} of G(\A)G(\A) is a \AP””CC-Strongly Connected Component”” of \A\A (CC-SCC) if it is a ”strongly connected” subgraph, ”complete” and 𝐿𝑒𝑡𝑡𝑒𝑟𝑠(𝒮)=C"\mathit{Letters}"(\mathcal{S})=C.

Fact 1.

A ”CC-SCC” of \A\A is naturally a ”parity” ”automaton” recognising the \kl(condition)Muller condition \F|C=\F𝒫(C)\F|_{C}=\F\cap\mathcal{P}(C) over CC.

Lemma 16.

For every subset of letters CSSC\subseteq\SS there is some ”CC-SCC” in \A\A.

Proof.

It suffices to take an ”ergodic” component of the graph obtained by restricting the transitions of \A\A to those labelled with letters in CC. ∎

We denote \AP𝚂𝙲𝙲𝙳𝚎𝚌𝚘𝚖𝚙𝚘𝚜𝚒𝚝𝚒𝚘𝚗(𝒮)\AP""\mathtt{SCC\mathchar 45\relax Decomposition}""(\mathcal{S}) a procedure that returns a list of the ”strongly connected components” of an ”\A\A-subgraph” 𝒮\mathcal{S} (what can be done in linear time in the number of vertices and edges [Tar72],[Sha81]).

We denote \AP𝙲𝚘𝚖𝚙𝚕𝚎𝚝𝚎𝚂𝙲𝙲(C,𝒮)\AP""\mathtt{Complete\mathchar 45\relax SCC}""(C,\mathcal{S}) a procedure that takes as input a set of letters CSSC\subseteq\SS and an ”\A\A-subgraph” that contains some CC-SCC and it returns in linear time a ”CC-SCC” of 𝒮\mathcal{S}. We can do it simply by taking the restriction of 𝒮\mathcal{S} to edges labelled with letters in CC, computing a ”strongly connected component” decomposition of it and choosing some ”ergodic” component of it.

The procedure \AP𝙼𝚊𝚡𝙸𝚗𝚌𝚕𝚞𝚜𝚒𝚘𝚗(F)\AP""\mathtt{MaxInclusion}""(F) takes as input a family of subsets F𝒫(SS)F\subseteq\mathcal{P}(\SS) and returns a list containing the elements of FF that are maximal with respect to inclusion. This can be done in 𝒪(|SS|2|F|2)\mathcal{O}(|\SS|^{2}|F|^{2}).

Proposition 17.

Let \F𝒫(SS)\F\subseteq\mathcal{P}(\SS) be a \kl(condition)Muller condition. Given a ”parity” automaton recognising L\F"L_{\F}", we can build in polynomial time a minimal parity automaton recognising L\F"L_{\F}".111In a previous version of this paper, we asked if this Proposition held in the state-based scenario. The answer is yes, since we can use the Zielonka tree of the Muller condition to build a minimal state-based parity automaton recognising the Muller condition. This result was independently proven by Philipp Meyer.

Proof.

By Proposition 6, we know that a minimal ”parity” automaton recognising the \kl(language)Muller language associated to the condition \F𝒫(SS)\F\subseteq\mathcal{P}(\SS) can be constructed in linear time from its ”Zielonka tree”, \ZF\ZF. Let \A\A be a parity automaton recognising L\F"L_{\F}". We give an algorithm (Algorithm 1) building \ZF\ZF that works in 𝒪(d2c2n4)\mathcal{O}(d^{2}c^{2}n^{4}), where dd is the number of priorities in \A\A, c=|SS|c=|\SS| and n=|\A|n=|\A|. This algorithm builds \ZF\ZF recursively: first it calls the sub-procedure 𝙰𝚕𝚝𝚎𝚛𝚗𝚊𝚝𝚒𝚗𝚐𝚂𝚎𝚝𝚜\mathtt{AlternatingSets} (Algorithm 2) that returns the labels of the children of the root of \ZF\ZF and then it uses 𝙲𝚘𝚖𝚙𝚕𝚎𝚝𝚎𝚂𝙲𝙲"\mathtt{Complete\mathchar 45\relax SCC}" to compute a ”CC-SCC” for each label CC of the children.

Algorithm 1 𝚉𝚒𝚎𝚕𝚘𝚗𝚔𝚊𝚃𝚛𝚎𝚎(𝒮)\mathtt{Zielonka\mathchar 45\relax Tree(\mathcal{S})}
1:𝙸𝚗𝚙𝚞𝚝:\mathbf{\mathtt{Input}:} An ”\A\A-subgraph” 𝒮\mathcal{S}
2:C𝒮=𝐿𝑒𝑡𝑡𝑒𝑟𝑠(𝒮)C_{\mathcal{S}}="\mathit{Letters}"(\mathcal{S})
3:C1,,Ck=𝙰𝚕𝚝𝚎𝚛𝚗𝚊𝚝𝚒𝚗𝚐𝚂𝚎𝚝𝚜(𝒮)\langle C_{1},\dots,C_{k}\rangle=\mathtt{AlternatingSets}(\mathcal{S})
4:if k=0k=0 (Empty list) then
5:  return \ZF=C𝒮,\ZF=\langle C_{\mathcal{S}},\langle\emptyset\rangle\rangle
6:else
7:  for i=1ki=1\dots k do
8:   𝒮i=𝙲𝚘𝚖𝚙𝚕𝚎𝚝𝚎𝚂𝙲𝙲(Ci,𝒮)\mathcal{S}_{i}="\mathtt{Complete\mathchar 45\relax SCC}"(C_{i},\mathcal{S})
9:   Ti=𝚉𝚒𝚎𝚕𝚘𝚗𝚔𝚊𝚃𝚛𝚎𝚎(Si)T_{i}=\mathtt{Zielonka\mathchar 45\relax Tree}(S_{i})
10:  end for
11:  return \ZF=C𝒮,T1,,Tk\ZF=\langle C_{\mathcal{S}},\langle T_{1},\dots,T_{k}\rangle\rangle
12:end if
Algorithm 2 The sub-procedure 𝙰𝚕𝚝𝚎𝚛𝚗𝚊𝚝𝚒𝚗𝚐𝚂𝚎𝚝𝚜\mathtt{AlternatingSets}
1:𝙸𝚗𝚙𝚞𝚝:\mathbf{\mathtt{Input}:} An ”\A\A-subgraph” 𝒮\mathcal{S}
2:p=𝑀𝑎𝑥𝑃𝑟𝑖𝑜𝑟𝑖𝑡𝑦(𝒮)p="\mathit{Max\mathchar 45\relax Priority}"(\mathcal{S})
3:Compute 𝒮p=(Vp,Ep)\mathcal{S}_{p}=(V_{p},E_{p}), where Ep={eE:γ(e)<p}E_{p}=\{e\in E\;:\;\gamma(e)<p\} and VpV_{p} are the vertices that have some outgoing edge labelled with a priority smaller than pp.
4:L=𝒮1,,𝒮l=𝚂𝙲𝙲𝙳𝚎𝚌𝚘𝚖𝚙𝚘𝚜𝚒𝚝𝚒𝚘𝚗(𝒮p)L=\langle\mathcal{S}_{1},\dots,\mathcal{S}_{l}\rangle="\mathtt{SCC\mathchar 45\relax Decomposition}"(\mathcal{S}_{p})
5:AltSets={}\mathrm{AltSets}=\{\} \triangleright Initialise an empty set
6:for i=1,li=1,...l do
7:  if 𝑀𝑎𝑥𝑃𝑟𝑖𝑜𝑟𝑖𝑡𝑦(𝒮i)"\mathit{Max\mathchar 45\relax Priority}"(\mathcal{S}_{i}) is odd if and only if pp is even then
8:   AltSets.𝚊𝚍𝚍(𝐿𝑒𝑡𝑡𝑒𝑟𝑠(𝒮i))\mathrm{AltSets}.\mathtt{add}("\mathit{Letters}"(\mathcal{S}_{i}))
9:  else
10:   AltSets=AltSets𝙰𝚕𝚝𝚎𝚛𝚗𝚊𝚝𝚒𝚗𝚐𝚂𝚎𝚝𝚜(𝒮i)\mathrm{AltSets}=\mathrm{AltSets}\,\cup\,\mathtt{AlternatingSets}(\mathcal{S}_{i})
11:  end if
12:end for
13:MaxAltSets=𝙼𝚊𝚡𝙸𝚗𝚌𝚕𝚞𝚜𝚒𝚘𝚗(AltSets)\mathrm{MaxAltSets}="\mathtt{MaxInclusion}"(\mathrm{AltSets})
14:return MaxAltSets\mathrm{MaxAltSets}
Correctness of the algorithm.

Let TT be the labelled tree returned by the algorithm 𝚉𝚒𝚎𝚕𝚘𝚗𝚔𝚊𝚃𝚛𝚎𝚎(G(\A))\mathtt{Zielonka\mathchar 45\relax Tree}(G(\A)). We prove that TT is the ”Zielonka tree” of \F\F by induction. We suppose without loss of generality that SS\F\SS\in\F, which implies that the maximal priority pp in \A\A is even (as we have supposed that \A\A is strongly connected).

If \ZF=SS,\ZF=\langle\SS,\langle\emptyset\rangle\rangle is a ”leaf”, we are going to prove that the procedure 𝙰𝚕𝚝𝚎𝚛𝚗𝚊𝚝𝚒𝚗𝚐𝚂𝚎𝚝𝚜(G(\A))\mathtt{AlternatingSets}(G(\A)) returns an empty set, and therefore Algorithm 1 enters in the conditional of line 4 and returns \ZF\ZF. Indeed, if \ZF\ZF is a ”leaf” it means that there is no subset of SS\SS not belonging to \F\F. Therefore, if we remove recursively the transitions labelled with the maximal priority from \A\A we must obtain a graph in which the maximal priority of any ”strongly connected component” is even (if not, we would reject a word producing a run visiting all the transitions of this SCC). We conclude that the algorithm 𝙰𝚕𝚝𝚎𝚛𝚗𝚊𝚝𝚒𝚗𝚐𝚂𝚎𝚝𝚜\mathtt{AlternatingSets} does not add any element to the set AltSets\mathrm{AltSets} in the cycle of line 6.

If \ZF=SS,\ZFi1,,\ZFik\ZF=\langle\SS,\langle\ZFi{1},\dots,\ZFi{k}\rangle\rangle, we prove that 𝙰𝚕𝚝𝚎𝚛𝚗𝚊𝚝𝚒𝚗𝚐𝚂𝚎𝚝𝚜(G(\A))\mathtt{AlternatingSets}(G(\A)) returns a list of sets C1,,CkC_{1},\dots,C_{k} corresponding to the labels of the children of the root of \ZF\ZF. Then, we know that each ”CiC_{i}-SCC” computed in line 8 corresponds to a parity automaton recognising the Muller condition associated to the subtree under the ii-th child and thus, by induction hypothesis, T=\ZFT=\ZF.

First, we remark that each set CC added to AltSets\mathrm{AltSets} verifies that C\FC\notin\F, since we only add it if it is the set of letters labelling one ”strongly connected component” whose maximal priority is odd. As in line 13 we only keep the maximal subsets of AltSets\mathrm{AltSets}, it suffices to show that any maximal rejecting subset CC will be included in some set added to AltSets\mathrm{AltSets}. Let CC be such a set. By Lemma 16 we know that there is some ”CC-SCC” 𝒮C\mathcal{S}_{C} in \A\A, and it must verify that the maximal priority on it is odd. Let 𝒮\mathcal{S}^{\prime} be a ”strongly connected” subgraph of G(\A)"G(\A)" containing 𝒮C\mathcal{S}_{C}. Since CC is maximal amongst the rejecting subsets, either 𝐿𝑒𝑡𝑡𝑒𝑟𝑠(𝒮)=C"\mathit{Letters}"(\mathcal{S}^{\prime})=C or the maximal priority of 𝒮\mathcal{S}^{\prime} is even. Therefore, in line 10 we will disregard any SCC 𝒮\mathcal{S}^{\prime} containing 𝒮C\mathcal{S}_{C} that does not verify 𝐿𝑒𝑡𝑡𝑒𝑟𝑠(𝒮)=C"\mathit{Letters}"(\mathcal{S}^{\prime})=C and we will recursively inspect it until finding one labelled with CC. We note, that all subgraphs considered in this process contain 𝒮C\mathcal{S}_{C} since the maximal priority of it is odd.

Complexity analysis.

Let n=|\A|n=|\A|, dd be the number of priorities appearing in \A\A, c=|SS|c=|\SS|, f(n,d,c)f(n,d,c) be the complexity of 𝚉𝚒𝚎𝚕𝚘𝚗𝚔𝚊𝚃𝚛𝚎𝚎(G(\A))\mathtt{Zielonka\mathchar 45\relax Tree}(G(\A)) and g(n,d,c)g(n,d,c) the complexity of 𝙰𝚕𝚝𝚎𝚛𝚗𝚊𝚝𝚒𝚗𝚐𝚂𝚎𝚝𝚜(G(\A))\mathtt{AlternatingSets}(G(\A)). We start by obtaining an upper bound for g(n,d,c)g(n,d,c). It is verified:

g(n,d,c)g(n1,d2,c)++g(nl,d2,c)+𝒪(c2n2)g(n,d,c)\leq g(n_{1},d-2,c)+\dots+g(n_{l},d-2,c)+\mathcal{O}(c^{2}n^{2})

for some 1n1,,nln1\leq n_{1},\dots,n_{l}\leq n such that i=1lnin\sum_{i=1}^{l}n_{i}\leq n.

We obtain a weighted-tree such that the sum of the weights of the children of some node τ\tau is at most the weight of τ\tau. The height of this tree is at most d/2\lceil d/2\rceil and the weight of the root is nn. One such tree has less than 𝒪(dn)\mathcal{O}(dn) nodes, so g(n,d)=𝒪(dc2n3)g(n,d)=\mathcal{O}(dc^{2}n^{3}).

For the complexity of f(n,d,c)f(n,d,c) we have a similar recurrence:

f(n,d,c)f(n1,d1,c)++f(nk,d1,c)+k𝒪(cn)+g(n,d,c)f(n,d,c)\leq f(n_{1},d-1,c)+\dots+f(n_{k},d-1,c)+k\mathcal{O}(cn)+g(n,d,c)

for some 1n1,,nkn11\leq n_{1},\dots,n_{k}\leq n-1 such that i=1knin\sum_{i=1}^{k}n_{i}\leq n.

Replacing g(n,d,c)g(n,d,c) by 𝒪(dc2n3)\mathcal{O}(dc^{2}n^{3}) and using an argument similar to the above one, we obtain that f(n,d,c)=𝒪(d2c2n4)f(n,d,c)=\mathcal{O}(d^{2}c^{2}n^{4}). ∎

Proposition 18.

Let \F𝒫(SS)\F\subseteq\mathcal{P}(\SS) be a \kl(condition)Muller condition. If L\F"L_{\F}" can be recognised by a ”generalised Büchi” (resp. ”generalised co-Büchi”) automaton, then, it can be recognised by one such automaton with just one state. Moreover, this minimal automaton can be built in polynomial time from any ”generalised Büchi” (resp. generalised co-Büchi) automaton recognising L\F"L_{\F}".

Proof.

We present the proof for ”generalised Büchi” automata, the generalised co-Büchi case being dual. The language L\F"L_{\F}" can be recognised by a deterministic ”generalised Büchi” automaton if and only if it can be recognised by a Büchi automaton, and this is possible if and only if the Zielonka tree \ZF\ZF has at most height 22 and in the case it has exactly height 22, the set SS\SS is accepting [CCF21].

Suppose that \F\F verifies this condition, and let its ”Zielonka tree” be \ZF=SS,A1,,A2,,,Ak,\ZF=\allowbreak\langle\SS,\langle\langle A_{1},\langle\emptyset\rangle\rangle,\langle A_{2},\langle\emptyset\rangle\rangle,\dots,\langle A_{k},\langle\emptyset\rangle\rangle\rangle\rangle, verifying SS\F\SS\in\F and Ai\FA_{i}\notin\F for i{1,,k}i\in\{1,\dots,k\}. Then, it is easy to check that the following ”generalised Büchi” automaton \A𝑚𝑖𝑛=({q0},SS,q0,δ,SS,{B1,,Bk})\A_{\mathit{min}}=(\{q_{0}\},\SS,q_{0},\delta,\SS,\{B_{1},\dots,B_{k}\}) of size 11 recognises L\F"L_{\F}":

  • Q={q0}Q=\{q_{0}\}.

  • δ(q,c)=(q,c)\delta(q,c)=(q,c), for cSSc\in\SS.

  • Bi=SSAiB_{i}=\SS\setminus A_{i} are the sets defining the ”generalised Büchi” condition.

Finally, we prove that we can build this automaton from a given ”generalised Büchi” automaton recognising L\F"L_{\F}" in polynomial time. We remark that in order to build \A𝑚𝑖𝑛\A_{\mathit{min}} it suffices to identify the maximal rejecting subsets A1,A2,,AkSSA_{1},A_{2},\dots,A_{k}\subseteq\SS. Let \A=(Q,SS,q0,δ,\GG,{B1,,Br})\A^{\prime}=(Q,\SS,q_{0},\delta,\GG,\{B_{1}^{\prime},\dots,B_{r}^{\prime}\}) be a ”generalised Büchi” automaton recognising L\F"L_{\F}", let G(\A)=(V\A,E\A)"G(\A^{\prime})"=(V_{\A^{\prime}},E_{\A^{\prime}}) be the ”graph associated to” \A\A^{\prime}, and let ι"\iota" and γ\gamma be the projections over the input and output alphabet, respectively. For each subset BiB_{i}^{\prime}, i{1,,r}i\in\{1,\dots,r\} we consider the subgraph Gi=(Vi,Ei)G_{i}=(V_{i},E_{i}), obtained as the restriction of G(\A)"G(\A^{\prime})" to the transitions that do not produce a letter in BiB_{i}^{\prime}, that is, Vi=V\AV_{i}=V_{\A^{\prime}}, Ei={eE\A:γ(e)Bi}E_{i}=\{e\in E_{\A^{\prime}}\>:\>\gamma(e)\notin B_{i}^{\prime}\}. We compute the ”strongly connected component” of GiG_{i}, 𝒮i,1,,𝒮i,li\mathcal{S}_{i,1},\dots,\mathcal{S}_{i,l_{i}}, and for each of them we consider the projection over the input alphabet, Ci,j=ι(𝒮i,j)SSC_{i,j}="\iota"(\mathcal{S}_{i,j})\subseteq\SS. In this way, we obtain a colection of subsets of SS\SS, {Ci,j}1ik;1jli\{C_{i,j}\}_{\begin{subarray}{c}1\leq i\leq k;1\leq j\leq l_{i}\end{subarray}}, and all of them have to be rejecting. We claim that the maximal subsets amongst them are the maximal rejecting subsets of SS\SS. Indeed, if ASSA\subseteq\SS is a rejecting subset, a run over \A\A^{\prime} reading all the letters of AA eventually does not see any transition producing a colour in BiB_{i}^{\prime}, for some ii, so this run is contained in a strongly connected component of GiG_{i}, and AA is therefore a subset of Ci,jC_{i,j}, for some jj.

3 Memory in games

In this section, we introduce the definitions of ”games”, ”memories” and ”chromatic memories” for games, as well as the distinction between games where we allow \ee\ee-transitions and ”\ee\ee-free” games. We show in Section 3.4 that the ”memory requirements” for this two latter classes of games might differ.

3.1 Games

A \AP””game”” is a tuple \G=(V=VEVA,E,v0,γ:E\GG{ε},𝐴𝑐𝑐)\G=(V=V_{E}\uplus V_{A},E,v_{0},\gamma:E\rightarrow\GG\cup\{\varepsilon\},\mathit{Acc}) where (V,E)(V,E) is a ”directed graph” together with a partition of the vertices V=VEVAV=V_{E}\uplus V_{A}, v0v_{0} is an initial vertex, γ\gamma is a colouring of the edges and 𝐴𝑐𝑐\mathit{Acc} is a winning condition defining a subset \WW\GGω\WW\subseteq\GG^{\omega}. The letter ε\varepsilon is a neutral letter, and we impose that there is no cycle in \G\G labelled exclusively with ε\varepsilon. We say that vertices in VEV_{E} belong to Eve (also called the existential player) and those in VAV_{A} to Adam (universal player). We suppose that each vertex in VV has at least one outgoing edge. A game that uses a winning condition of type XX (as defined in Section 2.1) is called an XX-game.

A \AP””play”” in \G\G is an infinite path ϱEω\varrho\in E^{\omega} produced by moving a token along edges starting in v0v_{0}: the player controlling the current vertex chooses what transition to take. Such a play produces a word γ(ϱ)(\GG{ε})ω\gamma(\varrho)\in(\GG\cup\{\varepsilon\})^{\omega}. Since no cycle in \G\G consists exclusively of ε\varepsilon-colours, after removing the occurrences of ε\varepsilon from γ(ϱ)\gamma(\varrho) we obtain a word in \GGω\GG^{\omega}, that we will call the \intro(game)output of the play and we will also denote γ(ϱ)\gamma(\varrho) whenever no confusion arises. The play is \AP””winning”” for Eve if the output belongs to the set \WW\WW defined by the acceptance condition, and winning for Adam otherwise. A \AP””strategy”” for Eve in \G\G is a function prescribing how Eve should play. Formally, it is a function σ:EE\sigma:E^{*}\rightarrow E that associates to each partial play ending in a vertex vVEv\in V_{E} some outgoing edge from vv. A play ϱEω\varrho\in E^{\omega} \AP””adheres”” to the strategy σ\sigma if for each partial play ϱE\varrho^{\prime}\in E^{*} that is a prefix of ϱ\varrho and ends in some state of Eve, the next edge played coincides with σ(ϱ)\sigma(\varrho^{\prime}). We say that Eve \AP””wins”” the game \G\G if there is some strategy σ\sigma for her such that any ”play” that adheres to σ\sigma produces a winning play for her (in this case we say that σ\sigma is a winning strategy).

We will also study games without ε\varepsilon-transitions. We say that a game \G\G is \AP””ε\varepsilon-free”” if γ(e)ε\gamma(e)\neq\varepsilon for all edges eEe\in E.

3.2 Memory structures

We give the definitions of the following notions from the point of view of the existential player, Eve. Symmetric definitions can be given for the universal player (Adam), and all results of Section 4 can be dualised to apply to the universal player.

A \AP””memory structure for the game \G\G”” is a tuple \G=(M,m0,μ)\mathcal{M}_{\G}=(M,m_{0},\mu) where MM is a set of states, m0Mm_{0}\in M is an initial state and μ:M×EM\mu:M\times E\rightarrow M is an update function (where EE denotes the set of edges of the game). We extend the function μ\mu to M×EM\times E^{*} in the natural way. We can use such a memory structure to define a ”strategy” for Eve using a function 𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎:VE×ME\mathtt{next}\mathchar 45\relax\mathtt{move}:V_{E}\times M\rightarrow E, verifying that 𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎(v,m)\mathtt{next}\mathchar 45\relax\mathtt{move}(v,m) is an outgoing edge from vv. After each move of a ”play” on \G\G, the state of the memory \G\mathcal{M}_{\G} is updated using μ\mu; and when a partial play arrives to a vertex vv controlled by Eve she plays the edge indicated by the function 𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎(v,m)\mathtt{next}\mathchar 45\relax\mathtt{move}(v,m), where mm is the current state of the memory. We say that the memory structure \G\mathcal{M}_{\G} \AP””sets a winning strategy”” in \G\G if there exists such a function 𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎\mathtt{next}\mathchar 45\relax\mathtt{move} defining a ”winning strategy” for Eve.

We say that \G\mathcal{M}_{\G} is a \AP””chromatic memory”” if there is some function μ:M×\GGM\mu^{\prime}:M\times\GG\rightarrow M such that μ(m,e)=μ(m,γ(e))\mu(m,e)=\mu^{\prime}(m,\gamma(e)) for every edge eEe\in E such that γ(e)ε\gamma(e)\neq\varepsilon, and μ(m,e)=m\mu(m,e)=m if γ(e)=ε\gamma(e)=\varepsilon. That is, the update function of \G\mathcal{M}_{\G} only depends on the colours of the edges of the game.

Given a winning condition \WW\GGω\WW\subseteq\GG^{\omega}, we say that =(M,m0,μ)\mathcal{M}=(M,m_{0},\mu) is an \AP””arena-independent memory”” for \WW\WW if for any \WW\WW-game \G\G won by Eve, there exists some function 𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎\G:VE×ME\mathtt{next}\mathchar 45\relax\mathtt{move}_{\G}:V_{E}\times M\rightarrow E ”setting a winning strategy” in \G\G. We remark that such a memory is always chromatic.

The \intro(memory)size of a memory structure is its number of states.

Given a \kl(condition)Muller condition \F\F, we write \AP𝔪𝔢𝔪𝑔𝑒𝑛(\F)\AP""\mathfrak{mem}_{\mathit{gen}}(\F)"" (resp. \AP𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚(\F)\AP""\mathfrak{mem}_{\mathit{chrom}}(\F)"") for the least number nn such that for any \F\F-game that is won by Eve, she can win it using a memory (resp. a chromatic memory) of size nn. We call 𝔪𝔢𝔪𝑔𝑒𝑛(\F)\mathfrak{mem}_{\mathit{gen}}(\F) (resp. 𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚(\F)\mathfrak{mem}_{\mathit{chrom}}(\F)) the general memory requirements (resp. chromatic memory requirements) of \F\F. We write \AP𝔪𝔢𝔪𝑖𝑛𝑑(\F)\AP""\mathfrak{mem}_{\mathit{ind}}(\F)"" for the least number nn such that there exists an ”arena-independent memory” for \F\F of size nn.

We define respectively all these notions for ”ε\varepsilon-free” \F\F-games. We write \AP𝔪𝔢𝔪𝑔𝑒𝑛\eefree(\F)\AP""\mathfrak{mem}_{\mathit{gen}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)"", \AP𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚\eefree(\F)\AP""\mathfrak{mem}_{\mathit{chrom}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)"" and \AP𝔪𝔢𝔪𝑖𝑛𝑑\eefree(\F)\AP""\mathfrak{mem}_{\mathit{ind}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)"" to denote, respectively, the minimal general memory requirements, minimal chromatic memory requirements and minimal size of an arena-independent memory for ε\varepsilon-free \F\F-games.

Remark 19.

We remark that these quantities verify that 𝔪𝔢𝔪𝑔𝑒𝑛(\F)𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚(\F)𝔪𝔢𝔪𝑖𝑛𝑑(\F)"\mathfrak{mem}_{\mathit{gen}}(\F)"\leq"\mathfrak{mem}_{\mathit{chrom}}(\F)"\leq"\mathfrak{mem}_{\mathit{ind}}(\F)" and that 𝔪𝔢𝔪X\eefree(\F)𝔪𝔢𝔪X(\F)\mathfrak{mem}_{\mathit{X}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)\leq\mathfrak{mem}_{\mathit{X}}(\F) for X{𝑔𝑒𝑛,𝑐ℎ𝑟𝑜𝑚,𝑖𝑛𝑑}X\in\{\mathit{gen},\mathit{chrom},\mathit{ind}\}.

A family of games is \AP””half-positionally determined”” if for every game in the family that is won by Eve, she can win using a ”strategy” given by a ”memory structure” of size 11.

Lemma 20 ([Kla94, Zie98]).

”Rabin”-games are half-positionally determined.

If \A\A is a ”Rabin” ”automaton” recognising a \kl(condition)Muller condition \F\F, given an \F\F-game \G\G we can perform a standard product construction \G\A\G\ltimes\A to obtain an equivalent game using a Rabin condition that is therefore half-positionally determined. This allows us to use the automaton \A\A as an ”arena-independent memory” for \F\F.

Lemma 21 (Folklore).

Let \F\F be a \kl(condition)Muller condition. We can use a ”Rabin” automaton \A\A recognising L\F"L_{\F}" as an ”arena-independent memory” for \F\F.

3.3 The general memory requirements of Muller conditions

The ”Zielonka tree” (see Definition 5) was introduced by Zielonka in [Zie98], and in [DJW97] it was used to characterise the general memory requirements of Muller games as we show next.

Definition 22.

Let \F\F be a Muller condition and \ZF=\GG,\ZFi1,\ZFik\ZF=\langle\GG,\langle\ZFi{1},\dots\ZFi{k}\rangle\rangle its Zielonka tree. We define the number \AP𝔪\ZF\AP""\mathfrak{m}_{\ZF}"" recursively as follows:

𝔪\ZF={1 if \ZF is a ”leaf”max{𝔪\ZFi1,,𝔪\ZFik} if \GG\F and \ZF is not a ”leaf” i=1k𝔪\ZFii if \GG\F and \ZF is not a ”leaf” .\mathfrak{m}_{\ZF}=\begin{cases}1&\text{ if }\ZF\text{ is a "leaf"}\\[2.84526pt] \max\{\mathfrak{m}_{\ZFi{1}},\dots,\mathfrak{m}_{\ZFi{k}}\}&\text{ if }\GG\notin\F\text{ and }\ZF\text{ is not a "leaf" }\\[2.84526pt] \sum\limits_{i=1}^{k}\mathfrak{m}_{\ZFi{i}}&\text{ if }\GG\in\F\text{ and }\ZF\text{ is not a "leaf" }.\end{cases}
Proposition 23 ([DJW97]).

For every Muller condition \F\F, 𝔪𝔢𝔪𝑔𝑒𝑛(\F)=𝔪\ZF"\mathfrak{mem}_{\mathit{gen}}(\F)"=\mathfrak{m}_{\ZF}. That is,

  1. 1.

    If Eve wins an \F\F-game, she can win it using a strategy given by a (general) ”memory structure” of size at most 𝔪\ZF\mathfrak{m}_{\ZF}.

  2. 2.

    There exists an \F\F-game (with \ee\ee-transitions) won by Eve such that she cannot win it using a strategy given by a memory structure of size strictly smaller than 𝔪\ZF\mathfrak{m}_{\ZF}.

3.4 Memory requirements of ε\varepsilon-free games

In [Zie98] and [Kop06] it was noticed that there can be major differences regarding the memory requirements of winning conditions depending on the way the games are coloured. We can differentiate 4 classes of games, according to whether we colour vertices or edges, and whether we allow or not the neutral colour ε\varepsilon:

  1. A)

    State-coloured ε\varepsilon-free games.

  2. B)

    General state-coloured games.

  3. C)

    Transition-coloured ”ε\varepsilon-free” games.

  4. D)

    General transition-coloured games.

(In the previous sections we have only defined transition-coloured games). We remark that the ”memory requirements” of any condition are the same for general state-coloured games and general transition-coloured games.

In [Zie98], Zielonka showed that there are Muller conditions that are half-positional over state-coloured \ee\ee-free games, but they are not half-positional over general state-coloured games, and he exactly characterises half-positional Muller conditions in both cases.

However, when considering transition-coloured games, this “bad behaviour” does not appear: in both general games and ”ε\varepsilon-free games”, ”half-positional” \kl(condition)Muller conditions correspond exactly to ”Rabin conditions” (Lemma 24). In particular, the characterisation of Zielonka of ”half-positional” Muller conditions for state-coloured \ee\ee-free games does not generalise to transition-coloured ”ε\varepsilon-free” games.

Nevertheless, the matching upper bounds for the memory requirements of Muller conditions appearing in [DJW97] are given by transition-labelled games using ε\varepsilon-transitions. An interesting question is whether we can produce upper-bound examples using ”ε\varepsilon-free” games. In this section we answer this question negatively. We show in Proposition 25 that, for every n2n\geq 2, there is a Muller condition \F\F such that Eve can use ”memories” of \kl(memory)size 22 to win ”ε\varepsilon-free” \F\F-games where she can force a win, but that she might need nn memory states to win \F\F-games with ε\varepsilon transitions. That is, 𝔪𝔢𝔪𝑔𝑒𝑛\eefree(\F)<𝔪𝔢𝔪𝑔𝑒𝑛(\F)"\mathfrak{mem}_{\mathit{gen}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)"<"\mathfrak{mem}_{\mathit{gen}}(\F)" and the gap can be arbitrarily large. In Section 4.1 we will see that this is not the case for ”chromatic memories”: 𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚(\F)=𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚\eefree(\F)"\mathfrak{mem}_{\mathit{chrom}}(\F)"="\mathfrak{mem}_{\mathit{chrom}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)" for any \kl(condition)Muller condition \F\F.

Lemma 24.

For any Muller condition \F𝒫(\GG)\F\subseteq\mathcal{P}(\GG), \F\F is ”half-positional” determined over transition-coloured ”ε\varepsilon-free games” if and only if \F\F is half-positional determined over general transition-coloured games. That is, 𝔪𝔢𝔪𝑔𝑒𝑛(\F)=1"\mathfrak{mem}_{\mathit{gen}}(\F)"=1 if and only if 𝔪𝔢𝔪𝑔𝑒𝑛\eefree(\F)=1"\mathfrak{mem}_{\mathit{gen}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)"=1.

Proof.

Since 𝔪𝔢𝔪𝑔𝑒𝑛\eefree(\F)𝔪𝔢𝔪𝑔𝑒𝑛(\F)"\mathfrak{mem}_{\mathit{gen}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)"\leq"\mathfrak{mem}_{\mathit{gen}}(\F)" for all conditions, it suffices to see that if \F\F is a Muller condition such that 1<𝔪𝔢𝔪𝑔𝑒𝑛(\F)1<"\mathfrak{mem}_{\mathit{gen}}(\F)", then we can find an ε\varepsilon-free \F\F-game won by Eve where she cannot win positionally.

By the characterisation of [DJW97] (Proposition 23), we know that 𝔪𝔢𝔪𝑔𝑒𝑛(\F)=1"\mathfrak{mem}_{\mathit{gen}}(\F)"=1 if and only if every node of the ”Zielonka tree” of \F\F labelled with an accepting set of colours has at most one child. Therefore, if \F𝒫(\GG)\F\subseteq\mathcal{P}(\GG) is a Muller condition verifying 1<𝔪𝔢𝔪𝑔𝑒𝑛(\F)1<"\mathfrak{mem}_{\mathit{gen}}(\F)", we can find a node in \ZF\ZF labelled with A\FA\in\F and with two different children, labelled respectively with B1,B2\GGB_{1},B_{2}\subseteq\GG, verifying that Bi\FB_{i}\notin\F for i{1,2}i\in\{1,2\} and such that BiBjB_{i}\nsubseteq B_{j}, for iji\neq j. We consider the ”ε\varepsilon-free game” consisting in one initial state v0v_{0} controlled by Eve with two outgoing edges, one leading to a cycle that comes back to v0v_{0} after producing the colours in B1B_{1}, and the other one leading to a cycle producing the colours in B2B_{2}. It is clear that Eve wins this game, but she needs at least 22 memory states to do so. ∎

Proposition 25.

For any integer n2n\geq 2, there is a set of colours \GGn\GG_{n} and a \kl(condition)Muller condition \Fn𝒫(\GGn)\F_{n}\subseteq\mathcal{P}(\GG_{n}) such that 𝔪𝔢𝔪𝑔𝑒𝑛\eefree(\F)=2"\mathfrak{mem}_{\mathit{gen}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)"=2 and 𝔪𝔢𝔪𝑔𝑒𝑛(\F)=n"\mathfrak{mem}_{\mathit{gen}}(\F)"=n.

Proof.

Let us consider the set of colours \GGn={1,,n}\GG_{n}=\{1,\dots,n\} and the Muller condition

\Fn={A\GGn:|A|>1}.\F_{n}=\{A\subseteq\GG_{n}\>:\>|A|>1\}.

The ”Zielonka tree” of \Fn\F_{n} is pictured in Figure 1, where round nodes represent nodes whose label is an accepting set, and rectangular ones, nodes whose label is a rejecting set.

1,2,,n1,2,\dots,n12\cdotsn
Figure 1: Zielonka tree \ZFin\ZFi{n}.

By the characterisation of [DJW97] (Proposition 23), we know that 𝔪𝔢𝔪𝑔𝑒𝑛(\F)=n"\mathfrak{mem}_{\mathit{gen}}(\F)"=n, that is, there is a game with ε\varepsilon-transitions won by Eve where she needs at least nn memory states to force a win. We are going to prove that if Eve wins an ”ε\varepsilon-free” \F\F-game, then she can win it using only 22 memory states.

Let \G=(V=VEVA,E,v0,γ,\F)\G=(V=V_{E}\uplus V_{A},E,v_{0},\gamma,\F) be a an ε\varepsilon-free \F\F-game. First, we can suppose that Eve wins the game where we change the initial vertex v0v_{0} to any other vertex of VV. Indeed, since \F\F is a prefix-independent condition, we can restrict ourselves to the winning region of Eve (and any strategy has to ensure that she remains there). From any vertex vVEv\in V_{E}, there is one outgoing transition coloured with some colour in \GG\GG, since the game is ε\varepsilon-free. We associate to each vertex vVEv\in V_{E} one such colour, via a mapping c:VE\GGnc:V_{E}\rightarrow\GG_{n}, obtaining a partition VE=V1VnV_{E}=V_{1}\uplus\dots\uplus V_{n} verifying that vVxv\in V_{x} implies that there is some transition labelled with xx leaving vv, for x\GGnx\in\GG_{n}. We denote σ0:VEE\sigma_{0}:V_{E}\rightarrow E one application that maps each vertex vVEv\in V_{E} to one outgoing edge labelled with c(v)c(v).

Moreover, for any vVv\in V, since Eve can win from vv, there is some strategy in \G\G forcing to see some colour y\GGny\in\GG_{n}, yc(v)y\neq c(v). For each colour x\GGnx\in\GG_{n}, we consider the game \Gx=(V=VEVA,E,v,γ,𝑅𝑒𝑎𝑐ℎ(\GGn{x}))\G_{x}=(V=V_{E}\uplus V_{A},E,v,\gamma,\mathit{Reach}(\GG_{n}\setminus\{x\})), where the underlying graph is the same as in \G\G, vVv\in V is an arbitrarily vertex and the winning condition consists in reaching some colour different from xx. Eve can win this game starting from any vertex vVv\in V, and we can fix a positional winning strategy for her that does not depend on the initial vertex (since reachability games are uniformly positional determined [GTW02]). We denote σx:VEE\sigma_{x}:V_{E}\rightarrow E the choice of edges defining this strategy. Moreover, we can pick σx\sigma_{x} such that it coincides with σ0\sigma_{0} outside VxV_{x}.

We define a ”memory structure” \G=(M={m0,m1},m0,μ)\mathcal{M}_{\G}=(M=\{m_{0},m_{1}\},m_{0},\mu) for \G\G and a 𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎\mathtt{next}\mathchar 45\relax\mathtt{move} function describing the following strategy: the state m0m_{0} will be used to remember that we have to see the colour xx corresponding to the component VxV_{x} that we are in. As soon as we arrive to a vertex controlled by Eve, we use the next transition to accomplish this and we can change to state m1m_{1} in \G\mathcal{M}_{\G}. The state m1m_{1} will serve to follow the positional strategy σx\sigma_{x} reaching one colour different from xx. We will change to state m0m_{0} if we arrive to some state in VEV_{E} not in VxV_{x} (this will ensure that we will see one colour different from xx), or if Eve produces a colour different from xx staying in the component VxV_{x}. If she does not produce this colour and we do not go to a vertex in VEVxV_{E}\setminus V_{x}, that means that (since σx\sigma_{x} ensures that we will see a colour different from xx), Adam will take some transition coloured with some colour different from xx. This ”memory structure” is formally defined as follows:

  • The set of states is M={m0,m1}M=\{m_{0},m_{1}\}, being m0m_{0} the initial state.

  • The update function μ:M×EM\mu:M\times E\rightarrow M is defined as:

    {μ(mi,(v,v))=mi if vVA, for i{1,2},μ(m0,(v,v))=m1 if vVE,μ(m1,(v,v))=m0 if v,vVE and c(v)c(v),μ(m1,(v,v))=m0 if vVE and c(v)γ((v,v)),μ(m1,(v,v))=m1 in any other case.\begin{cases}\mu(m_{i},(v,v^{\prime}))=m_{i}&\text{ if }v\in V_{A},\text{ for }i\in\{1,2\},\\ \mu(m_{0},(v,v^{\prime}))=m_{1}&\text{ if }v\in V_{E},\\ \mu(m_{1},(v,v^{\prime}))=m_{0}&\text{ if }v,v^{\prime}\in V_{E}\text{ and }c(v)\neq c(v^{\prime}),\\ \mu(m_{1},(v,v^{\prime}))=m_{0}&\text{ if }v\in V_{E}\text{ and }c(v)\neq\gamma((v,v^{\prime})),\\ \mu(m_{1},(v,v^{\prime}))=m_{1}&\text{ in any other case.}\end{cases}
  • The function 𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎:M×VEE\mathtt{next}\mathchar 45\relax\mathtt{move}:M\times V_{E}\rightarrow E is defined as:

    {𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎(m0,v)=σ0(v),𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎(m1,v)=σc(v)(v).\begin{cases}\mathtt{next}\mathchar 45\relax\mathtt{move}(m_{0},v)=\sigma_{0}(v),\\ \mathtt{next}\mathchar 45\relax\mathtt{move}(m_{1},v)=\sigma_{c(v)}(v).\end{cases}\qed
Remark 26.

The condition of the previous proof also provides an example of a condition that is half-positional over ”\ee\ee-free” state-coloured arenas, but for which we might need memory nn in general state-coloured arenas (similar examples can be found in [Zie98, Kop06]).

However, the question raised in [Kop06] of whether there can be conditions (that cannot be Muller ones) that are ”half-positional” only over ”\ee\ee-free” games remains open.

4 The chromatic memory requirements of Muller conditions

In this section we present the main contributions concerning the ”chromatic memory requirements” of \kl(condition)Muller conditions. In Section 4.1, we prove that the ”chromatic memory requirements” of a Muller condition (even for ”\ee\ee-free” games) coincide with the size of a minimal Rabin automaton recognising the Muller condition (Theorem 28). In Section 4.2 we deduce that determining the ”chromatic memory requirements” of a \kl(condition)Muller condition is 𝙽𝙿complete\mathtt{NP}\mathchar 45\relax\text{complete}, for different representations of the condition. Finally, this results allow us to answer in Section 4.3 the question appearing in [Kop06, Kop08] of whether the ”chromatic memory requirements” coincide with the ”general memory requirements” of winning conditions.

4.1 Chromatic memory and Rabin automata

In this section we prove Theorem 28, establishing the equivalence between the ”chromatic memory requirements” of a \kl(condition)Muller condition (also for ”\ee\ee-free” games) and the size of a minimal ”Rabin” automaton recognising the Muller condition.

Lemma 27 appears in Kopczyński’s PhD thesis [Kop08, Proposition 8.9] (unpublished). We present a similar proof here.

Lemma 27 ([Kop08]).

Let \F\F be a Muller condition. Then, 𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚(\F)=𝔪𝔢𝔪𝑖𝑛𝑑(\F)."\mathfrak{mem}_{\mathit{chrom}}(\F)"="\mathfrak{mem}_{\mathit{ind}}(\F)". That is, there is an \F\F-game \G\G won by Eve such that any ”chromatic memory” for \G\G ”setting a winning strategy” has \kl(memory)size at least 𝔪𝔢𝔪𝑖𝑛𝑑(\F)"\mathfrak{mem}_{\mathit{ind}}(\F)", where 𝔪𝔢𝔪𝑖𝑛𝑑(\F)"\mathfrak{mem}_{\mathit{ind}}(\F)" is the minimal size of an ”arena-independent memory” for \F\F.

The same result holds for ”\ee\ee-free” games: 𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚\eefree(\F)=𝔪𝔢𝔪𝑖𝑛𝑑\eefree(\F)"\mathfrak{mem}_{\mathit{chrom}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)"="\mathfrak{mem}_{\mathit{ind}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)".

Proof.

We present the proof for 𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚(\F)=𝔪𝔢𝔪𝑖𝑛𝑑(\F)"\mathfrak{mem}_{\mathit{chrom}}(\F)"="\mathfrak{mem}_{\mathit{ind}}(\F)", the proof for the ”ε\varepsilon-free” case being identical, since we do not add any ε\varepsilon-transition to the games we consider.

It is clear that 𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚(\F)𝔪𝔢𝔪𝑖𝑛𝑑(\F)"\mathfrak{mem}_{\mathit{chrom}}(\F)"\leq"\mathfrak{mem}_{\mathit{ind}}(\F)", since any ”arena-independent memory” for \F\F-games has to be ”chromatic”. We will prove that it is not the case that 𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚(\F)<𝔪𝔢𝔪𝑖𝑛𝑑(\F)"\mathfrak{mem}_{\mathit{chrom}}(\F)"<"\mathfrak{mem}_{\mathit{ind}}(\F)". Let 1,,n\mathcal{M}_{1},\cdots,\mathcal{M}_{n} be an enumeration of all ”chromatic memory structures” of size strictly less than 𝔪𝔢𝔪𝑖𝑛𝑑(\F)"\mathfrak{mem}_{\mathit{ind}}(\F)". By definition of 𝔪𝔢𝔪𝑖𝑛𝑑(\F)"\mathfrak{mem}_{\mathit{ind}}(\F)", for any of the memories j\mathcal{M}_{j} there is some \F\F-game \Gj=(Vj,Ej,v0j,γj)\G_{j}=(V_{j},E_{j},v_{0_{j}},\gamma_{j}) won by Eve such that no function 𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎\Gj:Mj×VjEj\mathtt{next}\mathchar 45\relax\mathtt{move}_{\G_{j}}:M_{j}\times V_{j}\rightarrow E_{j} ”setting a winning strategy” in \Gj\G_{j} exists. We define the disjoint union of these games, \G=i=1n\Gi\G=\biguplus\limits_{i=1}^{n}\G_{i}, as the game with an initial vertex v0v_{0} controlled by Adam, from which he can choose to go to the initial vertex of any of the games \Gi\G_{i} producing the letter a\GGa\in\GG (for some a\GGa\in\GG fixed arbitrarily), and such the rest of vertices and transitions of \G\G is just the disjoint union of those of the games \Gi\G_{i}. Eve can win this game, since no matter the choice of Adam we arrive to some game where she can win. However, we show that she cannot win using a ”chromatic memory” strictly smaller than 𝔪𝔢𝔪𝑖𝑛𝑑(\F)"\mathfrak{mem}_{\mathit{ind}}(\F)". Suppose by contradiction that she wins using a chromatic memory =(M,m0,μ)\mathcal{M}=(M,m_{0},\mu), ||<𝔪𝔢𝔪𝑖𝑛𝑑(\F)|\mathcal{M}|<"\mathfrak{mem}_{\mathit{ind}}(\F)". We let m0=μ(m0,a)m_{0}^{\prime}=\mu(m_{0},a), and we consider the memory structure =(M,m0,μ)\mathcal{M}^{\prime}=(M,m_{0}^{\prime},\mu). Since ||<𝔪𝔢𝔪𝑖𝑛𝑑(\F)|\mathcal{M}^{\prime}|<"\mathfrak{mem}_{\mathit{ind}}(\F)", =i\mathcal{M}^{\prime}=\mathcal{M}_{i} for some i{1,,n}i\in\{1,\dots,n\}, and therefore Adam can choose to take the transition leading to \Gi\G_{i}, where Eve cannot win using this memory structure. This contradicts the fact that Eve wins \G\G using \mathcal{M}. ∎

Theorem 28.

Let \F𝒫(\GG)\F\subseteq\mathcal{P}(\GG) be a Muller condition. The following quantities coincide:

  1. 1.

    The \kl(automata)size of a minimal deterministic ”Rabin” automaton recognising L\F"L_{\F}", \mr(L\F)"\mr(L_{\F})".

  2. 2.

    The \kl(memory)size of a minimal ”arena-independent memory” for \F\F, 𝔪𝔢𝔪𝑖𝑛𝑑(\F)"\mathfrak{mem}_{\mathit{ind}}(\F)".

  3. 3.

    The \kl(memory)size of a minimal ”arena-independent memory” for ”ε\varepsilon-free” \F\F-games, 𝔪𝔢𝔪𝑖𝑛𝑑\eefree(\F)"\mathfrak{mem}_{\mathit{ind}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)".

  4. 4.

    The ”chromatic memory requirements” of \F\F, 𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚(\F)"\mathfrak{mem}_{\mathit{chrom}}(\F)".

  5. 5.

    The ”chromatic memory requirements” of \F\F for ”ε\varepsilon-free” games, 𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚\eefree(\F)"\mathfrak{mem}_{\mathit{chrom}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)".

Proof.

The previous Lemma 27, together with Lemma 21, prove that

𝔪𝔢𝔪𝑖𝑛𝑑\eefree(\F)=𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚\eefree(\F)𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚(\F)=𝔪𝔢𝔪𝑖𝑛𝑑(\F)\mr(L\F)."\mathfrak{mem}_{\mathit{ind}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)"="\mathfrak{mem}_{\mathit{chrom}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)"\leq"\mathfrak{mem}_{\mathit{chrom}}(\F)"="\mathfrak{mem}_{\mathit{ind}}(\F)"\leq"\mr(L_{\F})".

In order to prove that \mr(L\F)𝔪𝔢𝔪𝑖𝑛𝑑\eefree(\F)"\mr(L_{\F})"\leq"\mathfrak{mem}_{\mathit{ind}}^{\ee\mathchar 45\relax\mathrm{free}}(\F)", we are going to show that we can put a Rabin condition on top of any ”arena-independent memory” for ε\varepsilon-free \F\F-games \mathcal{M}, obtaining a Rabin automaton recognising L\F"L_{\F}" and having the same size than \mathcal{M}.

Let =(M,m0,μ:M×\GGM)\mathcal{M}=(M,m_{0},\mu:M\times\GG\rightarrow M) be an ”arena-independent memory” for ”ε\varepsilon-free” \F\F-games. First, we remark that we can suppose that every state of \mathcal{M} is accessible from m0m_{0} by some sequence of transitions. We define a Muller ”automaton” \A\A_{\mathcal{M}} using the underlying structure of \mathcal{M}: \A=(M,\GG,m0,δ,\GG,\F)\A_{\mathcal{M}}=(M,\GG,m_{0},\delta,\GG,\F), where the transition function δ\delta is defined as δ(m,a)=(μ(m,a),a)\delta(m,a)=(\mu(m,a),a), for a\GGa\in\GG. Since the \kl(automata)output produced by any word w\GGωw\in\GG^{\omega} is ww itself and the accepting condition is \F\F, this automaton trivially accepts the language L\F"L_{\F}". We are going to show that the Muller automaton \A\A_{\mathcal{M}} satisfies the second property in Proposition 3, that is, that for any pair of ”cycles” in \A\A_{\mathcal{M}} with some ”state in common”, if both are \kl(cycle)rejecting then their union is also \kl(cycle)rejecting. This will prove that we can put a ”Rabin” condition ”on top of” \A\A_{\mathcal{M}}.

Let 1\ell_{1} and 2\ell_{2} be two rejecting ”cycles” in \A\A_{\mathcal{M}} such that mMm\in M is contained in both 1\ell_{1} and 2\ell_{2}. We suppose by contradiction that their union 12\ell_{1}\cup\ell_{2} is an \kl(cycle)accepting ”cycle”. We will build an ”ε\varepsilon-free” \F\F-game that is won by Eve, but where she cannot win using the ”memory” \mathcal{M}, leading to a contradiction. Let a0a1ak\GGa_{0}a_{1}\dots a_{k}\in\GG^{*} be a word labelling a path to mm from m0m_{0} in \mathcal{M}, that is, μ(m0,a0ak)=m\mu(m_{0},a_{0}\dots a_{k})=m. We define the ε\varepsilon-free \F\F-game \G=(V=VE,E,v0,γ:E\GG,\F)\G=(V=V_{E},E,v_{0},\gamma:E\rightarrow\GG,\F) as the game where there is a sequence of transitions labelled with a0aka_{0}\dots a_{k} from v0v_{0} to one vertex vmv_{m} controlled by Eve (the only vertex in the game where some player has to make a choice). From vmv_{m}, Eve can choose to see all the transitions of 1\ell_{1} before coming back to mm (producing the corresponding colours), or to see all the transitions of 2\ell_{2} before coming back to mm.

First, we notice that Eve can win the game \G\G: since 12\ell_{1}\cup\ell_{2} is accepting, she only has to alternate between the two choices in the state vmv_{m}. However, there is no function 𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎:M×VEE\mathtt{next}\mathchar 45\relax\mathtt{move}:M\times V_{E}\rightarrow E setting up a winning strategy for Eve. Indeed, for every partial play ending in vmv_{m} and labelled with a0a1asa_{0}a_{1}\dots a_{s}, it is clear that μ(m0,a0as)=m\mu(m_{0},a_{0}\dots a_{s})=m (the memory is at state mm). If 𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎(m,vm)\mathtt{next}\mathchar 45\relax\mathtt{move}(m,v_{m}) is the edge leading to the cycle corresponding to 1\ell_{1}, no matter the value 𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎\mathtt{next}\mathchar 45\relax\mathtt{move} takes at the other pairs, all plays will stay in 1\ell_{1}, so the set of colours produced infinitely often would be γ(1)\gamma(\ell_{1}) which is loosing for Eve. The result is symmetric if 𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎(m,vm)\mathtt{next}\mathchar 45\relax\mathtt{move}(m,v_{m}) is the edge leading to the other cycle. We conclude that \mathcal{M} cannot be used as a memory structure for \G\G, a contradiction. ∎

4.2 The complexity of determining the chromatic memory requirements of a Muller condition

As shown in [DJW97], the ”Zielonka tree” of a \kl(condition)Muller condition directly gives its ”general memory requirements”. In this section, we see that it follows from the previous results that determining the ”chromatic memory requirements” of a Muller condition is 𝙽𝙿complete\mathtt{NP}\mathchar 45\relax\text{complete}, even if it is represented by its Zielonka tree.

Proposition 29.

Given the ”Zielonka tree” \ZF\ZF of a \kl(condition)Muller condition \F\F, we can compute in 𝒪(|\ZF|)\mathcal{O}(|\ZF|) the ”memory requirements” for \F\F-games, 𝔪𝔢𝔪𝑔𝑒𝑛(\F)"\mathfrak{mem}_{\mathit{gen}}(\F)".

Using Algorithm 1 we can compute the ”Zielonka tree” of a Muller condition from a parity automaton recognising that condition. We deduce the following result.

Corollary 30.

Given a parity automaton 𝒫\mathcal{P} recognising a \kl(condition)Muller condition \F\F, we can compute in polynomial time in |𝒫||\mathcal{P}| the ”memory requirements” for \F\F-games, 𝔪𝔢𝔪𝑔𝑒𝑛(\F)"\mathfrak{mem}_{\mathit{gen}}(\F)".

Theorem 31.

Given a positive integer k>0k>0 and a Muller condition \F\F represented as either:

  1. a)

    The Zielonka tree \ZF\ZF.

  2. b)

    A parity automaton recognising L\F"L_{\F}".

  3. c)

    A Rabin automaton recognising L\F"L_{\F}".

The problem of deciding whether 𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚(\F)k"\mathfrak{mem}_{\mathit{chrom}}(\F)"\geq k (or equivalently, 𝔪𝔢𝔪𝑖𝑛𝑑(\F)k"\mathfrak{mem}_{\mathit{ind}}(\F)"\geq k) is 𝙽𝙿complete\mathtt{NP}\mathchar 45\relax\text{complete}.

Proof.

We first remark that by Theorem 28, the size of a minimal ”arena-independent memory” for \F\F coincides with the size of a minimal Rabin automaton for L\FL_{\F}.

We show that for the three representations the problem is in 𝙽𝙿\mathtt{NP}. By Proposition 7 we can find in non-deterministic polynomial time a minimal Rabin automaton recognising L\F"L_{\F}", if we are given as input a Rabin automaton for L\F"L_{\F}", (therefore, also if we are given a parity automaton as input). Since the Zielonka tree \ZF\ZF allows us to produce in polynomial time a parity automaton for L\FL_{\F}, 𝔪𝔢𝔪𝑖𝑛𝑑(\F)"\mathfrak{mem}_{\mathit{ind}}(\F)" can be computed in non-deterministic polynomial time in |\ZF||\ZF|.

The 𝙽𝙿\mathtt{NP}-hardness part has been proven in Theorem 14 if the input is a Rabin automaton. If the input is the ”Zielonka tree” \ZF\ZF or a parity automaton, we show that the reduction presented in Section 2.2 can also be applied heree. Given a ”simple” ”undirected” ”graph” G=(V,E)G=(V,E), we consider the \kl(condition)Muller condition over VV given by \FG={{v,u}V:(v,u)E}\F_{G}=\{\{v,u\}\subseteq V\;:\;(v,u)\in E\}. It is verified that LG=L\FG"L_{G}"=L_{\F_{G}}, and by Lemma 13 the size of a minimal Rabin automaton for LG"L_{G}" (and therefore the size of a minimal ”arena-independent memory” for \F\F) coincides with the ”chromatic number” of GG. It is enough to show that we can build the ”Zielonka tree” \Z\FG\Z_{\F_{G}} and a parity automaton for L\FGL_{\F_{G}} in polynomial time in the size of GG. The Zielonka tree of \FG\F_{G} is the following one: for each pair of vertices {v,u}V\{v,u\}\subseteq V such that (v,u)E(v,u)\in E, consider the ”tree” T{v,u}={v,u},{v},,{u},T_{\{v,u\}}=\Big{\langle}\{v,u\},\big{\langle}\langle\{v\},\langle\emptyset\rangle\rangle,\langle\{u\},\langle\emptyset\rangle\rangle\big{\rangle}\Big{\rangle} (of height 22). Then, the Zielonka tree of \FG\F_{G} is given by:

\Z\FG=V,Te1,,Tek,\Z_{\F_{G}}=\langle V,\langle T_{e_{1}},\dots,T_{e_{k}}\rangle\rangle,

where e1,eke_{1},\dots e_{k} is an enumeration of the unordered pairs of vertices forming an edge. We can build this tree in 𝒪(|V|+|E|)\mathcal{O}(|V|+|E|). This Zielonka tree gives us a parity automaton for LGL_{G} in linear time (Proposition 6). ∎

4.3 Chromatic memories require more states than general ones

In his PhD Thesis [Kop06, Kop08], Kopczyński raised the question of whether for every winning condition its ”general memory requirements” coincide with its ”chromatic memory requirements”. In this section we provide an example of a game that Eve can win, but she can use a strictly smaller ”memory structure” to do so if she is allowed to employ a general memory (non-chromatic).

Proposition 32.

For each integer n2n\geq 2, there exists a set of colours \GGn\GG_{n} and a \kl(condition)Muller condition \Fn\F_{n} over \GGn\GG_{n} such that for any \Fn\F_{n}-game won by Eve, she can win it using a ”memory” of \kl(memory)size 22, but there is an \Fn\F_{n}-game \G\G where Eve needs a ”chromatic memory” of size nn to win. Moreover, the game \G\G can be chosen to be ”ε\varepsilon-free”.

Proof.

Let \GGn={1,2,,n}\GG_{n}=\{1,2,\dots,n\} be a set of nn colours, and let us define the Muller condition \Fn\F_{n} as:

\Fn={A\GGn:|A|=2}.\F_{n}=\{A\subseteq\GG_{n}\;:\;|A|=2\}.

The ”Zielonka tree” of \Fn\F_{n} is depicted in Figure 2.

1,2,,n1,2,\dots,n1,21,21,31,3\dotsn1,nn-1,n11221133\dotsn1n-1nn
Figure 2: Zielonka tree for the condition \Fn={A{1,2,,n}:|A|=2}\F_{n}=\{A\subseteq\{1,2,\dots,n\}\>:\>|A|=2\}. Square nodes are associated with rejecting sets (A\Fn)A\notin\F_{n}) and round nodes with accepting ones (A\Fn)A\in\F_{n}).

The characterisation of the ”memory requirements” of Muller conditions from Proposition 23 gives that 𝔪𝔢𝔪𝑔𝑒𝑛(\Fn)=2"\mathfrak{mem}_{\mathit{gen}}(\F_{n})"=2.

On the other hand, the language L\Fn"L_{\F_{n}}" associated to this condition coincides with the language LG"L_{G}" (defined in Section 2.2) associated to a ”graph” GG that is a clique of size nn. By Lemma 13, the size of a minimal Rabin automaton recognising L\FnL_{\F_{n}} (and therefore, by Theorem 28, the ”chromatic memory requirements” of \Fn\F_{n}) coincides with the ”chromatic number” of GG. Since GG is a clique of size nn, its ”chromatic number” is nn. ∎

We give next a concrete example of a game where 𝔪𝔢𝔪𝑔𝑒𝑛(\F)<𝔪𝔢𝔪𝑐ℎ𝑟𝑜𝑚(\F)"\mathfrak{mem}_{\mathit{gen}}(\F)"<"\mathfrak{mem}_{\mathit{chrom}}(\F)".

Example 33.

We consider the set of colours \GG={a,b,c}\GG=\{a,b,c\} and the Muller condition from the previous proof: \F={A\GG:|A|=2}.\F=\{A\subseteq\GG\;:\;|A|=2\}. As we have discussed, 𝔪𝔢𝔪𝑔𝑒𝑛(\F)=2"\mathfrak{mem}_{\mathit{gen}}(\F)"=2.

We are going to define a game \G\G won by Eve for which a minimal ”chromatic memory” providing a ”winning strategy” cannot have less than 33 states.

Let \G\G be the \F\F-game shown in Figure 3. Round vertices represent vertices controlled by Eve, and square ones are controlled by Adam.

v0v_{0}Y1.0e0]ptv1v_{1}v2v_{2}v3v_{3}Y1.0e0]ptaa Y1.0e0]ptaa Y1.0e0]ptaa Y1.0e0]ptaa Y1.0e0]ptaa Y1.0e0]ptbb Y1.0e0]ptbb Y1.0e0]ptbb Y1.0e0]ptbb Y1.0e0]ptcc Y1.0e0]ptcc Y1.0e0]ptaa Y1.0e0]ptaa Y1.0e0]ptcc Y1.0e0]ptcc
Figure 3: The game \G\G.

Suppose that there is a ”chromatic memory structure” for \G\G of size 2, \G=(M={m0,m1},m0,μ)\mathcal{M}_{\G}=(M=\{m_{0},m_{1}\},m_{0},\mu), together with a function 𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎:M×VEE\mathtt{next}\mathchar 45\relax\mathtt{move}:M\times V_{E}\rightarrow E setting a ”winning strategy” for Eve. For winning this game, the number of different colours produced infinitely often has to be exactly two, so the transitions of the memory must ensure that, whenever one outgoing edge from viv_{i} is chosen, when we come back to viv_{i} (after reading two colours in \GG\GG) we have changed of state in the memory. Therefore, for each colour x{a,b,c}x\in\{a,b,c\} we must have that μ(m0,x)=μ(m1,x)\mu(m_{0},x)=\mu(m_{1},x), what implies that there are two different colours (we will suppose for simplicity that they are aa and bb) such that μ(mj,a)=μ(mj,b)=m\mu(m_{j},a)=\mu(m_{j},b)=m, for j{1,2}j\in\{1,2\} and a state m{m0,m1}m\in\{m_{0},m_{1}\}. However, this implies that whenever a partial play ends up in v1v_{1}, the memory will be in the state mm, and Eve will always choose to play the edge given by 𝚗𝚎𝚡𝚝𝚖𝚘𝚟𝚎(m,v1)\mathtt{next}\mathchar 45\relax\mathtt{move}(m,v_{1}), producing a loosing play.

5 Conclusions and open questions

In this work, we have fully characterised the ”chromatic memory requirements” of \kl(condition)Muller conditions, proving that ”arena-independent” memory structures for a given Muller condition correspond to ”Rabin” automata recognising that condition. We have also answered several open questions concerning the ”memory requirements” of Muller conditions when restricting ourselves to ”chromatic memories” or to ”ε\varepsilon-free” games. We have proven the 𝙽𝙿\mathtt{NP}-completeness of the minimisation of transition-based Rabin automata and that we can minimise parity automata recognising \kl(language)Muller languages in polynomial time, advancing in our understanding on the complexity of decision problems related to transition-based automata.

The question of whether we can minimise transition-based parity or Büchi automata in polynomial time remains open. The contrast between the results of Abu Radi and Kupferman [AK19, AK20], showing that we can minimise GFG transition-based co-Büchi automata in polynomial time and those of Schewe [Sch20], showing that minimising GFG state-based co-Büchi automata is 𝙽𝙿complete\mathtt{NP}\mathchar 45\relax\text{complete}; as well as the contrast between Theorem 14 and Proposition 17, make of this question a very intriguing one.

Regarding the memory requirements of games, we have shown that forbidding ε\varepsilon-transitions might cause a reduction in the memory requirements of Muller conditions. However, the question raised by Kopczyński in [Kop06] remains open: are there prefix-independent winning conditions that are half-positional when restricted to ε\varepsilon-free games, but not when allowing ε\varepsilon-transitions?

Acknowledgements

I would like to thank Alexandre Blanché for pointing me to the chromatic number problem. I also want to thank Bader Abu Radi, Thomas Colcombet, Nathanaël Fijalkow, Orna Kupferman, Karoliina Lehtinen and Nir Piterman for interesting discussions on the minimisation of transition-based automata, a problem introduced to us by Orna Kupferman. Finally, I warmly thank Thomas Colcombet, Nathanaël Fijalkow and Igor Walukiewicz for their help in the preparation of this paper, their insightful comments and for introducing me to the different problems concerning the memory requirements studied in this paper.

References

  • [AK19] Bader Abu Radi and Orna Kupferman. Minimizing GFG transition-based automata. In ICALP, volume 132, pages 100:1–100:16, 2019.
  • [AK20] Bader Abu Radi and Orna Kupferman. Canonicity in GFG and transition-based automata. In GandALF, volume 326, pages 199–215, 2020.
  • [BRO+20] Patricia Bouyer, Stéphane Le Roux, Youssouf Oualhadj, Mickael Randour, and Pierre Vandenhove. Games where you can play optimally with arena-independent finite memory. In CONCUR, volume 171 of LIPIcs, pages 24:1–24:22, 2020.
  • [CCF21] Antonio Casares, Thomas Colcombet, and Nathanaël Fijalkow. Optimal transformations of games and automata using Muller conditions. In ICALP, volume 198, pages 123:1–123:14, 2021.
  • [CDK93] Edmund M. Clarke, I. A. Draghicescu, and Robert P. Kurshan. A unified approch for showing language inclusion and equivalence between various types of omega-automata. Inf. Process. Lett., 46(6):301–308, 1993.
  • [CFH14] Thomas Colcombet, Nathanaël Fijalkow, and Florian Horn. Playing safe. In FSTTCS, volume 29, pages 379–390, 2014.
  • [CHVB18] Edmund M. Clarke, Thomas A. Henzinger, Helmut Veith, and Roderick Bloem, editors. Handbook of Model Checking. Springer, Cham, 2018.
  • [CM99] Olivier Carton and Ramón Maceiras. Computing the Rabin index of a parity automaton. RAIRO, pages 495–506, 1999.
  • [CN06] Thomas Colcombet and Damian Niwiński. On the positional determinacy of edge-labeled games. Theoretical Computer Science, 352(1):190–196, 2006.
  • [CZ09] Thomas Colcombet and Konrad Zdanowski. A tight lower bound for determinization of transition labeled Büchi automata. In ICALP, pages 151–162, 2009.
  • [DJW97] Stefan Dziembowski, Marcin Jurdziński, and Igor Walukiewicz. How much memory is needed to win infinite games? In LICS, pages 99–110, 1997.
  • [GL02] Dimitra Giannakopoulou and Flavio Lerda. From states to transitions: Improving translation of LTL formulae to Büchi automata. In FORTE, pages 308–326, 2002.
  • [GTW02] Erich Grädel, Wolfgang Thomas, and Thomas Wilke, editors. Automata Logics, and Infinite Games. Springer, Berlin, Heidelberg, 2002.
  • [GZ05] Hugo Gimbert and Wieslaw Zielonka. Games where you can play optimally without any memory. In CONCUR, volume 3653 of Lecture Notes in Computer Science, pages 428–442, 2005.
  • [Hop71] John E. Hopcroft. An n log n algorithm for minimizing states in a finite automaton. Technical report, Stanford University, 1971.
  • [Kar72] Richard M. Karp. Reducibility among Combinatorial Problems, pages 85–103. The IBM Research Symposia Series. Springer US, 1972.
  • [Kla94] Nils Klarlund. Progress measures, immediate determinacy, and a subset construction for tree automata. Annals of Pure and Applied Logic, 69(2):243–268, 1994.
  • [Kop06] Eryk Kopczyński. Half-positional determinacy of infinite games. In ICALP, pages 336–347, 2006.
  • [Kop08] Eryk Kopczyński. Half-positional determinacy of infite games. PhD Thesis, 2008.
  • [Löd01] Christof Löding. Efficient minimization of deterministic weak omega-automata. Inf. Process. Lett., 79(3):105–109, 2001.
  • [MS17] David Müller and Salomon Sickert. LTL to deterministic Emerson-Lei automata. In GandALF, pages 180–194, 2017.
  • [MS21] Philipp Meyer and Salomon Sickert. On the optimal and practical conversion of Emerson-Lei automata into parity automata. Personal Communication, 2021.
  • [PR89] Amir Pnueli and Roni Rosner. On the synthesis of a reactive module. In POPL, page 179–190, 1989.
  • [Saf88] Schmuel Safra. On the complexity of ω\omega-automata. In FOCS, page 319–327, 1988.
  • [Sch09] Sven Schewe. Tighter bounds for the determinisation of Büchi automata. In FoSSaCS, pages 167–181, 2009.
  • [Sch10] Sven Schewe. Beyond hyper-minimisation—minimising DBAs and DPAs is NP-complete. In FSTTCS, volume 8 of LIPIcs, pages 400–411, 2010.
  • [Sch20] Sven Schewe. Minimising Good-For-Games automata is NP-complete. In FSTTCS, volume 182, pages 56:1–56:13, 2020.
  • [Sha81] Micha Sharir. A strong-connectivity algorithm and its applications in data flow analysis. Computers and Mathematics with Applications, 7(1):67–72, 1981.
  • [Tar72] Robert Tarjan. Depth first search and linear graph algorithms. Siam Journal On Computing, 1(2), 1972.
  • [Wag79] Klaus Wagner. On ω\omega-regular sets. Information and control, 43(2):123–177, 1979.
  • [Zie98] Wiesław Zielonka. Infinite games on finitely coloured graphs with applications to automata on infinite trees. Theoretical Computer Science, 200(1-2):135–183, 1998.