**3. Star-Free Logic of LDL**

In this section, we first define star-free logic LDL*s f* (resp. CDL∗ *s f*) of LDL (resp. CDL∗), and then show that their expressive abilities are equivalent with LTL (resp. CTL∗).

We conjecture that if regular expressions are replaced by star-free regular expressions in LDL, then the expressivity of this new temporal logic is equivalent with that of LTL. In fact, in this section, we show that it is indeed true by Theorem 1.

**Definition 8** (Star-free Logic LDL*s f*)**.** *The star-free logic LDLs f is defined inductively by:*

*LDLs f formula ψ* ::= *p* | ¬*ψ* | *ψ* ∧ *ψ* | *ρψ*

*Star-free path expression ρ* ::= Φ | *ψ*? | *ρ* + *ρ* | *ρ*; *ρ* | *ρ*

*where p* ∈ *AP and* Φ ∈ L(*AP*)*.*

Here *ρ* is the complement of *ρ*. In the star-free logic CDL∗ *s f* of CDL∗, the path expressions in CDL∗ are just replaced by star-free path expressions as follows:

$$\text{Start-free path expression } \rho ::= \Phi \mid \psi ? \mid \rho + \rho \mid \rho; \rho \mid \overline{\rho} \tag{5}$$

In a Kripke model *M*, given a path *π* and path expression *ρ*, for any *i* ≥ *j*, define

$$
\mathcal{R}(i,j) \in \mathcal{R}(\overline{\rho}, \pi) \quad \text{if and only if} \quad (i,j) \notin \mathcal{R}(\rho, \pi). \tag{6}
$$

Easily, the following simple property holds.

**Lemma 1.** *For any path π in a Kripke model, the following holds,*

$$\mathcal{R}(\overline{false}, \pi) = \mathcal{R}(true^\*, \pi) = \{ (i, j) : j \ge i, i, j \in \mathbb{N} \}.\tag{7}$$

**Proof.** Firstly, (*i*, *j*) ∈ R(*f alse*, *π*) iff (*i*, *j*) ∈ R/ (*f alse*, *π*) iff *j* ≥ *i*; secondly, (*i*, *j*) ∈ R(*true*∗) iff *j* ≥ *i*.

Hence, the following two equivalent results are correct.

**Corollary 1.** *Given an LDL formula ψ, the following are valid*

$$
\langle \text{true}^\* \rangle \psi \equiv \langle \overline{false} \rangle \psi \quad \text{and} \quad [true^\*] \psi \equiv \overline{[false]} \psi. \tag{8}
$$

Since first-order logic (FO) over naturals has the expressive power of star-free regular expressions [27], and LTL over the naturals has precisely the expressive power of FO [28], then LTL over naturals has the same expressivity as star-free regular expression. Now we consider the relation between LTL and LDL*s f* .

In fact, for each LTL formula *ψ*, we can translate it into a star-free LDL formula *SF*(*ψ*) by function *SF* : LTL → LDL*s f* as follows:


Obviously, the function *SF* is well-defined; i.e., for any *ψ* in LTL, *SF*(*ψ*) ∈ LDL*s f* . Then the following result holds.

**Lemma 2.** *In a Kripke model M, for any LTL formula ψ, a path π, and i* ∈ N*,*

$$\forall \pi, i \left| = \psi \right. \quad \text{if and only if} \quad \pi, i \left| = SF(\psi). \tag{9}$$

**Proof.** We show this lemma inductively as follows. Here we just consider the following cases; the others are routine.

For case *ψ*: *π*, *i* |= *SF*(*ψ*)iff *π*, *i* |= *trueSF*(*ψ*)iff *π*, *i* +1 |= *SF*(*ψ*)iff *π*, *i* + 1 |= *ψ* (by induction) iff *π*, *i* |= *ψ*.

