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

Repetitive Finite Automata With Translucent Letters

František Mráz Charles University
Department of Computer Science
Malostranské nám. 25
118 00 PRAHA, Czech Republic [email protected] Universität Kassel
Fachbereich Elektrotechnik/Informatik
34109 KASSEL, Germany
   Friedrich Otto Universität Kassel
Fachbereich Elektrotechnik/Informatik
34109 KASSEL, Germany [email protected]
Abstract

Here we propose an extension of the (deterministic and the nondeterministic) finite automaton with translucent letters (DFAwtl and NFAwtl), which lies between these automata and their non-returning variants (that is, the nr-DFAwtl and the nr-NFAwtl). This new model works like a DFAwtl or an NFAwtl, but on seeing the end-of-tape marker, it may change its internal state and continue with its computation instead of just ending it, accepting or rejecting. This new type of automaton is called a repetitive deterministic or nondeterministic finite automaton with translucent letters (RDFAwtl or RNFAwtl). In the deterministic case, the new model is strictly more expressive than the DFAwtl, but less expressive than the nr-DFAwtl, while in the nondeterministic case, the new model is equivalent to the NFAwtl.

1 Introduction

While a finite automaton reads its input strictly from left to right, letter by letter, by now many types of automata have been considered in the literature that process their inputs in a different, more involved way. Under this aspect, the most extreme is the jumping finite automaton of Meduna and Zemek [8] (see also [6]), which, after reading a letter, jumps to an arbitrary position of the remaining input. It is known that the jumping finite automaton accepts languages that are not even context-free, like the language {w{a,b,c}|w|_a=|w|_b=|w|_c}\{\,w\in\{a,b,c\}^{*}\mid|w|_{\_}a=|w|_{\_}b=|w|_{\_}c\,\}, but at the same time, it does not even accept the finite language {ab}\{ab\}.

Another example is the restarting automaton as introduced by Jančar, Mráz, Plátek, and Vogel in [7], which processes a given input in cycles. In each cycle, a restarting automaton scans its tape contents from left to right, using a window of a fixed finite size, until it executes a delete/restart operation. Such an operation deletes one or more letters from the current contents of the window, returns the window to the left end of the tape, and resets the automaton to its initial state. If a window of size larger than one is used, these so-called R-automata accept a proper superclass of the regular languages that is incomparable to the context-free and the growing context-sensitive languages with respect to inclusion (see, e.g., [18]). However, with a window of size one, the R-automata accept exactly the regular languages [9].

Finally, there is the (deterministic and nondeterministic) finite automaton with translucent letters (or DFAwtl and NFAwtl) of Nagy and Otto [14], which is equivalent to a cooperating distributed system of stateless deterministic R-automata with windows of size one. For each state qq of an NFAwtl, there is a set τ(q)\tau(q) of translucent letters, which is a subset of the input alphabet that contains those letters that the automaton cannot see when it is in state qq. Accordingly, in each step, the NFAwtl just reads (and deletes) the first letter from the left which it can see, that is, which is not translucent for the current state. Here, it is important to notice that, in each step, an NFAwtl reads the current tape contents from the very left, that is, after deleting a letter, it returns its head to the first letter of the remaining tape contents. It has been shown that the NFAwtl accepts a class of semi-linear languages that properly contains all rational trace languages, while its deterministic variant, the DFAwtl, is properly less expressive. In fact, the DFAwtl just accepts a class of languages that is incomparable to the rational trace languages with respect to inclusion [13, 15, 16, 17]. Although the NFAwtl is quite expressive, it cannot even accept the deterministic linear language L_2={anbnn0}L_{\_}{2}=\{\,a^{n}b^{n}\mid n\geq 0\,\}, as such an automaton cannot possibly compare the number of occurrences of the letter aa with the number of occurrences of the letter bb and ensure, at the same time, that all aa’s precede the first bb.

To make up for this shortcoming, a variant of the finite automaton with translucent letters has been proposed in [10], which, after reading and deleting a letter, does not return its head to the first letter of the remaining tape contents, but that rather continues from the position of the letter just deleted. This means that, in general, only a scattered subword of the input has been read and deleted before the head reaches the end of the input. If the computation is now required to halt, either accepting or rejecting, then it can easily be shown that this type of automaton just accepts the class of regular languages. For the right one-way jumping finite automaton of [2, 4], this problem is overcome by cyclically shifting all the translucent letters that are encountered during a computation to the end of the current tape contents. In this way, these letters may be read and deleted at a later stage of the computation. For the type of automaton proposed in [10], a different approach was taken. When the head of the automaton reaches the end of the input, which is marked by a special end-of-tape marker, then the automaton can decide whether to accept, reject, or continue, which means that it changes its state and again reads the remaining tape contents from the beginning.

It has been established that this type of automaton, called a non-returning finite automaton with translucent letters or an nr-NFAwtl, is strictly more expressive than the NFAwtl. This result also holds for the deterministic case, although the deterministic variant, the nr-DFAwtl, is still not sufficiently expressive to accept all rational trace languages. In [11], the nr-DFAwtl and the nr-NFAwtl are compared to the jumping finite automaton, the right one-way jumping finite automaton of [2, 4], and the right-revolving finite automaton of [3], deriving the complete taxonomy of the resulting classes of languages. As it turns out, the nr-DFAwtl can be seen as an extension of the right one-way jumping finite automaton that can detect the end of its input.

When we look at the above description of the generalization of the NFAwtl to the nr-NFAwtl, then we realize that this generalization actually consists of two steps:

  • The head of the automaton does not return to the left end of the tape after a letter has been read and deleted. This is the non-returning property (in contrast to the returning property of the NFAwtl).

  • Once the end-of-tape marker is reached, an nr-NFAwtl may execute a step that changes its state and returns its head to the left end of the tape. We call this the property of being repetitive (in contrast to the non-repetitiveness of the NFAwtl, which must immediately halt as soon as its head reaches the end-of-tape marker).

In this paper, we study the influence that these two properties have on the expressive capacity of the finite automaton with translucent letters in detail. As we consider both, the deterministic and non-deterministic variants of the resulting types of automata, we obtain eight different classes of automata with translucent letters. In addition, we also include the (deterministic and the non-deterministic) right one-way jumping finite automaton in our study. We shall derive the complete taxonomy of the resulting language classes, which will nicely illustrate the effects that the non-returning property and the repetitiveness have.

Actually, we shall only encounter one new language class that has not been considered before: the class (RDFAwtl)\mathcal{L}(\mbox{\sf RDFAwtl}) of languages that are accepted by repetitive DFAwtls. After presenting the necessary notation and definitions in Section 2, we shall present our results on repetitive DFAwtls and repetitive NFAwtls in Section 3. Here, it turns out that the repetitive DFAwtl (the RDFAwtl) is strictly more expressive than the DFAwtl, while its nondeterministic variant, the repetitive NFAwtl (the RNFAwtl), is equivalent to the NFAwtl. Then, in Section 4, we consider closure and non-closure properties for the language class (𝖱𝖣𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf RDFAwtl}). Finally, in the concluding section, we address the membership problem and some other decision problems for the RDFAwtl in short, and we state some open problems.

2 Definitions

First, we restate the definition of the nondeterministic finite automaton with translucent letters and its deterministic variant, the DFAwtl, from [14].

Definition 1

A finite automaton with translucent letters, or an NFAwtl for short, is defined as a 7-tuple A=(Q,Σ,,τ,I,F,δ)A=(Q,\Sigma,\lhd,\tau,I,F,\delta), where QQ is a finite set of internal states, Σ\Sigma is a finite alphabet of input letters, Σ\lhd\not\in\Sigma is a special letter that is used as an end-of-tape marker, τ:Q𝒫(Σ)\tau:Q\to\mathcal{P}(\Sigma) is a translucency mapping, IQI\subseteq Q is a set of initial states, FQF\subseteq Q is a set of final states, and δ:Q×Σ𝒫(Q)\delta:Q\times\Sigma\to\mathcal{P}(Q) is a transition relation. Here, we require that, for each state qQq\in Q and each letter aΣa\in\Sigma, if aτ(q)a\in\tau(q), then δ(q,a)=.\delta(q,a)=\emptyset.

An NFAwtl A=(Q,Σ,,τ,I,F,δ)A=(Q,\Sigma,\lhd,\tau,I,F,\delta) is a deterministic finite automaton with translucent letters, abbreviated as DFAwtl, if |I|=1|I|=1 and |δ(q,a)|1|\delta(q,a)|\leq 1 for all qQq\in Q and all aΣa\in\Sigma.

A configuration of AA is a word from the set QΣ{𝖠𝖼𝖼𝖾𝗉𝗍,𝖱𝖾𝗃𝖾𝖼𝗍}Q\cdot\Sigma^{*}\cdot\lhd\,\cup\,\{{\sf Accept},{\sf Reject}\}. A configuration of the form qwqw\cdot\lhd, where qQq\in Q and wΣw\in\Sigma^{*}, expresses the situation that AA is in state qq, its tape contains the word ww followed by the sentinel \lhd, and the head of AA is on the first letter of ww\cdot\lhd. For an input word wΣw\in\Sigma^{*}, a corresponding initial configuration is of the form q_0wq_{\_}0w\cdot\lhd, where q_0Iq_{\_}0\in I. The NFAwtl AA induces the following single-step computation relation on its set of configurations:

qw_A{quv,if w=uav,u(τ(q)),aΣτ(q),vΣ, and qδ(q,a),𝖱𝖾𝗃𝖾𝖼𝗍,if w=uav,u(τ(q)),aΣτ(q),vΣ, and δ(q,a)=,𝖠𝖼𝖼𝖾𝗉𝗍,if w(τ(q)) and qF,𝖱𝖾𝗃𝖾𝖼𝗍,if w(τ(q)) and qF.qw\cdot\lhd\vdash_{\_}A\left\{\begin{array}[]{ll}q^{\prime}uv\cdot\lhd,&\mbox{if }w=uav,\,u\in(\tau(q))^{*},\,a\in\Sigma\smallsetminus\tau(q),\,v\in\Sigma^{*},\mbox{ and }q^{\prime}\in\delta(q,a),\\ {\sf Reject},&\mbox{if }w=uav,\,u\in(\tau(q))^{*},\,a\in\Sigma\smallsetminus\tau(q),\,v\in\Sigma^{*},\mbox{ and }\delta(q,a)=\emptyset,\\ {\sf Accept},&\mbox{if }w\in(\tau(q))^{*}\mbox{ and }q\in F,\\ {\sf Reject},&\mbox{if }w\in(\tau(q))^{*}\mbox{ and }q\not\in F.\end{array}\right.

Thus, in each step, AA reads and deletes the first letter from the left that is not translucent for the current state. In addition, if all letters on the tape are translucent for the current state, then AA halts, and it accepts if the current state is final. A word wΣw\in\Sigma^{*} is accepted by AA if there exists an initial state q_0Iq_{\_}0\in I and a computation q_0w_A𝖠𝖼𝖼𝖾𝗉𝗍q_{\_}0w\cdot\lhd\vdash_{\_}A^{*}{\sf Accept}, where _A\vdash_{\_}A^{*} denotes the reflexive transitive closure of the single-step computation relation _A\vdash_{\_}A. Now, L(A)={wΣw is accepted by A}L(A)=\{\,w\in\Sigma^{*}\mid w\mbox{ is accepted by }A\,\} is the language accepted by AA, and (𝖭𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf NFAwtl}) denotes the class of all languages that are accepted by NFAwtls. Analogously, (𝖣𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf DFAwtl}) denotes the class of all languages that are accepted by DFAwtls.

Next, we define the first of the two possible extensions of the automaton with translucent letters that we mentioned above.

Definition 2

A repetitive finite automaton with translucent letters, or an RNFAwtl, is specified through a 6-tuple A=(Q,Σ,,τ,I,δ)A=(Q,\Sigma,\lhd,\tau,I,\delta), where QQ, Σ\Sigma, \lhd, τ\tau, and II are defined as for an NFAwtl, while the transition relation δ\delta is a mapping δ:(Q×(Σ{}))(𝒫(Q){𝖠𝖼𝖼𝖾𝗉𝗍})\delta:(Q\times(\Sigma\cup\{\lhd\}))\to\left(\mathcal{P}(Q)\cup\{{\sf Accept}\}\right). Here, it is required that, for each state qQq\in Q and each letter aΣa\in\Sigma, δ(q,a)Q\delta(q,a)\subseteq Q and, if aτ(q)a\in\tau(q), then δ(q,a)=.\delta(q,a)=\emptyset. In addition, for each state qQq\in Q, δ(q,)\delta(q,\lhd) is either a subset of QQ or δ(q,)=𝖠𝖼𝖼𝖾𝗉𝗍\delta(q,\lhd)={\sf Accept}.

The set of configurations for an RNFAwtl is the same as for an NFAwtl. The RNFAwtl AA induces the following single-step computation relation on its set of configurations:

