SlideShare a Scribd company logo
1 of 35
Regular Languages
Rama Bansal 2
Outline
• Regular expressions
• Regular languages
• Equivalence between languages
accepted by FA and regular languages
• Closure Properties
Rama Bansal 3
Regular Expressions
Regular expression over alphabet 
•  is a regular expression.
•  is a regular expression.
• For any a, a is a regular expression.
• If r1 and r2 are regular expressions, then
– (r1 + r2) is a regular expression.
– (r1  r2) is a regular expression.
– (r1
* ) is a regular expression.
• Nothing else is a regular expression.
Rama Bansal 4
RegularLanguages
•  is a regular language corresponding to the regular
expression .
• {} is a regular language corresponding to the
regular expression .
• For any symbol a, {a} is a regular language
corresponding to the regular expression a.
• If L1 and L2 are regular languages corresponding to
the regular expression r1 and r2, then
– L1L2, L1L2, and L1
* are regular languages
corresponding to (r1 + r2) , (r1  r2), and (r1
*).
Rama Bansal 5
Simple examples
Let = {0,1}.
• {*| does not contain 1’s}
– (0*)
• {*| contains 1’s only}
– (1(1*)) (which can can be denoted by (1+))
• *
– ((0+1)*)
• {*| contains only 0’s or only 1’s}
– ((00*)+(11*))
0* + 1*  (0+1)*
Rama Bansal 6
Some more notations
Let = {0,1}.
• Parentheses in regular expressions can be
omitted when the order of evaluation is clear.
– ((0+1)*)  0+1*
– ((0*)+(1*)) = 0* + 1*
• For concatenation,  can be omitted.
• r r r… r is denoted by rn.
n times
Rama Bansal 7
More complex examples
Let  = {0,1}.
• {*|  contains odd number of 1’s}
– 0*(10*10*)*10*
• {*| any two 0’s in  are separated by
three 1’s}
– 1*(0111)*01* + 1*
• {*|  is a binary number divisible by 4}
– (0+1)*00
• {*|  does not contain 11}
– 0*(10+)* (1+) or (0+10)* (1+)
Rama Bansal 8
Notation
Let r be a regular expression.
The regular language corresponding
to the regular expression r is
denoted by L(r).
Rama Bansal 9
Some rules for language
operations
Let r, s and t be languages over {0,1}
r +  =  + r = r
r + s = s + r
r = r = r
r = r = 
r(s + t) = rs + rt
r+ = r r*
Rama Bansal 10
Rewrite rules for regular
expressions
Let r, s and t be regular expressions over {0,1}.
* = 
* = 
(r + )+ = r*
r* = r*(r + ) = r* r* = (r*)*
(r*s*)* = (r + s)*
Rama Bansal 11
Closure properties of the class of
regular languages (Part 1)
Theorem: The class of regular languages is closed
under union, concatenation, and Kleene’s star.
Proof: Let L1 and L2 be regular languages over .
Then, there are regular expressions r1 and r2
corresponding to L1 and L2.
By the definition of regular expression and regular
languages, r1+r2 ,r1r2, and r1
* are regular
expressions corresponding to L1L2, L1L2, and L1
*.
Thus, the class of regular languages is closed under
union, concatenation, and Kleene’s star.
Rama Bansal 12
Equivalence of language accepted by
FA and regular languages
To show that the languages accepted by FA and
regular languages are equivalent, we need to prove:
• For any regular language L, there exists an FA M
such that L = L(M).
• For any FA M, L(M) is a regular language.
Rama Bansal 13
For any regular language L, there
exists an FA M such that L = L(M)
Proof: Let L be a regular language.
Then,  a regular expression r corresponding to L.
We construct an NFA M, from the regular expression r,
such that L=L(M).
Basis:
If r = , M is
If r = , M is
If r = {a} for some a  , M is
s
fs
a
s f

Rama Bansal 14
Proof (cont’d)
Induction hypotheses: Let r1 and r2 be regular expressions
with less than n operations. And, there are NFA’s M1
and M2 accepting regular languages corresponding
to L(r1) and L(r2).
Induction step: Let r be a regular expression with n
operations. We construct an NFA accepting L(r).
r can be in the form of either r1+r2, r1r2, or r1
*, for
regular expressions r1 and r2 with less than n
operations.
Rama Bansal 15
Proof (cont’d)
If r = r1+r2, then M is
If r = r1r2, then M is
If r = r1
*, then M is
Therefore, there is an NFA accepting L(r) for any
regular expression r.
f2
f1
s
s1
s2