For case ♦*ψ*: *π*, *i* |= *SF*(♦*ψ*) iff *π*, *i* |= *f alseSF*(*ψ*) iff ∃*j*. (*i*, *j*) ∈ R(*f alse*, *π*), s.t., *π*, *j* |= *SF*(*ψ*) iff ∃*j*.*i* ≤ *j* and *π*, *j* |= *SF*(*ψ*) (by Lemma 1) iff ∃*j*.*i* ≤ *j* and *π*, *j* |= *ψ* (by induction) iff *π*, *i* |= ♦*ψ*.

For case *ψ*1U*ψ*2:

$$\begin{array}{l} \pi, i \vdash S F(\psi\_1 \mathcal{U} \psi\_2) \stackrel{\text{iff}}{\text{iff}}\\ \pi, i \vdash S F(\psi\_2) \stackrel{\text{---}}{\text{lor}} \overline{\langle \overline{falsse}; \neg S F(\psi\_1)? \overline{falsse}; \text{true} \rangle} S F(\psi\_2) \text{ iff } i\\ \pi, i \vdash S F(\psi\_2) \text{ or } \overline{\langle \overline{falsse}; \neg S F(\psi\_1)? \overline{falsse}; \text{true} \rangle} S F(\psi\_2). \end{array}$$

For the latter,

$$\begin{array}{l} \pi, i \mathrel{=} (\overline{false}; \neg SF(\psi\_{1}) ?; \overline{false}; \text{true}) \, SF(\psi\_{2}) \text{ iff} \\ \exists j. (i, j) \in \mathcal{R}(\overline{false}; \neg SF(\psi\_{1}) ?; \overline{false}; \text{true}, \pi) \text{ and } \; \pi, j \mathrel{=} \psi\_{2} \text{ iff} \\ \exists j. \exists k. i \le k \le j, \text{s.t.} (i, k) \in \mathcal{R}(\overline{false}; \neg SF(\psi\_{1}) ?; \overline{false}, \pi) \\ \qquad \text{and } (k, j) \in \mathcal{R}(true, \pi), \text{ and } \pi, j \mathrel{=} SF(\psi\_{2}) \text{ iff} \\ \exists j. (i, j - 1) \in \mathcal{R}(\overline{false}; \neg SF(\psi\_{1}) ?; \overline{false}, \pi) \text{ and } \; \pi, j \mathrel{=} SF(\psi\_{2}). \end{array}$$

Then we show that

$$\begin{array}{l} (i,j-1) \in \mathcal{R}(\overline{false}; -\mathcal{S}F(\psi\_{1})?; \overline{false}, \pi) \text{ iff }\\ (i,j-1) \notin \mathcal{R}(\overline{false}; -\mathcal{S}F(\psi\_{1})?; \overline{false}, \pi) \text{ iff }\\ \forall k. (i \le k \le j-1 \to (i,k) \notin \mathcal{R}(\overline{false}) \lor\\ (k,j-1) \notin \mathcal{R}(\neg SF(\psi\_{1})?; \overline{false}, \pi)) \text{ iff }\\ \forall k. (i \le k \le j-1 \to (k,j-1) \notin \mathcal{R}(\neg SF(\psi\_{1})?; \overline{false}, \pi)) \text{ iff }\\ \forall k. (i \le k \le j-1 \to \forall k'. (k \le k' \le j-1 \to (k,k') \notin \\ \mathcal{R}(\neg SF(\psi\_{1})?, \pi) \vee (k', j-1) \notin \mathcal{R}(\overline{false}; \pi))) \text{ iff }\\ \forall k. (i \le k \le j-1 \to \pi, k \equiv SF(\psi\_{1})). \end{array}$$

Therefore, we have that *π*, *i* |= *SF*(*ψ*1U*ψ*2) iff *π*, *i* |= *SF*(*ψ*2) or there exists *j*, ∀*k*.(*i* ≤ *k* ≤ *j* − 1 → *π*, *k* |= *SF*(*ψ*1)) and *π*, *j* |= *SF*(*ψ*2) iff there exists *j*, such that for all *k*.*i* ≤ *k* < *j* s.t. *π*, *k* |= *ψ*<sup>1</sup> and *π*, *j* |= *ψ*<sup>2</sup> (by induction) iff *π*, *i* |= *ψ*1U*ψ*2.