qw_A{quvif w=uav,u(τ(q)),aΣτ(q),vΣ, and qδ(q,a),𝖱𝖾𝗃𝖾𝖼𝗍if w=uav,u(τ(q)),aΣτ(q),vΣ, and δ(q,a)=,𝖠𝖼𝖼𝖾𝗉𝗍if w(τ(q)) and δ(q,)=𝖠𝖼𝖼𝖾𝗉𝗍,𝖱𝖾𝗃𝖾𝖼𝗍if w(τ(q)) and δ(q,)=,qwif w(τ(q)) and qδ(q,).qw\cdot\lhd\vdash_{\_}A\left\{\begin{array}[]{ll}q^{\prime}uv\cdot\lhd&\mbox{if }w=uav,\,u\in(\tau(q))^{*},a\in\Sigma\smallsetminus\tau(q),v\in\Sigma^{*},\mbox{ and }q^{\prime}\in\delta(q,a),\\ {\sf Reject}&\mbox{if }w=uav,\,u\in(\tau(q))^{*},a\in\Sigma\smallsetminus\tau(q),v\in\Sigma^{*},\mbox{ and }\delta(q,a)=\emptyset,\\ {\sf Accept}&\mbox{if }w\in(\tau(q))^{*}\mbox{ and }\delta(q,\lhd)={\sf Accept},\\ {\sf Reject}&\mbox{if }w\in(\tau(q))^{*}\mbox{ and }\delta(q,\lhd)=\emptyset,\\ q^{\prime}w\cdot\lhd&\mbox{if }w\in(\tau(q))^{*}\mbox{ and }q^{\prime}\in\delta(q,\lhd).\end{array}\right.

Thus, if all letters on the tape are translucent for the current state qq and δ(q,)Q\delta(q,\lhd)\subseteq Q is nonempty, then AA changes its state to qδ(q,)q^{\prime}\in\delta(q,\lhd) and continues with its computation. The language L(A)L(A) accepted by AA is defined as L(A)={wΣw is accepted by A},L(A)=\{\,w\in\Sigma^{*}\mid w\mbox{ is accepted by }A\,\}, that is, it consists of all words for which AA has an accepting computation, and (𝖱𝖭𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf RNFAwtl}) denotes the class of all languages that are accepted by RNFAwtls.

An RNFAwtl A=(Q,Σ,,τ,I,δ)A=(Q,\Sigma,\lhd,\tau,I,\delta) is a repetitive deterministic finite automaton with translucent letters, or an RDFAwtl, if |I|=1|I|=1 and |δ(q,a)|1|\delta(q,a)|\leq 1 for all qQq\in Q and all aΣ{}a\in\Sigma\cup\{\lhd\}. (𝖱𝖣𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf RDFAwtl}) denotes the class of all languages that are accepted by RDFAwtls.

Obviously, each NFAwtl can easily be turned into an RNFAwtl for the same language. Of course, the same applies to a DFAwtl, giving an RDFAwtl for the same language. Thus, we have the following inclusion relations.

Proposition 3

(𝖣𝖥𝖠𝗐𝗍𝗅)(𝖱𝖣𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf DFAwtl})\subseteq\mathcal{L}({\sf RDFAwtl}) and (𝖭𝖥𝖠𝗐𝗍𝗅)(𝖱𝖭𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf NFAwtl})\subseteq\mathcal{L}({\sf RNFAwtl}).

The following simple example illustrates the way in which a repetitive finite automaton with translucent letters works.

Example 4

Let A_,c=(Q,Σ,,τ,I,δ)A_{\_}{\vee,c}=(Q,\Sigma,\lhd,\tau,I,\delta) be the RDFAwtl that is defined as follows:

  • Q={q_0,q_1,q_2,q_3,q_4,q_5,q_6,q_7}Q=\{q_{\_}0,q_{\_}1,q_{\_}2,q_{\_}3,q_{\_}4,q_{\_}5,q_{\_}6,q_{\_}7\} and I={q_0}I=\{q_{\_}0\},

  • Σ={a,b,c}\Sigma=\{a,b,c\},

  • τ(q_0)={a,b},τ(q_1)=,τ(q_2)={a},τ(q_3)={b},τ(q_4)=,τ(q_5)={a},τ(q_6)={a},τ(q_7)={b},\begin{array}[t]{lcllcllcllcl}\tau(q_{\_}0)&=&\{a,b\},&\tau(q_{\_}1)&=&\emptyset,&\tau(q_{\_}2)&=&\{a\},&\tau(q_{\_}3)&=&\{b\},\\ \tau(q_{\_}4)&=&\emptyset,&\tau(q_{\_}5)&=&\{a\},&\tau(q_{\_}6)&=&\{a\},&\tau(q_{\_}7)&=&\{b\},\end{array}

  • δ(q_0,c)=q_1,δ(q_0,)=q_4,δ(q_1,a)=q_2,δ(q_1,b)=q_3,δ(q_1,)=𝖠𝖼𝖼𝖾𝗉𝗍,δ(q_2,b)=q_1,δ(q_3,a)=q_1,δ(q_4,a)=q_5,δ(q_4,b)=q_7,δ(q_4,)=𝖠𝖼𝖼𝖾𝗉𝗍,δ(q_5,b)=q_6,δ(q_6,b)=q_4,δ(q_7,a)=q_6.\begin{array}[t]{lcllcllcllcl}\delta(q_{\_}0,c)&=&q_{\_}1,&\delta(q_{\_}0,\lhd)&=&q_{\_}4,\\ \delta(q_{\_}1,a)&=&q_{\_}2,&\delta(q_{\_}1,b)&=&q_{\_}3,&\delta(q_{\_}1,\lhd)&=&\lx@intercol{\sf Accept},\hfil\lx@intercol\\ \delta(q_{\_}2,b)&=&q_{\_}1,&\delta(q_{\_}3,a)&=&q_{\_}1,\\ \delta(q_{\_}4,a)&=&q_{\_}5,&\delta(q_{\_}4,b)&=&q_{\_}7,&\delta(q_{\_}4,\lhd)&=&\lx@intercol{\sf Accept},\hfil\lx@intercol\\ \delta(q_{\_}5,b)&=&q_{\_}6,&\delta(q_{\_}6,b)&=&q_{\_}4,&\delta(q_{\_}7,a)&=&q_{\_}6.\end{array}

    while δ\delta yields the empty set for all other pairs from Q×(Σ{})Q\times(\Sigma\cup\{\lhd\}).

Using the graphical notation introduced in [11] for describing non-returning NFAwtls, the RDFAwtl A_,cA_{\_}{\vee,c} can be depicted more compactly by the diagram in Fig. 1.

q_2\textstyle{q_{\_}2}(a,b)\scriptstyle{(a^{*},b)}q_1\textstyle{q_{\_}1}b\scriptstyle{b}\scriptstyle{\lhd}q_3\textstyle{q_{\_}3}q_0\textstyle{q_{\_}0}({a,b},)\scriptstyle{(\{a,b\}^{*},\lhd)}𝖠𝖼𝖼𝖾𝗉𝗍\textstyle{{\sf Accept}}q_5\textstyle{q_{\_}5}q_4\textstyle{q_{\_}4}b\scriptstyle{b}\scriptstyle{\lhd}q_7\textstyle{q_{\_}7}(b,a)\scriptstyle{(b^{*},a)}q_6\textstyle{q_{\_}6}(a,b)\scriptstyle{(a^{*},b)}
Figure 1: The diagram describing the RDFAwtl A_,cA_{\_}{\vee,c}. An arrow from a state qq to a state qq^{\prime} labeled with a single letter xx means that τ(q)=\tau(q)=\emptyset and qδ(q,x)q^{\prime}\in\delta(q,x). An arrow labeled with a pair (Δ,x)(\Delta^{*},x) means that τ(q)=Δ\tau(q)=\Delta and qδ(q,x)q^{\prime}\in\delta(q,x).

For example, the RDFAwtl A_,cA_{\_}{\vee,c} can execute the following accepting computations:

q_0aabbcba_A_,cq_1aabbba_A_,cq_2abbba_A_,cq_1abba_A_,cq_2bba_A_,cq_1ba_A_,cq_3a_A_,cq_1_A_,c𝖠𝖼𝖼𝖾𝗉𝗍,\begin{array}[]{lclclcl}q_{\_}0aabbcba\cdot\lhd&\vdash_{\_}{A_{\_}{\vee,c}}&q_{\_}1aabbba\cdot\lhd&\vdash_{\_}{A_{\_}{\vee,c}}&q_{\_}2abbba\cdot\lhd&\vdash_{\_}{A_{\_}{\vee,c}}&q_{\_}1abba\cdot\lhd\\ &\vdash_{\_}{A_{\_}{\vee,c}}&q_{\_}2bba\cdot\lhd&\vdash_{\_}{A_{\_}{\vee,c}}&q_{\_}1ba\cdot\lhd&\vdash_{\_}{A_{\_}{\vee,c}}&q_{\_}3a\cdot\lhd\\ &\vdash_{\_}{A_{\_}{\vee,c}}&q_{\_}1\cdot\lhd&\vdash_{\_}{A_{\_}{\vee,c}}&{\sf Accept},\end{array}

and

q_0bbaabb_A_,cq_4bbaabb_A_,cq_7baabb_A_,cq_6babb_A_,cq_4abb_A_,cq_5bb_A_,cq_6b_A_,cq_4_A_,c𝖠𝖼𝖼𝖾𝗉𝗍.\begin{array}[]{lclclcl}q_{\_}0bbaabb\cdot\lhd&\vdash_{\_}{A_{\_}{\vee,c}}&q_{\_}4bbaabb\cdot\lhd&\vdash_{\_}{A_{\_}{\vee,c}}&q_{\_}7baabb\cdot\lhd&\vdash_{\_}{A_{\_}{\vee,c}}&q_{\_}6babb\cdot\lhd\\ &\vdash_{\_}{A_{\_}{\vee,c}}&q_{\_}4abb\cdot\lhd&\vdash_{\_}{A_{\_}{\vee,c}}&q_{\_}5bb\cdot\lhd&\vdash_{\_}{A_{\_}{\vee,c}}&q_{\_}6b\cdot\lhd\\ &\vdash_{\_}{A_{\_}{\vee,c}}&q_{\_}4\cdot\lhd&\vdash_{\_}{A_{\_}{\vee,c}}&{\sf Accept}.\end{array}

In fact, it can be checked that

L(A_,c)={w{a,b,c}|w|_c=1 and |w|_a=|w|_b}{w{a,b}2|w|_a=|w|_b}.L(A_{\_}{\vee,c})=\{\,w\in\{a,b,c\}^{*}\mid|w|_{\_}c=1\mbox{ and }|w|_{\_}a=|w|_{\_}b\,\}\,\cup\,\{\,w\in\{a,b\}^{*}\mid 2\cdot|w|_{\_}a=|w|_{\_}b\,\}.

\blacksquare

Finally, we come to the second extension of the automaton with translucent letters that we mentioned in the introduction.

Definition 5

A non-repetitive non-returning finite automaton with translucent letters, or an nr-nr-NFAwtl, is defined like an NFAwtl, but its computation relation is defined differently. Let A=(Q,Σ,,τ,I,F,δ)A=(Q,\Sigma,\lhd,\tau,I,F,\delta) be an nr-nr-NFAwtl. Its set of configurations is ΣQΣ{𝖠𝖼𝖼𝖾𝗉𝗍,𝖱𝖾𝗃𝖾𝖼𝗍}\Sigma^{*}\cdot Q\cdot\Sigma^{*}\cdot\lhd\,\cup\,\{{\sf Accept},{\sf Reject}\}. A configuration of the form xqwxqw\cdot\lhd, where qQq\in Q and x,wΣx,w\in\Sigma^{*}, expresses the situation that AA is in state qq, the tape contains the word xwxw\cdot\lhd, and the head of AA is on the first letter of the suffix ww\cdot\lhd. The single-step computation relation that AA induces on this set of configurations is defined as follows, where qQq\in Q and x,wΣx,w\in\Sigma^{*}:

