Skip to main content

Operations on Self-Verifying Finite Automata

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9139))

Abstract

We investigate the complexity of regular operations on languages represented by self-verifying automata. We get the tight bounds for complement, intersection, union, difference, symmetric difference, reversal, star, left and right quotients, and asymptotically tight bound for concatenation. To prove tightness, we use a binary alphabet in the case of boolean operations and reversal, and an alphabet that grows exponentially for the remaining operations. However, we also provide exponential lower bounds for these operations using a fixed alphabet.

G. Jirásková—Research supported by VEGA grant 2/0084/15.

A. Szabari—Research supported by VEGA grant 1/0142/15.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

References

  1. Assent, I., Seibert, S.: An upper bound for transforming self-verifying automata into deterministic ones. Theor. Inform. Appl. 41, 261–265 (2007)

    Article  MATH  MathSciNet  Google Scholar 

  2. Birget, J.C.: Partial orders on words, minimal elements of regular languages, and state complexity. Theoret. Comput. Sci. 119, 267–291 (1993)

    Article  MATH  MathSciNet  Google Scholar 

  3. Brzozowski, J.A.: Quotient complexity of regular languages. J. Autom. Lang. Comb. 15, 71–89 (2010)

    Google Scholar 

  4. Ďuriš, P., Hromkovič, J., Rolim, J., Schnitger, G.: Las Vegas versus determinism for one-way communication complexity, finite automata, and polynomial-time computations. In: Reischuk, R., Morvan, M. (eds.) STACS 1997. LNCS, vol. 1200, pp. 117–128. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  5. Glaister, I., Shallit, J.: A lower bound technique for the size of nondeterministic finite automata. Inform. Process. Lett. 59, 75–77 (1996)

    Article  MATH  MathSciNet  Google Scholar 

  6. Holzer, M., Kutrib, M.: Nondeterministic descriptional complexity of regular languages. Internat. J. Found. Comput. Sci. 14, 1087–1102 (2003)

    Article  MATH  MathSciNet  Google Scholar 

  7. Hromkovič, J., Schnitger, G.: On the power of Las Vegas for one-way communication complexity, OBDDs, and finite automata. Inform. Comput. 169, 284–296 (2001)

    Article  MATH  Google Scholar 

  8. Jirásková, G.: State complexity of some operations on binary regular languages. Theoret. Comput. Sci. 330, 287–298 (2005)

    Article  MATH  MathSciNet  Google Scholar 

  9. Jirásková, G., Pighizzini, G.: Optimal simulation of self-verifying automata by deterministic automata. Inform. Comput. 209, 528–535 (2011)

    Article  MATH  Google Scholar 

  10. Leiss, E.: Succinct representation of regular languages by Boolean automata. Theoret. Comput. Sci. 13, 323–330 (1981)

    Article  MATH  MathSciNet  Google Scholar 

  11. Lupanov, O.B.: A comparison of two types of finite automata. Problemy Kibernetiki 9, 321–326 (1963). (in Russian)

    Google Scholar 

  12. Maslov, A.N.: Estimates of the number of states of finite automata. Soviet Math. Doklady 11, 1373–1375 (1970)

    MATH  Google Scholar 

  13. Mirkin, B.G.: On dual automata. Kibernetika (Kiev) 2, 7–10 (1966). (in Russian). English translation: Cybernetics 2, 6–9 (1966)

    MathSciNet  Google Scholar 

  14. Moore, F.: On the bounds for state-set size in the proofs of equivalence between deterministic, nondeterministic, and two-way finite automata. IEEE Trans. Comput. C–20, 1211–1214 (1971)

    Article  Google Scholar 

  15. Rabin, M., Scott, D.: Finite automata and their decision problems. IBM J. Res. Develop. 3, 114–125 (1959)

    Article  MathSciNet  Google Scholar 

  16. Sakoda, W. J., Sipser, M.: Nondeterminism and the size of two-way finite automata. In: Proceedings 10th Annual ACM STOC, pp. 275–286 (1978)

    Google Scholar 

  17. Sipser, M.: Introduction to the Theory of Computation. PWS Publishing Company, Boston (1997)

    MATH  Google Scholar 

  18. Yu, S., Zhuang, Q., Salomaa, K.: The state complexity of some basic operations on regular languages. Theoret. Comput. Sci. 125, 315–328 (1994)

    Article  MATH  MathSciNet  Google Scholar 

  19. Čevorová, K.: Kleene star on unary regular languages. In: Jurgensen, H., Reis, R. (eds.) DCFS 2013. LNCS, vol. 8031, pp. 277–288. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

Download references

Acknowledgments

We would like to thank Peter Eliáš for his help with the reversal operation. We are also very grateful to an anonymous referee of CSR for careful reading of the paper and for pointing out an error in a previous draft of Fig. 1.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Galina Jirásková .

Editor information

Editors and Affiliations

Appendix

Appendix

Proposition 1

[7, 9]. Let a language L be accepted by an n-state SVFA. Then the languages L and \(L^c\) are accepted by n-state NFAs.

Proof

Let L be accepted by an SVFA \(A=(Q,\varSigma ,\delta ,s,F^a,F^r)\). Then L is accepted by NFA \((Q,\varSigma ,\delta ,s, F^a)\), while \(L^c\) is accepted by NFA \((Q,\varSigma ,\delta ,s, F^r)\).    \(\square \)

Proposition 2

[7, 9]. Let languages L and \(L^c\) be accepted by an m-state and n-state NNFAs, respectively. Then \(\mathrm {svsc}(L)\le m+n+1\).

Proof

