Tải bản đầy đủ (.pdf) (10 trang)

Ngôn ngữ hình thức và Ôtômat - Chương 2 potx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (376.98 KB, 10 trang )

1
Ngôn ng
Ngôn ng


h
h
ì
ì
nh th
nh th


c
c
v
v
à
à
Ôtômat
Ôtômat
(
(
Formal Language & Automata
Formal Language & Automata
)
)
PGS.TS. Phan Huy Kh
PGS.TS. Phan Huy Kh
á
á


nh
nh


Chng 2 Ôtômat hu hn
Chng
Chng
2
2
Ôtômat h
Ôtômat h


u h
u h


n
n
2/
2/
56
56
Tr
Tr


u thu
u thu



c
c
:
:
đ
đ


u câu chuy
u câu chuy


n
n
\
\
H
H
ì
ì
nh th
nh th


c, h
c, h
ì
ì
nh th

nh th


c ho
c ho
á
á
u
u




i l
i l


p t
p t


nhiên
nhiên
u
u
Mô t
Mô t


, q

, q
uy 
uy 


c, ch
c, ch


t ch
t ch


(không th
(không th


b
b
á
á
c B
c B


)
)
u
u
Nhu c

Nhu c


u GQ v
u GQ v


n đ
n đ


: tin h
: tin h


c/CNTT (ICT)
c/CNTT (ICT)
\
\
Ngôn ng
Ngôn ng


NN
NN
u
u
CC
CC



trao đ
trao đ


i, liên l
i, liên l


c
c
u
u
MTT n
MTT n


hi
hi


u chi v
u chi v


con ng
con ng


i !

i !
u
u
H
H
ì
ì
nh th
nh th


c ho
c ho
á
á
ngôn ng
ngôn ng


!
!
u
u
X
X


lý (h
lý (h



c v
c v


) NN :
) NN :
¬
¬
Ph
Ph
á
á
t : (n
t : (n
ó
ó
i, vi
i, vi


t ) sinh câu
t ) sinh câu


VN PH
VN PH


M s

M s


n sinh
n sinh
¬
¬
Nh
Nh


n : (nghe, c
n : (nghe, c


m th
m th


)
)


ÔTÔMAT đo
ÔTÔMAT đo
á
á
n nh
n nh



n
n
3/
3/
56
56
Chng
Chng
2
2
Ôtômat h
Ôtômat h


u h
u h


n
n
\
\
Ôtômat h
Ôtômat h


u h
u h



n đn đ
n đn đ


nh
nh
u
u
Mô t
Mô t


u
u
Mô h
Mô h
ì
ì
nh h
nh h
ó
ó
a
a
u
u
Bi
Bi



u di
u di


n ôtômat h
n ôtômat h


u h
u h


n
n
\
\
Ôtômat h
Ôtômat h


u h
u h


n không đn đ
n không đn đ


nh

nh
u
u
Mô t
Mô t


u
u
Kh
Kh


b
b


t
t
í
í
nh không đn đ
nh không đn đ


nh
nh
\
\
Ôtômat h

Ôtômat h


u h
u h


n v
n v
à
à
c
c
á
á
c bi
c bi


u th
u th


c ch
c ch
í
í
nh qui
nh qui
u

u
Xây d
Xây d


ng c
ng c
á
á
c ôtômat t
c ôtômat t


c
c
á
á
c bi
c bi


u th
u th


c ch
c ch
í
í
nh qui

nh qui
u
u
Xây d
Xây d


ng c
ng c
á
á
c ngôn ng
c ngôn ng


ch
ch
í
í
nh quy t
nh quy t


c
c
á
á
c ôtômat
c ôtômat
4/

4/
56
56
Mô t
Mô t


phi h
phi h
ì
ì
nh th
nh th


c ôtômat h
c ôtômat h


u h
u h


n đn đ
n đn đ


nh
nh
\

\
M
M


t ôtômat h
t ôtômat h


u h
u h


n đn đ
n đn đ


nh, ký hi
nh, ký hi


u M, vi
u M, vi


t t
t t


t

t
ôhhđđ
ôhhđđ
(
(
DFA: Deterministic Finite State Automaton
DFA: Deterministic Finite State Automaton
)
)
g
g


m c
m c
á
á
c ph
c ph


n t
n t


:
:
u
u
Bng v

Bng v
à
à
o (Input Tape) :
o (Input Tape) :
¬
¬
Ch
Ch


a câu c
a câu c


n x
n x


lý g
lý g


m nhi
m nhi


u ô
u ô
¬

¬
M
M


i ô ch
i ô ch


a m
a m


t ký t
t ký t


thu
thu


c m
c m


t b
t b


ng ch

ng ch


Σ
Σ
n
n
à
à
o đ
o đ
ó
ó
u
u
M
M


t đ
t đ


u đ
u đ


c (
c (
Read Head)

Read Head)
đ
đ


c l
c l


n l
n l


t t
t t


ng ký t
ng ký t


trong ô
trong ô
u
u
M
M


t t

t t


p h
p h


p h
p h


u h
u h


n c
n c
á
á
c tr
c tr


ng th
ng th
á
á
i g
i g



m :
m :
¬
¬
M
M


t tr
t tr


ng th
ng th
á
á
i đ
i đ


u (Initial State)
u (Initial State)
¬
¬
M
M


t s

t s


tr
tr


ng th
ng th
á
á
i trung gian
i trung gian
¬
¬
M
M


t tr
t tr


ng th
ng th
á
á
i cu
i cu



i hay đ
i hay đ


t đ
t đ


c (Accepting States)
c (Accepting States)
u
u
M
M


t h
t h
à
à
m chuy
m chuy


n ti
n ti


p (Transition Function) :

p (Transition Function) :
¬
¬
Chuy
Chuy


n M sang tr
n M sang tr


ng th
ng th
á
á
i ti
i ti


p theo
p theo
t
t


tr
tr


ng th

ng th
á
á
i đang x
i đang x
é
é
t v
t v
à
à
t
t


ký t
ký t


v
v


a đ
a đ


c đ
c đ



c trên bng v
c trên bng v
à
à
o
o
5/
5/
56
56
Mô h
Mô h
ì
ì
nh c c
nh c c


u c
u c
á
á
c bng t
c bng t


6/
6/
56

56
Minh ho
Minh ho


ôhhđđ
ôhhđđ
\
\
Ho
Ho


t đ
t đ


ng đo
ng đo
á
á
n nh
n nh


n c
n c


a ôhh nh sau

a ôhh nh sau
:
:
u
u
Câu v
Câu v
à
à
o w
o w


Σ
Σ
*
*
đ
đ


c đ
c đ


t
t


m

m
ú
ú
t tr
t tr
á
á
i trên bng v
i trên bng v
à
à
o
o
u
u
L
L
ú
ú
c đ
c đ


u,
u,
đ
đ


u đ

u đ


c
c


v
v


tr
tr
í
í
w(1) m
w(1) m
ú
ú
t tr
t tr
á
á
i nh
i nh


t c
t c



a bng
a bng
u
u
Ôhh đang
Ôhh đang


tr
tr


ng th
ng th
á
á
i đ
i đ


u q
u q
0
0
u
u





u đ
u đ


c đ
c đ


c l
c l


n l
n l


t t
t t


ng ký t
ng ký t


c
c


a w trên bng

a w trên bng
,
,
di chuy
di chuy


n đ
n đ


u đ
u đ


c qua ph
c qua ph


i v
i v
à
à
thay đ
thay đ


i tr
i tr



ng th
ng th
á
á
i
i
u
u
Ôhh d
Ôhh d


ng khi m
ng khi m


i ký t
i ký t


c
c


a w đã đ
a w đã đ


c đ

c đ


c h
c h


t v
t v
à
à
th
th


a nh
a nh


n câu
n câu
,
,
ho
ho


c h
c h
ó

ó
c gi
c gi


a ch
a ch


ng (không th
ng (không th


a nh
a nh


n câu v
n câu v
à
à
o)
o)




u đ
u đ



c di chuy
c di chuy


n qua ph
n qua ph


i theo chi
i theo chi


u m
u m


i tên
i tên
Câu v
Câu v
à
à
o w
o w


Σ
Σ
*

*
Bng v
Bng v
à
à
o
o
a
a
a
a
b
b
a
a
b
b
a
a
a
a
Tr
Tr


ng th
ng th
á
á
i q

i q
i
i
2
7/
7/
56
56
V
V
í
í
d
d


m
m


t s
t s


ôtômat
ôtômat
Green
Green
Green
Red

Red
Red
Yellow
Yellow
Yellow
C
C


t đ
t đ
è
è
n t
n t
í
í
n hi
n hi


u giao thông
u giao thông
Bt
B
B


t
t

Tt
T
T


t
t
Nh
Nh


n n
n n
ú
ú
t
t
Nh
Nh


n n
n n
ú
ú
t
t
N
N
ú

ú
t công t
t công t


c thi
c thi


t b
t b


đi
đi


n
n
q
1
q
q
1
1
Ch
Ch
Ch



1 xu
1 xu
M
M
á
á
y b
y b
á
á
n b
n b
á
á
o 5xu/t
o 5xu/t


q
3
q
q
3
3
1 xu
1 xu
2 xu
2 xu
1 xu
1 xu

2 xu
2 xu
K
K
Nh
Nh


n K nh
n K nh


n b
n b
á
á
o v
o v
à
à
v
v


l
l


i tr
i tr



ng th
ng th
á
á
i ch
i ch


2 xu
2 xu
1 xu
1 xu
q
2
q
q
2
2
2 xu
2 xu
8/
8/
56
56
Mô t
Mô t



h
h
ì
ì
nh th
nh th


c ôtômat h
c ôtômat h


u h
u h


n đn đ
n đn đ


nh
nh
\
\
M
M


t ôhh đn đ
t ôhh đn đ



nh đ
nh đ


c bi
c bi


u di
u di


n h
n h
ì
ì
nh th
nh th


c b
c b


i b
i b



nm
nm
:
:
u
u
M = (Q,
M = (Q,
Σ
Σ
,
,
δ
δ
, q
, q
0
0
, F
, F
)
)
trong đ
trong đ
ó
ó
:
:
Q
Q

t
t


p h
p h


p h
p h


u h
u h


n c
n c
á
á
c tr
c tr


ng th
ng th
á
á
i (State)
i (State)

