Learn Epsilon-NFA implementation with interactive examples. Understand epsilon transitions, closure operations, and non-deterministic computation.
An Epsilon-NFA (ε-NFA) is a Non-deterministic Finite Automaton that allows epsilon (ε) transitions - transitions that can be taken without consuming any input symbol. This makes ε-NFAs even more flexible than regular NFAs for representing regular languages.
An ε-NFA is formally defined as a 5-tuple (Q, Σ, δ, q₀, F) where:
ε-NFA that accepts strings ending with "01" over alphabet {0, 1}
| State | Input 0 | Input 1 | ε |
|---|---|---|---|
| q₀ | {q₀} | {q₀} | {q₁} |
| q₁ | {q₂} | ∅ | ∅ |
| q₂ | ∅ | {q₃} | ∅ |
| q₃ | ∅ | ∅ | ∅ |
thE epsilon closure is fundamental to ε-NFA processing:
Build your own ε-NFA with epsilon transitions and test strings
Test strings with detailed epsilon closure visualization
Test multiple strings and analyze epsilon closure behavior
See how thE current ε-NFA can be converted to an equivalent NFA