Please note that the content of this book primarily consists of articles available from Wikipedia or other free sources online. A deterministic context-free language is a formal language which is defined by a deterministic context-free grammar. The set of deterministic context-free languages is called DCFL and is identical to the set of languages accepted by a deterministic pushdown automaton. The set of de ...Täielik kirjeldus
Please note that the content of this book primarily consists of articles available from Wikipedia or other free sources online. A deterministic context-free language is a formal language which is defined by a deterministic context-free grammar. The set of deterministic context-free languages is called DCFL and is identical to the set of languages accepted by a deterministic pushdown automaton. The set of deterministic context-free languages are a proper subset of the set of context-free languages that possess an unambiguous context free grammar. For example, the language of even-length palindromes on the alphabet of 0 and 1 has the simple, unambiguous grammar S ¿ 0S0 | 1S1 | ¿, but it cannot be parsed by a deterministic push down automaton. The languages of this class have practical importance in computer science. The complexity of the program and execution of a deterministic pushdown automaton is vastly less than that of a nondeterministic one. In the naive implementation, it must make copies of the stack every time a nondeterministic step occurs. The best known algorithm to test membership in any context-free language is Valiant's algorithm, taking O(n2.378) time, whereas membership in a deterministic context-free language can be tested in O(n) time, where n is the length of the string.