skip to main content
research-article
Open Access

Efficient Normalization of Linear Temporal Logic

Published:10 April 2024Publication History

Skip Abstract Section

Abstract

In the mid 1980s, Lichtenstein, Pnueli, and Zuck proved a classical theorem stating that every formula of Past LTL (the extension of Linear Temporal Logic (LTL) with past operators) is equivalent to a formula of the form \(\bigwedge _{i=1}^n {\mathbf {G}}{\mathbf {F}}\varphi _i \vee {\mathbf {F}}{\mathbf {G}}\psi _i\), where φi and ψi contain only past operators. Some years later, Chang, Manna, and Pnueli built on this result to derive a similar normal form for LTL. Both normalization procedures have a non-elementary worst-case blow-up, and follow an involved path from formulas to counter-free automata to star-free regular expressions and back to formulas. We improve on both points. We present direct and purely syntactic normalization procedures for LTL, yielding a normal form very similar to the one by Chang, Manna, and Pnueli, that exhibit only a single exponential blow-up. As an application, we derive a simple algorithm to translate LTL into deterministic Rabin automata. The algorithm normalizes the formula, translates it into a special very weak alternating automaton, and applies a simple determinization procedure, valid only for these special automata.

Skip 1INTRODUCTION Section

1 INTRODUCTION

In the late 1970s, Amir Pnueli introduced Linear Temporal Logic (LTL) into computer science as a framework for specifying and verifying concurrent programs [40, 41], a contribution that earned him the 1996 Turing Award. During the 1980s and the early 1990s, Pnueli et al. proceeded to study the properties expressible in LTL. In 1985, Lichtenstein et al. [24] introduced a classification of LTL properties, later described in detail by Manna and Pnueli [29, 30] in two famous monographs, which also gave it its current name, the safety-progress hierarchy (see also the work of Piterman and Pnueli [39] for a brief account). The safety-progress hierarchy consists of a safety class of formulas and five progress classes. The classes are defined semantically in terms of their models, and the largest class, called the reactivity class in the work of Manna and Pnueli [29, 30], contains all properties expressible in LTL. Manna and Pnueli provide syntactic characterizations of each class. In particular, they state a fundamental theorem showing that every reactivity property is expressible as a conjunction of formulas of the form \({\mathbf {G}}{\mathbf {F}}\varphi \vee {\mathbf {F}}{\mathbf {G}}\psi\), where \({\mathbf {F}}\chi\) and \({\mathbf {G}}\chi\) mean that \(\chi\) holds at some and at every point in the future, respectively, and \(\varphi , \psi\) only contain past operators. Manna and Pnueli call this the normal form for Past LTL.

Technically, the preceding works consider Past LTL, an extension of LTL with past operators. In 1992, Chang et al. [8] presented a different and very elegant characterization of the safety-progress hierarchy in terms of standard LTL, the logic containing only the future operators \({\mathbf {X}}\) (next), \(\mathbin {\mathbf {U}}\) (until), and \(\mathbin {\mathbf {W}}\) (weak until). They showed that every reactivity formula is equivalent to an LTL formula in negation normal form such that every path through the syntax tree contains at most one alternation of \(\mathbin {\mathbf {U}}\) and \(\mathbin {\mathbf {W}}\). We call this fundamental result the Normalization Theorem. In the notation of other work [6, 38, 45], which mimics the definition of the \(\Sigma _i\), \(\Pi _i\), and \(\Delta _i\) classes of the arithmetical and polynomial hierarchies, they proved that every LTL formula is equivalent to a \(\Delta _2\)-formula.

While these normal forms for LTL have had large conceptual impact in model checking, automatic synthesis, and deductive verification (see, e.g., the work of Piterman and Pnueli [39] for a survey), the normalization procedures for LTL have had none. The reason is that many of the known procedures are not direct, meaning that they require to translate formulas into automata and back, all have high complexity, and their correctness proofs are involved. Let us elaborate on this:

As mentioned previously, the normal form for Past LTL is first stated by Lichtenstein et al. [24, p. 208]. It is a consequence of Theorem 2, whose proof is not given in the paper but it is only said that the proof is based on many previous results, including results from five different papers [3, 9, 17, 32, 46].

In three chapters of her Ph.D. thesis, Zuck [49] gives a detailed description of the normalization procedure of Lichtenstein et al. [24]. First, Zuck translates the initial Past LTL formula into a counter-free automaton, then applies the Krohn-Rhodes cascade decomposition of finite automata and other results to translate the automaton into a star-free regular expression, and finally translates this expression into a reactivity formula with a non-elementary blow-up.

The normal form for LTL is stated in Section 4.2 of the monograph of Manna and Pnueli [31, p. 296], and in their PODC 1990 survey paper [29, p. 399]. The proof is said to be out of scope, and no normalization procedure is presented.

In the work of Chang et al. [8], the Normalization Theorem for LTL is stated. They give a rough sketch of the normalization procedure and do not give a proof. The normalization procedure uses the translation of other works [24, 49] from star-free regular expressions to Past LTL as a subroutine, and so it is at least as complex as the one of other works [24, 49].

A normalization procedure for LTL of elementary complexity can be obtained by combining work by Maler and Pnueli [26, 28] on the Krohn-Rhodes decomposition with a recent result by Boker et al. [2] on translating automata back into LTL (when possible). The procedure has three steps. First, the formula is translated into a deterministic \(\omega\)-regular automaton using, for example, the double-exponential construction of Safra [43]. Second, this automaton is translated into an equivalent deterministic and counter-free automaton, using the single-exponential construction of Maler and Pnueli [27]. Finally, this automaton is translated into a \(\Delta _2\)-formula using the triple-exponential construction of Boker et al. [2]. This combination of constructions yields an elementary normalization procedure, which moreover produces an equivalent formula at the smallest possible level of the safety-progress hierarchy. However, the procedure is indirect and has high complexity. In particular, while future work may improve the blow-up of the last two steps, the double-exponential bound on the translation of LTL into deterministic \(\omega\)-automata is tight. Therefore, any procedure that constructs a deterministic \(\omega\)-automaton as intermediate step must have at least double-exponential complexity.

Reynolds [42] and Guelev [18] give direct proofs of the normalization theorem for Past LTL that do not require to translate formulas into automata. Both proofs rely on different versions of Gabbay’s famous separation theorem, stating that every formula of Past LTL is equivalent to a Boolean combination of past and future formulas [15, 16]. Gabbay’s theorem is proved by means of equivalence preserving syntactic transformations, and so are the proofs of Guelev [18] and Reynolds [42]. However, the only known upper bound on the blow-up in the size of the formula produced by Gabbay’s separation procedure is non-elementary. Oliveira and Rasga [37] give a double-exponential separation algorithm for a fragment of Past LTL that restricts the nesting of the since and until operators.

It is remarkable that, despite the prominence of the safety-bounded hierarchy in the work of Manna and Pnueli, the complexity of normalization procedures has not been studied further, even though no lower bound for the blow-up it involves is known. In particular, and contrary to the case of propositional and first-order logic, where efficient normalization algorithms for conjunctive and clausal normal form are essential part of SAT or first-order theorem provers, normalization has not been used in LTL to obtain more efficient algorithms for satisfiability, model-checking, or synthesis tasks. This article contains three main results that, in our opinion, completely change this situation:

(1)

A simple proof of the Normalization Theorem for LTL. The proof is direct (it does not require any knowledge of automata or regular expressions), gives a clear intuitive explanation of why normalization is possible, and yields a closed form for the normalized formula with single-exponential blow-up.

(2)

An efficient normalization algorithm. The normalization procedure given in (1) has exponential best-case complexity, and is not goal oriented, in the sense that it does not only concentrate on those parts of the formula that do not belong to \(\Delta _2\). We provide a normalization algorithm consisting of six rewrite rules that solves these problems. In particular, the rewrite rules can be applied locally to “offending subformulas.”

(3)

A novel translation of LTL into deterministic Rabin automata (DRW) exploits the results of (1) and (2). The translation normalizes the formula and then transforms it into an alternating Rabin automaton with at most one alternation between accepting and non-accepting states (A1W1). This automaton is determinized by means of a novel, dedicated algorithm for A1W1, with better properties than the construction Safra [43]. In particular, the states of the DRW are pairs of sets of states of the A1W1, instead of trees of sets of states, as would be the case with Safra’s construction. This simpler state structure leads to smaller DRW.

At the heart of our first result is a novel technique, interesting on its own, called contextual normalization. Loosely speaking, to normalize a formula \(\varphi\) interpreted on infinite words over some given alphabet \(\Sigma\), the technique constructs a finite cover of the set \(\Sigma ^\omega\). This is achieved by carefully selecting a set of formulas B, called a basis. The cover contains one set of words \(L_{C | B}\) for every \(C \subseteq B\), defined as the set of the words satisfying all formulas of C and none of \(B \setminus C\). For every \(C \subseteq B\), we find a formula \(\varphi \langle C \!\mid \! B \rangle\) of \(\Delta _2\) equivalent to \(\varphi\) over all words of \(L_{C | B}\) (i.e., every word of \(L_{C | B}\) satisfies either both formulas or none). Intuitively, \(\varphi \langle C \!\mid \! B \rangle\) is equivalent to \(\varphi\) in the context of C. Then we “patch together” these formulas to obtain a formula equivalent to \(\varphi\) on all words.

The second result shows that LTL formulas can also be normalized by means of a rewrite system, just as one brings a Boolean formula in CNF; the only difference is the need for contextual rewrite rules, specifying that a subformula of a formula can only be rewritten if the formula has a certain form.

The third result shows that, on top of the central role it plays in the work of Manna and Pnueli, normalization can lead to novel algorithms for questions in the theory and applications of LTL that continue to be investigated today. In particular, efficient translations from LTL to automata exhibiting different degrees of non-determinism are being intensely studied, due to their applications to controller synthesis and probabilistic model checking, among others (see, e.g., [4, 5, 11, 12, 20, 21]). The translation of (3) based on normalization has already become part of the Owl library for \(\omega\)-automata [22], and it is used in the Strix synthesis tool [33].

The article is structured as follows. Section 2 introduces the syntax and semantics of LTL. Section 3 introduces Manna and Pnueli’s safety-progress hierarchy—following the notation of Cerná and Pelánek [6]—and recalls the Normalization Theorem presented elsewhere [8, 24, 29]. Section 4 presents our novel proof of the theorem based on contextual equivalence, and in particular Theorem 4.22, our first normalization procedure. Section 5 describes a normalizing rewrite system for LTL consisting of the rules presented in Tables 1 and 2, respectively. Section 6 introduces a translation from LTL to deterministic Rabin automata based on normalization, summarized in Theorem 6.16. Section 7 shows a tight correspondence between the classes of the safety-progress hierarchy and weak alternating automata. Section 8 contains some conclusions.

Remark. This article is a revised and extended version of previous work by the authors [13, 45]. Preceding results (1) and (3) were first presented in our work from 2020 [45] and result (2) in our work from 2022 [13].

Skip 2PRELIMINARIES Section

2 PRELIMINARIES

Let \(\Sigma\) be a finite alphabet. A word w over \(\Sigma\) is an infinite sequence of letters \(a_0 a_1 a_2 \ldots\) with \(a_i \in \Sigma\) for all \(i \ge 0\). A finite word is a finite sequence of letters. The set of all words (finite words) is denoted \(\Sigma ^\omega\) (\(\Sigma ^*\)). We let \(w[i]\) (starting at \(i=0\)) denote the i-th letter of a word w. The finite infix \(w[i]w[i+1]\ldots w[j - 1]\) is abbreviated with \(w_{ij}\) and the infinite suffix \(w[i] w[i+1] \ldots\) with \(w_{i}\). We denote the infinite repetition of a finite word \(a_0 \ldots a_n\) by \((a_0 \ldots a_n)^\omega = a_0 \ldots a_n a_0 \ldots a_n a_0 \ldots\). A set of (finite or infinite) words is called a language.

2.1 Syntax and Semantics of LTL

Formulas of LTL over a finite set Ap of atomic propositions are constructed by the following syntax: (1) \(\begin{align} \varphi ::= \,\, & {\mathbf {t\hspace{-0.5pt}t}}\mid {\mathbf {ff}}\mid a \mid \lnot \varphi \mid \varphi \wedge \varphi \mid \varphi \vee \varphi \mid {\mathbf {X}}\varphi \mid \varphi \mathbin {\mathbf {U}}\varphi \mid \varphi \mathbin {\mathbf {W}}\varphi \mid \varphi \mathbin {\mathbf {R}}\varphi \mid \varphi \mathbin {\mathbf {M}}\varphi , \end{align}\) where \(a \in Ap\) is an atomic proposition and \({\mathbf {X}}\), \(\mathbin {\mathbf {U}}\), \(\mathbin {\mathbf {W}}\), \(\mathbin {\mathbf {R}}\), and \(\mathbin {\mathbf {M}}\) are the next, (strong) until, weak until, (weak) release, and strong release operators, respectively. Further, we use the standard abbreviations \({\mathbf {F}}\varphi := {\mathbf {t\hspace{-0.5pt}t}}\, \mathbin {\mathbf {U}}\, \varphi\) (eventually) and \({\mathbf {G}}\varphi := \varphi \, \mathbin {\mathbf {W}}\, {\mathbf {ff}}\) (always). The size of a formula is the number of nodes of its syntax tree.

Formulas are interpreted on words over the alphabet \(\Sigma := 2^{Ap}\). Let w be such a word, and let \(\varphi\) be a formula. The satisfaction relation \(w \models \varphi\) is inductively defined as the smallest relation satisfying: \(\begin{equation*} \begin{array}[t]{lclclcl} w \models {\mathbf {t\hspace{-0.5pt}t}}& & \mbox{ for every $w$ } & & \\ w \not\models {\mathbf {ff}}& & \mbox{ for every $w$ } \\ w \models a & \mbox{ iff } & a \in w[0] \\ w \models \lnot \varphi & \mbox{ iff } & w \not\models \varphi \\ w \models \varphi \wedge \psi & \mbox{ iff } & w \models \varphi \text{ and } w \models \psi \\ w \models \varphi \vee \psi & \mbox{ iff } & w \models \varphi \text{ or } w \models \psi \\ \end{array} \qquad \begin{array}[t]{lcl} w \models {\mathbf {X}}\varphi & \mbox{ iff } & w_1 \models \varphi \\ w \models \varphi \mathbin {\mathbf {U}}\psi & \mbox{ iff } & \exists k. \, w_k \models \psi \text{ and } \forall j \lt k. \, w_j \models \varphi \\ w \models \varphi \mathbin {\mathbf {M}}\psi & \mbox{ iff } & \exists k. \, w_k \models \varphi \text{ and } \forall j \le k. \, w_j \models \psi \\ w \models \varphi \mathbin {\mathbf {R}}\psi & \mbox{ iff } & \forall k. \, w_k \models \psi \text{ or } w \models \varphi \mathbin {\mathbf {M}}\psi \\ w \models \varphi \mathbin {\mathbf {W}}\psi & \mbox{ iff } & \forall k. \, w_k \models \varphi \text{ or } w \models \varphi \mathbin {\mathbf {U}}\psi . \end{array} \end{equation*}\) We let \(\mathcal {L}(\varphi) := \lbrace w \in \Sigma ^\omega : w \models \varphi \rbrace\) denote the language of \(\varphi\). Two formulas \(\varphi\) and \(\psi\) are equivalent, denoted \(\varphi \equiv \psi\), if \(\mathcal {L}(\varphi) = \mathcal {L}(\psi)\). We overload the definition of \(\models\) and write \(\varphi \models \psi\) as a shorthand for \(\mathcal {L}(\varphi) \subseteq \mathcal {L}(\psi)\).

Monotonic and Dual Operators. An operator \({\mathbf {P}}\) of arity \(k \ge 0\) is monotonic if \((\varphi _1 \models \psi _1) \wedge \cdots \wedge (\varphi _k \models \psi _k)\) implies \({\mathbf {P}}(\varphi _1, \ldots , \varphi _k) \models {\mathbf {P}}(\psi _1, \ldots , \psi _k)\). It is easy to see that all operators of the syntax, with the exception of negation, are monotonic. Two operators \({\mathbf {P}}\) and \({\mathbf {Q}}\) of arity \(k \ge 0\) are dual if \({\mathbf {P}}(\varphi _1, \ldots , \varphi _k) \equiv \lnot {{\mathbf {Q}}(\lnot {\varphi }_1, \ldots , \lnot {\varphi }_k)}\) and \({\mathbf {Q}}(\varphi _1, \ldots , \varphi _k) \equiv \lnot {{\mathbf {P}}(\lnot {\varphi }_1, \ldots , \lnot {\varphi }_k)}\) for all formulas \(\varphi _1, \ldots , \varphi _k\). It is easy to see that \({\mathbf {t\hspace{-0.5pt}t}}\) and \({\mathbf {ff}}\), \(\vee\) and \(\wedge\), \(\mathbin {\mathbf {U}}\) and \(\mathbin {\mathbf {R}}\), and \(\mathbin {\mathbf {W}}\) and \(\mathbin {\mathbf {M}}\) are dual, and \({\mathbf {X}}\) is self dual.

Negation Normal Form. A formula is in negation normal form if negations appear only in front of atomic propositions. In other words, the syntax of formulas for negation normal form is obtained by substituting \(\lnot \varphi\) for \(\lnot a\) in (1).

The following result is folklore.

Proposition 2.1.

Every formula of size n has an equivalent formula in negation normal form of size \(O(n)\). Further, for every formula \(\varphi\) in negation normal form of size n there exists a formula \(\overline{\varphi }\) in negation normal form of size n such that \(\lnot \varphi \equiv \overline{\varphi }\).

Proof.

Formulas are put in negation normal form by “pushing negations” across all operators using the duality relations (e.g., \(\lnot (\varphi _1 \mathbin {\mathbf {U}}\varphi _2)\) is replaced by \(\lnot \varphi _1 \mathbin {\mathbf {R}}\lnot \varphi _2\)). These transformations only increase the size of the formula by one unit, and so the formula in negation normal form has size \(O(n)\). The formula \(\overline{\varphi }\) is defined inductively using the duality relations (e.g., \(\overline{\varphi _1 \mathbin {\mathbf {U}}\varphi _2} := \overline{\varphi _1} \mathbin {\mathbf {R}}\overline{\varphi _2}\), \(\overline{{\mathbf {X}}\varphi } := {\mathbf {X}}\overline{\varphi }\)); these transformations preserve the size of the formula. □

Convention: In the rest of the article we assume, without explicit mention, that formulas are in negation normal form. Abusing language, we call \(\overline{\varphi }\) the negation of \(\varphi\).

Skip 3THE SAFETY-PROGRESS HIERARCHY Section

3 THE SAFETY-PROGRESS HIERARCHY

We recall the definition of the safety-progress hierarchy, the hierarchy of temporal properties studied by Manna and Pnueli [29]. We follow the formulation of Černá and Pelánek [6]. The definition of the hierarchy formalizes the intuition that, for example, a safety property is violated by an execution iff one of its finite prefixes is “bad” or, equivalently, satisfied by an execution iff all of its finite prefixes belong to a language of good prefixes. In the ensuing sections, we describe structures that have a direct correspondence to this hierarchy, and in this sense the hierarchy provides a map to navigate the results of this work.

Definition 3.1

([6, 29]).

Let \(P \subseteq \Sigma ^\omega\) be a property over \(\Sigma\):

P is a safety property if there exists a language of finite words \(L \subseteq \Sigma ^*\) such that \(w \in P\) iff all finite prefixes of w belong to L.

P is a guarantee property if there exists a language of finite words \(L \subseteq \Sigma ^*\) such that \(w \in P\) iff there exists a finite prefix of w which belongs to L.

P is an obligation property if it can be expressed as a positive Boolean combination of safety and guarantee properties.

P is a recurrence property if there exists a language of finite words \(L \subseteq \Sigma ^*\) such that \(w \in P\) iff infinitely many prefixes of w belong to L.

P is a persistence property if there exists a language of finite words \(L \subseteq \Sigma ^*\) such that \(w \in P\) iff all but finitely many prefixes of w belong to L.

P is a reactivity property if P can be expressed as a positive Boolean combination of recurrence and persistence properties.

The inclusions between these classes are shown in Figure 1(a). Chang et al. [8] give a syntactic characterization of the classes in terms of the following fragments of LTL.

Definition 3.2

(Adapted from Cerná and Pelánek [6]).

We define the following classes of LTL formulas:

The class \(\Sigma _0 = \Pi _0 = \Delta _0\) is the least set of formulas containing \({\mathbf {t\hspace{-0.5pt}t}}\), \({\mathbf {ff}}\), all atomic propositions and their negations, and is closed under the application of conjunction and disjunction.

The class \(\Sigma _{i+1}\) is the least set of formulas containing \(\Pi _i\) that is closed under the application of conjunction, disjunction, and the \({\mathbf {X}}\), \(\mathbin {\mathbf {U}}\), and \(\mathbin {\mathbf {M}}\) operators.

The class \(\Pi _{i+1}\) is the least set of formulas containing \(\Sigma _i\) that is closed under the application of conjunction, disjunction, and the \({\mathbf {X}}\), \(\mathbin {\mathbf {R}}\), and \(\mathbin {\mathbf {W}}\) operators.

The class \(\Delta _{i+1}\) is the least set of formulas containing \(\Sigma _{i+1}\) and \(\Pi _{i+1}\) that is closed under the application of conjunction and disjunction.

Observe the behavior of the classes under negation. Given a set of formulas F, let \(\overline{F} = \lbrace \overline{\varphi } \mid \varphi \in F \rbrace\). By the definition of \(\overline{\phi }\), we have the following proposition.

Proposition 3.3.

For every \(i \ge 0,\) we have \(\overline{\Sigma }_i=\Pi _i\), \(\overline{\Pi }_i = \Sigma _i\), and \(\overline{\Delta }_i = \Delta _i\).

In particular, Proposition 3.3 shows that a formula \(\varphi\) is equivalent to a formula of \(\Delta _2\) iff \(\overline{\varphi }\) is.

The following result, a corollary of the proof of Chang et al. [8, Theorem 8], shows that the safety-progress hierarchy and the syntactic hierarchy of Definition 3.2 coincide.

Theorem 3.4 (Adapted from Cerná and Pelánek [6]).

A property that is specifiable in LTL is a guarantee (safety, obligation, persistence, recurrence, reactivity, respectively) property iff it is specifiable by a formula from the class \(\Sigma _1 (\Pi _1\), \(\Delta _1\), \(\Sigma _2\), \(\Pi _2\), \(\Delta _2\), respectively\()\).

Fig. 1.

Fig. 1. Both hierarchies, side by side, indicating the correspondence of Theorem 3.4 for properties specifiable in LTL.

Together with the result of Lichtenstein et al. [24], stating that every formula of LTL is equivalent to a reactivity formula, Chang et al. obtain the following theorem.

Theorem 3.5 (Normalization Theorem [8, 24, 29]).

Every LTL formula is equivalent to a formula of \(\Delta _2\).

Skip 4A SIMPLE PROOF OF THE NORMALIZATION THEOREM Section

4 A SIMPLE PROOF OF THE NORMALIZATION THEOREM

We present a simple proof of the Normalization Theorem. Section 4.1 introduces our proof technique, the Contextual Equivalence Lemma. The lemma shows that every formula \(\varphi\) is normalizable if certain formulas related to \(\varphi\) exist. Sections 4.3 and 4.4 prove the existence of those formulas. Finally, section 4.5 instantiates the Contextual Equivalence Lemma with the formulas of Sections 4.3 and 4.4, which yield the theorem.

4.1 Contextual Equivalence

Consider the formula \(\varphi = {\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {U}}b)\). It does not belong to \(\Delta _2\), because of the alternation \({\mathbf {F}}\)-\({\mathbf {G}}\), followed by the alternation \({\mathbf {G}}\)-\(\mathbin {\mathbf {U}}\). Let us see how to find an equivalent formula of \(\Delta _2\). We consider the formula \({\mathbf {G}}{\mathbf {F}}b\) and argument (informally!) as follows:

For words that do not satisfy \({\mathbf {G}}{\mathbf {F}}b\), \(\varphi\) is equivalent to \({\mathbf {ff}}\). Indeed, if \(w \not\models {\mathbf {G}}{\mathbf {F}}b\), then b holds for only finitely many suffixes of w, and so \(a \mathbin {\mathbf {U}}b\) also holds for finitely many suffixes only. So w cannot satisfy \({\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {U}}b)\).

For words that satisfy \({\mathbf {G}}{\mathbf {F}}b\), \(\varphi\) is equivalent to \({\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {W}}b)\). Indeed, if a word w satisfies \({\mathbf {G}}{\mathbf {F}}b\), then every suffix \(w_i\) satisfies \({\mathbf {F}}b\), and so \(w_i \models a \mathbin {\mathbf {U}}b\) iff \(w_i \models a \mathbin {\mathbf {W}}b\) holds for every \(i \ge 0\).

We say that \(\varphi\) is equivalent to \({\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {W}}b)\) in the context of \({\mathbf {G}}{\mathbf {F}}b\), and equivalent to \({\mathbf {ff}}\) in the context of \(\overline{{\mathbf {G}}{\mathbf {F}}b}\). We get \({\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {U}}b) \equiv ({\mathbf {G}}{\mathbf {F}}b \wedge {\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {W}}b)) \vee (\overline{{\mathbf {G}}{\mathbf {F}}b} \wedge {\mathbf {ff}}) \equiv ({\mathbf {G}}{\mathbf {F}}b \wedge {\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {W}}b))\). Due to the elimination of \(\mathbin {\mathbf {U}}\), this is a formula of \(\Delta _2\).

We can proceed dually with the formula \(\varphi = {\mathbf {G}}{\mathbf {F}}(a \mathbin {\mathbf {W}}b)\). We consider the formula \({\mathbf {F}}{\mathbf {G}}a\) and argument as follows:

In the context of \({\mathbf {F}}{\mathbf {G}}a\), \(\varphi\) is equivalent to \({\mathbf {t\hspace{-0.5pt}t}}\). Indeed, if \(w \models {\mathbf {F}}{\mathbf {G}}a\), then there is a suffix \(w_i\) such that \(a \mathbin {\mathbf {W}}b\) holds for all suffixes of \(w_i\), and so in particular for infinitely many suffixes.

In the context of \(\overline{{\mathbf {F}}{\mathbf {G}}a}\), \(\varphi\) is equivalent to \({\mathbf {G}}{\mathbf {F}}(a \mathbin {\mathbf {U}}b)\). Recall that \(a \mathbin {\mathbf {W}}b \equiv a \mathbin {\mathbf {U}}b \vee {\mathbf {G}}a\). If a word w does not satisfy \({\mathbf {F}}{\mathbf {G}}a\), then no suffix satisfies \({\mathbf {G}}a\); so w satisfies \(\varphi\) iff infinitely many prefixes satisfy \(a \mathbin {\mathbf {U}}b\).

Now we have \({\mathbf {G}}{\mathbf {F}}(a \mathbin {\mathbf {W}}b) \equiv ({\mathbf {F}}{\mathbf {G}}a \wedge {\mathbf {t\hspace{-0.5pt}t}}) \vee (\overline{{\mathbf {F}}{\mathbf {G}}a} \wedge {\mathbf {G}}{\mathbf {F}}(a \mathbin {\mathbf {U}}b)) \equiv {\mathbf {F}}{\mathbf {G}}a \vee (\overline{{\mathbf {F}}{\mathbf {G}}a} \wedge {\mathbf {G}}{\mathbf {F}}(a \mathbin {\mathbf {U}}b)) \equiv {\mathbf {F}}{\mathbf {G}}a \vee ({\mathbf {G}}{\mathbf {F}}(\lnot a) \wedge {\mathbf {G}}{\mathbf {F}}(a \mathbin {\mathbf {U}}b)) \equiv {\mathbf {F}}{\mathbf {G}}a \vee {\mathbf {G}}{\mathbf {F}}(a \mathbin {\mathbf {U}}b)\). Due to the elimination of \(\mathbin {\mathbf {W}}\), this is a formula of \(\Delta _2\).

Our normalization strategy follows this pattern. Given a formula \(\varphi\), we define a basis of formulas B and consider all contexts \(\langle {C} \!\mid \! {B} \rangle\), where \(C\subseteq B\). Intuitively, a context \(\langle {C} \!\mid \! {B} \rangle\) corresponds to a region of the set of all words containing the words satisfying all formulas of C and none of \(B \setminus C\), or, equivalently, all dual formulas of the formulas in \(B \setminus C\). For every context \(\langle {C} \!\mid \! {B} \rangle ,\) we find a formula \(\varphi \langle C \!\mid \! B \rangle\) of \(\Delta _2\) equivalent to \(\varphi\) over all words of the corresponding region. Then we “patch together” these formulas to obtain a formula of \(\Delta _2\) that is equivalent to \(\varphi\) everywhere.

We formalize this idea in two steps. First we state and prove the Weak Contextual Equivalence Lemma, which is enough to normalize simple formulas like \({\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {U}}b)\) and \({\mathbf {G}}{\mathbf {F}}(a \mathbin {\mathbf {W}}b)\). In the second step, we state and prove the Contextual Equivalence Lemma, which presents a technique to normalize arbitrary formulas.

Fix a set of atomic propositions Ap, and let \(\mathcal {U}\) be the set of all words over \(2^{Ap}\).

Definition 4.1

(Basis and Equivalence under Context).

Let B be a finite set of formulas over Ap, called a basis. A context is a partition of B into a set \(C\subseteq B\) and the set \(B \setminus C\). We denote a context by \(\langle {C} \!\mid \! {B} \rangle\). The language \(L_{C | B} \subseteq \mathcal {U}\) of \(\langle {C} \!\mid \! {B} \rangle\) is the set of words that satisfy every formula of C and no formula of \(B \setminus C\). Two formulas \(\varphi _1, \varphi _2\) are equivalent under context \(\langle {C} \!\mid \! {B} \rangle\) if \((w \models \varphi _1 \Leftrightarrow w \models \varphi _2)\) holds for every \(w \in L_{C | B}\).

We collect some simple properties for later use.

Lemma 4.2.

We have the following:

(1)

\(L_{\emptyset | \emptyset } = \mathcal {U}\). In particular, two formulas are equivalent iff they are equivalent under context \(\langle {\emptyset } \!\mid \! {\emptyset } \rangle\).

(2)

Let \(B \subseteq B^{\prime }\). Then \(L_{C^{\prime } | B^{\prime }} \subseteq L_{(C^{\prime }\cap B) | B}\) for every \(C^{\prime } \subseteq B^{\prime }\).

(3)

If two formulas are equivalent under context \(\langle {C} \!\mid \! {B} \rangle\), then they are also equivalent under any context \(\langle {C^{\prime }} \!\mid \! {B^{\prime }} \rangle\) such that \(C= C^{\prime } \cap B\) and \(B \subseteq B^{\prime }\).

(4)

Let \(\overline{B}:= \lbrace \overline{\psi } \mid \psi \in B\rbrace\) be the dual basis of B. For every \(C \subseteq B\), define \(C_d:= \lbrace \overline{\psi } \mid \psi \in B \setminus C\rbrace\). Two formulas are equivalent under context \(\langle {C} \!\mid \! {B} \rangle\) iff they are equivalent under context \(\langle {C_d} \!\mid \! {\overline{B}} \rangle\).

Proof.

We proceed as follows:

(1)

Follows immediately from the definition.

(2)

Let \(w \in L_{C^{\prime } | B^{\prime }}\). By definition, we have \(w \models \psi\) for all \(\psi \in C^{\prime }\) and \(w \not\models \psi\) for all \(\psi \in B^{\prime } \setminus C^{\prime }\). We have \(B \setminus (C^{\prime } \cap B) = B \setminus C^{\prime } \subseteq B^{\prime } \setminus C^{\prime }\). So \(w \models \psi\) for all \(\psi \in C^{\prime } \cap B\) and \(w \not\models \psi\) for all \(\psi \in B \setminus (C^{\prime } \cap B)\). By definition, \(w \in L_{(C^{\prime } \cap B) | B}\).

(3)

