Deterministic pushdown automaton
From Wikipedia, the free encyclopedia
In automata theory, a deterministic pushdown automaton is a deterministic finite automata that can make use of a stack containing data. The term "pushdown" refers to the stack operation that inserts data, "push", which pushes down the stack because insert operations can only occur at the top. The term "deterministic pushdown automata" (DPDA) currently refers to abstract computing devices that recognize deterministic context-free languages.
The deterministic pushdown automaton is a deterministic version of the pushdown automaton. Interestingly, deterministic pushdown automata are a proper subset of pushdown automata, unlike deterministic finite automata and nondeterministic finite automata, which are equivalent (as demonstrated by the subset construction).[1]
Contents |
[edit] Formal Definition
A PDA M can be defined as a 7-tuple:

where
is a finite set of states
is a finite set of input symbols
is a finite set of stack symbols
is the start state
is the starting stack symbol
, where A is the set of accepting states
is a transition function, where
M is deterministic if it satisfies both the following conditions:
- For any
, the set
has at most one element. - For any
, if
, then
for every 
There are two possible acceptance criteria: acceptance by empty stack and acceptance by final state. The two are not equivalent for the deterministic pushdown automaton (although they are for the non-deterministic pushdown automaton). The languages accepted by empty stack are the languages that are accepted by final state, as well as have no word in the language that is the prefix of another word in the language.
[edit] Properties
Geraud Senizergues (1998) proved that the equivalence problem for deterministic PDA (i.e. given two deterministic PDA A and B, is L(A)=L(B)?) is decidable. The same problem for nondeterministic PDA is undecidable.
[edit] References
- ^ Michael Sipser (1997). Introduction to the Theory of Computation. PWS Publishing, 102. ISBN 0-534-94728-X.
[edit] Further reading
- Hamburger, Henry; Dana Richards (2002). Logic and Language Models for Computer Science. Upper Saddle River, NJ 07458: Prentice Hall, 284-331. ISBN 0-13-065487-6.
| Chomsky hierarchy |
Grammars | Languages | Minimal automaton |
|---|---|---|---|
| Type-0 | Unrestricted | Recursively enumerable | Turing machine |
| n/a | (no common name) | Recursive | Decider |
| Type-1 | Context-sensitive | Context-sensitive | Linear-bounded |
| n/a | Indexed | Indexed | Nested stack |
| n/a | Tree-adjoining etc. | (Mildly context-sensitive) | Embedded pushdown |
| Type-2 | Context-free | Context-free | Nondeterministic pushdown |
| n/a | Deterministic context-free | Deterministic context-free | Deterministic pushdown |
| Type-3 | Regular | Regular | Finite |
| n/a | Star-free | Counter-Free | |
| Each category of languages or grammars is a proper subset of the category directly above it, and any automaton in each category has an equivalent automaton in the category directly above it. |
|||


