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
Explore Related Topics
Regular Expression Equivalence: Which Pairs Generate the Same Language?
NFA–Minimized DFA State Bounds: Necessarily True Statements
Which Automaton Accepts Regular Languages? The Correct Answer Is DFA
The deterministic finite automaton (DFA) is the canonical model that exactly accepts regular languages, whereas PDA, LBA, and Turing machines recognize strictly larger language families.
- A language is regular iff some DFA accepts it: .
- DFA ↔ regular languages; PDA ↔ context‑free; LBA ↔ context‑sensitive; Turing machine ↔ recursively enumerable.
- Regular languages form the base of the hierarchy: .
- DFA’s finite memory limits it to patterns like “ends with 01” or “even number of 1’s”, but it cannot handle unbounded counting such as .