Let \(\varphi _1, \varphi _2\) be equivalent under \(\langle {C} \!\mid \! {B} \rangle\). We have \(w \models \varphi _1 \Leftrightarrow\) iff \(w \models \varphi _2\) for every \(w \in L_{C | B}\). By \(B \subseteq B^{\prime }\), \(C= C^{\prime } \cap B\), and (2), we get \(L_{C^{\prime } | B^{\prime }} \subseteq L_{C | B}\), and so \(\varphi _1, \varphi _2\) are equivalent under \(\langle {C^{\prime }} \!\mid \! {B^{\prime }} \rangle\).

(4)

It suffices to prove \(L_{C_d | \overline{B}} = L_{C | B}\). This is an easy consequence of \(\overline{\psi } \equiv \lnot \psi\). Indeed, for any \(w \in \mathcal {U}\), we have

\(w \models \psi\) for all \(\psi \in C\) iff \(w \not\models \overline{\psi }\) for all \(\psi \in C\) iff \(w \not\models \overline{\psi }\) for all \(\psi \in B \setminus (B \setminus C)\) iff \(w \not\models \overline{\psi }\) for all \(\psi \in \overline{B} \setminus C_d\).

Similarly, \(w \not\models \psi\) for all \(\psi \in B\setminus C\) iff \(w \models \overline{\psi }\) for all \(\psi \in C_d\). Hence, \(w \in L_{C | B}\) iff \(w \in L_{C_d | \overline{B}}\).

 □

4.1.1 Weak Contextual Equivalence Lemma.

Intuitively, the Weak Contextual Equivalence Lemma shows how to patch together formulas \(\varphi \langle C \!\mid \! B \rangle\) that are equivalent to \(\varphi\) for each context \(\langle {C} \!\mid \! {B} \rangle\).

Lemma 4.3 (Weak Contextual Equivalence Lemma).

Let \(\varphi\) be a formula, and let B be a basis of formulas. Assume that for every context \(\langle {C} \!\mid \! {B} \rangle\) there exists a formula \(\varphi \langle C \!\mid \! B \rangle\) satisfying

(i)

\(\varphi\) and \(\varphi \langle C \!\mid \! B \rangle\) are equivalent under context \(\langle {C} \!\mid \! {B} \rangle\), and

(ii)

for every \(C, C^{\prime } \subseteq B\), if \(C \subseteq C^{\prime },\) then \(\varphi \langle C \!\mid \! B \rangle \models \varphi \langle C^{\prime } \!\mid \! B \rangle\).

Then we have \(\begin{equation*} \varphi \equiv \bigvee _{C \subseteq B} \left(\varphi \langle C \!\mid \! B \rangle \wedge \bigwedge _{\psi \in C} \psi \right)\ . \end{equation*}\)

Proof.

Let \(w \in \mathcal {U}\). Let \(C_w\) be the (possibly empty) set of formulas of the basis B satisfied by w.

Assume \(w \models \varphi\). We have \(w \models \bigwedge _{\psi \in C_w} \psi\) and \(w \in L_{C_w | B}\) by definition of \(C_w\), and so \(w \models \varphi \langle C_w \!\mid \! B \rangle\) by property (i). So \(w \models \varphi \langle C_w \!\mid \! B \rangle \wedge \bigwedge _{\psi \in C_w} \psi\), and thus \(w \models \bigvee _{C \subseteq B} \big (\varphi \langle C \!\mid \! B \rangle \wedge \bigwedge _{\psi \in C} \psi \big)\).

Assume \(w \models \bigvee _{C \subseteq B} \big (\varphi \langle C \!\mid \! B \rangle \wedge \bigwedge _{\psi \in C} \psi \big)\). Then there exists a context \(C\subseteq B\) such that \(w \models \varphi \langle C \!\mid \! B \rangle \wedge \bigwedge _{\psi \in C} \psi\). By the definition of \(C_w,\) we have \(C \subseteq C_w\), and so \(w \models \varphi \langle C_w \!\mid \! B \rangle\) by property (ii). Since, by property (i), \(\varphi\) and \(\varphi \langle C_w \!\mid \! B \rangle\) are equivalent under context \(\langle {C_w} \!\mid \! {B} \rangle\), we get \(w \models \varphi\). □

Example 4.4.

Consider the formula \(\varphi := {\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {U}}b)\). It is easy to see that \(B := \lbrace {\mathbf {G}}{\mathbf {F}}b \rbrace\), \(\varphi \langle \emptyset \!\mid \! B \rangle := {\mathbf {ff}}\) and \(\varphi \langle B \!\mid \! B \rangle := {\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {W}}b)\) satisfy the conditions of the lemma. So we have \(\begin{equation*} \varphi \equiv (\varphi \langle \emptyset \!\mid \! B \rangle \wedge {\mathbf {t\hspace{-0.5pt}t}}) \vee (\varphi \langle B \!\mid \! B \rangle \wedge {\mathbf {G}}{\mathbf {F}}b) =({\mathbf {ff}}\wedge {\mathbf {t\hspace{-0.5pt}t}}) \vee ({\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {W}}b) \wedge {\mathbf {G}}{\mathbf {F}}b) \equiv {\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {W}}b) \wedge {\mathbf {G}}{\mathbf {F}}b \in \Delta _2. \end{equation*}\) Consider now \(\varphi := {\mathbf {G}}{\mathbf {F}}(a \mathbin {\mathbf {W}}b)\). Taking \(B := \lbrace {\mathbf {F}}{\mathbf {G}}a \rbrace\), \(\varphi \langle \emptyset \!\mid \! B \rangle := {\mathbf {G}}{\mathbf {F}}(a \mathbin {\mathbf {U}}b)\), and \(\varphi \langle B \!\mid \! B \rangle := {\mathbf {t\hspace{-0.5pt}t}}\) also satisfies the conditions, and we get \(\begin{equation*} \varphi \equiv (\varphi \langle \emptyset \!\mid \! B \rangle \wedge {\mathbf {t\hspace{-0.5pt}t}}) \vee (\varphi \langle B \!\mid \! B \rangle \wedge {\mathbf {F}}{\mathbf {G}}a) =({\mathbf {G}}{\mathbf {F}}(a \mathbin {\mathbf {U}}b) \wedge {\mathbf {t\hspace{-0.5pt}t}}) \vee ({\mathbf {t\hspace{-0.5pt}t}}\wedge {\mathbf {F}}{\mathbf {G}}a) \equiv {\mathbf {G}}{\mathbf {F}}(a \mathbin {\mathbf {U}}b) \vee {\mathbf {F}}{\mathbf {G}}a \in \Delta _2. \end{equation*}\)

The Weak Contextual Equivalence Lemma only shows how to normalize formulas under the assumption that one already knows how to normalize the formulas of the basis B. Indeed, if B contains formulas that are not in \(\Delta _2\), then for any \(C\subseteq B\) containing such formulas, the expression \(\bigwedge _{\psi \in C} \psi\) is also not in \(\Delta _2\). But how can one normalize these formulas of B? The obvious idea is to recursively apply the lemma: find a second basis \(B^{\prime }\) of “simpler” formulas, reduce the problem of normalizing B to normalizing \(B^{\prime }\), and iterate until a basis containing only formulas of \(\Delta _2\) is reached. The Contextual Equivalence Lemma follows this idea but also improves on it; instead of a sequence of bases, it only assumes a unique well-founded basis.

4.1.2 Contextual Equivalence Lemma.

We introduce well-founded bases.

Definition 4.5.

