SlideShare une entreprise Scribd logo
1  sur  26
1
Regular Expressions
Definitions
Equivalence to Finite Automata
2
RE’s: Introduction
Regular expressions are an algebraic
way to describe languages.
They describe exactly the regular
languages.
If E is a regular expression, then L(E) is
the language it defines.
We’ll describe RE’s and their languages
recursively.
3
RE’s: Definition
Basis 1: If a is any symbol, then a is a
RE, and L(a) = {a}.
 Note: {a} is the language containing one
string, and that string is of length 1.
Basis 2: ε is a RE, and L(ε) = {ε}.
Basis 3: ∅ is a RE, and L(∅) = ∅.
4
RE’s: Definition – (2)
Induction 1: If E1 and E2 are regular
expressions, then E1+E2 is a regular
expression, and L(E1+E2) =
L(E1)L(E2).
Induction 2: If E1 and E2 are regular
expressions, then E1E2 is a regular
expression, and L(E1E2) = L(E1)L(E2).
Concatenation : the set of strings wx such that w
Is in L(E1) and x is in L(E2).
5
RE’s: Definition – (3)
Induction 3: If E is a RE, then E* is a
RE, and L(E*) = (L(E))*.
Closure, or “Kleene closure” = set of strings
w1w2…wn, for some n > 0, where each wi is
in L(E).
Note: when n=0, the string is ε.
6
Precedence of Operators
Parentheses may be used wherever
needed to influence the grouping of
operators.
Order of precedence is * (highest),
then concatenation, then + (lowest).
7
Examples: RE’s
L(01) = {01}.
L(01+0) = {01, 0}.
L(0(1+0)) = {01, 00}.
 Note order of precedence of operators.
L(0*) = {ε, 0, 00, 000,… }.
L((0+10)*(ε+1)) = all strings of 0’s
and 1’s without two consecutive 1’s.
8
Equivalence of RE’s and
Automata
We need to show that for every RE,
there is an automaton that accepts the
same language.
 Pick the most powerful automaton type: the
ε-NFA.
And we need to show that for every
automaton, there is a RE defining its
language.
 Pick the most restrictive type: the DFA.
9
Converting a RE to an ε-NFA
Proof is an induction on the number of
operators (+, concatenation, *) in the
RE.
We always construct an automaton of a
special form (next slide).
10
Form of ε-NFA’s Constructed
No arcs from outside,
no arcs leaving
Start state:
Only state
with external
predecessors
“Final” state:
Only state
with external
successors
11
RE to ε-NFA: Basis
Symbol a:
ε:
∅:
a
ε
12
RE to ε-NFA: Induction 1 – Union
For E1
For E2
For E1  E2
ε
ε ε
ε
13
RE to ε-NFA: Induction 2 –
Concatenation
For E1 For E2
For E1E2
ε
14
RE to ε-NFA: Induction 3 – Closure
For E
For E*
ε
ε
ε
ε
15
DFA-to-RE
A strange sort of induction.
States of the DFA are assumed to be
1,2,…,n.
We construct RE’s for the labels of
restricted sets of paths.
 Basis: single arcs or no arc at all.
 Induction: paths that are allowed to
traverse next state in order.
16
k-Paths
A k-path is a path through the graph of
the DFA that goes though no state
numbered higher than k.
Endpoints are not restricted; they can
be any state.
17
Example: k-Paths
1
3
2
0
0
0
1
1 1
0-paths from 2 to 3:
RE for labels = 0.
1-paths from 2 to 3:
RE for labels = 0+11.
2-paths from 2 to 3:
RE for labels =
(10)*0+1(01)*1
3-paths from 2 to 3:
RE for labels = ??
18
k-Path Induction
Let Rij
k be the regular expression for
the set of labels of k-paths from state i
to state j.
Basis: k=0. Rij
0 = sum of labels of arc
from i to j.
 ∅ if no such arc.
 But add ε if i=j.
19
Example: Basis
R12
0 = 0.
R11
0 = ∅ + ε = ε.
1
3
2
0
0
0
1
1 1
20
k-Path Inductive Case
 A k-path from i to j either:
1. Never goes through state k, or
2. Goes through k one or more times.
Rij
k = Rij
k-1 + Rik
k-1(Rkk
k-1)* Rkj
k-1.
Doesn’t go
through k
Goes from
i to k the
first time Zero or
more times
from k to k
Then, from
k to j
21
Illustration of Induction
States < k
k
i
j
Paths not going
through k
From k
to j
From k to k
Several times
Path to k
22
Final Step
 The RE with the same language as the
