Epsilon () Transitions in DFA and NFA
Core concept: what are -transitions?
[epsilon transition]{def="A transition on the empty string , consuming no input symbol"} appear in nondeterministic automata where the transition function may move to another state without reading an input symbol. In contrast, a DFA consumes exactly one input symbol per transition, and its transition function is defined for actual input symbols (not for -moves). This distinction is why NFA commonly supports -moves via an [epsilon-closure]{def="Set of states reachable from a state using only transitions"}.
A typical formal model is:
- [NFA with ]{def="NFA whose transition relation allows moves labeled by "}: transition relation includes as a label.
- DFA: transition function is defined for input symbols; -moves are not part of the standard DFA definition.
Therefore, for the multiple-choice statement:
“Epsilon () transitions are allowed in …”
the correct choice is:
(iii) NFA only.
Visualizing the difference
Footnotes
-
Wikipedia - Deterministic finite automaton (DFA) https://en.wikipedia.org/wiki/Deterministic_finite_automaton - Defines DFA transition as a function over and standard model without -labelled moves. ↩
NFA with ε-Transitions (Intuition + Formalism)
Why DFA doesn’t allow transitions (standard model)
In the standard formal definition of a DFA, the transition function is defined as (or equivalently, exactly one next state per state and input symbol). That model has no place for an empty-string label. So moves would violate the premise that each step corresponds to reading one symbol from .
Meanwhile, an [NFA with -moves]{def="NFA whose transition relation allows moves labeled by "} uses a transition relation allowing edges labeled by , enabling the automaton to “move for free” before (or between) consuming input symbols. This behavior is handled by [epsilon-closure]{def="Set of states reachable from a state using only transitions"} during simulation and subset construction.
How ε-transitions are used in an NFA simulation (high-level)
- 1Step 1
From the start state(s), add all states reachable using only transitions.
- 2Step 2
For the current input symbol , follow all transitions labeled from every state in the current set.
- 3Step 3
After moving on , again include all states reachable using only transitions.
- 4Step 4
"Continue until the input is exhausted, then accept if any current state is final."
This mechanism directly relies on the existence of transitions in the NFA model. [epsilon-closure]{def="Set of states reachable from a state using only transitions"} formalizes the “expand again” step. NFA simulation with moves follows this pattern.
Footnotes
-
Wikipedia - Nondeterministic finite automaton (NFA) https://en.wikipedia.org/wiki/Nondeterministic_finite_automaton - Introduces NFAs and discusses -transitions (“moves without consuming input”). ↩
-
Relationship between DFA and NFA with ε-moves
DFA transition is symbol-driven
Definition levelDFA uses a deterministic transition mapping for input symbols, without labels in the standard definition. "
Footnotes
-
Wikipedia - Deterministic finite automaton (DFA) https://en.wikipedia.org/wiki/Deterministic_finite_automaton - Defines DFA transition as a function over and standard model without -labelled moves. ↩
NFA with ε adds free moves
NFA extensionNFA allows transitions, enabling moves without consuming input. "
Footnotes
-
Wikipedia - Nondeterministic finite automaton (NFA) https://en.wikipedia.org/wiki/Nondeterministic_finite_automaton - Introduces NFAs and discusses -transitions (“moves without consuming input”). ↩
ε-closure enables elimination or compilation
Conversion ideaFormal constructions use -closure to remove transitions (e.g., via equivalent NFA without ε, and then subset construction for DFA). "
Footnotes
-
Wikipedia - Nondeterministic finite automaton (NFA) / -closure and conversion ideas https://en.wikipedia.org/wiki/Nondeterministic_finite_automaton - Covers -closure concept used in conversion/elimination of -transitions and constructing equivalent automata. ↩
Which automata permit ε-transitions?
Standard formal models
Common exam confusion
Pro Tip
When you see “ transitions,” immediately think NFA plus [epsilon-closure]{def="Set of states reachable from a state using only transitions"}. In standard DFA definitions, the move depends only on consuming a symbol from .
Footnotes
-
Wikipedia - Deterministic finite automaton (DFA) https://en.wikipedia.org/wiki/Deterministic_finite_automaton - Defines DFA transition as a function over and standard model without -labelled moves. ↩
Warning: wording matters
Some textbooks use nonstandard conventions (e.g., extending DFA transition functions). For standard theory exam questions, treat DFA as symbol-driven only, and treat -moves as belonging to NFA-.
Footnotes
-
Wikipedia - Deterministic finite automaton (DFA) https://en.wikipedia.org/wiki/Deterministic_finite_automaton - Defines DFA transition as a function over and standard model without -labelled moves. ↩
Knowledge Check
Epsilon () transitions are allowed in