f2s2s1 f1

 
s1 f1s f


Rama Bansal 16
Constructing NFA for regular
expressions
• 0*(10+)*
(1+)
1 0
0


0



1
0*
10+
(10+)*
1

1+
s





Rama Bansal 17
Some Observations
• Can these
two states
be merged?
NO
• Be careful
when you
decide to
merge some
states.
1 0
0


0



1
s





Rama Bansal 18
For any FA M, L(M) is a regular
language
Proof: Let M = (Q, , , q1, F) be an FA, where Q={qi| 1
 i  n} for some positive integer n.
Let R(i, j, k) be the set of all strings in that drive M
from state qi to state qj while passing through any
state ql , for l  k. (i and j can be any states)
qi qj
ql
ql'
Rama Bansal 19
Proof (cont’d)
R(i, j, 0) = +qj (qi, a) a if i j
R(i, j, 0) = +qj (qi, a) a +  if i= j
R(i, j, k) = R(i, j, k-1) + R(i, k, k-1) R(k, k, k-1)* R(k, j, k-1)
qi qj
a
qi
a
qi
qj
qk
q1
q2
qk-1
R(i, j, k-1)
R(i, k, k-1)
R(k, k, k-1)*
R(k, j, k-1)
Rama Bansal 20
Proof (cont’d)
Then, L(M) = + R(1, f, n) for all qf in F.
R(i, j, 0) = +qj (qi, a) a if i j
R(i, j, 1) = {a | (qi, a) = qj} +  if i= j
R(i, j, k) = R(i, j, k-1) + R(i, k, k-1) R(k, k, k-1)* R(k,
j, k-1)
Rama Bansal 21
Proof (cont’d)
We prove that L(M) is a regular language by
showing that there is a regular expression
corresponding to L(M), by induction.
Basis: R(i, j, 0) corresponds to a regular expression a
if i j and a +  if i= j for some a.
Induction hypotheses: Let R(i, j,k-1) correspond to a
regular expression, for any i, j, k  n.
Rama Bansal 22
Proof (cont’d)
Induction step: R(i, j, k) = R(i, j, k-1)  R(i, k, k-1) R(k,
k, k-1)* R(k, j, k-1) also corresponds to a regular
expression because R(i, j, k-1), R(i, k, k-1), R(k, k, k-
1) and R(k, j, k-1) correspond to some regular
expressions and union, concatenation, and
Kleene’s star are allowed in regular expressions.
Therefore, L(M) is also a regular language because
L(M) = + R(1, f, n) for all qf in F.
Rama Bansal 23
Find a regular expression for
a DFA
q4
q2
q1 q3
q5
b
b
b
a
a a


