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

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

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 (322.95 KB, 11 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 3
Vn phm(Grammar)
Chng
Chng
3
3
Vn ph
Vn ph


m
m
(
(
Grammar
Grammar
)
)
2/
2/
61
61
Chng
Chng
3
3

Vn ph
Vn ph


m
m
\
\




nh ngh
nh ngh


a m
a m


t ngôn ng
t ngôn ng


l
l


p tr
p tr

ì
ì
nh (NNLT)
nh (NNLT)
\
\
Kh
Kh
á
á
i ni
i ni


m vn ph
m vn ph


m
m
\
\
Phân c
Phân c


p c
p c
á
á

c lo
c lo


i vn ph
i vn ph


m c
m c


a Chomsky
a Chomsky
\
\
Vn ph
Vn ph


m ch
m ch
í
í
nh qui
nh qui
\
\
Ngôn ng
Ngôn ng



ch
ch
í
í
nh quy
nh quy
\
\
T
T
í
í
nh ch
nh ch


t c
t c


a ngôn ng
a ngôn ng


ch
ch
í
í

nh quy
nh quy
\
\




nh l
nh l
í
í
"
"
bm
bm
" (Pumping Theorem)
" (Pumping Theorem)
\
\


ng d
ng d


ng c
ng c



a ngôn ng
a ngôn ng


ch
ch
í
í
nh qui
nh qui
3/
3/
61
61




nh ngh
nh ngh


a m
a m


t ngôn ng
t ngôn ng



l
l


p tr
p tr
ì
ì
nh (NNLT)
nh (NNLT)
\
\
C
C
á
á
c ngôn ng
c ngôn ng


l
l


p tr
p tr
ì
ì
nh (NNLT) b
nh (NNLT) b



c cao đ
c cao đ


c xây d
c xây d


ng mô
ng mô
ph
ph


ng (m
ng (m


t c
t c
á
á
ch thô thi
ch thô thi


n) ngôn ng
n) ngôn ng



t
t


nhiên
nhiên
, t
, t
h
h


ng l
ng l
à
à
ti
ti


ng Anh (ho
ng Anh (ho


c ti
c ti



ng Nga), t
ng Nga), t


b
b


n y
n y


u t
u t


:
:
u
u
B
B


ký t
ký t


(Character Set)
(Character Set)

u
u
B
B


t
t


v
v


ng (Vocabulary)
ng (Vocabulary)
u
u
C
C
ú
ú
ph
ph
á
á
p (Semantic)
p (Semantic)
u
u

Ng
Ng


ngh
ngh


a (Semantic)
a (Semantic)
¬
¬
Cn c
Cn c


v
v
à
à
o c
o c
ú
ú
ph
ph
á
á
p c
p c



a NNLT,
a NNLT,
ng
ng


i l
i l


p tr
p tr
ì
ì
nh vi
nh vi


t chng tr
t chng tr
ì
ì
nh
nh
g
g



m c
m c
á
á
c câu l
c câu l


nh đ
nh đ


gi
gi


i quy
i quy


t b
t b
à
à
i to
i to
á
á
n c
n c



a m
a m
ì
ì
nh
nh
¬
¬




đ
đ


t đ
t đ


c m
c m


c đ
c đ
í
í

ch đ
ch đ
ó
ó
, m
, m


i câu l
i câu l


nh vi
nh vi


t ra không nh
t ra không nh


ng
ng
đ
đ
ú
ú
ng đ
ng đ



n v
n v


m
m


t c
t c
ú
ú
ph
ph
á
á
p, m
p, m
à
à
còn ph
còn ph


i đ
i đ
ú
ú
ng đ
ng đ



n c
n c


v
v


m
m


t ng
t ng


ngh
ngh


a, hay ý ngh
a, hay ý ngh


a logic c
a logic c



a câu l
a câu l


nh,
nh,
đ
đ


gi
gi


i quy
i quy


t b
t b
à
à
i to
i to
á
á
n
n
\
\

Ngo
Ngo
à
à
i ra,
i ra,
ng
ng


i ta c
i ta c


ng th
ng th


ng thêm
ng thêm
y
y


u t
u t


m
m



t th
t th


nm l
nm l
à
à
t
t
í
í
nh th
nh th


c d
c d


ng (Pragmatic)
ng (Pragmatic)
4/
4/
61
61
B
B



ký t
ký t


\
\
B
B


ký t
ký t


(Character Set)
(Character Set)
u
u
G
G


m m
m m


t t
t t



p h
p h


p h
p h


u h
u h


n c
n c
á
á
c ký t
c ký t


đ
đ


c ph
c ph
é
é

p d
p d
ù
ù
ng trong ngôn ng
ng trong ngôn ng


, t
, t
h
h


ng l
ng l
à
à
c
c
á
á
c ký t
c ký t


ASCII
ASCII
u
u

C
C
ó
ó
th
th


hi
hi


u b
u b


ký t
ký t


c
c
ó
ó
vai trò nh b
vai trò nh b


ng ch
ng ch



c
c
á
á
i (Alphabet)
i (Alphabet)
c
c


a m
a m


t ngôn ng
t ngôn ng


t
t


nhiên
nhiên
5/
5/
61
61

B
B


t
t


v
v


ng
ng
\
\
B
B


t
t


v
v


ng (Vocabulary)
ng (Vocabulary)

u
u
G
G


m c
m c
á
á
c t
c t


(
(
Word) hay
Word) hay
đn v
đn v


t
t


v
v



ng (Token) d
ng (Token) d
ù
ù
ng đ
ng đ


t
t


o
o
th
th
à
à
nh câu l
nh câu l


nh v
nh v
à
à
đ
đ



c phân lo
c phân lo


i tu
i tu


theo vai trò c
theo vai trò c


a ch
a ch
ú
ú
ng
ng
trong ngôn ng
trong ngôn ng


u
u
M
M


i lo
i lo



i t
i t


v
v


ng l
ng l


i đ
i đ


c chia ra th
c chia ra th
à
à
nh c
nh c
á
á
c nh
c nh
ó
ó

m nh
m nh


hn
hn
tu
tu


theo ch
theo ch


c nng s
c nng s


d
d


ng
ng
\
\
V
V
í
í

d
d


:
:
-Tên, hay đnh danh (Identifier) :
Read, Write, P, x, y
-Hng (Constants) : 2
-Toán t (Operators) : + , :=
-Du phân cách (Delimiters) :
Program, Var, :, (, ), Begin, End.
Program P;
Var ×, y : Integer;
Begin
Read(x);
y:=x+2;
Write(y)
End.
Các đn v t vng
Chng trình Pascal
6/
6/
61
61
C
C
ú
ú
ph

ph
á
á
p
p
\
\
C
C
ú
ú
ph
ph
á
á
p (
p (
Syntax) hay
Syntax) hay
vn ph
vn ph


m (Grammar) l
m (Grammar) l
à
à
t
t



p h
p h


p c
p c
á
á
c
c
quy t
quy t


c cho ph
c cho ph
é
é
p :
p :
u
u
Quy đ
Quy đ


nh c
nh c
á

á
ch th
ch th


c k
c k


t h
t h


p c
p c
á
á
c ký t
c ký t


th
th
à
à
nh t
nh t


, k

, k


t h
t h


p c
p c
á
á
c
c
t
t


th
th
à
à
nh câu l
nh câu l


nh đ
nh đ
ú
ú
ng (Statement

ng (Statement
-
-
Instruction), k
Instruction), k


t h
t h


p
p
c
c
á
á
c câu l
c câu l


nh đ
nh đ
ú
ú
ng th
ng th
à
à
nh m

nh m


t chng tr
t chng tr
ì
ì
nh ho
nh ho
à
à
n ch
n ch


nh
nh
u
u
C
C
ó
ó
th
th


h
h
ì

ì
nh dung c
nh dung c
á
á
ch k
ch k


t h
t h


p n
p n
à
à
y gi
y gi


ng c
ng c
á
á
ch đ
ch đ


t câu trong

t câu trong
m
m


t ngôn ng
t ngôn ng


t
t


nhiên
nhiên
u
u




đ
đ


nh ngh
nh ngh


a c

a c
ú
ú
ph
ph
á
á
p m
p m


t ngôn ng
t ngôn ng


l
l


p tr
p tr
ì
ì
nh, n
nh, n
g
g


i ta

i ta
th
th


ng s
ng s


d
d


ng :
ng :
¬
¬
Ho
Ho


c s đ
c s đ


c
c
ú
ú
ph

ph
á
á
p (Syntax Diagram)
p (Syntax Diagram)
¬
¬
Ho
Ho


c
c
d
d


ng chu
ng chu


n Backus
n Backus
-
-
Naur
Naur
(BNF
(BNF



BackusNaur Normal Form),
BackusNaur Normal Form),
hay
hay
d
d


ng Backus
ng Backus
-
-
Naur m
Naur m


r
r


ng
ng
(EBNF
(EBNF


Extended BNF)
Extended BNF)
2

7/
7/
61
61
V
V
í
í
d
d


vn ph
vn ph


m
m
ti
ti


ng Anh
ng Anh
\
\
Gi
Gi



s
s


c
c
á
á
c câu ti
c câu ti


ng Anh đ
ng Anh đ


c xây d
c xây d


ng theo nh
ng theo nh


ng quy
ng quy
t
t



c nh sau
c nh sau
:
:
u
u
Câu
Câu
(Phrase/Sentence) g
(Phrase/Sentence) g


m c
m c
ó
ó
hai th
hai th
à
à
nh ph
nh ph


n :
n :
¬
¬
Ch
Ch



t
t


(subject)
(subject)
¬
¬




ng t
ng t


(Verbe)
(Verbe)
u
u
Ch
Ch


t
t



c
c
ó
ó
th
th


l
l
à
à
He
He
ho
ho


c
c
She
She
u
u




ng t
ng t



c
c
ó
ó
th
th


l
l
à
à
sleep
sleep
hay
hay
eat
eat
u
u
T
T


đ
đ
ó
ó

c
c
ó
ó
th
th


xây d
xây d


ng đ
ng đ


c c
c c
á
á
c câu :
c câu :
¬
¬
He sleep
He sleep
¬
¬
He eat
He eat

¬
¬
She sleep
She sleep
¬
¬
She eat
She eat
8/
8/
61
61
V
V
í
í
d
d


s đ
s đ


c
c
ú
ú
ph
ph

á
á
p câu ti
p câu ti


ng Anh
ng Anh
\
\
Trong ti
Trong ti


ng Anh, m
ng Anh, m


t câu đn gi
t câu đn gi


n g
n g


m 3 th
m 3 th
à
à

nh ph
nh ph


n :
n :
u
u
Ch
Ch


t
t


(Subject), ch
(Subject), ch


ng h
ng h


n
n


I
I



v
v
à
à


You
You


u
u




ng t
ng t


(Verb), ch
(Verb), ch


ng h
ng h



n
n


like
like


v
v
à
à


see
see


u
u
B
B


ng
ng


(Complement), ch
(Complement), ch



ng h
ng h


n
n


him
him


v
v
à
à


her
her


\
\
D
D
ù
ù

ng s đ
ng s đ


c
c
ú
ú
ph
ph
á
á
p, ta c
p, ta c
ó
ó
:
:
\
\
T
T


đ
đ
ó
ó
c
c

ó
ó
th
th


xây d
xây d


ng c
ng c
á
á
c câu đ
c câu đ
ú
ú
ng :
ng :


I see him
I see him


,
,



I like her
I like her


, v.v
, v.v
câu
b ng
b ng
đng t
đng t
ch t
ch t
ch t
I
You
đng t
like
see
b ng
him
her
9/
9/
61
61
Kh
Kh
á
á

i ni
i ni


m BNF
m BNF
\
\
BNF g
BNF g


m m
m m


t dãy c
t dãy c
á
á
c quy t
c quy t


c, hay d
c, hay d


ng th
ng th



c
c
u
u
M
M


i quy t
i quy t


c c
c c
ó
ó
d
d


ng : <
ng : <
V
V


tr
tr

á
á
i
i
> ::= <
> ::= <
V
V


ph
ph


i
i
>
>
u
u
<
<
V
V


tr
tr
á
á

i
i
> t
> t
h
h


ng l
ng l
à
à
m
m


t ký hi
t ký hi


u ph
u ph


i đ
i đ


c đ
c đ



nh ngh
nh ngh


a rõ
a rõ
u
u
<
<
V
V


ph
ph


i
i
> l
> l
à
à
m
m



t dãy ký hi
t dãy ký hi


u, ho
u, ho


c đã đ
c đã đ


c th
c th


a nh
a nh


n,
n,
ho
ho


c đã đ
c đã đ



c đ
c đ


nh ngh
nh ngh


a tr
a tr


c đ
c đ
ó
ó
, tuân theo m
, tuân theo m


t quy 
t quy 


c
c
n
n
à
à

o đ
o đ
ó
ó
u
u
D
D


u ::= (ho
u ::= (ho


c
c


,
,
ho
ho


c =
c =
)
)
đ
đ



c
c


đ
đ


c đ
c đ


nh ngh
nh ngh


a l
a l
à
à


u
u
N
N



u
u
c
c
ó
ó
nhi
nhi


u v
u v


ph
ph


i c
i c
ù
ù
ng đ
ng đ


nh ngh
nh ngh



a m
a m


t v
t v


tr
tr
á
á
i,
i,
ng
ng


i ta
i ta
s
s


d
d


ng d
ng d



u |
u |
đ
đ


phân c
phân c
á
á
ch theo ngh
ch theo ngh


a lo
a lo


i tr
i tr


u
u
D
D



ng BNF m
ng BNF m


r
r


ng s
ng s


d
d


ng hai c
ng hai c


p d
p d


u quy 
u quy 


c :
c :

{ } : v
{ } : v


ph
ph


i c
i c
ó
ó
m
m


t chu
t chu


i t
i t


0
0
đ
đ



n nhi
n nhi


u m
u m


c li
c li


t kê < >*
t kê < >*
[ ] : v
[ ] : v


ph
ph


i c
i c
ó
ó
0 ho
0 ho



c c
c c
ó
ó
1 m
1 m


c li
c li


t kê (option)
t kê (option)
10/
10/
61
61
V
V
í
í
d
d


d
d



ng BNF
ng BNF
\
\
D
D


ng BNF c
ng BNF c
á
á
c câu ti
c câu ti


ng Anh đn gi
ng Anh đn gi


n nh sau
n nh sau
:
:
<Câu> ::= <Ch
<Câu> ::= <Ch


t
t



> <
> <




ng t
ng t


> < B
> < B


ng
ng


>
>
<Ch
<Ch


t
t



> ::=
> ::=


I
I


|
|


You
You


<
<




ng t
ng t


> ::=
> ::=



like
like


|
|


see
see


<B
<B


ng
ng


> ::=
> ::=


him
him


|
|



her
her


\
\
Tên trong ngôn ng
Tên trong ngôn ng


Pascal :
Pascal :
<tên> = <ch
<tên> = <ch


> { <ch
> { <ch


> | <s
> | <s


> }
> }
Ho
Ho



c đ
c đ


nh ngh
nh ngh


a đ
a đ


quy :
quy :
<tên> = <ch
<tên> = <ch


> | <tên> <ch
> | <tên> <ch


> | <tên> <s
> | <tên> <s


>
>

<ch
<ch


>
>
=
=


A
A


| |
| |


Z
Z


|
|


a
a



| |
| |


z
z


<s
<s


>
>
=
=


0
0


| |
| |


9
9



11/
11/
61
61
S đ
S đ


c
c
ú
ú
ph
ph
á
á
p c
p c


a tên
a tên
\
\
Tên trong ngôn ng
Tên trong ngôn ng


Pascal c
Pascal c

ó
ó
s đ
s đ


c
c
ú
ú
ph
ph
á
á
p nh sau
p nh sau
:
:
\
\
T
T


đ
đ
ó
ó
c
c

ó
ó
th
th


xây d
xây d


ng c
ng c
á
á
c tên đ
c tên đ
ú
ú
ng trong Pascal nh sau
ng trong Pascal nh sau
:
:
u
u
Delta
Delta
,
,
x1
x1

,
,
x2
x2
,
,
Read
Read
, v.v
, v.v
u
u
Tr
Tr
á
á
i l
i l


i, c
i, c
á
á
c chu
c chu


i ký t
i ký t



1A
1A
,
,
β
β
,
,
π
π
,
,
b
b
á
á
n
n
k
k
í
í
nh
nh
, v
, v
.v
.v

đ
đ


u không ph
u không ph


i l
i l
à
à
tên
tên
Tên
Ch
Ch
S
S
Ch
Ch
A Z

a z

Ch
0 9

S
12/

12/
61
61
V
V
í
í
d
d


m
m


t NNLT đn gi
t NNLT đn gi


n
n
\
\
Vn ph
Vn ph


m c
m c



a m
a m


t NNLT đn gi
t NNLT đn gi


n d
n d


ng EBNF nh sau
ng EBNF nh sau
:
:
<program>
<program>
::=
::=
program
program
<statement>*
<statement>*
end
end
<statement>
<statement>
::= <assignment> | <loop>

::= <assignment> | <loop>
<assignment>
<assignment>
::= <identifier> := <expression> ;
::= <identifier> := <expression> ;
<loop>
<loop>
:=
:=
while
while
<expression>
<expression>
do
do
<statement>+
<statement>+
done
done
<expression>
<expression>
::= <value>
::= <value>
| <value> + <value> | <value> <= <value>
| <value> + <value> | <value> <= <value>
<value>
<value>
::= <identifier> | <number>
::= <identifier> | <number>
<identifier>

<identifier>
::= <letter>
::= <letter>
| <identifier><letter> | <identifier><digit>
| <identifier><letter> | <identifier><digit>
<letter>
<letter>
::=
::=


A
A


| |
| |


Z
Z


|
|


a
a



| |
| |


z
z


<digit>
<digit>
::=
::=


0
0


|
|
|
|


9
9


<number>

<number>
::= <digit> | <number><digit>
::= <digit> | <number><digit>
3
13/
13/
61
61
L
L


p tr
p tr
ì
ì
nh theo c
nh theo c
ú
ú
ph
ph
á
á
p vn ph
p vn ph


m
m

M
M


t câu, t
t câu, t


c l
c l
à
à
m
m


t chng tr
t chng tr
ì
ì
nh đn gi
nh đn gi


n, ch
n, ch


ng h
ng h



n :
n :
program
program
n := 1 ;
n := 1 ;
while
while
n <= 10
n <= 10
do
do
n := n + 1 ;
n := n + 1 ;
done end
done end
đ
đ


c s
c s


n sinh t
n sinh t



vn ph
vn ph


m đã cho nh
m đã cho nh


á
á
p d
p d


ng c
ng c
ú
ú
ph
ph
á
á
p vn ph
p vn ph


m
m
nh sau
nh sau

:
:
<program>
<program>
program
program
<statement>*
<statement>*
end
end
program
program
<statement> <statement>
<statement> <statement>
end
end
program
program
<assignment> <loop>
<assignment> <loop>
end
end
program
program
<identifier> := <expression> ;
<identifier> := <expression> ;
while
while
<expression>
<expression>

do
do
<statement>+
<statement>+
done end
done end
program
program
n := <value> ;
n := <value> ;
while
while
<value> <= <value>
<value> <= <value>
do
do
<statement>
<statement>
done
done
end
end
program
program
n := <number> ;
n := <number> ;
while
while
<identifier> <= <number>
<identifier> <= <number>

do
do
<assignment>
<assignment>
done end
done end
program n := 1 ;
program n := 1 ;
while
while
n <= 10
n <= 10
do
do
<identifier> := <expression> ;
<identifier> := <expression> ;
done end
done end
program n := 1 ;
program n := 1 ;
while
while
n <= 10
n <= 10
do
do
n := <value> + <value> ;
n := <value> + <value> ;
done end
done end

program n := 1 ;
program n := 1 ;
while
while
n <= 10
n <= 10
do
do
n := <identifier> + <number> ;
n := <identifier> + <number> ;
done end
done end
program n := 1 ;
program n := 1 ;
while
while
n <= 10
n <= 10
do
do
n := n + 1 ;
n := n + 1 ;
done end
done end
14/
14/
61
61
Nh
Nh



n x
n x
é
é
t
t
\
\
Ta đã l
Ta đã l
à
à
m quen v
m quen v


i hai phng ph
i hai phng ph
á
á
p :
p :
u
u
S
S



d
d


ng vn ph
ng vn ph


m đ
m đ


l
l


p tr
p tr
ì
ì
nh (t
nh (t


o ra câu c
o ra câu c


a ngôn ng
a ngôn ng



)
)
v
v
à
à
m
m


t tr
t tr
ì
ì
nh biên d
nh biên d


ch đ
ch đ


phân t
phân t
í
í
ch c
ch c

ú
ú
ph
ph
á
á
p,
p,
biên d
biên d


ch th
ch th
à
à
nh tr
nh tr
ì
ì
nh kh
nh kh


thi
thi
u
u
S
S



d
d


ng ôtôm
ng ôtôm
á
á
t đ
t đ


phân t
phân t
í
í
ch m
ch m


t câu c
t câu c


a ngôn ng
a ngôn ng



v
v
à
à
th
th


a nh
a nh


n câu khi qu
n câu khi qu
á
á
tr
tr
ì
ì
nh đo
nh đo
á
á
n nh
n nh


n l
n l

à
à
th
th
à
à
nh công
nh công
\
\
Hai phng ph
Hai phng ph
á
á
p n
p n
à
à
y b
y b


sung cho nhau v
sung cho nhau v
à
à
thông th
thông th



ng,
ng,
ng
ng


i ta s
i ta s


d
d


ng c
ng c


hai d
hai d


ng th
ng th


c
c
vn ph
vn ph



m
m
v
v
à
à
ôtôm
ôtôm
á
á
t
t
u
u
C
C
ó
ó
s
s


tng
tng


ng gi
ng gi



a mô t
a mô t


s
s


n sinh v
n sinh v
à
à
mô t
mô t


phân t
phân t
í
í
ch,
ch,
ngh
ngh


a l
a l

à
à
c
c
ó
ó
th
th


bi
bi


n đ
n đ


i m
i m


t mô t
t mô t


phân t
phân t
í
í

ch (m
ch (m


t ôtôm
t ôtôm
á
á
t h
t h


u h
u h


n)
n)
th
th
à
à
nh m
nh m


t mô t
t mô t



s
s


n sinh v
n sinh v
à
à
ng
ng


c l
c l


i
i
u
u
Lý thuy
Lý thuy


t NN h
t NN h
ì
ì
nh th
nh th



c cha mô t
c cha mô t


đ
đ


y đ
y đ


c
c
á
á
c NN t
c NN t


nhiên
nhiên
(ti
(ti


ng Anh, ti
ng Anh, ti



ng Ph
ng Ph
á
á
p, ti
p, ti


ng Vi
ng Vi


t )
t )
nhng mô t
nhng mô t


v
v
à
à
phân t
phân t
í
í
ch
ch

đ
đ


y đ
y đ


c
c
á
á
c NNLT v
c NNLT v
à
à
đ
đ


c
c
á
á
p d
p d


ng r
ng r



ng rãi trong Tin h
ng rãi trong Tin h


c
c
15/
15/
61
61
Ho
Ho


t đ
t đ


ng c
ng c


a vn ph
a vn ph


m
m

\
\
C
C
á
á
c quy t
c quy t


c đ
c đ


s
s


n sinh câu trên m
n sinh câu trên m


t b
t b


ng ch
ng ch



Σ
Σ
đã cho còn
đã cho còn
đ
đ


c g
c g


i l
i l
à
à
c
c
á
á
c
c
quy t
quy t


c vi
c vi



t l
t l


i
i
(Rewriting Rules)
(Rewriting Rules)
u
u
M
M


i quy t
i quy t


c ch
c ch


ra m
ra m


t dãy c
t dãy c
á
á

c ký hi
c ký hi


u (Symbols)
u (Symbols)
c
c
ó
ó
th
th


đ
đ


c thay th
c thay th


b
b


i m
i m



t dãy c
t dãy c
á
á
c ký hi
c ký hi


u kh
u kh
á
á
c
c
u
u
Nh
Nh


ng ký hi
ng ký hi


u c
u c
ó
ó
th
th



đ
đ


c thay th
c thay th


b
b


i m
i m


t dãy
t dãy
c
c
á
á
c ký hi
c ký hi


u kh
u kh

á
á
c đgl c
c đgl c
á
á
c
c
ký hi
ký hi


u s
u s


n sinh,
n sinh,
hay
hay
cha k
cha k


t th
t th
ú
ú
c
c

\
\




nh
nh


n đ
n đ


c m
c m


t câu n
t câu n
à
à
o đ
o đ
ó
ó
, n
, n
g
g



i ta ti
i ta ti


n h
n h
à
à
nh nh sau
nh nh sau
:
:
u
u
Xu
Xu


t ph
t ph
á
á
t t
t t


m
m



t ký t
t ký t


đ
đ


c bi
c bi


t, g
t, g


i l
i l
à
à
ký t
ký t


đ
đ



u
u
(Start Symbol),
(Start Symbol),
r
r


i
i
á
á
p d
p d


ng l
ng l


n l
n l


t c
t c
á
á
c quy t
c quy t



c c
c c


a vn ph
a vn ph


m
m
u
u
Khi không còn c
Khi không còn c
ó
ó
th
th


thay th
thay th


c
c
á
á

c ký hi
c ký hi


u b
u b


i c
i c
á
á
c quy t
c quy t


c c
c c


a
a
vn ph
vn ph


m, ta nh
m, ta nh



n đ
n đ


c câu ch
c câu ch


g
g


m nh
m nh


ng ký hi
ng ký hi


u c
u c


a
a
Σ
Σ
đã
đã

cho, cò
cho, cò
n đgl
n đgl
c
c
á
á
c ký hi
c ký hi


u k
u k


t th
t th
ú
ú
c
c
16/
16/
61
61





nh ngh
nh ngh


a h
a h
ì
ì
nh th
nh th


c vn ph
c vn ph


m
m
\
\
M
M


t vn ph
t vn ph


m l
m l

à
à
m
m


t b
t b


b
b


n G = (N,
n G = (N,
Σ
Σ
, R
, R
, S
, S
) t
) t
rong đ
rong đ
ó
ó
:
:

u
u
N l
N l
à
à
t
t


p h
p h


p h
p h


u h
u h


n c
n c
á
á
c ký t
c ký t



không k
không k


t th
t th
ú
ú
c (Non
c (Non
-
-
Terminal
Terminal
Symbols), hay còn g
Symbols), hay còn g


i l
i l
à
à
c
c
á
á
c bi
c bi



n, ch
n, ch


xu
xu


t hi
t hi


n trong qu
n trong qu
á
á
tr
tr
ì
ì
nh s
nh s


n sinh v
n sinh v
à
à
không xu
không xu



t hi
t hi


n trong c
n trong c
á
á
c câu đã đ
c câu đã đ


c vn
c vn
ph
ph


m sinh ra
m sinh ra
u
u


l
l
à
à

t
t


p h
p h


p h
p h


u h
u h


n c
n c
á
á
c ký t
c ký t


k
k


t th
t th

ú
ú
c, hay ký t
c, hay ký t


cu
cu


i
i
(Terminal Symbols),
(Terminal Symbols),




N,
N,
hay N
hay N




=
=



u
u
Ng
Ng


i ta đ
i ta đ


nh ngh
nh ngh


a b
a b


ng ch
ng ch


V = N
V = N




u
u

R
R


(V
(V
+
+
×
×
V
V
*
*
) l
) l
à
à
t
t


p h
p h


u h
u h



n c
n c
á
á
c quy t
c quy t


c (Rules), hay còn g
c (Rules), hay còn g


i
i
l
l
à
à
c
c
á
á
c s
c s


n xu
n xu



t (Productions), ch
t (Productions), ch
í
í
nh l
nh l
à
à
c
c
á
á
c quy t
c quy t


c vi
c vi


t l
t l


i v
i v


a
a

n
n
ó
ó
i
i


trên
trên
, t
, t
h
h


ng c
ng c
ó
ó
d
d


ng (
ng (
α
α
,
,

β
β
), hay
), hay
α
α


β
β
u
u
S
S


N l
N l
à
à
ký t
ký t


đ
đ


u (Start Symbol)
u (Start Symbol)

17/
17/
61
61
Ý ngh
Ý ngh


a c
a c


a c
a c
á
á
c s
c s


n xu
n xu


t
t
\
\
M
M



i s
i s


n xu
n xu


t d
t d


ng (
ng (
α
α
,
,
β
β
) cho bi
) cho bi


t :
t :
u
u

Ph
Ph


n t
n t


bên tr
bên tr
á
á
i (
i (
α
α


V
V
+
+
) c
) c


a s
a s



n xu
n xu


t
t
đ
đ


c thay th
c thay th


b
b


i ph
i ph


n t
n t


bên ph
bên ph



i (
i (
β
β


V
V
*
*
)
)
\
\
T
T


S, b
S, b


t đ
t đ


u qu
u qu
á
á

tr
tr
ì
ì
nh s
nh s


n sinh câu b
n sinh câu b


ng c
ng c
á
á
ch :
ch :
u
u
Á
Á
p d
p d


ng s
ng s



n xu
n xu


t đ
t đ


u tiên l
u tiên l
à
à
S
S


α
α
u
u
Sau đ
Sau đ
ó
ó
t
t
ì
ì
m trong
m trong

α
α
c
c
á
á
c ph
c ph


n câu
n câu
u
u


V
V
+
+
c
c
ó
ó
ch
ch


a bi
a bi



n X
n X


N
N
đ
đ


á
á
p d
p d


ng tu
ng tu


ý c
ý c
á
á
c s
c s



n xu
n xu


t
t
u
u


v
v
u
u
Th
Th


c hi
c hi


n m
n m


t c
t c
á
á

ch đ
ch đ


quy cho đ
quy cho đ


n khi nh
n khi nh


n đ
n đ


c câu w
c câu w
ch
ch


ch
ch


a c
a c
á
á

c ký hi
c ký hi


u a
u a


Σ
Σ
, hay n
, hay n
ó
ó
i c
i c
á
á
ch kh
ch kh
á
á
c,
c,
w
w


Σ
Σ

*
*
\
\
Thông th
Thông th


ng, n
ng, n
g
g


i ta t
i ta t
ì
ì
m c
m c
á
á
c ph
c ph


n câu
n câu
u
u

đ
đ


á
á
p d
p d


ng c
ng c
á
á
c
c
s
s


n xu
n xu


t l
t l


n l
n l



t t
t t


tr
tr
á
á
i qua ph
i qua ph


i
i
18/
18/
61
61
M
M


t s
t s


quy 
quy 



c
c
\
\
Sau đây l
Sau đây l
à
à
m
m


t s
t s


quy 
quy 


c khi mô t
c khi mô t


vn ph
vn ph



m G :
m G :
u
u
C
C
á
á
c bi
c bi


n A, B, C , X, Y
n A, B, C , X, Y


N = V
N = V




u
u
C
C
á
á
c ký t
c ký t



thu
thu


c
c


đ
đ


c bi
c bi


u di
u di


n b
n b


i
i
a
a

,
,
b
b
, c
, c
u
u
C
C
á
á
c quy t
c quy t


c, hay s
c, hay s


n xu
n xu


t
t
(
(
α
α

,
,
β
β
)
)


R
R
,
,
đ
đ


c vi
c vi


t d
t d


ng :
ng :
α
α



β
β
hay
hay
α
α


G
G
β
β
n
n


u mu
u mu


n ch
n ch


đ
đ


nh đ
nh đ

ó
ó
l
l
à
à
s
s


n xu
n xu


t thu
t thu


c vn ph
c vn ph


m G
m G
khi l
khi l
à
à
m vi
m vi



c c
c c
ù
ù
ng l
ng l
ú
ú
c v
c v


i nhi
i nhi


u vn ph
u vn ph


m kh
m kh
á
á
c nhau
c nhau
u
u

Ký t
Ký t


đ
đ


u luôn luôn bi
u luôn luôn bi


u di
u di


n b
n b


i S
i S
u
u
C
C
á
á
c câu r
c câu r



ng đ
ng đ


c bi
c bi


u di
u di


n b
n b


i
i
ε
ε
4
19/
19/
61
61
V
V
í

í
d
d


\
\
Cho vn ph
Cho vn ph


m G = (V,
m G = (V,


, R, S) v
, R, S) v


i :
i :
u
u
N = { S, A, B }
N = { S, A, B }
u
u


= {

= {
a
a
,
,
b
b
}, S l
}, S l
à
à
ký t
ký t


đ
đ


u.
u.
u
u
R = { S
R = { S


A, S
A, S



B, B
B, B


bB, B
bB, B


ε
ε
, A
, A


aA, A
aA, A


ε
ε
}
}
u
u




cho g

cho g


n, khi mô t
n, khi mô t


m
m


t vn ph
t vn ph


m,
m,
ng
ng


i ta th
i ta th


ng nh
ng nh
ó
ó
m

m
c
c
á
á
c quy t
c quy t


c c
c c
ó
ó
c
c
ù
ù
ng ký t
ng ký t


bên tr
bên tr
á
á
i v
i v


i nhau :

i nhau :
S
S


A | B
A | B
B
B


bB |
bB |
ε
ε
A
A


aA |
aA |
ε
ε
u
u
Thay v
Thay v
ì
ì
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 vn ph
a vn ph


m G,
m G,
ng

ng


i ta ch
i ta ch


li
li


t kê c
t kê c
á
á
c quy t
c quy t


c R c
c R c


a vn ph
a vn ph


m m
m m
à

à
thôi
thôi
u
u
Ch
Ch


ng h
ng h


n vn ph
n vn ph


m G
m G


trên ch
trên ch


c
c


n li

n li


t kê c
t kê c
á
á
c quy t
c quy t


c :
c :
G { S
G { S


A | B ; B
A | B ; B


bB |
bB |
ε
ε
;
;
A
A



aA |
aA |
ε
ε
}
}
20/
20/
61
61
S
S


n sinh câu trong G
n sinh câu trong G
\
\
Cho G { S
Cho G { S


A | B ; B
A | B ; B


bB |
bB |
ε

ε
;
;
A
A


aA |
aA |
ε
ε
}
}
\
\
B
B


ng c
ng c
á
á
ch
ch
á
á
p d
p d



ng liên ti
ng liên ti


p c
p c
á
á
c s
c s


n xu
n xu


t trong R, ta nh
t trong R, ta nh


n
n
đ
đ


c c
c c
á

á
c câu s
c câu s


n sinh b
n sinh b


i vn ph
i vn ph


m G
m G
\
\
V
V
í
í
d
d


,
,
aaaa
aaaa
l

l
à
à
m
m


t câu do G sinh ra b
t câu do G sinh ra b


ng c
ng c
á
á
ch
ch
á
á
p d
p d


ng l
ng l


n
n
l

l


t c
t c
á
á
c s
c s


n xu
n xu


t :
t :
S
S
A
A
Á
Á
p d
p d


ng
ng
S

S


A
A
aA
aA


A
A


aA
aA
aaA
aaA


A
A


aA
aA
aaaA
aaaA


A

A


aA
aA
aaaaA
aaaaA


A
A


aA
aA
aaaa
aaaa


A
A


ε
ε
S
S
A
A
a

a
A
A
a
a
A
A
a
a
A
A
a
a
A
A
ε
ε
ε
21/
21/
61
61
Ph
Ph
é
é
p suy d
p suy d



n m
n m


t b
t b


c trong G
c trong G
\
\
Cho vn ph
Cho vn ph


m G = (N,
m G = (N,


, R, S),
, R, S),
u
u


V
V
+
+

, v
, v


V
V
*
*
đgl c
đgl c
á
á
c d
c d


ng câu
ng câu
\
\
Câu v đ
Câu v đ


c s
c s


n sinh t
n sinh t



u b
u b


ng
ng
m
m


t b
t b


c suy d
c suy d


n
n
trong G
trong G
(derives
(derives
v from u in one step)
v from u in one step)
đ
đ



c bi
c bi


u di
u di


n b
n b


i :
i :
u
u


G
G
v
v
n
n


u
u

(n
(n


u v
u v
à
à
ch
ch


n
n


u) :
u) :
u
u
u = xu
u = xu


y
y
u g
u g



m 3 ph
m 3 ph


n x, u
n x, u


v
v
à
à
y, x v
y, x v
à
à
y c
y c
ó
ó
th
th


r
r


ng
ng

u
u
v = xv
v = xv


y
y
v g
v g


m 3 ph
m 3 ph


n x, v
n x, v


v
v
à
à
y
y
u
u
u
u





v
v


l
l
à
à
m
m


t sx c
t sx c


a G
a G
22/
22/
61
61
Ph
Ph
é
é

p suy d
p suy d


n nhi
n nhi


u b
u b


c trong G
c trong G
\
\
Cho vn ph
Cho vn ph


m G = (N,
m G = (N,


, R, S),
, R, S),
u
u



V
V
+
+
, v
, v


V
V
*
*
đgl c
đgl c
á
á
c d
c d


ng câu
ng câu
\
\
Câu v đ
Câu v đ


c s
c s



n sinh t
n sinh t


u b
u b


ng
ng
nhi
nhi


u b
u b


c suy d
c suy d


n
n
trong G
trong G
(derives v from u in several steps)
(derives v from u in several steps)

đ
đ


c bi
c bi


u di
u di


n b
n b


i :
i :
u
u


*
*
G
G
v
v
n
n



u
u
:
:
u
u


k
k


0 v
0 v
à
à
v
v
0
0
v
v
k
k


V
V

+
+
sao cho :
sao cho :
u
u
u = v
u = v
0
0
u
u
v = v
v = v
k
k
u
u
v
v
i
i


G
G
v
v
i+1
i+1

v
v


i
i


i, 0
i, 0
<
<
i
i


k
k
\
\
C
C
ó
ó
th
th


vi
vi



t đ
t đ


y đ
y đ


khi k nh
khi k nh


:
:
u
u


*
*
G
G
v
v
n
n



u
u
u =
u =
v
v
0
0


G
G
v
v
1
1


G
G
v
v
2
2


G
G





G
G
v
v
k
k
= v
= v
23/
23/
61
61
Vn ph
Vn ph


m G sinh ra câu
m G sinh ra câu
\
\
Vn ph
Vn ph


m G sinh ra c
m G sinh ra c
á
á

c câu b
c câu b


ng c
ng c
á
á
ch th
ch th


c hi
c hi


n qu
n qu
á
á
tr
tr
ì
ì
nh
nh
suy d
suy d



n t
n t


ký t
ký t


đ
đ


u S cho đ
u S cho đ


n khi nh
n khi nh


n đ
n đ


c câu g
c câu g


m c
m c

á
á
c
c
ký t
ký t


k
k


t th
t th
ú
ú
c thu
c thu


c
c
Σ
Σ
, w
, w


Σ
Σ

*
*
\
\
Ng
Ng


i ta vi
i ta vi


t : S
t : S


*
*
G
G
w
w
\
\
Ngôn ng
Ngôn ng


L do vn ph
L do vn ph



m G sinh ra, vi
m G sinh ra, vi


t
t
L
L
(G),
(G),
l
l
à
à
t
t


p h
p h


p c
p c
á
á
c câu sao cho :
c câu sao cho :

L(G) = { w
L(G) = { w


Σ
Σ
* | S
* | S


*
*
G
G
w }
w }
\
\
V
V
í
í
d
d


:
:
u
u

Vn ph
Vn ph


m G { S
m G { S


A | B ; B
A | B ; B


bB |
bB |
ε
ε
;
;
A
A


aA |
aA |
ε
ε
}
}
sinh ra ngôn ng
sinh ra ngôn ng



L(G) = a
L(G) = a
*
*


b
b
*
*
g
g


m c
m c
á
á
c câu ho
c câu ho


c ch
c ch


a to
a to

à
à
n ch
n ch


a, ho
a, ho


c ch
c ch


a to
a to
à
à
n ch
n ch


b
b
24/
24/
61
61
Phân c
Phân c



p vn ph
p vn ph


m c
m c


a Chomsky
a Chomsky
\
\
N.
N.
Chomsky, chia
Chomsky, chia
vn ph
vn ph


m th
m th
à
à
nh b
nh b



n lo
n lo


i t
i t
ù
ù
y theo t
y theo t
í
í
nh
nh
ch
ch


t c
t c


a c
a c
á
á
c s
c s



n xu
n xu


t s
t s


d
d


ng trong vn ph
ng trong vn ph


m :
m :
u
u
Lo
Lo


i 0
i 0
Vn ph
Vn ph



m t
m t


do
do
¬
¬
Không gi
Không gi


i h
i h


n v
n v


s
s


n xu
n xu


t (s
t (s



n xu
n xu


t c
t c
ó
ó
d
d


ng b
ng b


t k
t k


)
)
u
u
Lo
Lo



i 1
i 1
Vn ph
Vn ph


m c
m c


m ng
m ng


c
c


nh
nh
(Context Sensitive Grammar)
(Context Sensitive Grammar)
¬
¬
C
C
á
á
c s
c s



n xu
n xu


t c
t c
ó
ó
d
d


ng
ng
α→β
α→β
,
,
|
|
α
α
|
|


|
|

β
β
| v
| v
à
à
S
S


ε
ε
u
u
Lo
Lo


i 2
i 2
Vn ph
Vn ph


m phi ng
m phi ng


c
c



nh (Context Free Grammar)
nh (Context Free Grammar)
¬
¬
C
C
á
á
c s
c s


n xu
n xu


t c
t c
ó
ó
d
d


ng A
ng A



β
β
, A
, A


N, không c
N, không c
ó
ó
h
h


n ch
n ch


g
g
ì
ì
v
v


β
β
u
u

Lo
Lo


i 3
i 3
Vn ph
Vn ph


m ch
m ch
í
í
nh qui (Regular Grammar)
nh qui (Regular Grammar)
¬
¬
S
S


n xu
n xu


t c
t c
ó
ó

d
d


ng :
ng :
A
A


wB | w, , A v
wB | w, , A v
à
à
B
B


N, w
N, w


Σ
Σ
*
*
ho
ho



c
c
A
A


Bw | w
Bw | w
5
25/
25/
61
61
Nh
Nh


n x
n x
é
é
t v
t v


vn ph
vn ph


m ch

m ch
í
í
nh qui
nh qui
\
\
M
M


i s
i s


n xu
n xu


t c
t c


a vn ph
a vn ph


m ch
m ch
í

í
nh qui :
nh qui :
u
u
C
C
ó
ó
v
v


tr
tr
á
á
i
i
α
α
l
l
à
à
m
m


t ký t

t ký t


A
A


N
N
u
u
C
C
ó
ó
v
v


ph
ph


i
i
β
β
g
g



m c
m c
á
á
c ký t
c ký t


k
k


t th
t th
ú
ú
c w
c w


Σ
Σ
*,
*,
ti
ti


p theo sau,

p theo sau,
hay đ
hay đ


t tr
t tr


c, ho
c, ho


c không c
c không c
ó
ó
, m
, m


t ký t
t ký t


B
B


N

N
\
\
Vn ph
Vn ph


m ch
m ch
í
í
nh qui G {A
nh qui G {A


Bw | w
Bw | w
}
}
đgl vn ph
đgl vn ph


m
m
tuy
tuy


n t

n t
í
í
nh tr
nh tr
á
á
i
i
(
(
Left Linear Grammars)
Left Linear Grammars)
\
\
Vn ph
Vn ph


m ch
m ch
í
í
nh qui G {A
nh qui G {A


wB
wB
| w

| w
}
}
đgl vn ph
đgl vn ph


m
m
tuy
tuy


n t
n t
í
í
nh ph
nh ph


i
i
(
(
Right Linear Grammars)
Right Linear Grammars)
\
\
Ng

Ng


i ta ch
i ta ch


ng minh đ
ng minh đ


c r
c r


ng m
ng m


i ngôn ng
i ngôn ng


s
s


n sinh b
n sinh b



i
i
m
m


t vn ph
t vn ph


m
m
tuy
tuy


n t
n t
í
í
nh ph
nh ph


i
i
c
c



ng c
ng c
ó
ó
th
th


đ
đ


c s
c s


n sinh
n sinh
b
b


i m
i m


t vn ph
t vn ph



m
m
tuy
tuy


n t
n t
í
í
nh tr
nh tr
á
á
i
i
v
v
à
à
ng
ng


c l
c l


i

i
26/
26/
61
61
Quan h
Quan h


gi
gi


a c
a c
á
á
c lo
c lo


i vn ph
i vn ph


m
m
\
\
Quy 

Quy 


c g
c g


i vn ph
i vn ph


m lo
m lo


i i l
i i l
à
à
Vp
Vp
i
i
,
,
i=0 3,
i=0 3,
quan h
quan h



gi
gi


a c
a c
á
á
c lo
c lo


i vn ph
i vn ph


m đ
m đ


c bi
c bi


u di
u di


n nh sau

n nh sau
:
:
VP
VP
3
3


VP
VP
2
2


VP
VP
1
1


VP
VP
0
0
u
u
Quan h
Quan h



bao h
bao h
à
à
m
m


trên l
trên l
à
à
th
th


c s
c s


:
:
i>j n
i>j n


u VP
u VP
i

i


VP
VP
j
j
u
u
V
V


i i>j th
i i>j th
ì
ì
m
m


t vn ph
t vn ph


m lo
m lo


i i

i i
c
c


ng l
ng l
à
à
vn ph
vn ph


m lo
m lo


i j
i j
u
u
S
S


bao h
bao h
à
à
m gi

m gi


a VP
a VP
2
2
v
v
à
à
VP
VP
1
1
không đ
không đ


c th
c th


t rõ r
t rõ r
à
à
ng :
ng :
¬

¬
VP
VP
2
2
c
c
ó
ó
th
th


ch
ch


a c
a c
á
á
c s
c s


n xu
n xu


t d

t d


ng A
ng A


ε
ε
¬
¬
D
D
o v
o v


y,
y,
đi
đi


u ki
u ki


n |
n |
α

α
|
|


|
|
β
β
| c
| c


a c
a c
á
á
c VP
c VP
1
1
không th
không th


a mãn
a mãn
¬
¬
V

V


i m
i m


i lo
i lo


i s
i s


n xu
n xu


t kh
t kh
á
á
c,
c,
đi
đi


u ki

u ki


n n
n n
à
à
y l
y l


i th
i th


a mãn
a mãn
27/
27/
61
61
Σ
*
S
S


bao h
bao h
à

à
m gi
m gi


a c
a c
á
á
c vn ph
c vn ph


m
m
VP
0
VP
1
VP
2
VP
3
28/
28/
61
61
T
T
í

í
nh tng đng gi
nh tng đng gi


a vn ph
a vn ph


m v
m v
à
à
ôtômat
ôtômat
\
\
B
B


ng t
ng t
ó
ó
m t
m t


t v

t v


t
t
í
í
nh tng đng gi
nh tng đng gi


a vn ph
a vn ph


m v
m v
à
à
ôtômat
ôtômat
c
c


a c
a c
á
á
c l

c l


p vn ph
p vn ph


m theo Chomsky :
m theo Chomsky :
{a
n
b
n
| n ≥ 1}
Ôtômat
đy xung
A →αPhi ng cnh
2
{0(10)
n
| n ≥ 0}Ôtômat hu hnA → bB | w
Chính quy3
{a
n
b
n
c
n
| n ≥ 1}
Máy Turing vi

bng hu hn
α→β,
|α| ≤ |β|
Cm ng cnh
1
Ngôn ng t nhiên
Máy Turing
Không có
hn ch gì
T do
0
Ví d
Ôtômat
Dng sn xutVn phmLoi
29/
29/
61
61
C
C
á
á
c vn ph
c vn ph


m ch
m ch
í
í

nh qui
nh qui
\
\
C
C
á
á
c VP
c VP
3
3
đgl vn ph
đgl vn ph


m ch
m ch
í
í
nh quy l
nh quy l
à
à
không ph
không ph


i ng
i ng



u nhiên
u nhiên
\
\
Th
Th


c t
c t


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


đ
đ


c s
c s



n sinh b
n sinh b


i VP
i VP
3
3
đ
đ


u l
u l
à
à
ngôn ng
ngôn ng


ch
ch
í
í
nh quy
nh quy
\
\
Ta c
Ta c

ó
ó
đ
đ


nh lý sau đây
nh lý sau đây
:
:
u
u
M
M


t ngôn ng
t ngôn ng


l
l
à
à
ch
ch
í
í
nh qui n
nh qui n



u
u
ngôn ng
ngôn ng


đ
đ
ó
ó
đ
đ


c s
c s


n sinh b
n sinh b


i m
i m


t vn ph
t vn ph



m ch
m ch
í
í
nh qui
nh qui
Ng
Ng


i ta vi
i ta vi


t :
t :
u
u
L(G) = L(
L(G) = L(
α
α
) = L(M) = L
) = L(M) = L
V
V



i G l
i G l
à
à
VP
VP
3
3
,
,
α
α
l
l
à
à
m
m


t BTCQ v
t BTCQ v
à
à
M l
M l
à
à
m
m



t ôhh
t ôhh
L
L
l
l
à
à
m
m


t ngôn ng
t ngôn ng


ch
ch
í
í
nh qui
nh qui
30/
30/
61
61
Xây d
Xây d



ng
ng
VPCQ G t
VPCQ G t


NNCQ L
NNCQ L






Cho L NNCQ, c
Cho L NNCQ, c


n xây d
n xây d


ng VPCQ G sao cho
ng VPCQ G sao cho
L(G) = L :
L(G) = L :
u
u

L NNCQ
L NNCQ
nên
nên
đ
đ


c th
c th


a nh
a nh


n b
n b


i m
i m


t ôhh không đn đ
t ôhh không đn đ


nh M,
nh M,

L =
L =
L
L
(M),
(M),
trong đ
trong đ
ó
ó
:
:
M = (Q,
M = (Q,
Σ
Σ
,
,
Δ
Δ
, q0, A)
, q0, A)
u
u
S
S


d
d



ng M đ
ng M đ


xây d
xây d


ng m
ng m


t VPCQ G = (V
t VPCQ G = (V
G
G
,
,
Σ
Σ
G
G
, S
, S
G
G
, R
, R

G
G
)
)
sao cho L(G) = L
sao cho L(G) = L
u
u
C
C
á
á
c ph
c ph


n t
n t


c
c


a G đ
a G đ


c đ
c đ



nh ngh
nh ngh


a theo M nh sau
a theo M nh sau
:
:
¬
¬
Σ
Σ
G
G
=
=
Σ
Σ
(c
(c
á
á
c ký t
c ký t


cu
cu



i c
i c


a vn ph
a vn ph


m G l
m G l
à
à
b
b


ng ch
ng ch


c
c


a M)
a M)
¬
¬

N
N
G
G
= Q (ký t
= Q (ký t


không k
không k


t th
t th
ú
ú
c c
c c


a G l
a G l
à
à
tr
tr


ng th
ng th

á
á
i c
i c


a M)
a M)
¬
¬
S
S
G
G
= q
= q
0
0
(ký t
(ký t


đ
đ


u c
u c



a G l
a G l
à
à
tr
tr


ng th
ng th
á
á
i đ
i đ


u c
u c


a M)
a M)
¬
¬
R
R
G
G
= { A
= { A



wB cho
wB cho


(A, w, B)
(A, w, B)


Δ
Δ
v
v
à
à
A
A


ε
ε
cho
cho


A
A



F }
F }
6
31/
31/
61
61
V
V
í
í
d
d


1 : xây d
1 : xây d


ng
ng
VP
VP
3
3
G t
G t


NNCQ L

NNCQ L
\
\
Cho M v
Cho M v


i L(M) l
i L(M) l
à
à
NNCQ g
NNCQ 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
hay m
hay m


i câu b
i câu b


t k
t k


k
k


t th
t th
ú

ú
c b
c b


i m
i m


t con b
t con b
u
u
V
V
í
í
d
d


c
c
á
á
c câu sau
c câu sau


L(M) :

L(M) :
¬
¬
b
b
¬
¬
abbab
abbab
¬
¬
aaabbb = a
aaabbb = a
3
3
b
b
3
3


\
\
Xây d
Xây d


ng
ng
VPCQ G t

VPCQ G t


ôhh M sao cho L(G)=L(M) :
ôhh M sao cho L(G)=L(M) :
G {
G {
S
S


a
a
S
S
| bA ;
| bA ;
A
A


bA | aS ;
bA | aS ;
A
A


ε
ε
}

}
do A l
do A l
à
à
tr
tr


ng th
ng th
á
á
i cu
i cu


i duy nh
i duy nh


t
t
b
b
a
a
A
A
AS

S
S
a
a
b
b
32/
32/
61
61
V
V
í
í
d
d


2 : xây d
2 : xây d


ng
ng
VP
VP
3
3
G t
G t



NNCQ L
NNCQ L
\
\
Cho M nh sau
Cho M nh sau
:
:
\
\
Xây d
Xây d


ng
ng
VPCQ G t
VPCQ G t


ôhh M sao cho L(G)=L(M) :
ôhh M sao cho L(G)=L(M) :
G {
G {
S
S



b
b
S
S
| aA ;
| aA ;
A
A


aB | bS ; B
aB | bS ; B


aB | bC ;
aB | bC ;
C
C


b
b
S
S
| aA |
| aA |
ε
ε
}
}

33/
33/
61
61
B
B
à
à
i t
i t


p
p
\
\
Xây d
Xây d


ng c
ng c
á
á
c
c
VPCQ G t
VPCQ G t



c
c
á
á
c ôhh M d
c ôhh M d


i đây
i đây
:
:
34/
34/
61
61
Xây d
Xây d


ng ôhh M đo
ng ôhh M đo
á
á
n nh
n nh


n NN L(G), G VP
n NN L(G), G VP

3
3






Cho VPCQ G v
Cho VPCQ G v


i L =
i L =
L(G)
L(G)
, c
, c


n xây d
n xây d


ng ôhh M không
ng ôhh M không
đn đ
đn đ



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


n
n
L :
L :
u
u
Gi
Gi


s
s


G = (V
G = (V
G
G
,
,
Σ
Σ

G
G
, S
, S
G
G
, R
, R
G
G
) l
) l
à
à
VP
VP
3
3
s
s


n sinh ra ngôn ng
n sinh ra ngôn ng


L
L
u
u

Xây d
Xây d


ng NFA M=(Q,
ng NFA M=(Q,
Σ
Σ
,
,
Δ
Δ
, q
, q
0
0
, F) th
, F) th


a nh
a nh


n L(
n L(
G)
G)
nh sau
nh sau

:
:
¬
¬
Q = N
Q = N


{
{
h
h
}
}
(
(
tr
tr


ng th
ng th
á
á
i c
i c


a M l
a M l

à
à
ký hi
ký hi


u không k
u không k


t th
t th
ú
ú
c c
c c


a G
a G
c
c


ng thêm m
ng thêm m


t tr
t tr



ng th
ng th
á
á
i m
i m


i
i
h
h
)
)
¬
¬
Σ
Σ
=
=
Σ
Σ
G
G
¬
¬
q
q

0
0
= S
= S
G
G
¬
¬
F = { h }
F = { h }
(
(
M chi c
M chi c
ó
ó
m
m


t tr
t tr


ng th
ng th
á
á
i cu
i cu



i duy nh
i duy nh


t l
t l
à
à
h )
h )
¬
¬
Δ
Δ
= {
= {
(A, w, B )
(A, w, B )
v
v


i
i


A
A



wB
wB


R
R
G
G
v
v
à
à
(A, w, h )
(A, w, h )
v
v


i
i


A
A


w
w



R
R
G
G
}
}
u
u
Nh v
Nh v


y L(G) l
y L(G) l
à
à
ngôn ng
ngôn ng


đ
đ


c M th
c M th



a nh
a nh


n v
n v
à
à
l
l
à
à
NNCQ
NNCQ
35/
35/
61
61
V
V
í
í
d
d


1
1
\
\

Cho VP
Cho VP
3
3
G g
G g


m c
m c
á
á
c sx nh sau
c sx nh sau
:
:
{
{
S
S


a
a
S
S
| bS | abb }
| bS | abb }
\
\

Xây d
Xây d


ng ôhh M sao cho L(M) = L(G) :
ng ôhh M sao cho L(M) = L(G) :
abb
abb
A
A
A
S
S
S
a, b
a, b
Ho
Ho


c
c
g
g


n hn
n hn
abb
abb

A
A
A
S
S
S
a
a
b
b
Chú ý A là trng thái cui mi thêm vào
Ch
Ch
ú
ú
ý A l
ý A l
à
à
tr
tr


ng th
ng th
á
á
i cu
i cu



i m
i m


i thêm v
i thêm v
à
à
o
o
36/
36/
61
61
V
V
í
í
d
d


2
2
\
\
Cho VP
Cho VP
3

3
G g
G g


m c
m c
á
á
c sx nh sau
c sx nh sau
:
:
{
{
S
S


a
a
S
S
| bS | a | b }
| bS | a | b }
\
\
Xây d
Xây d



ng ôhh M sao cho L(M) = L(G) :
ng ôhh M sao cho L(M) = L(G) :
a, b
a, b
A
A
A
S
S
S
a, b
a, b
Chú ý A là trng thái cui mi thêm vào
Ch
Ch
ú
ú
ý A l
ý A l
à
à
tr
tr


ng th
ng th
á
á

i cu
i cu


i m
i m


i thêm v
i thêm v
à
à
o
o
7
37/
37/
61
61
B
B
à
à
i t
i t


p
p
\

\
Cho c
Cho c
á
á
c VP
c VP
3
3
G
G
i
i
nh sau
nh sau
:
:
G
G
1
1
{ S
{ S


b
b
S
S
| aT |

| aT |
ε ;
ε ;
T
T


aT | bU |
aT | bU |
ε
ε
; U
; U


aT |
aT |
ε
ε
}
}
G
G
2
2
{ S
{ S


aA | aB | b

aA | aB | b
;
;
A
A


b
b
; B
; B


bB | a }
bB | a }
\
\
Xây d
Xây d


ng c
ng c
á
á
c ôhh M th
c ôhh M th


a nh

a nh


n c
n c
á
á
c L(G
c L(G
i
i
)
)
38/
38/
61
61
C
C
á
á
c ngôn ng
c ngôn ng


ch
ch
í
í
nh quy

nh quy
\
\
Cho NNCQ L, t
Cho NNCQ L, t
a đã x
a đã x
é
é
t b
t b


n công c
n công c


kh
kh
á
á
c nhau
c nhau
đ
đ


bi
bi



u di
u di


n, hay ch
n, hay ch


đ
đ


nh L :
nh L :
u
u
Bi
Bi


u th
u th


c ch
c ch
í
í
nh quy

nh quy
α
α
:
:
L = L(
L = L(
α
α
)
)
u
u
Ôtômat h
Ôtômat h


u h
u h


n đn đ
n đn đ


nh M :
nh M :
L = L(M)
L = L(M)
u

u
Ôtômat h
Ôtômat h


u h
u h


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


nh M :
nh M :
L =
L =
L
L
(M)
(M)
u
u
Vn ph
Vn ph


m ch
m ch
í

í
nh quy G
nh quy G
L = L(G)
L = L(G)
\
\
Sau đây
Sau đây
, ta ti
, ta ti


p t
p t


c x
c x
é
é
t c
t c
á
á
c t
c t
í
í
nh ch

nh ch


t c
t c


a NNCQ
a NNCQ
39/
39/
61
61
C
C
á
á
c t
c t
í
í
nh ch
nh ch


t c
t c


a ngôn ng

a ngôn ng


ch
ch
í
í
nh quy
nh quy
\
\
Cho hai NNCQ L
Cho hai NNCQ L
1
1
v
v
à
à
L
L
2
2
\
\
Ta c
Ta c
ó
ó
t

t
í
í
nh ch
nh ch


t sau đây
t sau đây
:
:
C
C
á
á
c ngôn ng
c ngôn ng


đ
đ


c t
c t


o th
o th
à

à
nh b
nh b


i
i
u
u
Ph
Ph
é
é
p h
p h


p c
p c


a hai NNCQ
a hai NNCQ
L
L
1
1


L

L
2
2
u
u
Ph
Ph
é
é
p gh
p gh
é
é
p ti
p ti


p c
p c


a hai NNCQ
a hai NNCQ
L
L
1
1
.
.
L

L
2
2
u
u
Ph
Ph
é
é
p ngh
p ngh


ch đ
ch đ


o m
o m


t NNCQ
t NNCQ
L
L
1
1
R
R
u

u
Ph
Ph
é
é
p l
p l


y ph
y ph


n b
n b
ù
ù
m
m


t NNCQ
t NNCQ
L
L
1
1
=
=
Σ

Σ


L
L
1
1
u
u
Ph
Ph
é
é
p giao c
p giao c


a hai NNCQ
a hai NNCQ
L
L
1
1


L
L
2
2
đ

đ


u l
u l
à
à
c
c
á
á
c NNCQ
c NNCQ
40/
40/
61
61
Ph
Ph
é
é
p h
p h


p c
p c


a hai NNCQ

a hai NNCQ
L
L
1
1


L
L
2
2
\
\
Cho hai NNCQ L
Cho hai NNCQ L
1
1
v
v
à
à
L
L
2
2
\
\
Gi
Gi



s
s


α
α
1
1
v
v
à
à
α
α
2
2
l
l
à
à
c
c
á
á
c BTCQ ch
c BTCQ ch


đ

đ


nh L
nh L
1
1
, L
, L
2
2
tng
tng


ng :
ng :
u
u
L
L
1
1
= L(
= L(
α
α
1
1
)

)
u
u
L
L
2
2
= L(
= L(
α
α
2
2
)
)
\
\
Khi đ
Khi đ
ó
ó
, bi
, bi


u th
u th


c ch

c ch
í
í
nh quy :
nh quy :
u
u
α
α
1
1


α
α
2
2
ch
ch


đ
đ


nh ngôn ng
nh ngôn ng


:

:
L(
L(
α
α
1
1


α
α
2
2
) = L
) = L
1
1


L
L
2
2
c
c


ng l
ng l
à

à
NNCQ
NNCQ
41/
41/
61
61
Ph
Ph
é
é
p gh
p gh
é
é
p ti
p ti


p c
p c


a hai NNCQ
a hai NNCQ
L
L
1
1
.

.
L
L
2
2
\
\
Bi
Bi


u th
u th


c ch
c ch
í
í
nh quy :
nh quy :
α
α
1
1
α
α
2
2
ch

ch


đ
đ


nh ngôn ng
nh ngôn ng


:
:
L(
L(
α
α
1
1
α
α
2
2
) = L
) = L
1
1
.
.
L

L
2
2
c
c


ng l
ng l
à
à
NNCQ
NNCQ
42/
42/
61
61
Ph
Ph
é
é
p ngh
p ngh


ch đ
ch đ


o m

o m


t NNCQ
t NNCQ
L
L
1
1
R
R
\
\
Gi
Gi


s
s


w
w
R
R
l
l
à
à
ngh

ngh


ch đ
ch đ


o c
o c


a câu w (v
a câu w (v
í
í
d
d


aab
aab
R
R
= baa)
= baa)
Khi đ
Khi đ
ó
ó
ngôn ng

ngôn ng


L
L
1
1
R
R
= { w | w
= { w | w
R
R


L
L
1
1
} l
} l
à
à
NNCQ
NNCQ
\
\
T
T



ôhh M = (Q,
ôhh M = (Q,


,
,
Δ
Δ
, q
, q
0
0
, F) th
, F) th


a nh
a nh


n L
n L
1
1
, xây d
, xây d


ng

ng
ôhh M
ôhh M


=(Q
=(Q


,
,




,
,
Δ
Δ


, q
, q
0
0


, F
, F



) th
) th


a nh
a nh


n L
n L
1
1
R
R
nh sau
nh sau
:
:
u
u
Q
Q


= Q
= Q


{

{
q
q
0
0


} (q
} (q
0
0


l
l
à
à
tr
tr


ng th
ng th
á
á
i đ
i đ


u m

u m


i đ
i đ


c thêm v
c thêm v
à
à
o)
o)
u
u




=
=


u
u
F
F


= { q

= { q
0
0
} (tr
} (tr


ng th
ng th
á
á
i đ
i đ


u tr
u tr


th
th
à
à
nh tr
nh tr


ng th
ng th
á

á
i cu
i cu


i duy nh
i duy nh


t)
t)
u
u
Δ
Δ


= { (q, w
= { (q, w
R
R
, p) | (p, w, q)
, p) | (p, w, q)


Δ
Δ
}
}



{ (q
{ (q
0
0


,
,
ε
ε
, q) | q
, q) | q


F }
F }
¬
¬
C
C
á
á
c chuy
c chuy


n ti
n ti



p c
p c


a
a
Δ
Δ


l
l
à
à
c
c
á
á
c chuy
c chuy


n ti
n ti


p c
p c



a M
a M
nhng theo c
nhng theo c
á
á
ch ng
ch ng


c l
c l


i
i
¬
¬
Thêm chuy
Thêm chuy


n ti
n ti


p m
p m



i t
i t


tr
tr


ng th
ng th
á
á
i đ
i đ


u
u
v
v
à
à
o m
o m


i tr
i tr



ng th
ng th
á
á
i cu
i cu


i c
i c


a M
a M
8
43/
43/
61
61
V
V
í
í
d
d


ngh
ngh



ch đ
ch đ


o NNCQ
o NNCQ
\
\
Cho ôhh M sao cho L
Cho ôhh M sao cho L
1
1
= L(M) = a
= L(M) = a
*
*
bba(ab)
bba(ab)
*
*
\
\
Xây d
Xây d


ng M
ng M



=(Q
=(Q


,
,




,
,
Δ
Δ


, q
, q
0
0


, F
, F


) th
) th



a nh
a nh


n L
n L
1
1
R
R
nh sau
nh sau
:
:
Chú ý q
0
’làtrng thái đu mi thêm vào
Ch
Ch
ú
ú
ý q
ý q
0
0


l

l
à
à
tr
tr


ng th
ng th
á
á
i đ
i đ


u m
u m


i thêm v
i thêm v
à
à
o
o
bba
bba
q
1
q

q
1
1
q
0
q
q
0
0
a
a
ab
ab
L
L
1
1
R
R
= (ba)
= (ba)
*
*
abba
abba
*
*
ε
ε
q1

q1
q1
q
0

q
q
0
0


a
a
ba
ba
q
0
q
q
0
0
abb
abb
44/
44/
61
61
Ph
Ph
é

é
p l
p l


y ph
y ph


n b
n b
ù
ù
m
m


t NNCQ
t NNCQ
L
L
1
1
=
=
Σ
Σ
*
*



L
L
1
1
\
\
B
B
ù
ù
c
c


a L
a L
1
1
, ký hi
, ký hi


u L
u L
1
1
=
=



*
*
-
-
L
L
1
1
, c
, c


ng l
ng l
à
à
NNCQ
NNCQ
\
\
T
T


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


nh

nh
M = (Q,
M = (Q,


,
,
δ
δ
, q
, q
0
0
, F) th
, F) th


a nh
a nh


n L
n L
1
1
,
,
xây d
xây d



ng ôhh M
ng ôhh M


=(Q
=(Q


,
,




,
,
δ
δ


, q
, q
0
0


, F
, F



) th
) th


a nh
a nh


n L
n L
1
1
nh sau
nh sau
:
:
u
u
Q
Q


= Q
= Q
u
u





=
=


u
u
δ
δ


=
=
δ
δ
u
u
F
F


= Q
= Q
-
-
F
F
Ho
Ho
á

á
n v
n v


vai trò c
vai trò c


a c
a c
á
á
c tr
c tr


ng th
ng th
á
á
i đ
i đ


t đ
t đ


c v

c v
à
à
không đ
không đ


t đ
t đ


c
c
\
\
Ch
Ch
ú
ú
ý :
ý :
Vi
Vi


c xây d
c xây d


ng M

ng M


không
không
á
á
p d
p d


ng đ
ng đ


c
c
cho c
cho c
á
á
c ôthh không đn đ
c ôthh không đn đ


nh
nh
45/
45/
61

61
V
V
í
í
d
d


l
l


y ph
y ph


n b
n b
ù
ù
\
\
Cho ôhh M th
Cho ôhh M th


a nh
a nh



n NNCQ L
n NNCQ L
1
1
= L(M) = (a
= L(M) = (a


b)
b)
*
*
a
a
\
\
Xây d
Xây d


ng M
ng M


=(Q
=(Q


,

,




,
,
Δ
Δ


, q
, q
0
0


, F
, F


) th
) th


a nh
a nh


n L

n L
1
1
nh sau
nh sau
:
:
Chú ý q
0
’làtrng thái đu mi thêm vào
Ch
Ch
ú
ú
ý q
ý q
0
0


l
l
à
à
tr
tr


ng th
ng th

á
á
i đ
i đ


u m
u m


i thêm v
i thêm v
à
à
o
o
a
a
q
1
q
q
1
1
q
0
q
q
0
0

a, b
a, b
L
L
1
1
R
R
= (ba)
= (ba)
*
*
abba
abba
*
*
ε
ε
q1
q1
q1
q
0

q
q
0
0



a
a
ba
ba
q
0
q
q
0
0
abb
abb
a
a
b
b
q
1
q
q
1
1
q
0
q
q
0
0
b
b

a
a
46/
46/
61
61
Ph
Ph
é
é
p giao c
p giao c


a hai NNCQ
a hai NNCQ
L
L
1
1


L
L
2
2
C
C
ó
ó

hai c
hai c
á
á
ch CM n
ch CM n


u L
u L
1
1
, L
, L
2
2
NNCQ th
NNCQ th
ì
ì
L
L
1
1


L
L
2
2

c
c


ng l
ng l
à
à
NNCQ :
NNCQ :
C
C
á
á
ch 1
ch 1
:
:
D
D
ù
ù
ng ph
ng ph
é
é
p bi
p bi



n đ
n đ


i L
i L
1
1


L
L
2
2
= L
= L
1
1


L
L
2
2
C
C
á
á
ch 2
ch 2

:
:
Xây d
Xây d


ng ôhh đđ M
ng ôhh đđ M
= (Q,
= (Q,


,
,
δ
δ
, q
, q
0
0
, F)
, F)
th
th


a nh
a nh



n L
n L
1
1


L
L
2
2
xu
xu


t ph
t ph
á
á
t t
t t


hai ôhh đđ
hai ôhh đđ
:
:
¬
¬
M
M

1
1
= (Q
= (Q
1
1
,
,


,
,
δ
δ
1
1
, q
, q
0
0
1, F
1, F
1
1
) th
) th


a nh
a nh



n L
n L
1
1
¬
¬
M
M
2
2
= (Q
= (Q
2
2
,
,


,
,
δ
δ
2
2
, q
, q
0
0

2, F
2, F
2
2
) th
) th


a nh
a nh


n L
n L
2
2
u
u
M b
M b


t ch
t ch


c (Simule) th
c (Simule) th



c hi
c hi


n đ
n đ


ng th
ng th


i M
i M
1
1
v
v
à
à
M
M
2
2
M th
M th


a nh
a nh



n L
n L
1
1


L
L
2
2
khi c
khi c


M
M
1
1
v
v
à
à
M
M
2
2
c
c

ù
ù
ng th
ng th


a nh
a nh


n :
n :
¬
¬
Q = Q
Q = Q
1
1
×
×
Q
Q
2
2
M
M


i tr
i tr



ng th
ng th
á
á
i c
i c


a M l
a M l
à
à
m
m


t c
t c


p tr
p tr


ng th
ng th
á
á

i
i
¬
¬
δ
δ
((q
((q
1
1
, q
, q
2
2
), a)=(p
), a)=(p
1
1
, p
, p
2
2
)
)
n
n


u
u

δ
δ
1
1
(q
(q
1
1
, a)=p
, a)=p
1
1
,
,
δ
δ
2
2
(q
(q
2
2
, a)=p
, a)=p
2
2
,
,



a
a


Σ
Σ
¬
¬
q
q
0
0
= (q
= (q
0
0
1. q
1. q
0
0
2)
2)
¬
¬
F = F
F = F
1
1
×
×

F
F
2
2
47/
47/
61
61
V
V
í
í
d
d


th
th


c hi
c hi


n ph
n ph
é
é
p giao
p giao

\
\
Cho M
Cho M
1
1
v
v
à
à
M
M
2
2
sao cho L
sao cho L
1
1
=L(M
=L(M
1
1
)=b
)=b
*
*
aab, L
aab, L
2
2

=L(M
=L(M
2
2
)=b
)=b
*
*
ab
ab
*
*
Xây d
Xây d


ng M t
ng M t


M
M
1
1
v
v
à
à
M
M

2
2
nh sau
nh sau
:
:
L(M) = b
*
aab ∩ b
*
ab
*
= b
*
a
L(M) = b
L(M) = b
*
*
aab
aab


b
b
*
*
ab
ab
*

*
= b
= b
*
*
a
a
a
a
B
B
B
A
A
A
b
b
a
a
E
E
E
D
D
D
b
b
ab
ab
C

C
C
b
b
a
a
B,E
B,E
B,E
A,D
A,D
A,D
b
b
48/
48/
61
61
C
C
á
á
c b
c b
à
à
i to
i to
á
á

n trên ngôn ng
n trên ngôn ng


ch
ch
í
í
nh quy
nh quy
\
\
Cho
Cho
Σ
Σ
, w
, w


Σ
Σ
*
*
v
v
à
à
c
c

á
á
c NNCQ L, L
c NNCQ L, L
1
1
v
v
à
à
L
L
2
2
trên
trên
Σ
Σ
\
\
Ta c
Ta c
ó
ó
nm b
nm b
à
à
i to
i to

á
á
n c b
n c b


n sau đây
n sau đây
:
:
B
B
à
à
i to
i to
á
á
n 1
n 1
:
:
X
X
á
á
c đ
c đ



nh xem c
nh xem c
ó
ó
ph
ph


i w
i w


L hay không ?
L hay không ?
B
B
à
à
i to
i to
á
á
n 2
n 2
:
:
X
X
á
á

c đ
c đ


nh xem c
nh xem c
ó
ó
ph
ph


i L l
i L l
à
à
r
r


ng hay không ?
ng hay không ?
B
B
à
à
i to
i to
á
á

n 3
n 3
:
:
X
X
á
á
c đ
c đ


nh xem c
nh xem c
ó
ó
ph
ph


i L =
i L =


*
*
?
?
B
B

à
à
i to
i to
á
á
n 4
n 4
:
:
X
X
á
á
c đ
c đ


nh xem c
nh xem c
ó
ó
ph
ph


i L
i L
1
1



L
L
2
2
?
?
B
B
à
à
i to
i to
á
á
n 5
n 5
: X
: X
á
á
c đ
c đ


nh xem c
nh xem c
ó
ó

ph
ph


i L
i L
1
1
= L
= L
2
2
?
?
9
49/
49/
61
61
B
B
à
à
i to
i to
á
á
n 1 : X
n 1 : X
á

á
c đ
c đ


nh w
nh w


L ?
L ?
\
\
B
B
à
à
i to
i to
á
á
n 1
n 1
còn đgl
còn đgl


b
b
à

à
i to
i to
á
á
n th
n th
à
à
nh viên
nh viên


\
\
B
B
à
à
i to
i to
á
á
n 1 gi
n 1 gi


i đ
i đ



c nh
c nh


thu
thu


t to
t to
á
á
n sau :
n sau :
u
u
Xây d
Xây d


ng m
ng m


t ôtômat đn đ
t ôtômat đn đ


nh xu

nh xu


t ph
t ph
á
á
t t
t t


s
s


mô t
mô t


c
c


a L
a L
u
u
Cho ôtômat th
Cho ôtômat th



c hi
c hi


n vi
n vi


c đo
c đo
á
á
n nh
n nh


n câu w đã cho
n câu w đã cho
50/
50/
61
61
B
B
à
à
i to
i to
á

á
n 2 : X
n 2 : X
á
á
c đ
c đ


nh L =
nh L =


?
?
\
\
B
B
à
à
i to
i to
á
á
n 2 gi
n 2 gi


i đ

i đ


c nh
c nh


thu
thu


t to
t to
á
á
n sau :
n sau :
u
u
Xây d
Xây d


ng m
ng m


t ôhh
t ôhh
(

(
đn đ
đn đ


nh ho
nh ho


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


nh) M
nh) M
th
th


a nh
a nh


n L
n L
u
u
Ngôn ng
Ngôn ng



L
L




n
n


u,
u,
trong s đ
trong s đ


bi
bi


u di
u di


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



n t
n t


i m
i m


t đ
t đ


ng đi gi
ng đi gi


a tr
a tr


ng th
ng th
á
á
i đ
i đ


u

u
v
v
à
à
m
m


t tr
t tr


ng th
ng th
á
á
i k
i k


t th
t th
ú
ú
c n
c n
à
à
o đ

o đ
ó
ó
51/
51/
61
61
B
B
à
à
i to
i to
á
á
n 3 : X
n 3 : X
á
á
c đ
c đ


nh L =
nh L =


*
*
?

?
\
\
B
B
à
à
i to
i to
á
á
n 3 gi
n 3 gi


i đ
i đ


c nh
c nh


thu
thu


t to
t to
á

á
n sau :
n sau :
u
u
Xây d
Xây d


ng m
ng m


t ôhh M th
t ôhh M th


a nh
a nh


n ngôn ng
n ngôn ng


b
b
ù
ù
c

c


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


*
*
-
-
L
L
u
u
Ki
Ki


m tra M không th
m tra M không th


a nh
a nh


n m

n m


t câu n
t câu n
à
à
o L(M) =
o L(M) =


b
b


ng c
ng c
á
á
ch ki
ch ki


m tra n
m tra n


u L =
u L =



? (B
? (B
à
à
i to
i to
á
á
n 2)
n 2)
52/
52/
61
61
B
B
à
à
i to
i to
á
á
n 4 : X
n 4 : X
á
á
c đ
c đ



nh L
nh L
1
1


L
L
2
2
?
?
\
\
B
B
à
à
i to
i to
á
á
n 4 gi
n 4 gi


i đ
i đ



c b
c b


ng c
ng c
á
á
ch ki
ch ki


m tra L
m tra L
1
1


L
L
2
2
=
=


?
?
(B

(B
à
à
i to
i to
á
á
n 2)
n 2)
53/
53/
61
61
B
B
à
à
i to
i to
á
á
n 5 : X
n 5 : X
á
á
c đ
c đ


nh L

nh L
1
1
=
=
L
L
2
2
?
?
\
\
B
B
à
à
i to
i to
á
á
n 5 gi
n 5 gi


i đ
i đ


c b

c b


ng c
ng c
á
á
ch ki
ch ki


m tra c
m tra c
á
á
c đi
c đi


u ki
u ki


n :
n :
u
u
L
L
1

1


L
L
2
2
(B
(B
à
à
i to
i to
á
á
n 4)
n 4)
u
u
L
L
2
2


L
L
1
1
(B

(B
à
à
i to
i to
á
á
n 4)
n 4)
54/
54/
61
61
B
B


sung m
sung m


t s
t s


t
t
í
í
nh ch

nh ch


t c
t c


a NNCQ
a NNCQ
M
M


t s
t s


t
t
í
í
nh ch
nh ch


t kh
t kh
á
á
c c

c c


a NNCQ d
a NNCQ d


d
d
à
à
ng ch
ng ch


ng minh :
ng minh :
1
1
M
M


i ngôn ng
i ngôn ng


h
h



u h
u h


n (c
n (c
ó
ó
h
h


u h
u h


n câu)
n câu)
đ
đ


u l
u l
à
à
ch
ch
í

í
nh quy
nh quy
V
V
ì
ì
ngôn ng
ngôn ng


c
c
ó
ó
h
h


u h
u h


n câu
n câu
L = {w
L = {w
1
1
, , w

, , w
k
k
}
}
L s
L s


đ
đ


c ch
c ch


đ
đ


nh b
nh b


i BTCQ
i BTCQ
L = L(w
L = L(w
1

1






w
w
k
k
)
)
do đ
do đ
ó
ó
L l
L l
à
à
ch
ch
í
í
nh quy
nh quy
2
2
M

M


t ngôn ng
t ngôn ng


không ch
không ch
í
í
nh quy ph
nh quy ph


i ch
i ch


a vô h
a vô h


n câu
n câu
T
T


t

t
í
í
nh ch
nh ch


t
t


L c
L c
ó
ó
h
h


u h
u h


n câu
n câu







L
L
ch
ch
í
í
nh quy
nh quy


suy ra :
suy ra :
¬
¬


L
L
không ch
không ch
í
í
nh quy
nh quy







L ch
L ch


a vô
a vô
h
h


n câu
n câu


¬
¬
Tuy nhiên
Tuy nhiên


L
L
ch
ch
í
í
nh quy
nh quy







L
L
c
c
ó
ó
h
h


u h
u h


n câu
n câu


không đ
không đ
ú
ú
ng
ng
Ch

Ch


ng h
ng h


n,
n,


* l
* l
à
à
NNCQ c
NNCQ c
ó
ó
vô h
vô h


n câu
n câu
3
3
M
M



t ngôn ng
t ngôn ng


vô h
vô h


n câu s
n câu s


ch
ch


a s
a s


câu không b
câu không b


ch
ch


n trên

n trên
4
4
M
M


i NNCQ đ
i NNCQ đ


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 ch
n ch


g
g


m
m
m
m


t s
t s


c
c


đ
đ



nh tr
nh tr


ng th
ng th
á
á
i
i
5
5




nh lý
nh lý


bm
bm


10
55/
55/
61
61

NNCQ vô h
NNCQ vô h


n câu không c
n câu không c
ó
ó
c
c


n trên
n trên
\
\
Gi
Gi


s
s


L l
L l
à
à
NNCQ ch
NNCQ ch



a vô h
a vô h


n câu trên
n câu trên


, k
, k
hi đ
hi đ
ó
ó
:
:
u
u




d
d
à
à
i m
i m



t câu b
t câu b


t k
t k


thu
thu


c ngôn ng
c ngôn ng


s
s


không c
không c
ó
ó
c
c



n trên
n trên
\
\
Ch
Ch


ng minh b
ng minh b


ng ph
ng ph


n ch
n ch


ng nh sau
ng nh sau
:
:
u
u
Gi
Gi



s
s


Card(
Card(


)=
)=
m, N l
m, N l
à
à
c
c


n trên c
n trên c


a m
a m


i đ
i đ



d
d
à
à
i câu thu
i câu thu


c L :
c L :


w
w


L, |w|
L, |w|


N <
N <


u
u
Khi đ
Khi đ
ó
ó

ta c
ta c
ó
ó
th
th


li
li


t kê c
t kê c
á
á
c câu :
c câu :
1
1
câu c
câu c
ó
ó
đ
đ


d
d

à
à
i 0
i 0
(g
(g


m câu
m câu
ε
ε
)
)
+
+
m
m
câu c
câu c
ó
ó
đ
đ


d
d
à
à

i 1
i 1
(g
(g


m n câu, m
m n câu, m


i câu l
i câu l
à
à
m
m


t ký t
t ký t


c
c


a
a



)
)
+
+
m
m
2
2
câu c
câu c
ó
ó
đ
đ


d
d
à
à
i 2
i 2
(g
(g


m c
m c
á
á

c câu t
c câu t


o th
o th
à
à
nh t
nh t


2 ký t
2 ký t


c
c


a
a


)
)
. . .
. . .
+
+

m
m
N
N
câu c
câu c
ó
ó
đ
đ


d
d
à
à
i N
i N
=
=
không ph
không ph


i vô h
i vô h


n (mâu thu
n (mâu thu



n !)
n !)
1 - M
1M
1 + N

56/
56/
61
61
Minh ho
Minh ho


đ
đ


nh lý
nh lý


bm
bm


(
(

LB
LB
)
)
\
\
Cho NNCQ L c
Cho NNCQ L c
ó
ó
vô h
vô h


n câu v
n câu v
à
à
m
m


t ôhh M c
t ôhh M c
ó
ó
m tr
m tr



ng th
ng th
á
á
i
i
th
th


a nh
a nh


n L : L=L(M)
n L : L=L(M)
\
\
Gi
Gi


s
s




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



Δ
Δ
, |u|
, |u|


1,
1,


w
w


L, |w|>
L, |w|>
m, ta th
m, ta th


y :
y :
u
u
Gi
Gi



s
s


w = xuy v
w = xuy v


i u
i u


ε
ε
th
th
ì
ì
khi M th
khi M th


c hi
c hi


n đo
n đo
á
á

n nh
n nh


n w,
n w,
M ph
M ph


i v
i v


t qua m
t qua m


t tr
t tr


ng th
ng th
á
á
i q
i q
k
k

í
í
t ra hai l
t ra hai l


n :
n :
¬
¬
M đi t
M đi t


q
q
0
0
đ
đ


n
n
q
q
k
k
đ
đ



đo
đo
á
á
n nh
n nh


n x
n x
¬
¬
M đi t
M đi t


q
q
k
k
đ
đ


n
n
q
q

k
k
đ
đ


đo
đo
á
á
n nh
n nh


n u
n u
¬
¬
M đi t
M đi t


q
q
k
k
đ
đ



n
n
q
q
j
j


Q
Q
đ
đ


đo
đo
á
á
n nh
n nh


n y
n y
u
u
T
T



đ
đ
ó
ó
, m
, m


i câu c
i câu c
ó
ó
d
d


ng xu
ng xu
*
*
y c
y c


ng đ
ng đ


c th
c th



a nh
a nh


n b
n b


i M
i M
x
x
u
u
y
y
q
q
0
0
q
q
k
k
q
q
k
k

q
q
f
f


Q
Q
57/
57/
61
61
Ph
Ph
á
á
t bi
t bi


u đ
u đ


nh lý
nh lý


bm
bm



\
\
Gi
Gi


s
s


L l
L l
à
à
NNCQ c
NNCQ c
ó
ó
vô h
vô h


n câu
n câu





nh lý
nh lý


bm
bm


ph
ph
á
á
t bi
t bi


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


x, u, y
x, u, y





*
*
, v
, v


i u
i u


ε
ε
sao cho xu
sao cho xu
*
*
y
y


L,
L,


n
n


0
0

\
\
Gi
Gi


s
s


M l
M l
à
à
ôhh th
ôhh th


a nh
a nh


n L, L=L(M), M c
n L, L=L(M), M c
ó
ó
|Q| = m
|Q| = m
Ng
Ng



i ta ph
i ta ph
á
á
t tri
t tri


n đ
n đ


nh lý
nh lý


bm
bm


nh sau
nh sau
:
:
u
u
Cho w
Cho w



L sao cho |w|
L sao cho |w|


m
m
u
u
Khi đ
Khi đ
ó
ó


x, u, y sao cho xuy = w, v
x, u, y sao cho xuy = w, v


i u
i u


ε
ε
v
v
à
à

|xu|
|xu|


m
m
u
u


n, xu
n, xu
n
n
y
y


L
L
\
\
M
M


t c
t c
á
á

ch v
ch v


n t
n t


t :
t :


L NNCQ
L NNCQ






L tho
L tho


mãn
mãn
LB
LB



58/
58/
61
61
V
V
í
í
d
d




ng d
ng d


ng đ
ng đ


nh l
nh l
í
í
"
"
bm
bm

"
"
\
\
Ngôn ng
Ngôn ng


a
a
n
n
b
b
n
n
(câu g
(câu g


m n ch
m n ch


a r
a r


i n ch
i n ch



b) không l
b) không l
à
à
CQ
CQ
\
\
Ta s
Ta s


v
v


n d
n d


ng đ
ng đ


nh l
nh l
í
í

"
"
bm
bm


theo c
theo c
á
á
ch ph
ch ph


đ
đ


nh nh sau
nh nh sau
:
:


L không tho
L không tho


mãn
mãn

LB
LB






L
L
không
không
ph
ph


i l
i l
à
à
NNCQ
NNCQ


u
u
C
C



n ch
n ch


ra r
ra r


ng
ng
L không tho
L không tho


mãn
mãn
LB
LB
,
,
ngh
ngh


a l
a l
à
à
không th
không th





x,
x,


u,
u,


y, u
y, u


ε
ε
, sao cho xu
, sao cho xu
k
k
y
y


a
a
n
n

b
b
n
n
,
,


k
k
u
u
Gi
Gi


s
s


t
t


n t
n t


i x,
i x,

u
u
, y
, y
nh v
nh v


y v
y v
à
à
x
x
é
é
t c
t c
á
á
c tr
c tr


ng h
ng h


p c
p c



a u :
a u :
¬
¬
u
u


a* : xu
a* : xu
k
k
y
y


a
a
n
n
b
b
n
n
, v
, v
ì
ì

khi l
khi l


p u theo LB
p u theo LB
, s
, s


ch
ch


a s
a s




s
s


ch
ch


b
b

¬
¬
u
u


b* : c
b* : c


ng không th
ng không th


đ
đ


c v
c v


i c
i c
á
á
ch l
ch l



p lu
p lu


n nh trên
n nh trên
¬
¬
u
u


(a
(a


b)
b)
*
*


(a
(a
*
*


b
b

*
*
) = (aa
) = (aa
*
*
b(a
b(a


b)
b)
*
*
)
)


(bb
(bb
*
*
a(a
a(a


b)
b)
*
*

)
)
g
g


m m
m m


t s
t s


con a r
con a r


i m
i m


t s
t s


con b tu
con b tu



ý
ý
c
c


ng không th
ng không th


x
x


y ra,
y ra,
v
v
ì
ì
c
c
ó
ó
l
l
á
á
o nh
o nh

á
á
o c
o c
á
á
c con a r
c con a r


i c
i c
á
á
c con b trong u
c con b trong u
k
k
(k>1)
(k>1)
u
u
V
V


y a
y a
n
n

b
b
n
n
không ph
không ph


i l
i l
à
à
NNCQ
NNCQ
59/
59/
61
61
V
V


ngôn ng
ngôn ng


a
a
n
n

b
b
n
n
\
\
Ngôn ng
Ngôn ng


a
a
n
n
b
b
n
n
không l
không l
à
à
CQ, do v
CQ, do v


y, không t
y, không t



n t
n t


i ôhh th
i ôhh th


a
a
nh
nh


n
n
\
\
Tuy nhiên, ngôn ng
Tuy nhiên, ngôn ng


d
d


ng :
ng :
u
u

L
L
K
K
=
=
{ a
{ a
n
n
b
b
n
n
| n
| n


K <
K <


}
}
c
c
ó
ó
n h
n h



u h
u h


n hay b
n hay b


ch
ch


n trên
n trên
đ
đ


c th
c th


a nh
a nh


n b
n b



i m
i m


t ôhh
t ôhh
\
\
Nh
Nh


n x
n x
é
é
t :
t :
u
u
M
M


i câu c
i câu c
ó
ó

d
d


ng a
ng a
n
n
b
b
n
n


L
L
K
K
đ
đ


c nh
c nh


n bi
n bi



t b
t b


i m
i m


t
t
ôhh
ôhh
u
u
Không
Không


ôhh th
ôhh th


a nh
a nh


n m
n m



i câu a
i câu a
n
n
b
b
n
n
,
,
l
l
à
à
ph
ph
é
é
p h
p h


p vô h
p vô h


n c
n c
á
á

c ngôn ng
c ngôn ng


L
L
K
K
u
u
V
V


n đ
n đ


đ
đ


t ra l
t ra l
à
à
c
c



n b
n b


sung kh
sung kh


nng cho l
nng cho l


p c
p c
á
á
c ôhh
c ôhh
đ
đ


ch
ch
ú
ú
ng c
ng c
ó
ó

th
th


th
th


a nh
a nh


n ngôn ng
n ngôn ng


a
a
n
n
b
b
n
n
60/
60/
61
61
B
B

à
à
i t
i t


p t
p t


i l
i l


p
p
\
\
Cho b
Cho b


ng ch
ng ch


ch
ch



g
g


m m
m m


t ký t
t ký t




=
=
{ a }
{ a }
\
\
Ngôn ng
Ngôn ng


L = a
L = a
n
n
2
2

(ch
(ch


a m
a m


i câu c
i câu c
ó
ó
đ
đ


d
d
à
à
i n
i n
2
2
l
l
à
à
m
m



t s
t s


b
b
ì
ì
nh phng đ
nh phng đ
ú
ú
ng)
ng)
không l
không l
à
à
NNCQ ?
NNCQ ?
11
61/
61/
61
61
B
B
à

à
i t
i t


p chng
p chng
3
3
1.
1.
Mô t
Mô t


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


cho b
cho b


i c
i c
á

á
c vn ph
c vn ph


m sau đây
m sau đây
:
:
u
u
S
S


aS | Sb | aSb | c
aS | Sb | aSb | c
u
u
S
S


SS | a | b
SS | a | b
u
u
S
S



aA | bB | c
aA | bB | c
A
A


Sa
Sa
B
B


Sb
Sb
u
u
S
S


AB
AB
A
A


Sc | a
Sc | a
B

B


dB | b
dB | b
u
u
S
S


SaS | b
SaS | b
u
u
S
S


aS | bS | a | b
aS | bS | a | b
u
u
S
S


X | Y X
X | Y X



ε
ε Y

→ aY | bY | a | b
2.
2.
Mô t
Mô t


vn ph
vn ph


m s
m s


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


sau đây
sau đây
:

:
u
u
a
a
*
*
b
b
u
u
(a+b)(ab)
(a+b)(ab)
*
*
(baab)
(baab)
*
*

×