By this lemma, LTL can be linearly embeded into LDL*s f* . Conversely, in order to express an LDL*s f* formula *ψ* by an LTL formula, we first express *ψ* by a first-order logic FO(AP) formula under linear order over natural numbers N [16]. In FO(AP), the language is formed by the binary predicate <, a unary predicate for each symbol in *AP*.

The first order logic FO(AP) interpretation is the form I = (Δ<sup>I</sup> , · I ), where the interpretation of the following binary predicates and the constant are fixed,


In fact, the following properties hold.


Intuitively, *succ*(*x*, *y*) means that *y* is an immediate successor of *x*.

Given a path *π* in a Kripke model *M* = (*W*, *R*, *V*), we define a corresponding first order logic interpretation *<sup>I</sup><sup>π</sup>* with that for each *<sup>p</sup>* <sup>∈</sup> *AP*,

$$p^{l^\pi} = \{k | p \in V(\pi\_k)\}\tag{10}$$

and interpretations of the other predicates or constant are fixed.

Now we define two functions *FO* and *G*, which translate an LDL*s f* formula into a first-order logic FO(AP) formula by induction.


The function *FO*(*ψ*, *x*) and auxiliary function *G*(*ρ*, *x*, *y*) are well-defined. Intuitively, here the function *G* is used to specify the relation R(*ρ*, *π*) by formulas in FO(AP).

It is shown that the following lemma holds by induction of structures about LDL*s f* formula.

**Lemma 3.** *For any path π in a Kripke model M and i* ∈ N*, given an LDLs f formula ψ, we have*

$$<\pi, i \vdash \psi \quad \text{if and only if} \quad I^{\pi}(i \mapsto \mathfrak{x}) \vdash FO(\psi, \mathfrak{x}), \tag{11}$$

*where I<sup>π</sup> is the corresponding first order interpretation of path π.*

**Proof.** By induction of the formula LDL*s f* formula *ψ*, we can show this lemma.

For case *<sup>ψ</sup>* <sup>=</sup> *<sup>p</sup>*: *<sup>π</sup>*, *<sup>i</sup>* <sup>|</sup><sup>=</sup> *<sup>p</sup>* iff *<sup>p</sup>* <sup>∈</sup> *<sup>V</sup>*(*πi*) (by semantics) iff *<sup>i</sup>* <sup>∈</sup> *<sup>p</sup>*I*<sup>π</sup>* iff *<sup>I</sup><sup>π</sup>* <sup>|</sup><sup>=</sup> *<sup>p</sup>*(*i*) iff *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*) <sup>|</sup><sup>=</sup> *FO*(*p*, *<sup>x</sup>*) iff *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*) <sup>|</sup><sup>=</sup> *FO*(*ψ*, *<sup>x</sup>*);

for case *<sup>ψ</sup>* <sup>=</sup> <sup>¬</sup>*ψ*1: *<sup>π</sup>*, *<sup>i</sup>* <sup>|</sup><sup>=</sup> <sup>¬</sup>*ψ*<sup>1</sup> iff *<sup>π</sup>*, *<sup>i</sup>* <sup>|</sup><sup>=</sup> *<sup>ψ</sup>*<sup>1</sup> does not hold iff *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*) <sup>|</sup><sup>=</sup> *FO*(*ψ*1, *<sup>x</sup>*) does not hold (by induction) iff *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*) <sup>|</sup><sup>=</sup> <sup>¬</sup>*FO*(*ψ*1, *<sup>x</sup>*) iff *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*) <sup>|</sup><sup>=</sup> *FO*(¬*ψ*1, *<sup>x</sup>*);