a*b
ba*b
a*ba*b
a*ba*
ba*ba*
ba*ba*b
a*ba* +
a*ba*b (ba*ba*b+a)* ba*ba*
a*ba* (+b(ba*ba*b+a)* ba*ba*)
Rama Bansal 24
Pumping Lemma
Let L be a regular language.
Then, there exists an integer
n0 such that for every string
x in L that |x|n, there are
strings u, v, and w such that
– x = u v w,
– v  ,
– |u v|  n, and
– for all k  0, u vk w is also in L.
Any language L is not a
regular language if for any
integer n0 , there is a
string x in L such that
|x|n, for any strings u, v,
and w,
– x  u v w, or
– v = , or
– Not (|u v|  n), or
– there is k  0, u vk w is not in
L
Rama Bansal 25
Pumping Lemma
Any language L is not a regular language if
• for any integer n0 ,
• there is a string x in L such that |x|n,
• for any strings u, v and w, such that x = u v
w, v  , and |u v|  n,
–there is k  0, u vk w is not in L
Rama Bansal 26
Using Pumping Lemma
• Given a language L.
• Let n be any integer 0 .
• Choose a string x in L that |x|n.
• Consider all possible ways to chop x into u, v
and w such that v  , and |uv|  n.
• For all possible u, v, and w, show that there
is k  0 such that u vk w is not in L.
• Then, we can conclude that L is not regular.
If you pick a wrong x, your
proof will fail ! It does not
mean that L is regular !!!!!
Rama Bansal 27
Prove {0i 1i| i  0} is not regular
Let L = {0i1i| i  0}.
Let n be any integer 0.
Let x = 0n 1n.
Make sure that x is in L and |x|n.
The only possible way to chop x into u, v, and w such that
v, and |u v|  n is:
u = 0p, v = 0q, w = 0n-p-q 1n, where 0p<n and 0<qn
Show that there is k  0, u vk w is not in L.
u vk w = 0p 0qk 0n-p-q 1n = 0p+qk+(n-p-q) 1n = 0n+q(k-1) 1n
If k  1, then n+q(k-1)  n and u vk w is not in L.
Then, L is not regular.
Rama Bansal 28
Prove {0i1i| i  0} is not regular
Let L = {0i1i| i  0}.
Let n be any integer 0, and m= n/2.
Let x = 0m 1m.
Make sure that x is in L and |x|n.
Possible ways to chop x into u, v, and w such that v  , and
|u v|  n are:
– u = 0p, v = 0q, w = 0m-p-q 1m, where 0p<m and 0<qm
– u = 0p, v = 0 m-p 1q, w = 1m-q, where 0p<m and 0<qm
– u = 0 m 1p, v = 1q, w = 1m-p-q, where 0p<m and 0<qm
Rama Bansal 29
Prove {0i1i| i  0} is not regular
Show that there is k  0, u vk w is not in L.
– u=0p, v=0q, w= 0m-p-q 1m, where where 0p<m and
0<qm
u vk w = 0p 0qk 0m-p-q 1m = 0m+q(k-1)1m is not in L if k1.
– u=0p, v=0m-p 1q, w=1m-q, where where 0p<m and
0<qm
u vk w = 0p (0m-p 1q)k 1m-q is not in L if k  1.
– u=0m 1p, v=1q, w=1m-p-q, where where 0p<m and
0<qm
u vk w = 0m 1p 1qk 1m-p-q = 0m 1m+q(k-1) is not in L if k1.
Then, L is not regular.
Rama Bansal 30
Prove {1i|i is prime} is not
regular
Let L = {1i| i is prime}.
Let n be any integer 0.
Let p be a prime  n, and w = 1p.
Only one possible way to chop w into x, y, and z
such that y  , and |x y|  n is:
x = 1q, y = 1r, z = 1p-q-r, where 0q<n and 0<r<n
Show that there is k  0, x yk z is not in L.
x yk z = 1q 1rk 1p-q-r = 1q+rk+(p-q-r) = 1p+r(k-1)
If k=p+1, then p+r(k-1) = p(r+1), which is not a prime.
Then, x yk z is not in L.
Then, L is not regular.
Rama Bansal 31
Using closure property
Let  be a binary operation on languages and
the class of regular languages is closed under
. ( can be , , or -)
• If L1 and L2 are regular, then L1L2 is regular.
• If L1L2 is not regular, then L1 or L2 are not
regular.
• If L1L2 is not regular but L2 is regular, then
L1 is not regular.
Rama Bansal 32
Prove that {w{0,1}*| the number of 0’s
and 1’s in w are equal} is not regular
Let L={w{0,1}*| the number of 0’s and 1’s in
w are equal}.
Let R= {0i1i| i  0}.
R = 0*1*  L
We already prove that R is not regular.
But 0*1* is regular.
Then, L is not regular.
Rama Bansal 33
Using closure property
Let  be a unary operation on a
language and the class of regular
languages is closed under .
( can be complement or *)
• If L is regular, then L is regular.
• If L is not regular, then L is not
regular.
Rama Bansal 34
Prove that {w{0,1}*| the number
of 0’s and 1’s in w are not equal}
is not regular
Let L = {w{0,1}*| the number of 0’s and 1’s
in w are not equal}.
Let R =L = {w{0,1}*| the number of 0’s and
1’s in w are equal}.
We already prove that R is not regular.
Then, L is not regular.
Rama Bansal 35
Check list
 Find the language described by a
regular exp.
 Construct regular exp. describing a
given language
 Convert a regular exp. into an FA
 Convert an FA into a regular exp.
 Prove a language is regular
– By constructing a regular exp.
– By constructing an FA
– By using closure properties
 Construct an FA or a
regular exp. for the
intersection, union,
concatenation,
complementation, and
Kleene’s star of regular
languages
 Prove other closure
properties of the class of
regular languages
 Surprise!

More Related Content

What's hot

Chapter1 Formal Language and Automata Theory
Chapter1 Formal Language and Automata TheoryChapter1 Formal Language and Automata Theory
Chapter1 Formal Language and Automata TheoryTsegazeab Asgedom
 
