Overview
DFA construction, often called subset construction, treats each reachable set of NFA states as one deterministic state. Transitions are computed by moving on a symbol and taking closure as required.
Builds a deterministic finite automaton by grouping NFA state sets into DFA states.
Compact metadata for implementation and discovery.
DFA construction, often called subset construction, treats each reachable set of NFA states as one deterministic state. Transitions are computed by moving on a symbol and taking closure as required.
Quick facts
Runtime and memory behavior at a glance.
Best
O(states)
Average
O(2^n)
Worst
O(2^n)
Space
O(2^n)
DFA_next(S, char) = epsilon_closure(move(S, char))Builds a deterministic transition from a set of NFA states.
Show grammar items, parser states, and consumed input as parsing progresses.
Subset construction trades nondeterminism for potentially many deterministic states.
What each reference supports for this entry.
Automata textbook support for DFA Construction's state-machine construction, language recognition, and correctness model.
Good next jumps from the relationship graph, ranked for useful discovery.
Pattern Matching · Core
Regular-expression matching can compile patterns to finite automata before scanning text.
Compare with thisParsing · Core
A regex engine may build an NFA with Thompson's construction before DFA construction.
Compare with thisA regex engine may build an NFA with Thompson's construction before DFA construction.
NFA simulation keeps sets of active states at run time instead of materializing the full DFA.