DFA is the sum (union) of Rij
n, where:
1. n is the number of states; i.e., paths are
unconstrained.
2. i is the start state.
3. j is one of the final states.
23
Example
R23
3 = R23
2 + R23
2(R33
2)*R33
2 =
R23
2(R33
2)*
R23
2 = (10)*0+1(01)*1
R33
2 = 0(01)*(1+00) + 1(10)*(0+11)
R23
3 = [(10)*0+1(01)*1]
[(0(01)*(1+00) + 1(10)*(0+11))]*
1
3
2
0
0
0
1
1 1
24
Summary
Each of the three types of automata
(DFA, NFA, ε-NFA) we discussed, and
regular expressions as well, define
exactly the same set of languages: the
regular languages.
25
Algebraic Laws for RE’s
Union and concatenation behave sort of
like addition and multiplication.
 + is commutative and associative;
concatenation is associative.
 Concatenation distributes over +.
 Exception: Concatenation is not
commutative.
26
Identities and Annihilators
∅ is the identity for +.
 R + ∅ = R.
 ε is the identity for concatenation.
 εR = Rε = R.
 ∅ is the annihilator for concatenation.
 ∅R = R∅ = ∅.

Contenu connexe

Similaire à re1.ppt

Regular expressions-Theory of computation
Regular expressions-Theory of computationRegular expressions-Theory of computation
Regular expressions-Theory of computationBipul Roy Bpl
 
1LECTURE 8 Regular_Expressions.ppt
1LECTURE 8 Regular_Expressions.ppt1LECTURE 8 Regular_Expressions.ppt
1LECTURE 8 Regular_Expressions.pptMarvin886766
 
Automata
AutomataAutomata
AutomataGaditek
 
Automata
AutomataAutomata
AutomataGaditek
 
