NFA with ∈ moves is exactly same as NFA without ∈ moves. But differece exist in the transition function δ. δ must include information about ∈ transitions.

NFA with ∈-Moves has 6 tuples (Q, Σ, δ, q0, F).Where,

Q = finite set of states.

Σ = finite set input symbols.

δ = transition function that maps Q × (Σ ∪{∈}) to 2^{Q}.

q0 = initial state.

F = set of final states.

The non-deterministic finite automaton can be extended to include the transitions on null/empty input ∈.

For example,

In this NFA with epsilon,

It accept an input string ‘aabc’.

Or string as number of a’s followed by number of b’s followed by number of c’s.

The string ‘aabc’ is accepted by the NFA by following the path with labels a, a, ∈, b, ∈, c.

Transition table for above NFA with ∈NFA’s with ∈-transitions are closely related to regular expressions and useful in proving the equivalence between the classes of languages accepted by finite automata and regular expressions.

**∈-closure**

**∈-closure** of a state q is a set of states following by all transitions of q that are labeled as ∈.

∈-closure (q0) = (q0, q1, q2)

∈-closure (q1) = (q1, q2)

∈-closure (q2) = (q2)

### NFA with ∈ to NFA without ∈

**Transition table NFA with ∈ **

First find out ∈ closure:∈-closure

(q0) = (q0, q1, q2)

∈-closure (q1) = (q1, q2)

∈-closure (q2) = (q2)

**Transition table NFA without ∈ **

## Q1: What is an ε-NFA?

**Ans:** An ε-NFA is a type of automaton used in computer science and mathematics to recognize regular languages. It is a theoretical model of computation that extends the traditional NFA model by allowing for ε-moves or ε-transitions, which are transitions that occur without consuming any input symbols.

## Q2: How is an ε-NFA different from a standard NFA?

**Ans:** An ε-NFA allows for ε-transitions, while a standard NFA does not. An ε-transition allows the machine to move from one state to another without reading any input. This means that an ε-NFA can be in multiple states simultaneously, making it more powerful than a standard NFA.

## Q3: What is the significance of an ε-transition in an ε-NFA?

**Ans:** An ε-transition allows the ε-NFA to transition from one state to another without consuming any input symbol. This means that the ε-NFA can transition to a set of states, including states that cannot be reached by reading any input symbol from the current state.

## Q4: How is the transition function defined in an ε-NFA?

**Ans:** The transition function in an ε-NFA is defined as a function that maps a state and an input symbol, or ε, to a set of possible next states. Formally, the transition function can be defined as: δ: Q × (Σ ∪ {ε}) → P(Q), where Q is the set of states, Σ is the input alphabet, and P(Q) is the power set of Q.

## Q5: How is the language recognized by an ε-NFA defined?

**Ans:** The language recognized by an ε-NFA is defined as the set of all input strings that cause the ε-NFA to end up in a final state. Formally, L(N) = {w | δ(q0, w) ∩ F ≠ ∅}, where N is the ε-NFA, q0 is the initial state, w is an input string, δ is the transition function, and F is the set of final states.

## Q6: How can you convert an ε-NFA to a standard NFA?

**Ans:** You can convert an ε-NFA to a standard NFA using the ε-closure algorithm. This algorithm works by computing the ε-closure of each state in the ε-NFA. The ε-closure of a state is the set of all states that can be reached from the state by following any number of ε-transitions. After computing the ε-closure for each state, you can construct a new NFA that simulates the behavior of the ε-NFA using only standard NFA transitions.