In theoretical computer science and formal language theory, a formal language is empty if its set of valid sentences is the empty set. The emptiness problem is the question of determining whether a language is empty given some representation of it, such as a finite-state automaton.[1] For an automaton having states, this is a decision problem that can be solved in time,[2] or in time if the automaton has n states and m transitions. However, variants of that question, such as the emptiness problem for non-erasing stack automata, are PSPACE-complete.[3]
The emptiness problem is undecidable for context-sensitive grammars, a fact that follows from the undecidability of the halting problem. It is, however, decidable for context-free grammars.[3]
See also
editReferences
edit- ^ Sipser, Michael (2012). Introduction to the Theory of Computation. Cengage Learning. ISBN 9781285401065.
- ^ "Lecture 6: Properties of Regular Languages - II". COMS W3261 CS Theory. Department of Computer Science, Columbia University. Archived from the original on 2019-10-31. Retrieved 2019-08-22.
- ^ a b Hopcroft, J. E.; Ullman, J. D (1979). Introduction to Automata Theory, Languages, and Computation (first ed.). Addison-Wesley. ISBN 81-7808-347-7.