Pushdown Automaton

Definition. A pushdown automaton (PDA) is a six-tuple P=(Q,Σ,Γ,δ,q0,F)P = (Q, \Sigma, \Gamma, \delta, q_0, F) where QQ, Σ\Sigma, q0q_0, and FF are as in an NFA, Γ\Gamma is the stack alphabet, and δ:Q×(Σ∪{ε})×(Γ∪{ε})→P(Q×(Γ∪{ε}))\delta : Q \times (\Sigma \cup \{\varepsilon\}) \times (\Gamma \cup \{\varepsilon\}) \to \mathcal{P}(Q \times (\Gamma \cup \{\varepsilon\})).

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.

Updated
Copyright © 2026 Jared Coleman. All rights reserved.