Pushdown Automaton
Definition. A pushdown automaton (PDA) is a six-tuple where , , , and are as in an NFA, is the stack alphabet, and .
A PDA is an NFA with a stack: each move may consume an input symbol, pop a stack symbol, and push a stack symbol, any of which may be skipped. The stack holds unboundedly much information but only its top is reachable, which is exactly the memory needed to match nested structure. Unlike the DFA and NFA, which the subset construction proves equivalent, deterministic PDAs are strictly weaker than nondeterministic ones; the even-length palindromes separate them. Defined in Lecture 5.