Star height problem
This article includes inline citations, but they are not properly formatted. (September 2020) (Learn how and when to remove this template message) |
The star height problem in formal language theory is the question whether all regular languages can be expressed using regular expressions of limited star height, i.e. with a limited nesting depth of Kleene stars. Specifically, is a nesting depth of one always sufficient? If not, is there an algorithm to determine how many are required? The problem was raised by (Eggan 1963).
Families of regular languages with unbounded star height
The first question was answered in the negative when in 1963, Eggan gave examples of regular languages of star height n for every n. Here, the star height h(L) of a regular language L is defined as the minimum star height among all regular expressions representing L. The first few languages found by (Eggan 1963) are described in the following, by means of giving a regular expression for each language:
- [math]\displaystyle{ \begin{alignat}{2} e_1 &= a_1^* \\ e_2 &= \left(a_1^*a_2^*a_3\right)^*\\ e_3 &= \left(\left(a_1^*a_2^*a_3\right)^*\left(a_4^*a_5^*a_6\right)^*a_7\right)^*\\ e_4 &= \left( \left(\left(a_1^*a_2^*a_3\right)^*\left(a_4^*a_5^*a_6\right)^*a_7\right)^* \left(\left(a_8^*a_9^*a_{10}\right)^*\left(a_{11}^*a_{12}^*a_{13}\right)^*a_{14}\right)^* a_{15}\right)^* \end{alignat} }[/math]
The construction principle for these expressions is that expression [math]\displaystyle{ e_{n+1} }[/math] is obtained by concatenating two copies of [math]\displaystyle{ e_n }[/math], appropriately renaming the letters of the second copy using fresh alphabet symbols, concatenating the result with another fresh alphabet symbol, and then by surrounding the resulting expression with a Kleene star. The remaining, more difficult part, is to prove that for [math]\displaystyle{ e_n }[/math] there is no equivalent regular expression of star height less than n; a proof is given in (Eggan 1963).
However, Eggan's examples use a large alphabet, of size 2n-1 for the language with star height n. He thus asked whether we can also find examples over binary alphabets. This was proved to be true shortly afterwards by (Dejean Schützenberger). Their examples can be described by an inductively defined family of regular expressions over the binary alphabet [math]\displaystyle{ \{a,b\} }[/math] as follows–cf. (Salomaa 1981):
- [math]\displaystyle{ \begin{alignat}{2} e_1 & = (ab)^* \\ e_2 & = \left(aa(ab)^*bb(ab)^*\right)^* \\ e_3 & = \left(aaaa \left(aa(ab)^*bb(ab)^*\right)^* bbbb \left(aa(ab)^*bb(ab)^*\right)^*\right)^* \\ \, & \cdots \\ e_{n+1} & = (\,\underbrace{a\cdots a}_{2^n}\, \cdot \, e_n\, \cdot\, \underbrace{b\cdots b}_{2^n}\, \cdot\, e_n \,)^* \end{alignat} }[/math]
Again, a rigorous proof is needed for the fact that [math]\displaystyle{ e_n }[/math] does not admit an equivalent regular expression of lower star height. Proofs are given by (Dejean Schützenberger) and by (Salomaa 1981).
Computing the star height of regular languages
In contrast, the second question turned out to be much more difficult, and the question became a famous open problem in formal language theory for over two decades (Brzozowski 1980). For years, there was only little progress. The pure-group languages were the first interesting family of regular languages for which the star height problem was proved to be decidable (McNaughton 1967). But the general problem remained open for more than 25 years until it was settled by Hashiguchi, who in 1988 published an algorithm to determine the star height of any regular language. The algorithm wasn't at all practical, being of non-elementary complexity. To illustrate the immense resource consumptions of that algorithm, Lombardy and Sakarovitch (2002) give some actual numbers:
{{{1}}}
Notice that alone the number [math]\displaystyle{ 10^{10^{10}} }[/math] has 10 billion zeros when written down in decimal notation, and is already by far larger than the number of atoms in the observable universe.
A much more efficient algorithm than Hashiguchi's procedure was devised by Kirsten in 2005. This algorithm runs, for a given nondeterministic finite automaton as input, within double-exponential space. Yet the resource requirements of this algorithm still greatly exceed the margins of what is considered practically feasible.
This algorithm has been optimized and generalized to trees by Colcombet and Löding in 2008 (Colcombet Löding), as part of the theory of regular cost functions. It has been implemented in 2017 in the tool suite Stamina.[1]
See also
- Generalized star height problem
- Kleene's algorithm — computes a regular expression (usually of non-minimal star height) for a language given by a deterministic finite automaton
References
- ↑ Nathanaël Fijalkow, Hugo Gimbert, Edon Kelmendi, Denis Kuperberg: "Stamina: Stabilisation Monoids in Automata Theory". CIAA 2017: 101-112 Tool available at https://github.com/nathanael-fijalkow/stamina/
Works cited
- Brzozowski, Janusz A. (1980). "Open problems about regular languages". in Book, Ronald V.. Formal language theory—Perspectives and open problems. New York: Academic Press. pp. 23–47. ISBN 978-0-12-115350-2. https://archive.org/details/formallanguageth0000unse/page/23. (technical report version)
- Colcombet, Thomas; Löding, Christof (2008). "The Nesting-Depth of Disjunctive μ-Calculus for Tree Languages and the Limitedness Problem". Computer Science Logic. Lecture Notes in Computer Science. 5213. pp. 416–430. doi:10.1007/978-3-540-87531-4_30. ISBN 978-3-540-87530-7.
- Dejean, Françoise; Schützenberger, Marcel-Paul (1966). "On a Question of Eggan". Information and Control 9 (1): 23–25. doi:10.1016/S0019-9958(66)90083-0.
- Eggan, Lawrence C. (1963). "Transition graphs and the star-height of regular events". Michigan Mathematical Journal 10 (4): 385–397. doi:10.1307/mmj/1028998975.
- McNaughton, Robert (1967). "The Loop Complexity of Pure-Group Events". Information and Control 11 (1–2): 167–176. doi:10.1016/S0019-9958(67)90481-0.
- Salomaa, Arto (1981). Jewels of Formal Language Theory. Melbourne: Pitman Publishing. ISBN 978-0-273-08522-5.
Further reading
- Hashiguchi, Kosaburo (1982). "Regular languages of star height one". Information and Control 53 (2): 199–210. doi:10.1016/S0019-9958(82)91028-2.
- Hashiguchi, Kosaburo (1988). "Algorithms for Determining Relative Star Height and Star Height". Information and Computation 78 (2): 124–169. doi:10.1016/0890-5401(88)90033-8.
- Lombardy, Sylvain; Sakarovitch, Jacques (2002). "Star Height of Reversible Languages and Universal Automata". LATIN 2002: Theoretical Informatics. Lecture Notes of Computer Science. 2286. Springer. pp. 76–90. doi:10.1007/3-540-45995-2_12. ISBN 978-3-540-43400-9. http://www-igm.univ-mlv.fr/~lombardy/publi/LATIN.pdf.
- Kirsten, Daniel (2005). "Distance Desert Automata and the Star Height Problem". RAIRO - Informatique Théorique et Applications 39 (3): 455–509. doi:10.1051/ita:2005027. http://www.numdam.org/item/ITA_2005__39_3_455_0/.
- Sakarovitch, Jacques (2009). Elements of automata theory. Translated from the French by Reuben Thomas. Cambridge: Cambridge University Press. ISBN 978-0-521-84425-3.
Original source: https://en.wikipedia.org/wiki/Star height problem.
Read more |