for case *<sup>ψ</sup>* <sup>=</sup> *<sup>ψ</sup>*<sup>1</sup> <sup>∧</sup> *<sup>ψ</sup>*2: *<sup>π</sup>*, *<sup>i</sup>* <sup>|</sup><sup>=</sup> *<sup>ψ</sup>*<sup>1</sup> <sup>∧</sup> *<sup>ψ</sup>*<sup>2</sup> iff *<sup>π</sup>*, *<sup>i</sup>* <sup>|</sup><sup>=</sup> *<sup>ψ</sup>*<sup>1</sup> and *<sup>π</sup>*, *<sup>i</sup>* <sup>|</sup><sup>=</sup> *<sup>ψ</sup>*<sup>2</sup> iff *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*) <sup>|</sup><sup>=</sup> *FO*(*ψ*1, *<sup>x</sup>*) and *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*) <sup>|</sup><sup>=</sup> *FO*(*ψ*2, *<sup>x</sup>*) (by induction) iff *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*) <sup>|</sup><sup>=</sup> *FO*(*ψ*<sup>1</sup> <sup>∧</sup> *<sup>ψ</sup>*2, *<sup>x</sup>*);

In order to show the case *ψ* = *ρψ*1, we should show the following mutually with the above (11) by induction.

$$I^{\pi}(i \mapsto \mathbf{x}, j \mapsto y) \mid = G(\rho, \mathbf{x}, y) \quad \text{if and only if} \quad (i, j) \in \mathcal{R}(\rho, \pi). \tag{12}$$

For case *<sup>ρ</sup>* <sup>=</sup> <sup>Φ</sup>: *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*, *<sup>j</sup>* → *<sup>y</sup>*) <sup>|</sup><sup>=</sup> *<sup>G</sup>*(Φ, *<sup>x</sup>*, *<sup>y</sup>*) iff *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*, *<sup>j</sup>* → *<sup>y</sup>*) <sup>|</sup><sup>=</sup> *succ*(*x*, *<sup>y</sup>*) <sup>∧</sup> *FO*(Φ, *x*) iff *j* = *i* + 1 and *π*, *i* |= Φ iff (*i*, *j*) ∈ R(Φ, *π*).

For case *<sup>ρ</sup>* <sup>=</sup> *<sup>ψ</sup>*?: *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*, *<sup>j</sup>* → *<sup>y</sup>*) <sup>|</sup><sup>=</sup> *<sup>G</sup>*(*ψ*?, *<sup>x</sup>*, *<sup>y</sup>*) iff *<sup>j</sup>* <sup>=</sup> *<sup>i</sup>* and *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*) <sup>|</sup><sup>=</sup> *FO*(*ψ*, *<sup>x</sup>*) iff *j* = *i* and *π*, *i* |= *ψ* by induction iff (*i*, *j*) ∈ R(*ψ*?, *π*).

For case *<sup>ρ</sup>* <sup>=</sup> *<sup>ρ</sup>*<sup>1</sup> <sup>+</sup> *<sup>ρ</sup>*2: *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*, *<sup>j</sup>* → *<sup>y</sup>*) <sup>|</sup><sup>=</sup> *<sup>G</sup>*(*ρ*<sup>1</sup> <sup>+</sup> *<sup>ρ</sup>*2, *<sup>x</sup>*, *<sup>y</sup>*) iff *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*, *<sup>j</sup>* → *<sup>y</sup>*) <sup>|</sup><sup>=</sup> *G*(*ρ*1, *x*, *y*) ∨ *G*(*ρ*2, *x*, *y*) iff (*i*, *j*) ∈ R(*ρ*1, *π*) or (*i*, *j*) ∈ R(*ρ*2, *π*). The last is because by induction, we have *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*, *<sup>j</sup>* → *<sup>y</sup>*) <sup>|</sup><sup>=</sup> *<sup>G</sup>*(*ρ*1, *<sup>x</sup>*, *<sup>y</sup>*) iff (*i*, *<sup>j</sup>*) ∈ R(*ρ*1, *<sup>π</sup>*), and *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*, *<sup>j</sup>* → *y*) |= *G*(*ρ*2, *x*, *y*) iff (*i*, *j*) ∈ R(*ρ*2, *π*).