Lecture 3,4
Lecture 3,4Lecture 3,4
Lecture 3,4shah zeb
 
Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1Abhimanyu Mishra
 
Intro automata theory
Intro automata theory Intro automata theory
Intro automata theory Rajendran
 
Lecture 3,4
Lecture 3,4Lecture 3,4
Lecture 3,4shah zeb
 
Asymptotic notations
Asymptotic notationsAsymptotic notations
Asymptotic notationsNikhil Sharma
 
Formal Languages and Automata Theory Unit 1
Formal Languages and Automata Theory Unit 1Formal Languages and Automata Theory Unit 1
Formal Languages and Automata Theory Unit 1Srimatre K
 
Introduction TO Finite Automata
Introduction TO Finite AutomataIntroduction TO Finite Automata
Introduction TO Finite AutomataRatnakar Mikkili
 
1.1. the central concepts of automata theory
1.1. the central concepts of automata theory1.1. the central concepts of automata theory
1.1. the central concepts of automata theorySampath Kumar S
 
Ch3 4 regular expression and grammar
Ch3 4 regular expression and grammarCh3 4 regular expression and grammar
Ch3 4 regular expression and grammarmeresie tesfay
 
Regular expressions-Theory of computation
Regular expressions-Theory of computationRegular expressions-Theory of computation
Regular expressions-Theory of computationBipul Roy Bpl
 

What's hot (20)

Lecture 7
Lecture 7Lecture 7
Lecture 7
 
Chapter1 Formal Language and Automata Theory
Chapter1 Formal Language and Automata TheoryChapter1 Formal Language and Automata Theory
Chapter1 Formal Language and Automata Theory
 
Lecture 3,4
Lecture 3,4Lecture 3,4
Lecture 3,4
 
Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1
 
Intro automata theory
Intro automata theory Intro automata theory
Intro automata theory
 
Lecture 3,4
Lecture 3,4Lecture 3,4
Lecture 3,4
 
Asymptotic notations
Asymptotic notationsAsymptotic notations
Asymptotic notations
 
Finite automata
Finite automataFinite automata
Finite automata
 
Formal Languages and Automata Theory Unit 1
Formal Languages and Automata Theory Unit 1Formal Languages and Automata Theory Unit 1
Formal Languages and Automata Theory Unit 1
 
Introduction TO Finite Automata
Introduction TO Finite AutomataIntroduction TO Finite Automata
Introduction TO Finite Automata
 
Flat unit 3
Flat unit 3Flat unit 3
Flat unit 3
 
pushdown automata
pushdown automatapushdown automata
pushdown automata
 
Push down automata
Push down automataPush down automata
Push down automata
 
Asymptotic Notation
Asymptotic NotationAsymptotic Notation
Asymptotic Notation
 
TOC 3 | Different Operations on DFA
TOC 3 | Different Operations on DFATOC 3 | Different Operations on DFA
TOC 3 | Different Operations on DFA
 
1.1. the central concepts of automata theory
1.1. the central concepts of automata theory1.1. the central concepts of automata theory
1.1. the central concepts of automata theory
 
Context free grammar
Context free grammar Context free grammar
Context free grammar
 
Ch3 4 regular expression and grammar
Ch3 4 regular expression and grammarCh3 4 regular expression and grammar
Ch3 4 regular expression and grammar
 
Regular expressions-Theory of computation
Regular expressions-Theory of computationRegular expressions-Theory of computation
Regular expressions-Theory of computation
 
Regular Grammar
Regular GrammarRegular Grammar
Regular Grammar
 

Similar to Regular Languages

Similar to Regular Languages (20)

Formal Languages and Automata Theory unit 2
Formal Languages and Automata Theory unit 2Formal Languages and Automata Theory unit 2
Formal Languages and Automata Theory unit 2
 
Flat unit 2
Flat unit 2Flat unit 2
Flat unit 2
 
Theory of Computation Regular Expressions, Minimisation & Pumping Lemma
Theory of Computation Regular Expressions, Minimisation & Pumping LemmaTheory of Computation Regular Expressions, Minimisation & Pumping Lemma
Theory of Computation Regular Expressions, Minimisation & Pumping Lemma
 
FLAT.pdf
FLAT.pdfFLAT.pdf
FLAT.pdf
 
regular expression
regular expressionregular expression
regular expression
 
unit 2 part b.docx
unit 2 part b.docxunit 2 part b.docx
unit 2 part b.docx
 
Turing Machine
Turing MachineTuring Machine
Turing Machine
 
