Search results
Results from the WOW.Com Content Network
In formal language theory, a context-free language (CFL), also called a Chomsky type-2 language, is a language generated by a context-free grammar (CFG). Context-free languages have many applications in programming languages , in particular, most arithmetic expressions are generated by context-free grammars.
Different context-free grammars can generate the same context-free language. It is important to distinguish the properties of the language (intrinsic properties) from the properties of a particular grammar (extrinsic properties). The language equality question (do two given context-free grammars generate the same language?) is undecidable.
Every regular language is context-free, every context-free language is context-sensitive, every context-sensitive language is recursive and every recursive language is recursively enumerable. These are all proper inclusions, meaning that there exist recursively enumerable languages that are not context-sensitive, context-sensitive languages ...
The best known algorithm to test membership in any context-free language is Valiant's algorithm, taking O(n 2.378) time, where n is the length of the string. On the other hand, deterministic context-free languages can be accepted in O(n) time by an LR(k) parser. [5]
In computer science, an ambiguous grammar is a context-free grammar for which there exists a string that can have more than one leftmost derivation or parse tree. [1] [2] Every non-empty context-free language admits an ambiguous grammar by introducing e.g. a duplicate rule.
All linear languages are context-free; conversely, an example of a context-free, non-linear language is the Dyck language of well-balanced bracket pairs. Hence, the regular languages are a proper subset of the linear languages, which in turn are a proper subset of the context-free languages.
In computer science, in particular in formal language theory, the pumping lemma for context-free languages, also known as the Bar-Hillel lemma, [1] is a lemma that gives a property shared by all context-free languages and generalizes the pumping lemma for regular languages.
In formal language theory, a context-free grammar, G, is said to be in Chomsky normal form (first described by Noam Chomsky) [1] if all of its production rules are of the form: [2] [3] A → BC, or A → a, or S → ε,