Definition
A pushdown automaton is a 6-tuple where:
- is a finite set of states.
- is a finite input alphabet.
- is the finite stack alphabet.
- , the transition function.
- is the start state.
- is the set of accepting (or finishing) states.
Computation
The machine utilizes a logical stack for memory. Transitions depend on the current state, input symbol, and the symbol popped from the top of the stack.
Configuration
The configuration of a pushdown automaton at each timestep is a 3-tuple :
- The control state .
- The stack .
- The remaining word .
Initial configuration
Given an input word , start with configuration
Transitions
Let be the current state.
- If is empty, then reject, else pop off .
- let
Language Class
Nondeterministic PDAs accept Context-Free Languages. Deterministic PDAs accept a strict subset known as deterministic context-free languages.