How statement and proof provenance work
The first chip identifies the source of the statement or construction; the second identifies the source of its local proof or verification.
- Literature-sourced: the exact statement appears in a cited source; only wording and notation differ.
- AI-adapted: a semantically identical restatement of literature-sourced material, modulo indexing, notation, and boundary cases adopted by the library.
- AI-generated: a genuinely novel statement formulated by AI, with no source for the claim itself.
These labels describe origin, not correctness: citations and verification chips remain separate evidence.
Nondeterministic Finite Automata and Subset Construction
1 · Prerequisites
- Construction of the Natural Numbers
- Construction of the Real Numbers via Cauchy Sequences
- Construction of the Real Numbers via Dedekind Cuts
- Countability and Uncountability
- Deterministic Finite Automata and Regular Languages
- Finite Counting, Factorials and Binomial Coefficients
- Finite-Automata Transition and Determinisation Interfaces
- Formal Languages, Encodings, and Decision Problems
- Foundations of the Real Numbers for Analysis
- Linear Recurrences and Rational Generating Functions
- Relations, Functions, and Quotients
- Roots, Rational Powers, and Classical Inequalities
- The ZFC Axioms and the Basic Set Constructions
2 · Summary
This page develops epsilon-NFAs from their state-set semantics through the subset construction, then isolates three standard consequences: epsilon-moves can be eliminated, regular operations admit direct NFA constructions, and the deterministic simulation may require exponentially many states.
3 · Logical flowchart
4 · Definitions, theorems and proofs
Nondeterministic finite automata with epsilon-moves
Definition
Let be an alphabet. A nondeterministic finite automaton with epsilon-moves is a quintuple such that:
- is a finite set of states.
- is the start state.
- is the set of accepting states.
- assigns to each pair a subset , equivalently an element of in the sense of The power set .
Thus a letter may lead from one state to several next states, and an -transition changes state without consuming an input symbol.
Remarks
-
A DFA in the sense of Deterministic finite automata is the special case in which every set is a singleton and every is empty.
-
The symbol is not an extra alphabet letter. It records a move that reads nothing.
The epsilon-closure of a set of NFA states
Definition
Let be an NFA with epsilon-moves, and let .
The epsilon-closure of , written , is the set of all states for which there exist a state and a finite sequence of states such that for every .
Equivalently, is the least subset with and for every .
For a single state we abbreviate
Epsilon-closure is a closure operator
Statement
Let be an NFA with epsilon-moves and let be subsets of its state set. Then:
- ;
- if , then ;
- .
Facts & Assumptions
Given: An NFA with epsilon-moves and subsets of its state set.
By The epsilon-closure of a set of NFA states, a state lies in exactly when it is reachable from some state of by a finite chain of -transitions.
Proof
For every , the length-zero -chain from to itself shows by [L1]. Hence .
Assume and let . By [L1], some -chain starts in a state of and ends at ; because that start state also lies in , the same chain shows . Thus .
Step 1.1 gives . For the reverse inclusion, let . By [L1], there is an -chain from some to , and again by [L1] there is an -chain from some to . Concatenating the two finite chains gives an -chain from to , so . Therefore .
The extended transition function of an NFA
Definition
Let be an NFA with epsilon-moves.
Its extended transition function is the map defined recursively by and for every state set , every word , and every letter .
For a single state we abbreviate
Thus is the set of states that can be reached by starting in some state of , taking any number of -moves before and between letter moves and after the final letter move, and reading the word .
Acceptance of a word by an NFA and the recognized language
Definition
Let be an NFA with epsilon-moves as in Nondeterministic finite automata with epsilon-moves. For and , define to be the set of states for which there are a finite state list and labels such that , for , and deleting every label from the label list gives exactly . The case is allowed and reads the empty word. Put for a state .
This is a well-defined subset of the finite state set . Writing , it satisfies Indeed, split a run immediately before and after its last non-epsilon move: its prefix reads , that move reads , and its suffix uses only epsilon moves. Conversely concatenating these three finite pieces constructs a run reading . Thus the finite-run definition also supplies the usual recursively extended transition, including epsilon moves before and after the input.
A word is accepted by when
The language recognized by is This is a language over in the sense of Languages over an alphabet.
Remarks
-
NFA acceptance is existential: one accepting computation path is enough.
-
Rejection means that no computation path ends in an accepting state after the whole input has been read.
Every DFA is an NFA
Statement
Let be a DFA. Then there is an NFA over the same alphabet with .
Facts & Assumptions
Given: A DFA .
By Deterministic finite automata, for each the DFA has exactly one next state .
By Acceptance of a word by a DFA and the recognized language, a word is accepted by exactly when the DFA run from on ends in a state of .
By Acceptance of a word by an NFA and the recognized language, a word is accepted by an NFA exactly when the reachable state set after reading meets its accepting set.
Proof
Define an NFA by for and for every state . Step [L1] makes this well-defined, and has the same states, start state, and accepting states as .
We claim that for every state and every word , the NFA reachable set from on is the singleton containing the DFA state reached from on . This is proved by induction on : for there are no -moves, so the reachable set is ; for , the NFA applies the same one-letter transition as the DFA and then again has no -moves.
By step 2.1 and [L2], a word reaches an accepting DFA state exactly when the NFA reachable set on contains an accepting state. By [L3], this is exactly the NFA acceptance condition, so .
The subset-construction DFA
Definition
Let be an NFA with epsilon-moves.
The subset-construction DFA associated to is where and
Thus each DFA state records the whole set of NFA states that may be active after a given input prefix.
Subset construction tracks exactly the reachable NFA state set
Statement
Let be an NFA with epsilon-moves, and let be its subset-construction DFA.
Then for every word , where is the extended transition of .
Facts & Assumptions
Given: An NFA and its subset-construction DFA .
By The subset-construction DFA, the start state of is and its one-letter transition is .
By The extended transition function of an NFA, the extended NFA transition satisfies and .
Proof
For the empty word, by the DFA recursion, while [L1] and [L2] identify both sides with .
Fix a successor word of the form .
Assume . Then for the successor word from step 1.2 the DFA recursion gives , so [L1] turns this into .
Substituting the induction hypothesis into step 2.1 yields , and [L2] identifies that set with .
Steps 1.1, 1.2, 2.1, and 3.1 prove by induction on that for every word .
The subset construction preserves the recognized language
Statement
Let be an NFA with epsilon-moves, and let be its subset-construction DFA. Then
Facts & Assumptions
Given: An NFA and its subset-construction DFA .
The finite-run transition and its word recursion are supplied by Acceptance of a word by an NFA and the recognized language. Put and define The state set is finite by for finite , contains the indicated start state, and every transition is a uniquely defined subset of . Thus this is a total DFA as in Deterministic finite automata, including the empty subset as a state. Its extended transition exists by The extended transition function exists and is unique.
By Acceptance of a word by a DFA and the recognized language, accepts exactly when its reached DFA state is accepting.
By Acceptance of a word by an NFA and the recognized language, accepts exactly when its reachable state set on contains an accepting state.
Proof
Induct on the word length to show . For the empty word, both sides equal . If the equality holds for , the DFA recursion and [L1] give the value at as , which is exactly by the finite-run recursion. This proves the identity for every word.
In the subset construction, a DFA state is accepting exactly when it contains an accepting NFA state. Therefore [L2] and step 1.1 show that accepts exactly when contains an accepting state.
By [L3], the condition from step 2.1 is exactly the statement that accepts . Thus accepts precisely the words that accepts, so .
DFAs and NFAs recognize the same languages
Statement
Let be an alphabet and let .
Then is recognized by some NFA over if and only if is regular.
Facts & Assumptions
Given: A language .
By Regular languages, is regular exactly when some DFA over recognizes .
Every total DFA embeds as an epsilon-NFA with the same recognized language (A DFA embeds as an epsilon-free NFA).
The exact subset-construction invariant produces a total DFA recognizing the language of each epsilon-NFA (Subset construction and its exact reachability invariant).
The NFA recognition convention is the finite epsilon-closure and word-transition construction (Epsilon-NFAs, finite epsilon closure, and extended word transition).
Proof
If is regular, then [L1] gives a DFA recognizing , and [L2] turns that DFA into an epsilon-NFA recognizing the same language under [L4].
If some NFA recognizes , interpret it with [L4]. Then [L3] gives a total DFA recognizing the same language, and [L1] therefore shows that is regular.
Steps 1.1 and 1.2 prove that is recognized by an NFA if and only if is regular.
Epsilon-moves can be eliminated from NFAs
Statement
For every NFA with epsilon-moves there exists an equivalent NFA with no epsilon-transitions.
Facts & Assumptions
Given: An NFA with epsilon-moves.
By The epsilon-closure of a set of NFA states, is the set of states reachable from by zero or more -moves.
By Acceptance of a word by an NFA and the recognized language, a word is accepted exactly when the reachable state set after the whole word meets the accepting set.
Proof
Define an epsilon-free NFA by for and , and by Thus one -move of does exactly what can do by any number of -moves, then one -move, then any number of -moves.
We claim that for every nonempty word , the states reachable from in after reading are exactly the states reachable from in after reading . The proof is by induction on : for one letter this is the definition of , and appending one more letter repeats the same closure-before-and-after simulation.
If , then accepts exactly when , which is exactly the condition from step 1.1. If , then step 2.1 and [L2] show that and have the same reachable accepting states after reading . Hence .
NFAs can be constructed for union, concatenation, and Kleene star
Statement
Let be languages recognized by NFA's over the same alphabet . Then , , and are also recognized by NFA's over .
Facts & Assumptions
Given: NFA's and over with recognized languages and .
By Acceptance of a word by an NFA and the recognized language, an NFA accepts a word exactly when some full computation path ends in an accepting state.
By Boolean operations on languages over a fixed alphabet, is the set-theoretic union of the two languages.
By Language concatenation, powers, and Kleene star, and is the set of finite concatenations of words of .
Proof
For union, first replace and by disjoint isomorphic copies. Add a fresh start state with -transitions to the copied start states, keep all copied transitions, and take the union of the two copied accepting sets as the new accepting set. By [L1] and [L2], every accepting run chooses one copy at the start and then stays inside that copy, so a word is accepted exactly when one of the two original machines accepts it. Thus the new language is .
For concatenation, take disjoint copies of and , use the copied start state of as the new start state, add an -transition from each copied accepting state of to the copied start state of , and designate only the copied accepting states of as accepting. Then [L1] and [L3] show that a successful run is exactly a decomposition of the input as with and , so the new machine recognizes .
For star, add a fresh start state, make it the only accepting state, add an -transition from it to the old start state of , and add -transitions from each old accepting state back to the fresh start state. By [L1] and [L3], every accepting run chooses finitely many factors from , and every finite concatenation of words of is accepted. Therefore the language recognized is .
Hence NFA's can be built for union, concatenation, and Kleene star.
The subset construction can require exponentially many states
Statement
For each integer there exists a language over that is recognized by an NFA with states but by no DFA with fewer than states.
Facts & Assumptions
Given: An integer and the alphabet .
By Nondeterministic finite automata with epsilon-moves, an NFA may branch into several possible next states on the same input symbol.
By Deterministic finite automata, a DFA has exactly one state after each input prefix, so two prefixes that land in the same state must have the same future acceptance behavior.
Proof
Let be the set of words over for which at least one letter occurs an odd number of times. An NFA for has one start state and, for each , two parity states that track whether the number of 's seen so far is even or odd. By [L1], the machine may nondeterministically choose which letter to track, and then it accepts exactly when that tracked count ends odd. Thus has an NFA with states.
For a prefix , let be its parity vector, whose th coordinate records whether has appeared an even or odd number of times in . Distinct parity vectors are distinguishable: if , append the suffix consisting of exactly those letters whose parity is odd in . The resulting word from has all-even parity and is not in , while the resulting word from still has at least one odd coordinate and lies in .
Therefore no DFA can place two different parity vectors in the same state, because [L2] would then force the same acceptance behavior for the distinguishing suffix from step 1.2. Since there are parity vectors, every DFA for needs at least states.
So the subset-construction simulation of NFA's by DFA's can require exponentially many states.
FALSE: an NFA accepts only if every branch accepts
Statement
False claim: an NFA accepts a word only when every computation branch on that word accepts.
Facts & Assumptions
Given: The NFA over with states , start state , accepting state , loops and , and extra transitions .
The statement refuted is: an NFA accepts a word only when every computation branch accepts.
By Acceptance of a word by an NFA and the recognized language, an NFA accepts a word exactly when the set of states reachable after reading the word contains an accepting state.
Refutation
On input , one computation branch takes the transition at the first letter and then follows the two -transitions to , so this branch accepts. Another branch stays on the loop at the first letter, reaches again after reading the first , and then has no way to complete the suffix to , so that branch rejects.
Step 1.1 shows that after reading an accepting state is reachable, even though not every branch accepts. Therefore [L1] says the machine accepts .
This contradicts [A1]. NFA acceptance is existential over branches, not universal.
FALSE: epsilon is an input symbol
Statement
False claim: in an NFA with epsilon-moves, the symbol is one more input symbol in the alphabet.
Facts & Assumptions
Given: An NFA with epsilon-moves over an alphabet .
The statement refuted is: is an input symbol of the machine.
By Nondeterministic finite automata with epsilon-moves, the alphabet is , while appears only in the transition domain to denote a move that consumes no input symbol.
Refutation
The definition distinguishes the alphabet letters from -moves: letters of are read from the input word, whereas an -transition changes state without reading any letter.
So is not part of the input alphabet itself. It is extra transition notation for "read nothing."
This contradicts [A1]. Therefore the claim is false.
5 · Examples, counterexamples and false statements
None yet.
Sources
- Jean Gallier and Jocelyn Quaintance, Introduction to the Theory of Computation: Some Notes for CIS511
- John Watrous, Introduction to the Theory of Computing, Lecture 3: Nondeterministic finite automata
- John Watrous, Introduction to the Theory of Computing, Lecture 4: Regular operations and regular expressions