|
|
|
|
regular language
|
(Definition)
|
|
|
A regular grammar is a context-free grammar where a production has one of the following three forms: $$A\to \lambda,\qquad A\to u, \qquad A\to vB$$ where $A,B$ are non-terminal symbols, $u,v$ are terminal words, and $\lambda$ the empty word. In BNF, they are: \begin{eqnarray*} \verb.<.\textit{non-terminal}\verb.>. & ::= & terminal \\ \verb.<.\textit{non-terminal}\verb.>. & ::= & terminal\,\verb.<.\textit{non-terminal}\verb.>. \\ \verb.<.\textit{non-terminal}\verb.>. & ::= & \lambda \end{eqnarray*}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 $\lbrace a,b,c\rbrace$ , the regular language associated with the regular expression $a(b\cup c)^*a$ is the set $$\lbrace a\rbrace \circ \lbrace b,c\rbrace^* \circ \lbrace a\rbrace=\lbrace awa\mid w\mbox{ is a word in two letters }b\mbox{ and }c\rbrace,$$ where
$\circ$ is the concatenation operation, and $*$ is the Kleene star operation. Note that $w$ could be the empty word $\lambda$ .
Yet another way of describing a regular language is as follows: take any alphabet $\Sigma$ . Let $\mathcal{R}(\Sigma)$ be the smallest subset of $P(\Sigma^*)$ (the power set of the set of words over $\Sigma$ , in other words, the set of languages over $\Sigma$ ), among all subsets of $P(\Sigma^*)$ with the following properties:
Then $L$ is a regular language over $\Sigma$ iff $L\in \mathcal{R}(\Sigma)$ .
Normal form. Every regular language can be generated by a grammar whose productions are either of the form $A\to aB$ or of the form $A\to \lambda$ , where $A,B$ are non-terminal symbols, and $a$ is a terminal symbol. Furthermore, for every pair $(A,a)$ , there is exactly one production of the form $A\to aB$ .
Remark. Closure properties on the family of regular languages are: union, intersection, complementation, set difference, concatenation, Kleene star, homomorphism, inverse homomorphism, and reversal.
- 1
- A. Salomaa Computation and Automata, Encyclopedia of Mathematics and Its Applications, Vol. 25. Cambridge (1985).
|
"regular language" is owned by mps. [ full author list (3) | owner history (1) ]
|
|
(view preamble | get metadata)
See Also: language, deterministic finite automaton, non-deterministic finite automaton, regular expression, Kleene algebra, context-free language, Kleene's theorem
| Other names: |
type-3 language, type-3 grammar, regular set, regular event |
| Also defines: |
regular grammar |
| Keywords: |
regular expression, Chomsky |
|
|
Cross-references: reversal, inverse, homomorphism, set difference, intersection, closure properties, normal form, iff, union, closed under, singletons, cardinality, contains, properties, languages, power set, Kleene star, operation, concatenation, alphabet, conversely, associate, regular expressions, pushdown automaton, context-free languages, subset, sentences, generate, automata, non-deterministic finite automaton, deterministic, Chomsky hierarchy, generated by, strings, BNF, empty word, terminal, non-terminal symbols, production, context-free grammar
There are 36 references to this entry.
This is version 18 of regular language, born on 2002-02-23, modified 2009-08-08.
Object id is 2548, canonical name is RegularLanguage.
Accessed 16692 times total.
Classification:
| AMS MSC: | 68Q45 (Computer science :: Theory of computing :: Formal languages and automata) | | | 68Q42 (Computer science :: Theory of computing :: Grammars and rewriting systems) |
|
|
|
|
|
|
Pending Errata and Addenda
|
|
|
|
|
|
|
|
|
|
|