Σ
Σ
b
b


ng ch
ng ch


v
v
à
à
o h
o h


u h
u h


n
n
δ
δ
= Q
= Q
×
×

Σ
Σ


Q l
Q l
à
à
h
h
à
à
m chuy
m chuy


n ti
n ti


p
p
(Transition Function)
(Transition Function)
q
q
0
0



Q
Q
l
l
à
à
tr
tr


ng
ng
th
th
á
á
i
i
đ
đ


u
u
(Initial State)
(Initial State)
F
F



Q
Q
l
l
à
à
t
t


p h
p h


p c
p c
á
á
c tr
c tr


ng th
ng th
á
á
i cu
i cu



i
i
(Accepting States)
(Accepting States)
9/
9/
56
56
Bi
Bi


u di
u di


n
n
ôtômat
ôtômat
\
\
Cho ôtômat M = (Q,
Cho ôtômat M = (Q,
Σ
Σ
,
,
δ
δ

, q
, q
0
0
, F)
, F)
\
\
C
C
ó
ó
th
th


bi
bi


u di
u di


n M b
n M b


ng c
ng c

á
á
ch nh sau
ch nh sau
:
:
u
u
Li
Li


t kê h
t kê h


t c
t c
á
á
c th
c th
à
à
nh ph
nh ph


n c
n c



a M
a M
u
u
L
L


p b
p b


ng gi
ng gi
á
á
tr
tr


c
c


a h
a h
à
à

m d
m d


ch chuy
ch chuy


n
n
δ
δ
,
,
trong đ
trong đ
ó
ó
c
c
ó
ó
đ
đ
á
á
nh d
nh d



u c
u c
á
á
c tr
c tr


ng th
ng th
á
á
i đ
i đ


u (q0) v
u (q0) v
à
à
cu
cu


i
i
u
u
D
D

ù
ù
ng đ
ng đ


th
th


\
\
Th
Th


c t
c t


, n
, n
g
g


i ta th
i ta th



ng d
ng d
ù
ù
ng
ng
c
c
á
á
ch bi
ch bi


u di
u di


n
n
đ
đ


th
th


khi s
khi s



tr
tr


ng th
ng th
á
á
i c
i c


a
a
ôtômat không qu
ôtômat không qu
á
á
l
l


n
n
\
\
Trong m
Trong m



t s
t s


tr
tr


ng h
ng h


p
p
ng
ng


i ta d
i ta d
ù
ù
ng
ng
c
c
á
á

ch bi
ch bi


u di
u di


n
n
ph
ph


i h
i h


p
p
li
li


t kê th
t kê th
à
à
nh ph
nh ph



n v
n v
à
à
l
l


p b
p b


ng gi
ng gi
á
á
tr
tr


c
c


a h
a h
à
à

m
m
d
d


ch chuy
ch chuy


n
n
δ
δ
10/
10/
56
56
V
V
í
í
d
d


bi
bi



u di
u di


n
n
ôtômat
ôtômat
q2q1q3
q3q0q2
q0q3q1
q1q2 q0
10
Ký t

đ

c vào
Tr

ng thái
\
\
X
X
é
é
t ôtômat h
t ôtômat h



u h
u h


n đn đ
n đn đ


nh M
nh M
= (Q,
= (Q,
Σ
Σ
,
,
δ
δ
, q0, F)
, q0, F)
:
:
u
u
Σ
Σ
= { 0, 1 }
= { 0, 1 }
u

u
Q = { q0, q1, q2, q3 }
Q = { q0, q1, q2, q3 }
u
u
F = { q
F = { q
0
0
}
}
u
u
M
M


i ô c
i ô c


a b
a b


ng bi
ng bi


u di

u di


n m
n m


t quan h
t quan h


δ
δ
:
:
δ
δ
(q, a) =q
(q, a) =q


q , q
q , q




Q
Q
11/

11/
56
56
Bi
Bi


u di
u di


n
n
ôtômat b
ôtômat b


ng đ
ng đ


th
th


\
\
Cho ôtômat M = (Q,
Cho ôtômat M = (Q,
Σ

Σ
,
,
δ
δ
, q
, q
0,
0,
A)
A)
\
\
Quy 
Quy 


c bi
c bi


u di
u di


n M b
n M b


ng đ

ng đ


th
th


nh sau
nh sau
:
:
u
u
M
M


i tr
i tr


ng th
ng th
á
á
i c
i c


a M l

a M l
à
à
m
m


t đ
t đ


nh h
nh h
ì
ì
nh tròn
nh tròn
u
u
M
M


i chuy
i chuy


n ti
n ti



p l
p l
à
à
m
m


t cung n
t cung n


i hai đ
i hai đ


nh
nh
u
u
M
M


i cung đ
i cung đ


c đ

c đ
á
á
nh nhãn l
nh nhãn l
à
à
ký t
ký t


đ
đ


c đ
c đ


c
c
u
u
Chi
Chi


u c
u c



a cung n
a cung n


i hai đ
i hai đ


nh cho bi
nh cho bi


t s
t s


thay đ
thay đ


i tr
i tr


ng th
ng th
á
á
i :

i :
¬
¬
N
N


u
u
δ
δ
(p,
(p,
a
a
) = q th
) = q th
ì
ì
cung n
cung n


i t
i t


p sang q c
p sang q c
ó

ó
nhãn l
nhãn l
à
à
a
a


Σ
Σ
¬
¬
C
C


ng c
ng c
ó
ó
th
th


vi
vi


t (

t (
p,
p,
a
a
, q)
, q) ∈δ
u
u
Tr
Tr


ng th
ng th
á
á
i đ
i đ


u c
u c
ó
ó
g
g


n m

n m


t d
t d


u nh
u nh


n >
n >
u
u
C
C
á
á
c tr
c tr


ng th
ng th
á
á
i cu
i cu



i đ
i đ


c bi
c bi


u di
u di


n b
n b


i c
i c
á
á
c vòng tròn k
c vòng tròn k
é
é
p
p
12/
12/
56

56
Quy 
Quy 


c c
c c
á
á
ch v
ch v


ôtômat :
ôtômat :
\
\
Cho ôtômat M = (Q,
Cho ôtômat M = (Q,
Σ
Σ
,
,
δ
δ
, q0, F)
, q0, F)
q
>
p

q
a
p
q
a, b
p
p là trng thái đu, p = q0
δ(p, a) = q và δ(p, b) = q
δ(p, a) = q
q là trng thái cui, q ∈ F
3
13/
13/
56
56
V
V
í
í
d
d


bi
bi


u di
u di



n
n
ôtômat b
ôtômat b


ng đ
ng đ


th
th


\
\




th
th


c
c


a

a
ôtômat h
ôtômat h


u h
u h


n đn đ
n đn đ


nh M trong v
nh M trong v
í
í
d
d


tr
tr


c
c
nh sau
nh sau
:

:
1
1
0
0
0
0
0
0
1
1
0
0
1
1
1
1
q1
q1
q1
q0
q0
q0
q3
q3
q3
q2
q2
q2
q2q1q3

q3q0q2
q0q3q1
q1q2 q0
10
Ký t

đ

c vào
Tr

ng thái
14/
14/
56
56
Ôtômat đo
Ôtômat đo
á
á
n nh
n nh


n câu v
n câu v
à
à
o
o

\
\
Cho câu v
Cho câu v
à
à
o w = 110101
o w = 110101
\
\
Qu
Qu
á
á
tr
tr
ì
ì
nh đo
nh đo
á
á
n nh
n nh


n nh sau
n nh sau
(ch
(ch



v
v


t
t


ng trng đ
ng trng đ


u đ
u đ


c) :
c) :
δ
δ
(q0,
(q0,
1
1
10101)
10101)



δ
δ
(q1,
(q1,
1
1
0101)
0101)


δ
δ
(q0,
(q0,
0
0
101)
101)


δ
δ
(q2,
(q2,
1
1
01)
01)



δ
δ
(q3,
(q3,
0
0
1)
1)


δ
δ
(q1,
(q1,
1
1
)
)


q0
q0
ôtômat
ôtômat
d
d


ng v
ng v

à
à
th
th


a nh
a nh


n w do đ
n w do đ


c h
c h


t w v
t w v
à
à
q0
q0


F
F
110101 110101 110101 110101 110101 110101 110101
q0 q1 q0 q2 q3 q1 q0

Dng
1
1
0
0
0
0
0
0
1
1
0
0
1
1
1
1
q1
q1
q1
q0
q0
q0
q3
q3
q3
q2
q2
q2
Tuy nhiên, M không tha nhn câu vào w=110