Module 1 TOC.pptx
Module 1 TOC.pptxModule 1 TOC.pptx
Module 1 TOC.pptx
 
Chapter 3 REGULAR EXPRESSION.pdf
Chapter 3 REGULAR EXPRESSION.pdfChapter 3 REGULAR EXPRESSION.pdf
Chapter 3 REGULAR EXPRESSION.pdf
 
Resumen material MIT
Resumen material MITResumen material MIT
Resumen material MIT
 
L_2_apl.pptx
L_2_apl.pptxL_2_apl.pptx
L_2_apl.pptx
 
PART B.docx
PART B.docxPART B.docx
PART B.docx
 
Unit2 Toc.pptx
Unit2 Toc.pptxUnit2 Toc.pptx
Unit2 Toc.pptx
 
Unit ii
Unit iiUnit ii
Unit ii
 
UNIT_-_II.docx
UNIT_-_II.docxUNIT_-_II.docx
UNIT_-_II.docx
 
Automata
AutomataAutomata
Automata
 
Automata
AutomataAutomata
Automata
 
POST’s CORRESPONDENCE PROBLEM
POST’s CORRESPONDENCE PROBLEMPOST’s CORRESPONDENCE PROBLEM
POST’s CORRESPONDENCE PROBLEM
 
LPS talk notes
LPS talk notesLPS talk notes
LPS talk notes
 
Regular expression with DFA
Regular expression with DFARegular expression with DFA
Regular expression with DFA
 

More from parmeet834

Problemes chap1 toc
Problemes chap1 tocProblemes chap1 toc
Problemes chap1 tocparmeet834
 
Nondeterministic Finite Automata
Nondeterministic Finite Automata Nondeterministic Finite Automata
Nondeterministic Finite Automata parmeet834
 
CS 162 Fall 2015 Homework 1 Problems September 29, 2015 Timothy Johnson 1. Ex...
CS 162 Fall 2015 Homework 1 Problems September 29, 2015 Timothy Johnson 1. Ex...CS 162 Fall 2015 Homework 1 Problems September 29, 2015 Timothy Johnson 1. Ex...
CS 162 Fall 2015 Homework 1 Problems September 29, 2015 Timothy Johnson 1. Ex...parmeet834
 
Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S...
 Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S... Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S...
Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S...parmeet834
 
Graph representation of DFA’s Da
Graph representation of DFA’s DaGraph representation of DFA’s Da
Graph representation of DFA’s Daparmeet834
 
Pushdown automata
Pushdown automataPushdown automata
Pushdown automataparmeet834
 
Pushdown Automata
Pushdown AutomataPushdown Automata
Pushdown Automataparmeet834
 
Assignment Theory of computation TOC
Assignment Theory of computation TOCAssignment Theory of computation TOC
Assignment Theory of computation TOCparmeet834
 
5 decidability theory of computation
5 decidability theory of computation 5 decidability theory of computation
5 decidability theory of computation parmeet834
 
Turing Machines (TM)
Turing Machines (TM)Turing Machines (TM)
Turing Machines (TM)parmeet834
 
Finite Automata
Finite AutomataFinite Automata
Finite Automataparmeet834
 
1 introduction
1 introduction1 introduction
1 introductionparmeet834
 

More from parmeet834 (14)

DFA
DFA DFA
DFA
 
Problemes chap1 toc
Problemes chap1 tocProblemes chap1 toc
Problemes chap1 toc
 
Nondeterministic Finite Automata
Nondeterministic Finite Automata Nondeterministic Finite Automata
Nondeterministic Finite Automata
 
Hwsoln03 toc
Hwsoln03 tocHwsoln03 toc
Hwsoln03 toc
 
CS 162 Fall 2015 Homework 1 Problems September 29, 2015 Timothy Johnson 1. Ex...
CS 162 Fall 2015 Homework 1 Problems September 29, 2015 Timothy Johnson 1. Ex...CS 162 Fall 2015 Homework 1 Problems September 29, 2015 Timothy Johnson 1. Ex...
CS 162 Fall 2015 Homework 1 Problems September 29, 2015 Timothy Johnson 1. Ex...
 
Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S...
 Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S... Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S...
Introduction to the Theory of Computation, Winter 2003 A. Hevia and J. Mao S...
 
Graph representation of DFA’s Da
Graph representation of DFA’s DaGraph representation of DFA’s Da
Graph representation of DFA’s Da
 
Pushdown automata
Pushdown automataPushdown automata
Pushdown automata
 
