Beruflich Dokumente
Kultur Dokumente
Example:
Consider the language of all the words that
consist of 𝑎’s and 𝑏’s and have 𝑎𝑏𝑏 as a sub-
word.
We can formally define this language by the
following:
(1) 𝐿 = {𝑥 ∣ 𝑥 ∈ {𝑎, 𝑏}∗ and 𝑥 has 𝑎𝑏𝑏 as a
subword};
(2) 𝐿 = 𝐿(𝑀 ) where 𝑀 is an NFA given by
the following diagram:
94
Definition Let Σ be an alphabet.
A regular expression over Σ is defined recur-
sively:
Basis: (1) ∅,
(2) 𝜆,
(3) 𝑎, where 𝑎 ∈ Σ
are R.E.’s over Σ
Induction Step:
If 𝐸1 and 𝐸2 are R.E.’s over Σ, then
(4) [𝐸1 ∪ 𝐸2],
(5) [𝐸1 ⋅ 𝐸2],
(6) 𝐸1∗
are R.E.’s over Σ
We usually omit ⋅.
95
[[𝑎 + 𝑏]𝑎]∗ is the same as [[𝑎 ∪ 𝑏]𝑎]∗
Example:
𝐸1 𝐸2
z}|{
z}|{ ∗
[[| 𝑎 ∪
{z
𝑏 ]
}
𝑎
|{z}] is a R.E. over {𝑎, 𝑏}
𝐸3 𝐸4
| {z }
𝐸5
96
Definition Given a regular expression 𝐸, the
language 𝐿(𝐸) denoted by 𝐸 is defined as fol-
lows:
Basis: (1) if 𝐸 = ∅, then ∅;
(2) if 𝐸 = 𝜆, then {𝜆};
(3) if 𝐸 = 𝑎, then {𝑎};
Induction Step:
(4) if 𝐸 = [𝐸1 ∪ 𝐸2], then 𝐿(𝐸1) ∪ 𝐿(𝐸2);
(5) if 𝐸 = [𝐸1𝐸2], then 𝐿(𝐸1)𝐿(𝐸2);
(6) if 𝐸 = 𝐸1∗, then (𝐿(𝐸1))∗.
Properties of R.E.’s
∪: 𝐸1 ∪ 𝐸2 ≡ 𝐸2 ∪ 𝐸1;
[𝐸1 ∪ 𝐸2] ∪ 𝐸3 ≡ 𝐸1 ∪ [𝐸2 ∪ 𝐸3];
So, [𝐸1 ∪ 𝐸2] ∪ 𝐸3 ⇒ 𝐸1 ∪ 𝐸2 ∪ 𝐸3.
⋅: [𝐸1𝐸2]𝐸3 ≡ 𝐸1[𝐸2𝐸3];
So, [𝐸1𝐸2]𝐸3 ⇒ 𝐸1𝐸2𝐸3.
..........................................
97
Definition A language 𝐿 is regular iff there is
a regular expression 𝐸 such that 𝐿 = 𝐿(𝐸).
Example 𝐸 = [𝑏∗𝑎𝑏∗𝑎]∗𝑏∗.
𝐿𝑒𝑣𝑒𝑛 = {𝑥 ∣ 𝑥 in {𝑎, 𝑏}∗ and 𝑥 contains an even
number of 𝑎′𝑠}.
Claim: 𝐿(𝐸) = 𝐿𝑒𝑣𝑒𝑛
Proof:
(i) 𝐿(𝐸) ⊆ 𝐿𝑒𝑣𝑒𝑛, since every word in 𝐿(𝐸)
contains an even number of 𝑎’s.
(ii)Let 𝑥 ∈ 𝐿𝑒𝑣𝑒𝑛. Then 𝑥 can be written as
𝑏𝑖0 𝑎𝑏𝑖1 𝑎 . . . . . . 𝑎𝑏𝑖2𝑛 , 𝑖0, 𝑖1, . . . , 𝑖2𝑛 ≥ 0.
So, 𝑥 = (𝑏𝑖0 𝑎𝑏𝑖1 𝑎)(𝑏𝑖2 𝑎𝑏𝑖3 𝑎) . . . . . . (𝑏𝑖2𝑛−2 𝑎𝑏𝑖2𝑛−1 𝑎)𝑏𝑖2𝑛 .
𝑥 ∈ 𝐿([𝑏∗𝑎𝑏∗𝑎]∗)𝐿(𝑏∗) = 𝐿(𝐸). 𝑞.𝑒.𝑑.
98
Examples Σ = {𝑎, 𝑏}.
𝐿1 = {𝑥 ∣ 𝑥 = 𝑎𝑢, 𝑢 ∈ Σ∗}.
𝐿4 = {𝑥 ∣ 𝑥 = 𝑎𝑛𝑏𝑛, 𝑛 ≥ 1}
99
Examples
What are the languages denoted by the fol-
lowing R.E.’s ?
𝐸1 = 𝑎∗𝑏𝑎∗
𝐸2 = [𝑎 ∪ 𝑎𝑏]∗
𝐸3 = 𝑎[𝑎 ∪ 𝑏]∗𝑎
𝐸4 = [𝑎𝑎 ∪ 𝑏𝑏 ∪ 𝑏𝑎 ∪ 𝑎𝑏]∗
100
How many languages over Σ do R.E.’s define?
Σ = {𝑎, 𝑏}
(2) Countable ?
101
Regular Expression into Finite Automata
-
(ii) 𝐸 = 𝜆.
Construct 𝑀 such that 𝐿(𝑀 ) = {𝜆}
-
(iii) 𝐸 = 𝑎, 𝑎 ∈ Σ.
Construct 𝑀 such that 𝐿(𝑀 ) = {𝑎}
-
𝑎-
"!
102
(iv) 𝐸 = [𝐸1 ∪ 𝐸2].
Construct 𝑀 such that 𝐿(𝑀 ) = 𝐿(𝑀1) ∪ 𝐿(𝑀2).
(v) 𝐸 = [𝐸1𝐸2].
Construct 𝑀 such that 𝐿(𝑀 ) = 𝐿(𝑀1)𝐿(𝑀2).
(vi)𝐸 = 𝐸1∗.
Construct 𝑀 such that 𝐿(𝑀 ) = 𝐿(𝑀1)∗.
103
Example
𝐸 = [𝑐∗[𝑎 ∪ [𝑏𝑐∗]]∗]
Construct a FA 𝑀 such that 𝐿(𝑀 ) = 𝐿(𝐸).
△ 𝑎, 𝑏, 𝑐 by (iii)
△ 𝑐∗ by (vi)
△ [𝑏𝑐∗] by (v)
△ [𝑎 ∪ 𝑏𝑐∗] by (iv)
△ [𝑎 ∪ 𝑏𝑐∗]∗ by (vi)
104
Theorem For 𝐸, an arbitrary regular expres-
sion over Σ, the 𝜆-NFA, 𝑀 , constructed as
above satisfies 𝐿(𝑀 ) = 𝐿(𝐸).
Proof: Let 𝑂𝑝(𝐸) be the total number of ∪, ⋅,
and ∗ operations in 𝐸. We prove this theorem
by induction on 𝑂𝑝(𝐸).
Induction Hypothesis:
Assume the claim holds for all 𝐸 with 𝑂𝑝(𝐸) ≤
𝑘, for some 𝑘 ≥ 0.
Induction Step:
Consider an arbitrary regular expression 𝐸
with 𝑂𝑝(𝐸) = 𝑘 + 1. Since 𝑘 + 1 ≥ 1, 𝐸 contains
at least one operator ∪, ⋅, or ∗.
Case I: 𝐸 = 𝐸1 ∪ 𝐸2. Then 𝑂𝑝(𝐸1) ≤ 𝑘
and 𝑂𝑝(𝐸2) ≤ 𝑘. So, 𝐿(𝑀1) = 𝐿(𝐸1) and 𝐿(𝑀2) =
𝐿(𝐸2) by I.H.. We know the construction of
𝑀 = 𝑀1 ∪ 𝑀2 satisfies 𝐿(𝑀 ) = 𝐿(𝑀1) ∪ 𝐿(𝑀2),
and 𝐿(𝐸) = 𝐿(𝐸1) ∪ 𝐿(𝐸2)
105
Therefore, 𝐿(𝑀 ) = 𝐿(𝐸).
Case II: 𝐸 = 𝐸1𝐸2
....................................
....................................
106
Finite Automata into Regular Expressions
Example of an EFA:
𝛿(𝑝, 𝑠) = ∅
𝛿(𝑠, 𝑓 ) = ∅
......
One final state 𝑓 ∕= 𝑠
107
△ A configuration is in 𝑄Σ∗
△ Move
𝑝𝑥 ⊢ 𝑞𝑦 if
(i) 𝑥 = 𝑤𝑦, 𝑤 ∈ Σ∗,
(ii) 𝛿(𝑝, 𝑞) = 𝐸, and
(iii) 𝑤 ∈ 𝐿(𝐸).
△ ⊢∗, ⊢+ are defined similarly as before.
108
Example:
An extended finite Automaton (EFA).
M:
(1) 𝑏𝑏𝑎𝑏𝑎𝑏
(2) 𝑎𝑎𝑏𝑏𝑐
(3) 𝑎𝑐𝑐𝑐𝑐
(4) 𝑎𝑎𝑎𝑎𝑎𝑐
109
State Elimination Technique
Goal of the technique:
i.e.:
Example
110
(2) EFA 𝑀 has 𝑘 + 1 states, 𝑘 ≥ 2.
Then eliminate a state from 𝑀 to form 𝑀 ′:
𝑀:
Note: 𝑞 ∈ 𝑄 − {𝑠, 𝑓 }
Consider all transitions (𝑝𝑖, 𝐸𝑖𝑞 , 𝑞)
and (𝑞, 𝐸𝑞𝑖, 𝑝𝑖)
𝑀′ :
𝑏∗𝑎[𝑏 ∪ 𝑎𝑏∗𝑎]∗
112
Example
113
Summary of the State Elimination Technique
(0) Change FA into EFA
(1) Add a new start state if the original one
has incoming transitions.
(2) Add a new final state if there are more
than one final states originally. Old final
states become non-final states.
(3) Eliminate the states in 𝑄 − {𝑠, 𝑓 }
one by one.
(4) Eliminate the transition 𝛿(𝑓, 𝑓 ).
114