regular language
A regular grammar is a context-free grammar where a production has one of the following three forms:
where are non-terminal symbols, are terminal words, and the empty word. In BNF, they are:
A regular language (also known as a regular set or a regular event) is the set of strings generated by a regular grammar.Regular grammars are also known as Type-3 grammars in the Chomsky hierarchy.
A regular grammar can be represented by a deterministic or non-deterministic finite automaton. Such automata can serve to either generate or accept sentences
in a particular regular language. Note that since the set of regular languages is a subset of context-free languages, any deterministic or non-deterministic finite automaton can be simulated by a pushdown automaton.
There is also a close relationship between regular languages and regular expressions. With every regular expression we can associate a regular language. Conversely, every regular language can be obtained from a regular expression. For example, over the alphabet , the regular language associated with the regular expression is the set
where is the concatenation operation
, and is the Kleene star operation. Note that could be the empty word .
Yet another way of describing a regular language is as follows: take any alphabet . Let be the smallest subset of (the power set of the set of words over , in other words, the set of languages
over ), among all subsets of with the following properties:
- •
contains all sets of cardinality no more than 1 (i.e., and singletons);
- •
is closed under set-theoretic union, concatenation, and Kleene star operations.
Then is a regular language over iff .
Normal form. Every regular language can be generated by a grammar whose productions are either of the form or of the form , where are non-terminal symbols, and is a terminal symbol. Furthermore, for every pair , there is exactly one production of the form .
Remark. Closure properties on the family of regular languages are: union, intersection, complementation, set difference
, concatenation, Kleene star, homomorphism
, inverse
homomorphism, and reversal.
References
- 1 A. Salomaa Computation and Automata, Encyclopedia of Mathematics and Its Applications, Vol. 25. Cambridge (1985).