Pushdown Automata
Pushdown AutomataPushdown Automata
Pushdown Automata
 
Assignment Theory of computation TOC
Assignment Theory of computation TOCAssignment Theory of computation TOC
Assignment Theory of computation TOC
 
5 decidability theory of computation
5 decidability theory of computation 5 decidability theory of computation
5 decidability theory of computation
 
Turing Machines (TM)
Turing Machines (TM)Turing Machines (TM)
Turing Machines (TM)
 
Finite Automata
Finite AutomataFinite Automata
Finite Automata
 
1 introduction
1 introduction1 introduction
1 introduction
 

Recently uploaded

mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...Sapna Thakur
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...anjaliyadav012327
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 

Recently uploaded (20)

mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 

Regular Languages

  • 2. Rama Bansal 2 Outline • Regular expressions • Regular languages • Equivalence between languages accepted by FA and regular languages • Closure Properties
  • 3. Rama Bansal 3 Regular Expressions Regular expression over alphabet  •  is a regular expression. •  is a regular expression. • For any a, a is a regular expression. • If r1 and r2 are regular expressions, then – (r1 + r2) is a regular expression. – (r1  r2) is a regular expression. – (r1 * ) is a regular expression. • Nothing else is a regular expression.
  • 4. Rama Bansal 4 RegularLanguages •  is a regular language corresponding to the regular expression . • {} is a regular language corresponding to the regular expression . • For any symbol a, {a} is a regular language corresponding to the regular expression a. • If L1 and L2 are regular languages corresponding to the regular expression r1 and r2, then – L1L2, L1L2, and L1 * are regular languages corresponding to (r1 + r2) , (r1  r2), and (r1 *).
  • 5. Rama Bansal 5 Simple examples Let = {0,1}. • {*| does not contain 1’s} – (0*) • {*| contains 1’s only} – (1(1*)) (which can can be denoted by (1+)) • * – ((0+1)*) • {*| contains only 0’s or only 1’s} – ((00*)+(11*)) 0* + 1*  (0+1)*
  • 6. Rama Bansal 6 Some more notations Let = {0,1}. • Parentheses in regular expressions can be omitted when the order of evaluation is clear. – ((0+1)*)  0+1* – ((0*)+(1*)) = 0* + 1* • For concatenation,  can be omitted. • r r r… r is denoted by rn. n times
  • 7. Rama Bansal 7 More complex examples Let  = {0,1}. • {*|  contains odd number of 1’s} – 0*(10*10*)*10* • {*| any two 0’s in  are separated by three 1’s} – 1*(0111)*01* + 1* • {*|  is a binary number divisible by 4} – (0+1)*00 • {*|  does not contain 11} – 0*(10+)* (1+) or (0+10)* (1+)
  • 8. Rama Bansal 8 Notation Let r be a regular expression. The regular language corresponding to the regular expression r is denoted by L(r).
  • 9. Rama Bansal 9 Some rules for language operations Let r, s and t be languages over {0,1} r +  =  + r = r r + s = s + r r = r = r r = r =  r(s + t) = rs + rt r+ = r r*
  • 10. Rama Bansal 10 Rewrite rules for regular expressions Let r, s and t be regular expressions over {0,1}. * =  * =  (r + )+ = r* r* = r*(r + ) = r* r* = (r*)* (r*s*)* = (r + s)*
  • 11. Rama Bansal 11 Closure properties of the class of regular languages (Part 1) Theorem: The class of regular languages is closed under union, concatenation, and Kleene’s star. Proof: Let L1 and L2 be regular languages over . Then, there are regular expressions r1 and r2 corresponding to L1 and L2. By the definition of regular expression and regular languages, r1+r2 ,r1r2, and r1 * are regular expressions corresponding to L1L2, L1L2, and L1 *. Thus, the class of regular languages is closed under union, concatenation, and Kleene’s star.
  • 12. Rama Bansal 12 Equivalence of language accepted by FA and regular languages To show that the languages accepted by FA and regular languages are equivalent, we need to prove: • For any regular language L, there exists an FA M such that L = L(M). • For any FA M, L(M) is a regular language.
  • 13. Rama Bansal 13 For any regular language L, there exists an FA M such that L = L(M) Proof: Let L be a regular language. Then,  a regular expression r corresponding to L. We construct an NFA M, from the regular expression r, such that L=L(M). Basis: If r = , M is If r = , M is If r = {a} for some a  , M is s fs a s f 
  • 14. Rama Bansal 14 Proof (cont’d) Induction hypotheses: Let r1 and r2 be regular expressions with less than n operations. And, there are NFA’s M1 and M2 accepting regular languages corresponding to L(r1) and L(r2). Induction step: Let r be a regular expression with n operations. We construct an NFA accepting L(r). r can be in the form of either r1+r2, r1r2, or r1 *, for regular expressions r1 and r2 with less than n operations.
  • 15. Rama Bansal 15 Proof (cont’d) If r = r1+r2, then M is If r = r1r2, then M is If r = r1 *, then M is Therefore, there is an NFA accepting L(r) for any regular expression r. f2 f1 s s1 s2   f2s2s1 f1    s1 f1s f  
  • 16. Rama Bansal 16 Constructing NFA for regular expressions • 0*(10+)* (1+) 1 0 0   0    1 0* 10+ (10+)* 1  1+ s     
  • 17. Rama Bansal 17 Some Observations • Can these two states be merged? NO • Be careful when you decide to merge some states. 1 0 0   0    1 s     
  • 18. Rama Bansal 18 For any FA M, L(M) is a regular language Proof: Let M = (Q, , , q1, F) be an FA, where Q={qi| 1  i  n} for some positive integer n. Let R(i, j, k) be the set of all strings in that drive M from state qi to state qj while passing through any state ql , for l  k. (i and j can be any states) qi qj ql ql'
  • 19. Rama Bansal 19 Proof (cont’d) R(i, j, 0) = +qj (qi, a) a if i j R(i, j, 0) = +qj (qi, a) a +  if i= j R(i, j, k) = R(i, j, k-1) + R(i, k, k-1) R(k, k, k-1)* R(k, j, k-1) qi qj a qi a qi qj qk q1 q2 qk-1 R(i, j, k-1) R(i, k, k-1) R(k, k, k-1)* R(k, j, k-1)
  • 20. Rama Bansal 20 Proof (cont’d) Then, L(M) = + R(1, f, n) for all qf in F. R(i, j, 0) = +qj (qi, a) a if i j R(i, j, 1) = {a | (qi, a) = qj} +  if i= j R(i, j, k) = R(i, j, k-1) + R(i, k, k-1) R(k, k, k-1)* R(k, j, k-1)
  • 21. Rama Bansal 21 Proof (cont’d) We prove that L(M) is a regular language by showing that there is a regular expression corresponding to L(M), by induction. Basis: R(i, j, 0) corresponds to a regular expression a if i j and a +  if i= j for some a. Induction hypotheses: Let R(i, j,k-1) correspond to a regular expression, for any i, j, k  n.
  • 22. Rama Bansal 22 Proof (cont’d) Induction step: R(i, j, k) = R(i, j, k-1)  R(i, k, k-1) R(k, k, k-1)* R(k, j, k-1) also corresponds to a regular expression because R(i, j, k-1), R(i, k, k-1), R(k, k, k- 1) and R(k, j, k-1) correspond to some regular expressions and union, concatenation, and Kleene’s star are allowed in regular expressions. Therefore, L(M) is also a regular language because L(M) = + R(1, f, n) for all qf in F.
  • 23. Rama Bansal 23 Find a regular expression for a DFA q4 q2 q1 q3 q5 b b b a a a   a*b ba*b a*ba*b a*ba* ba*ba* ba*ba*b a*ba* + a*ba*b (ba*ba*b+a)* ba*ba* a*ba* (+b(ba*ba*b+a)* ba*ba*)
  • 24. Rama Bansal 24 Pumping Lemma Let L be a regular language. Then, there exists an integer n0 such that for every string x in L that |x|n, there are strings u, v, and w such that – x = u v w, – v  , – |u v|  n, and – for all k  0, u vk w is also in L. Any language L is not a regular language if for any integer n0 , there is a string x in L such that |x|n, for any strings u, v, and w, – x  u v w, or – v = , or – Not (|u v|  n), or – there is k  0, u vk w is not in L
  • 25. Rama Bansal 25 Pumping Lemma Any language L is not a regular language if • for any integer n0 , • there is a string x in L such that |x|n, • for any strings u, v and w, such that x = u v w, v  , and |u v|  n, –there is k  0, u vk w is not in L
  • 26. Rama Bansal 26 Using Pumping Lemma • Given a language L. • Let n be any integer 0 . • Choose a string x in L that |x|n. • Consider all possible ways to chop x into u, v and w such that v  , and |uv|  n. • For all possible u, v, and w, show that there is k  0 such that u vk w is not in L. • Then, we can conclude that L is not regular. If you pick a wrong x, your proof will fail ! It does not mean that L is regular !!!!!
  • 27. Rama Bansal 27 Prove {0i 1i| i  0} is not regular Let L = {0i1i| i  0}. Let n be any integer 0. Let x = 0n 1n. Make sure that x is in L and |x|n. The only possible way to chop x into u, v, and w such that v, and |u v|  n is: u = 0p, v = 0q, w = 0n-p-q 1n, where 0p<n and 0<qn Show that there is k  0, u vk w is not in L. u vk w = 0p 0qk 0n-p-q 1n = 0p+qk+(n-p-q) 1n = 0n+q(k-1) 1n If k  1, then n+q(k-1)  n and u vk w is not in L. Then, L is not regular.
  • 28. Rama Bansal 28 Prove {0i1i| i  0} is not regular Let L = {0i1i| i  0}. Let n be any integer 0, and m= n/2. Let x = 0m 1m. Make sure that x is in L and |x|n. Possible ways to chop x into u, v, and w such that v  , and |u v|  n are: – u = 0p, v = 0q, w = 0m-p-q 1m, where 0p<m and 0<qm – u = 0p, v = 0 m-p 1q, w = 1m-q, where 0p<m and 0<qm – u = 0 m 1p, v = 1q, w = 1m-p-q, where 0p<m and 0<qm
  • 29. Rama Bansal 29 Prove {0i1i| i  0} is not regular Show that there is k  0, u vk w is not in L. – u=0p, v=0q, w= 0m-p-q 1m, where where 0p<m and 0<qm u vk w = 0p 0qk 0m-p-q 1m = 0m+q(k-1)1m is not in L if k1. – u=0p, v=0m-p 1q, w=1m-q, where where 0p<m and 0<qm u vk w = 0p (0m-p 1q)k 1m-q is not in L if k  1. – u=0m 1p, v=1q, w=1m-p-q, where where 0p<m and 0<qm u vk w = 0m 1p 1qk 1m-p-q = 0m 1m+q(k-1) is not in L if k1. Then, L is not regular.
  • 30. Rama Bansal 30 Prove {1i|i is prime} is not regular Let L = {1i| i is prime}. Let n be any integer 0. Let p be a prime  n, and w = 1p. Only one possible way to chop w into x, y, and z such that y  , and |x y|  n is: x = 1q, y = 1r, z = 1p-q-r, where 0q<n and 0<r<n Show that there is k  0, x yk z is not in L. x yk z = 1q 1rk 1p-q-r = 1q+rk+(p-q-r) = 1p+r(k-1) If k=p+1, then p+r(k-1) = p(r+1), which is not a prime. Then, x yk z is not in L. Then, L is not regular.
  • 31. Rama Bansal 31 Using closure property Let  be a binary operation on languages and the class of regular languages is closed under . ( can be , , or -) • If L1 and L2 are regular, then L1L2 is regular. • If L1L2 is not regular, then L1 or L2 are not regular. • If L1L2 is not regular but L2 is regular, then L1 is not regular.
  • 32. Rama Bansal 32 Prove that {w{0,1}*| the number of 0’s and 1’s in w are equal} is not regular Let L={w{0,1}*| the number of 0’s and 1’s in w are equal}. Let R= {0i1i| i  0}. R = 0*1*  L We already prove that R is not regular. But 0*1* is regular. Then, L is not regular.
  • 33. Rama Bansal 33 Using closure property Let  be a unary operation on a language and the class of regular languages is closed under . ( can be complement or *) • If L is regular, then L is regular. • If L is not regular, then L is not regular.
  • 34. Rama Bansal 34 Prove that {w{0,1}*| the number of 0’s and 1’s in w are not equal} is not regular Let L = {w{0,1}*| the number of 0’s and 1’s in w are not equal}. Let R =L = {w{0,1}*| the number of 0’s and 1’s in w are equal}. We already prove that R is not regular. Then, L is not regular.
  • 35. Rama Bansal 35 Check list  Find the language described by a regular exp.  Construct regular exp. describing a given language  Convert a regular exp. into an FA  Convert an FA into a regular exp.  Prove a language is regular – By constructing a regular exp. – By constructing an FA – By using closure properties  Construct an FA or a regular exp. for the intersection, union, concatenation, complementation, and Kleene’s star of regular languages  Prove other closure properties of the class of regular languages  Surprise!