Let B be a basis and \((\prec) \in B \times B\) a well-founded order on B. We say that \((B, \prec)\) is a well-founded basis. Given a basis formula \(\psi \in B\), we let \({\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\) denote the set \(\lbrace \chi \in B \mid \chi \prec \psi \rbrace\).

Intuitively, after applying weak contextual equivalence to \(\varphi\) with basis B, we may need to apply it again to \(\psi\). But with which basis? The answer is with the (well-founded) basis \({\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\). Well-foundedness guarantees that this process terminates. The Contextual Equivalence Lemma also adds to the assumptions (i) and (ii) on \(\varphi\) similar assumptions (iii) and (iv) on the formulas \(\psi \in B\).

Lemma 4.6 (Contextual Equivalence Lemma).

Let \(\varphi\) be a formula, and let \((B, \prec)\) be a well-founded basis. Assume that for every \(C\subseteq B\) there exists a formula \(\varphi \langle C \!\mid \! B \rangle\) satisfying

(i)

\(\varphi\) and \(\varphi \langle C \!\mid \! B \rangle\) are equivalent under context \(\langle {C} \!\mid \! {B} \rangle\), and

(ii)

for every two sets \(C, C^{\prime } \subseteq B\), if \(C\subseteq C^{\prime },\) then \(\varphi \langle C \!\mid \! B \rangle \models \varphi \langle C^{\prime } \!\mid \! B \rangle\).

Assume further that for every basis formula \(\psi \in B\) and every \(C\subseteq {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\) there exists a formula \(\psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) satisfying

(iii)

\(\psi\) and \(\psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) are equivalent under context \(\langle {C} \!\mid \! {{\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }} \rangle\), and

(iv)

for every two sets \(C, C^{\prime } \subseteq {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\), if \(C\subseteq C^{\prime },\) then \(\psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle \models \psi \langle \hspace{-2.13387pt}\langle C^{\prime } \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\).

Then we have \(\begin{equation*} \varphi \equiv \bigvee _{C\subseteq B} \left(\varphi \langle C \!\mid \! B \rangle \wedge \bigwedge _{\psi \in C} \psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle \right) \ . \end{equation*}\)

Proof.

Let w be a word. We prove \(w \models \varphi\) iff \(w \models \bigvee _{C\subseteq B} \big (\varphi \langle C \!\mid \! B \rangle \wedge \bigwedge _{\psi \in C} \psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle \big)\). Let \(C_w \subseteq B\) be the (possibly empty) set of formulas of B satisfied by w.

(\(\Rightarrow\)): Assume \(w \models \varphi\). Observe that \(w \in L_{C_w | B}\) by definition of \(C_w\). We prove that \(w \models \varphi \langle C_w \!\mid \! B \rangle\) and \(w \models \psi \langle \hspace{-2.13387pt}\langle C_w \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) for every \(\psi \in C_w\):

\(w \models \varphi \langle C_w \!\mid \! B \rangle\). Since \(w \in L_{C_w | B}\) and \(w \models \varphi\) by hypothesis, we have \(w \models \varphi \langle C_w \!\mid \! B \rangle\) by property (i).

\(w \models \psi \langle \hspace{-2.13387pt}\langle C_w \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) for every \(\psi \in C_w\). Let \(\psi \in C_w\). We have \(w \in L_{C_w | B} \subseteq L_{C_w | {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }}\) by lemma 4.2(2) because \({\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \subseteq B\). Hence, by property (iii), \(w \models \psi \langle \hspace{-2.13387pt}\langle C_w \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) iff \(w \models \psi\). Since \(\psi \in C_w,\) we have \(w \models \psi\), and we are done.

(\(\Leftarrow\)): Assume there is \(C \subseteq B\) such that \(w \models \varphi \langle C \!\mid \! B \rangle\) and \(w \models \psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) for every \(\psi \in C\). We prove \(w \models \varphi\).

Claim. \(w \models \psi\) for every \(\psi \in C\).

Proof of the Claim

We proceed by induction on \((C, \prec)\). □

Basis. \({\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }=\emptyset\). Then \(w \models \psi \langle \hspace{-2.13387pt}\langle \emptyset \!\mid \! \emptyset \rangle \hspace{-2.13387pt}\rangle\). By lemma 4.2 and property (iii), \(\psi\) and \(\psi \langle \hspace{-2.13387pt}\langle \emptyset \!\mid \! \emptyset \rangle \hspace{-2.13387pt}\rangle\) are equivalent, and so \(w \models \psi\).

Step. \({\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \ne \emptyset\). For every \(\chi \in C \cap {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\), we have \(\chi \prec \psi\) by definition of \({\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\), so \(w \models \chi\) by the induction hypothesis. Hence, \(w \models \bigwedge _{\chi \in C \cap {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }} \chi\), so \(C \cap {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \subseteq C_w \cap {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\). Since \(w \models \psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) by assumption, we get \(w \models \psi \langle \hspace{-2.13387pt}\langle C_w \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) by property (iv). Further, by property (iii), we have \(w \models \psi \langle \hspace{-2.13387pt}\langle C_w \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) iff \(w \models \psi\). So \(w \models \psi\).

By the claim, we have \(w \models \bigwedge _{\psi \in C} \psi\) and so \(C \subseteq C_w\). It follows \(w \models \varphi \langle C_w \!\mid \! B \rangle\) by property (ii). By property (i), we have \(w \models \varphi\) iff \(w \models \varphi \langle C_w \!\mid \! B \rangle\), and so \(w \models \varphi\).

Remark 4.7.

The Weak Contextual Equivalence Lemma is a corollary of the Contextual Equivalence Lemma. Indeed, the weak statement is obtained by choosing \(\prec\) as the empty order (no two basis formulas are ordered), which is trivially well founded. This implies \({\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } = \emptyset\) and, by lemma 4.2, we are forced to take \(\psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle = \psi \langle \hspace{-2.13387pt}\langle C \!\mid \! \emptyset \rangle \hspace{-2.13387pt}\rangle = \psi\) for any \(\psi \in B\) and context \(C\subseteq \emptyset\).

In the rest of the section, we prove the Normalization Theorem by instantiating the Contextual Equivalence Lemma as follows:

In Section 4.2, we define a well-founded basis \((B,\prec)\) for a given formula \(\varphi\). Loosely speaking, B contains formulas of the form \({\mathbf {G}}{\mathbf {F}}\psi\) and \({\mathbf {F}}{\mathbf {G}}\psi\) for certain subformulas \(\psi\) of \(\varphi\). Further, \(\prec\) is induced by the subformula order: given basis formulas \(\mathbin {op}(\psi)\) and \(\mathbin {op}^{\prime }(\psi ^{\prime })\), where \(\mathbin {op}, \mathbin {op}^{\prime } \in \lbrace {\mathbf {G}}{\mathbf {F}}, {\mathbf {F}}{\mathbf {G}}\rbrace\), we say \(\mathbin {op}(\psi) \prec \mathbin {op}^{\prime }(\psi ^{\prime })\) if \(\psi\) is a proper subformula of \(\psi ^{\prime }\).

In Section 4.3, we define formulas \(({\mathbf {F}}{\mathbf {G}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) and \(({\mathbf {G}}{\mathbf {F}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) of \(\Delta _2\) for all basis formulas \({\mathbf {F}}{\mathbf {G}}\psi , {\mathbf {G}}{\mathbf {F}}\psi \in B\), and for every \(C \subseteq B\). We prove that these formulas satisfy conditions (iii) and (iv) of the Contextual Equivalence Lemma.

In Section 4.3.2, we define a formula \(\varphi \langle C \!\mid \! B \rangle \in \Delta _2\) for every \(C \subseteq B\), and prove that it satisfies conditions (i) and (ii) of the Contextual Equivalence Lemma.

The Contextual Equivalence Lemma yields that \(\varphi\) is equivalent to \(\bigvee _{C\subseteq B} \big (\varphi \langle C \!\mid \! B \rangle \wedge \bigwedge _{\psi \in C} \psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle \big)\), a Boolean combination of formulas of \(\Delta _2\). Since \(\Delta _2\) is closed under Boolean combinations, we obtain a contextual normalization procedure.

4.2 Contextual Normalization I: The Well-Founded Basis (B, ≺)

In our introductory example at the beginning of Section 4.1, we normalize the formula \({\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {U}}b)\) with the help of a case distinction: for words satisfying \({\mathbf {G}}{\mathbf {F}}b,\) the formula is equivalent to \({\mathbf {ff}}\), and for words that do not satisfy \({\mathbf {G}}{\mathbf {F}}b,\) the formula is equivalent to \({\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {U}}b)\). This holds because b is the right child of the until operator; indeed, the case distinction with \({\mathbf {G}}{\mathbf {F}}a\) does not work. Similarly, we normalize the formula \({\mathbf {G}}{\mathbf {F}}(a \mathbin {\mathbf {W}}b)\) by a case distinction on \({\mathbf {F}}{\mathbf {G}}a\), and we succeed because a is the left child of the weak until. This motivates the following definition of a well-founded basis for a given formula.

Definition 4.8.

Let \(\varphi\) be a formula, and let \({\it sf}\,(\varphi)\) denote the set of subformulas of \(\varphi\). We define \(B := B_{{\mathbf {G}}{\mathbf {F}}}\cup B_{{\mathbf {F}}{\mathbf {G}}}\), where \(B_{{\mathbf {G}}{\mathbf {F}}}:= \lbrace {\mathbf {G}}{\mathbf {F}}\psi \mid \exists \chi . ~ \chi \mathbin {\mathbf {U}}\psi \in {\it sf}\,(\varphi) \vee \psi \mathbin {\mathbf {M}}\chi \in {\it sf}\,(\varphi) \rbrace\) and \(B_{{\mathbf {F}}{\mathbf {G}}}:= \lbrace {\mathbf {F}}{\mathbf {G}}\psi \mid \exists \chi . ~ \psi \mathbin {\mathbf {W}}\chi \in {\it sf}\,(\varphi) \vee \chi \mathbin {\mathbf {R}}\psi \in {\it sf}\,(\varphi) \rbrace\). Further, we define a well-founded partial order \((\prec) \subseteq B \times B\) as follows: for every \(\mathbin {op}, \mathbin {op}^{\prime } \in \lbrace {\mathbf {G}}{\mathbf {F}}, {\mathbf {F}}{\mathbf {G}}\rbrace\), \(\mathbin {op}(\psi) \prec \mathbin {op}^{\prime }(\psi ^{\prime })\) iff \(\psi \in {\it sf}\,(\psi ^{\prime })\).

Example 4.9.

Consider the formula \(\varphi = ((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {U}}c) \mathbin {\mathbf {W}}d\). We have \(B_{{\mathbf {G}}{\mathbf {F}}}= \lbrace {\mathbf {G}}{\mathbf {F}}c \rbrace\), \(B_{{\mathbf {F}}{\mathbf {G}}}= \lbrace {\mathbf {F}}{\mathbf {G}}((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {U}}c)), {\mathbf {F}}{\mathbf {G}}a \rbrace\) and \(B = \lbrace {\mathbf {G}}{\mathbf {F}}c, {\mathbf {F}}{\mathbf {G}}((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {U}}c), {\mathbf {F}}{\mathbf {G}}a\rbrace\). Further, \({\mathbf {G}}{\mathbf {F}}c \prec {\mathbf {F}}{\mathbf {G}}((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {U}}c)\) and \({\mathbf {F}}{\mathbf {G}}a \prec {\mathbf {F}}{\mathbf {G}}((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {U}}c)\). Observe that the basis formula \({\mathbf {F}}{\mathbf {G}}((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {U}}c)\) is not in \(\Delta _2\).

4.3 Contextual Normalization II: The Formulas \(({\mathbf {F}}{\mathbf {G}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) and \(({\mathbf {G}}{\mathbf {F}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\)

For all basis formulas \({\mathbf {F}}{\mathbf {G}}\psi , {\mathbf {G}}{\mathbf {F}}\psi \in B\) and for all \(C \subseteq {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\), we define formulas \(({\mathbf {F}}{\mathbf {G}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) and \(({\mathbf {G}}{\mathbf {F}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) and prove that the definitions satisfies conditions (iii) and (iv) of the Contextual Equivalence Lemma. We define \(({\mathbf {F}}{\mathbf {G}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) and prove its properties in Section 4.3.1, and do the same for \(({\mathbf {G}}{\mathbf {F}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) in Section 4.3.2.

4.3.1 The Formula \({\mathbf {F}}{\mathbf {G}}\psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\).

Loosely speaking, we define \(({\mathbf {F}}{\mathbf {G}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) in two steps: first, we assign to \(\psi\) a formula \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\) of \(\Pi _1\), then set \(({\mathbf {F}}{\mathbf {G}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle := {\mathbf {F}}{\mathbf {G}}({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } })\). Since \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \in \Pi _1\), we have \(({\mathbf {F}}{\mathbf {G}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle \in \Delta _2\).

Definition 4.10.

Let \({\mathbf {F}}{\mathbf {G}}\psi \in B_{{\mathbf {F}}{\mathbf {G}}}\) be a formula, and let \(C\subseteq {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\). Further, let \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\) be the formula inductively defined as follows. If \(\psi = {\mathbf {t\hspace{-0.5pt}t}}, {\mathbf {ff}}, a, \lnot a,\) then \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } := \psi\). For the operators \(\vee\), \(\wedge\), \({\mathbf {X}}\), \(\mathbin {\mathbf {W}}\), and \(\mathbin {\mathbf {R}}\), the formula \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\) is defined homomorphically.1 For the operators \(\mathbin {\mathbf {U}}\) and \(\mathbin {\mathbf {M}}\), we set \(\begin{align*} { {(\psi _1 \mathbin {\mathbf {U}}\psi _2)}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } &:= {\left\lbrace \begin{array}{ll} { {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \mathbin {\mathbf {W}}{ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\hphantom{\mathbin {\mathbf {R}}} & \mbox{if ${\mathbf {G}}{\mathbf {F}}\psi _2 \in C$} \\ {\mathbf {ff}}& \mbox{otherwise,} \end{array}\right.} \\ { {(\psi _1 \mathbin {\mathbf {M}}\psi _2)}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } &:= {\left\lbrace \begin{array}{ll} { {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \mathbin {\mathbf {R}}{ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \hphantom{\mathbin {\mathbf {W}}} & \mbox{if ${\mathbf {G}}{\mathbf {F}}\psi _1 \in C$} \\ {\mathbf {ff}}& \mbox{otherwise.}\end{array}\right.} \end{align*}\) We define \(({\mathbf {F}}{\mathbf {G}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle := {\mathbf {F}}{\mathbf {G}}({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } })\).

Loosely speaking, in \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } },\) all occurrences of \(\mathbin {\mathbf {U}}\) in \(\psi\) are either changed into \(\mathbin {\mathbf {W}}\) or removed. Therefore, \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\) does not contain any occurrence of \(\mathbin {\mathbf {U}}\) anymore. The same happens with \(\mathbin {\mathbf {M}}\). So \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\) is a formula of \(\Pi _1\), and \(({\mathbf {F}}{\mathbf {G}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) is a formula of \(\Delta _2\).

Example 4.11.

Consider the basis formula \({\mathbf {F}}{\mathbf {G}}\psi = {\mathbf {F}}{\mathbf {G}}((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {U}}c)\) of example 4.9. We have \({\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } = \lbrace {\mathbf {G}}{\mathbf {F}}c, {\mathbf {F}}{\mathbf {G}}a\rbrace\). For \(C:= \lbrace {\mathbf {G}}{\mathbf {F}}c \rbrace\) and \(C:= \lbrace {\mathbf {G}}{\mathbf {F}}c, {\mathbf {F}}{\mathbf {G}}a\rbrace ,\) we get \(({\mathbf {F}}{\mathbf {G}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle = {\mathbf {F}}{\mathbf {G}}((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {W}}c)\). For \(C:= \emptyset\) and \(C:=\lbrace {\mathbf {F}}{\mathbf {G}}a \rbrace ,\) we get \(({\mathbf {F}}{\mathbf {G}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle = {\mathbf {F}}{\mathbf {G}}{\mathbf {ff}}\equiv {\mathbf {ff}}\).

We prove in proposition 4.14 in the following that \(({\mathbf {F}}{\mathbf {G}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) satisfies conditions (iii) and (iv) of the Contextual Equivalence Lemma. First we need a definition and a technical lemma.

Definition 4.12.

Let \(C\subseteq {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\) and \(w \in L_{C | {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }}\). The stabilization index of w with respect to C is the least index \(I \ge 0\) such that \(w_{I+j} \not\models \chi\) for every \(j \ge 0\) and every formula \({\mathbf {G}}{\mathbf {F}}\chi \in {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \setminus C\).

The stabilization index exists because, by the definition of \(L_{C | {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }}\), we have \(w \not\models {\mathbf {G}}{\mathbf {F}}\chi\) for every \({\mathbf {G}}{\mathbf {F}}\chi \in {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\setminus C\), and so there exists only finitely many suffixes of w that satisfy each \(\chi\). Since \({\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\) is finite, we can choose the stabilization index as the least index i such that no suffix \(w_{i+j}\) satisfies \(\chi\) for any \({\mathbf {G}}{\mathbf {F}}\chi \in {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \setminus C\). The following lemma explains the relation between \(\psi\) and \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\).

Lemma 4.13.

Let \(C\subseteq {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\), let \(w \in L_{C | {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }}\), and let I be the stabilization index of w with respect to C:

(1)

For every \(i \ge I, w_ {i} \models \psi \Rightarrow w_{i} \models { {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\).

(2)

For every \(i \ge 0, w_{i} \models { {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \Rightarrow w_ {i} \models \psi\).

Proof.

(1) Fix an \(i \ge I\) such that \(w_i \models \psi\). We prove \(w_{i} \models { {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\) by structural induction on \(\psi\). If \(\psi = {\mathbf {t\hspace{-0.5pt}t}}, {\mathbf {ff}}, a, \overline{a}\), then \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }= \psi\), and we are done. For all cases defined homomorphically, the result follows immediately from the induction hypothesis. Assume now \(\psi = \psi _1 \mathbin {\mathbf {U}}\psi _2\). We claim \({\mathbf {G}}{\mathbf {F}}\psi _2 \in C\). Observe first that, by the definition of the basis, we have \({\mathbf {G}}{\mathbf {F}}\psi _2 \in {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\). Assume that \({\mathbf {G}}{\mathbf {F}}\psi _2 \notin C\). Then, since \(w \in L_{C | {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }}\) and \(i \ge I\), we have \(w_{i+j} \not\models \psi _2\) for every \(j \ge 0\), which implies \(w_i \not\models \psi _1 \mathbin {\mathbf {U}}\psi _2\) by the semantics of LTL. But this contradicts the assumption \(w_i \models \psi\), and the claim is proved. Now we proceed as follows: \(\begin{equation*} \begin{array}{rcll} w_{i}\models \psi _1 \mathbin {\mathbf {U}}\psi _2 & \Rightarrow & w_{i}\models \psi _1 \mathbin {\mathbf {W}}\psi _2 & \text{(semantics of LTL)}\\ & \iff & \forall j. \, (w_{i+j} \models \psi _1 \vee \exists k \le j.\, w_{i+k} \models \psi _2) & \text{(semantics of LTL)} \\ & \Rightarrow & \forall j. \, (w_{i+j} \models { {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \vee \exists k \le j.\, w_{i+k} \models { {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }) & \text{(induction hypothesis)} \\ & \Rightarrow & w_{i} \models ({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }) \mathbin {\mathbf {W}}({ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }) & \text{(semantics of LTL)} \\ & \iff & w_{i} \models { {(\psi _1 \mathbin {\mathbf {U}}\psi _2)}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } & \text{(definition of ${ { }{\langle \hspace{-2.13387pt}\langle {}\rangle \hspace{-2.13387pt}\rangle } }$ and claim).} \end{array} \end{equation*}\)

Finally, assume \(\psi = \psi _1 \mathbin {\mathbf {M}}\psi _2\). Using \(\psi _1 \mathbin {\mathbf {M}}\psi _2 \equiv \psi _1 \mathbin {\mathbf {U}}(\psi _1 \wedge \psi _2)\), \(\psi _1 \mathbin {\mathbf {R}}\psi _2 \equiv \psi _1 \mathbin {\mathbf {W}}(\psi _1 \wedge \psi _2)\), and the previous case, we get \(\begin{align*} w_{i}\models \psi _1 \mathbin {\mathbf {M}}\psi _2 & \iff w_{i}\models \psi _1 \mathbin {\mathbf {U}}(\psi _1 \wedge \psi _2) \Rightarrow w_{i} \models { {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \mathbin {\mathbf {W}}({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \wedge { {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }) \\ & \iff w_{i} \models { {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \mathbin {\mathbf {R}}{ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \iff w_{i} \models { {(\psi _1 \mathbin {\mathbf {M}}\psi _2)}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }. \end{align*}\)

(2) Fix an \(i \ge 0\) such that \(w_i \models { {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\). We prove \(w_ {i} \models \psi\) by structural induction on \(\psi\). All cases but \(\psi = \psi _1 \mathbin {\mathbf {U}}\psi _2\) are proved as in (1). Assume now \(\varphi = \psi _1 \mathbin {\mathbf {U}}\psi _2\). By the definition of the basis, we have \({\mathbf {G}}{\mathbf {F}}\psi _2 \in {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\). We claim \({\mathbf {G}}{\mathbf {F}}\psi _2 \in C\). Assume the contrary. Then, by the definition of \({ {}{\langle \hspace{-2.13387pt}\langle {}\rangle \hspace{-2.13387pt}\rangle } },\) we have \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } = {\mathbf {ff}}\), contradicting that \(w_i \models { {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\), and the claim is proved. Since \({\mathbf {G}}{\mathbf {F}}\psi _2 \in C\) and \(w \in L_{C | {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }}\), we have \(w \models {\mathbf {G}}{\mathbf {F}}\psi _2\). We show \(w_i \models \psi _1 \mathbin {\mathbf {U}}\psi _2\): \(\begin{equation*} \begin{array}{rcll} w_i \models { {(\psi _1 \mathbin {\mathbf {U}}\psi _2)}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } & \iff & w_i \models ({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }) \mathbin {\mathbf {W}}({ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }) & \text{(definition of ${ { }{\langle \hspace{-2.13387pt}\langle {}\rangle \hspace{-2.13387pt}\rangle } }$ and claim)}\\ & \iff & \forall j. \, w_{i+j} \models { {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \vee \exists k \le j.\, w_{i+k} \models { {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } & \text{(semantics of LTL)}\\ & \Rightarrow & \forall j. \, w_{i+j} \models \psi _1 \vee \exists k \le j.\, w_{i+k} \models \psi _2 & \text{(induction hypothesis)} \\ & \iff & w_i \models \psi _1 \mathbin {\mathbf {W}}\psi _2 & \text{(semantics of LTL)}\\ & \iff & w_i \models \psi _1 \mathbin {\mathbf {U}}\psi _2 & \text{(because $w_i \models {\mathbf {G}}{\mathbf {F}}\psi _2$).} \end{array} \end{equation*}\)

The case \(\psi = \psi _1 \mathbin {\mathbf {M}}\psi _2\) is proved as in (1). □

Proposition 4.14.

Let \({\mathbf {F}}{\mathbf {G}}\psi\) be a basis formula. For every \(C \subseteq {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\), the formula \({\mathbf {F}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\) belongs to \(\Delta _2\). Further, \({\mathbf {F}}{\mathbf {G}}\psi\) and \({\mathbf {F}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\) are equivalent under context \(\langle {C} \!\mid \! {{\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }} \rangle\). Finally, if \(C\subseteq C^{\prime },\) then \({\mathbf {F}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right) \models {\mathbf {F}}{\mathbf {G}}\big ({ {\psi }{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } }\big)\).

Proof.

Fix \(C \subseteq {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\). We prove the three parts of the proposition separately. (1) The formula \({\mathbf {F}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\) belongs to \(\Delta _2\). Follows immediately from \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \in \Pi _1\). (2) \({\mathbf {F}}{\mathbf {G}}\psi\) and \({\mathbf {F}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\) are equivalent with respect to \(\langle {C} \!\mid \! {{\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }} \rangle\). If \(L_{C | {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }} = \emptyset\), both formulas are trivially equivalent, so let \(w \in L_{C | {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }}\). Let I be the stabilization index of w with respect to C. By lemma 4.13, for every \(i \ge 0\) we have \(w_{i+I} \models \psi\) iff \(w_{i+I} \models { {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\). So, in particular, \(w \models {\mathbf {F}}{\mathbf {G}}\psi\) iff \(w \models {\mathbf {F}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\). (3) If \(C\subseteq C^{\prime },\) then \({\mathbf {F}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right) \models {\mathbf {F}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } }\right)\). Assume \(C\subseteq C^{\prime }\). By the monotonicity of \({\mathbf {F}}\) and \({\mathbf {G}}\), it suffices to prove \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \models { {\psi }{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } }\). We proceed by structural induction on \(\psi\). The cases \(\psi = {\mathbf {t\hspace{-0.5pt}t}}, {\mathbf {ff}}, a, \overline{a}\) are trivial. We now consider the case \(\psi = \psi _1 \mathbin {\mathbf {W}}\psi _2\), as a representative of the cases where \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\) is defined homomorphically. We have \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } = { {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \mathbin {\mathbf {W}}{ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\) and \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } } = { {\psi _1}{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } } \mathbin {\mathbf {W}}{ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } }\) (definition of \({ {}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\)). So it suffices to show \({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \mathbin {\mathbf {W}}{ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \models { {\psi _1}{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } } \mathbin {\mathbf {W}}{ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } }\). But this follows immediately from \({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \models { {\psi _1}{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } }\) and \({ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \models { {\psi _2}{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } }\) (the induction hypothesis), and the monotonicity of \(\mathbin {\mathbf {W}}\). Finally, we consider the two remaining cases.

Case \(\psi = \psi _1 \mathbin {\mathbf {U}}\psi _2\). We have \({\mathbf {G}}{\mathbf {F}}\psi _2 \in {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\) (definition of \({\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\)). If \({\mathbf {G}}{\mathbf {F}}\psi _2 \notin C\), then \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } = {\mathbf {ff}}\) (definition of \({ {}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\)), which implies \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \models { {\psi }{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } }\), and we are done. If \({\mathbf {G}}{\mathbf {F}}\psi _2 \in C\), then \({\mathbf {G}}{\mathbf {F}}\psi _2 \in C^{\prime }\) (\(C\subseteq C^{\prime }\)), and so we have \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } = { {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \mathbin {\mathbf {W}}{ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\) and \({ {\psi }{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } } = { {\psi _1}{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } } \mathbin {\mathbf {W}}{ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } }\) (definition of \({ {}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\)). Proceed now as in the previous case.

Case \(\psi = \psi _1 \mathbin {\mathbf {M}}\psi _2\). We have \({\mathbf {G}}{\mathbf {F}}\psi _1 \in {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\) (definition of \({\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\)). If \({\mathbf {G}}{\mathbf {F}}\psi _1 \notin C\), then we proceed as for \(\varphi = \psi _1 \mathbin {\mathbf {U}}\psi _2\). If \({\mathbf {G}}{\mathbf {F}}\psi _1 \in C\), then \({\mathbf {G}}{\mathbf {F}}\psi _1 \in C^{\prime }\) (\(C\subseteq C^{\prime }\)). Proceed as in the previous case, replacing \(\mathbin {\mathbf {W}}\) by \(\mathbin {\mathbf {R}}\). □

4.3.2 The Formula \({\mathbf {G}}{\mathbf {F}}\psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\).

We define the formula \(({\mathbf {G}}{\mathbf {F}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) and prove that it satisfies conditions (iii) and (iv) of the Contextual Equivalence Lemma. We use the duality between \({\mathbf {F}}{\mathbf {G}}\) and \({\mathbf {G}}{\mathbf {F}}\). Recall from Section 2.1 that the dual \(\overline{\varphi }\) of a formula \(\varphi\) in negation normal form replaces \(\mathbin {\mathbf {U}}\) by \(\mathbin {\mathbf {R}}\), \(\mathbin {\mathbf {W}}\) by \(\mathbin {\mathbf {M}}\), and vice versa. In particular, we have \(\overline{{\mathbf {F}}{\mathbf {G}}\varphi } = {\mathbf {G}}{\mathbf {F}}\, \overline{\varphi }\) and \(\overline{{\mathbf {G}}{\mathbf {F}}\varphi } = {\mathbf {F}}{\mathbf {G}}\, \overline{\varphi }\), \(\overline{\Pi _1} = \Sigma _1\), and \(\overline{\Delta _2} = \Delta _2\) by Proposition 3.3. Moreover, by lemma 4.2(4), two formulas are equivalent under context \(\langle {C_d} \!\mid \! {\overline{B}} \rangle\) iff they are equivalent under the dual context \(\langle {C} \!\mid \! {B} \rangle\). This is all we need.

Definition 4.15.

Let \({\mathbf {G}}{\mathbf {F}}\psi \in B,\) and let \(C\subseteq {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\). We define \({ {\psi }⟦ {C}⟧ } := \overline{{ {\overline{\psi }}{\langle \hspace{-2.13387pt}\langle {C_d}\rangle \hspace{-2.13387pt}\rangle } }}\) and \(({\mathbf {G}}{\mathbf {F}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle := {\mathbf {G}}{\mathbf {F}}({ {\psi }⟦ {C}⟧ })\).

Since \({ {\overline{\psi }}{\langle \hspace{-2.13387pt}\langle {C_d}\rangle \hspace{-2.13387pt}\rangle } } \in \Pi _1\), we have \({ {\psi }⟦ {C}⟧ } \in \overline{\Pi _1} = \Sigma _1\). We now prove the counterpart of proposition 4.14.

Proposition 4.16.

Let \({\mathbf {G}}{\mathbf {F}}\,\psi\) be a basis formula. For every \(C\subseteq {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\), the formula \({\mathbf {G}}{\mathbf {F}}\left({ {\psi }⟦ {C}⟧ }\right)\) belongs to \(\Delta _2\). Further, \({\mathbf {G}}{\mathbf {F}}\, \psi\) and \({\mathbf {G}}{\mathbf {F}}\left({ {\psi }⟦ {C}⟧ }\right)\) are equivalent under context \(\langle {C} \!\mid \! {{\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }} \rangle\). Finally, if \(C\subseteq C^{\prime },\) then \({\mathbf {G}}{\mathbf {F}}\left({ {\psi }⟦ {C}⟧ }\right) \models {\mathbf {G}}{\mathbf {F}}\big ({ {\psi }⟦ {C^{\prime }}⟧ }\big)\).

Proof.

Each of the three statements follows by duality from proposition 4.14. Given any formula \({\mathbf {G}}{\mathbf {F}}\psi\) and any two sets \(C, C^{\prime } \subseteq {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\), we instantiate proposition 4.14 with \(\overline{{\mathbf {G}}{\mathbf {F}}\psi }\), \(C_d\), and \(C_d^{\prime }\). For the first statement, we have \({\mathbf {G}}{\mathbf {F}}({ {\psi }⟦ {C}⟧ }) = \overline{{\mathbf {F}}{\mathbf {G}}({ {\overline{\psi }}{\langle \hspace{-2.13387pt}\langle {C_d}\rangle \hspace{-2.13387pt}\rangle } })} \in \overline{\Delta _2} = \Delta _2\). Let us now prove that \({\mathbf {G}}{\mathbf {F}}\, \psi\) and \({\mathbf {G}}{\mathbf {F}}\left({ {\psi }⟦ {C}⟧ }\right)\) are equivalent under context \(\langle {C} \!\mid \! {{\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }} \rangle\). We have \({\mathbf {G}}{\mathbf {F}}\psi = \overline{{\mathbf {F}}{\mathbf {G}}\overline{\psi }}\) and \({\mathbf {G}}{\mathbf {F}}({ {\psi }⟦ {C}⟧ }) = \overline{{\mathbf {F}}{\mathbf {G}}({ {\overline{\psi }}{\langle \hspace{-2.13387pt}\langle {C_d}\rangle \hspace{-2.13387pt}\rangle } })}\) by definition. So it suffices to show that \({\mathbf {F}}{\mathbf {G}}\overline{\psi }\) and \({\mathbf {F}}{\mathbf {G}}({ {\overline{\psi }}{\langle \hspace{-2.13387pt}\langle {C_d}\rangle \hspace{-2.13387pt}\rangle } })\) are equivalent under \(\langle {C} \!\mid \! {{\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }} \rangle\), and, by lemma 4.2(4), that they are equivalent under context \(\langle {C_d} \!\mid \! {{\overline{\psi }}\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }} \rangle\). But this follows from proposition 4.16. Finally, let \(C \subseteq C^{\prime }\). We show \({\mathbf {G}}{\mathbf {F}}\left({ {\psi }⟦ {C}⟧ }\right) \models {\mathbf {G}}{\mathbf {F}}\big ({ {\psi }⟦ {C^{\prime }}⟧ }\big)\). Since \(C \subseteq C^{\prime }\), we have \(C_d^{\prime } \subseteq C_d\) and so \(\lnot \, \mathbf {G\hspace{-0.85355pt}F}({ {\psi }⟦ {C_d^{\prime }}⟧ }) \equiv \mathbf {F\hspace{-0.85355pt}G}({ {\overline{\psi }}{\langle \hspace{-2.13387pt}\langle {C^{\prime }_d}\rangle \hspace{-2.13387pt}\rangle } }) \models \mathbf {F\hspace{-0.85355pt}G}({ {\overline{\psi }}{\langle \hspace{-2.13387pt}\langle {C_d}\rangle \hspace{-2.13387pt}\rangle } }) \equiv \overline{\mathbf {G\hspace{-0.85355pt}F}({ {\psi }⟦ {C_d}⟧ })} \equiv \lnot {\mathbf {G}}{\mathbf {F}}({ {\psi }⟦ {C_d}⟧ })\), where the \(\models\)-step applies proposition 4.14. By modus tollens, we are done. □

4.4 Contextual Normalization III: The Formula \(\varphi \langle C \!\mid \! B \rangle\)

We search for a formula \(\varphi \langle C \!\mid \! B \rangle\) that satisfies conditions (i) and (ii) of the Contextual Equivalence Lemma, and belongs to \(\Delta _2\). lemma 4.17 gives such a formula for the case in which \(\varphi ={\mathbf {G}}\psi\) for some formula \(\psi\). Let us first explain the idea. By the equivalence \({\mathbf {G}}\psi \equiv \psi \mathbin {\mathbf {U}}{\mathbf {G}}\psi\), given a word w and \(C \subseteq B\), the following is true for every index \(j \ge 0\): \(w \models \psi \mathbin {\mathbf {U}}{\mathbf {G}}\psi\) iff \(w_i \models \psi\) for every \(i \le j\) and \(w_j \models {\mathbf {G}}\psi\). Observe that the form of this statement is already close to condition (i) of the Contextual Equivalence Lemma. The final trick is to choose j as the stabilization index I of w with respect to C. Applying Lemma 4.13, we obtain that \({\mathbf {G}}\psi\) is equivalent to \(\psi \mathbin {\mathbf {U}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\) under context \(\langle {C} \!\mid \! {B} \rangle\), and also to \(\left({\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\right)\mathbin {\mathbf {R}}\psi\).

Lemma 4.17.

If \(\varphi = {\mathbf {G}}\psi\), then for every \(C\subseteq B\) the formulas \({\mathbf {G}}\psi\), \(\psi \mathbin {\mathbf {U}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\), and \({\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\mathbin {\mathbf {R}}\psi\) are equivalent under context \(\langle {C} \!\mid \! {B} \rangle\).

Proof.

By lemma 4.2(3), it suffices to show that they are equivalent under context \(\langle {C} \!\mid \! {B_{{\mathbf {G}}{\mathbf {F}}}} \rangle\) since \(B_{{\mathbf {G}}{\mathbf {F}}}\subseteq B\). We prove \(w \models {\mathbf {G}}\psi\) iff \(w \models \psi \mathbin {\mathbf {U}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\) iff \(w \models {\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\mathbin {\mathbf {R}}\psi\) for every \(w \in L_{C | B_{{\mathbf {G}}{\mathbf {F}}}}\). So fix an arbitrary \(w \in L_{C | B_{{\mathbf {G}}{\mathbf {F}}}}\).

(\(\Rightarrow\)) Assume \(w \models {\mathbf {G}}\psi\). Then, in particular, we have \(w \models {\mathbf {F}}{\mathbf {G}}\psi\). By lemma 4.13, \((w_i \models \psi \Leftrightarrow { {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } })\) holds for every i beyond the stabilization index of w with respect to C. So, in particular, we have \(w \models {\mathbf {F}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\). It follows that \(w \models {\mathbf {G}}\psi \wedge {\mathbf {F}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right),\) which, by the semantics of LTL, implies \(w \models \psi \mathbin {\mathbf {U}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\) and \(w \models {\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right) \mathbin {\mathbf {R}}\psi\).

(\(\Leftarrow\)) Assume \(w \models \psi \mathbin {\mathbf {U}}{\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\). By the semantics of LTL, there exists \(i \ge 0\) such that \(w_j \models \psi\) for every \(j \lt i\) and \(w_j \models { {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\) for every \(j \ge i\). By lemma 4.13, since \(w \in L_{C | B_{{\mathbf {G}}{\mathbf {F}}}}\), we have \(w_j \models \psi\) for every \(j \ge i\). So \(w_j \models \psi\) holds for every \(j \ge 0\), and so \(w \models {\mathbf {G}}\psi\). For \({\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\mathbin {\mathbf {R}}\psi \equiv {\mathbf {G}}\left({ {\psi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\mathbin {\mathbf {M}}\psi \vee {\mathbf {G}}\psi\), either \({\mathbf {G}}\psi\) holds and we are already done or we can apply the previous argument with only \(j \le i\) instead of \(j \lt i\). □

It is easy to extend Lemma 4.17 to all \(\mathbin {\mathbf {W}}\)- and \(\mathbin {\mathbf {R}}\)-formulas.

Proposition 4.18.

Let \(\psi _1\) and \(\psi _2\) be formulas:

(1)

For every \(C\subseteq B_{{\mathbf {G}}{\mathbf {F}}}\), the formulas \(\psi _1 \mathbin {\mathbf {W}}\psi _2\) and \(\psi _1 \mathbin {\mathbf {U}}\left(\psi _2 \vee {\mathbf {G}}\left({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\right)\) are equivalent under context C.

(2)

For every \(C\subseteq B_{{\mathbf {G}}{\mathbf {F}}}\), the formulas \(\psi _1 \mathbin {\mathbf {R}}\psi _2\) and \(\left(\psi _1 \vee {\mathbf {G}}\left({ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\right) \mathbin {\mathbf {M}}\psi _2\) are equivalent under context C.

Proof.

We only prove the first case. If \(L_{C | B_{{\mathbf {G}}{\mathbf {F}}}} = \emptyset\), the proposition trivially holds. Let \(w \in L_{C | B_{{\mathbf {G}}{\mathbf {F}}}}\).

(\(\Rightarrow\)) Assume \(w \models \psi _1 \mathbin {\mathbf {W}}\psi _2\), and consider two cases. If \(w \models {\mathbf {G}}\psi _1\), then \(w \models \psi _1 \mathbin {\mathbf {U}}{\mathbf {G}}({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } })\) (lemma 4.17), and so \(w \models \psi _1 \,\, \mathbin {\mathbf {U}}\,\, \left(\psi _2 \vee {\mathbf {G}}\left({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\right)\). If \(w \not\models {\mathbf {G}}\psi _1\), then we have \(w \models \psi _1 \mathbin {\mathbf {W}}\psi _2\) iff \(w \models \psi _1 \mathbin {\mathbf {U}}\psi _2\) by the semantics of LTL, and then \(w \models \psi _1 \mathbin {\mathbf {U}}\psi _2\) implies \(w \models \psi _1 \mathbin {\mathbf {U}}\left(\psi _2 \vee {\mathbf {G}}\left({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\right)\), also by the semantics of LTL.

(\(\Leftarrow\)) Assume \(w \models \psi _1 \mathbin {\mathbf {U}}\left(\psi _2 \vee {\mathbf {G}}\left({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\right)\). Then \(w \models \psi _1 \mathbin {\mathbf {U}}(\psi _2 \vee {\mathbf {G}}\psi _1)\) (Lemma 4.17, after distributing \(\mathbin {\mathbf {U}}\) over \(\vee\)), and since \(\psi _1 \mathbin {\mathbf {U}}(\psi _2 \vee {\mathbf {G}}\psi _1) \equiv \psi _1 \mathbin {\mathbf {W}}\psi _2,\) we are done. □

Proposition 4.18 suggests the following definition for the formula \({\varphi \langle C\rangle }\).

Definition 4.19.

For every \(C\subseteq B\), the formula \({\varphi \langle C\rangle }\) is inductively defined as follows. If \(\varphi = {\mathbf {t\hspace{-0.5pt}t}}, {\mathbf {ff}}, a, \overline{a}\), then \({\varphi \langle C\rangle } = \varphi\). For the operators \(\vee\), \(\wedge\), \({\mathbf {X}}\), \(\mathbin {\mathbf {U}}\), and \(\mathbin {\mathbf {M}}\), we define \({\varphi \langle C\rangle }\) homomorphically. Finally, \(\begin{align*} {(\psi _1 \mathbin {\mathbf {W}}\psi _2)\langle C\rangle } := {\psi _1\langle C\rangle } \mathbin {\mathbf {U}}\big ({\psi _2\langle C\rangle } \vee {\mathbf {G}}\left({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\big) \quad \mbox{ and } \quad {(\psi _1 \mathbin {\mathbf {R}}\psi _2)\langle C\rangle } = \left({\psi _1\langle C\rangle } \vee {\mathbf {G}}\big ({ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\big)\right) \mathbin {\mathbf {M}}{\psi _2\langle C\rangle } \ . \end{align*}\)

Example 4.20.

Let \(\varphi = ((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {U}}c) \mathbin {\mathbf {W}}d\) and \(C\subseteq B\). With \({ {((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {U}}c)}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } = (a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {W}}c,\) we get \(\begin{align*} {\varphi \langle C\rangle } & = {\big ((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {U}}c\big)\langle C\rangle } \, \mathbin {\mathbf {U}}\, \left(d \vee {\mathbf {G}}\big ((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {W}}c\big) \right) \\ & = \big ({(a \mathbin {\mathbf {W}}b)\langle C\rangle } \mathbin {\mathbf {U}}c \big) \, \mathbin {\mathbf {U}}\, \left(d \vee {\mathbf {G}}\big ((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {W}}c\big) \right) \\ & = \left(\big (a \mathbin {\mathbf {U}}(b \vee {\mathbf {G}}a) \big) \mathbin {\mathbf {U}}c \right) \, \mathbin {\mathbf {U}}\, \left(d \vee {\mathbf {G}}\big ((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {W}}c\big) \right). \end{align*}\)

We prove that setting \(\varphi \langle C \!\mid \! B \rangle := {\varphi \langle C\rangle }\) satisfies all conditions of the Contextual Equivalence Lemma.

Proposition 4.21.

Let \(\varphi\) be a formula. For every \(C\subseteq B\), the formula \({\varphi \langle C\rangle }\) belongs to \(\Sigma _2\). Further, \(\varphi\) and \({\varphi \langle C\rangle }\) are equivalent under context \(\langle {C} \!\mid \! {B} \rangle\). Finally, if \(C\subseteq C^{\prime },\) then \({\varphi \langle C\rangle } \models {\varphi \langle C^{\prime }\rangle }\).

Proof.

(1) The formula \({\varphi \langle C\rangle }\) belongs to \(\Sigma _2\). We show it by structural induction on \(\varphi\). The only non-trivial cases are \(\varphi = \varphi _1\mathbin {\mathbf {W}}\varphi _2\) and \(\varphi = \varphi _1\mathbin {\mathbf {R}}\varphi _2\). For either of the two cases, by the induction hypothesis, we have \({\varphi _k\langle C\rangle } \in \Sigma _2\) for \(k=1,2\). Further, since \({ {\varphi _k}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\in \Pi _1\), we have \({\mathbf {G}}\left({ {\varphi _k}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\in \Pi _1\) as well. So \({\varphi _1\langle C\rangle } \mathbin {\mathbf {U}}\big ({\varphi _2\langle C\rangle } \vee {\mathbf {G}}\left({ {\varphi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\big) \in \Sigma _2\) and \(\left({\varphi _1\langle C\rangle } \vee {\mathbf {G}}\big ({ {\varphi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\big)\right) \mathbin {\mathbf {M}}{\varphi _2\langle C\rangle } \in \Sigma _2\), and we are done.

(2) The formulas \(\varphi\) and \({\varphi \langle C\rangle }\) are equivalent under context \(\langle {C} \!\mid \! {B} \rangle\). By lemma 4.2(3), it suffices to show that \(\left(w \models \varphi \iff w \models {\varphi \langle C\rangle } \right)\) holds for every \(C \subseteq B_{{\mathbf {G}}{\mathbf {F}}}\) and for every \(w \in L_{C | B_{{\mathbf {G}}{\mathbf {F}}}}\). We proceed by structural induction on \(\varphi\). We use the identity \(\begin{align*} {\psi \langle C\rangle } = {\psi \langle C\cap B_{{\mathbf {G}}{\mathbf {F}}}\rangle }, \end{align*}\) which holds because the case distinctions in definition 4.10 only involve formulas \({\mathbf {G}}{\mathbf {F}}\chi\) such that \(\chi\) is a subformula of \(\psi\), and those formulas belong to \(B_{{\mathbf {G}}{\mathbf {F}}}\).

The base of the induction is \(\varphi \in \lbrace {\mathbf {t\hspace{-0.5pt}t}}, {\mathbf {ff}}, a, \lnot a\rbrace\). In all of these cases, we have \(\varphi = {\varphi \langle C\rangle }\) by definition, and we are done. All cases in which \({\varphi \langle C\rangle }\) is defined homomorphically are handled in the same way, and so we consider only the case \(\varphi = \psi _1 \mathbin {\mathbf {U}}\psi _2\). Fix \(C\subseteq B_{{\mathbf {G}}{\mathbf {F}}}\) and \(w \in L_{C | B_{{\mathbf {G}}{\mathbf {F}}}}\). We prove \(\left(w \models \varphi \iff w \models {\varphi \langle C\rangle } \right)\). Applying the induction hypothesis to \(\psi _1\) and \(\psi _2\), \(\psi _j\) and \({\psi _j\langle C\rangle }\) are equivalent under context \(\langle {C} \!\mid \! {B_{{\mathbf {G}}{\mathbf {F}}}} \rangle\). Moreover, \(w_i \in L_{C | B_{{\mathbf {G}}{\mathbf {F}}}}\) for all \(i \ge 0\) by the limit properties of \({\mathbf {G}}{\mathbf {F}}\)-subformulas, and this yields (2) \(\begin{align} \forall i. & (w_i \models \psi _j \iff w_i \models {\psi _j\langle C\rangle }) & \mbox{ for $j=1,2$.} \end{align}\) We get \(\begin{equation*} \begin{array}{lllll} w \models \psi _1 \mathbin {\mathbf {U}}\psi _2 & \iff & \exists k. ~ w_k \models \psi _2 \wedge (\forall \ell \lt k. ~ w_\ell \models \psi _1) & \mbox{(semantics of LTL)}\\ &\iff & \exists k. ~ w_k \models {\psi _2\langle C\rangle } \wedge (\forall \ell \lt k. ~ w_\ell \models {\psi _1\langle C\rangle }) & \mbox{(2)}\\ &\iff & w \models {\psi _1\langle C\rangle } \mathbin {\mathbf {U}}{\psi _2\langle C\rangle } & \mbox{(semantics of LTL)} \\ &\iff & w \models {(\psi _1 \mathbin {\mathbf {U}}\psi _2)\langle C\rangle } & \mbox{(definition of}\ {\langle \rangle }), \end{array} \end{equation*}\) which concludes the proof.

The remaining cases are \(\varphi = \psi _1 \mathbin {\mathbf {W}}\psi _2\) and \(\varphi = \psi _1 \mathbin {\mathbf {R}}\psi _2\). Fix \(C\subseteq B_{{\mathbf {G}}{\mathbf {F}}}\) and \(w \in L_{C | B_{{\mathbf {G}}{\mathbf {F}}}}\). By the induction hypothesis, (2) holds. We derive \(\begin{equation*} \begin{array}{rlll} w \models \psi _1 \mathbin {\mathbf {W}}\psi _2 &\iff & w \models \psi _1 \mathbin {\mathbf {U}}(\psi _2 \vee {\mathbf {G}}({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } })) & \text{(Proposition 4.18)} \\ &\iff & w \models \,\, {\psi _1\langle C\rangle } \mathbin {\mathbf {U}}({\psi _2\langle C\rangle } \vee {\mathbf {G}}({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } })) & \text{(2)} \\ &\iff & w \models \,\, {(\psi _1 \mathbin {\mathbf {W}}\psi _2)\langle C\rangle } & \mbox{(definition of}\ {\langle \rangle }). \end{array} \end{equation*}\) The case \(\varphi = \psi _1 \mathbin {\mathbf {R}}\psi _2\) is analogous.

(3) If \(C\subseteq C^{\prime },\) then \({\varphi \langle C\rangle } \models {\varphi \langle C^{\prime }\rangle }\). Follows from a straightforward structural induction, using \({ {\varphi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } } \models { {\varphi }{\langle \hspace{-2.13387pt}\langle {C^{\prime }}\rangle \hspace{-2.13387pt}\rangle } }\), and the monotonicity of all operators (recall that formulas are in negation normal form). □

4.5 Contextual Normalization IV: The Normalization Theorem

We insert Propositions 4.14, 4.16, and 4.21 into the Contextual Equivalence Lemma. This yields a closed expression for a formula of \(\Delta _2\) equivalent to a given formula. The normalized formula is exponentially larger than the original one.

Theorem 4.22 (Normalization Theorem).

Let \(\varphi\) be a formula of length n. We have \(\begin{equation*} \varphi \equiv \bigvee _{M \subseteq B_{{\mathbf {G}}{\mathbf {F}}}\\ N \subseteq B_{{\mathbf {F}}{\mathbf {G}}}} \left({\varphi \langle M\rangle } \wedge \bigwedge _{{\mathbf {F}}{\mathbf {G}}\psi \in N} {\mathbf {F}}{\mathbf {G}}({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }) \wedge \bigwedge _{{\mathbf {G}}{\mathbf {F}}\psi \in M} {\mathbf {G}}{\mathbf {F}}({ {\psi }⟦ {N}⟧ }) \right)\ . \end{equation*}\) Moreover, the right-hand-side formula is in \(\Delta _2\) and has length \(2^{O(n)}\).

Proof.

By the Contextual Equivalence Lemma, we have \(\begin{equation*} \varphi \equiv \bigvee _{C\subseteq B} \left(\varphi \langle C \!\mid \! B \rangle \wedge \bigwedge _{\psi \in C} \psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle \right) \end{equation*}\) for any well-founded basis \((B, \prec)\), formulas \(\varphi \langle C \!\mid \! B \rangle\) satisfying conditions (i) and (ii), and formulas \(\psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) satisfying conditions (iii) and (iv) of the lemma.

We choose \((B, \prec)\) as in Definition 4.1. We have \(B = B_{{\mathbf {G}}{\mathbf {F}}}\uplus B_{{\mathbf {F}}{\mathbf {G}}}\). For every \(C\subseteq B\), we split \(C= M \uplus N\), where \(M := C\cap B_{{\mathbf {G}}{\mathbf {F}}}\) and \(N := C\cap B_{{\mathbf {F}}{\mathbf {G}}}\). For every \({\mathbf {F}}{\mathbf {G}}\psi \in N\) (recall that N only contains \({\mathbf {F}}{\mathbf {G}}\)-formulas) and \(C\subseteq {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\), we define \(({\mathbf {F}}{\mathbf {G}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle := {\mathbf {F}}{\mathbf {G}}({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } })\), and for every \({\mathbf {G}}{\mathbf {F}}\psi \in M\) and \(C\subseteq {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\), we define \(({\mathbf {G}}{\mathbf {F}}\psi)\langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle := {\mathbf {G}}{\mathbf {F}}({ {\psi }⟦ {N}⟧ })\), as in Definitions 4.10 and 4.15. By Propositions 4.14 and 4.16, \(\psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle\) satisfies conditions (iii) and (iv) of the Contextual Equivalence Lemma for every \(\psi \in B\) and \(C\subseteq {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow }\). Finally, for every \(C\subseteq B,\) we define \(\varphi \langle C \!\mid \! B \rangle := {\varphi \langle C\rangle }\), as in definition 4.19. By proposition 4.21, \(\varphi \langle C \!\mid \! B \rangle\) satisfies conditions (i) and (ii) of the Contextual Equivalence Lemma. Applying the lemma, we obtain the following: \(\begin{align*} \varphi \equiv \bigvee _{C\subseteq B} \left(\varphi \langle C \!\mid \! B \rangle \wedge \bigwedge _{\psi \in C} \psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle \right)\,\, & \equiv \bigvee _{M \subseteq B_{{\mathbf {G}}{\mathbf {F}}}\\ N \subseteq B_{{\mathbf {F}}{\mathbf {G}}}} \left(\varphi \langle C \!\mid \! B \rangle \wedge \bigwedge _{\psi \in N} \psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle \wedge \bigwedge _{\psi \in M} \psi \langle \hspace{-2.13387pt}\langle C \!\mid \! {\psi }\mathchoice{\!\!\downarrow }{\!\!\downarrow }{\downarrow }{\downarrow } \rangle \hspace{-2.13387pt}\rangle \right) \\ & \equiv \bigvee _{M \subseteq B_{{\mathbf {G}}{\mathbf {F}}}\\ N \subseteq B_{{\mathbf {F}}{\mathbf {G}}}} \left({\varphi \langle M\rangle } \wedge \bigwedge _{{\mathbf {F}}{\mathbf {G}}\psi \in N} {\mathbf {F}}{\mathbf {G}}({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }) \wedge \bigwedge _{{\mathbf {G}}{\mathbf {F}}\psi \in M} {\mathbf {G}}{\mathbf {F}}({ {\psi }⟦ {N}⟧ })\right). \end{align*}\)

By Propositions 4.14, 4.16, and 4.21, the right-hand side is a Boolean combination of formulas of \(\Delta _2\), and so in \(\Delta _2\) itself. For the size, observe first that B contains at most n formulas, and so the right-hand side is a disjunction of at most \(2^{n}\) formulas. We bound the length of a disjunct. First we observe that \(|{\varphi \langle C\rangle }| \le O(n^2)\), which follows easily from Definition 4.19. (For the cases defined homomorphically, the proof is a direct application of the induction hypothesis; for the case \(\varphi = \psi _1 \mathbin {\mathbf {W}}\psi _2,\) we have \(|{\varphi \langle C\rangle }| \le |{\psi _1\langle C\rangle }| + |{\psi _2\langle C\rangle }| + |{ {\psi _2}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }| +2\), and the result follows from \(|{ {\psi _k}{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }| \le n\); the case \(\varphi = \psi _1 \mathbin {\mathbf {R}}\psi _2\) is analogous.) From the definition of \({ {\varphi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } },\) we immediately obtain \(|{\mathbf {F}}{\mathbf {G}}\left({ {\varphi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)| \le n\), and, since for every formula \(\psi\) we have \(|\psi | = |\overline{\psi }|\), the same holds for \({\mathbf {F}}{\mathbf {G}}\left({ {\varphi }{\langle \hspace{-2.13387pt}\langle {C}\rangle \hspace{-2.13387pt}\rangle } }\right)\). So each disjunct has length at most \(O(n^2)+ n \cdot n \in O(n^2)\). So we obtain \(2^n \cdot O(n^2) \in 2^{O(n)}\) for the final bound. □

Example 4.23.

Consider the formula \(\varphi = ((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {U}}c) \mathbin {\mathbf {W}}d\) of example 4.9. We have \(B_{{\mathbf {G}}{\mathbf {F}}}= \lbrace {\mathbf {G}}{\mathbf {F}}c \rbrace\) and \(B_{{\mathbf {F}}{\mathbf {G}}}= \lbrace {\mathbf {F}}{\mathbf {G}}((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {U}}c)), {\mathbf {F}}{\mathbf {G}}a \rbrace\). Let us compute the disjunct of the right-hand side of theorem 4.22 for \(M := \lbrace {\mathbf {G}}{\mathbf {F}}c\rbrace\) and \(N: = \lbrace {\mathbf {F}}{\mathbf {G}}((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {U}}c)), {\mathbf {F}}{\mathbf {G}}a\rbrace\). We have the following:

\({\varphi \langle M\rangle } = ((a \mathbin {\mathbf {U}}(b \vee {\mathbf {G}}a)) \mathbin {\mathbf {U}}c) \mathbin {\mathbf {U}}(d \vee {\mathbf {G}}((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {W}}c)) \in \Delta _2\), as shown in example 4.20.

\({\mathbf {F}}{\mathbf {G}}({ {((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {U}}c)}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }) = {\mathbf {F}}{\mathbf {G}}((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {W}}c) \in \Delta _2\), as shown in example 4.11, and \({\mathbf {F}}{\mathbf {G}}({ {a}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }) = {\mathbf {F}}{\mathbf {G}}a\).

\({\mathbf {G}}{\mathbf {F}}({ {c}⟦ {N}⟧ }) = {\mathbf {G}}{\mathbf {F}}c\).

So the disjunct is \(((a \mathbin {\mathbf {U}}(b \vee {\mathbf {G}}a)) \mathbin {\mathbf {U}}c) \mathbin {\mathbf {U}}(d \vee {\mathbf {G}}((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {W}}c)) \wedge {\mathbf {F}}{\mathbf {G}}((a \mathbin {\mathbf {W}}b) \mathbin {\mathbf {W}}c)) \wedge {\mathbf {F}}{\mathbf {G}}\, a \wedge {\mathbf {G}}{\mathbf {F}}\, c\).

We conclude with the following lemma that bounds the number of formulas in the normal form of theorem 4.22. It will be used later in section 6.3 to bound the size of some automata.

Lemma 4.24.

For any formula \(\varphi\), \(M\subseteq B_{{\mathbf {G}}{\mathbf {F}}}\), and \(N\subseteq B_{{\mathbf {F}}{\mathbf {G}}}\), let \(\varphi _{M,N}\) be the corresponding clause of the disjunction in theorem 4.22. Then \(|{\it sf}\,(\varphi _{M,N}) | \in O(|{\it sf}\,(\varphi)|)\).

Proof.

This follows from the following claims:

(1)

\(|\bigcup \lbrace {\it sf}\,({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }) : \psi \in {\it sf}\,(\varphi)\rbrace | \le |{\it sf}\,(\varphi)|\) and \(|\bigcup \lbrace {\it sf}\,({ {\psi }⟦ {N}⟧ }) : \psi \in {\it sf}\,(\varphi)\rbrace | \le |{\it sf}\,(\varphi)|\)

(2)

\(|{\it sf}\,({\varphi \langle M\rangle })| \le 4 |{\it sf}\,(\varphi)|.\)

To prove (1), observe that \({\it sf}\,({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }) \subseteq \lbrace { {\psi ^{\prime }}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } } \mid \psi ^{\prime } \in {\it sf}\,(\psi) \rbrace\). This can be proven by a straightforward induction, which is trivial for the cases where \({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }\) is defined homomorphically. For \(\psi = \psi _1 \mathbin {\mathbf {U}}\psi _2\), according to definition 4.10, either \({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } } = {\mathbf {ff}}\) or \({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } } = { {\psi _1}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } } \mathbin {\mathbf {W}}{ {\psi _2}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }\). Since \({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }\) is in the right-hand set by definition with \(\psi ^{\prime } = \psi\), it remains to consider the subformulas of \({ {\psi _k}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }\) for \(k=1,2\). However, by the induction hypothesis, for any \(\psi ^{\prime \prime } \in {\it sf}\,({ {\psi _k}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }),\) there is a \(\psi ^{\prime } \in {\it sf}\,(\psi _k) \subseteq {\it sf}\,(\psi)\) such that \(\psi ^{\prime \prime } = { {\psi ^{\prime }}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }\), and we are done. Using the just proven inclusion, we have \(\begin{equation*} {\textstyle \bigcup } \lbrace {\it sf}\,({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }) : \psi \in {\it sf}\,(\varphi)\rbrace \subseteq \lbrace { {\psi ^{\prime }}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } } : \psi ^{\prime } \in {\it sf}\,(\psi), \psi \in {\it sf}\,(\varphi) \rbrace = \lbrace { {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } } : \psi \in {\it sf}\,(\varphi) \rbrace , \end{equation*}\) and the cardinality of the latter set is clearly no more than \(|{\it sf}\,(\varphi)|\). The case of \({ {\psi }⟦ {N}⟧ }\) follows by duality.

For (2), we prove the stronger claim \(|{\it sf}\,({\psi \langle M\rangle }) \cup {\it sf}\,({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } })| \le 4 |{\it sf}\,(\psi)|\) by induction on \(\psi\). The base cases and those in which both \({\psi \langle M\rangle }\) and \({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }\) are defined homomorphically are straightforward. Let us show only the cases of \(\mathbin {\mathbf {U}}\) and \(\mathbin {\mathbf {W}}\), since \(\mathbin {\mathbf {M}}\) and \(\mathbin {\mathbf {R}}\) are completely analogous. For \(\psi = \psi _1 \mathbin {\mathbf {U}}\psi _2\), we have \({\psi \langle M\rangle } = {\psi _1\langle M\rangle } \mathbin {\mathbf {U}}{\psi _2\langle M\rangle }\) and either \({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } } = {\mathbf {ff}}\) or \({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } } = { {\psi _1}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } } \mathbin {\mathbf {W}}{ {\psi _2}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }\). In the first case, by the induction hypothesis, \(|{\it sf}\,({\psi _k\langle M\rangle })| \le |{\it sf}\,({\psi _k\langle M\rangle }) \cup {\it sf}\,({ {\psi _k}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } })| \le 4 |{\it sf}\,(\psi _k)|\) for \(k = 1,2\). The remaining subformulas in the left-hand side are only two, \({\mathbf {ff}}\) and \({\psi \langle M\rangle }\) itself, so they are at most \(4 |{\it sf}\,(\psi)|\). In the second case, \(\begin{equation*} {\it sf}\,({\psi \langle M\rangle }) \cup {\it sf}\,({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }) = ({\it sf}\,({\psi _1\langle M\rangle }) \cup {\it sf}\,({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } })) \cup ({\it sf}\,({\psi _2\langle M\rangle }) \cup {\it sf}\,({ {\psi _2}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } })) \cup \lbrace {\psi \langle M\rangle }, { {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }\rbrace , \end{equation*}\) so we have the bound \(4 |{\it sf}\,(\psi _1)| + 4 |{\it sf}\,(\psi _2)| + 2 \le 4 |{\it sf}\,(\psi)|\) by the induction hypothesis. For \(\psi = \psi _1 \mathbin {\mathbf {W}}\psi _2\), we have \({\psi \langle M\rangle } = {\psi _1\langle M\rangle } \mathbin {\mathbf {U}}({\psi _2\langle M\rangle } \vee {\mathbf {G}}({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }))\) and \({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } } = { {\psi _1}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } } \mathbin {\mathbf {W}}{ {\psi _2}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }\). The calculation above now holds after replacing the set \(\lbrace {\psi \langle M\rangle }, { {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }\rbrace\) at the end of the right-hand side by \(\lbrace {\psi \langle M\rangle }, { {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }, {\psi _2\langle M\rangle } \vee {\mathbf {G}}({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }), {\mathbf {G}}({ {\psi _1}{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }) \rbrace\), so we obtain the bound \(4 |{\it sf}\,(\psi _1)| + 4 |{\it sf}\,(\psi _2)| + 4 \le 4 |{\it sf}\,(\psi)|\). □

4.6 Evaluation

Our proof of the Normalization Theorem gives a good explanation of why the result holds. Roughly speaking, given a formula \(\varphi\), the set of all words can be partitioned into contexts such that within each context the formula is equivalent to a formula of \(\Sigma _2\) derived from \(\varphi\) by means of a very simple syntactic transformation. The procedure also provides a single exponential asymptotic upper bound for the length of the equivalent \(\Delta _2\)-formula. However, the proof does not yield a normalization procedure efficient in practice. Indeed, a procedure based on theorem 4.22 has exponential best-case complexity, since it requires to iterate over all subsets of \(B_{{\mathbf {G}}{\mathbf {F}}}\) and \(B_{{\mathbf {F}}{\mathbf {G}}}\). Additionally, the procedure works top-down, and so it is particularly bad for families of formulas where, loosely speaking, the double alternation occurs near the bottom of the syntax tree.

Example 4.25.

Consider the family of formulas \(\begin{equation*} \varphi _n = (\cdots ((((a_0 \mathbin {\mathbf {U}}a_1) \mathbin {\mathbf {W}}a_2) \mathbin {\mathbf {U}}a_3) \mathbin {\mathbf {U}}a_4) \cdots \mathbin {\mathbf {U}}a_n) \end{equation*}\) for \(n \ge 3\). The sets \(B_{{\mathbf {G}}{\mathbf {F}}}\) and \(B_{{\mathbf {F}}{\mathbf {G}}}\) have size \(n-1\) and 1, respectively. The normalization procedure based on the Normalization Theorem yields a disjunction of \(2^{n+1}\) formulas, and so it takes exponential time in n. However, reasoning as at the beginning of Section 4.1, when we proved \({\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {U}}b) \equiv ({\mathbf {G}}{\mathbf {F}}b \wedge {\mathbf {F}}{\mathbf {G}}(a \mathbin {\mathbf {W}}b))\), one can show that \(\varphi _n\) is equivalent to a \(\Delta _2\)-formula of length \(\Theta (n)\): \(\begin{equation*} \begin{array}{rcl} \varphi _n & \equiv & \left({\mathbf {G}}{\mathbf {F}}a_1 \wedge (\cdots (((a_0 \mathbin {\mathbf {U}}a_1) \mathbin {\mathbf {U}}(a_2 \vee {\mathbf {G}}(a_0 \vee a_1))) \mathbin {\mathbf {U}}a_3) \cdots \mathbin {\mathbf {U}}a_n\right) \\ & & \,\, \vee \,\, \left(\cdots (((a_0 \mathbin {\mathbf {U}}a_1) \mathbin {\mathbf {U}}a_2) \mathbin {\mathbf {U}}a_3) \cdots \mathbin {\mathbf {U}}a_n\right) \end{array} \end{equation*}\) Intuitively, to normalize \(\varphi _n,\) it suffices to solve the “local” problem caused by the subformula \(((a_0 \mathbin {\mathbf {U}}a_1) \mathbin {\mathbf {W}}a_2) \mathbin {\mathbf {U}}a_3\) of \(\varphi _n\), which is in \(\Sigma _3\); however, the procedure of Section 4 is blind to this fact and generates \(2^{n+1}\) formulas.

Skip 5A NORMALIZING REWRITE SYSTEM Section

5 A NORMALIZING REWRITE SYSTEM

We present a system of rewrite rules that allow us to normalize every LTL formula. As a corollary, we obtain an alternative proof of the Normalization Theorem. The normalization algorithms derived from the rewriting rules are more efficient than the ones presented in the previous section.

We first introduce a rewrite system for the fragment of the syntax without the operators \(\mathbin {\mathbf {R}}\) and \(\mathbin {\mathbf {M}}\). The reasons are purely expository. The restriction to this fragment makes the proofs shorter, and the extension to a rewrite system for the full syntax, presented in Section 5.6, is routine.

Remark 5.1.

Recall also that the fragment without the operators \(\mathbin {\mathbf {R}}\) and \(\mathbin {\mathbf {M}}\) is as expressive as the full syntax. Indeed, exhaustively applying the well-known equivalences \(\begin{equation*} \varphi _1 \mathbin {\mathbf {R}}\varphi _2 \equiv \varphi _1 \mathbin {\mathbf {W}}(\varphi _1 \wedge \varphi _2) \quad \text{and} \quad \varphi _1 \mathbin {\mathbf {M}}\varphi _2 \equiv \varphi _2 \mathbin {\mathbf {U}}(\varphi _1 \wedge \varphi _2) \end{equation*}\) to a formula yields an equivalent formula of the fragment. However, in the worst case, the formula of the fragment may be exponentially larger than the original one, and so eliminating the \(\mathbin {\mathbf {R}}\) and \(\mathbin {\mathbf {M}}\) operators and then applying the rewrite system for the fragment may be less efficient than a direct application of the rewrite system for the full syntax given in Section 5.6.

The key idea leading to the rewrite system is to treat the combinations \({\mathbf {G}}{\mathbf {F}}\) (infinitely often) and \({\mathbf {F}}{\mathbf {G}}\) (almost always) of temporal operators as atomic operators \(\mathbf {G\hspace{-0.85355pt}F}\) and \(\mathbf {F\hspace{-0.85355pt}G}\) (notice the typesetting with the two letters touching each other). We call them the limit operators; intuitively, whether a word satisfies a formula \(\mathbf {G\hspace{-0.85355pt}F}\varphi\) or \(\mathbf {F\hspace{-0.85355pt}G}\varphi\) depends only on its behavior “in the limit,” in the sense that \(w^{\prime }w\) satisfies \(\mathbf {G\hspace{-0.85355pt}F}\varphi\) or \(\mathbf {F\hspace{-0.85355pt}G}\varphi\) iff w does.2 So we add the limit operators to the fragment, yielding the following syntax.

Definition 5.2.

Extended LTL formulas over a set Ap of atomic propositions are generated by the syntax: \(\begin{align*} \varphi ::= \,\, & {\mathbf {t\hspace{-0.5pt}t}}\mid {\mathbf {ff}}\mid a \mid \lnot a \mid \varphi \wedge \varphi \mid \varphi \vee \varphi \mid {\mathbf {X}}\varphi \mid \varphi \mathbin {\mathbf {U}}\varphi \mid \varphi \mathbin {\mathbf {W}}\varphi \mid \mathbf {G\hspace{-0.85355pt}F}\varphi \mid \mathbf {F\hspace{-0.85355pt}G}\varphi . \end{align*}\)

When determining the class of a formula in the syntactic future hierarchy, \(\mathbf {G\hspace{-0.85355pt}F}\) and \(\mathbf {F\hspace{-0.85355pt}G}\) are implicitly replaced by \({\mathbf {G}}{\mathbf {F}}\) and \({\mathbf {F}}\hspace{0.56917pt}{\mathbf {G}}\). For example, \({\mathbf {F}}\hspace{1.0pt}{\mathbf {G}}\hspace{1.0pt}{\mathbf {F}}a\) is rewritten into \({\mathbf {F}}\hspace{1.0pt}{\mathbf {G}}\hspace{1.0pt}{\mathbf {F}}a\), and so it is a formula of \(\Sigma _3\).

Convention: In the rest of the section we only consider extended formulas, which are by construction in negation normal form, and call them just formulas.

Let us now define our precise target normal form. Formulas of the form \(\varphi \mathbin {\mathbf {U}}\psi\), \(\varphi \mathbin {\mathbf {W}}\psi\), \({\mathbf {X}}\varphi\), \(\mathbf {G\hspace{-0.85355pt}F}\varphi\), and \(\mathbf {F\hspace{-0.85355pt}G}\varphi\) are called \(\mathbin {\mathbf {U}}\)-, \(\mathbin {\mathbf {W}}\)-, \(\mathbf {X}\)-, \(\mathbf {G\hspace{-0.85355pt}F}\)-, and \(\mathbf {F\hspace{-0.85355pt}G}\)-formulas, respectively.We refer to these formulas as temporal formulas. The syntax tree \(T_\varphi\) of a formula \(\varphi\) is defined in the usual way, and \(|\varphi |\) denotes the number of nodes of \(T_\varphi\). A node of \(T_\varphi\) is a \(\mathbin {\mathbf {U}}\)-node if the subformula rooted at it is a \(\mathbin {\mathbf {U}}\)-formula. \(\mathbin {\mathbf {W}}\)-, \(\mathbf {G\hspace{-0.85355pt}F}\)-, \(\mathbf {F\hspace{-0.85355pt}G}\)- and temporal nodes are defined analogously.

Definition 5.3.

Let \(\varphi\) be an LTL formula. A node of \(T_\varphi\) is a limit node if it is either a \(\mathbf {G\hspace{-0.85355pt}F}\)-node or an \(\mathbf {F\hspace{-0.85355pt}G}\)-node. The formula \(\varphi\) is in normal form if \(T_\varphi\) satisfies the following properties:

(1)

No \(\mathbin {\mathbf {U}}\)-node is under a \(\mathbin {\mathbf {W}}\)-node.

(2)

No limit node is under another temporal node.

(3)

No \(\mathbin {\mathbf {W}}\)-node is under a \(\mathbf {G\hspace{-0.85355pt}F}\)-node, and no \(\mathbin {\mathbf {U}}\)-node is under an \(\mathbf {F\hspace{-0.85355pt}G}\)-node.

Remark 5.4.

Observe that formulas in normal form belong to \(\Delta _2\). Even a slightly stronger statement holds: a formula in normal form is a positive Boolean combination of formulas of \(\Sigma _2\) and formulas of the form \(\mathbf {G\hspace{-0.85355pt}F}\psi\) such that \(\psi \in \Sigma _1\) (and so \(\mathbf {G\hspace{-0.85355pt}F}\psi \in \Pi _2\)).

There is a dual normal form in which property (1) is replaced by “no \(\mathbin {\mathbf {W}}\)-node is under a \(\mathbin {\mathbf {U}}\)-node,” and the other two properties do not change. Formulas in dual normal form are positive Boolean combination of formulas of \(\Pi _2\) and formulas of the form \(\mathbf {F\hspace{-0.85355pt}G}\psi\) such that \(\psi \in \Pi _1\). Once the Normalization Theorem for the primal normal form is proved, a corresponding theorem for the dual form follows as an easy corollary (see Section 5.6).

We incrementally normalize formulas by dealing with the three requirements of the normal form, one by one, as follows:

(1)

We remove all \(\mathbin {\mathbf {U}}\)-nodes that are under some \(\mathbin {\mathbf {W}}\)-node, but not under any limit node.

(2)

We remove all limit nodes under some other temporal node.

(3)

We remove all \(\mathbin {\mathbf {W}}\)-nodes under some \(\mathbf {G\hspace{-0.85355pt}F}\)-node, and all \(\mathbin {\mathbf {U}}\)-nodes under some \(\mathbf {F\hspace{-0.85355pt}G}\)-node.

The resulting formula is in normal form (Definition 5.3).

It is convenient to introduce intermediate normal forms corresponding to the results of applying the first and the first two steps. For this, let us introduce the following parameters of a formula \(\varphi\):

\(n_{u}({\varphi })\) denotes the number of \(\mathbin {\mathbf {U}}\)-nodes in \(T_\varphi\) that are under some \(\mathbin {\mathbf {W}}\)-node, but not under any limit node of \(T_\varphi\). For example, if \(\varphi = (a \mathbin {\mathbf {U}}b) \mathbin {\mathbf {W}}(\mathbf {F\hspace{-0.85355pt}G}(c \mathbin {\mathbf {U}}d)),\) then \(n_{u}({\varphi })=1\).

\(n_{\text{lim}}({\varphi })\) denotes the number of distinct limit subformulas under some temporal operator. Formally, \(n_{\text{lim}}({\varphi })\) is the number of limit formulas \(\psi ^{\prime }\) such that \(\psi ^{\prime }\) is a proper subformula of a temporal subformula (proper or not) of \(\varphi\). For example, if \(\varphi = (\mathbf {F\hspace{-0.85355pt}G}a \, \mathbin {\mathbf {U}}\, \mathbf {G\hspace{-0.85355pt}F}b) \vee (\mathbf {G\hspace{-0.85355pt}F}b \, \mathbin {\mathbf {W}}\, \mathbf {F\hspace{-0.85355pt}G}a),\) then \(n_{\text{lim}}({\varphi })=2\).

We define the normal forms as follows.

Definition 5.5.

An LTL formula \(\varphi\) is in 1-form if \(n_{u}({\varphi }) = 0\), and in 1-2-form if \(n_{u}({\varphi }) = 0\) and \(n_{\text{lim}}({\varphi }) = 0\).

Observe that after step (1), we obtain a formula in 1-form, and after steps (1) and (2), we obtain a formula in 1-2-form.

The rest of the section is structured as follows. Sections 5.1 through 5.3 present rewrite rules to conduct steps (1) through (3), respectively. Section 5.4 proves the Normalization Theorem and gives an upper bound in the size of the final formula. Section 5.5 summarizes the normalization procedure. Finally, Section 5.6 discusses some extensions and special cases.

5.1 Stage 1: Removing \(\mathbin {\mathbf {U}}\)-Nodes under \(\mathbin {\mathbf {W}}\)-Nodes

We consider formulas \(\varphi\) with placeholders—that is, “holes” that can be filled with a formula. Formally, let \([ \quad ]\) be a symbol denoting a special atomic proposition. A formula with placeholders is a formula with one or more occurrences of \([ \quad ]\), all of them positive (i.e., the formula has no occurrence of \(\lnot [ \quad ]\). We denote by \(\varphi [\psi ]\) the result of filling each placeholder of \(\varphi\) with an occurrence of \(\psi\); formally, \(\varphi [\psi ]\) is the result of substituting \(\psi\) for \([ \quad ]\) in \(\varphi\). For example, if \(\varphi [ \quad ]= ([ \quad ]\mathbin {\mathbf {W}}(a \mathbin {\mathbf {U}}[ \quad ]))\), then \(\varphi [{\mathbf {X}}b] = ({\mathbf {X}}b) \mathbin {\mathbf {W}}(a \mathbin {\mathbf {U}}{\mathbf {X}}b)\). We assume that \([ \quad ]\) binds more strongly than any operator (e.g., \(\varphi _1 \mathbin {\mathbf {W}}\varphi _2[\psi ] = \varphi _1 \mathbin {\mathbf {W}}(\varphi _2[\psi ])\)). We write \(\varphi \equiv ^w \psi\) as a shorthand for \(w_k \models \varphi\) iff \(w_k \models \psi\) for all \(k \in \mathbb {N}\), the following lemma states two straightforward properties of formulas with placeholders.

Lemma 5.6.

For every formula with placeholder \(\varphi\) and every two formulas \(\psi\) and \(\psi ^{\prime }\),

(1)

If \(\varphi\) is in negative normal form (as every LTL formula considered in this article), \(\psi \models \psi ^{\prime }\) implies \(\varphi [\psi ] \models \varphi [\psi ^{\prime }]\).

(2)

\(\psi \equiv ^w \psi ^{\prime }\) implies \(\varphi [\psi ] \equiv ^w \varphi [\psi ^{\prime }]\).

The following lemma allows us to pull \(\mathbin {\mathbf {U}}\)-subformulas out of \(\mathbin {\mathbf {W}}\)-formulas.

Lemma 5.7.

(3) \(\begin{eqnarray} \varphi _1 \mathbin {\mathbf {W}}\varphi _2[\psi _1 \mathbin {\mathbf {U}}\psi _2] & \equiv & (\varphi _1 \mathbin {\mathbf {U}}\varphi _2[\psi _1 \mathbin {\mathbf {U}}\psi _2]) \vee {\mathbf {G}}\varphi _1 \end{eqnarray}\) (4) \(\begin{eqnarray} \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {W}}\varphi _2 & \equiv & (\mathbf {G\hspace{-0.85355pt}F}\psi _2 \wedge \varphi _1[\psi _1 \mathbin {\mathbf {W}}\psi _2] \mathbin {\mathbf {W}}\varphi _2) \vee \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {U}}(\varphi _2 \vee ({\mathbf {G}}\varphi _1[{\mathbf {ff}}])) \end{eqnarray}\)

Proof.

For Equation (3), observe that, by the definition of the semantics of LTL, \(\varphi _1 \mathbin {\mathbf {W}}\varphi _2 \equiv \varphi _1 \mathbin {\mathbf {U}}\varphi _2 \vee {\mathbf {G}}\varphi _2\) holds for arbitrary formulas \(\varphi _1, \varphi _2\). For Equation (4), we proceed by invoking the Weak Contextual Equivalence Lemma (Lemma 4.3) with basis \(B = \lbrace \mathbf {G\hspace{-0.85355pt}F}\psi _2\rbrace\), main formula \(\varphi = \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {W}}\varphi _2\), and contextual formulas \(\varphi \langle C \!\mid \! B \rangle = \varphi _1[\psi _1 \mathbin {\mathbf {W}}\psi _2] \mathbin {\mathbf {W}}\varphi _2\) for \(C = \lbrace \mathbf {G\hspace{-0.85355pt}F}\psi _2\rbrace\) and \(\varphi \langle C \!\mid \! B \rangle = \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {U}}(\varphi _2 \vee ({\mathbf {G}}\varphi _1[{\mathbf {ff}}]))\) for \(C = \emptyset\). The conclusion of that lemma is exactly (4), but we have to prove its two premises.

First Premise: \(\varphi\) and \(\varphi \langle C \!\mid \! B \rangle\) are equivalent under context \(\langle {C} \!\mid \! {B} \rangle\).

For the case \(C = \lbrace \mathbf {G\hspace{-0.85355pt}F}\psi _2 \rbrace\), let \(w \models \mathbf {G\hspace{-0.85355pt}F}\psi _2\). We have to show \(\varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {W}}\varphi _2 \equiv ^w \varphi _1[\psi _1 \mathbin {\mathbf {W}}\psi _2] \mathbin {\mathbf {W}}\varphi _2\). By the semantics of LTL, we have \(\psi _1 \mathbin {\mathbf {U}}\psi _2 \equiv \psi _1 \mathbin {\mathbf {W}}\psi _2 \wedge {\mathbf {F}}\psi _2\); further, \(w \models \mathbf {G\hspace{-0.85355pt}F}\psi _2\) implies \({\mathbf {F}}\psi _2 \equiv ^w {\mathbf {t\hspace{-0.5pt}t}}\), and so we get \(\psi _1 \mathbin {\mathbf {U}}\psi _2 \equiv ^w \psi _1 \mathbin {\mathbf {W}}\psi _2\). Applying lemma 5.6(2), we obtain \(\varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {W}}\varphi _2 \equiv ^w \varphi _1[\psi _1 \mathbin {\mathbf {W}}\psi _2] \mathbin {\mathbf {W}}\varphi _2\), as desired.

For the case \(C = \emptyset\), let \(w \not\models \mathbf {G\hspace{-0.85355pt}F}\psi _2\). We have to show \(\varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {W}}\varphi _2 \equiv ^w \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {U}}(\varphi _2 \vee ({\mathbf {G}}\varphi _1[{\mathbf {ff}}]))\). For \(⫤ ^w\), we prove the stronger \(⫤\): \(\begin{equation*} \begin{array}{lr} \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {U}}(\varphi _2 \vee ({\mathbf {G}}\varphi _1[{\mathbf {ff}}])) \\ \hspace{20.0pt}\models \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {U}}(\varphi _2 \vee ({\mathbf {G}}\varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2]) &\text{(Lemma 5.6(1) and ${\mathbf {ff}}\models \psi _1 \mathbin {\mathbf {U}}\psi _2$)} \\ \hspace{20.0pt}\equiv \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {W}}\varphi _2 &\text{(semantics of LTL).} \end{array} \end{equation*}\) For \(\models ^w\), assume \(w \models \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {W}}\varphi _2\). We have to show \(w \models \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {U}}(\varphi _2 \vee ({\mathbf {G}}\varphi _1[{\mathbf {ff}}]))\). Consider two cases:

\(w_k \models \varphi _2\) for some \(k \ge 0\). Then, since \(w \models \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {W}}\varphi _2\) by hypothesis, we have \(w \models \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {U}}\varphi _2\), and so \(w \models \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {U}}(\varphi _2 \vee ({\mathbf {G}}\varphi _1[{\mathbf {ff}}]))\).

\(w_k \not\models \varphi _2\) for every \(k \ge 0\). Since \(w \not\models \mathbf {G\hspace{-0.85355pt}F}\psi _2\), there exists a smallest index n such that \(w_k \not\models \psi _2\) for all \(k \ge n\). Further, since \(w \models \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {W}}\varphi _2\) by hypothesis, we have in particular \(w_k \models \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2]\) for every \(k \lt n\). So to prove \(w \models \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {U}}(\varphi _2 \vee ({\mathbf {G}}\varphi _1[{\mathbf {ff}}])),\) it suffices to show \(w_n \models {\mathbf {G}}\varphi _1[{\mathbf {ff}}]\), or, equivalently, that \(w_k \models \varphi _1[{\mathbf {ff}}]\) holds for every \(k \ge n\). For this, observe that \(w_k \models \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2]\) and \(\psi _1 \mathbin {\mathbf {U}}\psi _2 \equiv ^{w_k} {\mathbf {ff}}\) hold for every \(k \ge n\), the latter because \(w_k \not\models \psi _2\) holds for every \(k \ge n\). Apply now lemma 5.6(2).

Second Premise: The formula for context \(\emptyset\) entails the one for context \(\lbrace \mathbf {G\hspace{-0.85355pt}F}\psi _2 \rbrace\). \(\begin{equation*} \begin{array}{lr} \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {U}}(\varphi _2 \vee ({\mathbf {G}}\varphi _1[{\mathbf {ff}}])) \\ \hspace{20.0pt}\models \varphi _1[\psi _1 \mathbin {\mathbf {W}}\psi _2] \mathbin {\mathbf {U}}(\varphi _2 \vee ({\mathbf {G}}\varphi _1[{\mathbf {ff}}])) &\text{(Lemma 5.6(1) and}\ \psi _1 \mathbin {\mathbf {U}}\psi _2 \models \psi _1 \mathbin {\mathbf {W}}\psi _2) \\ \hspace{20.0pt}\models \varphi _1[\psi _1 \mathbin {\mathbf {W}}\psi _2] \mathbin {\mathbf {U}}(\varphi _2 \vee ({\mathbf {G}}\varphi _1[\psi _1 \mathbin {\mathbf {W}}\psi _2])) &\text{(Lemma 5.6(1) and}\ {\mathbf {ff}}\models \psi _1 \mathbin {\mathbf {W}}\psi _2)\\ \hspace{20.0pt}\models \varphi _1[\psi _1 \mathbin {\mathbf {W}}\psi _2] \mathbin {\mathbf {W}}\varphi _2 & \text{(semantics of LTL)} \end{array} \end{equation*}\) □

Proposition 5.8.

For every LTL formula \(\varphi\), there exists an equivalent formula \(\varphi ^{\prime }\) in 1-form such that \(|\varphi ^{\prime }| \le 4^{2|\varphi |} \cdot |\varphi |\). Moreover, for every subformula \(\mathbf {G\hspace{-0.85355pt}F}\psi\) of \(\varphi ^{\prime },\) the formula \(\psi\) is a subformula of \(\varphi\), and every \(\mathbf {F\hspace{-0.85355pt}G}\)-subformula of \(\varphi ^{\prime }\) is also a subformula of \(\varphi\).

Proof.

We associate to each formula a rank, defined by \(\mathit {rank}({\varphi }) = |\varphi | + n_{u}({\varphi })\). Observe that a formula \(\varphi\) is in 1-form iff \(\mathit {rank}({\varphi }) = |\varphi |\). Throughout the proof, we say that a formula \(\varphi ^{\prime }\) satisfies the limit property if for every subformula \(\mathbf {G\hspace{-0.85355pt}F}\psi\) of \(\varphi ^{\prime }\) the formula \(\psi\) is a subformula of \(\varphi\) and every \(\mathbf {F\hspace{-0.85355pt}G}\)-subformula of \(\varphi ^{\prime }\) is also a subformula of \(\varphi\) (notice the asymmetry). Further, we say that a formula \(\varphi ^{\prime }\) satisfies the size property if \(|\varphi ^{\prime }| \le 4^{\mathit {rank}(\varphi)} \cdot |\varphi |\) from which the claimed size bound immediately follows.

We prove by induction on \(\mathit {rank}({\varphi })\) that \(\varphi\) is equivalent to a formula \(\varphi ^{\prime }\) in 1-form satisfying the limit and size properties. Within the inductive step, we proceed by a case distinction of \(\varphi\):

If \(\varphi = {\mathbf {t\hspace{-0.5pt}t}}, {\mathbf {ff}}, \mathbf {G\hspace{-0.85355pt}F}\psi , \mathbf {F\hspace{-0.85355pt}G}\psi\), then \(\varphi\) is already in 1-form and satisfies the limit and size properties.

If \(\varphi = \varphi _1 \wedge \varphi _2, \varphi _1 \vee \varphi _2, \varphi _1 \mathbin {\mathbf {U}}\varphi _2,\) then by the induction hypothesis \(\varphi _1\) and \(\varphi _2\) can be normalized into formulas \(\varphi _1^{\prime }\) and \(\varphi _2^{\prime }\) satisfying the limit and size properties. The formulas \(\varphi _1^{\prime } \wedge \varphi _2^{\prime }\), \(\varphi _1^{\prime } \vee \varphi _2^{\prime }\), \(\varphi _1^{\prime } \mathbin {\mathbf {U}}\varphi _2^{\prime }\) are then in 1-form (the latter because the additional \(\mathbin {\mathbf {U}}\)-node is above any \(\mathbin {\mathbf {W}}\)-node) and satisfy the limit property. The size property holds because \(\begin{equation*} \begin{array}{rlr} |\varphi _1^{\prime }| + |\varphi _2^{\prime }| + 1 & \le 4^{\mathit {rank}({\varphi _1})} \cdot |\varphi _1| + 4^{\mathit {rank}({\varphi _2})} \cdot |\varphi _2| + 1 & \!(\text{induction hypotheses}) \\ & \le 4^{\mathit {rank}({\varphi _1})+\mathit {rank}({\varphi _2})} \cdot (|\varphi _1| + |\varphi _2| + 1) \\ & \le 4^{\mathit {rank}({\varphi })} \cdot |\varphi | & \!(|\varphi _i| \le |\varphi | \text{ and } \sum _{i=1}^2 \mathit {rank}({\varphi _i}) \lt \mathit {rank}({\varphi })). \end{array} \end{equation*}\) If \(\varphi = {\mathbf {X}}\varphi _1\), then by the induction hypothesis there is a formula \(\varphi _1^{\prime }\) equivalent to \(\varphi _1\) in 1-form, and so \(\varphi\) is equivalent to \({\mathbf {X}}\varphi _1^{\prime }\), which is in 1-form and satisfies the limit and size properties.

If \(\varphi = \varphi _1 \mathbin {\mathbf {W}}\varphi _2\) and \(n_{u}({\varphi }) = 0\), then \(\varphi _1 \mathbin {\mathbf {W}}\varphi _2\) is already in 1-form and satisfies the limit and size properties.

If \(\varphi = \varphi _1 \mathbin {\mathbf {W}}\varphi _2\) and \(n_{u}({\varphi }) \gt 0\), then we proceed by a case distinction:

\(\varphi _2\) contains at least one \(\mathbin {\mathbf {U}}\)-node that is not under a limit node. Let \(\psi _1 \mathbin {\mathbf {U}}\psi _2\) be such a \(\mathbin {\mathbf {U}}\)-node. We derive \(\varphi _2[ \quad ]\) from \(\varphi _2\) by replacing each \(\mathbin {\mathbf {U}}\)-node labeled by \(\psi _1 \mathbin {\mathbf {U}}\psi _2\) by the special atomic proposition \([ \quad ]\). By lemma 5.7(3), we have \(\begin{equation*} \varphi _1 \mathbin {\mathbf {W}}\varphi _2[\psi _1 \mathbin {\mathbf {U}}\psi _2] \equiv \varphi _1 \mathbin {\mathbf {U}}\varphi _2[\psi _1 \mathbin {\mathbf {U}}\psi _2] \vee \varphi _1 \mathbin {\mathbf {W}}{\mathbf {ff}}. \end{equation*}\) Since \(\mathit {rank}({\varphi _1}) \lt \mathit {rank}({\varphi })\), \(\mathit {rank}({\varphi _2}) \lt \mathit {rank}({\varphi })\), and \(\mathit {rank}({\varphi _1 \mathbin {\mathbf {W}}{\mathbf {ff}}}) \lt \mathit {rank}({\varphi })\) (the latter because \(\varphi _2\) contains at least one \(\mathbin {\mathbf {U}}\)-node), by the induction hypothesis \(\varphi _1\), \(\varphi _2\), and \(\varphi _1 \mathbin {\mathbf {W}}{\mathbf {ff}}\) can be normalized into formulas \(\varphi _1^{\prime }\), \(\varphi _2^{\prime }\), and \(\varphi _3^{\prime }\) satisfying the limit and size properties. So \(\varphi\) can be normalized into \(\varphi ^{\prime } = \varphi _1^{\prime } \mathbin {\mathbf {U}}\varphi _2^{\prime } \vee \varphi _3^{\prime }\). Moreover, \(\varphi ^{\prime }\) satisfies the limit property, because all \(\mathbf {G\hspace{-0.85355pt}F}\)- and \(\mathbf {F\hspace{-0.85355pt}G}\)-subformulas of \(\varphi ^{\prime }\) are subformulas of \(\varphi _1^{\prime }\), \(\varphi _2^{\prime }\), or \(\varphi _3^{\prime }\). For the size property, we calculate \(\begin{equation*} \begin{array}{rlr} |\varphi ^{\prime }| & = |\varphi _1^{\prime }| + |\varphi _2^{\prime }| + |\varphi _3^{\prime }| + 2 \\ & \le 4^{\mathit {rank}({\varphi _1})} \cdot |\varphi _1| + 4^{\mathit {rank}({\varphi _2})} \cdot |\varphi _2| + 4^{\mathit {rank}({\varphi _1\mathbin {\mathbf {W}}{\mathbf {ff}}})} \cdot |\varphi _1\mathbin {\mathbf {W}}{\mathbf {ff}}| + 2 & (\text{induction hypotheses}) \\ & \le 4^{\mathit {rank}({\varphi }) - 1} \cdot (|\varphi _1| + |\varphi _2| + |\varphi _1\mathbin {\mathbf {W}}{\mathbf {ff}}| + 2) \\ & \le 4^{\mathit {rank}({\varphi }) - 1} \cdot 4 \cdot |\varphi | = 4^{\mathit {rank}({\varphi })} \cdot |\varphi |. \end{array} \end{equation*}\)

Every \(\mathbin {\mathbf {U}}\)-node of \(\varphi _2\) is under a limit node, and \(\varphi _1\) contains at least one \(\mathbin {\mathbf {U}}\)-node that is not under any limit node. Then \(\varphi _1\) contains a maximal subformula \(\psi _1 \mathbin {\mathbf {U}}\psi _2\) (with respect to the subformula order) that is not under a limit node. We derive \(\varphi _1[ \quad ]\) from \(\varphi _1\) by replacing each \(\mathbin {\mathbf {U}}\)-node labeled by \(\psi _1 \mathbin {\mathbf {U}}\psi _2\) that does not appear under a limit node by the special atomic proposition \([ \quad ]\). By lemma 5.7(4), we have \(\begin{equation*} \ \varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2] \mathbin {\mathbf {W}}\varphi _2 \equiv \big (\mathbf {G\hspace{-0.85355pt}F}\psi _2 \wedge \underbrace{\varphi _1[\psi _1 \mathbin {\mathbf {W}}\psi _2] \mathbin {\mathbf {W}}\varphi _2}_{\rho _1}\big) \vee \big (\underbrace{\varphi _1[\psi _1 \mathbin {\mathbf {U}}\psi _2]}_{\rho _2} \mathbin {\mathbf {U}}(\underbrace{\varphi _2 \vee (\varphi _1[{\mathbf {ff}}] \mathbin {\mathbf {W}}{\mathbf {ff}}}_{\rho _3}) \big). \end{equation*}\) To apply the induction hypothesis, we argue that \(\rho _1\), \(\rho _2\), and \(\rho _3\) have rank smaller than \(\varphi\) and thus can be normalized to \(\rho _1^{\prime }\), \(\rho _2^{\prime }\), and \(\rho _3^{\prime }\) satisfying the limit and size properties. The formula \(\rho _1\) has the same number of nodes as \(\varphi\), but fewer \(\mathbin {\mathbf {U}}\)-nodes under \(\mathbin {\mathbf {W}}\)-nodes; so \(n_{u}({\rho _1}) \lt n_{u}({\varphi })\) and thus \(\mathit {rank}({\rho _1}) \lt \mathit {rank}({\varphi })\). The same argument applies to \(\rho _3\). Finally, \(\mathit {rank}({\rho _2}) \lt \mathit {rank}({\varphi })\) follows from the fact that \(\rho _2\) has fewer nodes than \(\varphi\). So \(\varphi\) can be normalized to \(\varphi ^{\prime }=(\mathbf {G\hspace{-0.85355pt}F}\psi _2 \wedge \rho _1^{\prime }) \vee (\rho _2^{\prime } \mathbin {\mathbf {U}}\rho _3^{\prime })\).

We show that \(\varphi ^{\prime }\) satisfies the limit property. Let \(\mathbf {G\hspace{-0.85355pt}F}\psi\) be a subformula of \(\varphi ^{\prime }\). If \(\mathbf {G\hspace{-0.85355pt}F}\psi = \mathbf {G\hspace{-0.85355pt}F}\psi _2\), then we are done, because \(\psi _2\) is a subformula of \(\varphi\). Otherwise, \(\mathbf {G\hspace{-0.85355pt}F}\psi\) is a subformula of \(\rho _1^{\prime }\), \(\rho _2^{\prime }\), or \(\rho _3^{\prime }\). Since all of them satisfy the limit property, \(\psi\) is a subformula of \(\varphi\), and we are done. Further, every \(\mathbf {F\hspace{-0.85355pt}G}\)-subformula of \(\varphi ^{\prime }\) belongs to \(\rho _1^{\prime }\), \(\rho _2^{\prime }\), or \(\rho _3^{\prime }\) and so it is also subformula of \(\varphi\). For the size property, we calculate \(\begin{align*} |\varphi ^{\prime }| & = |\rho _1^{\prime }| + |\rho _2^{\prime }| + |\rho _3^{\prime }| + |\psi _2| + 4 \\ & \le 4^{\mathit {rank}({\rho _1})} \cdot |\rho _1| + 4^{\mathit {rank}({\rho _2})} \cdot |\rho _2| + 4^{\mathit {rank}({\rho _3})} \cdot |\rho _3| + |\varphi _1| + 4 & (\text{induction hypotheses}) \\ & \le 4^{\mathit {rank}({\varphi }) - 1} \cdot (|\varphi | + |\varphi | + |\varphi |) + |\varphi | + 4 & (|\rho _i|, |\varphi _1| \le |\varphi | \text{ and } \mathit {rank}({\rho _i}) \lt \mathit {rank}({\varphi })). \\ & \le 4^{\mathit {rank}({\varphi }) - 1} \cdot 4 \cdot |\varphi | = 4^{\mathit {rank}({\varphi })} \cdot |\varphi | \end{align*}\)

 □

5.2 Stage 2: Moving \(\mathbf {G\hspace{-0.85355pt}F}\)- and \(\mathbf {F\hspace{-0.85355pt}G}\)-Subformulas Up

In this section, we address the second property of the normal form. The following lemma allows us to pull limit subformulas out of any temporal formula. (Note that the second rule is only necessary if the formula before stage 1 contained \(\mathbf {F\hspace{-0.85355pt}G}\)-subformulas, since stage 1 only creates new \(\mathbf {G\hspace{-0.85355pt}F}\)-formulas.)

Lemma 5.9.

(5) \(\begin{eqnarray} \varphi [\mathbf {G\hspace{-0.85355pt}F}\psi ] & \equiv & (\mathbf {G\hspace{-0.85355pt}F}\psi \wedge \varphi [{\mathbf {t\hspace{-0.5pt}t}}]) \vee \varphi [{\mathbf {ff}}] \end{eqnarray}\) (6) \(\begin{eqnarray} \varphi [\mathbf {F\hspace{-0.85355pt}G}\psi ] & \equiv & (\mathbf {F\hspace{-0.85355pt}G}\psi \wedge \varphi [{\mathbf {t\hspace{-0.5pt}t}}]) \vee \varphi [{\mathbf {ff}}] \end{eqnarray}\)

Proof.

We prove that \(\varphi [\psi ] \equiv (\psi \wedge \varphi [{\mathbf {t\hspace{-0.5pt}t}}]) \vee \varphi [{\mathbf {ff}}]\) for every \(\psi\) such that \({\mathbf {G}}\psi \equiv \psi\)—that is, \(w \models \psi\) iff \(w_k \models \psi\) for all \(k \in \mathbb {N}\). This is a generalization of (5) and (6), since both \({\mathbf {G}}\hspace{1.0pt}\mathbf {G\hspace{-0.85355pt}F}\psi ^{\prime } \equiv \mathbf {G\hspace{-0.85355pt}F}\psi ^{\prime }\) and \({\mathbf {G}}\hspace{1.0pt}\mathbf {F\hspace{-0.85355pt}G}\psi ^{\prime } \equiv \mathbf {F\hspace{-0.85355pt}G}\psi ^{\prime }\) for any \(\psi ^{\prime }\). The new statement follows from the Weak Contextual Equivalence Lemma (Lemma 4.3) with basis \(\lbrace \psi \rbrace\) and formulas \(\varphi [\psi ]\langle \lbrace \psi \rbrace \rangle = \varphi [{\mathbf {t\hspace{-0.5pt}t}}]\) and \(\varphi [\psi ]\langle \emptyset \rangle = \varphi [{\mathbf {ff}}]\). It remains to prove that the premises of the lemma hold:

(i)

Since \(\psi\) is satisfied by either all or no suffix of a word w, then either \(\psi \equiv ^w {\mathbf {t\hspace{-0.5pt}t}}\) or \(\psi \equiv ^w {\mathbf {ff}}\). Hence, \(\begin{equation*} w \models \psi \stackrel{{\mathbf {G}}\psi \strut \equiv \psi }{\iff }\psi \equiv ^w {\mathbf {t\hspace{-0.5pt}t}}\stackrel{\strut \text{Lemma~5.6(2)}}{\Rightarrow }\varphi [\psi ] \equiv ^w \varphi [{\mathbf {t\hspace{-0.5pt}t}}] \,\,\Rightarrow \,\, (w \models \varphi [\psi ] \iff w \models \varphi [{\mathbf {t\hspace{-0.5pt}t}}]), \end{equation*}\) and identical arguments can be used to prove \(w \models \varphi [\psi ] \iff w \models \varphi [{\mathbf {ff}}]\) from \(w \not\models \psi\).

(ii)

Since \({\mathbf {ff}}\models {\mathbf {t\hspace{-0.5pt}t}}\) and by lemma 5.6(1), \(\varphi [{\mathbf {ff}}] \models \varphi [{\mathbf {t\hspace{-0.5pt}t}}]\).

 □

We show using (5) and (6) that every formula in 1-form can be transformed into an equivalent formula in 1-2-form.

Proposition 5.10.

Every LTL formula \(\varphi\) in 1-form is equivalent to a formula \(\varphi ^{\prime }\) in 1-2-form such that \(|\varphi ^{\prime }| \le 3^{n_{\text{lim}}({\varphi })} \cdot |\varphi |\). Moreover, the size of the limit subformulas does not increase: for every \(b \gt 0\), if \(|\psi | \le b\) for every limit subformula \(\psi\) of \(\varphi\), then \(|\psi ^{\prime }| \le b\) for every limit subformula \(\psi ^{\prime }\) if \(\varphi ^{\prime }\).

Proof.

We proceed by induction on the number of proper limit subformulas of \(\varphi\). If \(\varphi\) does not contain any, then it is already in 1-2-form. Assume there exists such a proper limit subformula \(\psi\) that is smaller (or incomparable) to all other limit subformulas of \(\varphi\) according to the subformula order. We derive \(\varphi [ \quad ]\) from \(\varphi\) by replacing each limit-node labeled by \(\psi\) by the special atomic proposition \([ \quad ]\). We then apply lemma 5.9 to obtain \(\begin{equation*} \varphi [\psi ] \equiv (\psi \wedge \varphi [{\mathbf {t\hspace{-0.5pt}t}}]) \vee \varphi [{\mathbf {ff}}], \qquad \mbox{ where } \psi = \mathbf {G\hspace{-0.85355pt}F}\psi ^{\prime }, \mathbf {F\hspace{-0.85355pt}G}\psi ^{\prime } \ . \end{equation*}\) Note that \(\psi\) does not properly contain any limit subformula, and so it is in 1-2-form. Both \(\varphi [{\mathbf {t\hspace{-0.5pt}t}}]\) and \(\varphi [{\mathbf {ff}}]\) are still in 1-form, and they have one limit operator less than \(\varphi\). Thus, they can be normalized by the induction hypothesis into \(\varphi _1^{\prime }\) and \(\varphi _2^{\prime }\) in 1-2-form. Finally, \(\varphi ^{\prime } = (\psi \wedge \varphi _1^{\prime }) \vee \varphi _2^{\prime }\) is a Boolean combination of formulas in 1-2-form, so it is in 1-2-form. The number of nodes of \(T_{\varphi ^{\prime }}\) can be crudely bounded as follows: \(\begin{equation*} \begin{array}{rll} |\varphi ^{\prime }| & \le |\varphi _1^{\prime }| + |\varphi _2^{\prime }| + |\psi | + 2 \\ {[}1ex] & \le 3^{n_{\text{lim}}({\varphi [{\mathbf {t\hspace{-0.5pt}t}}]})} \cdot |\varphi [{\mathbf {t\hspace{-0.5pt}t}}]| + 3^{n_{\text{lim}}({\varphi [{\mathbf {ff}}]})} \cdot |\varphi [{\mathbf {ff}}]| + |\psi | + 2 & (\text{induction hypotheses}) \\ {[}1ex] & \le 3^{n_{\text{lim}}({\varphi [{\mathbf {t\hspace{-0.5pt}t}}]})} \cdot 2 \cdot |\varphi [{\mathbf {t\hspace{-0.5pt}t}}]| + |\psi | + 2 & (|\varphi [{\mathbf {t\hspace{-0.5pt}t}}]| = |\varphi [{\mathbf {ff}}]|\text{, idem for } n_{\mathrm{lim}}) \\ {[}1ex] & \le 3^{n_{\text{lim}}({\varphi [{\mathbf {t\hspace{-0.5pt}t}}]})} \cdot \big (2 \cdot (|\varphi | - |\psi | + 1) + |\psi | + 2\big) & (n_{\text{lim}}({\varphi [{\mathbf {t\hspace{-0.5pt}t}}]}) \le n_{\text{lim}}({\varphi }) - 1) \\ {[}1ex] & \le 3^{n_{\text{lim}}({\varphi }) - 1} \cdot (2 |\varphi | - |\psi | + 4) \\ {[}1ex] & \le 3^{n_{\text{lim}}({\varphi }) - 1} \cdot (3 |\varphi |) = 3^{n_{\text{lim}}({\varphi })} \cdot |\varphi | & (|\psi |, |\varphi | \ge 2). \end{array} \end{equation*}\)

To show that the size of the limit subformulas does not increase, let b be a bound on the size of the \(\mathbf {G\hspace{-0.85355pt}F}\)-subformulas of \(\varphi\). We claim that the size of each \(\mathbf {G\hspace{-0.85355pt}F}\)-subformula of \(\varphi ^{\prime }\) is also bounded by b (the case of \(\mathbf {F\hspace{-0.85355pt}G}\psi\) is analogous). Indeed, the \(\mathbf {G\hspace{-0.85355pt}F}\)-subformulas of \(\varphi ^{\prime }\) are \(\psi\) (which is already in \(\varphi\)) and the \(\mathbf {G\hspace{-0.85355pt}F}\)-subformulas of \(\varphi _1^{\prime }\) and \(\varphi _2^{\prime }\). Since the \(\mathbf {G\hspace{-0.85355pt}F}\)-subformulas of \(\varphi [{\mathbf {t\hspace{-0.5pt}t}}]\) and \(\varphi [{\mathbf {ff}}]\) can only have decreased in size, by the induction hypothesis the number of nodes of any \(\mathbf {G\hspace{-0.85355pt}F}\)-subformula of \(\varphi _1^{\prime }\) and \(\varphi _2^{\prime }\) is bounded by b, and we are done. □

5.3 Stage 3: Removing \(\mathbin {\mathbf {W}}\)-Nodes (\(\mathbin {\mathbf {U}}\)-Nodes) under \(\mathbf {G\hspace{-0.85355pt}F}\)-Nodes (\(\mathbf {F\hspace{-0.85355pt}G}\)-Nodes)

The normalization of LTL formulas is completed in this section by fixing the problems within limit subformulas. To do so, we introduce two new rewrite rules that allow us to pull \(\mathbin {\mathbf {W}}\)-subformulas out of \(\mathbf {G\hspace{-0.85355pt}F}\)-formulas, and \(\mathbin {\mathbf {U}}\)-subformulas out of \(\mathbf {F\hspace{-0.85355pt}G}\)-formulas.

Lemma 5.11.

(7) \(\begin{eqnarray} \mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2] & \equiv & \mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2] \vee (\mathbf {F\hspace{-0.85355pt}G}\psi _1 \wedge \mathbf {G\hspace{-0.85355pt}F}\varphi [{\mathbf {t\hspace{-0.5pt}t}}]) \,\,\,\,\,\, \end{eqnarray}\) (8) \(\begin{eqnarray} \mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2] & \equiv & (\mathbf {G\hspace{-0.85355pt}F}\psi _2 \wedge \mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2]) \vee \mathbf {F\hspace{-0.85355pt}G}\varphi [{\mathbf {ff}}] \,\,\,\,\,\, \end{eqnarray}\)

Proof.

Notice that (7) and (8) are instances of the Weak Contextual Equivalence Lemma (Lemma 4.3) with bases \(\lbrace \mathbf {F\hspace{-0.85355pt}G}\psi _1\rbrace\) and \(\lbrace \mathbf {G\hspace{-0.85355pt}F}\psi _2\rbrace\), respectively. In the case of (7), the contextual formulas are \((\mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2])\langle \lbrace \mathbf {F\hspace{-0.85355pt}G}\psi _1\rbrace \rangle = \mathbf {G\hspace{-0.85355pt}F}\varphi [{\mathbf {t\hspace{-0.5pt}t}}]\) and \((\mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2])\langle \emptyset \rangle = \mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2]\). The premises of the lemma are satisfied:

(i)

Given \(w \models \mathbf {F\hspace{-0.85355pt}G}\psi _1\), we should first prove \(w \models \mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2]\) iff \(w \models \mathbf {G\hspace{-0.85355pt}F}\varphi [{\mathbf {t\hspace{-0.5pt}t}}]\). Since \(w \models \mathbf {F\hspace{-0.85355pt}G}\psi _1\), there is a suffix v of w such that \(v_k \models \psi _1\) for all \(k \in \mathbb {N}\). By the semantics of LTL, \(\psi _1 \mathbin {\mathbf {W}}\psi _2 \equiv ^v {\mathbf {t\hspace{-0.5pt}t}}\), so \(\mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2] \equiv ^v \mathbf {G\hspace{-0.85355pt}F}\varphi [{\mathbf {t\hspace{-0.5pt}t}}]\) by lemma 5.6(2). Because \(\mathbf {G\hspace{-0.85355pt}F}\)-formulas are satisfied in all suffixes of a word or in none of them, \(w \models \mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2]\) iff \(w \models \mathbf {G\hspace{-0.85355pt}F}\varphi [{\mathbf {t\hspace{-0.5pt}t}}]\).

Given \(w \not\models \mathbf {F\hspace{-0.85355pt}G}\psi _1\), we claim \(w \models \mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2]\) iff \(w \models \mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2]\). We know \(\psi _1 \mathbin {\mathbf {W}}\psi _2 \equiv \psi _1 \mathbin {\mathbf {U}}\psi _2 \vee {\mathbf {G}}\psi _1\), but \({\mathbf {G}}\psi _1 \equiv ^w {\mathbf {ff}}\) because of the hypothesis, so \(\psi _1 \mathbin {\mathbf {W}}\psi _2 \equiv ^w \psi _1 \mathbin {\mathbf {U}}\psi _2\). By lemma 5.6(2), \(\mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2] \equiv ^w \mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2]\) and this implies the claim.

(ii)

Since \(\psi _1 \mathbin {\mathbf {U}}\psi _2 \models {\mathbf {t\hspace{-0.5pt}t}}\) and by lemma 5.6(1), \(\mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2] \models \mathbf {G\hspace{-0.85355pt}F}\varphi [{\mathbf {t\hspace{-0.5pt}t}}]\).

For (7), the formulas are \((\mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2])\langle \lbrace \mathbf {G\hspace{-0.85355pt}F}\psi _2\rbrace \rangle = \mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2]\) and \((\mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2])\langle \emptyset \rangle = \mathbf {F\hspace{-0.85355pt}G}\varphi [{\mathbf {ff}}],\) and the premises of the lemma also hold:

(i)

Given \(w \models \mathbf {G\hspace{-0.85355pt}F}\psi _2\), we prove \(w \models \mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2]\) iff \(w \models \mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2]\). Since \(\psi _1 \mathbin {\mathbf {U}}\psi _2 \equiv \psi _1 \mathbin {\mathbf {W}}\psi _2 \wedge {\mathbf {F}}\psi _2\) and \({\mathbf {F}}\psi _2 \equiv ^w {\mathbf {t\hspace{-0.5pt}t}}\) by the hypothesis, \(\psi _1 \mathbin {\mathbf {U}}\psi _2 \equiv ^w \psi _1 \mathbin {\mathbf {W}}\psi _2\). By lemma 5.6(2), \(\mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2] \equiv ^w \mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2]\) and this entails the desired equivalence.

Given \(w \not\models \mathbf {G\hspace{-0.85355pt}F}\psi _2\), we have to prove \(w \models \mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2]\) iff \(w \models \mathbf {F\hspace{-0.85355pt}G}\varphi [{\mathbf {ff}}]\). Since \(w \not\models \mathbf {G\hspace{-0.85355pt}F}\psi _2\), there is a suffix v of w such that \(v_k \not\models \psi _2\) for all \(k \in \mathbb {N}\). In this case, by the semantics of LTL, \(\psi _1 \mathbin {\mathbf {U}}\psi _2 \equiv ^v {\mathbf {ff}}\), so \(\mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2] \equiv ^v \mathbf {F\hspace{-0.85355pt}G}\varphi [{\mathbf {ff}}]\) by lemma 5.6(2). The conclusion follows again from the limit properties of \(\mathbf {F\hspace{-0.85355pt}G}\).

(ii)

Since \({\mathbf {ff}}\models \psi _1 \mathbin {\mathbf {W}}\psi _2\) and by lemma 5.6(1), \(\mathbf {F\hspace{-0.85355pt}G}\varphi [{\mathbf {ff}}] \models \mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2]\).\(□\)

 □

The following proposition repeatedly applies these rules to show that limit formulas can be normalized with an exponential blowup.

Proposition 5.12.

For every LTL formula \(\varphi\) without limit operators, \(\mathbf {G\hspace{-0.85355pt}F}\varphi\) and \(\mathbf {F\hspace{-0.85355pt}G}\varphi\) can be normalized into formulas with at most \(|\varphi ^{\prime }| \le 3^{|\varphi |} \cdot |\varphi |\) nodes.

Proof.

A \(\mathbf {G\hspace{-0.85355pt}F}\)-obstacle of a formula is a \(\mathbin {\mathbf {W}}\)-node or a \(\mathbin {\mathbf {U}}\)-node under a \(\mathbin {\mathbf {W}}\)-node inside a \(\mathbf {G\hspace{-0.85355pt}F}\)-node. Similarly, an \(\mathbf {F\hspace{-0.85355pt}G}\)-obstacle is a \(\mathbin {\mathbf {U}}\)-node or a \(\mathbin {\mathbf {W}}\)-node under a \(\mathbin {\mathbf {U}}\)-node inside a \(\mathbf {F\hspace{-0.85355pt}G}\)-node. Finally, an obstacle is either a \(\mathbf {G\hspace{-0.85355pt}F}\)-obstacle or an \(\mathbf {F\hspace{-0.85355pt}G}\)-obstacle. We proceed by induction on the number of obstacles of \(\mathbf {G\hspace{-0.85355pt}F}\varphi\) or \(\mathbf {F\hspace{-0.85355pt}G}\varphi\). If they have no obstacles, then they are already in normal form (definition 5.3).

Assume \(\mathbf {G\hspace{-0.85355pt}F}\varphi\) has at least one obstacle. Then \(\varphi\) contains at least one maximal \(\mathbin {\mathbf {W}}\)-node \(\psi _1 \mathbin {\mathbf {W}}\psi _2\). We derive \(\mathbf {G\hspace{-0.85355pt}F}\varphi [ \quad ]\) from \(\mathbf {G\hspace{-0.85355pt}F}\varphi\) by replacing each \(\mathbin {\mathbf {W}}\)-node labeled by \(\psi _1 \mathbin {\mathbf {W}}\psi _2\) by the special atomic proposition \([ \quad ]\). By Equation (7), \(\mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2]\) is equivalent to \(\begin{equation*} \mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2] \vee (\mathbf {F\hspace{-0.85355pt}G}\psi _1 \wedge \mathbf {G\hspace{-0.85355pt}F}\varphi [{\mathbf {t\hspace{-0.5pt}t}}]). \end{equation*}\) We claim that each of \(\mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2]\), \(\mathbf {G\hspace{-0.85355pt}F}\varphi [{\mathbf {t\hspace{-0.5pt}t}}]\), and \(\mathbf {F\hspace{-0.85355pt}G}\psi _1\) has fewer obstacles than \(\mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2]\) and so can be normalized by the induction hypothesis. Indeed, \(\mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2]\), and \(\mathbf {G\hspace{-0.85355pt}F}\varphi [{\mathbf {t\hspace{-0.5pt}t}}]\) have at least one \(\mathbin {\mathbf {W}}\)-node less than \(\varphi\), and the number of \(\mathbin {\mathbf {U}}\)-nodes under a \(\mathbin {\mathbf {W}}\)-node, due to the maximality of \(\psi _1 \mathbin {\mathbf {W}}\psi _2\), has not increased, and as a consequence it has fewer \(\mathbf {G\hspace{-0.85355pt}F}\)-obstacles (and by definition no \(\mathbf {F\hspace{-0.85355pt}G}\)-obstacles). For \(\mathbf {F\hspace{-0.85355pt}G}\psi _1\), observe first that every \(\mathbf {F\hspace{-0.85355pt}G}\)-obstacle of \(\mathbf {F\hspace{-0.85355pt}G}\psi _1\) is a \(\mathbf {G\hspace{-0.85355pt}F}\)-obstacle of \(\mathbf {G\hspace{-0.85355pt}F}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2]\). Indeed, the obstacles of \(\mathbf {F\hspace{-0.85355pt}G}\psi _1\) are the \(\mathbin {\mathbf {U}}\)-nodes and the \(\mathbin {\mathbf {W}}\)-nodes under \(\mathbin {\mathbf {U}}\)-nodes; the former were \(\mathbin {\mathbf {U}}\)-nodes under \(\mathbin {\mathbf {W}}\)-nodes in \(\varphi\), and the latter were \(\mathbin {\mathbf {W}}\)-nodes of \(\varphi\), and so both \(\mathbf {G\hspace{-0.85355pt}F}\)-obstacles of \(\mathbf {G\hspace{-0.85355pt}F}\varphi\). Moreover, \(\psi _1 \mathbin {\mathbf {W}}\psi _2\) is a \(\mathbf {G\hspace{-0.85355pt}F}\)-obstacle of \(\varphi\), but not an \(\mathbf {F\hspace{-0.85355pt}G}\)-obstacle of \(\mathbf {F\hspace{-0.85355pt}G}\psi _1\). Hence, the number of obstacles has decreased.

Assume now that \(\mathbf {F\hspace{-0.85355pt}G}\varphi\) has at least one obstacle. Then \(\varphi\) contains at least one maximal \(\mathbin {\mathbf {U}}\)-node \(\psi _1 \mathbin {\mathbf {U}}\psi _2\). We derive \(\mathbf {F\hspace{-0.85355pt}G}\varphi [ \quad ]\) from \(\mathbf {F\hspace{-0.85355pt}G}\varphi\) by replacing each \(\mathbin {\mathbf {U}}\)-node labeled by \(\psi _1 \mathbin {\mathbf {U}}\psi _2\) by the special atomic proposition \([ \quad ]\). By Equation (8), \(\mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2]\) is equivalent to \(\begin{equation*} (\mathbf {G\hspace{-0.85355pt}F}\psi _2 \wedge \mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2]) \vee \mathbf {F\hspace{-0.85355pt}G}\varphi [{\mathbf {ff}}]. \end{equation*}\) Each of \(\mathbf {G\hspace{-0.85355pt}F}\psi _2\), \(\mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {W}}\psi _2]\), and \(\mathbf {F\hspace{-0.85355pt}G}\varphi [{\mathbf {ff}}]\) has fewer obstacles as \(\mathbf {F\hspace{-0.85355pt}G}\varphi [\psi _1 \mathbin {\mathbf {U}}\psi _2]\) and can be normalized by the induction hypothesis. The proof is as above.

The size of the formula increases at most by a factor of 3 on each step, and the number of steps is bounded by the number of both \(\mathbin {\mathbf {W}}\)-nodes and \(\mathbin {\mathbf {U}}\)-nodes in \(\varphi\), which is bounded by the total number of nodes in \(\varphi\). So the formula has at most \(3^{|\varphi |} |\varphi |\) nodes. □

5.4 The Normalization Theorem

The main result directly follows from the previous propositions.

Theorem 5.13.

Every formula \(\varphi\) of LTL is normalizable into a formula with at most \(4^{6|\varphi |}\) nodes.

Proof.

Any LTL formula \(\varphi\) can be transformed into an equivalent \(\varphi ^{\prime }\) in 1-form of size \(|\varphi ^{\prime }| \le 4^{2|\varphi |} \cdot |\varphi |\) by proposition 5.8. Moreover, \(n_{\text{lim}}({\varphi ^{\prime }}) \le 2 \cdot |\varphi |\), since every \(\mathbf {F\hspace{-0.85355pt}G}\)-subformula of \(\psi ^{\prime }\) and every argument \(\psi\) of a \(\mathbf {G\hspace{-0.85355pt}F}\)-subformula of \(\varphi ^{\prime }\) is a subformula of \(\varphi\). In addition, \(|\psi | \le |\varphi |\) for every \(\mathbf {G\hspace{-0.85355pt}F}\psi\) subformula of \(\varphi\).

According to proposition 5.10, for every formula \(\varphi ^{\prime }\) in 1-form, there is an equivalent formula \(\varphi ^{\prime \prime }\) in 1-2-form with (9) \(\begin{equation} |\varphi ^{\prime \prime }| \le 3^{n_{\text{lim}}({\varphi ^{\prime }})} \cdot |\varphi ^{\prime }| \le 3^{2 |\varphi |} \cdot (4^{2|\varphi |} \cdot |\varphi |) \le 3^{2|\varphi |} \cdot 4^{3|\varphi |} \end{equation}\) This formula is a Boolean combination of limit formulas with at most \(|\varphi |\) nodes, not containing any proper limit node, and other temporal formulas containing neither limit nodes nor \(\mathbin {\mathbf {U}}\)-nodes under \(\mathbin {\mathbf {W}}\)-nodes. The latter are in \(\Sigma _2,\) and proposition 5.12 deals with the former. Notice that every \(\mathbf {G\hspace{-0.85355pt}F}\psi\) and \(\mathbf {F\hspace{-0.85355pt}G}\psi\) subformula has at most \(|\varphi |\) nodes and thus can be normalized into a formula with at most \(3^{|\varphi |} |\varphi |\) nodes. The result \(\varphi ^{\prime \prime \prime }\) of replacing these limit subformulas by their normal forms within \(\varphi ^{\prime \prime }\) is a Boolean combination of normal forms, and so we are done. The number of nodes in the resulting formula \(\varphi ^{\prime \prime \prime }\) is at most \(\begin{align*} |\varphi ^{\prime \prime \prime }| \le & ~ |\varphi ^{\prime \prime }| + n_{\text{lim}}({\varphi ^{\prime \prime }}) \cdot 3^{|\varphi |} \cdot |\varphi | \\ \le & ~ |\varphi ^{\prime \prime }| \cdot 3^{|\varphi |} \cdot (|\varphi | + 1) & (n_{\text{lim}}({\varphi ^{\prime \prime }}) \le |\varphi ^{\prime \prime }|) \\ \le & ~ 4^{3|\varphi |} \cdot 3^{3|\varphi |} \cdot (|\varphi | + 1) & (\text{by (9)}) \\ \le & ~ 4^{3|\varphi |} \cdot 4^{(3 \log _4 3 + \frac{1}{2}) |\varphi |} \le 4^{6|\varphi |} & (|\varphi | + 1 \le 4^{|\varphi |/2}). \end{align*}\) □

Table 1.

Table 1. Normalization Rules

5.5 Summary of the Normalization Algorithm

We summarize the steps of the normalization algorithm described and proven in this section. Recall that a formula is in normal form iff it satisfies the following properties:

(1)

No \(\mathbin {\mathbf {U}}\)-node is under a \(\mathbin {\mathbf {W}}\)-node.

(2)

No limit node is under another temporal node.

(3)

No \(\mathbin {\mathbf {W}}\)-node is under a \(\mathbf {G\hspace{-0.85355pt}F}\)-node, and no \(\mathbin {\mathbf {U}}\)-node is under an \(\mathbf {F\hspace{-0.85355pt}G}\)-node.

The normalization algorithm applies the rules in Table 1 as follows to fix any violation of these properties:

(1)

\(\mathbin {\mathbf {U}}\)-nodes under \(\mathbin {\mathbf {W}}\)-nodes and not under limit nodes are removed using rules (3) and (4). This may introduce new \(\mathbf {G\hspace{-0.85355pt}F}\)-subformulas. By applying (4) only to highest \(\mathbin {\mathbf {U}}\)-nodes of \(\varphi _1,\) the number of new \(\mathbf {G\hspace{-0.85355pt}F}\)-subformulas is only linear in the size of the original formula.

(2)

Limit nodes under other temporal nodes are pulled out using rules (5) and (6). By applying the rules only to the lowest limit nodes, it only needs to be applied once for each limit subformula.

(3)

\(\mathbin {\mathbf {W}}\)-nodes under \(\mathbf {G\hspace{-0.85355pt}F}\)-nodes are removed using rule (7), and \(\mathbin {\mathbf {U}}\)-nodes under \(\mathbf {F\hspace{-0.85355pt}G}\)-nodes are removed using rule (8). This may produce new limit nodes of smaller size that are handled recursively. Choosing the highest \(\mathbin {\mathbf {W}}\)- and \(\mathbin {\mathbf {U}}\)-nodes ensures that the process produces only a single exponential blowup over the initial size of the formula.

After the three steps, a formula in normal form is obtained with a single exponential blowup in the number of nodes.

Moreover, notice that \(\psi _1\) itself does not play any role in rules (3) and (8), and neither does \(\psi _2\) in (7). Hence, the application of (3) can be made more efficient by replacing not only every occurrence of \(\psi _1 \mathbin {\mathbf {U}}\psi _2\) outside a limit subformula with \(\psi _1 \mathbin {\mathbf {W}}\psi _2\) and \({\mathbf {ff}}\), but also every occurrence of \(\psi \mathbin {\mathbf {U}}\psi _2\) for any formula \(\psi\) by \(\psi \mathbin {\mathbf {W}}\psi _2\) and by \({\mathbf {ff}}\). The same holds for rules (7) and (8).

Example 5.14.

Let us apply the procedure to the formula \(\varphi _n = (\cdots ((((a_0 \mathbin {\mathbf {U}}a_1) \mathbin {\mathbf {W}}a_2) \mathbin {\mathbf {U}}a_3) \mathbin {\mathbf {U}}a_4) \cdots \mathbin {\mathbf {U}}a_n)\) in example 4.25. In stage 1, rule (4) matches the subformula \((a_0 \mathbin {\mathbf {U}}a_1) \mathbin {\mathbf {W}}a_2\) and rewrites it to \(\mathbf {G\hspace{-0.85355pt}F}a_1 \wedge (a_0 \mathbin {\mathbf {W}}a_1) \mathbin {\mathbf {W}}a_2 \vee (a_0 \mathbin {\mathbf {U}}a_1) \mathbin {\mathbf {U}}(a_2 \vee {\mathbf {ff}}\mathbin {\mathbf {W}}{\mathbf {ff}})\), where \({\mathbf {ff}}\mathbin {\mathbf {W}}{\mathbf {ff}}\) can be simplified to \({\mathbf {ff}}\) and removed from the disjunction. The rewritten formula is in 1-form, because there is no \(\mathbin {\mathbf {U}}\)-node under a \(\mathbin {\mathbf {W}}\)-node, so we can continue to stage 2. Now, we must pull the \(\mathbf {G\hspace{-0.85355pt}F}\)-node \(\mathbf {G\hspace{-0.85355pt}F}a_1\) out the cascade of \(\mathbin {\mathbf {U}}\)-nodes using rule (5). This yields \(\begin{equation*} \begin{array}{rcl} \varphi _n & \equiv & (\mathbf {G\hspace{-0.85355pt}F}a_1 \wedge (\cdots ((((a_0 \mathbin {\mathbf {W}}a_1) \mathbin {\mathbf {W}}a_2 \vee (a_0 \mathbin {\mathbf {U}}a_1) \mathbin {\mathbf {U}}a_2) \mathbin {\mathbf {U}}a_3) \mathbin {\mathbf {U}}a_4) \cdots \mathbin {\mathbf {U}}a_n)) \\ [0.1cm] & & \vee \,\, (\cdots ((((a_0 \mathbin {\mathbf {U}}a_1) \mathbin {\mathbf {U}}a_2) \mathbin {\mathbf {U}}a_3) \mathbin {\mathbf {U}}a_4) \cdots \mathbin {\mathbf {U}}a_n). \end{array} \end{equation*}\) Since the only remaining limit node is outside any temporal formula, we have obtained a formula in 1-2-form and the procedure arrives to stage 3. Again, the only limit subformula is \(\mathbf {G\hspace{-0.85355pt}F}a_1\), and \(a_1\) does not contain any \(\mathbin {\mathbf {W}}\)-node, so the formula is completely normalized and we have finished. Observe that \(\varphi _n\) has been normalized by exactly two rule applications for all \(n \ge 3\), so the algorithm proceeds in linear time for this family of formulas. The result is not identical, but very similar to the one in example 4.25.

Table 2.

Table 2. Normalization Rules for \(\mathbin {\mathbf {R}}\) and \(\mathbin {\mathbf {M}}\)

5.6 Extensions and Fragments

The Operators \(\mathbin {\mathbf {R}}\) and \(\mathbin {\mathbf {M}}\). We have omitted these operators from the proof and the normalization procedure, since they can be expressed in terms of the subset of operators we have considered. However, this translation exponentially increases the number of nodes of the formula, so handling them directly is convenient for efficiency. Their role at every step of the procedure is analogous to that of the \(\mathbin {\mathbf {U}}\) and \(\mathbin {\mathbf {W}}\) operators—that is, we treat \(\mathbin {\mathbf {R}}\) in the same way as \(\mathbin {\mathbf {W}}\), and we treat \(\mathbin {\mathbf {M}}\) in the same way as \(\mathbin {\mathbf {U}}\). The corresponding rules are shown in Table 2.

Dual Normal Form. Recall that a formula is in dual normal form if it satisfies conditions 2 and 3 of Definition 5.3 and no \(\mathbin {\mathbf {W}}\)-node is under a \(\mathbin {\mathbf {U}}\)-node. Given a formula \(\varphi\), let \(\psi\) be a formula in primal normal form equivalent to \(\overline{\varphi }\). Since \(\varphi \equiv \lnot \overline{\varphi } \equiv \lnot \psi\), pushing the negation into \(\psi\) yields a formula equivalent to \(\varphi\) in dual normal form.

Past LTL. Past LTL is an extension of LTL with past operators like yesterday (\(\mathbf {Y}\)), since (\(\mathbf {S}\)), and so forth. In an appendix in the work of Gabbay [15], eight rewrite rules to pull future operators out of past operators are introduced. Combining these rules with ours yields a procedure that transforms a Past LTL formula into a normalized LTL formula, where past operators are gathered in past-only subformulas, and so can be considered atomic propositions.

LTL\([{\mathbf {F}},{\mathbf {G}},{\mathbf {X}}]\). Note that LTL is equivalent to first-order logic (FO) over words [10]. In particular, a translation from LTL to FO that uses only three variables can be obtained by replacing LTL operators by their respective semantic definitions which are already FO-formulas (see Definition 2.2.). Thus, in fact, LTL is equivalent to FO[3], where 3 denotes the number of variables that are used. If we restrict LTL to the unary temporal operators (\({\mathbf {F}}\), \({\mathbf {G}}\), and \({\mathbf {X}}\)) and apply the same idea, we obtain formulas with at most two variables (FO[2]). Indeed, FO[2] is equivalent to LTL\([{\mathbf {F}},{\mathbf {G}},{\mathbf {X}}]\) [14]. However, our normalization procedure does not take this into account: if we start with a formula from LTL\([{\mathbf {F}},{\mathbf {G}},{\mathbf {X}}]\) and apply theorem 5.13, we do not necessarily obtain a normalized formula from LTL\([{\mathbf {F}},{\mathbf {G}},{\mathbf {X}}]\). Is the introduction of \(\mathbin {\mathbf {U}}\) that are not equivalent to \({\mathbf {F}}\) unavoidable?

Luckily, no. We can update our rewrite rules such that if we start with a formula from LTL\([{\mathbf {F}},{\mathbf {G}},{\mathbf {X}}],\) we also obtain a normalized formula from LTL\([{\mathbf {F}},{\mathbf {G}},{\mathbf {X}}]\). The rules are in Table 3, and the correctness proofs proceed as before. The idea is now that we proceed by a case distinction over each \({\mathbf {F}}\psi\) and split into three cases: (a) \({\mathbf {F}}\psi\) never holds; (b) \({\mathbf {F}}\psi\) holds at least once, but finitely often; and (c) \({\mathbf {F}}\psi\) always holds. Moreover, since \({\mathbf {X}}{\mathbf {F}}\psi \equiv {\mathbf {F}}{\mathbf {X}}\psi\) and \({\mathbf {X}}{\mathbf {G}}\psi \equiv {\mathbf {G}}{\mathbf {X}}\psi\), every \({\mathbf {G}}\)-subformula with a nested \({\mathbf {F}}\)-subformula can always be reduced to one or more formulas \({\mathbf {G}}({\mathbf {F}}\psi \vee {\mathbf {G}}\varphi [{\mathbf {F}}\psi ])\) by pushing next operators inside \({\mathbf {F}}\) and \({\mathbf {G}}\), calculating the conjunctive normal form of the argument, and splitting the \({\mathbf {G}}\) operator over the conjunctions.

Table 3.

Table 3. LTL \([{\mathbf {F}},{\mathbf {G}},{\mathbf {X}}]\) -Normalization Rules

Skip 6A NOVEL TRANSLATION FROM LTL TO DETERMINISTIC RABIN AUTOMATA (DRW) Section

6 A NOVEL TRANSLATION FROM LTL TO DETERMINISTIC RABIN AUTOMATA (DRW)

We apply our \(\Delta _2\)-normalization procedure to derive a new translation from LTL to DRW via weak alternating automata (AWW).

It is well known that an LTL formula \(\varphi\) of length n can be translated into an AWW with \(O(n)\) states [36, 47]. We show that if \(\varphi\) is in normal form, then the AWW can be chosen so that every path through the automaton switches at most once between accepting and non-accepting states. We then prove that determinizing AWWs satisfying this additional property is much simpler than the general case. Finally, we give an upper bound on the size of the resulting DRW: if we use the normal form of theorem 4.22, then the number of states of the final DRW is double exponential in the length of \(\varphi\), which is asymptotically optimal.

The section is structured as follows. Section 6.1 introduces basic definitions, Section 6.2 shows how to translate an \(\Delta _2\)-formula into AWWs with at most one alternation between accepting and non-accepting states, and Section 6.3 presents the determinization procedure for this subclass of AWWs.

6.1 Weak and Very Weak Alternating Automata

Let X be a finite set. The set of positive Boolean formulas over X, denoted by \(\mathcal {B}^+(X)\), is the closure of \(X \cup \lbrace {\mathbf {t\hspace{-0.5pt}t}}, {\mathbf {ff}}\rbrace\) under disjunction and conjunction. A set \(S \subseteq X\) is a model of \(\theta \in B^+(X)\) if the truth assignment that assigns true to the elements of S and false to the elements of \(X \setminus S\) satisfies \(\theta\). Observe that if S is a model of \(\theta\) and \(S \subseteq S^{\prime },\) then \(S^{\prime }\) is also a model of \(\theta\). A model S of \(\theta\) is minimal if no proper subset of S is also a model of \(\theta\). The set of minimal models of \(\theta\) is denoted \(\mathcal {M}_\theta\). Observe that \(\mathcal {M}_{\mathbf {t\hspace{-0.5pt}t}}=\lbrace \emptyset \rbrace\) and \(\mathcal {M}_{\mathbf {ff}}=\emptyset\). Two formulas are equivalent, denoted \(\theta \equiv \theta ^{\prime }\), if their sets of minimal models are equal (i.e., \(\mathcal {M}_\theta = \mathcal {M}_{\theta ^{\prime }}\)).

Alternating Büchi and Co-Büchi Automata.

An alternating Büchi automaton over an alphabet \(\Sigma\) is a tuple \(\mathcal {A} = \langle \Sigma , Q, \theta _0, \delta , \alpha \rangle\), where Q is a finite set of states, \(\theta _0 \in \mathcal {B}^+(Q)\) is an initial formula,3 \(\delta :Q \times \Sigma \mapsto \mathcal {B}^+(Q)\) is the transition function, and \(\alpha \subseteq Q\) is the acceptance condition [7, 48].

Example 6.1.

We use as running example the alternating Büchi automaton \(\mathcal {A} = \langle \Sigma , Q, \theta _0, \delta , \alpha \rangle\) over the alphabet \(\Sigma = 2^{\lbrace a, b, c\rbrace }\), where \(Q = \lbrace q_0, q_1, q_2\rbrace\), \(\theta _0 = q_0\), \(\alpha = \lbrace q_1\rbrace\), and \(\delta\) is given by \(\begin{equation*} \delta (q_0, \sigma) = {\left\lbrace \begin{array}{ll} q_0 \vee q_1 & \text{if } \sigma =\lbrace a\rbrace \\ q_2 & \text{if } \sigma =\lbrace b\rbrace \\ {\mathbf {ff}}& \text{otherwise,} \end{array}\right.} \,\, \delta (q_1, \sigma) = {\left\lbrace \begin{array}{ll} q_1 & \text{if } \sigma = \lbrace b\rbrace \\ q_1 \wedge q_2 & \text{otherwise,} \end{array}\right.} \,\, \mbox{ and }\,\, \delta (q_2, \sigma) = {\left\lbrace \begin{array}{ll} {\mathbf {t\hspace{-0.5pt}t}}& \text{if } \sigma = \lbrace c\rbrace \\ q_2 & \text{otherwise.} \end{array}\right.} \end{equation*}\)

A run of \(\mathcal {A}\) on the word w is a directed acyclic graph \(G=(V, E)\) satisfying the following properties:

\(V \subseteq Q \times \mathbb {N}_0\), and \(E \subseteq \lbrace ((q, l), (q^{\prime }, l +1)) \mid q, q^{\prime } \in Q \mbox{ and } l \ge 0 \rbrace\). We call the elements of V nodes. For every \(l \ge 0,\) we let \(Q_l :=\lbrace q :(q,l) \in V \rbrace\).

\(Q_0\) is a minimal model of \(\theta _0\).

For every \(l \ge 0\) and every \(q \in Q_l\), either \(\delta (q, w[l]) \equiv {\mathbf {ff}}\) or the set \(\lbrace q^{\prime } :((q, l), (q^{\prime },l+1)) \in E\rbrace\) is a minimal model of \(\delta (q, w[l])\). (Observe that if \(\delta (q, w[l]) \equiv {\mathbf {t\hspace{-0.5pt}t}}\), then this set is empty.)

For every \(l \ge 1\), if \(q \in Q_l,\) then there exists \(q^{\prime } \in Q_{l-1}\) such that \(((q^{\prime },l-1),(q,l)) \in E\).

Runs can be finite or infinite. A run G is accepting if

(a)

\(\delta (q, w[l]) \not\equiv {\mathbf {ff}}\) for every \(q \in Q_l\), and

(b)

every infinite path of G visits infinitely often nodes \((q, l) \in V\) such that \(q \in \alpha\).

In particular, every finite run satisfying (a) is accepting. \(\mathcal {A}\) accepts a word w iff it has an accepting run G on w. The language \(\mathcal {L}(\mathcal {A})\) recognized by \(\mathcal {A}\) is the set of words accepted by \(\mathcal {A}\). Two alternating Büchi automata are equivalent if they recognize the same language.

Example 6.2.

Figure 2 shows (initial parts of) four runs of the alternating Büchi automaton of example 6.1 on the words \(\lbrace a\rbrace \lbrace a\rbrace \lbrace c\rbrace ^\omega\) (top two runs), \(\lbrace a\rbrace \lbrace a\rbrace \lbrace b\rbrace ^\omega\) (third run), and \(\lbrace b\rbrace \lbrace c\rbrace ^\omega\) (fourth run). Let us check that the first run satisfies the properties of the definition. We have \(Q_0=\lbrace q_0\rbrace\), which is indeed a minimal model of \(\theta _0\). Further, we have the following:

The set \(\lbrace q^{\prime } :((q_0, 0),(q^{\prime },1)) \in E\rbrace = \lbrace q_1\rbrace\) is a minimal model of \(\delta (q_0,\lbrace a\rbrace)= q_0 \vee q_1\).

For every \(l \ge 1\), the set \(\lbrace q^{\prime } :((q_1, l),(q^{\prime },l+1)) \in E\rbrace =\lbrace q_1, q_2\rbrace\) is a minimal model of \(\delta (q_1,\lbrace a\rbrace)= \delta (q_1,\lbrace c\rbrace)= q_1 \wedge q_2\).

For every \(l \ge 2\), the set \(\lbrace q^{\prime } :((q_2,l,(q^{\prime },l+1)) \in E\rbrace = \emptyset\) is a minimal model of \(\delta (q_2, \lbrace c\rbrace)= {\mathbf {t\hspace{-0.5pt}t}}\).

The first run is infinite and accepting, because the only infinite path of the run visits \(q_1\) infinitely often. The second run is finite and not accepting, because \(\delta (q_0, \lbrace c\rbrace) = {\mathbf {ff}}\). The third run is infinite and also not accepting, because the infinite path \((q_0, 0)(q_1, 1) (q_2, 2)(q_2, 3) (q_2, 4) \cdots\) only visits one node with states of \(\alpha\), namely \((q_1, 1)\). The fourth run is finite and accepting, because \(\delta (q_2, \lbrace c\rbrace) = {\mathbf {t\hspace{-0.5pt}t}}\).

Fig. 2.

Fig. 2. Initial parts of four runs of the alternating Büchi automaton of example 6.1 on the words \(\lbrace a\rbrace \lbrace a\rbrace \lbrace c\rbrace ^\omega\) , \(\lbrace a\rbrace \lbrace a\rbrace \lbrace b\rbrace ^\omega\) , and \(\lbrace b\rbrace \lbrace c\rbrace ^\omega\) .

Alternating co-Büchi automata are defined as Büchi automata, replacing condition (b) by the co-Büchi condition (every infinite path of G only visits \(\alpha\)-nodes finitely often).

An alternating automaton is deterministic if for every state \(q \in Q\) and every letter \(a \in \Sigma\) there exists \(q^{\prime } \in Q\) such that \(\delta (q,a) = q^{\prime }\), and non-deterministic if for every \(q \in Q\) and every \(a \in \Sigma\) there exists \(Q^{\prime } \subseteq Q\) such that \(\delta (q,a) = \bigvee _{q^{\prime } \in Q^{\prime }} q^{\prime }\).

Weak and Very Weak Automata.

Let \(\mathcal {A} = \langle \Sigma , Q, \theta _0, \delta , \alpha \rangle\) be an alternating (co-)Büchi automaton. We write \(q \overset{}{\longrightarrow } q^{\prime }\) if there is \(a \in \Sigma\) such that \(q^{\prime }\) belongs to some minimal model of \(\delta (q, a)\). An automaton \(\mathcal {A}\) is weak if there is a partition \(Q_0\), ..., \(Q_m\) of Q such that

for every \(q, q^{\prime } \in Q\), if \(q \overset{}{\longrightarrow } q^{\prime },\) then there are \(i \le j\) such that \(q \in Q_i\) and \(q^{\prime } \in Q_j\), and

for every \(0 \le i \le m\), \(Q_i \subseteq \alpha\) or \(Q_i \cap \alpha = \emptyset\).

\(\mathcal {A}\) is very weak or linear if it is weak and every class \(Q_i\) of the partition is a singleton (i.e., \(|Q_i| = 1\)) [23, 35]. We let \(\text {AWW}\) and \(\text {A1W}\) denote the set of weak and very weak alternating automata, respectively.

Example 6.3.

Figure 3 shows the relation \(\overset{}{\longrightarrow }\) between the states of the automaton of Example 6.1. For example, we have \(q_1 \overset{}{\longrightarrow } q_2\) because \(\lbrace q_1, q_2\rbrace\) is a minimal model of \(\delta (q_1, \lbrace a\rbrace) = q_1 \wedge q_2\). The automaton is very weak because of the partition \(Q_0 = \lbrace q_0\rbrace\), \(Q_1 = \lbrace q_1\rbrace\), \(Q_2 = \lbrace q_2\rbrace\).

Fig. 3.

Fig. 3. Relation \(\overset{}{\longrightarrow }\) between the states of the automaton of Example 6.1.

Observe that for every weak automaton with a co-Büchi acceptance condition, we can define a Büchi acceptance condition on the same structure recognizing the same language. Thus, we will from now on assume that every weak automaton is equipped with a Büchi acceptance condition.

We define the alternation height of a weak alternating automaton. The definition is very similar, but not identical, to the standard one as presented, for example, in the work of Vardi [48]. A weak automaton \(\mathcal {A} = \langle \Sigma , Q, \theta _0, \delta , \alpha \rangle\) has alternation height n if every path \(q \rightarrow q^{\prime } \rightarrow q^{\prime \prime } \cdots\) of \(\mathcal {A}\) alternates at most \(n - 1\) times between \(\alpha\) and \(Q \setminus \alpha\). The automaton of Example 6.1 (see also Figure 3) has height 3 because of the path \(q_0 \rightarrow q_1 \rightarrow q_2\), which exhibits two alternations.

Definition 6.4.

\(\text {AWW}[n]\) (respectively, \(\text {A1W}[n]\)) denote the set of all weak (respectively very weak) alternating automata with height at most n. Further, we let \(\text {AWW}[n,{\bf A}]\) (respectively, \(\text {AWW}[n,\mathbin {\mathbf {R}}]\)) denote the set of automata of \(\text {AWW}[n]\) whose initial formula \(\theta _0\) satisfies \(\theta _0 \in \mathcal {B}^+(\alpha)\) (respectively, \(\theta _0 \in \mathcal {B}^+(Q \setminus \alpha)\)). For instance, the automaton of Figure 3 belongs to \(\text {A1W}[3,\mathbin {\mathbf {R}}]\).

6.2 Translation of LTL to \(\text {A1W}[2]\)

In the standard translation of LTL to \(\text {A1W}\), the states of the \(\text {A1W}\) for a formula \(\varphi\) are subformulas of \(\varphi\) [35, 48]. We show that, at the price of a slightly more complicated translation, the resulting \(\text {A1W}\) for a \(\Delta _i\)-formula belongs to \(\text {A1W}[i]\). Thus, by the Normalization Theorem, every LTL formula can be translated into an equivalent \(\text {A1W}[2]\). The idea of the construction is to use subformulas of the formulas as states, ensuring that

(1)

transitions can only lead from a subformula to itself or to another of a smaller in the syntactic-future hierarchy (see Figure 1(b)), and

(2)

accepting states are subformulas of the \(\Pi\)-classes of the hierarchy.

These two conditions immediately imply that the alternating automaton for a formula of \(\Sigma _i\) has alternation height i; indeed, every change of state involves going down in the hierarchy. There are two small technical problems. First, at the bottom of the hierarchy, we have \(\Sigma _0=\Pi _0\), and so it is not well defined whether bottom formulas are accepting states or not. Fortunately, in our automata, such states are not reachable, and so this question is irrelevant. Second, the hierarchy level of a formula is not always well defined, because some formulas do not belong to one single lowest level of the hierarchy. For example, the formula \({\mathbf {X}}a\) belongs to both \(\Pi _1\) and \(\Sigma _1\). To solve this problem, the states of the automaton will be formulas marked with one of the classes they belong to. For example, the automaton for \({\mathbf {X}}a\) will contain two states \({({\mathbf {X}}a)}_{\scriptscriptstyle \Sigma _1}\) and \({({\mathbf {X}}a)}_{\scriptscriptstyle \Pi _1}\).

Formally, we proceed as follows. A formula \(\varphi\) is proper if it is neither a Boolean constant (\({\mathbf {t\hspace{-0.5pt}t}}\) or \({\mathbf {ff}}\)) nor a conjunction or a disjunction. An atom is a pair \(\langle \varphi ,\Gamma \rangle\), where \(\varphi\) is a proper formula, and \(\Gamma\) is a smallest class of the syntactic-future hierarchy such that \(\varphi \in \Gamma\). A marked formula is a positive Boolean combination of atoms (including \({\mathbf {t\hspace{-0.5pt}t}}\) and \({\mathbf {ff}}\)). Given a formula \(\varphi\) and a class \(\Gamma\) such that \(\varphi \in \Gamma\), we define the marked formula \({\varphi }_{\scriptscriptstyle \Gamma }\) as follows: \({{\mathbf {t\hspace{-0.5pt}t}}}_{\scriptscriptstyle \Gamma } := {\mathbf {t\hspace{-0.5pt}t}}\), \({{\mathbf {ff}}}_{\scriptscriptstyle \Gamma } := {\mathbf {ff}}\), \({(\varphi \vee \psi)}_{\scriptscriptstyle \Gamma } := {\varphi }_{\scriptscriptstyle \Gamma } \vee {\psi }_{\scriptscriptstyle \Gamma }\), \({(\varphi \wedge \psi)}_{\scriptscriptstyle \Gamma } := {\varphi }_{\scriptscriptstyle \Gamma } \wedge {\psi }_{\scriptscriptstyle \Gamma }\); if \(\varphi\) is proper, then \({\varphi }_{\scriptscriptstyle \Gamma }\) is the disjunction of all atoms \(\langle \varphi ,\Gamma _\varphi \rangle\) such that \(\Gamma _\varphi \subseteq \Gamma\) is a smallest class containing \(\varphi\). Observe, in particular, that \({\varphi }_{\scriptscriptstyle \Gamma }={\varphi }_{\scriptscriptstyle \Gamma ^{\prime }}\) for every \(\Gamma ^{\prime } \supseteq \Gamma\).

Example 6.5.

If \(\varphi = {\mathbf {ff}}\vee ({\mathbf {X}}a \wedge c)\), then \({\varphi }_{\scriptscriptstyle \Delta _1} = {\mathbf {ff}}\vee ({({\mathbf {X}}a)}_{\scriptscriptstyle \Delta _1} \wedge {c}_{\scriptscriptstyle \Delta _1}) = (\langle {\mathbf {X}}a,\Sigma _1\rangle \vee \langle ({\mathbf {X}}a),\Pi _1\rangle) \wedge \langle c,\Delta _0\rangle\).

Definition 6.6.

Let \(\varphi \in \Delta _i\) for some \(i \ge 0\). We define the automaton \(\mathcal {A}_\varphi = \langle 2^{Ap}, Q, \theta _0, \delta , \alpha \rangle\) as follows, where the symbol \(\Gamma\) ranges over the classes of the syntactic hierarchy:

Q is the set of atoms \(\langle \psi ,\Gamma \rangle\), where \(\psi\) is a proper subformula of \(\varphi\) and \(\Gamma \subseteq \Delta _i\).

\(\theta _0 = {\varphi }_{\scriptscriptstyle \Delta _i}\) (recall that \(\theta _0\) is a positive Boolean combination of states).

\(\alpha = \lbrace (\psi , \Gamma) \in Q :\Gamma = \Pi _j \mbox{ for some $j \ge 0$}\rbrace\).

\(\delta :Q \times \Sigma \rightarrow \mathcal {B}^+(Q)\) is the restriction to \(Q \times \Sigma\) of a function \(\delta\) that assigns to each marked formula \({\varphi }_{\scriptscriptstyle \Gamma }\) (notice that, abusing language, we also call this function \(\delta\)), a positive Boolean combination of states: \(\begin{align*} \delta ({{\mathbf {t\hspace{-0.5pt}t}}}_{\scriptscriptstyle \Gamma }, \sigma) & = {\mathbf {t\hspace{-0.5pt}t}}& \delta ({{\mathbf {ff}}}_{\scriptscriptstyle \Gamma }, \sigma) & = {\mathbf {ff}}\\ \delta ({a}_{\scriptscriptstyle \Gamma }, \sigma) & = {\left\lbrace \begin{array}{ll} {\mathbf {t\hspace{-0.5pt}t}}& \mbox{if $a \in \sigma $} \\ {\mathbf {ff}}& \mbox{otherwise} \end{array}\right.} & \delta ({\overline{a}}_{\scriptscriptstyle \Gamma }, \sigma) & = {\left\lbrace \begin{array}{ll} {\mathbf {ff}}& \mbox{if $a \in \sigma $} \\ {\mathbf {t\hspace{-0.5pt}t}}& \mbox{otherwise} \end{array}\right.} \\ \delta ({(\varphi \vee \psi)}_{\scriptscriptstyle \Gamma }, \sigma) & = \, \delta ({\varphi }_{\scriptscriptstyle \Gamma }, \sigma) \vee \delta ({\psi }_{\scriptscriptstyle \Gamma }, \sigma) & \delta ({(\varphi \wedge \psi)}_{\scriptscriptstyle \Gamma }, \sigma) & = \, \delta ({\varphi }_{\scriptscriptstyle \Gamma }, \sigma) \wedge \delta ({\psi }_{\scriptscriptstyle \Gamma }, \sigma) \\ \delta ({({\mathbf {X}}\psi)}_{\scriptscriptstyle \Gamma }, \sigma) & = \, {\psi }_{\scriptscriptstyle \Gamma } \\ \delta ({(\varphi \mathbin {\mathbf {U}}\psi)}_{\scriptscriptstyle \Gamma }, \sigma) & = \, \delta ({\psi }_{\scriptscriptstyle \Gamma }, \sigma) \vee \big (\delta ({\varphi }_{\scriptscriptstyle \Gamma }, \sigma) \wedge {(\varphi \mathbin {\mathbf {U}}\psi)}_{\scriptscriptstyle \Gamma } \big) & \delta ({(\varphi \mathbin {\mathbf {R}}\psi)}_{\scriptscriptstyle \Gamma }, \sigma) & = \, \delta ({\psi }_{\scriptscriptstyle \Gamma }, \sigma) \wedge \big (\delta ({\varphi }_{\scriptscriptstyle \Gamma }, \sigma) \vee {(\varphi \mathbin {\mathbf {R}}\psi)}_{\scriptscriptstyle \Gamma }\big) \\ \delta ({(\varphi \mathbin {\mathbf {W}}\psi)}_{\scriptscriptstyle \Gamma }, \sigma) & = \, \delta ({\psi }_{\scriptscriptstyle \Gamma }, \sigma) \vee \big (\delta ({\varphi }_{\scriptscriptstyle \Gamma }, \sigma) \wedge {(\varphi \mathbin {\mathbf {W}}\psi)}_{\scriptscriptstyle \Gamma } \big) & \delta ({(\varphi \mathbin {\mathbf {M}}\psi)}_{\scriptscriptstyle \Gamma }, \sigma) & = \, \delta ({\psi }_{\scriptscriptstyle \Gamma }, \sigma) \wedge \big (\delta ({\varphi }_{\scriptscriptstyle \Gamma }, \sigma) \vee {(\varphi \mathbin {\mathbf {M}}\psi)}_{\scriptscriptstyle \Gamma }\big). \end{align*}\)

Example 6.7.

Consider the formula \(\varphi = a \mathbin {\mathbf {U}}({\mathbf {X}}{\mathbf {G}}(b \vee {\mathbf {X}}{\mathbf {F}}c)) \in \Sigma _3\). The automaton \(\mathcal {A}_\varphi\) is the one shown in Example 6.1, with the correspondence \(q_0 = \langle \varphi ,\Delta _3\rangle\), \(q_1 = \langle {\mathbf {G}}(b \vee {\mathbf {X}}{\mathbf {F}}c),\Pi _2\rangle\), and \(q_2 = \langle {\mathbf {F}}c,\Sigma _1\rangle\). Let us compute \(\delta (q_1, \sigma)\). We get \(\begin{align*} \delta (q_1, \sigma) & = \delta (\langle {\mathbf {G}}(b \vee {\mathbf {X}}{\mathbf {F}}c),\Pi _2\rangle , \sigma) = \delta ({({\mathbf {G}}(b \vee {\mathbf {X}}{\mathbf {F}}c))}_{\scriptscriptstyle \Pi _2}, \sigma) \\ &= \delta ({(b \vee {\mathbf {X}}{\mathbf {F}}c)}_{\scriptscriptstyle \Pi _2}, \sigma) \wedge \langle {\mathbf {G}}(b \vee {\mathbf {X}}{\mathbf {F}}c),\Pi _2\rangle \\ & = (\delta ({b}_{\scriptscriptstyle \Pi _2}, \sigma) \vee \langle {\mathbf {F}}c,\Sigma _1\rangle) \wedge \langle {\mathbf {G}}(b \vee {\mathbf {X}}{\mathbf {F}}c),\Pi _2\rangle = {\left\lbrace \begin{array}{ll} q_1 & \mbox{ if $b \in \sigma $} \\ q_1 \wedge q_2 & \mbox{otherwise.} \end{array}\right.} \end{align*}\)

Lemma 6.8.

Let \(\varphi\) be a formula of \(\Delta _i\) with n proper subformulas. The automaton \(\mathcal {A}_\varphi\) belongs to \(\text {A1W}[i]\), has 2n states, and recognizes \(\mathcal {L}(\varphi)\).

Proof.

Let us first show that \(\mathcal {A}_\varphi\) belongs to \(\text {A1W}[i]\). It follows immediately from the definition of \(\mathcal {A}_\varphi\) that for every two states \(\langle \psi ,\Gamma \rangle , \langle \psi ^{\prime },\Gamma ^{\prime }\rangle\) of \(\mathcal {A}_\varphi\), if \(\langle \psi ,\Gamma \rangle \overset{}{\longrightarrow } \langle \psi ^{\prime },\Gamma ^{\prime }\rangle\), then \(\Gamma ^{\prime } \subseteq \Gamma\). So in every path, there are at most \((i-1)\) alternations between \(\Sigma\) and \(\Pi\) classes. Since the states of \(\alpha\) are those annotated with \(\Pi\) classes, there are also at most \((i-1)\) alternations between \(\alpha\) and non-\(\alpha\) states in a path.

To show that \(\mathcal {A}_\varphi\) has at most 2n states, observe that for every formula \(\psi\) there are at most two smallest classes of the syntactic-future hierarchy containing \(\psi\). So \(\mathcal {A}_\varphi\) has at most two states for each proper subformula of \(\varphi\).

To prove that \(\mathcal {A}_\varphi\) recognizes \(\mathcal {L}(\varphi)\) one shows by induction on \(\psi\) that \(\mathcal {A}_\psi\) recognizes \(\mathcal {L}(\psi)\) from every marked formula \({\psi }_{\scriptscriptstyle \Gamma }\). The proof is completely analogous to the one given in the work of Vardi [48]. □

6.3 Determinization of \(\text {AWW}[2]\)

We present a determinization procedure for \(\text {AWW}[2,\mathbin {\mathbf {R}}]\) and \(\text {AWW}[2,{\bf A}]\) inspired by the break-point construction from Miyano and Hayashi [34]. More precisely, given an \(\text {AWW}[2,\mathbin {\mathbf {R}}]\), we construct an equivalent deterministic co-Büchi automaton, and given an \(\text {AWW}[2,{\bf A}]\), we construct an equivalent deterministic Büchi automaton. We only describe the construction for \(\text {AWW}[2,\mathbin {\mathbf {R}}]\), as the one for \(\text {AWW}[2,{\bf A}]\) is dual.

The section is structured as follows. First, we introduce the notion of the level sequence of a run. Second, we present the fundamental property of \(\text {AWW}[2,\mathbin {\mathbf {R}}]\) that the procedure will exploit. Third, we describe the procedure itself. Finally, we combine the procedures for \(\text {AWW}[2,\mathbin {\mathbf {R}}]\) and \(\text {AWW}[2,{\bf A}]\) into a procedure that, given an arbitrary \(\text {AWW}[2]\), constructs an equivalent deterministic Rabin automaton.

6.3.1 Level Sequence of a Run.

Let \(\mathcal {A} = \langle \Sigma , Q, \theta _0, \delta , \alpha \rangle\) be an alternating Büchi automaton. A set \(U \subseteq Q\) of states is called a level. If \(U \subseteq \alpha\), then U is an \(\alpha\)-level. Given two levels \(U, U^{\prime }\) and a letter \(a \in \Sigma\), we say that \(U^{\prime }\) is a successor of U w.r.t. \(a \in \Sigma\), also called an a-successor of U, if for every \(q \in U\) there is a minimal model \(S_q\) of \(\delta (q, a)\) such that \(U^{\prime } = \bigcup _{q \in U} S_q\). We make two observations:

The empty set of states is a level, and moreover an \(\alpha\)-level for any \(\alpha \subseteq Q\). The empty level has exactly one a-successor for every \(a \in \Sigma\), namely the empty level itself.

A level U has no a-successors iff it contains a state q such that \(\delta (q, a) = {\mathbf {ff}}\). Indeed, if \(\delta (q, a) = {\mathbf {ff}}\), then there is no minimal model of \(\delta (q, a)\). Conversely, if \(\delta (q, a) \ne {\mathbf {ff}}\) for every \(q \in U\), then \(\delta (q, a)\) has at least one minimal model \(S_q\) for every state \(q \in U\), and the set \(U^{\prime }:=\bigcup _{q \in U} S_q\) is a (possibly empty) a-successor of U.

Recall that, given a run \(G=(V, E)\) on a word w, we define for every \(l \ge 0\) the set \(Q_l := \lbrace q :(q,l) \in V\rbrace\). By the definitions of run and level, for every \(l \ge 0,\) either \(\delta (q, a) = {\mathbf {ff}}\) for some \(q \in Q_l\) or \(Q_{l+1}\) is a \(w[l]\)-successor of \(Q_l\). We define the level sequence of G as a certain prefix of the infinite sequence \(Q_0 \, Q_1 \, Q_2 \ldots\):

If there exists a smallest \(l \ge 0\) such that \(Q_l\) has no \(w[l]\)-successor, then the level sequence is the finite sequence \(Q_0 \, Q_1 \cdots Q_l\).

Otherwise, the level sequence of G is the infinite sequence \(Q_0 \, Q_1 \, Q_2 \cdots\) itself.

Example 6.9.

Let us compute the level sequences of the four runs of Figure 2:

First run: \(\lbrace q_0\rbrace \, \lbrace q_1\rbrace \, \lbrace q_1, q_2\rbrace ^\omega\). Since \(\alpha = \lbrace q_1\rbrace\), the only \(\alpha\)-level of the level sequence is \(\lbrace q_1\rbrace\).

Second run: \(\lbrace q_0\rbrace \, \lbrace q_0\rbrace \, \lbrace q_0\rbrace\). The level sequence ends at the second level because \(\delta (q_0, \lbrace c\rbrace) = {\mathbf {ff}}\).

Third run: \(\lbrace q_0\rbrace \, \lbrace q_1\rbrace \, \lbrace q_1, q_2\rbrace ^\omega\). Observe that although the first and third runs have the same sequence of levels, the first run is accepting but the second one is not.

Fourth run: \(\lbrace q_0\rbrace \, \lbrace q_0\rbrace \, \emptyset ^\omega\). Indeed, \(\emptyset\) is a c-successor of \(\lbrace q_0\rbrace\) because \(\delta (q_0, c)= {\mathbf {t\hspace{-0.5pt}t}}\), and so \(\emptyset\) is a minimal model of \(\delta (q_0, c)\). While the run itself is finite, its level sequence is infinite.

6.3.2 Fundamental Property of \(\text {AWW}[2,\mathbin {\mathbf {R}}]\).

The first and third runs of Example 6.9 have the same level sequence, but one is accepting and the other is not. Therefore, the level sequence of a run does not determine in general whether the run is accepting. However, the runs of Example 6.9 are runs of an automaton in \(\text {AWW}[3,\mathbin {\mathbf {R}}]\). The following lemma shows that for \(\text {AWW}[2,\mathbin {\mathbf {R}}],\) the level sequence does determine acceptance; in other words, to decide whether a run is accepting or not, it suffices to examine its level sequence.

Lemma 6.10.

Let \(\mathcal {A} = \langle \Sigma , Q, \theta _0, \delta , \alpha \rangle\) be an \(\text {AWW}[2,\mathbin {\mathbf {R}}]\). A run \(G = (V, E)\) of \(\mathcal {A}\) on a word w is accepting iff

(a)

the level sequence of G is the infinite sequence \(Q_0 \, Q_1 \, Q_2 \cdots\), and

(b)

there is a threshold \(k \ge 0\) such that \(Q_l\) is an \(\alpha\)-level for every \(l \ge k\).

Proof.

We first observe that the level sequence of G satisfies the following property for every \(l \ge 0\): if the sets \(Q_l\) and \(Q_{l+1}\) belong to the sequence, then \(Q_{l+1}\) is a \(w[l]\)-successor of \(Q_l\). Indeed, if \(Q_{l+1}\) belongs to the level sequence, then \(\delta (q, a) \ne {\mathbf {ff}}\) for every \(q \in Q_l\) and so, by the definition of a run, the set \(Q_{l+1}\) is a \(w[l]\)-successor of \(Q_l\). Now we prove the two directions of the lemma.

(\(\Rightarrow\)): Let \(G=(V, E)\) be an accepting run of \(\mathcal {A}\) on w. By the definition of acceptance, we have \(\delta (q, w[l]) \ne {\mathbf {ff}}\) for every \(l \ge 0\) and \(q \in Q_l\), and so, by the preceding observation, \(Q_{l+1}\) is a \(w[l]\)-successor of \(Q_l\). By the definition of the level sequence of a run, the level sequence of G is infinite. This proves (a).

Let us now prove (b). Say that a node \((q, l) \in V\) is accepting if \(q \in \alpha\), and rejecting otherwise. We prove two claims.

Claim 1.

All descendants of an accepting node of G are also accepting. □

Proof.

Since \(\mathcal {A}\) is an \(\text {AWW}[2,\mathbin {\mathbf {R}}]\), the initial formula \(\theta _0\) of \(\mathcal {A}\) satisfies \(\theta _0 \in \mathcal {B}^+(Q \setminus \alpha)\) by Definition 6.4, and so every node \((q, 0)\) of G is rejecting. So every node of G is a descendant of a rejecting node. Since \(\mathcal {A}\) has alternation height 2, every path of G has at most one alternation of accepting and rejecting nodes. Therefore, no descendant of an accepting node is rejecting. □

Claim 2.

The set \(R \subseteq V\) of rejecting nodes of V is finite.

Proof.

Assume that R is infinite. Let \(G_R = (R, E \cap (R\times R))\), and let \((q, l) \in R\). If \(l \ge 1\), then by the definition of a run, \((q, l)\) has at least one predecessor in G. By Claim 1, all predecessors of a rejecting node are rejecting, and so \((q, l)\) also has at least one predecessor in \(G_R\). It follows that the only nodes of \(G_R\) without predecessors are those of the form \((q, 0)\), and so finitely many. Since R is infinite and \(G_R\) is finitely branching, \(G_R\) contains an infinite path by König’s lemma. By the definition of \(G_R\), this path only contains non-accepting nodes, contradicting that G is an accepting run. This proves the claim. □

By Claim 2, there exists a threshold k such that \(k \ge m\) for every \((q, m) \in R\). It follows that \((q, l) \in V\) is an accepting node for every \(l \ge k\), and so that \(Q_l\) is an \(\alpha\)-level for every \(l \ge k\).

(\(\Leftarrow\)): We prove this direction for arbitrary alternating automata. Let \(G=(V, E)\) be a run satisfying (a) and (b). We show that it also satisfies the two properties of an accepting run:

\(\delta (q, w[l]) \not\equiv {\mathbf {ff}}\) for every \(l \ge 0\) and every \(q \in Q_l\).

By (a), the level sequence of G is infinite, and so, by the definition of the level sequence of a run, we are done.

Every infinite path of G contains infinitely many accepting nodes.

Every infinite path of G contains exactly one node of the form \((q, l)\) for every \(l \ge 0\). By (b), the node \((q, l)\) of the path is accepting for every \(l \ge k\). \(□\)

6.3.3 A Determinization Procedure for \(\text {AWW}[2,\mathbin {\mathbf {R}}]\).

Let \(\mathcal {A}\) be an \(\text {AWW}[2,\mathbin {\mathbf {R}}]\) with set of states Q and \(|Q|=n\). We construct an equivalent deterministic co-Büchi automaton \(\mathcal {D}\) whose states are pairs \((\mathit {Levels}, \mathit {Promising})\), where \(\mathit {Levels}\subseteq 2^Q\) (recall that a level of an \(\text {AWW}\) is a set of states) and \(\mathit {Promising}\subseteq 2^\alpha \cap \mathit {Levels}\). Since there exist \(3^{2^n}\) pairs satisfying these conditions, \(\mathcal {D}\) has at most \(3^{2^n}\) states.

Let us first give an informal but hopefully intuitive description of the transitions and acceptance condition of the deterministic co-Büchi automaton. The transitions of \(\mathcal {D}\) are chosen to ensure that, after reading a finite word \(w_{0i} = a_0 \ldots a_i\), the automaton is in the state \((\mathit {Levels}_i\), \(\mathit {Promising}_i)\), where

\(\mathit {Levels}_i\) contains the i-th levels of all runs of \(\mathcal {A}\) on all words having \(w_{0i}\) as prefix (when they exist), and

\(\mathit {Promising}_i \subseteq \mathit {Levels}_i\) contains some \(\alpha\)-levels of \(\mathit {Levels}_i\). These levels are “promising,” intuitively meaning that they could belong to the infinite tail of \(\alpha\)-levels of the level sequence of an accepting run.

For this, when \(\mathcal {D}\) reads \(a_{i+1}\), it moves from \((\mathit {Levels}_i\), \(\mathit {Promising}_i)\) to \((\mathit {Levels}_{i+1}\), \(\mathit {Promising}_{i+1})\), where \(\mathit {Levels}_{i+1}\) contains all the \(a_{i+1}\)-successors of the levels of \(\mathit {Levels}_i\), and \(\mathit {Promising}_{i+1}\) is defined as follows:

If \(\mathit {Promising}_i \ne \emptyset\), then \(\mathit {Promising}_{i+1}\) contains the \(a_{i+1}\)-successors of \(\mathit {Promising}_i\). (Recall that \(\mathcal {A}\) is an \(\text {AWW}[2,\mathbin {\mathbf {R}}]\), and so if \(\mathit {Promising}_i\) contains \(\alpha\)-levels, then so does \(\mathit {Promising}_{i+1}\).)

If \(\mathit {Promising}_i = \emptyset\), then \(\mathit {Promising}_{i+1}\) contains all \(\alpha\)-levels of \(\mathit {Levels}_{i+1}\).

Finally, the co-Büchi condition contains the states \((\mathit {Levels}\), \(\mathit {Promising})\) such that \(\mathit {Promising}=\emptyset\).

Intuitively, during its run on a word w, the automaton \(\mathcal {D}\) tracks the promising levels, removing those without successors, because they cannot belong to an accepting run. If some run G of \(\mathcal {A}\) accepts w, then by Lemma 6.10 the level sequence \(Q_0 \, Q_1 \, Q_2 \cdots\) of G is infinite, and there is \(k \ge 0\) such that the levels \(Q_k, Q_{k+1}, Q_{k+2} \cdots\) are all promising. So the sets \(\mathit {Promising}_k, \mathit {Promising}_{k+1}, \mathit {Promising}_{k+2} \cdots\) are all non-empty, and \(\mathcal {D}\) accepts. Conversely, assume there is k such that \(\mathit {Promising}_k, \mathit {Promising}_{k+1}, \mathit {Promising}_{k+2} \cdots\) are all non-empty. Then we can construct a run of \(\mathcal {A}\) on w by picking a sequence of levels \(U_k \, U_{k+1} \, U_{k+2} \, \cdots\) such that \(U_k \in \mathit {Promising}_k\) and \(U_l\) is a \(w[l]\)-successor of \(U_{l-1}\) for every \(l \gt k\), which belong by definition to \(\mathit {Promising}_l\), and then picking \(U_0 \, U_1 \cdots U_{k-1}\) such that \(U_l \in \mathit {Levels}_l\) for every \(0 \le l \le k-1\). The level sequence of this run is infinite, and from \(U_k\) onward it only contains \(\alpha\)-levels, which implies that the run is accepting.

Lemma 6.11.

For every \(\mathcal {A} \in \text {AWW}[2,\mathbin {\mathbf {R}}]\) and infinite word w on \(\Sigma\), if there is \(k \ge 0\) such that \(\mathit {Promising}_i \ne \emptyset\) for all \(i \ge k\), there is an infinite sequence \(U_k \, U_{k+1} \cdots U_i \, U_{i+1} \cdots\) such that \(U_i \in \mathit {Promising}_i\) and \(U_{i+1}\) is a \(w[i+1]\)-successor of \(U_i\) for all \(i \ge k\).

Proof.

Let \(F = (V, E)\) be the graph with vertices \(V = \bigcup _{i \ge k} \lbrace (U_i, i) \mid U_i \in \mathit {Promising}_i \rbrace\) and edges \(E = \bigcup _{i \ge k} \lbrace ((U, i),(U^{\prime }, i + 1)) \mid U \in \mathit {Promising}_i \text{ and $U^{\prime }$ is a $w[i]$-successor of $U$}\rbrace\). This is well defined since such a \(U^{\prime }\) belongs to \(\mathit {Promising}_{i+1}\) by definition. V is infinite because \(\mathit {Promising}_i \ne \emptyset\) for all \(i \ge k\), and the degree of each vertex is finite since \(|\mathit {Promising}_i| \le 2^{|Q|}\). Moreover, F is acyclic, because the second entry of the pair is monotonically increasing and consists of as many connected components as \(U_k \in \mathit {Promising}_k\). Indeed, \(U_{i+1} \in \mathit {Promising}_{i+1}\) is a \(w[i+1]\)-successor of some \(U_i \in \mathit {Promising}_i\) by definition of the \(\mathit {Promising}\) sets, so inductively, we can go back to a set \(U_k \in \mathit {Promising}_k\). Hence, F is the union of \(|\mathit {Promising}_k| \le 2^{|Q|}\) trees, and at least one of them must be infinite because V is.

Let T be an infinite tree of F. Since it is both finite and finitary, by the König lemma, there is an infinite branch \((U_k, k), (U_{k+1}, k+1), \ldots\). We can then extract the infinite sequence \(U_k \, U_{k+1} \cdots\) satisfying the conditions in the statement of the lemma. □

For the formal definition of \(\mathcal {D,}\) it is convenient to identify subsets of \({2^Q}\) and \(2^\alpha\) with formulas of \(\mathcal {B}^+(Q)\), \(\mathcal {B}^+(\alpha)\) (i.e., we identify a formula and its set of models). Further, we lift \(\delta :Q \times \Sigma \mapsto \mathcal {B}^+(Q)\) to \(\delta :\mathcal {B}^+(Q) \times \Sigma \mapsto \mathcal {B}^+(Q)\) in the canonical way. Finally, given \(\varphi \in \mathcal {B}^+(Q)\) and \(S \subseteq Q\), we let \(\varphi [{\mathbf {ff}}/ S]\) denote the result of substituting \({\mathbf {ff}}\) for every state of S in \(\varphi\). With these notations, the deterministic Büchi automaton \(\mathcal {D}\) equivalent to \(\mathcal {A}\) can be described in four lines: \(\mathcal {D} = \langle \Sigma , Q^{\prime }, q_0^{\prime }, \delta ^{\prime }, \alpha ^{\prime } \rangle\), where \(Q^{\prime } = \mathcal {B}^+(Q) \times \mathcal {B}^+(\alpha)\), \(q_0^{\prime } = (\theta _0, {\mathbf {ff}})\), \(\alpha ^{\prime } = \lbrace (\theta , {\mathbf {ff}}) :\theta \in \mathcal {B}^+(Q) \rbrace\), and \(\begin{equation*} \delta ^{\prime }((q, p), a) = {\left\lbrace \begin{array}{ll} (\delta (q, a), \delta (p, a)) & \text{if $p \not\equiv {\mathbf {ff}}$} \\ (\delta (q, a), \delta (q, a)[{\mathbf {ff}}/ Q \setminus \alpha ]) & \text{otherwise.} \end{array}\right.} \end{equation*}\)

Lemma 6.12.

For every \(\mathcal {A} \in \text {AWW}[2,\mathbin {\mathbf {R}}]\) with n states, the deterministic co-Büchi automaton \(\mathcal {D}\) defined previously satisfies \(L(\mathcal {A}) = L(\mathcal {D})\) and has \(3^{2^n}\) states. Dually, for every \(\mathcal {A}^{\prime } \in \text {AWW}[2,{\bf A}]\) with \(n^{\prime }\) states, there exists a deterministic Büchi automaton \(\mathcal {D}^{\prime }\) that has \(3^{2^{n^{\prime }}}\) states and that satisfies \(L(\mathcal {A}^{\prime }) = L(\mathcal {D}^{\prime })\).

Proof.

Assume \(\mathcal {A}\) accepts a word w. Let \(G = (V, E)\) be an accepting run of \(\mathcal {A}\) on w. Since \(\mathcal {A} \in \text {AWW}[2,\mathbin {\mathbf {R}}]\), we can apply Lemma 6.10, and so there exists an index k such that all levels of G after the k-th one are \(\alpha\)-levels and have at least one successor. It follows that the run \((\mathit {Levels}_0, \mathit {Promising}_0), (\mathit {Levels}_1, \mathit {Promising}_1) \ldots\) of \(\mathcal {D}\) on w satisfies \(\mathit {Promising}_l\ne \emptyset\) for every \(l \ge k\), and so \(\mathcal {D}\) accepts.

Assume \(\mathcal {D}\) accepts a word w. Let \((\mathit {Levels}_0\), \(\mathit {Promising}_0)\), \((\mathit {Levels}_1\), \(\mathit {Promising}_1) \ldots\) be the run of \(\mathcal {D}\) on w. By the definition of the acceptance condition of \(\mathcal {D}\), there is \(k \ge 0\) such that \(\mathit {Promising}_i \ne \emptyset\) for every \(i \ge k\). By lemma 6.11, there is an infinite sequence \(U_k \, U_{k+1} \cdots U_{i} \cdots\) such that \(U_i \in \mathit {Promising}_i\) and \(U_{i+1}\) is a \(w[i+1]\)-successor of \(U_i\) for every \(i \ge k\). Then, choose levels \(U_0 \, U_1 \cdots U_{k-1}\) such that for every \(1 \le l \le k\), the level \(U_{l-1}\) is a predecessor of \(U_l\) that belongs to \(\mathit {Levels}_{l-1}\) (i.e., \(U_l\) is a \(w[l]\)-successor of \(U_{l-1}\); this is always possible by the definition of \(\delta ^{\prime }\)). Let \(G=(V, E)\) be the graph given by

for every \(l \ge 0\), \((q, l) \in V\) iff \(q \in U_l\), and

\(((q,l), (q^{\prime }, l+1)) \in E\) iff \(q \in U_l\) and \(q^{\prime } \in S_q\), where \(S_q\) is a minimal model of \(\delta (q, w[l])\) satisfying \(U_{l+1} = \bigcup _{q \in U_l} S_q\), which exists by definition.

Since \(U_k \in \mathit {Promising}_k\), and promising sets only contain \(\alpha\)-levels, \(U_k\) is an \(\alpha\)-level. Since \(\mathcal {A} \in \text {AWW}[2,\mathbin {\mathbf {R}}]\), successors of \(\alpha\)-levels are also \(\alpha\)-levels, and so all of \(U_k, U_{k+1}, U_{k+2}, \ldots\) are \(\alpha\)-levels. By Lemma 6.10, G is an accepting run of \(\mathcal {A}\).

The dual part of the lemma is proven by complementing \(\mathcal {A}^{\prime }\), applying the construction we have just described, and replacing the co-Büchi condition by a Büchi condition. □

6.3.4 A Determinization Procedure for \(\text {AWW}[2]\).

Lemma 6.12 leads to a determinization procedure for \(\text {AWW}[2]\). Combining the procedures for \(\text {AWW}[2,\mathbin {\mathbf {R}}]\) and \(\text {AWW}[2,{\bf A}]\), we show how to construct for every automaton in \(\text {AWW}[2]\) an equivalent deterministic Rabin automata.

Rabin automata generalize both Büchi and co-Büchi automata. A Rabin automaton over an alphabet \(\Sigma\) is a tuple \(\mathcal {A} = \langle \Sigma , Q, q_0, \delta , \alpha \rangle\), where \(\Sigma , Q, q_0, \delta\) are defined as for Büchi or co-Büchi automata, and \(\alpha\) is a set of Rabin pairs \((F, I) \subseteq Q \times Q\). Deterministic Rabin automata are defined as for Büchi or co-Büchi automata (the definitions do not involve the accepting condition \(\alpha\)). The same applies to the runs of a Rabin automaton. The only new definition is that of an accepting run. A run \(G=(V,E)\) of a Rabin automaton is accepting if

(a)

\(\delta (q, w[l]) \not\equiv {\mathbf {ff}}\) for every \(q \in Q_l\), and

(b)

for every infinite path of G there exists a Rabin pair \((F,I) \in \alpha\) such that the path visits infinitely often nodes \((q, l) \in V\) such that \(q \in I\), and only finitely often nodes \((q, l) \in V\) such that \(q \in F\).

We abbreviate deterministic Rabin automaton to DRW.

Lemma 6.13.

For every \(\mathcal {A} = \langle \Sigma , Q, \theta _0, \delta , \alpha \rangle \in \text {AWW}[2]\) with \(n = |Q|\) states and \(m = |\mathcal {M}_{\theta _0}|\) minimal models of \(\theta _0\) there exists an equivalent DRW \(\mathcal {D}\) with \(2^{2^{n + \log _2 m + 2}}\) states and with m Rabin pairs.

Proof.

Let \(\mathcal {A}= \langle \Sigma , Q, \theta _0, \delta , \alpha \rangle\). Given \(Q^{\prime } \subseteq Q\), let \(\mathcal {A}_{Q^{\prime }}\) be the AWW[2] obtaining from \(\mathcal {A}\) by substituting \(\bigwedge _{q \in Q^{\prime }} q\) for the initial formula \(\theta _0\). We claim that for each minimal model \(S \in \mathcal {M}_{\theta _0}\), we can construct a deterministic Rabin automaton (DRW) \(\mathcal {D}_S\) with at most \(2^{2^{n+2}}\) states and a single Rabin pair, recognizing the same language as \(\mathcal {A}_{S}\). Let us first see how to construct \(\mathcal {D}\), assuming the claim holds. By the claim, we have \(\mathcal {L}(\mathcal {A}) = \bigcup _{S \in \mathcal {M}_{\theta _0}} \mathcal {L}(\mathcal {A}_{S})\). So we define \(\mathcal {D}\) as the union of all of the automata \(\mathcal {D}_S\). Recall that given two DRWs with \(n_1, n_2\) states and \(p_1, p_2\) Rabin pairs, we can construct a DRW for the union of their languages with \(n_1 \times n_2\) states and \(p_1 + p_2\) pairs. Since \(\theta _0\) has m models, \(\mathcal {D}\) has at most m Rabin pairs and \(\left(2^{2^{n+2}}\right)^m = 2^{2^{n + \log _2 m + 2}}\) states.

It remains to prove the claim. Partition S into \(S \cap \alpha\) and \(S \setminus \alpha\). We have \(\mathcal {A}_{S \cap \alpha } \in \text {AWW}[2,{\bf A}]\) and \(\mathcal {A}_{S \setminus \alpha } \in \text {AWW}[2,\mathbin {\mathbf {R}}]\). By Lemma 6.12, there exists a deterministic Büchi automaton \(\mathcal {D}_{S \cap \alpha }\) and a deterministic co-Büchi automaton \(\mathcal {D}_{S \setminus \alpha }\) equivalent to \(\mathcal {A}_{S \cap \alpha }\) and \(\mathcal {A}_{S \setminus \alpha }\), respectively, both with at most \(3^{2^n}\) states. Intersecting these two automata yields a deterministic Rabin automaton with at most \(3^{2^{n+1}} \le 2^{2^{n+2}}\) states and a single Rabin pair, and we are done. □

Remark 6.14.

The construction of Lemma 6.12 is close to the translation by Miyano and Hayashi [35] of alternating automata to non-deterministic automata, and to the translation by Schneider [45, p. 219] of \(\Sigma _2\) formulas to deterministic co-Büchi automata, all based on the break-point idea.

6.4 Translation of LTL to DRW

Combining a normalization procedure LTL\(\rightarrow \Delta _2\), the procedure \(\Delta _2\rightarrow \text {A1W}[2]\) of Section 6.2 and the determinization procedure of Section 6.3, we obtain a translation LTL\(\rightarrow\)DRW. Since the procedures involve a single-exponential, a linear, and a double-exponential blow-up, respectively, a straightforward composition only yields a triple-exponential bound. However, a closer examination of the closed-form \(\Delta _2\)-formula provided by theorem 4.22 allows us to reduce the bound to double exponential.

Given a formula \(\varphi\), by theorem 4.22, we have (10) \(\begin{align} \varphi \equiv \bigvee _{M\subseteq B_{{\mathbf {G}}{\mathbf {F}}}\\ N\subseteq B_{{\mathbf {F}}{\mathbf {G}}}} \varphi _{M,N} \quad \text{ where } \quad \varphi _{M,N} := \left({\varphi \langle M\rangle } \wedge \bigwedge _{{\mathbf {F}}{\mathbf {G}}\psi \in N} {\mathbf {F}}{\mathbf {G}}({ {\psi }{\langle \hspace{-2.13387pt}\langle {M}\rangle \hspace{-2.13387pt}\rangle } }) \wedge \bigwedge _{{\mathbf {G}}{\mathbf {F}}\psi \in M} {\mathbf {G}}{\mathbf {F}}({ {\psi }⟦ {N}⟧ }) \right)\ . \end{align}\) The key result is that each \(\varphi _{M,N}\) has a small number of different proper subformulas. (In fact, the number is even linear in the number of subformulas of \(\varphi\).) Invoking lemma 6.8, we obtain an \(\text {A1W}[2]\) with \(O(|{\it sf}\,(\varphi)|)\) states that recognizes \(\mathcal {L}(\varphi _{M,N})\).

Lemma 6.15.

Let \(\varphi\) be a formula. For every \(M \subseteq B_{{\mathbf {G}}{\mathbf {F}}}\) and \(N \subseteq B_{{\mathbf {F}}{\mathbf {G}}}\), there exists an \(\text {A1W}[2]\) with \(O(|{\it sf}\,(\varphi)|)\) states that recognizes \(\mathcal {L}(\varphi _{M,N})\).

Proof.

By Lemma 6.8, some \(\text {A1W}[2]\) with \(O(|{\it sf}\,(\varphi _{\!M,N})|)\) states recognizes \(\mathcal {L}(\varphi _{M,N})\). So it suffices to show that \(|{\it sf}\,(\varphi _{M,N}) | \in O(|{\it sf}\,(\varphi)|)\), but this is lemma 4.24. □

Theorem 6.16.

Let \(\varphi\) be a formula with n proper subformulas. Let \(\mathcal {A}_\varphi\) be the DRW obtained by

normalizing \(\varphi\) into \(\displaystyle \bigvee _{M\subseteq B_{{\mathbf {G}}{\mathbf {F}}}, N\subseteq B_{{\mathbf {F}}{\mathbf {G}}}} \varphi _{M,N}\) as in Equation (10),

constructing a \(\text {A1W}[2]\) \(\mathcal {A}_{M,N}\) for each \(\varphi _{M, N}\) as in Definition 6.6,

transforming each \(\mathcal {A}_{M,N}\) into an equivalent DRW \(\mathcal {A}^{\prime }_{M,N}\) as in Lemma 6.13, and

constructing a DRW recognizing the union of the languages of all \(\mathcal {A}^{\prime }_{M,N}\).

The DRW \(\mathcal {A}_\varphi\) recognizes \(\mathcal {L}(\varphi)\), and has \(2^{2^{\mathcal {O}(n^2)}}\) states and \(2^n\) Rabin pairs.

Proof.

Due to lemma 6.15, the alternating automaton \(\mathcal {A}_{M,N}\) that recognizes \(\mathcal {L}(\varphi _{M,N})\) belongs to \(\text {A1W}[2]\) and has \(O(n)\) states. Applying the construction of Lemma 6.13, we obtain a DRW with \(2^{2^{O(n)}}\) states and a single Rabin pair. Using the union operation for DRWs, we obtain a DRW for \(\varphi\) with \((2^{2^{O(n)}})^{2^{O(n)}} = 2^{2^{O(n)}}\) states and \(2^n\) Rabin pairs. □

6.5 Determinization of Lower Classes

We now determinize \(\text {AWW}[1]\). A deterministic automaton is terminal-accepting if all states are rejecting except a single accepting sink with a self-loop, and terminal-rejecting if all states are accepting except a single rejecting sink with a self-loop. It is easy to see that terminal-accepting and terminal-rejecting deterministic automata are closed under union and intersection. When applied to \(\text {AWW}[1,{\bf A}]\), the construction of Lemma 6.12, yields automata whose states have a trivial \(\mathit {Promising}\) set (either the empty set or the complete level). Further, the successor of an \(\alpha\)-level is also an \(\alpha\)-level. From these observations we easily get the following corollary.

Corollary 6.17.

Let \(\mathcal {A}\) be an automaton with n states:

If \(\mathcal {A} \in \text {AWW}[1,\mathbin {\mathbf {R}}]\) (respectively, \(\mathcal {A} \in \text {AWW}[1,{\bf A}]\)), then there exists a deterministic terminal-accepting (respectively, terminal-rejecting) automaton recognizing \(\mathcal {L}(\mathcal {A})\) with \(2^{2^n}\) states.

If \(\mathcal {A} \in \text {AWW}[1]\), then there exists deterministic weak automaton recognizing \(\mathcal {L}(\mathcal {A})\) with \(2^{2^{n + \log _2 |\mathcal {M}_{\theta _0}| + 1}}\) states.

Skip 7A HIERARCHY OF ALTERNATING WEAK AND VERY WEAK AUTOMATA Section

7 A HIERARCHY OF ALTERNATING WEAK AND VERY WEAK AUTOMATA

The expressive power of weak and very weak alternating automata has been studied by Gurumurthy et al. [19] and by Pelánek and Strejcek [38], respectively. Both of these works identify the number of alternations between accepting and non-accepting states as an important parameter, and define a hierarchy of automata classes based on it. Let \(\text {AWW}_{\text{G}}[k]\) denote the class of \(\text {AWW}\) with at most \((k-1)\) alternations defined by Gurumurthy et al. [19]. Similarly, let \(\text {A1W}_{\text{PS}}[k,{\bf A}]\) and \(\text {A1W}_{\text{PS}}[k,\mathbin {\mathbf {R}}]\) denote the classes of \(\text {A1W}\) with at most \((k-1)\) alternations and accepting or non-accepting initial state, respectively, defined by Pelánek and Strejcek [38]. Finally, define \(\text {A1W}_{\text{PS}}[k] = \text {A1W}_{\text{PS}}[k,{\bf A}] \cup \text {A1W}_{\text{PS}}[k,\mathbin {\mathbf {R}}]\).4 Figure 4 shows the results of Gurumurthy et al. [19] and Pelánek and Strejcek [38]. We abuse language, and, for example, write \(\Pi _2 = \text {A1W}_{\text{PS}}[2, {\bf A}]\) to denote that the class of languages satisfying formulas in \(\Pi _2\) and the class of languages recognized by automata in \(\text {A1W}_{\text{PS}}[2, {\bf A}]\) coincide.

Fig. 4.

Fig. 4. Expressive power of AWWs after Gurumurthy et al. [19], and of A1Ws after Pelánek and Strejcek [38].

Unfortunately, the results of Gurumurthy et al. [19] and Pelánek and Strejcek [38] do not “match.” Due to slight differences in the definitions of height, such as the treatment of \(\delta (\cdot) = {\mathbf {ff}}\) and \(\delta (\cdot) = {\mathbf {t\hspace{-0.5pt}t}}\), the restriction to very weak automata of \(\text {AWW}_{\text{G}}[k]\) does not match any class \(\text {A1W}_{\text{PS}}[k^{\prime }]\) (i.e., \(\text {AWW}_{\text{G}}[k] \cap \text {A1W}\ne \text {A1W}_{\text{PS}}[k^{\prime }]\)) and, vice versa, extending \(\text {A1W}_{\text{PS}}[k]\) does not yield any \(\text {AWW}_{\text{G}}\) \([k^{\prime }]\). We show that our new definition of height unifies the two hierarchies, yielding the pleasant result shown in Figure 5.

Fig. 5.

Fig. 5. Expressive power of AWWs and A1Ws.

Proposition 7.1.

We have the following:

(1)

\(\!\text {AWW}[2] =\) \(\omega\)-regular, \(\text {AWW}[2,{\bf A}]\) \(=\) \(\text {DBW}\), and \(\text {AWW}[2,\mathbin {\mathbf {R}}]\) \(=\) \(\text {DCW}\).

(2)

\(\text {AWW}[1]\) \(\!=\) DWW, \(\text {AWW}[1,{\bf A}] =\) safety, and \(\text {AWW}[1,\mathbin {\mathbf {R}}] =\) co-safety.

(3)

For \(i\in \lbrace 1,2\rbrace\), \(\text {A1W}[i] = \Delta _i\), \(\text {A1W}[i,\mathbin {\mathbf {R}}] = \Sigma _i\), and \(\text {A1W}[i,{\bf A}] = \Pi _i\).

Proof.

We sketch the proof of (1) and (3). The proof of (2) is analogous to that of (1).

(1) The \(\subseteq\)-inclusion follows immediately from Lemmas 6.126.13 and Corollary 6.17. The \(\supseteq\)-inclusion is a slight adaptation of similar proofs in the work of Gurumurthy et al. [19]. To translate a DCW into a \(\text {AWW}[2,\mathbin {\mathbf {R}}],\) we duplicate the set of states into two sets of marked and unmarked states. We remove from the marked states all rejecting states, and add transitions that allow unmarked states to nondeterministically choose to move to another unmarked state, or to its marked copy. Finally, we define all unmarked states to be rejecting and all marked states to be accepting. The proof of \(\text {AWW}[2,{\bf A}] \supseteq \text {DBW}{}\) is dual. Finally, the inclusion \(\text {AWW}[2] \supseteq \text{$\omega $-regular}\) follows from the previous two results; indeed, every \(\omega\)-regular language is recognized by a DRW [43], and every DRW is equivalent to a Boolean combination of DBWs and DCWs, which we can express in the initial formula \(\theta _0\) of the \(\text {AWW}[2]\).

(3) The \(\supseteq\)-inclusion for \(\Delta _i\) is proven in Lemma 6.8. For a formula \(\varphi\) that belongs to \(\Sigma _i\) (\(\Pi _i\)), we also rely on Lemma 6.8, but add a new initial state, \({\varphi }_{\scriptscriptstyle \Sigma _i}\) (\({\varphi }_{\scriptscriptstyle \Pi _i}\)), that is marked as rejecting (accepting) such that the automaton belongs to \(\text {A1W}[i,\mathbin {\mathbf {R}}]\) (\(\text {A1W}[i,{\bf A}]\)).

For the \(\subseteq\)-inclusion, let \(\mathcal {A} = \langle \Sigma , Q, \theta _0, \delta , \alpha \rangle\) be a very weak alternating automaton with \(\Sigma = 2^{Ap}\). We use the translation from \(\text {A1W}\) to LTL presented in the work of Löding and Thomas [25, Theorem 6], with minimal modifications, to define a formula \(\psi _\mathcal {A}\) such that \(\mathcal {L}(\psi _\mathcal {A})=\mathcal {L}(\mathcal {A})\). Then, we show that when \(\mathcal {A}\) belongs to one of the classes in the hierarchy, \(\psi _\mathcal {A}\) belongs to the corresponding class of formulas. For the proof of correctness of the translation, we refer the reader to the work of Löding and Thomas [25].

For the definition of \(\psi _\mathcal {A}\), we assign to every \(\theta \in \mathcal {B}^+(Q)\) an LTL formula \(\psi (\theta)\) such that \(\mathcal {L}(\psi (\theta)) = \mathcal {L}(\mathcal {A}_\theta)\), where \(\mathcal {A}_\theta\) denotes \(\mathcal {A}\) with \(\theta\) as initial formula, and set \(\psi _\mathcal {A} := \psi (\theta _0)\). Similarly, for the definition of \(\psi (\theta)\), we first assign a formula \(\psi (q)\) to every state q, and then define \(\psi (\theta)\) as the result of substituting \(\psi (q)\) for q in \(\theta\), for every state q. It remains to define \(\psi (q)\). Using that \(\mathcal {A}\) is very weak, we proceed inductively—that is, we assume that \(\psi (q^{\prime })\) has already been defined for all \(q^{\prime }\) such that \(q \rightarrow q^{\prime }\) and \(q \ne q^{\prime }\). For every \(q \in Q\) and \(\sigma \in 2^{Ap}\), let \(\theta _{q,\sigma }\) and \(\theta ^{\prime }_{q,\sigma }\) be formulas such that \(\delta (q, \sigma) \equiv (q \wedge \theta _{q,\sigma }) \vee \theta ^{\prime }_{q,\sigma }\) (it is easy to see that they exist). Define \(\begin{equation*} \psi (q) := {\left\lbrace \begin{array}{ll} \varphi _q \mathbin {\mathbf {U}}\varphi _q^{\prime } & \text{if $q \notin \alpha $} \\ \varphi _q \mathbin {\mathbf {W}}\varphi _q^{\prime } & \text{if $q \in \alpha ,$} \\ \end{array}\right.} \end{equation*}\) where \(\begin{equation*} \varphi _q := \bigvee _{\sigma \subseteq \Sigma } \left(\bigwedge _{a \in \sigma } a \wedge \bigwedge _{a \notin \sigma } \lnot a \wedge {\mathbf {X}}\, \psi (\theta _{q,\sigma })\right) \qquad \varphi _q^{\prime } := \bigvee _{\sigma \subseteq \Sigma } \left(\bigwedge _{a \in \sigma } a \wedge \bigwedge _{a \notin \sigma } \lnot a \wedge {\mathbf {X}}\, \psi (\theta ^{\prime }_{q,\sigma })\right) \ . \end{equation*}\)

Since this translation assigns to each \(\mathbin {\mathbf {U}}\)-formula a rejecting state and to each \(\mathbin {\mathbf {W}}\)-formula an accepting state, the syntax tree of \(\psi _\mathcal {A}\) has an alternation between \(\mathbin {\mathbf {U}}\) and \(\mathbin {\mathbf {W}}\) exactly when there is an alternation between accepting and non-accepting states. This yields all of the desired inclusions in \(\Sigma _1\), \(\Pi _1, \ldots ,\) \(\Delta _2\). □

Moreover, our single exponential normalization procedure for LTL transfers to a single exponential normalization procedure for \(\text {A1W}\).

Lemma 7.2.

Let \(\mathcal {A}\) be an \(\text {A1W}\) with n states over an alphabet with m letters. There exists \(\mathcal {A}^{\prime } \in \text {A1W}[2]\) with \(2^{\mathcal {O}(nm)}\) states such that \(\mathcal {L}(\mathcal {A}) = \mathcal {L}(\mathcal {A}^{\prime })\).

Proof.

The translation from \(\text {A1W}\) to LTL used in Proposition 7.1 (an adaption of Löding and Thomas [25]) yields a formula \(\psi _\mathcal {A}\) with at most \(\mathcal {O}(mn)\) proper subformulas. Applying our normalization procedure to \(\psi _\mathcal {A}\) yields an equivalent formula in \(\Delta _2\) with at most \(2^{\mathcal {O}(mn)}\) proper subformulas (Lemma 6.15). Applying Lemma 6.8, we obtain the postulated automaton \(\mathcal {A}^{\prime }\). □

Skip 8CONCLUSION Section

8 CONCLUSION

We have presented two purely syntactic normalization procedures for LTL that transform a given formula into an equivalent formula in \(\Delta _2\)—that is, a formula with at most one alternation between least- and greatest-fixpoint operators. The procedure has single exponential blow-up, improving on the prohibitive non-elementary cost of previous constructions. The much better complexity of the new procedure (recall that normalization procedures for CNF and DNF are also exponential) makes it attractive for its implementation and use in tools. We have presented a first promising application, namely a novel translation from LTL to DRW with double-exponential blow-up. Finally, we have shown that the normalization procedure for LTL can be transferred to a normalization procedure for very weak alternating automata.

We believe that these results demystify the Normalization Theorem of Chang, Manna, and Pnueli, which heavily relied on automata-theoretic results, and involved a non-elementary blowup. Indeed, the only conceptual difference between our rewrite system and the one for bringing Boolean formulas in CNF is the use of rewrite rules with contexts.

Our normalization procedure has already found applications to the translation of LTL formulas into deterministic or limit-deterministic \(\omega\)-automata [22, 33]. Until now, normalization had not been considered, because of the non-elementary blow-up, much higher than the double-exponential blow-up of existing constructions. With our new procedure, translations that first normalize the formula, and then apply efficient formula-to-automaton procedures specifically designed for formulas in normal form, have become competitive. Our system of rewriting rules makes this even more attractive. More generally, we believe that the design of analysis procedures for formulas in normal form (to check satisfiability, equivalence, or other properties) should be further studied in the coming years.

ACKNOWLEDGMENTS

We thank Nathanaël Fijalkow, Jürgen Giesl, Marcin Jurdcinski, Jan Křetínský, Orna Kupferman, and the anonymous reviewers for very helpful comments and remarks.

Footnotes

  1. 1 Given an operator \({\mathbf {P}}\) of arity \(k \ge 0\), we say that \(\psi \langle C \rangle\) is defined homomorphically for \({\mathbf {P}}\) if \(({\mathbf {P}}(\psi _1, \ldots , \psi _k))\langle C \rangle\) = \({\mathbf {P}}(\psi _1\langle C \rangle , \ldots , \psi _k\langle C \rangle)\). So, for example, \({\mathbf {X}}\psi _1\langle C \rangle = {\mathbf {X}}(\psi _1\langle C \rangle)\) and \((\psi _1 \wedge \psi _2)\langle C \rangle = \psi _1\langle C \rangle \wedge \psi _2\langle C \rangle\).

    Footnote
  2. 2 Limit operators are called suspendable in the work of Babiak et al. [1].

    Footnote
  3. 3 Many papers define alternating automata with an initial state instead of an initial formula. Both models are equivalent, and an initial formula is better for our purposes.

    Footnote
  4. 4 In the work of Pelánek and Strejcek [38], the classes have different names.

    Footnote

REFERENCES

  1. [1] Babiak Tomás, Badie Thomas, Duret-Lutz Alexandre, Kretínský Mojmír, and Strejcek Jan. 2013. Compositional approach to suspension and other improvements to LTL translation. In Model Checking Software. Lecture Notes in Computer Science, Vol. 7976. Springer, 81–98. Google ScholarGoogle ScholarCross RefCross Ref
  2. [2] Boker Udi, Lehtinen Karoliina, and Sickert Salomon. 2022. On the translation of automata to linear temporal logic. In Foundations of Software Science and Computation Structures. Lecture Notes in Computer Science, Vol. 13242. Springer, 140–160. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. [3] Büchi J. Richard. 1960. Weak second-order arithmetic and finite automata. Zeitschrift für mathematische Logik und Grundlagen der Mathematik 6, 1-6 (1960), 6692.Google ScholarGoogle ScholarCross RefCross Ref
  4. [4] Casares Antonio, Colcombet Thomas, and Fijalkow Nathanaël. 2021. Optimal transformations of games and automata using muller conditions. In 48th International Colloquium on Automata, Languages, and Programming (ICALP 2021). Leibniz International Proceedings in Informatics, Vol. 198. Schloss Dagstuhl–Leibniz-Zentrum für Informatik, Article 123, 14 pages.Google ScholarGoogle Scholar
  5. [5] Casares Antonio, Duret-Lutz Alexandre, Meyer Klara J., Renkin Florian, and Sickert Salomon. 2022. Practical applications of the alternating cycle decomposition. In Tools and Algorithms for the Construction and Analysis of Systems. Lecture Notes in Computer Science, Vol. 13244. Springer, 99–117. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. [6] Cerná Ivana and Pelánek Radek. 2003. Relating hierarchy of temporal properties to model checking. In Mathematical Foundations of Computer Science 2003. Lecture Notes in Computer Science, Vol. 2747. Springer, 318–327. Google ScholarGoogle ScholarCross RefCross Ref
  7. [7] Chandra Ashok K., Kozen Dexter, and Stockmeyer Larry J.. 1981. Alternation. J. ACM 28, 1 (1981), 114133. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. [8] Chang Edward Y., Manna Zohar, and Pnueli Amir. 1992. Characterization of temporal property classes. In Automata, Languages and Programming. Lecture Notes in Computer Science, Vol. 623. Springer, 474486. Google ScholarGoogle ScholarCross RefCross Ref
  9. [9] Choueka Yaacov. 1974. Theories of automata on omega-tapes: A simplified approach. J. Comput. Syst. Sci. 8, 2 (1974), 117141. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. [10] Diekert Volker and Gastin Paul. 2008. First-order definable languages. In Logic and Automata: History and Perspectives [in Honor of Wolfgang Thomas]. Texts in Logic and Games, Vol. 2. Amsterdam University Press, 261306.Google ScholarGoogle Scholar
  11. [11] Duret-Lutz Alexandre, Renault Etienne, Colange Maximilien, Renkin Florian, Aisse Alexandre Gbaguidi, Schlehuber-Caissier Philipp, Medioni Thomas, Martin Antoine, Dubois Jérôme, Gillard Clément, and Lauko Henrich. 2022. From Spot 2.0 to Spot 2.10: What’s new? In Computer Aided Verification. Lecture Notes in Computer Science, Vol. 13372. Springer, 174–187. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. [12] Esparza Javier, Kretínský Jan, and Sickert Salomon. 2020. A unified translation of linear temporal logic to \(\omega\)-automata. J. ACM 67, 6 (2020), Article 33, 61 pages.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. [13] Esparza Javier, Rubio Rubén, and Sickert Salomon. 2022. A simple rewrite system for the normalization of linear temporal logic. In Principles of Systems Design. Lecture Notes in Computer Science, Vol. 13660. Springer, 208–227.Google ScholarGoogle Scholar
  14. [14] Etessami Kousha, Vardi Moshe Y., and Wilke Thomas. 1997. First-order logic with two variables and unary temporal logic. In LICS. IEEE Computer Society, 228–235. Google ScholarGoogle ScholarCross RefCross Ref
  15. [15] Gabbay Dov M.. 1987. The declarative past and imperative future: Executable temporal logic for interactive systems. In Temporal Logic in Specification. Lecture Notes in Computer Science, Vol. 398. Springer, 409448. Google ScholarGoogle ScholarCross RefCross Ref
  16. [16] Gabbay Dov M., Hodkinson Ian, and Reynolds Mark A.. 1994. Temporal Logic: Mathematical Foundations and Computational Aspects. Oxford University Press on Demand.Google ScholarGoogle ScholarCross RefCross Ref
  17. [17] Gabbay Dov M., Pnueli Amir, Shelah Saharon, and Stavi Jonathan. 1980. On the temporal analysis of fairness. In POPL. ACM Press, 163–173. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. [18] Guelev Dimitar P.. 2008. A syntactical proof of the canonical reactivity form for past linear temporal logic. J. Log. Comput. 18, 4 (2008), 615623. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. [19] Gurumurthy Sankar, Kupferman Orna, Somenzi Fabio, and Vardi Moshe Y.. 2003. On complementing nondeterministic Büchi automata. In Correct Hardware Design and Verification Methods. Lecture Notes in Computer Science, Vol. 2860. Springer, 96110. Google ScholarGoogle ScholarCross RefCross Ref
  20. [20] John Tobias, Jantsch Simon, Baier Christel, and Klüppelholz Sascha. 2021. Determinization and limit-determinization of Emerson-Lei automata. In Automated Technology for Verification and Analysis. Lecture Notes in Computer Science, Vol. 12971. Springer, 1531. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. [21] John Tobias, Jantsch Simon, Baier Christel, and Klüppelholz Sascha. 2022. From Emerson-Lei automata to deterministic, limit-deterministic or good-for-MDP automata. Innov. Syst. Softw. Eng. 18, 3 (2022), 385403. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. [22] Kretínský Jan, Meggendorfer Tobias, and Sickert Salomon. 2018. Owl: A library for \(\omega\)-words, automata, and LTL. In Automated Technology for Verification and Analysis. Lecture Notes in Computer Science, Vol. 11138. Springer, 543550. Google ScholarGoogle ScholarCross RefCross Ref
  23. [23] Kupferman Orna and Vardi Moshe Y.. 2001. Weak alternating automata are not that weak. ACM Trans. Comput. Log. 2, 3 (2001), 408429. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. [24] Lichtenstein Orna, Pnueli Amir, and Zuck Lenore D.. 1985. The glory of the past. In Logic of Programs. Lecture Notes in Computer Science, Vol. 193. Springer, 196218. Google ScholarGoogle ScholarCross RefCross Ref
  25. [25] Löding Christof and Thomas Wolfgang. 2000. Alternating automata and logics over infinite words. In Theoretical Computer Science: Exploring New Frontiers of Theoretical Informatics. Lecture Notes in Computer Science, Vol. 1872. Springer, 521535. Google ScholarGoogle ScholarCross RefCross Ref
  26. [26] Maler Oded. 2010. On the Krohn-Rhodes cascaded decomposition theorem. In Time for Verification: Essays in Memory of Amir Pnueli.Lecture Notes in Computer Science, Vol. 6200. Springer, 260278. Google ScholarGoogle ScholarCross RefCross Ref
  27. [27] Maler Oded and Pnueli Amir. 1990. Tight bounds on the complexity of cascaded decomposition of automata. In Proceedings ofFOCS. 672682. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. [28] Maler Oded and Pnueli Amir. 1994. On the cascaded decomposition of automata, its complexity and its application to logic. Unpublished. Retrieved March 14, 2024 from http://www-verimag.imag.fr/maler/Papers/decomp.pdfGoogle ScholarGoogle Scholar
  29. [29] Manna Zohar and Pnueli Amir. 1990. A hierarchy of temporal properties. In PODC. ACM, 377–410. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. [30] Manna Zohar and Pnueli Amir. 1991. Completing the temporal picture. Theor. Comput. Sci. 83, 1 (1991), 91130. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. [31] Manna Zohar and Pnueli Amir. 1992. The Temporal Logic of Reactive and Concurrent Systems: Specification. Springer, Google ScholarGoogle ScholarCross RefCross Ref
  32. [32] McNaughton Robert and Papert Seymour A.. 1971. Counter-Free Automata. MIT Research Monograph No. 65). MIT Press. Google ScholarGoogle Scholar
  33. [33] Meyer Philipp J., Sickert Salomon, and Luttenberger Michael. 2018. Strix: Explicit reactive synthesis strikes back! In Computer Aided Verification. Lecture Notes in Computer Science, Vol. 10981. Springer, 578586. Google ScholarGoogle ScholarCross RefCross Ref
  34. [34] Miyano Satoru and Hayashi Takeshi. 1984. Alternating finite automata on omega-words. Theor. Comput. Sci. 32 (1984), 321330. Google ScholarGoogle ScholarCross RefCross Ref
  35. [35] Muller David E., Saoudi Ahmed, and Schupp Paul E.. 1986. Alternating automata, the weak monadic theory of the tree, and its complexity. In Automata, Languages and Programming. Lecture Notes in Computer Science, Vol. 226. Springer, 275283. Google ScholarGoogle ScholarCross RefCross Ref
  36. [36] Muller David E., Saoudi Ahmed, and Schupp Paul E.. 1988. Weak alternating automata give a simple explanation of why most temporal and dynamic logics are decidable in exponential time. In LICS. IEEE Computer Society, 422–427. Google ScholarGoogle ScholarCross RefCross Ref
  37. [37] Oliveira Daniel and Rasga João. 2020. Revisiting separation: Algorithms and complexity. Logic Journal of the IGPL 29, 3 (2020), 251302. Google ScholarGoogle ScholarCross RefCross Ref
  38. [38] Pelánek Radek and Strejcek Jan. 2005. Deeper connections between LTL and alternating automata. In Implementation and Application of Automata. Lecture Notes in Computer Science, Vol. 3845. Springer, 238249. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. [39] Piterman Nir and Pnueli Amir. 2018. Temporal logic and fair discrete systems. In Handbook of Model Checking. Springer, 2773. Google ScholarGoogle ScholarCross RefCross Ref
  40. [40] Pnueli Amir. 1977. The temporal logic of programs. In FOCS. IEEE Computer Society, 46–57. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. [41] Pnueli Amir. 1981. The temporal semantics of concurrent programs. Theor. Comput. Sci. 13 (1981), 4560. Google ScholarGoogle ScholarCross RefCross Ref
  42. [42] Reynolds Mark. 2000. More past glories. In LICS. IEEE Computer Society, 229–240. Google ScholarGoogle ScholarCross RefCross Ref
  43. [43] Safra Shmuel. 1988. On the complexity of omega-automata. In FOCS. IEEE Computer Society, 319–327. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. [44] Schneider Klaus. 2004. Verification of Reactive Systems: Formal Methods and Algorithms. Springer. Google ScholarGoogle ScholarCross RefCross Ref
  45. [45] Sickert Salomon and Esparza Javier. 2020. An efficient normalization procedure for linear temporal logic and very weak alternating automata. In LICS. ACM, 831–844. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. [46] Thomas Wolfgang. 1981. A combinatorial approach to the theory of omega-automata. Inf. Control. 48, 3 (1981), 261283. Google ScholarGoogle ScholarCross RefCross Ref
  47. [47] Vardi Moshe Y.. 1994. Nontraditional applications of automata theory. In Theoretical Aspects of Computer Software. Lecture Notes in Computer Science, Vol. 789. Springer, 575597. Google ScholarGoogle ScholarCross RefCross Ref
  48. [48] Vardi Moshe Y.. 1996. An automata-theoretic approach to linear temporal logic. Logics for Concurrency 226 (1996), 238–266. Google ScholarGoogle ScholarCross RefCross Ref
  49. [49] Zuck Lenore D.. 1986. Past Temporal Logic. Ph.D. Dissertation. Weizmann Institute of Science, Israel.Google ScholarGoogle Scholar

Index Terms

  1. Efficient Normalization of Linear Temporal Logic

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image Journal of the ACM
        Journal of the ACM  Volume 71, Issue 2
        April 2024
        627 pages
        ISSN:0004-5411
        EISSN:1557-735X
        DOI:10.1145/3613546
        • Editor:
        • Venkatesan Guruswami
        Issue’s Table of Contents

        Copyright © 2024 Copyright held by the owner/author(s).

        This work is licensed under a Creative Commons Attribution International 4.0 License.

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 10 April 2024
        • Online AM: 6 March 2024
        • Accepted: 1 March 2024
        • Revised: 27 February 2024
        • Received: 27 January 2023
        Published in jacm Volume 71, Issue 2

        Check for updates

        Qualifiers

        • research-article
      • Article Metrics

        • Downloads (Last 12 months)267
        • Downloads (Last 6 weeks)224

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader