Tài liệu Bài giảng Theory Of Automata - Lecture 15: 1Recap Lecture 14
• Kleene’s theorem part III (method 2: 
Concatenation of FAs) continued, Kleene’s 
theorem part III (method 3:closure of an FA), 
Examples
2Task
Build FA corresponding to the concatenation 
of these two FAs i.e. FA1FA2 where 
FA1
FA2
a,b
x1- x2 x3 +
x4
b
a,b
a,b
a
a
y1- y2+
a
bb
3Task solution
• RE corresponding to FA1 may be 
(a+b)b(a+b)* with b as second letter
• RE corresponding to FA2 may be 
(a+b)b(a+b)* b*a(b+ab*a)* with odd 
number of a’s
4Solution continued 
Old States
New States after reading
a b
z1-x1 x2z2 x2 z2
a,b
x1- x2 x3 +
x4
b
a,b
a,b
a
a
y1- y2+
a
bb
5Solution continued 
Old States
New States after reading
a b
z2x2 x4z3 (x3,y1)z4
z3 x4 x4z3 x4z3
z4(x3,y1) (x3 ,y1,y2) z5 (x3,y1) z4
z5+(x3,y1 ,y2) (x3 ,y1 ,y2) z5 (x3,y1 ,y2) z5
6Solution continued 
b
a
a,b 
b
z2
z3
z4 z5a
a,b 
z1
a,b •-
•+
7Note
• It is to be noted that as observed in the 
previous examples, if at the initia...
                
              
                                            
                                
            
 
            
                 21 trang
21 trang | 
Chia sẻ: honghanh66 | Lượt xem: 1213 | Lượt tải: 0 
              
            Bạn đang xem trước 20 trang mẫu tài liệu Bài giảng Theory Of Automata - Lecture 15, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
1Recap Lecture 14
• Kleene’s theorem part III (method 2: 
Concatenation of FAs) continued, Kleene’s 
theorem part III (method 3:closure of an FA), 
Examples
2Task
Build FA corresponding to the concatenation 
of these two FAs i.e. FA1FA2 where 
FA1
FA2
a,b
x1- x2 x3 +
x4
b
a,b
a,b
a
a
y1- y2+
a
bb
3Task solution
• RE corresponding to FA1 may be 
(a+b)b(a+b)* with b as second letter
• RE corresponding to FA2 may be 
(a+b)b(a+b)* b*a(b+ab*a)* with odd 
number of a’s
4Solution continued 
Old States
New States after reading
a b
z1-x1 x2z2 x2 z2
a,b
x1- x2 x3 +
x4
b
a,b
a,b
a
a
y1- y2+
a
bb
5Solution continued 
Old States
New States after reading
a b
z2x2 x4z3 (x3,y1)z4
z3 x4 x4z3 x4z3
z4(x3,y1) (x3 ,y1,y2) z5 (x3,y1) z4
z5+(x3,y1 ,y2) (x3 ,y1 ,y2) z5 (x3,y1 ,y2) z5
6Solution continued 
b
a
a,b 
b
z2
z3
z4 z5a
a,b 
z1
a,b •-
•+
7Note
• It is to be noted that as observed in the 
previous examples, if at the initial state of the 
given FA, there is either a loop or an 
incoming transition edge, the initial state 
corresponds to the final state and a non-final 
state as well, of the required FA, otherwise 
the initial state of given FA will only 
correspond to a single state of the required 
FA (i.e. the initial state which is final as well).
8Task
• Build an FA corresponding to the closure 
of the following FA
a
y1± y2a
b
b
9Nondeterministic Finite 
Automaton (NFA)
Definition: An NFA is a TG with a unique start 
state and a property of having single letter as 
label of transitions. An NFA is a collection of 
three things
1) Finite many states with one initial and some 
final states
2) Finite set of input letters, say, ={a, b, c}
3) Finite set of transitions, showing where to 
move if a letter is input at certain state ( is 
not a valid transition), there may be more than 
one transition for certain letters and there may 
not be any transition for certain letters.
10
Observations
It may be observed, from the definition of NFA, 
that the string is supposed to be accepted, if there 
exists at least one successful path, otherwise 
rejected.
It is to be noted that an NFA can be considered to 
be an intermediate structure between FA and TG.
The examples of NFAs can be found in the 
following
11
Example
b
a
1- a
a
5+
2+
3
4
It is to be noted that the above NFA accepts 
the language consisting of a and ab. 
12
Example
a,b
a
a, b
a1- 3+2
It is to be noted that the above NFA accepts 
the language of strings, defined over 
Σ = {a, b}, containing aa.
13
Note
• It is to be noted that NFA helps to eliminate a 
loop at certain state of an FA. This process is 
done converting the loop into a circuit. But 
during this process the FA remains no longer 
FA and is converted to a corresponding NFA, 
which is shown in the following example.
14
Example
• Consider a part of the following FA with an 
alphabet Σ={a,b,c,d}
To eliminate the loop at state 7, the 
corresponding NFA may be as follows
7
a
10
9
8
6
5
4
b
c
d
a
b
c
15
Example continued ...
11
10
9
8
6
5
4
7 
aa
a
b
c
b
c
d
c
d
b
16
Converting an FA to an 
equivalent NFA
• It is to be noted that according to the Kleene’s 
theorem, if a language can be accepted by an FA, 
then there exists a TG accepting that language. 
Since, an NFA is a TG as well, therefore there 
exists an NFA accepting the language accepted 
by the given FA. In this case these FA and NFA 
are said to be equivalent to each others. 
Following are the examples of FAs to be 
converted to the equivalent NFAs
17
Example
• Consider the following FA corresponding to 
(a+b)*b
• The above FA may be equivalent to the following 
NFA
Can the structure of above NFA be compared 
with the corresponding RE ?
b
a
ba
- +
- b +
a, b
18
Example
• Consider the following FA
• The above FA may be equivalent to the 
following NFA
• Can the structure of above NFA be compared 
with the corresponding RE ?
a
a, b
a- +
a,b
ab
a
b
- +1
1
a,b
19
Task
Build an NFA equivalent to the following 
FA
2
a
1–
3
6+
4
5
a
a
a,b
b
b
b
a b
b
a
20
Application of an NFA
• There is an important application of an NFA 
in artificial intelligence, which is discussed in 
the following example of a maze
- 1 2 3
4 L 5 O
6 M 7 P
8 N 9 +
21
Summing Up
• Examples of Kleene’s theorem part III 
(method 3), NFA, examples, avoiding loop 
using NFA, example, converting FA to 
NFA, examples, applying an NFA on an 
example of maze
            Các file đính kèm theo tài liệu này:
 theory_of_automata_cs402_power_point_slides_lecture_15_6181.pdf theory_of_automata_cs402_power_point_slides_lecture_15_6181.pdf