xqw_A{xuqv,if w=uav,u(τ(q)),aΣτ(q),vΣ, and qδ(q,a),𝖱𝖾𝗃𝖾𝖼𝗍,if w=uav,u(τ(q)),aΣτ(q),vΣ, and δ(q,a)=,𝖠𝖼𝖼𝖾𝗉𝗍,if w(τ(q)) and qF,𝖱𝖾𝗃𝖾𝖼𝗍,if w(τ(q)) and qF.xqw\cdot\lhd\vdash_{\_}A\left\{\begin{array}[]{ll}xuq^{\prime}v\cdot\lhd,&\mbox{if }w=uav,\,u\in(\tau(q))^{*},\,a\in\Sigma\smallsetminus\tau(q),\,v\in\Sigma^{*},\mbox{ and }q^{\prime}\in\delta(q,a),\\ {\sf Reject},&\mbox{if }w=uav,\,u\in(\tau(q))^{*},\,a\in\Sigma\smallsetminus\tau(q),\,v\in\Sigma^{*},\mbox{ and }\delta(q,a)=\emptyset,\\ {\sf Accept},&\mbox{if }w\in(\tau(q))^{*}\mbox{ and }q\in F,\\ {\sf Reject},&\mbox{if }w\in(\tau(q))^{*}\mbox{ and }q\not\in F.\end{array}\right.

Thus, in each step, AA reads and deletes the first letter to the right of the current position of its head that is not translucent for the current state. In particular, after reading and deleting a letter, the head does not return to the left end of the tape (that is why this type of automaton is called non-returning), but it rather moves to the next letter. In addition, if all letters on the tape that are to the right of the current head position are translucent for the current state, then AA halts, and it accepts if the current state is final. A word wΣw\in\Sigma^{*} is accepted by AA if there exists an initial state q_0Iq_{\_}0\in I and a computation q_0w_A𝖠𝖼𝖼𝖾𝗉𝗍q_{\_}0w\cdot\lhd\vdash_{\_}A^{*}{\sf Accept}, where _A\vdash_{\_}A^{*} denotes the reflexive transitive closure of the single-step computation relation _A\vdash_{\_}A. Now, L(A)={wΣw is accepted by A}L(A)=\{\,w\in\Sigma^{*}\mid w\mbox{ is accepted by }A\,\} is the language accepted by AA, and (nr-nr-NFAwtl)\mathcal{L}(\mbox{\sf nr-nr-NFAwtl}) denotes the class of all languages that are accepted by nr-nr-NFAwtls.

An nr-nr-NFAwtl A=(Q,Σ,,τ,I,F,δ)A=(Q,\Sigma,\lhd,\tau,I,F,\delta) is a non-repetitive non-returning deterministic finite automaton with translucent letters, or an nr-nr-DFAwtl, if |I|=1|I|=1 and |δ(q,a)|1|\delta(q,a)|\leq 1 for all qQq\in Q and all aΣa\in\Sigma. Then, (nr-nr-DFAwtl)\mathcal{L}(\mbox{\sf nr-nr-DFAwtl}) denotes the class of all languages that are accepted by nr-nr-DFAwtls.

The following result states that the non-repetitive non-returning finite automata with translucent letters of Def. 5 are very weak in that they just accept the regular languages.

Theorem 6

From an nr-nr-NFAwtl AA, one can construct an NFA BB such that L(B)=L(A)L(B)=L(A). In addition, if AA is deterministic, then so is BB.

Proof. Let A=(Q,Σ,,τ,I,F,δ)A=(Q,\Sigma,\lhd,\tau,I,F,\delta) be an nr-nr-NFAwtl. From the definition of the computation relation of AA, we see immediately that, whenever quav_Auqvquav\cdot\lhd\vdash_{\_}Auq^{\prime}v\cdot\lhd is a step in an accepting computation of AA, where q,qQq,q^{\prime}\in Q, u(τ(q))+u\in(\tau(q))^{+}, and aΣa\in\Sigma, then the prefix uu will not be read again during the remaining part of this accepting computation. Thus, instead of ignoring these letters, we could simply delete them. Accordingly, AA accepts the same language as the NFA B=(Q,Σ,I,F,δ_B)B=(Q,\Sigma,I,F,\delta_{\_}B) that is defined through the following transition relation:

δ_B(q,a)={q,if aτ(q),δ(q,a),if aτ(q).\delta_{\_}B(q,a)=\left\{\begin{array}[]{ll}q,&\mbox{if }a\in\tau(q),\\ \delta(q,a),&\mbox{if }a\not\in\tau(q).\end{array}\right.

Trivially, if AA is deterministic, the constructed automaton BB is deterministic, too. \Box

It was actually this observation that led us to define the nr-NFAwtl and the nr-DFAwtl in [10].

Definition 7 ([10])

An nr-NFAwtl A=(Q,Σ,,τ,I,δ)A=(Q,\Sigma,\lhd,\tau,I,\delta) is defined like an RNFAwtl but with the additional extension that it is non-returning, that is, it behaves like an nr-nr-NFAwtl, but for some states qQq\in Q, δ(q,)\delta(q,\lhd) may be a subset of QQ. Thus, if AA is in a configuration of the form xqwxqw\cdot\lhd, where qQq\in Q satisfying δ(q,)Q\delta(q,\lhd)\subseteq Q, xΣx\in\Sigma^{*}, and w(τ(q))w\in(\tau(q))^{*}, then xqw_Aqxwxqw\cdot\lhd\vdash_{\_}Aq^{\prime}xw\cdot\lhd for each state qδ(q,)q^{\prime}\in\delta(q,\lhd). If |I|=1|I|=1 and |δ(q,a)|1|\delta(q,a)|\leq 1 for all qQq\in Q and all aΣ{}a\in\Sigma\cup\{\lhd\}, then AA is an nr-DFAwtl. We use (nr-NFAwtl)\mathcal{L}(\mbox{\sf nr-NFAwtl}) and (nr-DFAwtl)\mathcal{L}(\mbox{\sf nr-DFAwtl}) to denote the corresponding classes of languages.

Thus, an nr-NFAwtl is both at the same time, non-returning in the sense of Def. 5 and repetitive in the sense of Def. 2. In particular, the nr-NFAwtl (nr-DFAwtl) should not be confused with the nr-nr-NFAwtl (nr-nr-DFAwtl) of Def. 5. The latter has been introduced here only to complete the picture. Theorem 6 above shows that they are not really interesting types of automata with translucent letters. Finally, we should also mention another related type of automaton, the right one-way jumping finite automaton.

Definition 8 ([2, 4])

A nondeterministic right one-way jumping finite automaton, or an NROWJFA, is given through a 6-tuple J=(Q,Σ,,I,F,δ)J=(Q,\Sigma,\lhd,I,F,\delta), where QQ, Σ\Sigma, \lhd, II, and FF are defined as for an NFAwtl, and δ:Q×Σ𝒫(Q)\delta:Q\times\Sigma\to\mathcal{P}(Q) is a transition relation. For each state qQq\in Q, let Σ_q={aΣδ(q,a)}\Sigma_{\_}q=\{\,a\in\Sigma\mid\delta(q,a)\not=\emptyset\,\} be the set of letters that JJ can read in state qq.

A configuration of the NROWJFA JJ is a word qwqw\cdot\lhd from the set QΣQ\cdot\Sigma^{*}\cdot\lhd. The computation relation _J\circlearrowright^{*}_{\_}J that JJ induces on its set of configurations is the reflexive and transitive closure of the right one-way jumping relation _J\circlearrowright_{\_}J that is defined as follows, where q,qQq,q^{\prime}\in Q, x,yΣx,y\in\Sigma^{*}, and aΣ:a\in\Sigma:

qxay_Jqyx if x(ΣΣ_q) and qδ(q,a).qxay\cdot\lhd\circlearrowright_{\_}Jq^{\prime}yx\cdot\lhd\mbox{ if }x\in(\Sigma\smallsetminus\Sigma_{\_}q)^{*}\mbox{ and }q^{\prime}\in\delta(q,a).

Thus, being in state qq, JJ reads and deletes the first letter to the right of the actual head position that it can actually read in that state, while the prefix that consists of letters for which JJ has no transitions in the current state is cyclically shifted to the end of the current tape inscription. Then,

L(J)={wΣq_0Iq_fF:q_0w_Jq_f}L(J)=\{\,w\in\Sigma^{*}\mid\exists\,q_{\_}0\in I\,\exists\,q_{\_}f\in F:q_{\_}0w\cdot\lhd\circlearrowright^{*}_{\_}Jq_{\_}f\cdot\lhd\,\}

is the language accepted by the NROWJFA JJ.

The NROWJFA JJ is deterministic, that is, a right one-way jumping finite automaton or an ROWJFA, if |I|=1|I|=1 and |δ(q,a)|1|\delta(q,a)|\leq 1 for all qQq\in Q and aΣa\in\Sigma.

Actually, as defined in [2, 4], the (N)ROWJFA does not have an end-of-tape marker, but it is obvious that our definition is equivalent to the original one. We just introduced this end-of-tape marker to ensure consistency with our other types of automata. We see that the (N)ROWJFA overcomes the problem of processing letters that are skipped over by cyclically shifting these letters to the right so that they can be read later. The following results are known concerning the various types of automata introduced above.

Theorem 9 ([11])

(a)𝖱𝖤𝖦(DFAwtl)(nr-DFAwtl)(nr-NFAwtl).(b)𝖱𝖤𝖦(DFAwtl)(NFAwtl)(nr-NFAwtl).(c)(ROWJFA)(nr-DFAwtl).(d)(NROWJFA)(nr-NFAwtl).(e)(ROWJFA)(NROWJFA).\begin{array}[t]{clcccccc}{\rm(a)}&{\sf REG}&\subsetneq&\mathcal{L}(\mbox{\sf DFAwtl})&\subsetneq&\mathcal{L}(\mbox{\sf nr-DFAwtl})&\subsetneq&\mathcal{L}(\mbox{\sf nr-NFAwtl}).\\ {\rm(b)}&{\sf REG}&\subsetneq&\mathcal{L}(\mbox{\sf DFAwtl})&\subsetneq&\mathcal{L}(\mbox{\sf NFAwtl})&\subsetneq&\mathcal{L}(\mbox{\sf nr-NFAwtl}).\\ {\rm(c)}&&&\mathcal{L}(\mbox{\sf ROWJFA})&\subsetneq&\mathcal{L}(\mbox{\sf nr-DFAwtl}).\\ {\rm(d)}&&&\mathcal{L}(\mbox{\sf NROWJFA})&\subsetneq&\mathcal{L}(\mbox{\sf nr-NFAwtl}).\\ {\rm(e)}&&&\mathcal{L}(\mbox{\sf ROWJFA})&\subsetneq&\mathcal{L}(\mbox{\sf NROWJFA}).\\ \end{array}

In addition, (ROWJFA)\mathcal{L}(\mbox{\sf ROWJFA}) is incomparable under inclusion to (DFAwtl)\mathcal{L}(\mbox{\sf DFAwtl}) and (NFAwtl)\mathcal{L}(\mbox{\sf NFAwtl}), and (NROWJFA)\mathcal{L}(\mbox{\sf NROWJFA}) is incomparable to (DFAwtl)\mathcal{L}(\mbox{\sf DFAwtl}), (NFAwtl)\mathcal{L}(\mbox{\sf NFAwtl}), and (nr-DFAwtl)\mathcal{L}(\mbox{\sf nr-DFAwtl}). Thus, it remains to compare the deterministic and nondeterministic repetitive finite automata with translucent letters to these other types of automata.

3 Comparing the Repetitive Automata to the Non-Repetitive Ones

We claim that the language L_,c=L(A_,c)L_{\_}{\vee,c}=L(A_{\_}{\vee,c}) of Example 4 is not accepted by any DFAwtl. As each DFAwtl can be simulated by an RDFAwtl, this shows that (𝖣𝖥𝖠𝗐𝗍𝗅)(𝖱𝖣𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf DFAwtl})\subsetneq\mathcal{L}({\sf RDFAwtl}).

Lemma 10

L_,c(𝖣𝖥𝖠𝗐𝗍𝗅)L_{\_}{\vee,c}\not\in\mathcal{L}({\sf DFAwtl}).

Proof. Assume that A=(Q,Σ,,τ,I,F,δ)A=(Q,\Sigma,\lhd,\tau,I,F,\delta) is a DFAwtl that accepts the language L_,cL_{\_}{\vee,c}, where Q={q_0,q_1,,q_m1}Q=\{q_{\_}0,q_{\_}1,\ldots,q_{\_}{m-1}\}, Σ={a,b,c}\Sigma=\{a,b,c\}, and I={q_0}I=\{q_{\_}0\}.

Let n>2mn>2m, and let w=anbncL_,cw=a^{n}b^{n}c\in L_{\_}{\vee,c}. Then the computation of AA on input ww is accepting, that is, it is of the form

q_0anbnc_Aq_i_1w_1_A_Aq_i_rw_r_A𝖠𝖼𝖼𝖾𝗉𝗍,q_{\_}0a^{n}b^{n}c\cdot\lhd\vdash_{\_}{A}q_{\_}{i_{\_}1}w_{\_}1\cdot\lhd\vdash_{\_}{A}\cdots\vdash_{\_}{A}q_{\_}{i_{\_}r}w_{\_}r\cdot\lhd\vdash_{\_}{A}{\sf Accept},

where w_r(τ(q_i_r))w_{\_}r\in(\tau(q_{\_}{i_{\_}r}))^{*} and q_i_rFq_{\_}{i_{\_}r}\in F. If |w_r|_a>0|w_{\_}r|_{\_}a>0, then AA would also accept on input an+1bncL_,ca^{n+1}b^{n}c\not\in L_{\_}{\vee,c}, if |w_r|_b>0|w_{\_}r|_{\_}b>0, then AA would also accept on input anbn+1cL_,ca^{n}b^{n+1}c\not\in L_{\_}{\vee,c}, and if |w_r|_c>0|w_{\_}r|_{\_}c>0, then AA would also accept on input anbnL_,ca^{n}b^{n}\not\in L_{\_}{\vee,c}. Hence, it follows that w_r=λw_{\_}r=\lambda, that is, the accepting computation above consists of 2n+12n+1 transition steps, each of which deletes a letter, and the final accepting step. In particular, the only occurrence of the letter cc is read and deleted during the above computation, that is, there exist an index jj and integers r,s0r,s\geq 0 such that r+s=jr+s=j and

q_0anbnc_Ajq_i_janrbnsc_Aq_i_j+1anrbns_Aq_i_r_A𝖠𝖼𝖼𝖾𝗉𝗍.q_{\_}0a^{n}b^{n}c\cdot\lhd\vdash_{\_}A^{j}q_{\_}{i_{\_}j}a^{n-r}b^{n-s}c\cdot\lhd\vdash_{\_}Aq_{\_}{i_{\_}{j+1}}a^{n-r}b^{n-s}\cdot\lhd\vdash_{\_}A^{*}q_{\_}{i_{\_}r}\cdot\lhd\vdash_{\_}A{\sf Accept}.

We now distinguish several cases.

  1. (1)

    Assume that a,bτ(q_i_j)a,b\in\tau(q_{\_}{i_{\_}j}). Then AA executes the following computation on input anb2na^{n}b^{2n}:

    q_0anb2n_Ajq_i_janrb2ns_A{𝖠𝖼𝖼𝖾𝗉𝗍,if q_i_jF,𝖱𝖾𝗃𝖾𝖼𝗍,if q_i_jF.q_{\_}0a^{n}b^{2n}\cdot\lhd\vdash_{\_}A^{j}q_{\_}{i_{\_}j}a^{n-r}b^{2n-s}\cdot\lhd\vdash_{\_}A\left\{\begin{array}[]{ll}{\sf Accept},&\mbox{if }q_{\_}{i_{\_}j}\in F,\\ {\sf Reject},&\mbox{if }q_{\_}{i_{\_}j}\not\in F.\end{array}\right.

    As anb2nL_,ca^{n}b^{2n}\in L_{\_}{\vee,c}, we see that the latter computation must be accepting, that is, q_i_jFq_{\_}{i_{\_}j}\in F. Thus, AA can also execute the following accepting computation:

    q_0ar+s+1br+s+1_Ajq_i_jas+1br+1_A𝖠𝖼𝖼𝖾𝗉𝗍,q_{\_}0a^{r+s+1}b^{r+s+1}\cdot\lhd\vdash_{\_}A^{j}q_{\_}{i_{\_}j}a^{s+1}b^{r+1}\cdot\lhd\vdash_{\_}A{\sf Accept},

    which, however, contradicts the fact that ar+s+1br+s+1L_,ca^{r+s+1}b^{r+s+1}\not\in L_{\_}{\vee,c}.

  2. (2)

    Assume that aτ(q_i_j)a\not\in\tau(q_{\_}{i_{\_}j}), but bτ(q_i_j)b\in\tau(q_{\_}{i_{\_}j}). Then, r=nr=n and sns\leq n, that is, anrbnsc=bnsca^{n-r}b^{n-s}c=b^{n-s}c. Now, AA executes the following computation on input anb2na^{n}b^{2n}:

    q_0anb2n_Ajq_i_janrb2ns=q_i_jb2ns_A{𝖠𝖼𝖼𝖾𝗉𝗍,if q_i_jF,𝖱𝖾𝗃𝖾𝖼𝗍,if q_i_jF.q_{\_}0a^{n}b^{2n}\cdot\lhd\vdash_{\_}A^{j}q_{\_}{i_{\_}j}a^{n-r}b^{2n-s}\cdot\lhd=q_{\_}{i_{\_}j}b^{2n-s}\cdot\lhd\vdash_{\_}A\left\{\begin{array}[]{ll}{\sf Accept},&\mbox{if }q_{\_}{i_{\_}j}\in F,\\ {\sf Reject},&\mbox{if }q_{\_}{i_{\_}j}\not\in F.\end{array}\right.

    As anb2nL_,ca^{n}b^{2n}\in L_{\_}{\vee,c}, we see that the latter computation must be accepting, that is, q_i_jFq_{\_}{i_{\_}j}\in F. Thus, AA can also execute the following accepting computation:

    q_0anb3n+s_Ajq_i_jb3n_A𝖠𝖼𝖼𝖾𝗉𝗍,q_{\_}0a^{n}b^{3n+s}\cdot\lhd\vdash_{\_}A^{j}q_{\_}{i_{\_}j}b^{3n}\cdot\lhd\vdash_{\_}A{\sf Accept},

    which, however, contradicts the fact that anb3n+sL_,ca^{n}b^{3n+s}\not\in L_{\_}{\vee,c}.

  3. (3)

    Assume that bτ(q_i_j)b\not\in\tau(q_{\_}{i_{\_}j}). Then rnr\leq n and s=ns=n, that is, anrbnsc=anrca^{n-r}b^{n-s}c=a^{n-r}c. As n>mn>m, there exist a state qq and integers k_0,k_1,t_00k_{\_}0,k_{\_}1,t_{\_}0\geq 0 and t_11t_{\_}1\geq 1 such that the accepting computation above has the form

    q_0anbnc_Aqank_0bnt_0c_A+qank_0k_1bnt_0t_1c_Aq_i_janrc_A𝖠𝖼𝖼𝖾𝗉𝗍.q_{\_}0a^{n}b^{n}c\cdot\lhd\vdash_{\_}A^{*}qa^{n-k_{\_}0}b^{n-t_{\_}0}c\cdot\lhd\vdash_{\_}A^{+}qa^{n-k_{\_}0-k_{\_}1}b^{n-t_{\_}0-t_{\_}1}c\cdot\lhd\vdash_{\_}A^{*}q_{\_}{i_{\_}j}a^{n-r}c\cdot\lhd\vdash_{\_}A^{*}{\sf Accept}.

    Hence, we also obtain the following accepting computation:

    q_0an+k_1bn+t_1c_Aqan+k_1k_0bn+t_1t_0c_A+qank_0bnt_0c_A𝖠𝖼𝖼𝖾𝗉𝗍.q_{\_}0a^{n+k_{\_}1}b^{n+t_{\_}1}c\cdot\lhd\vdash_{\_}A^{*}qa^{n+k_{\_}1-k_{\_}0}b^{n+t_{\_}1-t_{\_}0}c\cdot\lhd\vdash_{\_}A^{+}qa^{n-k_{\_}0}b^{n-t_{\_}0}c\cdot\lhd\vdash_{\_}A^{*}{\sf Accept}.

    This implies that an+k_1bn+t_1cL_,ca^{n+k_{\_}1}b^{n+t_{\_}1}c\in L_{\_}{\vee,c}, which yields k_1=t_1k_{\_}1=t_{\_}1.

    Now we consider the computations of AA on input an+νt_1bn+νt_1a^{n+\nu\cdot t_{\_}1}b^{n+\nu\cdot t_{\_}1} for all ν0\nu\geq 0:

    q_0an+νt_1bn+νt_1_Aq_i_janr.q_{\_}0a^{n+\nu\cdot t_{\_}1}b^{n+\nu\cdot t_{\_}1}\cdot\lhd\vdash_{\_}A^{*}q_{\_}{i_{\_}j}a^{n-r}\cdot\lhd.

    As an+νt_1b2n+2νt_1L_,ca^{n+\nu\cdot t_{\_}1}b^{2n+2\nu\cdot t_{\_}1}\in L_{\_}{\vee,c}, we see that the computation of AA that begins with the configuration q_i_janrbn+νt_1q_{\_}{i_{\_}j}a^{n-r}b^{n+\nu\cdot t_{\_}1} leads to acceptance for all ν0\nu\geq 0. Hence, we obtain

    q_0anbnbn+t_1_Aq_i_janrbn+t_1_A𝖠𝖼𝖼𝖾𝗉𝗍,q_{\_}0a^{n}b^{n}b^{n+t_{\_}1}\cdot\lhd\vdash_{\_}A^{*}q_{\_}{i_{\_}j}a^{n-r}b^{n+t_{\_}1}\cdot\lhd\vdash_{\_}A^{*}{\sf Accept},

    but we have anbnbn+t_1L_,ca^{n}b^{n}b^{n+t_{\_}1}\not\in L_{\_}{\vee,c}, as t_1>0t_{\_}1>0, a contradiction.

As this covers all cases, we see that the language L_,cL_{\_}{\vee,c} is indeed not accepted by any DFAwtl. \Box

On the other hand, it can be shown quite easily that the RDFAwtl (the RNFAwtl) is a special case of the nr-DFAwtl (the nr-NFAwtl).

Lemma 11

From an RNFAwtl AA, one can construct an nr-NFAwtl BB such that L(B)=L(A)L(B)=L(A). In addition, if AA is deterministic, then so is BB.

Proof. Let A=(Q,Σ,,τ,I,δ)A=(Q,\Sigma,\lhd,\tau,I,\delta) be an RNFAwtl. We define an nr-NFAwtl B=(Q_B,Σ,,τ_B,I_B,δ_B)B=(Q_{\_}B,\Sigma,\lhd,\tau_{\_}B,I_{\_}B,\delta_{\_}B) that simulates the computations of AA as follows:

  • Q_B=Q{qqQ}Q_{\_}B=Q\cup\{\,q^{\prime}\mid q\in Q\,\}, where for each state qQq\in Q, qq^{\prime} is an additional auxiliary state, and I_B=II_{\_}B=I,

  • for each state qQq\in Q, τ_B(q)=τ(q)\tau_{\_}B(q)=\tau(q) and τ_B(q)=Σ\tau_{\_}B(q^{\prime})=\Sigma,

  • for each state qQq\in Q and each letter aΣa\in\Sigma, δ_B(q,a)={ppδ(q,a)}\delta_{\_}B(q,a)=\{\,p^{\prime}\mid p\in\delta(q,a)\,\} and δ_B(q,a)=\delta_{\_}B(q^{\prime},a)=\emptyset.

  • Furthermore, for each state qQq\in Q, δ_B(q,)=𝖠𝖼𝖼𝖾𝗉𝗍\delta_{\_}B(q,\lhd)={\sf Accept}, if δ(q,)=𝖠𝖼𝖼𝖾𝗉𝗍\delta(q,\lhd)={\sf Accept}, and δ_B(q,)=\delta_{\_}B(q,\lhd)=\emptyset, otherwise. Finally, δ_B(q,)={q}\delta_{\_}B(q^{\prime},\lhd)=\{q\}.

It remains to verify that BB just simulates the computations of AA.

Assume that qwqw\cdot\lhd is a configuration of AA, that is, qQq\in Q and wΣw\in\Sigma^{*}. From the definition of the computation relation _A\vdash_{\_}A, we see that there are four different cases that we must consider.

First, if w=uavw=uav for some words u(τ(q))u\in(\tau(q))^{*}, vΣv\in\Sigma^{*}, and a letter a(Στ(q))a\in(\Sigma\smallsetminus\tau(q)), then AA executes a transition from δ(q,a)\delta(q,a).

  • If pδ(q,a)p\in\delta(q,a), then qw=quav_Apuvqw\cdot\lhd=quav\cdot\lhd\vdash_{\_}Apuv\cdot\lhd is a possible step of AA. In this case, BB can execute the following sequence of steps:

    qw=quav_Bupv_Bpuv.qw\cdot\lhd=quav\cdot\lhd\vdash_{\_}Bup^{\prime}v\cdot\lhd\vdash_{\_}Bpuv\cdot\lhd.
  • On the other hand, if δ(q,a)=\delta(q,a)=\emptyset, then AA halts and rejects. However, in this case, also δ_B(q,a)=\delta_{\_}B(q,a)=\emptyset, and hence, BB halts and rejects as well.

Finally, if w(τ(q))w\in(\tau(q))^{*}, then AA halts.

  • If δ(q,)=𝖠𝖼𝖼𝖾𝗉𝗍\delta(q,\lhd)={\sf Accept}, then δ_B(q,)=𝖠𝖼𝖼𝖾𝗉𝗍\delta_{\_}B(q,\lhd)={\sf Accept}, too.

  • If δ(q,)=\delta(q,\lhd)=\emptyset, then AA rejects. In this case, δ_B(q,)=\delta_{\_}B(q,\lhd)=\emptyset, that is, BB halts and rejects as well.

It follows that L(A)L(B)L(A)\subseteq L(B).

Conversely, if wL(B)w\in L(B), then it is easily verified that each accepting computation of BB on input ww is just a simulation of an accepting computation of AA on input ww. Thus, we see that L(B)=L(A)L(B)=L(A).

Finally, the above definition of BB shows that BB is deterministic, if AA is. \Box

The language

L_={w{a,b}|w|_b=|w|_a or |w|_b=2|w|_a}L_{\_}\vee=\{\,w\in\{a,b\}^{*}\mid|w|_{\_}b=|w|_{\_}a\mbox{ or }|w|_{\_}b=2\cdot|w|_{\_}a\,\}

is a rational trace language, and as such, it is accepted by an NFAwtl. However, as proved in [11], this language is not accepted by any nr-DFAwtl. Hence, L_L_{\_}\vee is not accepted by any RDFAwtl, either. Thus, we immediately obtain the following non-inclusion result.

Corollary 12

(𝖭𝖥𝖠𝗐𝗍𝗅)(𝖱𝖣𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf NFAwtl})\not\subseteq\mathcal{L}({\sf RDFAwtl}).

As defined above, an RNFAwtl A=(Q,Σ,,τ,I,δ)A=(Q,\Sigma,\lhd,\tau,I,\delta) may run into an infinite computation. Just assume that qq is a state of AA, w(τ(q))w\in(\tau(q))^{*}, and qδ(q,)q\in\delta(q,\lhd). Then qw_Aqw_Aqwqw\cdot\lhd\vdash_{\_}Aqw\cdot\lhd\vdash_{\_}Aqw\cdot\lhd, and so forth. However, we can avoid this by converting AA into an equivalent RNFAwtl BB as follows.

Let B=(Q,Σ,,τ,I,δ)B=(Q^{\prime},\Sigma,\lhd,\tau^{\prime},I^{\prime},\delta^{\prime}), where Q={(q,S)qQ and SQ}Q^{\prime}=\{\,(q,S)\mid q\in Q\mbox{ and }S\subseteq Q\,\}, I={(q,)qI}I^{\prime}=\{\,(q,\emptyset)\mid q\in I\,\}, τ(q,S)=τ(q)\tau^{\prime}(q,S)=\tau(q) for all qQq\in Q and all SQS\subseteq Q,

δ((q,S),a)={(p,)pδ(q,a)} for all qQSQ, and all aΣ,\delta^{\prime}((q,S),a)=\{\,(p,\emptyset)\mid p\in\delta(q,a)\,\}\text{ for all $q\in Q$, $S\subseteq Q$, and all $a\in\Sigma$,}

and

δ((q,S),)={(p,S{q})pδ(q,) and qS} for all qQ and all SQ.\delta^{\prime}((q,S),\lhd)=\{\,(p,S\cup\{q\})\mid p\in\delta(q,\lhd)\mbox{ and }q\not\in S\,\}\text{ for all $q\in Q$ and all $S\subseteq Q$}.

Finally, take δ((q,S),)=𝖠𝖼𝖼𝖾𝗉𝗍\delta^{\prime}((q,S),\lhd)={\sf Accept} if δ(q,)=𝖠𝖼𝖼𝖾𝗉𝗍\delta(q,\lhd)={\sf Accept}. The set SS is used to record those states in which the end-of-tape marker has been reached, and the computation has continued. In the next cycle, when a non-translucent letter is read, then this set is emptied, otherwise, the next state is added to it. This process continues until either a letter is read and deleted, or until no new state can be added to the current set SS, in which case the computation fails.

Moreover, an RNFAwtl A=(Q,Σ,,τ,I,δ)A=(Q,\Sigma,\lhd,\tau,I,\delta) may accept without having read and deleted its input completely. However, we can easily extend the RNFAwtl AA into an equivalent RNFAwtl CC that always reads and deletes its input completely before it accepts. Just take C=(Q{q_e},Σ,,τ,I,δ)C=(Q\cup\{q_{\_}e\},\Sigma,\lhd,\tau^{\prime},I,\delta^{\prime}), where q_eq_{\_}e is a new state, τ(q)=τ(q)\tau^{\prime}(q)=\tau(q) for all qQq\in Q and τ(q_e)=\tau^{\prime}(q_{\_}e)=\emptyset, and δ\delta^{\prime} is defined as follows:

δ(q,a)=δ(q,a)for all qQ and all aΣ,δ(q,)={δ(q,),if δ(q,)𝖠𝖼𝖼𝖾𝗉𝗍,{q_e},if δ(q,)=𝖠𝖼𝖼𝖾𝗉𝗍,δ(q_e,a)={q_e}for all aΣ,δ(q_e,)=𝖠𝖼𝖼𝖾𝗉𝗍.\begin{array}[]{clcll}-&\delta^{\prime}(q,a)&=&\delta(q,a)&\mbox{for all }q\in Q\mbox{ and all }a\in\Sigma,\\ -&\delta^{\prime}(q,\lhd)&=&\lx@intercol\left\{\begin{array}[]{ll}\delta(q,\lhd),&\mbox{if }\delta(q,\lhd)\not={\sf Accept},\\ \{q_{\_}e\},&\mbox{if }\delta(q,\lhd)={\sf Accept},\end{array}\right.\hfil\lx@intercol\\ -&\delta^{\prime}(q_{\_}e,a)&=&\{q_{\_}e\}&\mbox{for all }a\in\Sigma,\\ -&\delta^{\prime}(q_{\_}e,\lhd)&=&{\sf Accept}.\end{array}

Given a word wΣw\in\Sigma^{*} as input, the RNFAwtl CC will execute exactly the same steps as the RNFAwtl AA until AA accepts. Now, the accept step of AA is simulated by CC through changing into state q_eq_{\_}e. As τ(q_e)=\tau^{\prime}(q_{\_}e)=\emptyset and as δ(q_e,a)={q_e}\delta^{\prime}(q_{\_}e,a)=\{q_{\_}e\} for all aΣa\in\Sigma, CC will now read and delete the remaining tape contents and accept on reaching the end-of-tape marker \lhd. It follows easily that L(C)=L(A)L(C)=L(A). Together, the two constructions above yield the following technical result.

Lemma 13

Each RNFAwtl AA can effectively be converted into an equivalent RNFAwtl CC that never gets into an infinite computation and that accepts only after reading and deleting its input completely. In addition, if AA is deterministic, then so is CC.

Finally, we are ready to establish the following equality, which will be proved by simulation.

Theorem 14

(𝖱𝖭𝖥𝖠𝗐𝗍𝗅)=(𝖭𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf RNFAwtl})=\mathcal{L}({\sf NFAwtl}).

Proof. From Proposition 3, we know already that (𝖭𝖥𝖠𝗐𝗍𝗅)(𝖱𝖭𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf NFAwtl})\subseteq\mathcal{L}({\sf RNFAwtl}) holds. Thus, it remains to prove the converse inclusion. Accordingly, we show how to simulate an RNFAwtl by an NFAwtl.

Let A=(Q,Σ,,τ,I,δ)A=(Q,\Sigma,\lhd,\tau,I,\delta) be an RNFAwtl. By Lemma 13, we can assume that AA never gets into an infinite computation and that it accepts only after reading and deleting its input completely. We now construct an NFAwtl B=(Q_B,Σ,,τ_B,I_B,F_B,δ_B)B=(Q_{\_}B,\Sigma,\lhd,\tau_{\_}B,I_{\_}B,F_{\_}B,\delta_{\_}B) with the set of states Q_B={(q,Γ)qQ and ΓΣ}Q_{\_}B=\{\,(q,\Gamma)\mid q\in Q\mbox{ and }\Gamma\subseteq\Sigma\,\}. The automaton BB uses the second component of its states to keep track of the set of letters that may still occur on its tape. At the beginning of its computation, Γ=Σ\Gamma=\Sigma. When BB simulates a step qw_Aqwqw\cdot\lhd\vdash_{\_}Aq^{\prime}w\cdot\lhd in which AA changes its state at the right sentinel because all symbols on its tape are translucent for the state qq, that is, w(τ(q))w\in(\tau(q))^{*}, then the second component will be restricted to Γτ(q)\Gamma\cap\tau(q). The NFAwtl BB is defined as follows:

  • I_B={(q,Σ)qI}I_{\_}B=\{\,(q,\Sigma)\mid q\in I\,\}, and

  • F_B={(q,Γ)δ(q,)=𝖠𝖼𝖼𝖾𝗉𝗍 and ΓΣ}F_{\_}B=\{\,(q,\Gamma)\mid\delta(q,\lhd)={\sf Accept}\mbox{ and }\Gamma\subseteq\Sigma\,\}.

  • The translucency relation τ_B\tau_{\_}B is defined through τ_B((q,Γ))=τ(q)Γ\tau_{\_}B((q,\Gamma))=\tau(q)\cap\Gamma for all qQq\in Q and all ΓΣ\Gamma\subseteq\Sigma, and

  • the transition relation δ_B\delta_{\_}B is initialized as follows, where qQq\in Q, ΓΣ\Gamma\subseteq\Sigma, and aΣa\in\Sigma:

    δ_B((q,Γ),a)={{(q,Γ)qδ(q,a)},if aΓ and δ(q,a),,if aΣΓ or δ(q,a)=.\delta_{\_}B((q,\Gamma),a)=\left\{\begin{array}[]{rl}\{\,(q^{\prime},\Gamma)\mid q^{\prime}\in\delta(q,a)\,\},&\mbox{if }a\in\Gamma\mbox{ and }\delta(q,a)\not=\emptyset,\\ \emptyset,&\mbox{if }a\in\Sigma\smallsetminus\Gamma\mbox{ or }\delta(q,a)=\emptyset.\\ \end{array}\right.

It remains to add further transitions to δ_B\delta_{\_}B that are to simulate the transitions of the form qδ(q,)q^{\prime}\in\delta(q,\lhd) of AA. Assume that qδ(q,)q^{\prime}\in\delta(q,\lhd). This transition can be applied by AA to a configuration of the form qwqw\cdot\lhd for which w(τ(q))w\in(\tau(q))^{*}, and it yields the configuration qwq^{\prime}w\cdot\lhd. Thus, AA simply executes a change of state, but after that, it ‘knows’ that the word ww only contains occurrences of letters from the set τ(q)\tau(q). Accordingly, for each state pQp\in Q and each letter aΣa\in\Sigma, if qδ(p,a)q\in\delta(p,a), then we add the state (q,Γτ(q))(q^{\prime},\Gamma\cap\tau(q)) to δ_B((p,Γ),a)\delta_{\_}B((p,\Gamma),a) for each subset Γ\Gamma containing the letter aa. This transition allows BB to simulate the sequence of two transitions puav_Aquvquvpuav\cdot\lhd\vdash_{\_}Aquv\cdot\lhd\vdash q^{\prime}uv\cdot\lhd, where u(τ(p))u\in(\tau(p))^{*} and u,v(τ(q))u,v\in(\tau(q))^{*}, by the single transition (p,Γ)uav_B(q,Γτ(q))uv(p,\Gamma)uav\cdot\lhd\vdash_{\_}B(q^{\prime},\Gamma\cap\tau(q))uv\cdot\lhd. In addition, if qIq\in I, then the state (q,τ(q))(q^{\prime},\tau(q)) is added to the set I_BI_{\_}B, as AA may start a computation by executing the step qw_Aqwqw\cdot\lhd\vdash_{\_}Aq^{\prime}w\cdot\lhd, if w(τ(q))w\in(\tau(q))^{*}.

It can now be checked that BB just simulates the computations of AA. If during such a simulation, BB is in a state (q,Γ)(q,\Gamma) but an occurrence of a letter cΓc\not\in\Gamma is encountered, then BB gets stuck and, so, rejects, as in that situation, the letter cc is neither translucent for the state (q,Γ)(q,\Gamma) nor is the transition δ_B((q,Γ),c)\delta_{\_}B((q,\Gamma),c) defined. It follows that L(B)=L(A)L(B)=L(A), which completes the proof. \Box

It remains to compare the RDFAwtl to the nr-DFAwtl, the nr-NFAwtl, and the (N)ROWJFA. The deterministic linear language L_2={anbnn0}L_{\_}2=\{\,a^{n}b^{n}\mid n\geq 0\,\} is accepted by an nr-DFAwtl [10]. However, it is not accepted by any NFAwtl [14]. Hence, we get the following result from Lemma 11.

Corollary 15

(RDFAwtl)(nr-DFAwtl)\mathcal{L}(\mbox{\sf RDFAwtl})\subsetneq\mathcal{L}(\mbox{\sf nr-DFAwtl}).

According to [11], the language classes (DFAwtl)\mathcal{L}(\mbox{\sf DFAwtl}) and (NFAwtl)\mathcal{L}(\mbox{\sf NFAwtl}) are incomparable under inclusion to the classes (ROWJFA)\mathcal{L}(\mbox{\sf ROWJFA}) and (NROWJFA)\mathcal{L}(\mbox{\sf NROWJFA}). Accordingly, we also have the following incomparability result.

Corollary 16

The language class (RDFAwtl)\mathcal{L}(\mbox{\sf RDFAwtl}) is incomparable under inclusion to the classes (ROWJFA)\mathcal{L}(\mbox{\sf ROWJFA}) and (NROWJFA)\mathcal{L}(\mbox{\sf NROWJFA}).

The diagram in Figure 2 summarizes the inclusion and incomparability results obtained for the various types of automata with translucent letters. All arrows in that diagram denote proper inclusions, and classes that are not connected by a sequence of arrows are incomparable under inclusion. Here, 𝖫𝖱𝖠𝖳{\sf LRAT} denotes the class of rational trace languages (see, e.g., [16]), GCSL is the class of growing context-sensitive languages (see, e.g., [5]), and (D)LIN is the class of (deterministic) linear context-free languages.

CSL GCSL (nr-NFAwtl)\mathcal{L}(\mbox{\sf nr-NFAwtl}) CFL (nr-DFAwtl)\mathcal{L}(\mbox{\sf nr-DFAwtl}) (NROWJFA)\mathcal{L}(\mbox{\sf NROWJFA}) LIN (NFAwtl)=(RNFAwtl)\mathcal{L}(\mbox{\sf NFAwtl})=\mathcal{L}(\mbox{\sf RNFAwtl}) DLIN 𝖫𝖱𝖠𝖳{\sf LRAT} (RDFAwtl)\mathcal{L}(\mbox{\sf RDFAwtl}) (ROWJFA)\mathcal{L}(\mbox{\sf ROWJFA}) (DFAwtl)\mathcal{L}(\mbox{\sf DFAwtl}) REG (nr-nr-NFAwtl)\mathcal{L}(\mbox{\sf nr-nr-NFAwtl}) (nr-nr-DFAwtl)\mathcal{L}(\mbox{\sf nr-nr-DFAwtl})

Figure 2: The inclusion relations between the various types of finite automata with translucent letters.

4 Closure Properties

In this section, we study closure properties of the classes of languages accepted by deterministic and nondeterministic repetitive finite automata with translucent letters. As the class (𝖱𝖭𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf RNFAwtl}) of languages accepted by RNFAwtls coincides with the class (𝖭𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf NFAwtl}), based on [16], we obtain immediately that (𝖱𝖭𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf RNFAwtl}) is closed under union, product, Kleene star, inverse projections, disjoint shuffle, and the operation of taking the commutative closure, but it is neither closed under intersection (with regular sets), nor under complementation, nor under non-erasing morphisms.

On the other hand, for the class (𝖣𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf DFAwtl}), it is known [17] that it is closed under complementation, but it is not closed under any of the following operations: union, intersection (with regular sets), product, Kleene star, reversal, alphabetic morphisms, and commutative closure.

Here, the commutative closure of a language LL is based on the letter-equivalence of words. We say that two words uu and vv over an alphabet Σ\Sigma are letter-equivalent if, for each letter aΣa\in\Sigma, |u|_a=|v|_a|u|_{\_}a=|v|_{\_}a. The commutative closure com(L){\rm com}(L) of a language LΣL\subseteq\Sigma^{*} is the set of all words that are letter-equivalent to a word from LL, that is, com(L)={wΣuL:u is letter-equivalent to w}.{\rm com}(L)=\{\,w\in\Sigma^{*}\mid\exists u\in L:u\text{ is letter-equivalent to }w\,\}.

In addition, we are interested in the shuffle operation. For two words uu and vv from Σ\Sigma^{*}, the shuffle u\shufflevu\shuffle v of uu and vv is the set of words

u\shufflev={u_1v_1u_2v_2u_mv_mm1,i=1,2,,m:u_i,v_iΣ,u=u_1u_2u_m, and v=v_1v_2v_m},u\shuffle v=\{\,u_{\_}1v_{\_}1u_{\_}2v_{\_}2\cdots u_{\_}mv_{\_}m\mid m\geq 1,\forall i=1,2,\ldots,m:u_{\_}i,v_{\_}i\in\Sigma^{*},u=u_{\_}1u_{\_}2\cdots u_{\_}m,\mbox{ and }v=v_{\_}1v_{\_}2\cdots v_{\_}m\,\},

and the shuffle of two languages L_1,L_2ΣL_{\_}1,L_{\_}2\subseteq\Sigma^{*} is the language L_1\shuffleL_2=_uL_1,vL_2(u\shufflev).L_{\_}1\shuffle L_{\_}2=\bigcup_{\_}{u\in L_{\_}1,v\in L_{\_}2}(u\shuffle v).

We shall show that (𝖱𝖣𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf RDFAwtl}) is closed under complementation, left quotient with respect to a single word, and disjoint shuffle. However, it is not closed under union, intersection (with regular sets), product, Kleene star, reversal, alphabetic morphism, commutative closure, and shuffle.

To begin with, observe that the languages

L_=={w{a,b}|w|_a=|w|_b} and L_2=={w{a,b}2|w|_a=|w|_b}L_{\_}==\{\,w\in\{a,b\}^{*}\mid|w|_{\_}a=|w|_{\_}b\,\}\mbox{ and }L_{\_}{2=}=\{\,w\in\{a,b\}^{*}\mid 2\cdot|w|_{\_}a=|w|_{\_}b\,\}

are both accepted by DFAwtls. However, their union is the language L_L_{\_}\vee that is not even accepted by any nr-DFAwtl. In addition, if RR denotes the regular language that is defined through the regular expression (ab)+(abb)(ab)^{*}+(abb)^{*}, then com(R)=L_{\rm com}(R)=L_{\_}\vee. Moreover, let L_2=={w{c,d}2|w|_c=|w|_d}L_{\_}{2=}^{\prime}=\{\,w\in\{c,d\}^{*}\mid 2\cdot|w|_{\_}c=|w|_{\_}d\,\}. Then, it is easily verified that the language L_=L_2=L_{\_}=\,\cup\,L_{\_}{2=}^{\prime} is also accepted by a DFAwtl. However, if φ:{a,b,c,d}{a,b}\varphi:\{a,b,c,d\}^{*}\to\{a,b\}^{*} denotes the alphabetic morphism that is defined through aaa\mapsto a, bbb\mapsto b, cac\mapsto a, and dbd\mapsto b, then φ(L_=L_2=)=L_\varphi(L_{\_}=\,\cup\,L_{\_}{2=}^{\prime})=L_{\_}\vee. Finally, the language L_2={anbnn0}=L_=({a}{b})L_{\_}2=\{\,a^{n}b^{n}\mid n\geq 0\,\}=L_{\_}=\,\cap\,\left(\{a\}^{*}\cdot\{b\}^{*}\right) is not accepted by any NFAwtl [14]. In summary, these examples yield the following non-closure properties.

Corollary 17

The language class (RDFAwtl)\mathcal{L}(\mbox{\sf RDFAwtl}) is not closed under union, intersection (with regular sets), alphabetic morphisms, or commutative closure.

Next, we prove that the class (RDFAwtl)\mathcal{L}(\mbox{\sf RDFAwtl}) is closed under the operation of complementation.

Proposition 18

(𝖱𝖣𝖥𝖠𝗐𝗍𝗅)\mathcal{L}({\sf RDFAwtl}) is closed under complementation.

Proof. Let A=(Q_A,Σ,,τ_A,q_0,δ_A)A=(Q_{\_}A,\Sigma,\lhd,\tau_{\_}A,q_{\_}0,\delta_{\_}A) be an RDFAwtl. To obtain an RDFAwtl B=(Q_B,Σ,,τ_B,q_0,δ_B)B=(Q_{\_}B,\Sigma,\lhd,\tau_{\_}B,q_{\_}0,\delta_{\_}B) accepting the complement of L(A)L(A), we need to change all accepting steps into rejecting ones and all rejecting steps into accepting ones. For that matter, we extend the set of states of AA with an additional state q_aq_{\_}a that will always lead to acceptance, that is, Q_B=Q_A{q_a}Q_{\_}B=Q_{\_}A\cup\{q_{\_}a\}. The translucency mapping τ_B(q)\tau_{\_}B(q) equals τ_A(q)\tau_{\_}A(q) for all states qQ_Aq\in Q_{\_}A, and τ(q_a)=\tau(q_{\_}a)=\emptyset. Finally, we define the transition relation of BB as follows, where qQ_Aq\in Q_{\_}A and xΣx\in\Sigma:

δ_B(q,x)={δ_A(q,x),if δ_A(q,x),q_a,if δ_A(q,x)= and xτ(q),δ_B(q,)={δ_A(q,),if δ_A(q,)Q_A,,if δ_A(q,)=𝖠𝖼𝖼𝖾𝗉𝗍,q_a,if δ_A(q,)=,δ_B(q_a,x)=q_a,δ_B(q_a,)=𝖠𝖼𝖼𝖾𝗉𝗍.\begin{array}[]{lcl}\delta_{\_}B(q,x)&=&\left\{\begin{array}[]{ll}\delta_{\_}A(q,x),&\mbox{if }\delta_{\_}A(q,x)\neq\emptyset,\\ q_{\_}a,&\mbox{if }\delta_{\_}A(q,x)=\emptyset\mbox{ and }x\not\in\tau(q),\end{array}\right.\\[10.00002pt] \delta_{\_}B(q,\lhd)&=&\left\{\begin{array}[]{ll}\delta_{\_}A(q,\lhd),&\mbox{if }\delta_{\_}A(q,\lhd)\in Q_{\_}A,\\ \emptyset,&\mbox{if }\delta_{\_}A(q,\lhd)={\sf Accept},\\ q_{\_}a,&\mbox{if }\delta_{\_}A(q,\lhd)=\emptyset,\end{array}\right.\\[10.00002pt] \delta_{\_}B(q_{\_}a,x)&=&q_{\_}a,\\ \delta_{\_}B(q_{\_}a,\lhd)&=&{\sf Accept}.\end{array}

Now, whenever a computation of the automaton AA on an input word wΣw\in\Sigma^{*} is accepting, it is of the following form:

q_0w_Aqw_A𝖠𝖼𝖼𝖾𝗉𝗍, where qQ_A,w(τ(q)), and δ_A(q,)=𝖠𝖼𝖼𝖾𝗉𝗍.q_{\_}0w\cdot\lhd\vdash_{\_}A^{*}qw^{\prime}\cdot\lhd\vdash_{\_}A{\sf Accept},\mbox{ where }q\in Q_{\_}A,w^{\prime}\in(\tau(q))^{*},\mbox{ and }\delta_{\_}A(q,\lhd)={\sf Accept}.

Then, the automaton BB will execute the computation q_0w_Bqw_B𝖱𝖾𝗃𝖾𝖼𝗍.q_{\_}0w\cdot\lhd\vdash_{\_}B^{*}qw^{\prime}\cdot\lhd\vdash_{\_}B{\sf Reject}. Whenever a computation of AA on an input word wΣw\in\Sigma^{*} is rejecting, then

q_0w_Aqw_A𝖱𝖾𝗃𝖾𝖼𝗍, where qQ_A and wΣ.q_{\_}0w\cdot\lhd\vdash_{\_}A^{*}qw^{\prime}\cdot\lhd\vdash_{\_}A{\sf Reject}\mbox{, where }q\in Q_{\_}A\mbox{ and }w^{\prime}\in\Sigma^{*}.

Here either

  1. 1.

    w=uxvw^{\prime}=uxv for some u(τ(q)),vΣ,xΣτ(q)u\in(\tau(q))^{*},v\in\Sigma^{*},x\in\Sigma\smallsetminus\tau(q) such that δ_A(q,x)=\delta_{\_}A(q,x)=\emptyset, or

  2. 2.

    w(τ(q))w^{\prime}\in(\tau(q))^{*} and δ_A(q,)=\delta_{\_}A(q,\lhd)=\emptyset.

In both cases, the automaton BB will execute an accepting computation of the form

q_0w_Bqw_Bq_aw_B𝖠𝖼𝖼𝖾𝗉𝗍.q_{\_}0w\cdot\lhd\vdash_{\_}B^{*}qw^{\prime}\cdot\lhd\vdash_{\_}Bq_{\_}aw^{\prime}\cdot\lhd\vdash_{\_}B^{*}{\sf Accept}.

Thus, we see that L(B)=ΣL(A)L(B)=\Sigma^{*}\smallsetminus L(A), the complement of the language L(A)L(A). \Box

The next lemma states that an RDFAwtl can be assumed to always read the very first letter during the first step of each accepting computation. This is a purely technical result that will be useful below.

Lemma 19

From an RDFAwtl AA, one can effectively construct an equivalent RDFAwtl BB such that, in the first step of each computation, BB reads the very first letter of the given input.

Proof. Let A=(Q_A,Σ,,τ_A,q_0,δ_A)A=(Q_{\_}A,\Sigma,\lhd,\tau_{\_}A,q_{\_}0,\delta_{\_}A) be an RDFAwtl, and let LL be the language accepted by AA. By Lemma 13, we can assume that AA never gets into an infinite computation and that it reads and deletes its input completely in each accepting computation. In fact, we can even assume that AA reads and deletes its input completely in each and every computation, that is, even in all its rejecting computations (see, e.g., the proof of Prop. 18). Moreover, we may assume without loss of generality that the initial state q_0q_{\_}0 is not entered by any transition, that is, this state can only occur in initial configurations of AA.

We now describe the RDFAwtl B=(Q_B,Σ,,τ_B,q_0,δ_B)B=(Q_{\_}B,\Sigma,\lhd,\tau_{\_}B,q_{\_}0,\delta_{\_}B) through the following definition:

Q_B=Q_A{(q,a)qQ_A and aΣ such that aτ_A(q)},τ_B(p)={,if p=q_0,τ_A(p),if pQ_A{q_0},τ_A(q),if p=(q,a) for some qQ_A and aΣ,and the transition function δ_B is defined as follows, where qQ_A{q_0} and aΣ:δ_B(q_0,a)={δ_A(q_0,a),if aτ_A(q_0),(q_0,a),if aτ_A(q_0),δ_B(q_0,)=δ_A(q_0,),δ_B(q,b)=δ_A(q,b) for all qQ_A{q_0} and bΣ{},δ_B((q,a),b)={(δ_A(q,b),a),if ba and aτ_A(δ_A(q,b)),δ_A(δ_A(q,b),a),if ba and aτ_A(δ_A(q,b)),,if b=a,δ_B((q,a),)={(δ_A(q,),a),if aτ_A(δ_A(q,)),δ_A(δ_A(q,),a),if aτ_A(δ_A(q,)).\begin{array}[]{clcl}-&Q_{\_}B&=&Q_{\_}A\,\cup\,\{\,(q,a)\mid q\in Q_{\_}A\mbox{ and }a\in\Sigma\mbox{ such that }a\in\tau_{\_}A(q)\,\},\\[5.69054pt] -&\tau_{\_}B(p)&=&\left\{\begin{array}[]{ll}\emptyset,&\mbox{if }p=q_{\_}0,\\ \tau_{\_}A(p),&\mbox{if }p\in Q_{\_}A\smallsetminus\{q_{\_}0\},\\ \tau_{\_}A(q),&\mbox{if }p=(q,a)\mbox{ for some }q\in Q_{\_}A\mbox{ and }a\in\Sigma,\end{array}\right.\\[17.07164pt] -&\lx@intercol\mbox{and the transition function }\delta_{\_}B\mbox{ is defined as follows, where }q\in Q_{\_}A\smallsetminus\{q_{\_}0\}\mbox{ and }a\in\Sigma:\hfil\lx@intercol\\[5.69054pt] &\delta_{\_}B(q_{\_}0,a)&=&\left\{\begin{array}[]{ll}\delta_{\_}A(q_{\_}0,a),&\mbox{if }a\not\in\tau_{\_}A(q_{\_}0),\\ (q_{\_}0,a),&\mbox{if }a\in\tau_{\_}A(q_{\_}0),\end{array}\right.\\[11.38109pt] &\delta_{\_}B(q_{\_}0,\lhd)&=&\delta_{\_}A(q_{\_}0,\lhd),\\[5.69054pt] &\delta_{\_}B(q,b)&=&\delta_{\_}A(q,b)\mbox{ for all }q\in Q_{\_}A\smallsetminus\{q_{\_}0\}\mbox{ and }b\in\Sigma\,\cup\,\{\lhd\},\\[5.69054pt] &\delta_{\_}B((q,a),b)&=&\left\{\begin{array}[]{ll}(\delta_{\_}A(q,b),a),&\mbox{if }b\not=a\mbox{ and }a\in\tau_{\_}A(\delta_{\_}A(q,b)),\\ \delta_{\_}A(\delta_{\_}A(q,b),a),&\mbox{if }b\not=a\mbox{ and }a\not\in\tau_{\_}A(\delta_{\_}A(q,b)),\\ \emptyset,&\mbox{if }b=a,\end{array}\right.\\[17.07164pt] &\delta_{\_}B((q,a),\lhd)&=&\left\{\begin{array}[]{ll}(\delta_{\_}A(q,\lhd),a),&\mbox{if }a\in\tau_{\_}A(\delta_{\_}A(q,\lhd)),\\ \delta_{\_}A(\delta_{\_}A(q,\lhd),a),&\mbox{if }a\not\in\tau_{\_}A(\delta_{\_}A(q,\lhd)).\\ \end{array}\right.\end{array}

The states of the form (q,a)(q,a) are used to encode the fact that AA is in state qq and that the first letter on the tape was an aa, which, however, has not yet been read by AA (but was already read by BB). Hence, by our above assumptions on the computations of AA, we see that, if BB is in state (q,a)(q,a) reading the sentinel \lhd, then δ_A(q,)Q\delta_{\_}A(q,\lhd)\in Q holds.

From the above definition, it follows immediately that, in each computation, the RDFAwtl BB reads and deletes the first letter on the tape. Moreover, the initial state q_0q_{\_}0, which is not entered by any transition of AA, is not entered by any transition of BB, either. Now, by comparing the computations of BB on a given word ww to that of AA on ww, it can be verified that BB is equivalent to AA, that is, that L(B)=L(A)L(B)=L(A) holds. \Box

For a language LΣL\subseteq\Sigma^{*} and a word wΣw\in\Sigma^{*}, the left quotient of LL with respect to ww is the language

wL={zΣwzL}.w\leftthreetimes L=\{\,z\in\Sigma^{*}\mid wz\in L\,\}.

If LL is accepted by an RDFAwtl A=(Q,Σ,,τ,q_0,δ)A=(Q,\Sigma,\lhd,\tau,q_{\_}0,\delta), then by Lemma 19, we can assume that AA always reads the first letter of the given input during the first step of each computation. Hence, for each letter aΣa\in\Sigma, the RDFAwtl B_a=(Q,Σ,,τ,δ(q_0,a),δ)B_{\_}a=(Q,\Sigma,\lhd,\tau,\delta(q_{\_}0,a),\delta) accepts the language aLa\leftthreetimes L, which shows that aLa\leftthreetimes L is accepted by an RDFAwtl. By induction on |w||w|, it now follows that wLw\leftthreetimes L is accepted by an RDFAwtl for each word ww.

Corollary 20

The language class (RDFAwtl)\mathcal{L}(\mbox{\sf RDFAwtl}) is closed under the operation of taking the left quotient with respect to a single word.

To derive the other non-closure properties stated above, we need the following technical results.

Lemma 21

None of the following languages is accepted by an RDFAwtl:
(a)L_c={wcw{a,b},|w|_a|w|_b},(b)(L_cR)+ and (L_cR), and (c)L={w{a,b}|w|_a|w|_b2|w|_a}.\begin{array}[]{clcl}{\rm(a)}&L_{\_}c&=&\{\,wc\mid w\in\{a,b\}^{*},|w|_{\_}a\geq|w|_{\_}b\,\},\\ {\rm(b)}&\lx@intercol(L_{\_}c^{R})^{+}\mbox{ and }(L_{\_}c^{R})^{*},\mbox{ and }\hfil\lx@intercol\\ {\rm(c)}&L&=&\{\,w\in\{a,b\}^{*}\mid|w|_{\_}a\leq|w|_{\_}b\leq 2\cdot|w|_{\_}a\,\}.\\ \end{array}

Proof. (a) Let Σ={a,b,c}\Sigma=\{a,b,c\}. For deriving a contradiction, we assume that A=(Q,Σ,,τ,q_0,δ)A=(Q,\Sigma,\lhd,\tau,q_{\_}0,\delta) is an RDFAwtl such that L(A)=L_cL(A)=L_{\_}c. Without loss of generality, we may assume that AA reads and deletes its input completely during each accepting computation.

For each n1n\geq 1, the word anbnca^{n}b^{n}c belongs to the language L_cL_{\_}c. Accordingly, the computation of AA on input w_n=anbncw_{\_}n=a^{n}b^{n}c is of the form q_0anbnc_Aq_f_A𝖠𝖼𝖼𝖾𝗉𝗍,q_{\_}0a^{n}b^{n}c\cdot\lhd\vdash_{\_}A^{*}q_{\_}f\cdot\lhd\vdash_{\_}A{\sf Accept}, where q_fQq_{\_}f\in Q. Thus, in particular, the single occurrence of the letter cc is read and deleted during this computation. Accordingly, this computation can be written as follows:

q_0anbnc_Aqanibnjc_Aqanibnj_Aq_f_A𝖠𝖼𝖼𝖾𝗉𝗍,q_{\_}0a^{n}b^{n}c\cdot\lhd\vdash_{\_}A^{*}qa^{n-i}b^{n-j}c\cdot\lhd\vdash_{\_}Aq^{\prime}a^{n-i}b^{n-j}\cdot\lhd\vdash_{\_}A^{*}q_{\_}f\cdot\lhd\vdash_{\_}A{\sf Accept},

where q,qQq,q^{\prime}\in Q, 0i,jn0\leq i,j\leq n, and δ(q,c)=q\delta(q,c)=q^{\prime}. Then AA can also execute the following computation:

q_0aibjcanibnj_Aqcanibnj_Aqanibnj_Aq_f_A𝖠𝖼𝖼𝖾𝗉𝗍.q_{\_}0a^{i}b^{j}ca^{n-i}b^{n-j}\cdot\lhd\vdash_{\_}A^{*}qca^{n-i}b^{n-j}\cdot\lhd\vdash_{\_}Aq^{\prime}a^{n-i}b^{n-j}\cdot\lhd\vdash_{\_}A^{*}q_{\_}f\cdot\lhd\vdash_{\_}A{\sf Accept}.

However, the word aibjcanibnja^{i}b^{j}ca^{n-i}b^{n-j} is not an element of the language L_cL_{\_}c unless i=ni=n and j=nj=n, which means that, in the accepting computation above, AA first reads and deletes all occurrences of the letters aa and bb before it reads the single occurrence of the letter cc. In particular, it follows that this computation has the form q_0anbnc_Aqc_Aq_Aq_f_A𝖠𝖼𝖼𝖾𝗉𝗍.q_{\_}0a^{n}b^{n}c\cdot\lhd\vdash_{\_}A^{*}qc\cdot\lhd\vdash_{\_}Aq^{\prime}\cdot\lhd\vdash_{\_}A^{*}q_{\_}f\cdot\lhd\vdash_{\_}A{\sf Accept}.

Now, let n>|Q|n>|Q|. If the computation q_0anbnc_Aqcq_{\_}0a^{n}b^{n}c\cdot\lhd\vdash_{\_}A^{*}qc\cdot\lhd begins with |Q||Q| many steps that each read an occurrence of the letter aa, then there is a state qQq\in Q that is used twice during these steps, that is

q_0anbnc_Aqanibnc_A+qanijbnc_A𝖠𝖼𝖼𝖾𝗉𝗍,q_{\_}0a^{n}b^{n}c\cdot\lhd\vdash_{\_}A^{*}qa^{n-i}b^{n}c\cdot\lhd\vdash_{\_}A^{+}qa^{n-i-j}b^{n}c\cdot\lhd\vdash_{\_}A^{*}{\sf Accept},

where i0i\geq 0, j1j\geq 1, and i+j|Q|i+j\leq|Q|. But then AA can also execute the following accepting computation:

q_0anjbnc_Aqanijbnc_A𝖠𝖼𝖼𝖾𝗉𝗍.q_{\_}0a^{n-j}b^{n}c\cdot\lhd\vdash_{\_}A^{*}qa^{n-i-j}b^{n}c\cdot\lhd\vdash_{\_}A^{*}{\sf Accept}.

However, as j1j\geq 1, the word anjbnca^{n-j}b^{n}c does not belong to the language L_cL_{\_}c, a contradiction. This implies that, within the first |Q||Q| many steps in the accepting computation considered, an occurrence of the letter bb is read and deleted.

Let us now consider the first step in the above computation during which an occurrence of the letter bb is deleted:

q_0anbnc_Aq_1anibnc_Aq_2anibn1c,q_{\_}0a^{n}b^{n}c\cdot\lhd\vdash_{\_}A^{*}q_{\_}1a^{n-i}b^{n}c\cdot\lhd\vdash_{\_}Aq_{\_}2a^{n-i}b^{n-1}c\cdot\lhd,

where 0i<|Q|0\leq i<|Q|, q_1,q_2Qq_{\_}1,q_{\_}2\in Q, aτ(q_1)a\in\tau(q_{\_}1), and δ(q_1,b)=q_2\delta(q_{\_}1,b)=q_{\_}2. Given the input ancL_ca^{n}c\in L_{\_}c, AA will also accept. However, as AA is deterministic, the corresponding accepting computation begins with

q_0anc_Aq_1anic,q_{\_}0a^{n}c\cdot\lhd\vdash_{\_}A^{*}q_{\_}1a^{n-i}c\cdot\lhd,

where aτ(q_1)a\in\tau(q_{\_}1).

If cτ(q_1)c\in\tau(q_{\_}1), then together with the partial computation q_0anbc_Aq_1anibc_Aq_2anic,q_{\_}0a^{n}bc\cdot\lhd\vdash_{\_}A^{*}q_{\_}1a^{n-i}bc\cdot\lhd\vdash_{\_}Aq_{\_}2a^{n-i}c\cdot\lhd, the automaton AA could also execute the following partial computation:

q_0ancb_Aq_1anicb_Aq_2anic.q_{\_}0a^{n}cb\cdot\lhd\vdash_{\_}A^{*}q_{\_}1a^{n-i}cb\cdot\lhd\vdash_{\_}Aq_{\_}2a^{n-i}c\cdot\lhd.

As anbcL_ca^{n}bc\in L_{\_}c, the former computation leads to acceptance and, hence, so does the latter. This yields a contradiction, as ancbL_ca^{n}cb\not\in L_{\_}c. Hence, it follows that cτ(q_1)c\not\in\tau(q_{\_}1).

This implies that, in the above configuration q_1anicq_{\_}1a^{n-i}c\cdot\lhd, AA reads and deletes the letter cc, that is, δ(q_1,c)=q\delta(q_{\_}1,c)=q^{\prime} for some qQq^{\prime}\in Q. Thus, we obtain the accepting computation

q_0anc_Aq_1anic_Aqani_A𝖠𝖼𝖼𝖾𝗉𝗍.q_{\_}0a^{n}c\cdot\lhd\vdash_{\_}A^{*}q_{\_}1a^{n-i}c\cdot\lhd\vdash_{\_}Aq^{\prime}a^{n-i}\cdot\lhd\vdash_{\_}A^{*}{\sf Accept}.

But then, we also obtain the accepting computation

q_0aicani_Aq_1cani_Aqani_A𝖠𝖼𝖼𝖾𝗉𝗍,q_{\_}0a^{i}ca^{n-i}\cdot\lhd\vdash_{\_}A^{*}q_{\_}1ca^{n-i}\cdot\lhd\vdash_{\_}Aq^{\prime}a^{n-i}\cdot\lhd\vdash_{\_}A^{*}{\sf Accept},

which yields a contradiction, as aicaniL_ca^{i}ca^{n-i}\not\in L_{\_}c. In summary, this shows that the language L_cL_{\_}c is not accepted by any RDFAwtl.

(b) Assume to the contrary that (L_cR)+(L_{\_}c^{R})^{+} or (L_cR)(L_{\_}c^{R})^{*} is accepted by an RDFAwtl. Lemma 19 implies that the language

L=c(L_cR)+=c(L_cR)={w_1cw_2ccw_kk1 and i=1,2,,k:w_i{a,b}|w_i|_a|w_i|_b}\begin{array}[]{lclcl}L&=&c\leftthreetimes(L_{\_}c^{R})^{+}&=&c\leftthreetimes(L_{\_}c^{R})^{*}\\ &=&\lx@intercol\{\,w_{\_}1cw_{\_}2c\cdots cw_{\_}k\mid k\geq 1\mbox{ and }\forall i=1,2,\ldots,k:w_{\_}i\in\{a,b\}^{*}\wedge|w_{\_}i|_{\_}a\geq|w_{\_}i|_{\_}b\,\}\hfil\lx@intercol\end{array}

is also accepted by an RDFAwtl A=(Q,Σ,,τ,q_0,δ)A=(Q,\Sigma,\lhd,\tau,q_{\_}0,\delta), where Σ={a,b,c}\Sigma=\{a,b,c\}. For all m0m\geq 0, the word w(m)=ambmcabw(m)=a^{m}b^{m}cab belongs to the language LL, which means that the computation of AA on input w(m)w(m) is accepting. However, using pumping arguments as in the proof of (a), it can now be shown that, together with the words w(m)w(m), the RDFAwtl AA also accepts some words that do not belong to the language (L_cR)(L_{\_}c^{R})^{*}. Accordingly, the languages (L_cR)+(L_{\_}c^{R})^{+} and (L_cR)(L_{\_}c^{R})^{*} are not accepted by any RDFAwtls.

(c) By using pumping arguments, it can be proved that an RDFAwtl accepting the language

L={w{a,b}|w|_a|w|_b2|w|_a}L=\{\,w\in\{a,b\}^{*}\mid|w|_{\_}a\leq|w|_{\_}b\leq 2\cdot|w|_{\_}a\,\}

also accepts some words that do not belong to this language. Again, this shows that this language is not accepted by any RDFAwtl. \Box

It is easily seen that the languages

L_cR={cww{a,b},|w|_a|w|_b},L_={w{a,b}|w|_a|w|_b}, and {c}L_{\_}c^{R}=\{\,cw\mid w\in\{a,b\}^{*},|w|_{\_}a\geq|w|_{\_}b\,\},\,L_{\_}\geq=\{\,w\in\{a,b\}^{*}\mid|w|_{\_}a\geq|w|_{\_}b\,\},\mbox{ and }\{c\}

are all accepted by DFAwtls. On the other hand, L=L_=\shuffleL_2=={w{a,b}|w|_a|w|_b2|w|_a}L=L_{\_}=\shuffle L_{\_}{2=}=\{\,w\in\{a,b\}^{*}\mid|w|_{\_}a\leq|w|_{\_}b\leq 2\cdot|w|_{\_}a\,\} is not. Hence, Lemma 21 shows the following.

Corollary 22

The language class (RDFAwtl)\mathcal{L}(\mbox{\sf RDFAwtl}) is not closed under reversal, (disjoint) product, Kleene plus, Kleene star, or shuffle.

Finally, the class (RDFAwtl)\mathcal{L}(\mbox{\sf RDFAwtl}) is closed under a restricted variant of the shuffle operation. If Σ\Sigma is an alphabet and Δ\Delta is a subalphabet of Σ\Sigma, we shall use P_ΔP_{\_}\Delta to denote the projection P_Δ:ΣΔP_{\_}{\Delta}:\Sigma\to\Delta that maps each letter from Δ\Delta to itself and each letter from ΣΔ\Sigma\smallsetminus\Delta to the empty word λ\lambda. The projection P_ΔP_{\_}\Delta can be extended to words and languages in a natural way.

If a word w(Σ_AΣ_B)w\in(\Sigma_{\_}A\cup\Sigma_{\_}B)^{*} is in the set u\shufflevu\shuffle v for some words uΣ_Au\in\Sigma_{\_}A^{*} and vΣ_Bv\in\Sigma_{\_}B^{*}, where Σ_A\Sigma_{\_}A and Σ_B\Sigma_{\_}B are two disjoint alphabets, then P_Σ_A(w)=uP_{\_}{\Sigma_{\_}A}(w)=u and P_Σ_B(w)=vP_{\_}{\Sigma_{\_}B}(w)=v. The shuffle of two words or languages over disjoint alphabets is called a disjoint shuffle.

Proposition 23

The language class (RDFAwtl)\mathcal{L}(\mbox{\sf RDFAwtl}) is closed under disjoint shuffle.

Proof. Let Σ_A\Sigma_{\_}A and Σ_B\Sigma_{\_}B be two disjoint alphabets, let A=(Q_A,Σ_A,,τ_A,q_0(A),δ_A)A=(Q_{\_}A,\Sigma_{\_}A,\lhd,\tau_{\_}A,q_{\_}0^{(A)},\delta_{\_}A) be an RDFAwtl on Σ_A\Sigma_{\_}A that accepts a language L(A)=L_AL(A)=L_{\_}A, and let B=(Q_B,Σ_B,,τ_B,q_0(B),δ_B)B=(Q_{\_}B,\Sigma_{\_}B,\lhd,\tau_{\_}B,q_{\_}0^{(B)},\delta_{\_}B) be an RDFAwtl on Σ_B\Sigma_{\_}B that accepts a language L(B)=L_BL(B)=L_{\_}B. We shall construct an RDFAwtl MM for the disjoint shuffle L=L_A\shuffleL_BL=L_{\_}A\shuffle L_{\_}B of L_AL_{\_}A and L_BL_{\_}B.

By Lemma 13, we can assume without loss of generality that AA never gets into an infinite computation and that it reads and deletes its input completely in each accepting computation. The RDFAwtl M=(Q,Σ,,τ,q_0,δ)M=(Q,\Sigma,\lhd,\tau,q_{\_}0,\delta) is constructed as follows, where we assume that the sets of states Q_AQ_{\_}A and Q_BQ_{\_}B are disjoint:
Q=Q_AQ_B and q_0=q_0(A),τ(q)={τ_A(q)Σ_B,if qQ_A,τ_B(q),if qQ_B,δ(q,a)={δ_A(q,a),if qQ_A and aΣ_A,δ_B(q,a),if qQ_B and aΣ_B,,otherwise,δ(q,)={δ_A(q,),if qQ_A and δ_A(q,)𝖠𝖼𝖼𝖾𝗉𝗍,q_0(B),if qQ_A and δ_A(q,)=𝖠𝖼𝖼𝖾𝗉𝗍,δ_B(q,),if qQ_B.\begin{array}[]{clcll}-&Q&=&\lx@intercol Q_{\_}A\,\cup\,Q_{\_}B\mbox{ and }q_{\_}0=q_{\_}0^{(A)},\hfil\lx@intercol\\[5.69054pt] -&\tau(q)&=&\left\{\begin{array}[]{ll}\tau_{\_}A(q)\cup\Sigma_{\_}B,&\mbox{if }q\in Q_{\_}A,\\ \tau_{\_}B(q),&\mbox{if }q\in Q_{\_}B,\\ \end{array}\right.\\[11.38109pt] -&\delta(q,a)&=&\left\{\begin{array}[]{ll}\delta_{\_}A(q,a),&\mbox{if }q\in Q_{\_}A\mbox{ and }a\in\Sigma_{\_}A,\\ \delta_{\_}B(q,a),&\mbox{if }q\in Q_{\_}B\mbox{ and }a\in\Sigma_{\_}B,\\ \emptyset,&\mbox{otherwise},\\ \end{array}\right.\\[14.22636pt] &\delta(q,\lhd)&=&\left\{\begin{array}[]{ll}\delta_{\_}A(q,\lhd),&\mbox{if }q\in Q_{\_}A\mbox{ and }\delta_{\_}A(q,\lhd)\not={\sf Accept},\\ q_{\_}0^{(B)},&\mbox{if }q\in Q_{\_}A\mbox{ and }\delta_{\_}A(q,\lhd)={\sf Accept},\\ \delta_{\_}B(q,\lhd),&\mbox{if }q\in Q_{\_}B.\end{array}\right.\\ \end{array}

For an input wu\shufflevw\in u\shuffle v, where uΣ_Au\in\Sigma_{\_}A^{*} and vΣ_Bv\in\Sigma_{\_}B^{*}, the RDFAwtl MM first simulates the computation of AA on uu, ignoring all occurrences of letters from Σ_B\Sigma_{\_}B. When AA accepts, then MM simulates the computation of BB on vv. As AA reads and deletes all letters of uu in its accepting computation, it is obvious that MM accepts on input ww if and only if AA accepts on input uu and BB accepts on input vv. It follows that L(M)=L(A)\shuffleL(B)=L_A\shuffleL_BL(M)=L(A)\shuffle L(B)=L_{\_}A\shuffle L_{\_}B. Hence, (RDFAwtl)\mathcal{L}(\mbox{\sf RDFAwtl}) is closed under the operation of disjoint shuffle. \Box

5 Conclusion

Concerning the complexity of the membership problem, it is easily seen that the algorithm for the membership problem of a DFAwtl presented by Nagy and Kovács in [12] applies to an RDFAwtl as well. This yields the following result. Note that the complexity of the membership problem of a DFAwtl is measured using a logarithmic cost of instructions.

Corollary 24

The membership problem for an RDFAwtl is decidable in time O(nlogn){O}(n\cdot\log n).

Furthermore, emptiness and finiteness are decidable for RDFAwtls, as they are decidable for NFAwtls [17]. As (RDFAwtl)\mathcal{L}(\mbox{\sf RDFAwtl}) is effectively closed under complementation, universality is also decidable for these automata. On the other hand, the problem of deciding whether the language accepted by a given RDFAwtl has a non-empty intersection with a given regular language is undecidable, as this problem is already undecidable for DFAwtls. The same holds for the problem of deciding whether the language accepted by a given RDFAwtl contains (or is contained in) a given regular language, and therewith, the inclusion problem for RDFAwtls is undecidable, too. However, it remains open whether the equivalence problem is decidable for RDFAwtls.

In summary, our results show that the RDFAwtl is just slightly more expressive than the DFAwtl, but it seems to have the same closure and non-closure properties, and the same decidability and undecidability results seem to hold. Moreover, we have seen that, when we add the property of being non-returning to the DFAwtl (or the NFAwtl), we actually weaken the model. When we add the property of repetitiveness to the DFAwtl, then we obtain a language class that is just a bit more expressive than the DFAwtl, while in the nondeterministic case, this generalization has no effect on the expressive capacity of the model. However, when we add both these properties, repetitiveness and the property of being non-returning, then the resulting types of automata, that is, the nr-DFAwtl and the nr-NFAwtl, have indeed a much larger expressive capacity than the original models. Thus, it is really the combination of these two properties that implicates the enormous increase in the expressive capability from the DFAwtl and the NFAwtl to the nr-DFAwtl and the nr-NFAwtl.

References

  • [1]
  • [2] Simon Beier & Markus Holzer (2022): Nondeterministic right one-way jumping finite automata. Information and Computation 284, 10.1016/j.ic.2021.104687.
  • [3] Suna Bensch, Henning Bordihn, Markus Holzer & Martin Kutrib (2009): On input-revolving deterministic and nondeterministic finite automata. Information and Computation 207, pp. 1140–1155, 10.1016/j.ic.2009.03.002.
  • [4] Hiroyuki Chigahara, Szilárd Zsolt Fazekas & Akihiro Yamamura (2016): One-way jumping finite automata. International Journal of Foundations of Computer Science 27, pp. 391–405, 10.1142/S0129054116400165.
  • [5] Elias Dahlhaus & Manfred K. Warmuth (1986): Membership for growing context-sensitive grammars is polynomial. Journal of Computer and System Sciences 33, pp. 456–472, 10.1016/0022-0000(86)90062-0.
  • [6] Henning Fernau, Meenakshi Paramasivan & Markus L. Schmid (2015): Jumping Finite Automata: Characterizations and Complexity. In Frank Drewes, editor: CIAA 2015, Proc., LNCS 9223, Springer, Berlin, pp. 89–101, 10.1007/978-3-319-22360-58.
  • [7] Petr Jančar, František Mráz, Martin Plátek & Jörg Vogel (1995): Restarting automata. In Horst Reichel, editor: FCT’95, Proc., LNCS 965, Springer, Berlin, pp. 283–292, 10.1007/3-540-60249-660.
  • [8] Alexander Meduna & Petr Zemek (2012): Jumping finite automata. International Journal of Foundations of Computer Science 23, pp. 1555–1578, 10.1142/S0129054112500244.
  • [9] František Mráz (2001): Lookahead hierarchies of restarting automata. Journal of Automata, Languages and Combinatorics 6, pp. 493–506, 10.25596/jalc-2001-493.
  • [10] František Mráz & Friedrich Otto (2022): Non-returning finite automata with translucent letters. In Henning Bordihn, Géza Horváth & György Vaszil, editors: 12th International Workshop on Non-Classical Models of Automata and Applications (NCMA 2022), EPTCS 367, Open Publishing Association, Waterloo, Australia, pp. 143–159, 10.4204/EPTCS.367.10.
  • [11] František Mráz & Friedrich Otto (2023): Non-returning deterministic and nondeterministic finite automata with translucent letters. RAIRO Theoretical Informatics and Applications 57, 10.1051/ita/2023009.
  • [12] Benedek Nagy & László Kovács (2014): Finite Automata with Translucent Letters Applied in Natural and Formal Language Theory. In Ngoc Thanh Nguyen, Ryszard Kowalczyk, Ana Fred & Filipe Joaquim, editors: Transactions on Computational Collective Intelligence XVII, LNCS 8790, Springer, Heidelberg, pp. 107–127, 10.1007/978-3-662-44994-36.
  • [13] Benedek Nagy & Friedrich Otto (2010): CD-systems of stateless deterministic R(1)-automata accept all rational trace languages. In Adrian-Horia Dediu, Henning Fernau & Carlos Martín-Vide, editors: LATA 2010, Proc., LNCS 6031, Springer, Berlin, pp. 463–474, 10.1007/978-3-642-13089-239.
  • [14] Benedek Nagy & Friedrich Otto (2011): Finite-state acceptors with translucent letters. In Gemma Bel-Enguix, Veronica Dahl & Alfonso O. de la Puente, editors: BILC 2011: AI Methods for Interdisciplinary Research in Language and Biology, Proc., SciTePress, Portugal, pp. 3–13, 10.5220/0003272500030013.
  • [15] Benedek Nagy & Friedrich Otto (2011): Globally deterministic CD-systems of stateless R(1)-automata. In Adrian-Horia Dediu, Shunsuke Inenaga & Carlos Martín-Vide, editors: LATA 2011, Proc., LNCS 6638, Springer, Berlin, pp. 390–401, 10.1007/978-3-642-21254-331.
  • [16] Benedek Nagy & Friedrich Otto (2012): On CD-systems of stateless deterministic R-automata with window size one. Journal of Computer and System Sciences 78, pp. 780–806, 10.1016/j.jcss2011.12.009.
  • [17] Benedek Nagy & Friedrich Otto (2013): Globally deterministic CD-systems of stateless R-automata with window size 1. International Journal of Computer Mathematics 90, pp. 1254–1277, 10.1080/00207160.2012.688820.
  • [18] Friedrich Otto (2006): Restarting automata. In Zoltan Ésik, Carlos Martín-Vide & Victor Mitrana, editors: Recent Advances in Formal Languages and Applications, Studies in Computational Intelligence 25, Springer, Heidelberg, pp. 269–303, 10.1007/978-3-540-33461-311.