Let L be accepted by an m-state NNFA \(N=(Q,\varSigma ,\delta ,I,F)\) and \(L^c\) be accepted by an n-state NNFA \(N'=(Q',\varSigma ,\delta ',I',F')\). Then we can get an SVFA A for L with \(m+n+1\) states from NFAs N and \(N'\) as follows. We add a new initial state s going to \(\delta (I,a)\cup \delta '(I',a)\) on each a in \(\varSigma \). The state s is accepting if \(\varepsilon \in L\), and it is rejecting otherwise. All the states in F are accepting in SVFA A, and all the states in \(F'\) are rejecting in A.    \(\square \)

Fig. 6.
figure 6

The binary witnesses for SVFA-to-DFA conversion meeting the bound g(n); \(n =3k+1\) (top), \(n =3k+2\) (bottom-left), and \(n=3k\) (bottom-right).

Lemma 8

Let L be a regular language. Then \(\mathrm {svsc}(L)=\mathrm {svsc}(L^c)\).

Proof

Let L be accepted by an SVFA A. To get an SVFA \(A'\) for the language \(L^c\), we only need to interchange the accepting and rejecting states in the SVFA A. Moreover, if A is minimal, then \(A'\) is minimal: If \(L^c\) would be accepted by a smaller SVFA B, then L would also be accepted by a smaller SVFA \(B'\) obtained from B by interchanging the accepting and rejecting states.    \(\square \)

Lemma 9, Proof Details:

Let us show that \(A\times B\) is a self-verifying automaton.

If \(w\in K\cap L\), then there is an accepting computation on w in both SVFAs A and B. It follows that there is an accepting computation on w also in the product automaton \(A\times B\). If \(w\notin K\cap L\), then at least one of SVFAs A and B rejects w, while the second one accepts or rejects w. This means that the product automaton \(A\times B\) rejects w. It follows that on each string w, there is either an accepting or rejection computation in the product automaton.

Now assume for contradiction that there is a string w with both accepting and rejecting computations of \(A\times B\) on w. This means that there is a computation ending in a state in \(F^a\), as well as a computation ending in a state in \(F^r\). However, it follows that in at least one of SVFAs A and B, we must have both accepting and rejecting computation on w, which is a contradiction.

Hence \(A\times B\) is an SVFA for \(K\cap L\), and the upper bound mn follows.    \(\square \)

Lemma 10, Proof Details:

Construct a product automaton for \(K\oplus L\) as described above. The product automaton in the case of \(m=3\) and \(n=4\) is shown in Fig. 7. Consider the following set of mn pairs of strings:

$$ \mathcal {F}=\{(a^i b^j, a^{m-1-i} b^{n-1-j})\mid 0\le i \le m-1 \text { and } 0\le j\le n-1\}. $$

Let us show that the set of pairs \(\mathcal {F}\) is an sv-fooling set for the language \(K\oplus L\).

Fig. 7.
figure 7

The product automaton for \(K\oplus L\); \(m=3\) and \(n=4\). The double circled states are accepting, the others are rejecting.

For each pair in \(\mathcal {F}\), we have \( (0,0)\xrightarrow {a^i b^j}(i,j) \xrightarrow {a^{m-1-i} b^{n-1-j}}(m-1,n-1). \) Thus the product automaton for \(K\oplus L\) rejects the string \(a^i b^j a^{m-1-i} b^{n-1-j}\). It follows that for each pair in \(\mathcal {F}\), the concatenation of its components is not in \(K\oplus L\).

Now let \((i,j)\ne (k,\ell )\). First, let \(i=k\). Then, without loss of generality, we may assume that \(j<\ell \). Consider the string \(a^i b^j a^{m-1-k} b^{n-1-\ell }\). In the product automaton, we have the following accepting computation on this string

$$ (0,0)\xrightarrow {a^i b^j}(i,j) \xrightarrow {a^{m-1-k}}(m-1,j) \xrightarrow {b^{n-1-\ell }}(m-1,n-1-(\ell -j)). $$

It follows that the string \(a^i b^j a^{m-1-k} b^{n-1-\ell }\) is in \(K\oplus L\). Thus, exactly one of the strings \(a^i b^j a^{m-1-k} b^{n-1-\ell }\) and \(a^k b^\ell a^{m-1-k} b^{n-1-\ell }\) is in \(K\oplus L\).

Next, without loss of generality, we may assume that \(i<k\). In a similar way as above, we can prove that

  1. (a)

    if \(j\ge \ell \), then the string \(a^i b^j a^{m-1-k} b^{n-1-\ell }\) is in \(K\oplus L\);

  2. (b)

    if \(j<\ell \), then the string \(a^k b^\ell a^{m-1-i} b^{n-1-j}\) is in \(K\oplus L\).

It follows that the set \(\mathcal {F}\) is an sv-fooling set for the language \(K\oplus L\). By Lemma 6, every SVFA for \(K\oplus L\) has at least mn states. This completes our proof.    \(\square \)

Lemma 12, Proof Details:

For tightness, let L be the language accepted by the DFA A shown in Fig. 8. Construct an NFA \(A^R\) for the language \(L^R\) from the DFA A by swapping the role of initial and final states, and by reversing all the transitions. The NFA \(A^R\) is shown in Fig. .

Fig. 8.
figure 8

The binary witness for reversal meeting the bound \(2n+1\).

Our first aim is to describe an sv-fooling set of size 2n for \(L^R\). Then, we will use Lemma 7 to show that every SVFA for \(L^R\) has at least \(2n+1\) states.

To this aim, denote by [ij] the set of integers \( \{k\mid i\le k\le j\};\) notice that \([i,j]=\emptyset \) if \(i>j\). Consider the following family of 2n subsets

$$\begin{aligned} \mathcal {R}=\big \{[1,i]\mid 1\le i\le n\big \} \cup \big \{[i+1,n]\mid 1\le i\le n \big \}. \end{aligned}$$

The following transitions show that each set in \(\mathcal {R}\) is reachable in the subset automaton of the NFA \(A^R\) from the initial subset \(\{n-1\}\):

$$\begin{aligned} \begin{array}{ll} \{n-1\} \xrightarrow {aa}\{1\} \xrightarrow {b^{i-1}}\{1,2,\ldots ,i\}=[1,i]&{}\quad \ \ \ (1\le i\le n), \\ \{1,2,\ldots ,n-i\}\xrightarrow {a^{i}}\{i+1,i+2,\ldots ,n\}=[i+1,n] &{}\quad \ \ \ (1\le i\le n-1),\\ \{n-1\} \xrightarrow {a}\{n\} \xrightarrow {b}\emptyset =[i+1,n]&{}\quad \ \ \ (i=n). \end{array} \end{aligned}$$

It follows that for each subset S in \(\mathcal {R}\), there is a string \(u_S\) by which the initial state \(\{n-1\}\) of the subset automaton of \(A^R\) goes to the subset S.

Fig. 9.
figure 9

The reverse of the DFA from Fig. 3.

Consider the following set of 2n pair of strings

$$\begin{aligned} \mathcal {F} = \{(u_{[1,i]}, a^{n-i})\mid 1\le i\le n\} \cup \{(u_{[i+1,n]}, a^{n-i})\mid 1\le i\le n\}. \end{aligned}$$

Let us show that the set \(\mathcal {F}\) is an sv-fooling set for the language \(L^R\).

First, notice that the string \(a^{n-i}\) is accepted by the NFA \(A^R\) from a subset S of [1, n] if and only if the state i is in the subset S. To show that \(\mathcal {F}\) is an sv-fooling set for L, we have three cases to consider:

(1) Consider two pairs \((u_{[1,i]}, a^{n-i})\) and \((u_{[1,j]}, a^{n-j})\) with \(1\le i< j\le n\). Then

$$ u_{[1,i]}\cdot a^{n-j}\notin L^R \text { and } u_{[1,j]}\cdot a^{n-j}\in L^R $$

since state j is not in [1, i], and therefore the NFA \(A^R\) rejects \(a^{n-j}\) from [1, i], however, state j is in [1, j], and therefore the NFA \(A^R\) accepts \(a^{n-j}\) from [1, j]. Thus exactly one of the strings \(u_{[1,i]}\cdot a^{n-j}\) and \(u_{[1,j]}\cdot a^{n-j}\) is in \(L^R\).

(2) Consider pairs \((u_{[i+1,n]}, a^{n-i})\) and \((u_{[j+1,n]}, a^{n-j})\) with \(1\le i< j\le ~n\). Then

$$ u_{[i+1,n]}\cdot a^{n-j}\in L^R \text { and } u_{[j+1,n]}\cdot a^{n-j} \notin L^R $$

since \(j\in [i+1,n]\) and \(j\notin [j+1,n]\).

(3) Consider a pair \((u_{[1,i]}, a^{n-i})\) with \(1\le i\le n\) and a pair \((u_{[j+1,n]}, a^{n-j})\) with \(1\le j\le n\). Here we have two subcases:

(3a) If \(i\le j\), then \( u_{[j+1,n]}\cdot a^{n-i}\notin L^R \text { and } u_{[1,i]}\cdot a^{n-i}\in L^R. \)

(3b) If \(i>j\), then \( u_{[1,i]}\cdot a^{n-j}\in L^R \text { and } u_{[j+1,n]}\cdot a^{n-j}\notin L^R. \)

Hence we have shown that \(\mathcal {F}\) is an sv-fooling set for the language \(L^R\).

Now, we will use Lemma 7 to show that one more state is necessary for an SVFA to accept \(L^R\). We will prove that the set \(\mathcal {F}\) can be divided into three disjoint subsets in such a way that we are able to add a pair with the left component \(\varepsilon \) to each of these subsets, so that the resulting sets are still sv-fooling sets for \(L^R\).

To this aim, consider the following subsets of \(\mathcal {F}\):

$$\begin{aligned}&\mathcal {A} = \{ (u_{[1,i]},a^{n-i}) \mid 1\le i\le n\},\\&\mathcal {B} = \{ (u_{[j+1,n]},a^{n-j}) \mid 1\le j\le n-1\},\\&\mathcal {C} = \{ (u_\emptyset ,\varepsilon )\}. \end{aligned}$$

Then \(\mathcal {A} \cup \mathcal {B} \cup \mathcal {C} =\mathcal {F}\), so \(\mathcal {A} \cup \mathcal {B} \cup \mathcal {C}\) is an sv-fooling set for \(L^R\).

Next, the set \(\mathcal {A}\cup \{( \varepsilon ,a^{n-1})\}\) is an sv-fooling set for \(L^R\) since

$$ \varepsilon \cdot a^{n-1}\notin L^R \text { while } u_{[1,i]}\cdot a^{n-1}\in L^R \text { if } 1\le i\le n \text { and } n\ge 3. $$

The set \(\mathcal {B}\cup \{( \varepsilon ,a)\}\) is an sv-fooling set for \(L^R\) since

$$ \varepsilon \cdot \varepsilon \notin L^R \text { while } u_{[j+1,n]}\cdot \varepsilon \in L^R \text { if } 1\le j\le n-1. $$

Finally, the set \(\mathcal {C}\cup \{( \varepsilon ,a)\}\) is an sv-fooling set for \(L^R\) since

$$ \varepsilon \cdot a\in L^R \text { while } u_\emptyset \cdot a \notin L^R. $$

By Lemma 7, every SVFA for the language \(L^R\) has at least \(2n+1\) states. Our proof is complete.    \(\square \)

Lemma 14

Let L be a language with \(\mathrm {svsc}(L)=n\). Then \(\mathrm {svsc}(L^*)\le 3/4\cdot 2^n\).

Proof

To get the upper bound, let \(A=(Q,\varSigma ,\delta ,s,F^a,F^r)\) be an SVFA for a language L. If only the initial state s is accepting, then \(L^*=L\). Assume that A has k accepting states that are different from s.

Construct an NFA \(A^*\) for the language \(L^*\) from A as follows. First, add a new initial and final state \(q_0\) and for each symbol a in \(\varSigma \), add a transition from \(q_0\) to \(\delta (s,a)\) if \(\delta (s,a)\cap F^a=\emptyset \), and to \(\{s\}\cup \delta (s,a)\) otherwise. Next, for each state q in Q and each symbol a, add a transition from q to s on a whenever \(\delta (q,a)\cap F^a\ne \emptyset .\) The initial state of \(A^*\) is \(q_0\), and the set of final states is \(\{q_0\}\cup F^a\).

Now consider the subset automaton of the NFA \(A^*\). Notice that no set containing a state in \(F^a\) and not containing the state s can be reachable in the subset automaton. Moreover, let us show that the empty set is unreachable. Assume for a contradiction, that the empty set is reachable from \(\{q_0\}\) by a string w. Then w can be partitioned as \(w=u v\) so that in the NFA \(A^*\), we have a computation \(q_0\xrightarrow {u} s \xrightarrow {v} \emptyset \), and moreover, the computation on v does not use any transition that has been added to the SVFA A. It follows that in the SVFA A, we do not have any computation on the string v, which is a contradiction.

Hence the subset automaton has at most \(2^{n-1}+2^{n-1-k}\) reachable subsets: the initial subset \(\{q_0\}\), all the subsets containing the state s, and all the non-empty subsets not containing s and not containing any accepting state of A. The maximum is attained if \(k=1\), and it is equal to \(3/4\cdot 2^n\).    \(\square \)

Lemma 15, Proof Details:

Construct an NFA \(A^*\) for the language \(L^*\) from the DFA A as follows: First, add a new initial and final state \(q_0\) going to state 0 on b and to state 1 on a. Next, add the transitions on a and on b from state \(n-2\) to state 0. Finally, for each S and each state i outside of S, add the transition from i to 0 on \(c_S\).

figure b

The transitions on symbols a and b in the NFA \(A^*\) are shown in the figure above. Our first aim is to describe an sv-fooling set of size \(3/4\cdot 2^n-1\) for \(L^*\). Then, by using Lemma 7, we show that every SVFA for \(L^*\) requires at least \(3/4\cdot 2^n\) states.

First, let us show that each subset S in \(\mathcal {R}\) is reachable in the subset automaton of the NFA \(A^*\). The proof is by induction on the size of subsets.

The basis, \(|S|=1\), holds since the initial subset \(\{q_0\}\) goes to \(\{0\}\) by b, and then to \(\{i\}\) by \(a^{i}\) if \(1\le i\le n-2\).

Let \(2\le k \le n-1\), and assume that each subset in \(\mathcal {R}\) of size \(k-1\) is reachable. Let \(S=\{i_1,i_2,\ldots ,i_k\}\) be a set in \(\mathcal {R}\) of size k, where \(0\le i_1<i_2<\cdots <i_k\le n-1\). Consider four cases:

  1. (i)

    \(i_1=0\) and \(i_k=n-1\). Then S is reached from \(\{i_2-1,i_3-1,\ldots ,i_k-1\}\) by a, and the latter set is reachable by the induction hypothesis since it is of size \(k-1\), and it does not contain the state \(n-1\).

  2. (ii)

    \(i_1=0\) and \(i_2=1\). Then S is reached from \(\{0,i_3-1,\ldots ,i_k-1,n-1\}\) by a, and the latter set is reachable as shown in case (i).

  3. (iii)

    \(i_1=0\) and \(i_2\ge 2\). Then S is reached from \(\{0,1,i_3-i_2+1,\ldots ,i_k-i_2+1\}\) by \(b^{i_2-1}\), and the latter set is reachable as shown in cases (i) and (ii).

  4. (iv)

    \(i_1\ge 1\).Then \(0\notin S\) and, since \(S\in \mathcal {R}\), we have \(n-1\notin S\). Thus \(i_k\le n-2\).

    Then S is reached from \(\{0, i_2-i_1, i_3-i_1,\ldots ,i_k-i_1\}\) by \(a^{i_1}\), and the latter set is reachable as shown in cases (i)–(iii).

Hence we have shown that each set in \(\mathcal {R}\) is reachable in the subset automaton of the NFA \(A^*\). For each subset S in \(\mathcal {R}\), let \(u_S\) be a string, by which the initial subset \(\{q_0\}\) goes to the subset S. Consider the set of pairs of \(3/4\cdot 2^n-1\) strings

$$ \mathcal {F}=\{(u_S, c_S)\mid S\in \mathcal {R}\}. $$

Let us show that the set \(\mathcal {F}\) is an sv-fooling set for the language \(L^*\).

To this aim, let S and T be subsets in \(\mathcal {R}\) with \(S\ne T\). Then, without loss of generality, there is a state i such that \(i\in S\) and \(i\notin T\). Let us show that exactly one of the strings \(u_S c_T\) and \(u_T c_T\) is in the language \(L^*\).

Since \(i\in S\) and \(u_S\) is a string, by which the initial subset \(\{q_0\}\) goes to S in the subset automaton of \(A^*\), the state i is reached from \(q_0\) by the string \(u_S\) in the NFA \(A^*\). Since \(i\notin T\), the state i goes to state \(n-1\) by \(c_T\) in the NFA \(A^*\). It follows that NFA \(A^*\) accepts \(u_S c_T\). Thus the string \(u_S c_T\) is in the language \(L^*\). On the other hand, each state in T goes only to state 0 by \(c_T\) in the NFA \(A^*\). It follows that \(A^*\) rejects \(u_T c_T\). Therefore the string \(u_T c_T\) is not in \(L^*\).

Hence we have shown that the set \(\mathcal {F}\) is an sv-fooling set for the language \(L^*\). By Lemma 6, every SVFA for the language \(L^*\) needs at least \(3/4\cdot 2^n-1\) states. Our next aim is to show that one more state is necessary in every SVFA for \(L^*\).

To this aim let

\( \mathcal {A}=\{(u_S,c_S) \mid S\in \mathcal {R}\text { and }n-1\notin S\}\),

\( \mathcal {B}=\{(u_S,c_S) \mid S\in \mathcal {R}\text { and }n-1\in S\}\).

We have \(\mathcal {A}\cup \mathcal {B}=\mathcal {F}\). Let us show that the sets \(\mathcal {A}\cup \{(\varepsilon ,\varepsilon )\}\), and \(\mathcal {B}\cup \{(\varepsilon ,b)\}\) are sv-fooling sets for the language \(L^*\).

If \(n-1\notin S\), then \(u_S \cdot \varepsilon \) is rejected by \(A^*\), while \(\varepsilon \cdot \varepsilon \) is accepted. Hence exactly one of \(u_S \cdot \varepsilon \) and \(\varepsilon \cdot \varepsilon \) is in \(L^*\). Therefore \(\mathcal {A}\cup \{(\varepsilon ,\varepsilon )\}\) is an sv-fooling set for \(L^*\).

If \(n-1\in S\), then the string \(u_S \cdot b\) is accepted by \(A^*\), while \(\varepsilon \cdot b\) is rejected. Thus also \(\mathcal {B}\cup \{(\varepsilon ,b)\}\) is an sv-fooling set for \(L^*\). By Lemma 7, every SVFA for the language \(L^*\) requires at least \(3/4\cdot 2^n\) states. Our proof is complete.    \(\square \)

Lemma 16

Let \(n\ge 3\). There exists a regular language L defined over a four-letter alphabet such that \(\mathrm {svsc}(L)=n\) and \(\mathrm {svsc}(L^*)\ge 2^{n-1}-1\).

Fig. 10.
figure 10

The quaternary DFA of a language L with \(\mathrm {svsc}(L^*)\ge 2^{n-1}-1\).

Proof

Consider the language L accepted by the quaternary DFA B shown in Fig. 10. Notice that the transitions on symbols a and b are the same as in the DFA A described in the proof of Lemma 15.

It follows that all the subsets of \(\{0,1,\ldots ,n-1\}\), that have been shown to be reachable in the subset automaton of the NFA \(A^*\), will be reachable in the subset automaton of the NFA \(B^*\) as well; here, the NFA \(B^*\) is an NFA for the language \(L^*\) obtained from the DFA B as described in the previous proof.

In particular, all the non-empty subsets of \(\{0,1,\ldots ,n-2\}\) are reachable in the subset automaton of the NFA \(B^*\). Similarly as in the previous proof, let \(u_S\) be a string over \(\{a,b\}\) by which the initial subset \(\{q_0\}\) goes to S in the subset automaton. Our aim is to describe an sv-fooling set for \(L^*\) of size \(2^{n-1}-1\).

To this aim, for every non-empty subset S of \(\{0,1,\ldots ,n-2\}\), define the string \(v_S=v_0 v_1 \cdots v_{n-2}\) of length \(n-1\) over \(\{c,d\}\) as follows:

\(v_{n-2-i} = {\left\{ \begin{array}{ll} c, &{} \text {if }i\in S,\\ d, &{} \text {if }i\notin S, \end{array}\right. }\)

that is, the string \(v_S\) somehow describes the set S, however, in a reversed order: we can assign the symbol \(\sigma (i)=c\) to each state i in S and the symbol \(\sigma (i)=d\) to each state i outside the set S, and then we have \(v_S = \sigma (n-2)\sigma (n-3)\cdots \sigma (1)\sigma (0)\).

We are going to show that the set \(\{(u_S,v_S)\mid \emptyset \ne S\subseteq \{0,1,\ldots ,n-2\}\}\) is an sv-fooling set for \(L^*\).

First, we prove that for every set S, the string \(v_S\) is accepted by \(B^*\) from every state outside the set S, while \(v_S\) is rejected by \(B^*\) from every state in S. To this aim, let \(i\notin S\). Then, in the position \(n-2-i\) of the string \(v_S\), we have the symbol d. Thus \(v_S= x\, \varvec{d} \, y\), where \(|x|=n-2-i\) and \(|y|=i\). The NFA \(B^*\) accepts the string \(v_S\) from the state i through the following computation

$$ i \xrightarrow {x}n-2 \xrightarrow {d}n-1\xrightarrow {y}n-1 . $$

Next, let \(i\in S\). Then, in position \(n-2-i\) of the string \(v_S\), we have the symbol c. Thus \(v_S= x\, \varvec{c}\, y\), where \(|x|=n-2-i\) and \(|y|=i\). Since we have

$$ \{ i \}\xrightarrow {x}\{n-2\} \xrightarrow {c}\{0\}\xrightarrow {y}\{i\}, $$

the NFA \(B^*\) rejects the string \(v_S\) from the state i.

Now, we are able to prove that \(\{(u_S,v_S)\mid \emptyset \ne S\subseteq \{0,1,\ldots ,n-2\}\}\) is an sv-fooling set for \(L^*\). To this aim let \(S\ne T\). Without loss of generality, there is a state i with \(i\in S\) and \(i\notin T\). Since the initial state \(q_0\) goes to i by \(u_S\), and \(v_T\) is accepted by \(B^*\) from i, the string \(u_S v_T\) is accepted by \(B^*\), so it is in \(L^*\). On the other hand, the string \(v_T\) is rejected by NFA \(B^*\) from every state in T. It follows that the string \(u_T v_T\) is rejected by \(B^*\), so it is not in the language \(L^*\). Thus the set \(\{(u_S,v_S)\mid \emptyset \ne S\subseteq \{0,1,\ldots ,n-2\}\}\) is an sv-fooling set for \(L^*\). By Lemma 6, every SVFA for the language \(L^*\) has at least \(2^{n-1}-1\) states.    \(\square \)

Lemma 18

Let K and L be languages with \(\mathrm {svsc}(K)=m\) and \(\mathrm {svsc}(L)=n\). Then \(\mathrm {svsc}(K\backslash L) \le 2^n-1\).

Proof

Let L be accepted by an SVFA \(A=(Q,\varSigma ,\delta ,s,F^a,F^b)\). Then the language \(K \backslash L\) is accepted by an NNFA \(N=(Q,\varSigma ,\delta ,I,F^a)\), where a state q is in I if it can be reached from the initial state of A by a string in K, that is, if \(q\in \delta (s,w)\) for a string w in K. After applying the subset construction to the NNFA N, we get a DFA for \(K \backslash L\) of at most \(2^n\) states.

Let us show that the empty set is not reachable in the subset automaton of N. Assume for a contradiction that the empty set is reachable from I by a string u. Let \(q\in I\). Then q is reached from the initial state s of the SVFA A by a string w in K. However, then \(\delta (s,w)\subseteq I\). It follows that \(\delta (s,w u) =\emptyset \), so in the SVFA A, there is no computation on the string w u. This is a contradiction since SVFA A must accept or reject w u. Thus \(\mathrm {svsc}(K \backslash L) \le 2^n-1\).    \(\square \)

Lemma 19

Let \(m,n\ge 3\). There exist languages K and L over an alphabet of size \(2^n+1\) such that \(\mathrm {svsc}(K)=m\), \(\mathrm {svsc}(L)=n\), and \(\mathrm {svsc}(K\backslash L) = 2^n-1\).

Proof

Consider the family \(\mathcal {R}\) of all the non-empty subsets of \(\{0,1,\ldots ,n-1\}\), that is,

$$\mathcal {R}= \big \{S\mid \emptyset \ne S\subseteq \{0,1,\ldots ,n-1\}\big \}. $$

Let \(\varSigma =\{a,b\}\cup \{c_S\mid S\in \mathcal {R}\}\) be an alphabet consisting of \(2^n+1\) symbols.

Let \(K=a^*\cup a^* b^{m-2}\) be a language over \(\varSigma \). Then K is accepted by an m-state DFA A shown in Fig. 11 (top), where all the transitions on symbols \(c_S\) going to the dead state \(m-1\) are omitted. The reader can verify that the set of pairs of strings \(\{ (b^i, b^{m-2-i})\mid 0\le i \le m-2\} \cup \{(b^{m-1}a,\varepsilon )\}\) is an sv-fooling set of size m for the language K. Hence \(\mathrm {svsc}(K)=m\).

Let L be accepted by an n-state DFA \(B=(\{0,1,\ldots ,n-1\},\varSigma ,\delta ,0,\{n-1\})\), where the transitions are defined as follows:

\(\delta (i,a)=(i+1)\hbox { mod } n\);

\(\delta (0,b)=\delta (1,b)=0\), and \(\delta (i,b)=i\) if \(2\le i\le n-1\);

and for each subset S of \(\{0,1,\ldots ,n-1\}\), we have

\(\delta (i,c_S)={\left\{ \begin{array}{ll} 0, &{}\text {if }i\in S,\\ n-1, &{}\text {if }i\notin S; \end{array}\right. }\)

hence, the symbol a performs the cycle \((0,1,\ldots ,n-1)\), and the symbol b maps each state i to itself, except for the state 1 that is mapped to the state 0. For each subset S, the symbol \(c_S\) maps each state in S to the non-final state 0, and it maps each state outside of S to the final state \(n-1\). The transitions on a and b in the DFA B are shown in Fig. 11 (bottom).

Fig. 11.
figure 11

The transitions on a and b in the DFAs A and B for languages K and L, respectively, with \(\mathrm {svsc}(K\backslash L )\ge 2^n-1\).

Construct an NNFA N for the language \(K \backslash L\) from the DFA B by making all the states of B initial; notice that every state i of B is reached from the initial state of B by the string \(a^i\) which is in K.

Let us show that all the subsets in the family \(\mathcal {R}\) are reachable in the subset automaton of the NNFA N. The proof is by induction on the size of subsets.

The basis, \(|S|=n\), holds since \(\{0,1,\ldots ,n-1\}\) is the initial subset. Let \(1 \le k \le n-1\), and assume that every set in \(\mathcal {R}\) of size \(k+1\) is reachable. Let \(S=\{i_1,i_2,\ldots ,i_k\}\) be a set in \(\mathcal {R}\) of size k, where \(0\le i_1 < i_2 < \cdots < i_k\le n-1\). Consider three cases:

  1. (i)

    \(i_1=0\) and \(i_2\ge 2\). Then S is reached from \(\{0,1,i_2,i_3,\ldots ,i_k\}\) by b, and the latter set of size \(k+1\) is reachable by the induction hypothesis.

  2. (ii)

    \(i_1=0\) and \(i_2=1\). Let \(\ell \) be a minimal state such that \(\ell \in S\) and \(\ell +1\notin S\); such a state must exist since we have \(|S|\le n-1\). Let \(S'=\{(s-\ell )\hbox { mod } n\mid s\in S\}\). Then \(0\in S'\) and \(1\notin S'\). Therefore the subset \(S'\) is reachable as shown in case (i). Since \(S'\) goes to S by \(a^\ell \), the set S is reachable as well.

  3. (iii)

    \(i_1\ge 1\). Then the set S is reached from \(\{0,i_2-i_1,\ldots ,i_k-i_1\}\) by \(a^{i_1}\), and the latter set, containing state 0, is reachable as shown in cases (i) and (ii).

Hence each subset S in \(\mathcal {R}\) is reachable in the subset automaton of NNFA N. Let \(u_S\) be a string, by which the initial subset \(\{0,1,\ldots ,n-1\}\) goes to the set S. Now, in the same way as in the proof of Lemma 15, we can prove that the set of pairs \(\{(u_S, c_S)\mid S\in \mathcal {R}\}\) is an sv-fooling set of size \(2^n-1\) for the language \(K\backslash L\). By Lemma 6, every SVFA for \(K\backslash L\) requires at least \(2^n-1\) states.    \(\square \)

Lemma 20

Let \(m,n\ge 3\). There exist quaternary regular languages K and L with \(\mathrm {svsc}(K)=m\) and \(\mathrm {svsc}(L)=n\) such that \(\mathrm {svsc}(K \backslash L) \ge 2^{n-1}-1\).

Proof

The language K is the same as in the proof of Lemma 19. The language L is accepted by the DFA \(B'\), in which the transitions on a and b are the same as in the DFA B in the proof of Lemma 19, and the transitions on c and d are the same as in Fig. 10. In a similar way as in the proof of Lemma 16, we can describe an sv-fooling set \(\big \{(u_S,v_S) \mid \emptyset \ne S\subseteq \{0,1,\ldots ,n-2\}\big \}\) of size \(2^{n-1}-1\) for \(K\backslash L\). Hence we still get an exponential lower bound.    \(\square \)

Lemma 22

Let K and L be languages with \(\mathrm {svsc}(K)=m\) and \(\mathrm {svsc}(L)=~n\). Then \(\mathrm {svsc}(L / K) \le ~g(n)\).

Proof

Let a language L be accepted by an n-state SVFA. First, convert this SVFA to an equivalent minimal DFA. By Theorem 3, this DFA has at most g(n) states. By making certain states final based on the language K, we get a DFA for L / K of at most g(n) states. Hence \(\mathrm {svsc}(L / K) \le ~g(n)\).    \(\square \)

Lemma 23, Proof Details:

Let us show that automaton B is an SVFA. Notice that the initial state is mapped to the first row of the grid Q by each input symbol. Next, each set in \(\mathcal {R}\) is mapped to a set in \(\mathcal {R}\) by each input symbol. Therefore, every reachable set in the subset automaton of B has exactly one state in the last column of the grid, so it has exactly one accepting or exactly one rejecting state of B, while all its remaining states are neutral. Thus B is an SVFA.

First, construct an NNFA N for L / K from the SVFA B by making state \(q_0\) and all the states (0, j) in the first row of the grid Q final; notice that all these states can reach the accepting state (0, k) of B by a string consisting of \(m-2\) or more c’s, which is in K. Moreover, no other state of B can reach an accepting state of B by any string in \(c^*\).

Since the transitions on a and b in the SVFA B are the same as in the binary witness for SVFA-to-DFA conversion in [9] shown in Fig. 6(top), for each S in \(\mathcal {R}\), there exists a string \(u_S\) over \(\{a,b\}\) such that \(\delta (q_0,u_S)=S\) [9, Lemma 6].

Now consider the following set \(\mathcal {F}\) of \(3^k+1\) pairs of strings

$$ \mathcal {F}=\{(u_S,d_S)\mid S\in \mathcal {R}\} \cup \{(\varepsilon ,\varepsilon )\}. $$

Let us show that \(\mathcal {F}\) is an sv-fooling set for L / K.

To this aim, let S and T be two distinct sets in \(\mathcal {R}\). Then, without loss of generality, there is a row j and a state (ij) in Q such that \((i,j)\in S\) and \((i,j)\notin T\). Since \((i,j)\in S\), and we have \(\delta (q_0,u_S)=S\), the state (ij) is reached from \(q_0\) by \(u_S\). Since \((i,j)\notin T\), symbol \(d_T\) maps state (ij) to state (0, j), which is final in the NNFA N. Hence, the string \(u_S d_T\) is accepted by the NNFA N through the following accepting computation:

$$ q_0 \xrightarrow {u_S}(i,j) \xrightarrow {d_T}(0,j). $$

On the other hand, we have \( \delta (q_0,u_T d_T)= \delta (T,d_T)=\{(1,1),(1,2),\ldots ,(1,k)\}. \) Since all the states in the resulting set are non-final in N, the string \(u_T v_T\) is rejected by N. Thus exactly one of the strings \(u_S d_T\) and \(u_T d_T\) is in L / K.

Next, if \(S\in \mathcal {R}\), then, as we have just shown, the string \(u_S d_S\) is rejected by N. On the other hand, the string \(\varepsilon \cdot d_S\) is accepted by the NNFA N since \(\delta (q_0,d_S)=\{(0,1),(0,2),\ldots ,(0,k)\}\), and each state in this set is final in N. Thus exactly one of the strings \(u_S d_S\) and \(\varepsilon \cdot d_S\) is in L / K.

We have shown that the set of pairs \(\mathcal {F}\) is an sv-fooling set for the language L / K. By Lemma 6, every SVFA for the language L / K has at least \(3^k+1\) states. Since \(g(n)=g(3k+1)=1+3^k\), the lemma is proved if \(n\hbox { mod } 3=1\).

If \(n \hbox { mod } 3=2\), then in the first column we have four states as shown in Fig. 6 (bottom-left). By c, we map the state (3, 1) to the state (2, 2). The rest of the proof is the same as above.

If \(n \hbox { mod } 3=0\), then in the first column we have two states as shown in Fig. 6 (bottom-right). In this case, the symbol c maps the state (2, k) to the state (1, 1). Since we use symbol c only for making states in the first row of the grid final in N, the rest of the proof works in this case as well.

Thus in all three cases, we are able to describe an sv-fooling set of size g(n) for the language L / K, and the theorem follows.    \(\square \)

Lemma 24

Let \(m,n\ge 6\). There exist languages K and L over a four-letter alphabet such that \(\mathrm {svsc}(K)=m\), \(\mathrm {svsc}(L)=n\), and \(\mathrm {svsc}(L/K)\in \varOmega (2^{n/3}) \).

Proof

(Proof Idea). Let \(n=3k+1\) with \(k\ge 2\). Let \(\varSigma =\{a,b,c,d\}\). We are going to define languages K and L over \(\varSigma \).

Let \(K=\{c^\ell \mid \ell \ge m-2\}\) be a language over \(\varSigma \) with \(\mathrm {svsc}(K)=m\).

Let L be accepted by an n-state SVFA \(B'=\{Q\cup \{q_0\},\varSigma ,\delta ',q_0,F^a,F^r)\); where Q is the grid as in Lemma 23, \(F^a=\{q_0,(0,k),(1,k)\}\), \(F^r=\{(2,k)\}\), and the transitions on ab are the same as in the SVFA B in Lemma 23. By c and d, the state \(q_0\) goes to \(\{(0,1),\ldots ,(0,k)\}\), and each state (ij) with \(j\le k-1\) goes to \(\{(i,j+1)\}\). The state (0, k) goes to \(\{(1,1)\}\) on both cd. The state (1, k) goes to \(\{(0,1)\}\) on c, and it goes to \(\{(2,1)\}\) on d. The state (2, k) goes to \(\{(2,1)\}\) on both cd. The transition on cd in the SVFA \(B'\) in the case of \(k=4\) are shown in Fig. 12.

Fig. 12.
figure 12

The transitions on cd in the SVFA \(B'\); \(n=3\cdot 4+1\).

Now in an NNFA N for L / K the state \(q_0\), and all the states (0, j) and (1, j) in the first and second row of the grid Q will be final: All of them accept a long enough string in \(c^*\) which is in K. All the remaining states are non-final in the NNFA N. Let \(\mathcal {R}\) be the same as in the proof of Lemma 23.

The idea is to define strings \(v_S\) for some sets S in \(\mathcal {R}\), namely, for those S that consist only of the states in the first and second row of the grid Q.

To define the string \(v_S\) of length 2k, let \(\sigma (i,j)=d\) if \((i,j)\in S\), and let \(\sigma (i,j)=c\) if \((i,j)\notin S\). Now let

$$u_S=(\sigma (0,1)\sigma (0,2)\cdots \sigma (0,k) \sigma (1,1)\sigma (1,2)\cdots \sigma (1,k))^R.$$

Then we can prove that the string \(v_S\) is rejected by the NNFA N from each state in S, and it is accepted from each state in the first or second row of the grid Q which is not in S. The proof is similar as in Lemma 16.

As a result, we will be able to describe an sv-fooling set \(\{(u_{S}, v_S) \mid S\in \mathcal {R}'\}\), where \(\mathcal {R}'\) contains all the sets in \(\mathcal {R}\) which only have states in the first or second row of the grid Q. This will give a lower bound \(\varOmega (2^{n/3})\).    \(\square \)

Lemma 26

Let K and L be languages with \(\mathrm {svsc}(K)=m\) and \(\mathrm {svsc}(L)=n\). Then \(\mathrm {svsc}(KL)\le g(m)\cdot 2^n\).

Proof

Let K and L be accepted by SVFAs \(A=(Q_A,\varSigma ,\delta _A,s_A,F^a_A,F_A^r)\) and \(B=(Q_B,\varSigma ,\delta _B,s_B,F^a_B,F_B^r)\), respectively.

First, convert the SVFA A to a minimal DFA \(A'=(Q',\varSigma ,\delta ',s',F')\). Then, construct an NNFA N for the language KL from automata \(A'\) and B as follows. For each state q of \(A'\) and each symbol a, add a transition from q to \(s_B\) on a whenever \(\delta '(q,a)\in F'\), that is, whenever q goes to a final state of \(A'\) on a. The set of initial states of NNFA N is \(\{s'\}\) if \(s'\notin F'\), and it is \(\{s', s_B\}\) if \(s'\in F'\). The set of final states of N is \(F_B^a\).

Next, apply the subset construction to N. In the subset automaton of N, every reachable subset can be expressed as \(\{q\}\cup T\), where q is a state of the DFA \(A'\) and T is a subset of \(Q_B\). Since A is an SVFA, the DFA \(A'\) has at most g(m) states by Theorem 3. It follows that the subset automaton of N has at most \(g(m)\cdot 2^n\) reachable states. Hence \(\mathrm {svsc}(KL)\le g(m)\cdot 2^n\).    \(\square \)

To get a lower bound, we will again use the binary witness from [9], meeting the upper bound g(n) for SVFA-to-DFA conversion. We add the transitions on a new symbol c in the same way as for right quotient. Next, we add two new symbols d and e which will be ignored by a SVFA A for K. On the other hand, the symbols abc will be ignored by a DFA B for L, while the symbols ed will be used to prove the reachability of some specific subsets in the subset automaton for KL. Finally, we will use new symbols \(f_S\) and \(g_T\) to describe a fooling set.

Lemma 27

Let \(m\ge 6\) and \(n\ge 3\). There exist regular languages K and L, defined over an alphabet that grows exponentially with m and n, and such that \(\mathrm {svsc}(K)=m\), \(\mathrm {svsc}(L)=n\), and \(\mathrm {svsc}(KL)\ge 1/2 \cdot g(m) \cdot 2^{n}\).

Proof

For the sake of simplicity, let us start with the case of \(m=1+3k\) a \(k\ge 2\).

Consider the grid \(Q=\{(i,j)\mid 0\le i\le 2 \text { and } 1\le j \le k \}\) of 3k nodes. Let \(\mathcal {R}\) be the following family of \(3^k\) subsets of Q

$$ \mathcal {R}=\big \{ \{(i_1,1),(i_2,2),\ldots ,(i_{k},k )\}\mid i_1,i_2,\ldots ,i_{k}\in \{0,1,2\} \big \}, $$

that is, each subset in \(\mathcal {R}\) corresponds to a choice of one element in each column of the grid Q. Let

$$ \varSigma =\{a,b,c,d,e\}\cup \{f_{S}\mid S\in \mathcal {R}\}\cup \{g_T\mid T\subseteq \{0,1,\ldots ,n-1\}\} $$

be an alphabet consisting of \(5+3^{\frac{m-1}{3}}+ 2^n\) symbols.

Let K be the regular language over the alphabet \(\varSigma \) accepted by m-state SVFA \(A =(Q\cup \{q_0\},\varSigma ,\delta ,q_0,F^a,F^r)\), where \(F^a=\{q_0,(0,k )\}\), \(F^r=\{(1,k ),(2,k )\}\), and the transitions are as follows: for all ij with \(0\leqslant i\leqslant 2\) and \(1\leqslant j\leqslant k\), each S in \(\mathcal {R}\), and each subset T of \(\{0,1,\ldots ,n-1\}\), we have

\(\delta (q_0,a)=\delta (q_0,b)=\delta (q_0,c)= \delta (q_0,f_{S}) =\{(0,1),(0,2),\ldots ,(0,k)\}\);

\(\delta (q_0,d)=\delta (q_0,e)=\delta (q_0,g_T)=\{q_0\}\);

\(\delta ((i,j),\, a)\, = {\left\{ \begin{array}{ll} \{(i,j+1)\}, &{}\text{ if } j\le k-1,\\ \{(0,1)\}, &{}\text{ if } j= k; \end{array}\right. }\)

\(\delta ((i,j),\,b) \ =\{((i+1)\hbox { mod } 3, j)\}\);

\(\delta ((i,j),\, c)\ = {\left\{ \begin{array}{ll} \{(i,j+1)\}, &{}\text{ if } j\le k-1,\\ \{(i,1)\}, &{}\text{ if } j= k; \end{array}\right. }\)

\(\delta ((i,j),f_{S})={\left\{ \begin{array}{ll} \{ (1,j)\}, &{}\text {if }(i,j)\in S,\\ \{ (0,j)\}, &{}\text {if }(i,j)\notin S; \end{array}\right. }\)

\(\delta ((i,j),d)= \delta ((i,j),e)= \delta ((i,j),g_T) =\{(i, j)\}\);

that is, transitions on abc are the same as in the witness automaton for the second language in the case of the right quotient operation, while symbols \(f_S\) are the same as \(d_S\) in the case of right quotient. Moreover, the SVFA A ignores symbols d and e, as well as each symbol \(g_T\). The transitions on abc in automaton A in the case of \(k=4\) are shown in Fig. 13. Notice that we have a loop on de in state \(q_0\). To keep the figure transparent, we omitted all the remaining transitions.

Let L be the language accepted by DFA \(B=(\{0,1,\ldots ,n-1\},\varSigma ,\cdot ,0,\{0\})\), in which the transitions on abcde are defined as shown in Fig. 14. For each subset T of \(\{0,1,\ldots ,n-1\}\), by symbol \(g_T\), each state in T goes to the non-final state \(n-1\), while each state outside of T goes to the final state 0. Finally, each symbol \(f_S\) is ignored by B. Hence, for each i in \(\{0,1,\ldots ,n-1\}\), each S in \(\mathcal {R}\), and each subset T of \(\{0,1,\ldots ,n-1\}\), we have

\(i\cdot a=i\cdot b=i\cdot c=i\cdot f_S=i\);

\(i\cdot d =(i+1)\hbox { mod } n\);

\(0\cdot e=0\), \(i\cdot b=i+1 \) if \(1\le i\le n-2\), and \((n-1)\cdot b =1\);

\(i\cdot g_{T}={\left\{ \begin{array}{ll} n-1, &{}\text {if }i\in T,\\ 0, &{}\text {if }i\notin T. \end{array}\right. }\)

Fig. 13.
figure 13

Transitions on abc in the SVFA A; \(m=13\) (self-loops on de are omitted).

Fig. 14.
figure 14

The transitions on abcde in the DFA B.

Construct an NNFA N for the language KL from automata A and B by adding the transition from a state q of A to the state 0 on input symbol \(\sigma \) whenever the state q goes to an accepting state on \(\sigma \) in A, that is, whenever \(\delta (q,\sigma )\cap F^a\ne \emptyset \). Notice that we have the transitions on d and e from \(q_0\) to 0 in N. The set of initial states of N is \(\{q_0,0\}\), and the set of final states is \(\{0\}\). Consider the following family of subsets of the state set of N:

$$ \mathcal {R}_N=\big \{S\cup T\mid S\in \mathcal {R} \text { with } (0,k)\notin S, \text { and } T\subseteq \{0,1,\ldots ,n-1\}\big \}. $$

Let us show that each subset in \(\mathcal {R}_N\) is reachable in the subset automaton of N.

First, let us show that for each subset T of \(\{0,1,\ldots ,n-1\}\) with \(0\in T\), the subset \(\{q_0\}\cup T\) is reachable. The proof is by induction on the size of T. The basis, \(|T|=1\), holds since \(\{q_0,0\}\) is the initial state of the subset automaton.

Let \(1\le \ell \le n-1\), and assume that for each subset T of size \(\ell \), the set \(\{q_0\}\cup T\) is reachable. Let \(T=\{0,i_1,i_2,\ldots ,i_\ell \}\) be a subset of size \(\ell +1\), where \(1\le i_1 <i_2 <\cdots <i_\ell \le n-1\). Then \(\{q_0\}\cup T\) is reached from the subset \(\{q_0\}\cup \{0,i_2-i_1,i_3-i_1,\ldots ,i_\ell -i_1\}\) by \(d e^{i_1-1}\), and the latter subset is reachable by the induction hypothesis.

Next we show that each \(S\cup T\) in \(\mathcal {R}_N\) is reachable. Since A restricted to the alphabet \(\{a,b\}\) is the witness automaton for SVFA-to-DFA conversion from [9], for each subset S in \(\mathcal {R}\), there is a string \(u_S\) in \(\{a,b\}^*\) such that \(\delta (q_0,u_S)=S\) [9, Lemma 6]. It follows that in the subset automaton of N, each subset \(S\cup T\) with \(0\in T\) is reached from the set \(\{q_0\}\cup T\) by \(u_S\) since B ignores symbols ab. Next, if \(T=\{i_1,i_2,\ldots ,i_\ell \}\), where \(1\le i_1<i_2<\cdots <i_\ell \le n-1\), that is, if the subset T does not contain state 0, and if \((0,k)\notin S\), then the subset \(S\cup T\) is reached from the subset \(S \cup \{0,i_2-i_1,i_3-i_1,\ldots ,i_\ell -i_1\}\) by the string \(d^{i_1}\) since A ignores d and S does not contain any accepting state of A.

Thus we have shown that each subset in \(\mathcal {R}_N\) is reachable in the subset automaton of the NNFA N. For each subset \(S\cup T\) in \(\mathcal {R}_N\), let \(u_{S\cup T}\) by a string by which the initial subset \(\{q_0,0\}\) goes to the subset \(S\cup T\) in N. Next, let \(v_{S\cup T}=g_T\cdot f_S\cdot c^k\); recall that \(m=3k+1\). Let us show that the set of pairs

$$ \mathcal {F}=\{(u_{S\cup T},v_{S\cup T} ) \mid S\cup T \in \mathcal {R}_N\} $$

is an sv-fooling set for the language KL.

First, we show that for each \(S\cup T\) in \(\mathcal {R}_N\), the string \(u_{S\cup T}\, v_{S\cup T}\) is not in KL. In the subset automaton of N, we have the following computation:

$$\begin{aligned} \{q_0,0\}&\xrightarrow {u_{S\cup T}} S\cup T \xrightarrow {g_T} S\cup \{n-1\} \xrightarrow {f_S}\{(1,1),(1,2),\ldots ,(1,k)\}\cup \{n-1\}\\&\xrightarrow {c^k}\{(1,1),(1,2),\ldots ,(1,k)\}\cup \{n-1\} \end{aligned}$$

because S does not contain any accepting state of A, each state in T is mapped to \(n-1\) by \(g_T\), each state (ij) in S is mapped to (1, j) by \(f_S\), and, finally, the resulting non-final subset is mapped to itself by \(c^k\). It follows that the subset automaton rejects the string \(u_{S\cup T} \, v_{S\cup T}\), so this string is not in KL.

Now, let \(S\cup T\) and \(S'\cup T'\) be two distinct sets in \(\mathcal {R}_N\). Then \(S\ne S'\) or \(T\ne T'\). First, let \(S\ne S'\). Without loss of generality, there is a column j and a state (ij) of the grid Q such that \((i,j)\in S\) and \((i,j)\notin S'\). Then the string \(u_{S\cup T}\, v_{S'\cup T'}\) is accepted by the NNFA N through the following computation

$$ \{q_0,0\}\xrightarrow {u_{S\cup T}}(i,j) \xrightarrow {g_{T'}}(i,j) \xrightarrow {f_{S'}}(0,j) \xrightarrow {c^k}0 $$

because \(\{q_0,0\}\) goes to \(S\cup T\) by \(u_{S\cup T}\) and \((i,j)\in S\cup T\), there is a loop on \(g_{T'}\) in state (ij), symbol \(f_{S'}\) maps (ij) to (0, j) since \((i,j)\notin S'\), and (0, j) goes to the final state 0 by \(c^k\) since there is a transition on c from \((0,k-1)\) to 0 in N. Thus \(u_{S\cup T}\, v_{S'\cup T'}\) is in KL.

Now, let \(T\ne T'\). Without loss of generality, there is a state t such that \(t\in T\) and \(t\notin T'\). Then the string \(u_{S\cup T}\, v_{S'\cup T'}\) is accepted by the NNFA N through the following computation

$$ \{q_0,0\}\xrightarrow {u_{S\cup T}}t \xrightarrow {g_{T'}}0 \xrightarrow {f_{S'}}0 \xrightarrow {c^k}0 $$

because \(\{q_0,0\}\) goes to \(S\cup T\) by \(u_{S\cup T}\) and \(t\in S\cup T\), symbol \(g_{T'}\) maps t to 0 since \(t\notin T'\), and there are loops on \(f_{S'}\) and c in the final state 0. Thus also in this case, the string \(u_{S\cup T}\, v_{S'\cup T'}\) is in KL.

Hence exactly one of the strings \(u_{S\cup T}\, v_{S'\cup T'}\) and \(u_{S'\cup T'}\, v_{S'\cup T'}\) is in KL. It follows that the set \(\mathcal {F}\) is an sv-fooling set for KL. Similarly as for right quotient, we can extend our arguments to the cases of \(n=3k+2\) and \(n=3k\). Next, we have

$$ |\mathcal {F}|= 2/3\cdot (g(m)-1)\cdot 2^n \ge 2/3\cdot (g(m)-g(m)/4)\cdot 2^n = 1/2\cdot g(m)\cdot 2^n. $$

By Lemma 6, every SVFA for KL has at least \(1/2\cdot g(m)\cdot 2^n\) states.    \(\square \)

Lemma 28

Let \(m,n\ge 6\). There exist languages K and L over an eight-letter alphabet such that \(\mathrm {svsc}(K)=m\), \(\mathrm {svsc}(L)=n\), and \(\mathrm {svsc}(KL)\in \varOmega (2^{m/3}\cdot 2^n)\).

Proof

(Proof Idea). Let \(\varSigma =\{a,b,c,d,e,f,g,h\}\). We are going to describe languages K and L over \(\varSigma \).

Let K be accepted by an m-state SVFA \(A'\) in which the transitions on abde are the same as in the SVFA A in the proof of Lemma 27. The SVFA \(A'\) ignores the symbols g and h. By c and f, the state \(q_0\) goes to \(\{(0,1),\ldots ,(0,k)\}\), and each state (ij) with \(j\le k-1\) goes to \(\{(i,j+1)\}\). The state (0, k) goes to \(\{(1,1)\}\) on both cf. The state (1, k) goes to \(\{(0,1)\}\) on c, and it goes to \(\{(2,1)\}\) on f. The state (2, k) goes to \(\{(2,1)\}\) on both cf. The transition on cf in the SVFA \(A'\) in the case of \(k=4\) are shown in Fig. 15.

Fig. 15.
figure 15

The transitions on cf in the SVFA \(A'\); \(m=13\) (self-loops on de are omitted).

Let L be accepted by the DFA \(B'\) shown in Fig. 16. Notice that the transitions on abcde are the same as in the DFA B in the proof of Lemma 27. The DFA \(B'\) ignores the symbol f. The symbols gh correspond to the symbols cd in the proof of Lemma 16.

Fig. 16.
figure 16

The DFA \(B'\).

The idea of the proof is to define strings \(v_S\) and \(v_T\) for some sets S in \(\mathcal {R}\), namely, for those that consist only of the states in the first and second row of the grid Q, and for each subset T of \(\{1,2,\ldots ,n-2\}\). The strings \(v_T\) are defined exactly in the same way as in Lemma 16.

To define the string \(v_S\) of length 2k, let \(\sigma (i,j)=f\) if \((i,j)\in S\), and let \(\sigma (i,j)=c\) if \((i,j)\notin S\). Now let

$$ u_S=(\sigma (0,1)\sigma (0,2)\cdots \sigma (0,k) \sigma (1,1)\sigma (1,2)\cdots \sigma (1,k))^R. $$

Then we can prove that the string \(v_S\) is rejected from each state in S, and it is accepted from each state in the first or second row which is not in S.

As a result, we will be able to describe an sv-fooling set

$$\{(u_{S\cup T}, v_T\cdot v_S\cdot c^{2k}) \mid S\in \mathcal {R}', T\subseteq \{1,2,\ldots ,n-2\}\},$$

where \(\mathcal {R}'\) contains all the sets in \(\mathcal {R}\) which only have states in the first or second row of the grid Q. This will give a lower bound \(\varOmega (2^{m/3}\cdot 2^n)\).    \(\square \)

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Jirásek, J.Š., Jirásková, G., Szabari, A. (2015). Operations on Self-Verifying Finite Automata. In: Beklemishev, L., Musatov, D. (eds) Computer Science -- Theory and Applications. CSR 2015. Lecture Notes in Computer Science(), vol 9139. Springer, Cham. https://doi.org/10.1007/978-3-319-20297-6_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-20297-6_16

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-20296-9

  • Online ISBN: 978-3-319-20297-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics