- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Construct ∈-NFA of Regular Language L = b + ba*
The ε transitions in Non-deterministic finite automata (NFA) are used to move from one state to another without having any symbol from the input set Σ.
ε-NFA is defined in 5 tuples representation
{Q, q0, Σ, δ, F}
Where,
δ − Q × (Σ∪ε)→2Q
Q − Finite set of states
∑ − Finite set of the input symbol
q0 − Initial state
F − Final state
δ − Transition function
NFA without ε transition
NFA is defined in 5 tuples representation
{Q, q0, Σ, δ, F}
Where,
δ − Q X Σ→ 2Q
Q − Finite set of states
∑ − Finite set of the input symbol
q0 − Initial state
F − Final state
δ − Transition function
NFA and NFA with epsilon both are almost the same; the only difference is their transition function.
Let’s consider the given language L = b+ba*
Steps for construction of ε-NFA
Step 1 − NFA with epsilon for a+ is given below −
Here a+ means there must be at least one ‘a’ in the expression which is preceded by epsilon and succeeded by epsilon. It is nothing but there can be more than one ‘a’ in the expression.
Step 2 − NFA with epsilon for a* is given below −
a* means there can be any number of ‘a’ in the expression, even 0 ( if the input symbol is null then also it is valid).
Step 3 − NFA with epsilon for (a+b) is given below −
It accepts either a or b as an input, and both go to the final state.
Step 4 − NFA with epsilon for ab is given below −
Concatenating a and b with epsilon, and a must followed by b then only it can reach the final state.
Step 5 − The final NFA with epsilon for the given language is as follows −
L =b + ba* is divided into two parts.
The first part is simply ‘b’ which is easy to construct. Since both the terms are connected by using ‘+’ sign, there will be two paths coming out of the first node. The second part is to be drawn with the help of second step of construction, a* which is simply preceded by b.
- Related Articles
- Construct ∈-NFA of Regular Language L = {ab,ba}
- Construct ∈-NFA of Regular Language L = (00)*1(11)*
- Construct ∈-NFA of Regular Language L = 0(0+1)*1
- Construct ∈-NFA of Regular Language L = (0+1)*(00+ 11)
- Construct a ∈-NFA for the language L = (a* + b*)
- Construct NFA with Epsilon moves for regular expression a+ba*.
- Construct NFA for the following language and convert it into DFA using the algorithm - L = (aa+ (bb*)c*)
- Construct a Turing Machine for language L = {0n1n2n | n≥1}
- Construct a Turing Machine for language L = {ww | w ∈ {0,1}}
- Construct a TM for the language L= {ww : w ∈ {0,1}}
- Construct a Turing Machine for language L = {wwr | w ∈ {0, 1}}
- Construct a PDA for language L = {0n 1m2m3n | n>=1, m>=1}
- What is an acceptance of language by NFA with Epsilon?
- Construct a Finite Automata for the regular expression ((a+b)(a+b))*.
- Program to construct DFA for Regular Expression C( A + B)+