For case *<sup>ρ</sup>* <sup>=</sup> *<sup>ρ</sup>*1; *<sup>ρ</sup>*2: *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*, *<sup>j</sup>* → *<sup>y</sup>*) <sup>|</sup><sup>=</sup> *<sup>G</sup>*(*ρ*1; *<sup>ρ</sup>*2, *<sup>x</sup>*, *<sup>y</sup>*) iff *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*, *<sup>j</sup>* → *<sup>y</sup>*) <sup>|</sup><sup>=</sup> ∃*z*(*x* ≤ *z* ∧ *z* ≤ *y* ∧ *G*(*ρ*1, *x*, *z*) ∧ *G*(*ρ*2, *z*, *y*)) iff there exists *k*, with *i* ≤ *k* ≤ *j*, satisfying that (*i*, *k*) ∈ R(*ρ*1, *π*) and (*k*, *j*) ∈ R(*ρ*2, *π*) by induction iff (*i*, *j*) ∈ R(*ρ*1; *ρ*2, *π*).

For case *<sup>ρ</sup>* <sup>=</sup> *<sup>ρ</sup>*1: *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*, *<sup>j</sup>* → *<sup>y</sup>*) <sup>|</sup><sup>=</sup> *<sup>G</sup>*(*ρ*1, *<sup>x</sup>*, *<sup>y</sup>*) iff *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*, *<sup>j</sup>* → *<sup>y</sup>*) <sup>|</sup><sup>=</sup> *<sup>x</sup>* <sup>≤</sup> *<sup>y</sup>* ∧ ¬*G*(*ρ*1, *<sup>x</sup>*, *<sup>y</sup>*) iff *<sup>i</sup>* <sup>≤</sup> *<sup>j</sup>* and *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*, *<sup>j</sup>* → *<sup>y</sup>*) <sup>|</sup><sup>=</sup> <sup>¬</sup>*G*(*ρ*1, *<sup>x</sup>*, *<sup>y</sup>*) iff *<sup>i</sup>* <sup>≤</sup> *<sup>j</sup>* and (*i*, *<sup>j</sup>*) ∈ R/ (*ρ*1, *<sup>χ</sup>*) iff (*i*, *j*) ∈ R(*ρ*1, *χ*).

Now we show the case *ψ* = *ρψ*1: *π*, *i* |= *ρψ*<sup>1</sup> iff there exists *j*, (*i*, *j*) ∈ R(*ρ*, *π*) satisfying that *<sup>π</sup>*, *<sup>j</sup>* <sup>|</sup><sup>=</sup> *<sup>ψ</sup>*<sup>1</sup> iff there exists *<sup>j</sup>*, *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*, *<sup>j</sup>* → *<sup>y</sup>*) <sup>|</sup><sup>=</sup> *<sup>G</sup>*(*ρ*, *<sup>x</sup>*, *<sup>y</sup>*) and *<sup>I</sup>π*(*<sup>j</sup>* → *<sup>y</sup>*) <sup>|</sup><sup>=</sup> *FO*(*ψ*1, *<sup>j</sup>*) by induction iff *<sup>I</sup>π*(*<sup>i</sup>* → *<sup>x</sup>*) <sup>|</sup><sup>=</sup> *FO*(*ρψ*1, *<sup>x</sup>*) by definition.

In [28], Gabbay et al. have shown that first-order logic FO for linear order over natural numbers is equivalent with LTL over infinite traces. In addition, one of the most familiar LDL formulas is [(*true*; *true*)∗]*p*, which cannot be expressed in LTL [14]. Therefore, with the addition of Lemma 2 and 3, the following result holds.

**Theorem 1.** *LTL has exactly the same expressive power as the star-free logic LDLs f , and strictly less expressive than LDL.*

Moreover, LTL formulas can be linearly translated into LDL*s f* formulas, but the converse procedure is not. Some star-free LDL formulas are hard to encode by LTL formulas, even by LDL formulas.