PPT 2.1.1(The Pumping Lemma for Regular sets, Application of the Pumping Lemm...
PPT 2.1.1(The Pumping Lemma for Regular sets, Application of the Pumping Lemm...PPT 2.1.1(The Pumping Lemma for Regular sets, Application of the Pumping Lemm...
PPT 2.1.1(The Pumping Lemma for Regular sets, Application of the Pumping Lemm...ArjunMehra32
 
compiler Design course material chapter 2
compiler Design course material chapter 2compiler Design course material chapter 2
compiler Design course material chapter 2gadisaAdamu
 
Regular expressions
Regular expressionsRegular expressions
Regular expressionsShiraz316
 
02. chapter 3 lexical analysis
02. chapter 3   lexical analysis02. chapter 3   lexical analysis
02. chapter 3 lexical analysisraosir123
 
Regular expression with DFA
Regular expression with DFARegular expression with DFA
Regular expression with DFAMaulik Togadiya
 
Automata_Theory_and_compiler_design_UNIT-1.pptx.pdf
Automata_Theory_and_compiler_design_UNIT-1.pptx.pdfAutomata_Theory_and_compiler_design_UNIT-1.pptx.pdf
Automata_Theory_and_compiler_design_UNIT-1.pptx.pdfTONY562
 
Chapter 3 REGULAR EXPRESSION.pdf
Chapter 3 REGULAR EXPRESSION.pdfChapter 3 REGULAR EXPRESSION.pdf
Chapter 3 REGULAR EXPRESSION.pdfdawod yimer
 
Mod 2_RegularExpressions.pptx
Mod 2_RegularExpressions.pptxMod 2_RegularExpressions.pptx
Mod 2_RegularExpressions.pptxRaviAr5
 

Similaire à re1.ppt (20)

Regular Expressions To Finite Automata
Regular Expressions To Finite AutomataRegular Expressions To Finite Automata
Regular Expressions To Finite Automata
 
Regular expressions-Theory of computation
Regular expressions-Theory of computationRegular expressions-Theory of computation
Regular expressions-Theory of computation
 
QB104541.pdf
QB104541.pdfQB104541.pdf
QB104541.pdf
 
1LECTURE 8 Regular_Expressions.ppt
1LECTURE 8 Regular_Expressions.ppt1LECTURE 8 Regular_Expressions.ppt
1LECTURE 8 Regular_Expressions.ppt
 
Automata
AutomataAutomata
Automata
 
Automata
AutomataAutomata
Automata
 
PPT 2.1.1(The Pumping Lemma for Regular sets, Application of the Pumping Lemm...
PPT 2.1.1(The Pumping Lemma for Regular sets, Application of the Pumping Lemm...PPT 2.1.1(The Pumping Lemma for Regular sets, Application of the Pumping Lemm...
PPT 2.1.1(The Pumping Lemma for Regular sets, Application of the Pumping Lemm...
 
compiler Design course material chapter 2
compiler Design course material chapter 2compiler Design course material chapter 2
compiler Design course material chapter 2
 
rs1.ppt
rs1.pptrs1.ppt
rs1.ppt
 
Network synthesis
Network synthesisNetwork synthesis
Network synthesis
 
Regular expressions
Regular expressionsRegular expressions
Regular expressions
 
02. chapter 3 lexical analysis
02. chapter 3   lexical analysis02. chapter 3   lexical analysis
02. chapter 3 lexical analysis
 
unit 2 part b.docx
unit 2 part b.docxunit 2 part b.docx
unit 2 part b.docx
 
UNIT_-_II.docx
UNIT_-_II.docxUNIT_-_II.docx
UNIT_-_II.docx
 
Regular expression with DFA
Regular expression with DFARegular expression with DFA
Regular expression with DFA
 
Ch3
Ch3Ch3
Ch3
 
Ch3.ppt
Ch3.pptCh3.ppt
Ch3.ppt
 
Automata_Theory_and_compiler_design_UNIT-1.pptx.pdf
Automata_Theory_and_compiler_design_UNIT-1.pptx.pdfAutomata_Theory_and_compiler_design_UNIT-1.pptx.pdf
Automata_Theory_and_compiler_design_UNIT-1.pptx.pdf
 
Chapter 3 REGULAR EXPRESSION.pdf
Chapter 3 REGULAR EXPRESSION.pdfChapter 3 REGULAR EXPRESSION.pdf
Chapter 3 REGULAR EXPRESSION.pdf
 
Mod 2_RegularExpressions.pptx
Mod 2_RegularExpressions.pptxMod 2_RegularExpressions.pptx
Mod 2_RegularExpressions.pptx
 

Dernier

Glass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesGlass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesPrabhanshu Chaturvedi
 
University management System project report..pdf
University management System project report..pdfUniversity management System project report..pdf
University management System project report..pdfKamal Acharya
 
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICSUNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICSrknatarajan
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756dollysharma2066
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxBSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxfenichawla
 
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELL
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELLPVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELL
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELLManishPatel169454
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfKamal Acharya
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...Call Girls in Nagpur High Profile
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performancesivaprakash250
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . pptDineshKumar4165
 
Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01KreezheaRecto
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)simmis5
 
Call for Papers - International Journal of Intelligent Systems and Applicatio...
Call for Papers - International Journal of Intelligent Systems and Applicatio...Call for Papers - International Journal of Intelligent Systems and Applicatio...
Call for Papers - International Journal of Intelligent Systems and Applicatio...Christo Ananth
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlysanyuktamishra911
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Bookingdharasingh5698
 

Dernier (20)

Glass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesGlass Ceramics: Processing and Properties
Glass Ceramics: Processing and Properties
 
University management System project report..pdf
University management System project report..pdfUniversity management System project report..pdf
University management System project report..pdf
 
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICSUNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
 
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxBSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
 
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELL
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELLPVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELL
PVC VS. FIBERGLASS (FRP) GRAVITY SEWER - UNI BELL
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . ppt
 
Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
 
Call for Papers - International Journal of Intelligent Systems and Applicatio...
Call for Papers - International Journal of Intelligent Systems and Applicatio...Call for Papers - International Journal of Intelligent Systems and Applicatio...
Call for Papers - International Journal of Intelligent Systems and Applicatio...
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
 

re1.ppt

  • 2. 2 RE’s: Introduction Regular expressions are an algebraic way to describe languages. They describe exactly the regular languages. If E is a regular expression, then L(E) is the language it defines. We’ll describe RE’s and their languages recursively.
  • 3. 3 RE’s: Definition Basis 1: If a is any symbol, then a is a RE, and L(a) = {a}.  Note: {a} is the language containing one string, and that string is of length 1. Basis 2: ε is a RE, and L(ε) = {ε}. Basis 3: ∅ is a RE, and L(∅) = ∅.
  • 4. 4 RE’s: Definition – (2) Induction 1: If E1 and E2 are regular expressions, then E1+E2 is a regular expression, and L(E1+E2) = L(E1)L(E2). Induction 2: If E1 and E2 are regular expressions, then E1E2 is a regular expression, and L(E1E2) = L(E1)L(E2). Concatenation : the set of strings wx such that w Is in L(E1) and x is in L(E2).
  • 5. 5 RE’s: Definition – (3) Induction 3: If E is a RE, then E* is a RE, and L(E*) = (L(E))*. Closure, or “Kleene closure” = set of strings w1w2…wn, for some n > 0, where each wi is in L(E). Note: when n=0, the string is ε.
  • 6. 6 Precedence of Operators Parentheses may be used wherever needed to influence the grouping of operators. Order of precedence is * (highest), then concatenation, then + (lowest).
  • 7. 7 Examples: RE’s L(01) = {01}. L(01+0) = {01, 0}. L(0(1+0)) = {01, 00}.  Note order of precedence of operators. L(0*) = {ε, 0, 00, 000,… }. L((0+10)*(ε+1)) = all strings of 0’s and 1’s without two consecutive 1’s.
  • 8. 8 Equivalence of RE’s and Automata We need to show that for every RE, there is an automaton that accepts the same language.  Pick the most powerful automaton type: the ε-NFA. And we need to show that for every automaton, there is a RE defining its language.  Pick the most restrictive type: the DFA.
  • 9. 9 Converting a RE to an ε-NFA Proof is an induction on the number of operators (+, concatenation, *) in the RE. We always construct an automaton of a special form (next slide).
  • 10. 10 Form of ε-NFA’s Constructed No arcs from outside, no arcs leaving Start state: Only state with external predecessors “Final” state: Only state with external successors
  • 11. 11 RE to ε-NFA: Basis Symbol a: ε: ∅: a ε
  • 12. 12 RE to ε-NFA: Induction 1 – Union For E1 For E2 For E1  E2 ε ε ε ε
  • 13. 13 RE to ε-NFA: Induction 2 – Concatenation For E1 For E2 For E1E2 ε
  • 14. 14 RE to ε-NFA: Induction 3 – Closure For E For E* ε ε ε ε
  • 15. 15 DFA-to-RE A strange sort of induction. States of the DFA are assumed to be 1,2,…,n. We construct RE’s for the labels of restricted sets of paths.  Basis: single arcs or no arc at all.  Induction: paths that are allowed to traverse next state in order.
  • 16. 16 k-Paths A k-path is a path through the graph of the DFA that goes though no state numbered higher than k. Endpoints are not restricted; they can be any state.
  • 17. 17 Example: k-Paths 1 3 2 0 0 0 1 1 1 0-paths from 2 to 3: RE for labels = 0. 1-paths from 2 to 3: RE for labels = 0+11. 2-paths from 2 to 3: RE for labels = (10)*0+1(01)*1 3-paths from 2 to 3: RE for labels = ??
  • 18. 18 k-Path Induction Let Rij k be the regular expression for the set of labels of k-paths from state i to state j. Basis: k=0. Rij 0 = sum of labels of arc from i to j.  ∅ if no such arc.  But add ε if i=j.
  • 19. 19 Example: Basis R12 0 = 0. R11 0 = ∅ + ε = ε. 1 3 2 0 0 0 1 1 1
  • 20. 20 k-Path Inductive Case  A k-path from i to j either: 1. Never goes through state k, or 2. Goes through k one or more times. Rij k = Rij k-1 + Rik k-1(Rkk k-1)* Rkj k-1. Doesn’t go through k Goes from i to k the first time Zero or more times from k to k Then, from k to j
  • 21. 21 Illustration of Induction States < k k i j Paths not going through k From k to j From k to k Several times Path to k
  • 22. 22 Final Step  The RE with the same language as the DFA is the sum (union) of Rij n, where: 1. n is the number of states; i.e., paths are unconstrained. 2. i is the start state. 3. j is one of the final states.
  • 23. 23 Example R23 3 = R23 2 + R23 2(R33 2)*R33 2 = R23 2(R33 2)* R23 2 = (10)*0+1(01)*1 R33 2 = 0(01)*(1+00) + 1(10)*(0+11) R23 3 = [(10)*0+1(01)*1] [(0(01)*(1+00) + 1(10)*(0+11))]* 1 3 2 0 0 0 1 1 1
  • 24. 24 Summary Each of the three types of automata (DFA, NFA, ε-NFA) we discussed, and regular expressions as well, define exactly the same set of languages: the regular languages.
  • 25. 25 Algebraic Laws for RE’s Union and concatenation behave sort of like addition and multiplication.  + is commutative and associative; concatenation is associative.  Concatenation distributes over +.  Exception: Concatenation is not commutative.
  • 26. 26 Identities and Annihilators ∅ is the identity for +.  R + ∅ = R.  ε is the identity for concatenation.  εR = Rε = R.  ∅ is the annihilator for concatenation.  ∅R = R∅ = ∅.