(hay nhng câu có mt s l con 0 (hoc con 1)
Tuy nhiên, M không th
Tuy nhiên, M không th


a nh
a nh


n câu v
n câu v
à
à
o w=110
o w=110
(hay nh
(hay nh


ng câu c
ng câu c
ó
ó
m
m


t s
t s



l
l


con 0 (ho
con 0 (ho


c con 1)
c con 1)


M
M
15/
15/
56
56
T
T
í
í
nh ch
nh ch


t c
t c



a c
a c
á
á
c câu đ
c câu đ


c M th
c M th


a nh
a nh


n
n
\
\
T
T


i m
i m


i tr

i tr


ng th
ng th
á
á
i q
i q
i
i
, M ghi nh
, M ghi nh


m
m


t t
t t
ì
ì
nh tr
nh tr


ng nh
ng nh



t đ
t đ


nh
nh
c
c


a câu v
a câu v
à
à
o đã đ
o đã đ


c nh sau
c nh sau
:
:
q0 : ph
q0 : ph


n đã đ
n đã đ



c g
c g


m m
m m


t s
t s


ch
ch


n
n
s
s


0 v
0 v
à
à
m
m



t s
t s


ch
ch


n
n
s
s


1
1
q1 : ph
q1 : ph


n đã đ
n đã đ


c g
c g


m m

m m


t s
t s


ch
ch


n
n
s
s


0 v
0 v
à
à
m
m


t s
t s


l

l


s
s


1
1
q2 : ph
q2 : ph


n đã đ
n đã đ


c g
c g


m m
m m


t s
t s


l

l


s
s


0 v
0 v
à
à
m
m


t s
t s


ch
ch


n
n
s
s


1

1
q3 : ph
q3 : ph


n đã đ
n đã đ


c g
c g


m m
m m


t s
t s


l
l


s
s


0 v

0 v
à
à
m
m


t s
t s


l
l


s
s


1
1
V
V
ì
ì
q0
q0


F nên :

F nên :
u
u
Ch
Ch


nh
nh


ng câu c
ng câu c
ó
ó
m
m


t s
t s


ch
ch


n
n
s

s


0 v
0 v
à
à
m
m


t s
t s


ch
ch


n
n
s
s


1
1
m
m



i đ
i đ


c M th
c M th


a nh
a nh


n
n
u
u
Hay c
Hay c
ó
ó
th
th


n
n
ó
ó
i : M ch

i : M ch


th
th


a nh
a nh


n nh
n nh


ng câu
ng câu
c
c
ó
ó
m
m


t s
t s


ch

ch


n
n
s
s


0 v
0 v
à
à
m
m


t s
t s


ch
ch


n
n
s
s



1
1
16/
16/
56
56
Kh
Kh
á
á
i ni
i ni


m h
m h
ì
ì
nh tr
nh tr


ng (C
ng (C


u h
u h
ì

ì
nh)
nh)
\
\
Cho ôtômat hh M, m
Cho ôtômat hh M, m


t h
t h
ì
ì
nh tr
nh tr


ng (Configuration) c
ng (Configuration) c


a M :
a M :
u
u
l
l
à
à
c

c


p (q, w)
p (q, w)


Q
Q
×Σ
×Σ
*
*
ký hi
ký hi


u C = (q, w)
u C = (q, w)
q
q


Q, w ph
Q, w ph


n còn l
n còn l



i cha đ
i cha đ


c c
c c


a câu v
a câu v
à
à
o
o
\
\
C
C
huy
huy


n ti
n ti


p (Transition) m
p (Transition) m



t b
t b


c (one step) trong M
c (one step) trong M
(q, w)
(q, w)


M
M
(q
(q


, w
, w


), n
), n


u v
u v
à
à
ch

ch


n
n


u (
u (
n
n


u
u
)
)
:
:
u
u
w =
w =
a
a
w
w


,

,
a
a


Σ
Σ
u
u
q
q


=
=
δ
δ
(q,
(q,
a
a
)
)
\
\
C
C
huy
huy



n ti
n ti


p nhi
p nhi


u b
u b


c trong M, (q, w)
c trong M, (q, w)


M
M
*
*
(q
(q


, w
, w


)

)
n
n


u
u
:
:
u
u


k
k


0 v
0 v
à
à
c
c
á
á
c h
c h
ì
ì
nh tr

nh tr


ng (q
ng (q
i
i
, w
, w
i
i
), 0
), 0


i
i


k sao cho
k sao cho
:
:
u
u
(q, w) = (q0, w0)
(q, w) = (q0, w0)
u
u
(q

(q


, w
, w


) = (q
) = (q
k
k
, w
, w
k
k
)
)
u
u


i, 0
i, 0


i <k, (q
i <k, (q
i
i
, w

, w
i
i
)
)


M
M
(q
(q
i+1
i+1
, w
, w
i+1
i+1
)
)
q’
a
q
17/
17/
56
56
M đo
M đo
á
á

n nh
n nh


n câu c
n câu c


a
a
ngôn ng
ngôn ng


\
\
Ôtômat M đo
Ôtômat M đo
á
á
n nh
n nh


n (Recognition) câu v
n (Recognition) câu v
à
à
o w b
o w b



ng c
ng c
á
á
ch
ch
th
th


c hi
c hi


n dãy chuy
n dãy chuy


n ti
n ti


p sau
p sau
:
:
(q0, w)
(q0, w)



M
M
(q1, w1)
(q1, w1)


M
M
(q2, w2)
(q2, w2)


M
M




M
M
(qn,
(qn,
ε
ε
)
)
trong đ
trong đ

ó
ó
q0 l
q0 l
à
à
tr
tr


ng th
ng th
á
á
i đ
i đ


u,
u,
ε
ε
l
l
à
à
câu r
câu r



ng
ng
\
\
M
M


t câu w đ
t câu w đ


c th
c th


a nh
a nh


n b
n b


i ôtômat M n
i ôtômat M n


u :
u :

(q0, w)
(q0, w)


M
M
*
*
(q,
(q,
ε
ε
), q
), q


F
F
\
\
Ngôn ng
Ngôn ng


đ
đ


c th
c th



a nh
a nh


n b
n b


i M, vi
i M, vi


t quy 
t quy 


c L(M) :
c L(M) :
L(M) = { w
L(M) = { w
∈Σ
∈Σ
*
*


(q0, w)
(q0, w)



M
M
*
*
(q,
(q,
ε
ε
), q
), q


F }
F }
18/
18/
56
56
Ôtômat đo
Ôtômat đo
á
á
n nh
n nh


n câu v
n câu v

à
à
o
o
\
\
Cho câu v
Cho câu v
à
à
o w = 110101
o w = 110101
\
\
Qu
Qu
á
á
tr
tr
ì
ì
nh đo
nh đo
á
á
n nh
n nh



n nh sau
n nh sau
(ch
(ch


v
v


t
t


ng trng đ
ng trng đ


u đ
u đ


c) :
c) :
(q0,
(q0,
1
1
10101)
10101)



M
M
(q1,
(q1,
1
1
0101)
0101)


M
M
(q0,
(q0,
0
0
101)
101)


M
M
(q2,
(q2,
1
1
01)
01)



M
M
(q3,
(q3,
0
0
1)
1)


M
M
(q1,
(q1,
1
1
)
)


M
M
(
(
q0,
q0,
ε
ε

)
)
ôtômat
ôtômat
d
d


ng v
ng v
à
à
th
th


a nh
a nh


n w do đ
n w do đ


c h
c h


t w v
t w v

à
à
q0
q0


F
F
L(M) g
L(M) g


m c
m c
á
á
c câu c
c câu c
ó
ó
m
m


t s
t s


ch
ch



n
n
s
s


0 v
0 v
à
à
m
m


t s
t s


ch
ch


n
n
s
s



1
1
1
1
0
0
0
0
0
0
1
1
0
0
1
1
1
1
q1
q1
q1
q
0
q
q
0
0
q3
q3
q3

q2
q2
q2
4
19/
19/
56
56
Gm nhng câu
có “láo nháo các con a và b”
ri kt thúc bi mt con b.
Trong cuc sng : “Anh ta
nói “rng thì là mà là” gia
láo nháo các câu !
G
G


m nh
m nh


ng câu
ng câu
c
c
ó
ó



l
l
á
á
o nh
o nh
á
á
o c
o c
á
á
c con a v
c con a v
à
à
b
b


r
r


i k
i k


t th
t th

ú
ú
c b
c b


i m
i m


t con b.
t con b.
Trong cu
Trong cu


c s
c s


ng :
ng :


Anh ta
Anh ta
n
n
ó
ó

i
i


r
r


ng th
ng th
ì
ì
l
l
à
à
m
m
à
à
l
l
à”
à”
gi
gi


a
a

l
l
á
á
o nh
o nh
á
á
o c
o c
á
á
c câu !
c câu !
M
M


t s
t s


v
v
í
í
d
d



1
1
\
\
L(M) l
L(M) l
à
à
ngôn ng
ngôn ng


g
g


m c
m c
á
á
c câu k
c câu k


t th
t th
ú
ú
c b
c b



i b
i b
u
u
L(M) = (a+b)
L(M) = (a+b)
*
*
b
b
u
u
V
V
í
í
d
d


aaabbb = a
aaabbb = a
3
3
b
b
3
3



L(M)
L(M)
\
\
B
B
à
à
i t
i t


p t
p t


i l
i l


p :
p :
Ki
Ki


m tra c
m tra c

á
á
c câu :
c câu :
u
u
w = bababaab
w = bababaab


L(M) ?
L(M) ?
u
u
w = bababaa
w = bababaa


L(M) ?
L(M) ?
D
D
ù
ù
ng c
ng c
á
á
ch vi
ch vi



t g
t g


n :
n :
q
q
0
0
b
b
ababaab
ababaab
>
>
q
q
1
1
a
a
babaab>
babaab>
b
b
a
a

q1
q1
q1q0
q0
q0
a
a
b
b
20/
20/
56
56
M
M


t s
t s


v
v
í
í
d
d


2

2
a
a
b
b
q1
q1
q1q0
q0
q0
b
b
a
a
q2
q2
q2
b
b
a
a
\
\
L(M) l
L(M) l
à
à
ngôn ng
ngôn ng



không ch
không ch


a hai ch
a hai ch


a liên ti
a liên ti


p
p
u
u
V
V
í
í
d
d


bbaba
bbaba


L(M)

L(M)
\
\
B
B
à
à
i t
i t


p t
p t


i l
i l


p :
p :
Ki
Ki


m tra c
m tra c
á
á
c câu :

c câu :
u
u
w = bababab
w = bababab


L(M) ?
L(M) ?
u
u
w = aababb
w = aababb


L(M) ?
L(M) ?
21/
21/
56
56
C
C
á
á
c ôtômat h
c ôtômat h


u h

u h


n đn đ
n đn đ


nh
nh
\
\
Nh
Nh


ng ôtômat h
ng ôtômat h


u h
u h


n v
n v


a x
a x
é

é
t tr
t tr


cc đây đ
cc đây đ


u
u
đn đ
đn đ


nh
nh
v
v


i đ
i đ


c t
c t
í
í
nh :

nh :
u
u
T
T


i m
i m


i th
i th


i đi
i đi


m, ôhh ch
m, ôhh ch


đ
đ


c duy nh
c duy nh



t m
t m


t ký t
t ký t


a
a


Σ,
Σ,
a
a


ε
ε
u
u
V
V


i m
i m



i tr
i tr


ng th
ng th
á
á
i q,
i q,
sau khi ôhh đ
sau khi ôhh đ


c xong a,
c xong a,
luôn đ
luôn đ


t đ
t đ


c
c
m
m



t tr
t tr


ng th
ng th
á
á
i x
i x
á
á
c đ
c đ


nh q
nh q


Ngh
Ngh


a l
a l
à
à
chuy

chuy


n ti
n ti


p :
p :
δ
δ
(q, a) = q
(q, a) = q




Q
Q
luôn đn đ
luôn đn đ


nh (hay TI
nh (hay TI


N 
N 



NH)
NH)
22/
22/
56
56
Ôtômat h
Ôtômat h


u h
u h


n không đn đ
n không đn đ


nh
nh
\
\
Ôtômat h
Ôtômat h


u h
u h



n không đn đ
n không đn đ


nh (ô
nh (ô
hh kđđ
hh kđđ
)
)
(NFA
(NFA
-
-
Non
Non
-
-
deterministic Finite
deterministic Finite
-
-
State Automata)
State Automata)
c
c
ó
ó
c

c
á
á
c đ
c đ


c t
c t
í
í
nh :
nh :
u
u
C
C
ù
ù
ng m
ng m


t ký t
t ký t


, m
, m



t tr
t tr


ng th
ng th
á
á
i c
i c
ó
ó
th
th


c
c
ó
ó
nhi
nhi


u chuy
u chuy


n ti

n ti


p,
p,
ngh
ngh


a l
a l
à
à
δ
δ
(q, a) = q
(q, a) = q




Q
Q
u
u
T
T


n t

n t


i chuy
i chuy


n ti
n ti


p cho câu r
p cho câu r


ng
ng
δ
δ
(q,
(q,
ε
ε
) = q
) = q




Q

Q
(ngh
(ngh


a l
a l
à
à
đ
đ


u đ
u đ


c không ti
c không ti


n t
n t


i khi đ
i khi đ


c câu v

c câu v
à
à
o)
o)
u
u
C
C
ó
ó
th
th


c
c
ó
ó
c
c
á
á
c chuy
c chuy


n ti
n ti



p (nh
p (nh
ó
ó
m c
m c
á
á
c chuy
c chuy


n ti
n ti


p)
p)
cho c
cho c
á
á
c ph
c ph


n câu c
n câu c
ó

ó
đ
đ


d
d
à
à
i l
i l


n hn
n hn
1,
1,
ngh
ngh


a l
a l
à
à
δ
δ
(q, u) = q
(q, u) = q





Q, u
Q, u


Σ
Σ
*
*
, |u| > 1
, |u| > 1
23/
23/
56
56
Nh
Nh


n x
n x
é
é
t
t
\
\
M

M


t ôhh kđđ đ
t ôhh kđđ đ


c đ
c đ


nh ngh
nh ngh


a h
a h
ì
ì
nh th
nh th


c gi
c gi


ng ôhh đđ
ng ôhh đđ
\

\
S
S


kh
kh
á
á
c nhau th
c nhau th


hi
hi


n
n


:
:
u
u
V
V


i

i
ôhh đđ l
ôhh đđ l
à
à
h
h
à
à
m chuy
m chuy


n ti
n ti


p
p
δ
δ
(Transition Function)
(Transition Function)
u
u
V
V


i

i
ôhh kđđ l
ôhh kđđ l
à
à
quan h
quan h


chuy
chuy


n ti
n ti


p
p
Δ
Δ
(Transition Relation)
(Transition Relation)
đ
đ


c đ
c đ



nh ngh
nh ngh


a tng t
a tng t


ôhh đđ
ôhh đđ
, n
, n
hng l
hng l


n n
n n
à
à
y vi
y vi


c chuy
c chuy


n

n
ti
ti


p l
p l
à
à
không duy nh
không duy nh


t
t
¬
¬
V
V


i m
i m


i tr
i tr


ng th

ng th
á
á
i, c
i, c
ó
ó
th
th


c
c
ó
ó
nhi
nhi


u tr
u tr


ng th
ng th
á
á
i ti
i ti



p theo cho m
p theo cho m


i
i
ký t
ký t


đ
đ


c v
c v
à
à
o, ch
o, ch


ng h
ng h


n
n
δ(

δ(
q
q
,
,
a
a
)
)
cho q1 v
cho q1 v
à
à
q2
q2
¬
¬
S
S


d
d


ng b
ng b


ba

ba
(
(
p,
p,
σ
σ
, q
, q
)
)
đ
đ


n
n
ó
ó
i r
i r


ng n
ng n


u ký t
u ký t



đ
đ


c v
c v
à
à
o l
o l
à
à
σ
σ
th
th
ì
ì
c
c
ó
ó
th
th


chuy
chuy



n t
n t


tr
tr


ng th
ng th
á
á
i p sang tr
i p sang tr


ng th
ng th
á
á
i q
i q
¬
¬
T
T


i m

i m


i th
i th


i đi
i đi


m đ
m đ


u đ
u đ


c c
c c
ó
ó
th
th


đ
đ



c m
c m


t ph
t ph


n câu u
n câu u


Σ
Σ
*
*
24/
24/
56
56




nh ngh
nh ngh


a h

a h
ì
ì
nh th
nh th


c ôhh kđđ
c ôhh kđđ
\
\
Ôtômat h
Ôtômat h


u h
u h


n không đn đ
n không đn đ


nh l
nh l
à
à
b
b



nm
nm
:
:
M
M
=
=
(
(
Q,
Q,
Σ
Σ
,
,
Δ
Δ
, q0, A
, q0, A
)
)
trong đ
trong đ
ó
ó
:
:
Q l

Q l
à
à
t
t


p h
p h


p h
p h


u h
u h


n c
n c
á
á
c tr
c tr


ng th
ng th
á

á
i
i
Σ
Σ
l
l
à
à
b
b


ng ch
ng ch


h
h


u h
u h


n
n
Δ
Δ



(
(
Q
Q
×
×
Σ
Σ
*
*
×
×
Q
Q
)
)
l
l
à
à
quan h
quan h


chuy
chuy


n ti

n ti


p
p
q0
q0


Q l
Q l
à
à
tr
tr


ng th
ng th
á
á
i đ
i đ


u
u
F
F



Q l
Q l
à
à
t
t


p h
p h


p
p
c
c
á
á
c
c
tr
tr


ng th
ng th
á
á
i th

i th


a nh
a nh


n
n
5
25/
25/
56
56
V
V
í
í
d
d


ôhh kđđ
ôhh kđđ
\
\
Cho ôhh kđđ
Cho ôhh kđđ
:
:

u
u
M
M
=
=
(
(
{ q0, q1, q2, q3, q4 },
{ q0, q1, q2, q3, q4 },
{ 0, 1 },
{ 0, 1 },
Δ
Δ
,
,
q0,
q0,
{ q2, q4 })
{ q2, q4 })
u
u
v
v


i
i
Δ
Δ

đ
đ


c cho nh sau
c cho nh sau
:
:
{ q4 }{ q4 }q4

{ q4 }q3
{ q2 }{ q2 }q2
{ q2 }

q1
{ q0, q1 }{ q0, q3 }q0
10
>
0
q0
q1
1
0, 1
1
0
0, 1
0, 1
q3
q2
q4

26/
26/
56
56
V
V
í
í
d
d


ôhh kđđ
ôhh kđđ
đo
đo
á
á
n nh
n nh


n câu
n câu
\
\
Cho w
Cho w
=
=

01001
01001
ôhh kđđ M
ôhh kđđ M
đo
đo
á
á
n nh
n nh


n nh sau
n nh sau
:
:
(q0,
(q0,
0
0
1001)
1001)


M
M
(q0,
(q0,
1
1

001)
001)


M
M
(q0,
(q0,
0
0
01)
01)


M
M
(q3,
(q3,
0
0
1)
1)


M
M
(q4,
(q4,
1
1

)
)


M
M
(q4,
(q4,
ε
ε
)
)
Câu w đ
Câu w đ


c M th
c M th


a nh
a nh


n v
n v
ì
ì
:
:

¬
¬
M đ
M đ


c h
c h


t câu
t câu
¬
¬
M
M


tr
tr


ng th
ng th
á
á
i cu
i cu



i
i
L(M) = (0+1)
L(M) = (0+1)
*
*
00(0+1)
00(0+1)
*
*
+ (0+1)
+ (0+1)
*
*
11(0+1)
11(0+1)
*
*
>
0
q0
q1
1
0, 1
1
0
0, 1
0, 1
q3
q2

q4
27/
27/
56
56
Kh
Kh


nng c
nng c
ó
ó
nhi
nhi


u chuy
u chuy


n ti
n ti


p
p


M

M
(q3, 1
001)


M
M
(q1, 0
01)
(q0, 01001)


M
M
(q4, ε)


M
M
(q4, 1
)


M
M
(q3, 0
1)


M

M
(q0, 1
001)
h
h
ó
ó
c !
c !


M
M
(q3, 1
)


M
M
(q0, 0
01)


M
M
(q0, 0
1)


M

M
(q0, ε)


M
M
(q0, 1
)
>
0
q0
q1
1
0, 1
1
0
0, 1
0, 1
q3
q2
q4
28/
28/
56
56
V
V
í
í
d

d


ôhh kđđ
ôhh kđđ
\
\
Ngôn ng
Ngôn ng


đ
đ


c th
c th


a nh
a nh


n b
n b


i ôtômat M :
i ôtômat M :
L

L
(
(
M
M
)
)
=
=
((
((
a
a


ab
ab
)
)
*
*
bbbb
bbbb
Σ
Σ
*
*
)
)



((
((
a
a


ab
ab
)
)
*
*
abb
abb
(
(
aa
aa
)
)
*
*
a
a
Σ
Σ
*
*
)

)
q2
>
a
q
4
q
3
q
1
b
bbb
ab
q
0
aa
ε
a, b
b
a
29/
29/
56
56
V
V
í
í
d
d



ôhh kđđ
ôhh kđđ
\
\
Ngôn ng
Ngôn ng


đ
đ


c th
c th


a nh
a nh


n b
n b


i ôtômat M :
i ôtômat M :
L
L

(
(
M
M
)
)
=
=
Σ
Σ
*
*
ab
ab
(
(
ab
ab
)
)
*
*
ngh
ngh


a l
a l
à
à

t
t


p h
p h


p c
p c
á
á
c câu k
c câu k


t th
t th
ú
ú
c
c
í
í
t nh
t nh


t m
t m



t l
t l


n l
n l


p ab
p ab
V
V
í
í
d
d


, câu aaabab
, câu aaabab


L(M)
L(M)
>
aaab
q1
b

ab
q0
q2
30/
30/
56
56
C
C
huy
huy


n ti
n ti


p trong ôhh kđđ
p trong ôhh kđđ
Cho ôhh kđđ M
Cho ôhh kđđ M
\
\
C
C
huy
huy


n ti

n ti


p m
p m


t b
t b


c trong M
c trong M
(q, w)
(q, w)


M
M
(q
(q


, w
, w


)
)
n

n


u
u
:
:
w
w
=
=
uw
uw


: câu w b
: câu w b


t đ
t đ


u b
u b


i ti
i ti



n t
n t


u
u


Σ
Σ
*
*
(
(
q, u, q
q, u, q


)
)


Δ
Δ
\
\
C
C
huy

huy


n ti
n ti


p nhi
p nhi


u b
u b


c trong M
c trong M
(q, w)
(q, w)


M
M
*
*
(q
(q


, w

, w


)
)
n
n


u
u
:
:
u
u


k
k


0 v
0 v
à
à
c
c
á
á
c h

c h
ì
ì
nh tr
nh tr


ng (q
ng (q
i
i
, w
, w
i
i
), 0
), 0


i
i


k sao cho
k sao cho
:
:
u
u
(q, w) = (q0, w0)

(q, w) = (q0, w0)
u
u
(q
(q


, w
, w


) = (q
) = (q
k
k
, w
, w
k
k
)
)
u
u


i, 0
i, 0


i <k, (q

i <k, (q
i
i
,
,
wi
wi
)
)


M
M
(q
(q
i+1
i+1
, w
, w
i+1
i+1
)
)
6
31/
31/
56
56



á
á
nh gi
nh gi
á
á
c
c
á
á
c ôhh kđđ
c ôhh kđđ
\
\
Th
Th


c t
c t


:
:
u
u
T
T
í
í

nh không đn đ
nh không đn đ


nh không thêm kh
nh không thêm kh


nng c
nng c


a c
a c
á
á
c ôhh
c ôhh
u
u
C
C
ó
ó
th
th


thay th
thay th



m
m


t
t
ôhh kđđ
ôhh kđđ
b
b


i m
i m


t
t
ôhh đđ
ôhh đđ
tng đng
tng đng
\
\
Hai ôtômat hh M v
Hai ôtômat hh M v
à
à

M
M


l
l
à
à
tng đng v
tng đng v


i nhau
i nhau
n
n


u c
u c
ù
ù
ng th
ng th


a nh
a nh



n m
n m


t ngôn ng
t ngôn ng


: L(M) = L(M
: L(M) = L(M


)
)
\
\
Phân bi
Phân bi


t gi
t gi


a
a
ôhh kđđ
ôhh kđđ
NFA v
NFA v

à
à
m
m


t
t
ôhh đđ
ôhh đđ
DFA
DFA
:
:
u
u
T
T


n t
n t


i c
i c
á
á
c chuy
c chuy



n ti
n ti


p trên c
p trên c
á
á
c ph
c ph


n câu v
n câu v
à
à
o (câu con)
o (câu con)
c
c
ó
ó
đ
đ


d
d

à
à
i l
i l


n hn
n hn
1
1
u
u
T
T


n t
n t


i c
i c
á
á
c chuy
c chuy


n ti
n ti



p cho c
p cho c
ù
ù
ng m
ng m


t tr
t tr


ng th
ng th
á
á
i v
i v
à
à
c
c
ù
ù
ng m
ng m



t
t
n
n


i dung c
i dung c


a bng v
a bng v
à
à
o (t
o (t
í
í
nh không đn đ
nh không đn đ


nh)
nh)
32/
32/
56
56
Xây d
Xây d



ng ôhh đđ M
ng ôhh đđ M


t
t


ôhh kđđ M
ôhh kđđ M
\
\
Cho tr
Cho tr


c ôhh kđđ M
c ôhh kđđ M
,
,
L(M) l
L(M) l
à
à
ngôn ng
ngôn ng



đ
đ


c M th
c M th


a nh
a nh


n,
n,
khi đ
khi đ
ó
ó
:
:
u
u
C
C
ó
ó
th
th



xây d
xây d


ng ôhh đđ M
ng ôhh đđ M


t
t


t
t


ôhh kđđ M
ôhh kđđ M
u
u
M
M


l
l
à
à
ôhh đđ tng đng v
ôhh đđ tng đng v



i M, L(M
i M, L(M


) = L(M)
) = L(M)
\
\
Vi
Vi


c xây d
c xây d


ng M
ng M


g
g


m hai giai đo
m hai giai đo



n :
n :
u
u
Giai đo
Giai đo


n 1 :
n 1 :
Kh
Kh


b
b


c
c
á
á
c chuy
c chuy


n ti
n ti



p c
p c
ó
ó
đ
đ


d
d
à
à
i >1 c
i >1 c


a M, nh
a M, nh


n đ
n đ


c M1
c M1
u
u
Giai đo
Giai đo



n 2 :
n 2 :
Kh
Kh


b
b


t
t
í
í
nh không đn đ
nh không đn đ


nh c
nh c


a M1 nh
a M1 nh


n đ
n đ



c M
c M


33/
33/
56
56
Kh
Kh


b
b


c
c
á
á
c chuy
c chuy


n ti
n ti



p c
p c
ó
ó
đ
đ


d
d
à
à
i >1
i >1
\
\
Cho NFA M
Cho NFA M
=
=
(
(
Q,
Q,
Σ
Σ
,
,
Δ
Δ

, q0, F
, q0, F
)
)
,
,
x
x
ây d
ây d


ng M1
ng M1
=
=
(Q
(Q
1
1
,
,
Σ
Σ
1
1
,
,
Δ
Δ

1
1
, q0
, q0
1
1
, F
, F
1
1
),
),
trong đ
trong đ
ó
ó
:
:
u
u
Q1 = Q, q0
Q1 = Q, q0
1
1
= q0
= q0
,
,
Δ
Δ

1 =
1 =
Δ
Δ
v
v
à
à
F
F
1
1
= F
= F
u
u
V
V


i m
i m


i chuy
i chuy


n ti
n ti



p
p
(
(
q, u, q
q, u, q


)∈Δ
)∈Δ
c
c
ó
ó
u =
u =
σ
σ
1
1
σ
σ
2
2
,
,
σ
σ

k
k
(k>1)
(k>1)
:
:
¬
¬
Lo
Lo


i b
i b


chuy
chuy


n ti
n ti


p n
p n
à
à
y kh
y kh



i
i
Δ
Δ
1
1
¬
¬
Thêm k
Thêm k
-
-
1 tr
1 tr


ng th
ng th
á
á
i m
i m


i p
i p
1
1

, p
, p
2
2
, , p
, , p
k
k
-
-
1
1
v
v
à
à
o Q1
o Q1
¬
¬
Thêm k chuy
Thêm k chuy


n ti
n ti


p m
p m



i v
i v
à
à
o
o
Δ
Δ
1 :
1 :
(q,
(q,
σ
σ
1
1
, p
, p
1
1
), (p
), (p
1
1
,
,
σ
σ

2
2
, p
, p
2
2
), . . ., (p
), . . ., (p
k
k
-
-
1
1
,
,
σ
σ
k
k
, q
, q


)
)
\
\
M1 nh
M1 nh



n đ
n đ


c không ch
c không ch


a c
a c
á
á
c chuy
c chuy


n ti
n ti


p trên câu c
p trên câu c
ó
ó
đ
đ



d
d
à
à
i l
i l


n hn
n hn
1, ngh
1, ngh


a l
a l
à
à


(q, u, q
(q, u, q


)
)


Δ
Δ

1, |u|
1, |u|


1
1
q
abc
q’
q
a
p
1
b
p
2
c
q’
34/
34/
56
56
Kh
Kh


b
b



t
t
í
í
nh không đn đ
nh không đn đ


nh
nh
\
\
Gi
Gi


s
s


M = (Q,
M = (Q,
Σ
Σ
,
,
Δ
Δ
, q0, F
, q0, F

)
)
trong đ
trong đ
ó
ó
:
:
u
u
M
M


i chuy
i chuy


n ti
n ti


p
p
(
(
q, u, q
q, u, q



)
)


Δ
Δ
, |u|
, |u|


1
1
ngh
ngh


a l
a l
à
à
m
m


i chuy
i chuy


n ti
n ti



p c
p c


a NFA M c
a NFA M c
ó
ó
d
d


ng :
ng :
¬
¬
ho
ho


c
c
(
(
q,
q,
σ
σ

, q
, q


)
)
,
,
σ
σ


Σ
Σ
¬
¬
ho
ho


c
c
(
(
q,
q,
ε
ε
, q
, q



)
)
\
\
Xây d
Xây d


ng DFA M
ng DFA M


= ( Q
= ( Q


,
,
Σ
Σ
,
,
δ
δ


, q0
, q0



, F
, F


)
)
tng đng v
tng đng v


i M
i M
qua hai b
qua hai b


c nh sau
c nh sau
:
:
u
u
X
X


lý c
lý c

á
á
c chuy
c chuy


n ti
n ti


p đ
p đ


i v
i v


i câu r
i câu r


ng
ng
ε
ε
d
d



ng
ng
(
(
q,
q,
ε
ε
, q
, q


)
)
g
g


i t
i t


t l
t l
à
à
chuy
chuy



n ti
n ti


p r
p r


ng,
ng,
hay
hay
ε
ε
-
-
chuy
chuy


n ti
n ti


p
p
u
u
Xây d
Xây d



ng DFA M
ng DFA M


35/
35/
56
56
X
X


lý c
lý c
á
á
c chuy
c chuy


n ti
n ti


p r
p r



ng
ng
\
\
Th
Th


c t
c t


, m
, m


t DFA không c
t DFA không c
ó
ó
c
c
á
á
c chuy
c chuy


n ti
n ti



p cho câu r
p cho câu r


ng
ng
ε
ε
u
u
C
C


n nh
n nh
ó
ó
m t
m t


t c
t c


c
c

á
á
c chuy
c chuy


n ti
n ti


p r
p r


ng c
ng c


a M
a M
v
v


i m
i m


t chuy
t chuy



n ti
n ti


p c
p c


a m
a m


t ph
t ph


n t
n t


cu
cu


Σ
Σ
:
:

δ
δ
(q, a), a
(q, a), a
∈Σ
∈Σ
\
\
Xây d
Xây d


ng t
ng t


p h
p h


p E
p E
(
(
q
q
)
)
nh sau
nh sau

:
:
u
u
V
V


i m
i m


i q
i q


Q
Q
c
c


a M, E
a M, E
(
(
q
q
)
)

l
l
à
à
t
t


p c
p c
á
á
c tr
c tr


ng th
ng th
á
á
i c
i c
ó
ó
th
th


đ
đ



t đ
t đ


c
c
t
t


q b
q b


i m
i m


t dãy chuy
t dãy chuy


n ti
n ti


p trên câu r
p trên câu r



ng
ng
:
:
E(q) = { p
E(q) = { p


Q
Q
|
|
(q, w)
(q, w)


M
M
*
*
(p,
(p,
w)
w)
}
}
u
u

Nh v
Nh v


y, v
y, v


i q đã cho
i q đã cho
, t
, t


p h
p h


p E
p E
(
(
q
q
)
)
g
g



m c
m c
á
á
c tr
c tr


ng th
ng th
á
á
i p m
i p m
à
à


trong s đ
trong s đ


bi
bi


u di
u di



n ôtômat, t
n ôtômat, t


n t
n t


i m
i m


t đ
t đ


ng đi t
ng đi t


q sang
q sang
p c
p c
ó
ó
nhãn l
nhãn l
à
à

câu r
câu r


ng
ng
ε
ε
q
ε
p
1
p2
ε
36/
36/
56
56
V
V
í
í
d
d


xây d
xây d



ng t
ng t


p h
p h


p E
p E
(
(
q
q
)
)
\
\
Cho ôtômat h
Cho ôtômat h


u h
u h


n không đn đ
n không đn đ



nh M
nh M
\
\
Xây
Xây
d
d


ng t
ng t


p h
p h


p E
p E
(
(
q
q
)
)
:
:
a
ε

q
1
ε
>
q
0
q
3
q
4
q
2
b
ε
b
a
a
b
a
b
a
E(q
0
) = { q
0
, q
1
, q
3
}

E(q
1
) = { q
1
}
E(q
2
) = { q
2
}
E(q
3
) = { q
3
}
E(q
4
) = { q
3
, q
4
}
E
E
(
(
q
q
0
)

)
= {
= { q
0
,
, q
1
,
, q
3
}
}
E
E
(
(
q
q
1
)
)
= {
= { q
1
}
}
E
E
(
(

q
q
2
)
)
= {
= { q
2
}
}
E
E
(
(
q
q
3
)
)
= {
= { q
3
}
}
E
E
(
(
q
q

4
)
)
= {
= { q
3
,
,
q
q
4
}
}
7
37/
37/
56
56
Xây d
Xây d


ng DFA M
ng DFA M


\
\
Gi
Gi



s
s


đã x
đã x




ε
ε
-
-
chuy
chuy


n ti
n ti


p v
p v
à
à
XD xong c
XD xong c

á
á
c E
c E
(
(
q
q
)
)
,
,


q
q


Q
Q
Xây d
Xây d


ng c
ng c
á
á
c ph
c ph



n t
n t


c
c


a DFA M
a DFA M


~ NFA M
~ NFA M
nh sau
nh sau
:
:
u
u
M
M


= ( Q
= ( Q



,
,
Σ
Σ
,
,
δ
δ


,
,
q0
q0


, F
, F


)
)
u
u
M
M


i tr
i tr



ng th
ng th
á
á
i
i
q
q


Q
Q


c
c


a M
a M


l
l
à
à
m
m



t t
t t


p con tr
p con tr


ng th
ng th
á
á
i c
i c


a M
a M
,
,
Q = 2
Q = 2
Q
Q
u
u
q0
q0



=
=
E
E
(
(
q0
q0
)
)
tr
tr


ng th
ng th
á
á
i m
i m
à
à
t
t


đ
đ

ó
ó
, M c
, M c
ó
ó
th
th


ti
ti


n h
n h
à
à
nh đ
nh đ


c câu v
c câu v
à
à
o, k
o, k



c
c


ε
ε
u
u
δ
δ


(
(
q
q
, a) =
, a) =


{ E(p) |
{ E(p) |


q
q


q
q

: (q, a, p)
: (q, a, p)


Δ
Δ
}
}
u
u
F
F


= {
= {
q
q


Q
Q


|
|
q
q



F
F




}
}
38/
38/
56
56
S đ
S đ


thu
thu


t to
t to
á
á
n xây d
n xây d


ng DFA M
ng DFA M



Input
Input
: M = ( Q,
: M = ( Q,
Σ
Σ
,
,
Δ
Δ
, q0, F
, q0, F
)
)
Output
Output
: M
: M


= ( Q
= ( Q


,
,
Σ
Σ

,
,
δ
δ


,
,
q0
q0


, F
, F


)
)
Begin
Begin
q0
q0


= E(q0) ; Q
= E(q0) ; Q


= {
= {

q0
q0


}
}
Do
Do
L
L


y
y
q
q


Q
Q


Do
Do
L
L


y a
y a



Σ
Σ
T
T
ì
ì
m
m
p
p
=
=
δ
δ
(
(
q
q
, a) =
, a) =


{ E(p) |
{ E(p) |


q
q



q
q
: (q, a, p)
: (q, a, p)


Δ
Δ
}
}
Q
Q


= Q
= Q




{
{
p
p
}
}
While
While

Không còn a
Không còn a


Σ
Σ
cha x
cha x




While
While
Q
Q


không thay đ
không thay đ


i (không còn
i (không còn
p
p
n
n
à
à

o kh
o kh
á
á
c ph
c ph


i thêm v
i thêm v
à
à
o Q
o Q


)
)
F
F


=
=
{
{
q
q



Q
Q


|
|
q
q


F
F




}
}
End
End
39/
39/
56
56
V
V
í
í
d
d



xây d
xây d


ng DFA t
ng DFA t


NFA
NFA
q
q
3
3
, q
, q
4
4
q
q
1,
1,
q
q
3
3
q
q

3
3
q
q
3
3
q
q
1,
1,
q
q
2
2
q
q
4
4




q
q
2
2
q
q
2,
2,

q
q
3
3
q
q
2
2
q
q
1
1




q
q
0
0
b
b
a
a
b
a
ε
q
1
ε

>
q
0
q
3
q
4
q
2
ε
b
a
a
b
a
b
a
NFA
NFA
a
{q
3
, q
4
}
{q
2
, q
3
, q

4
}
b
{q
1
, q
2
, q
3
}
>
{q
0
, q
1
, q
3
}
a
b
a
b
a
DFA~NFA
DFA~NFA
b
40/
40/
56
56

V
V
í
í
d
d


xây d
xây d


ng DFA t
ng DFA t


NFA
NFA
NFA
NFA
không c
không c
ó
ó
ε
ε
-
-
chuy
chuy



n ti
n ti


p :
p :
q
q
2
2


q
q
3
3


q
q
3
3
q
q
2
2
q
q

2
2
q
q
1
1
q
q
1
1
q
q
0
0
q
q
0
0
, q
, q
1
1
q
q
0
0
b
b
a
a

b
q
1
>
q
0
q
3
q
2
b
a
b
a
a
a
L(M) = (a+b)
*
aa
*
b(ab)
*
{q0, q1}
a
{q
0
, q
2
}
>

{q
0
}
b
a
a
b
a
DFA~NFA
DFA~NFA
b
b
{q0, q1 , q3}
41/
41/
56
56
V
V
í
í
d
d


xây d
xây d


ng DFA t

ng DFA t


NFA
NFA


D
D
D
D
B, D


C
C


C
C
B
B


A, B, D
A
A
1
1
0

0
DFA~NFA
DFA~NFA
L(M) = 0
*
(01)
*
0
*
NFA
NFA
ε
B
>
A
C
0
0
ε
1
D
0
E(A) = A, B, D
E(B) = B, D
E(C) = C
E(D) = D
E(A) = A, B, D
E(B) = B, D
E(C) = C
E(D) = D

D
0
B, D
>
A, B, D
1
0
0
1
A, B, C, D
0
C, D
0


1
1
1
42/
42/
56
56
Quan h
Quan h


gi
gi



a ôhh v
a ôhh v
à
à
BTCQ
BTCQ
\
\
Cho L l
Cho L l
à
à
m
m


t ngôn ng
t ngôn ng


ch
ch
í
í
nh qui, M l
nh qui, M l
à
à
m
m



t ôtômat h
t ôtômat h


u h
u h


n
n
\
\
M
M


t ngôn ng
t ngôn ng


l
l
à
à
ch
ch
í
í

nh qui
nh qui
n
n


u v
u v
à
à
ch
ch


n
n


u
u
ngôn ng
ngôn ng


đ
đ
ó
ó



đ
đ


c th
c th


a nh
a nh


n b
n b


i m
i m


t ôtômat h
t ôtômat h


u h
u h


n :
n :

u
u
N
N


u m
u m


t ngôn ng
t ngôn ng


đ
đ


c ch
c ch


đ
đ


nh b
nh b



i m
i m


t bi
t bi


u th
u th


c ch
c ch
í
í
nh qui,
nh qui,
th
th
ì
ì
ngôn ng
ngôn ng


đ
đ
ó
ó

đ
đ


c th
c th


a nh
a nh


n b
n b


i m
i m


t ôtômat h
t ôtômat h


u h
u h


n
n

không đn đ
không đn đ


nh
nh
L = L(
L = L(
α
α
)
)


L = L(M)
L = L(M)
u
u
M
M


t ngôn ng
t ngôn ng


đ
đ



c th
c th


a nh
a nh


n b
n b


i m
i m


t ôtômat h
t ôtômat h


u h
u h


n
n
không đn đ
không đn đ



nh l
nh l
à
à
ch
ch
í
í
nh qui
nh qui
L = L(M)
L = L(M)


L = L(
L = L(
α
α
)
)
8
43/
43/
56
56
Xây d
Xây d


ng ôhh t

ng ôhh t


bi
bi


u th
u th


c ch
c ch
í
í
nh qui
nh qui
\
\
Minh ho
Minh ho


t
t
í
í
nh ch
nh ch



t : L = L(
t : L = L(
α
α
)
)


L =
L =
L
L
(M)
(M)
nh sau
nh sau
:
:
u
u
V
V


i m
i m


i BTCQ c s

i BTCQ c s


α
α
=
=


,
,
α
α
=
=
ε
ε
,
,
α
α
= a, a
= a, a
∈Σ
∈Σ
,
,
XD đ
XD đ



c m
c m


t ôhh th
t ôhh th


a nh
a nh


n ngôn ng
n ngôn ng


do
do
α
α
ch
ch


đ
đ


nh

nh
u
u
V
V


i m
i m


i BTCQ d
i BTCQ d


ng
ng
α
α
=(
=(
α
α
1
1
α
α
2
2
),

),
α
α
=(
=(
α
α
1
1
∪α
∪α
2
2
), v
), v
à
à
α
α
=((
=((
α
α
1
1
)
)
*
*
)

)
¬
¬
G
G


i M
i M
1
1
v
v
à
à
M
M
2
2
l
l


n l
n l


t l
t l
à

à
c
c
á
á
c ôhh th
c ôhh th


a nh
a nh


n L(
n L(
α
α
1
1
) v
) v
à
à
L(
L(
α
α
2
2
)

)
¬
¬
XD đ
XD đ


c ôhh M th
c ôhh M th


a nh
a nh


n L(
n L(
α)
α)
t
t


M
M
1
1
v
v
à

à
M
M
2
2
44/
44/
56
56
Xây d
Xây d


ng ôhh t
ng ôhh t


c
c
á
á
c BTCQ c s
c BTCQ c s


Ôtômat
Ôtômat
th
th



a nh
a nh


n
n


Ôtômat
Ôtômat
th
th


a nh
a nh


n
n
ε
ε
Ôtômat
Ôtômat
th
th


a nh

a nh


n
n
a
a
∈Σ
∈Σ
a
a
45/
45/
56
56
Xây d
Xây d


ng ôhh t
ng ôhh t


c
c
á
á
c BTCQ đn gi
c BTCQ đn gi



n
n
Ôtômat
Ôtômat
th
th


a nh
a nh


n
n
a
a
∈Σ
∈Σ
a
a
Ôtômat
Ôtômat
th
th


a nh
a nh



n
n
a
a


b
b
a
a
b
b
a
a
b
b
Ôtômat
Ôtômat
th
th


a nh
a nh


n
n
a

a


b
b
a, b
a, b
a
a
b
b
a
a
a
a
Ôtômat
Ôtômat
th
th


a nh
a nh


n
n
a
a
*

*
Thu gn
trng thái
Thu gn
trng thái
46/
46/
56
56
XD ôhh M th
XD ôhh M th


a nh
a nh


n L(
n L(
α
α
1
1
∪α
∪α
2
2
)
)
t

t


M
M
1
1
v
v
à
à
M
M
2
2
\
\
Cho c
Cho c
á
á
c ôhh :
c ôhh :
u
u
M
M
1
1
= (Q

= (Q
1
1
,
,
Σ
Σ
,
,
Δ
Δ
1
1
, s
, s
1
1
, F
, F
1
1
), c
), c
ó
ó
L(M
L(M
1
1
)

)
=
=
L(
L(
α
α
1
1
)
)
u
u
M
M
2
2
= (Q
= (Q
2
2
,
,
Σ
Σ
,
,
Δ
Δ
2

2
, s
, s
2
2
, F
, F
2
2
), c
), c
ó
ó
L(M
L(M
2
2
)
)
=
=
L(
L(
α
α
2
2
)
)
\

\
XD ôhh M th
XD ôhh M th


a nh
a nh


n L(
n L(
α
α
) =
) =
L(
L(
α
α
1
1
∪α
∪α
2
2
)
)
t
t



M
M
1
1
v
v
à
à
M
M
2
2
:
:
M
M
M
1
M
1
M
2
M
2
M
1
M
1
M

2
M
2
Ghép hai
ôtômat
Ghép hai
ôtômat
47/
47/
56
56
XD ôhh M th
XD ôhh M th


a nh
a nh


n L(
n L(
α
α
1
1
α
α
2
2
)

)
t
t


M
M
1
1
v
v
à
à
M
M
2
2
\
\
Cho c
Cho c
á
á
c ôhh :
c ôhh :
u
u
M
M
1

1
= (Q
= (Q
1
1
,
,
Σ
Σ
,
,
Δ
Δ
1
1
, s
, s
1
1
, F
, F
1
1
), c
), c
ó
ó
L(M
L(M
1

1
)
)
=
=
L(
L(
α
α
1
1
)
)
u
u
M
M
2
2
= (Q
= (Q
2
2
,
,
Σ
Σ
,
,
Δ

Δ
2
2
, s
, s
2
2
, F
, F
2
2
), c
), c
ó
ó
L(M
L(M
2
2
)
)
=
=
L(
L(
α
α
2
2
)

)
\
\
XD ôhh M th
XD ôhh M th


a nh
a nh


n L(
n L(
α
α
) =
) =
L(
L(
α
α
1
1
α
α
2
2
)
)
t

t


M
M
1
1
v
v
à
à
M
M
2
2
:
:
u
u
Q = Q
Q = Q
1
1


Q
Q
2
2
;

;
Δ
Δ
=
=
Δ
Δ
1
1
∪Δ
∪Δ
2
2


{ (q,
{ (q,
ε
ε
, s
, s
2
2
)
)


q
q



F
F
1
1
} ; q
} ; q
0
0
= s
= s
1
1
; F = F
; F = F
2
2
M
M
M
1
M
1
M
2
M
2
M
1
M

1
M
2
M
2
Ghép hai
ôtômat
Ghép hai
ôtômat
48/
48/
56
56
XD ôhh M th
XD ôhh M th


a nh
a nh


n L(
n L(
α
α
1
1
*
*
)

)
t
t


M
M
1
1
v
v
à
à
M
M
2
2
\
\
Cho ôhh :
Cho ôhh :
u
u
M
M
1
1
= (Q
= (Q
1

1
,
,
Σ
Σ
,
,
Δ
Δ
1
1
, s
, s
1
1
, F
, F
1
1
), c
), c
ó
ó
L(M
L(M
1
1
)
)
=

=
L(
L(
α
α
1
1
)
)
\
\
XD ôhh M th
XD ôhh M th


a nh
a nh


n L(
n L(
α
α
) =
) =
L(
L(
α
α
1

1
*
*
)
)
t
t


M
M
1
1
:
:
u
u
C
C
ó
ó
th
th


gi
gi


thi

thi


t r
t r


ng
ng
ε
ε


L(M
L(M
1
1
)
)
M
M
M
1
M
1
M
1
M
1
ε

ε
ε
ε
9
49/
49/
56
56
Xây d
Xây d


ng c
ng c
á
á
c ngôn ng
c ngôn ng


ch
ch
í
í
nh quy t
nh quy t


c
c

á
á
c ôtômat
c ôtômat
\
\
Cho ôtômat M, c
Cho ôtômat M, c


n xây d
n xây d


ng m
ng m


t bi
t bi


u th
u th


c ch
c ch
í
í

nh quy ch
nh quy ch




đ
đ


nh L(M),
nh L(M),
ngh
ngh


a l
a l
à
à
:
:
u
u
L = L(M)
L = L(M)


L = L(
L = L(

α
α
)
)
\
\
C
C
á
á
ch xây d
ch xây d


ng nh sau
ng nh sau
:
:
u
u
X
X
é
é
t c
t c
á
á
c đ
c đ



ng đi t
ng đi t


q
q
0
0
đ
đ


n q
n q
j
j
, q
, q
j
j


F trong M
F trong M
u
u
BTCQ
BTCQ

α
α
j
j
nh
nh


n đ
n đ


c tng
c tng


ng v
ng v


i m
i m


i đ
i đ


ng đi l
ng đi l

à
à
:
:
¬
¬
Gh
Gh
é
é
p (c
p (c


ng) liên ti
ng) liên ti


p c
p c
á
á
c nhãn c
c nhãn c


a c
a c
á
á

c chuy
c chuy


n ti
n ti


p
p
¬
¬
C
C
á
á
c vòng l
c vòng l


p đ
p đ


c bi
c bi


u di
u di



n b
n b


i ph
i ph
é
é
p to
p to
á
á
n l
n l


p *
p *
u
u
BTCQ
BTCQ
α
α
mong mu
mong mu



n l
n l
à
à
h
h


p (Union) c
p (Union) c


a c
a c
á
á
c
c
α
α
j
j
nh
nh


n đ
n đ



c
c
\
\
Riêng đ
Riêng đ


i v
i v


i c
i c
á
á
c vòng l
c vòng l


p, c
p, c


n xây d
n xây d


ng BTCQ tng
ng BTCQ tng



ng
ng
v
v


i c
i c
á
á
c đ
c đ


ng đi n
ng đi n


i hai tr
i hai tr


ng th
ng th
á
á
i c
i c

ó
ó
vòng l
vòng l


p
p
50/
50/
56
56
X
X


lý c
lý c
á
á
c vòng l
c vòng l


p b
p b


ng quy n
ng quy n



p
p
\
\
Cho ôtômat M v
Cho ôtômat M v


i Q = { q
i Q = { q
1
1
, q
, q
2
2
, , q
, , q
n
n
}
}
\
\





t R(i, j, k) :
t R(i, j, k) :
u
u
L
L
à
à
t
t


p h
p h


p c
p c
á
á
c câu
c câu
α
α
ij
ij
= Path(q
= Path(q
i
i

, q
, q
j
j
)
)
u
u
Trong đ
Trong đ
ó
ó
Path(q
Path(q
i
i
, q
, q
j
j
) l
) l
à
à
đ
đ


ng đi t
ng đi t



q
q
i
i
đ
đ


n q
n q
j
j
b
b


ng c
ng c
á
á
ch
ch
ch
ch


chuy
chuy



n qua k
n qua k
-
-
1 tr
1 tr


ng th
ng th
á
á
i { q
i { q
1
1
, q
, q
2
2
, , q
, , q
k
k
-
-
1
1

}
}
\
\




nh ngh
nh ngh


a R(i, j, k) v
a R(i, j, k) v


i k = 1 (
i k = 1 (
c s
c s


quy n
quy n


p
p



b
b


c 1
c 1
),
),
x
x


y ra hai tr
y ra hai tr


ng h
ng h


p :
p :
u
u
N
N


u i
u i



j,
j,
α
α
ij
ij
= Path(q
= Path(q
i
i
, q
, q
j
j
) = { w | (q
) = { w | (q
i
i
, w, q
, w, q
j
j
)
)


Δ
Δ

}
}
u
u
N
N


u i = j,
u i = j,
α
α
ij
ij
= Path(q
= Path(q
i
i
, q
, q
j
j
) = {
) = {
ε
ε
}
}



{ w | (q
{ w | (q
i
i
, w, q
, w, q
j
j
)
)


Δ
Δ
}
}
51/
51/
56
56




nh ngh
nh ngh


a R(i, j, k) v
a R(i, j, k) v



i k > 1
i k > 1
\
\
V
V


i k>1,
i k>1,
d
d
ù
ù
ng phng ph
ng phng ph
á
á
p quy n
p quy n


p t
p t
í
í
nh
nh

α
α
ij
ij
= Path(q
= Path(q
i
i
, q
, q
j
j
),
),


q
q
i
i
, q
, q
j
j
:
:
u
u
Gi
Gi



s
s




α
α
ij
ij
đã đ
đã đ


c xây d
c xây d


ng (
ng (
gi
gi


thi
thi



t quy n
t quy n


p
p


b
b


c k
c k
)
)
R(i, j, k) = Path(q
R(i, j, k) = Path(q
i
i
, q
, q
j
j
)
)
đi qua k
đi qua k



1 tr
1 tr


ng th
ng th
á
á
i { q
i { q
1
1
, q
, q
2
2
, , q
, , q
k
k
-
-
1
1
}
}
u
u
Xây d
Xây d



ng R(i, j, k+1) (
ng R(i, j, k+1) (
quy n
quy n


p
p


b
b


c k+1
c k+1
)
)
g
g


m c
m c
á
á
c đ
c đ



ng đi ch
ng đi ch


đi qua
đi qua
{ q
{ q
1
1
, q
, q
2
2
, , q
, , q
k
k
-
-
1
1
} :
} :
¬
¬
Path(q
Path(q

i
i
, q
, q
k
k
) nh
) nh


n đ
n đ


c t
c t


q
q
i
i
đ
đ


n q
n q
k
k

,
,
¬
¬
Path(q
Path(q
k
k
, q
, q
k
k
)
)
*
*
do nh
do nh


n đ
n đ


c t
c t


q
q

k
k
đ
đ


n q
n q
k
k
m
m


t s
t s


l
l


n tu
n tu


ý (*)
ý (*)
¬
¬

Path(q
Path(q
k
k
, q
, q
j
j
) nh
) nh


n đ
n đ


c t
c t


q
q
k
k
đ
đ


n q
n q

j
j
\
\
Ta c
Ta c
ó
ó
:
:
R(i, j, k+1) = R(i, j, k)
R(i, j, k+1) = R(i, j, k)


R(i, k, k) R(k, k, k)
R(i, k, k) R(k, k, k)
*
*
R(k, j, k)
R(k, j, k)
52/
52/
56
56
Mô h
Mô h
ì
ì
nh c
nh c

á
á
c đ
c đ


ng đi t
ng đi t
í
í
nh R(I, j, k)
nh R(I, j, k)
R(i, j, k),
R(i, j, k),
Path(q
Path(q
i
i
, q
, q
k
k
)
)
q
i
q
j
q
j

R(i, k, k),
R(i, k, k),
Path(q
Path(q
i
i
, q
, q
k
k
)
)
R(k, j, k),
R(k, j, k),
Path(q
Path(q
k
k
, q
, q
j
j
)
)
R(k, k, k)
R(k, k, k)
*
*
,
,

Path(q
Path(q
k
k
, q
, q
k
k
)
)
*
*
L(M) = R(1, j, n+1)
q
j
∈A
L(M) =
L(M) =
R(1, j, n+1)
R(1, j, n+1)
q
q
j
j


A
A



Gi
Gi


thi
thi


t M c
t M c
ó
ó
n tr
n tr


ng th
ng th
á
á
i, q
i, q
1
1
l
l
à
à
tr
tr



ng th
ng th
á
á
i đ
i đ


u, ta c
u, ta c
ó
ó
:
:
53/
53/
56
56
Nh
Nh


n x
n x
é
é
t
t

\
\
Cho ôtômat M c
Cho ôtômat M c
ó
ó
n tr
n tr


ng th
ng th
á
á
i, gi
i, gi


s
s


l
l
à
à
q
q
1
1

tr
tr


ng th
ng th
á
á
i đ
i đ


u,
u,
v
v
à
à
M c
M c
ó
ó
m tr
m tr


ng th
ng th
á
á

i cu
i cu


i
i q
j
1
,
, q
j
2
, ,
, , q
j
m
\
\
Ngôn ng
Ngôn ng


th
th


a nh
a nh



n b
n b


i M l
i M l
à
à
h
h


p c
p c


a t
a t


t c
t c


c
c
á
á
c t
c t



p h
p h


p
p
câu
câu
R(i, j, n+1)
R(i, j, n+1)
, xu
, xu


t hi
t hi


n trong c
n trong c
á
á
c chuy
c chuy


n ti
n ti



p t
p t


tr
tr


ng th
ng th
á
á
i
i
đ
đ


u đ
u đ


n m
n m


t trong nh
t trong nh



ng tr
ng tr


ng th
ng th
á
á
i cu
i cu


i, b
i, b


ng c
ng c
á
á
ch v
ch v


t
t
qua t
qua t



t c
t c


c
c
á
á
c tr
c tr


ng th
ng th
á
á
i c
i c


a M
a M
R(i, j
R(i, j
2
2
, n+1)
, n+1)

q
1
q
j
2
q
j
m
q
j
1
R(i, j
R(i, j
m
m
, n+1)
, n+1)
>
>
R(i, j
R(i, j
1
1
, n+1)
, n+1)
54/
54/
56
56
V

V
í
í
d
d


\
\
Cho ôtômat M :
Cho ôtômat M :
u
u
V
V


i k=1 v
i k=1 v
à
à
k
k
=2,
=2,
R(i,
R(i,
j,
j,
k)

k)
đ
đ


c đ
c đ


nh ngh
nh ngh


a nh sau
a nh sau
:
:
q
1
q
2
a
a
>
>
b
b
a
a
b

b
R(i, j, k+1) = R(i, j, k) ∪ R(i, k, k) R(k, k, k)*R(k, j, k)
R(i, j, k+1) = R(i, j, k)
R(i, j, k+1) = R(i, j, k)


R(i, k, k) R(k, k, k)*R(k, j, k)
R(i, k, k) R(k, k, k)*R(k, j, k)
ε∪
ε∪
b
b
a
a
b
b
ε∪
ε∪
a
a
k = 1
k = 1
(
(
ε∪
ε∪
b)
b)



a(
a(
ε∪
ε∪
a)*b
a)*b
R(2,2,1)
R(2,2,1)


R(2,1,1)R(1,1,1)*R(1,2,1)
R(2,1,1)R(1,1,1)*R(1,2,1)
R(2,2,k)
R(2,2,k)
a
a


a(
a(
ε∪
ε∪
a)*(
a)*(
ε∪
ε∪
a)
a)
R(2,1,1)
R(2,1,1)



R(2,1,1)R(1,1,1)*R(1,1,1)
R(2,1,1)R(1,1,1)*R(1,1,1)
R(2,1,k)
R(2,1,k)
b
b


(
(
ε∪
ε∪
a)(
a)(
ε∪
ε∪
a)*b
a)*b
R(1,2,1)
R(1,2,1)


R(1,1,1)R(1,1,1)*R(1,2,1)
R(1,1,1)R(1,1,1)*R(1,2,1)
R(1,2,k)
R(1,2,k)
(
(

ε∪
ε∪
a)
a)


(
(
ε∪
ε∪
a)(
a)(
ε∪
ε∪
a)*(
a)*(
ε∪
ε∪
a)
a)
R(1,1,1)
R(1,1,1)


R(1,1,1)R(1,1,1)*R(1,1,1)
R(1,1,1)R(1,1,1)*R(1,1,1)
R(1,1,k)
R(1,1,k)
k = 2
k = 2

10
55/
55/
56
56
T
T
ì
ì
m L(M)
m L(M)
\
\
Ngôn ng
Ngôn ng


đ
đ


c th
c th


a nh
a nh


n b

n b


i M l
i M l
à
à
:
:
L(M) =
L(M) =
R(1, 2, 3) =
R(1, 2, 3) =
R(1, 2, 2)
R(1, 2, 2)


R(1, 2, 2)R(2, 2, 2)
R(1, 2, 2)R(2, 2, 2)
*
*
R(2, 2, 2)
R(2, 2, 2)
R(1, 2, 2)(
R(1, 2, 2)(
ε
ε


R(2, 2, 2)

R(2, 2, 2)
+
+
)
)
R(1, 2, 2)R(2, 2, 2)
R(1, 2, 2)R(2, 2, 2)
*
*
b
b


(
(
ε∪
ε∪
a)(
a)(
ε∪
ε∪
a)
a)
*
*
b(
b(
(
(
ε∪

ε∪
b)
b)


a(
a(
ε∪
ε∪
a)*b)*
a)*b)*
56/
56/
56
56
B
B
à
à
i t
i t


p chng
p chng
2
2
1.
1.
Xây d

Xây d


ng c
ng c
á
á
c NFA th
c NFA th


a nh
a nh


n c
n c
á
á
c ngôn ng
c ngôn ng


sau đây
sau đây
:
:
u
u
Bi

Bi


u di
u di


n nh
n nh


phân c
phân c
á
á
c s
c s


ch
ch


n
n
u
u
C
C
á

á
c câu trên b
c câu trên b


ng ch
ng ch


Σ
Σ
= { a, b } ch
= { a, b } ch


a aab ho
a aab ho


c aaab
c aaab
2.
2.
Xây d
Xây d


ng c
ng c
á

á
c DFA th
c DFA th


a nh
a nh


n c
n c
á
á
c ngôn ng
c ngôn ng


đã cho
đã cho


1
1
trên đây
trên đây
3.
3.
Xây d
Xây d



ng c
ng c
á
á
c ôtômat th
c ôtômat th


a nh
a nh


n c
n c
á
á
c bi
c bi


u th
u th


c ch
c ch
í
í
nh quy :

nh quy :
u
u
a*b
a*b
u
u
ε
ε


(a
(a


aab)*
aab)*
4.
4.
Xây d
Xây d


ng c
ng c
á
á
c bi
c bi



u th
u th


c ch
c ch
í
í
nh quy t
nh quy t


ôtômat sau đây
ôtômat sau đây
:
:
a
a
q
0
q
2
q
1
>
>
b
b
b

b
a
a
b
b

×