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

Các tính chất của Ngôn ngữ phi ngữ cảnh

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 (175.01 KB, 18 trang )

Trang 268
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Chng 8 Các tính cht ca NNPNC
̈ H NNPNC chim mt v trí trung tâm trong h thng phân cp
các ngôn ng hình thc.
̈ Mt mt, NNPNC bao gm các h ngôn ng quan trng nhng
b gii hn chng hn nh các NNPNC và PNC.
̈ Mt khác, có các h ngôn ng khác rng ln hn mà NNPNC
ch là mt trng hp đc bit.
̈  nghiên cu mi quan h gia các h ngôn ng và trình bày
nhng cái ging nhau và khác nhau ca chúng, chúng ta nghiên
cu các tính cht đc trng ca các h khác nhau.
̈ Nh trong Chng 4, chúng ta xem xét tính đóng di nhiu
phép toán khác nhau, các gii thut đ xác đnh tính thành viên,
và cui cùng là b đ bm.
Trang 269
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Chng 8 Các tính cht ca NNPNC
8.1 Hai b đ bm
8.2 Tính đóng và các gii thut quyt đnh cho NNPNC
Trang 270
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
B đ bm cho NNPNC
̈ nh lý 8.1
̈ Cho L là mt NNPNC vô hn, tn ti mt s nguyên dng m
sao cho bt k chui w nào ∈ L vi |w| ≥ m, w có th đc phân
hoch thành
w = uvxyz (8.1) vi
|vxy| ≤ m (8.2) và
|vy| ≥ 1 (8.3) sao cho
uv


i
xy
i
z ∈ L (8.4) ∀ i = 0, 1, 2,
̈ nh lý này đc gi là b đ bm cho NNPNC.
̈ Chng minh
̈ Xét ngôn ng L –{λ}. ây là NNPNC ⇒∃vn phm có dng
chun Chomsky G chp nhn nó.
Trang 271
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Chng minh
̈ B đ
̈ Nu cây dn xut ca mt chui w đc sinh ra bi mt vn
phm Chomsky mà có chiu dài mi con đng đi t gc ti lá
nh hn hay bng
h thì |w| ≤ 2
h-1
.
̈ B đ này có th chng minh bng qui np da trên h.
̈ Tr li chng minh ca đnh lý. Gi s G có k bin (|V| = k).
Chn
m = 2
k
. Ly w bt k ∈ L sao cho |w| ≥ m. Xét cây dn
xut
T ca w.
̈ Theo b đ trên suy ra T phi có ít nht mt con đng đi t
gc ti lá có chiu dài ≥
k+1.
S

a
B
S
A
T
1
T
2
Trang 272
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Chng minh (tt)
̈ Xét mt đng nh vy. Trên đng này có ≥ k+2 phn t. Nu
không tính nt lá là kí hiu kt thúc thì có ≥
k+1 nt là bin.
̈ Vì tp bin ch có k bin ⇒∃hai nt trùng vào mt bin. Gi
s đólàbin A (hai ln xut hin kí hiu là A
1
và A
2
)
u
v
x
y
z
A
2
S
A
1

Cây dn xut T ca w
Trang 273
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Chng minh (tt)
̈ Trong cây trên, gi u, v, x, y, z là các chui có tính cht sau:
SuA
1
z (1)
A
1
vA
2
y (2)
A
2
x (3)
Và w = uvxyz.
̈ vxy là kt qu ca cây có gc là A
1
mà mi con đng ca cây
này có chiu dài ≤
(k +1) ⇒ theo b đ trên |vxy|≤ 2
k
= m.
Mt khác vì vn phm có dng chun Chomsky tc là không có
lut sinh-đn v và lut sinh-λ nên t (2) suy ra
|vy|≥ 1.
̈ T (1), (2), (3) chúng ta có:
S uAz uvAyz uv
i

Ay
i
zuv
i
xy
i
z
hay uv
i
xy
i
z ∈ L ∀ i = 0, 1, 2, . . .
̈ iu này kt thúc chng minh.
*

*

*

*

*

*

*

Trang 274
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Ví d

̈ B đ bm này đc dùng đ chng minh mt ngôn ng là
không PNC tng t nh  Chng 4.
̈ Ví d
̈ Chng minh ngôn ng L = {a
n
b
n
c
n
: n ≥ 0} là không PNC.
̈ Chng minh
̈ Gi s L là PNC ⇒∃s nguyên dng m.
Chn w = a
m
b
m
c
m
∈ L. ∃ mt phân hoch ca w thành b 5
w = uvxyz
Vì |vxy| ≤ m nên vxy không cha đng thi c 3 kí hiu a, b, c.
Chn i = 2 ⇒ w
2
= uv
2
xy
2
z s cha a, b, c vi s lng không
bng nhau ⇒ w
2

∉ L (><).
Trang 275
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Bài tp
̈ Ngôn ng nào sau đây PNC? Chng minh.
̈ L
1
= {a
n
b
j
c
k
: k = jn}
̈ L
2
= {a
n
b
j
c
k
: k > n, k > j}
̈ L
3
= {a
n
b
j
c

k
: n < j, n ≤ k ≤ j}
̈ L
5
= { a
n
b
j
a
n
b
j
: n ≥ 0, j ≥ 0}
̈ L
4
= {w: n
a
(w) < n
b
(w) < n
c
(w)}
̈ L
6
= { a
n
b
j
a
k

b
l
: n + j ≤ k + l}
̈ L
7
= { a
n
b
j
a
k
b
l
: n ≤ k, j ≤ l}
̈ L
8
= {a
n
b
n
c
j
: n ≤ j}
Trang 276
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
B đ bm cho ngôn ng tuyn tính
̈ nh ngha 8.1
̈ Mt NNPNC L đc gi là tuyn tính nu ∃ mt VPPNC tuyn
tính G sao cho L = L(G).
̈ nh lý 8.2

̈ Cho L là mt NN tuyn tính vô hn, tn ti mt s nguyên
dng m sao cho bt k chui w nào ∈ L vi |w| ≥ m, w có th
đc phân hoch thành
w = uvxyz vi
|uvyz| ≤ m (8.7) và
|vy| ≥ 1 (8.8) sao cho
uv
i
xy
i
z ∈ L (8.9) ∀ i = 0, 1, 2,
Trang 277
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Chng minh
̈ Gi G là vn phm tuyn tính mà không cha lut sinh-đn v
và lut sinh-λ.
̈ Gi k = max {các chiu dài v phi} ⇒ mi bc dn xut
chiu dài dng câu tng ti đa
(k-1) kí hiu ⇒ mt chui w dn
xut dài
p bc thì |w| ≤ 1 + p(k-1) (1).
̈ t |V|= n. Chn m = 2 + n(k-1). Xét w bt k ∈ L, |w|≥ m. (1)
⇒ dn xut ca w có ≥ (n+1) bc ⇒ dn xut có ≥ (n+1) dng
câu mà không phi là câu. Chú ý mi dng câu có đúng mt
bin.
̈ Xét (n+1) dng câu đu tiên ca dn xut trên ⇒∃hai bin ca
hai dng câu nào đó trùng nhau, gi s là bin A. Nh vy dn
xut ca w phi có dng:
SuAzuvAyzuvxyz, (2)
vi u, v, x, y, z ∈ T*.

*

*

*

Trang 278
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Chng minh (tt)
̈ Xét dn xut riêng phn
S uAz uvAyz
vì A đc lp li trong (n + 1) dng câu đu tiên nên dãy này có
≤ n bc dn xut ⇒ |uvAyz|≤ 1 + n(k-1), ⇒ |uvyz|≤ n(k-1) < m.
Mt khác vì
G không có lut sinh-đn v và lut sinh-λ nên ta

|vy|≥1.
̈ T (2) cng suy ra:
S uAz uvAyz uv
i
Ay
i
zuv
i
xy
i
z
⇒ uv
i
xy

i
z ∈ L ∀ i = 0, 1, 2,
̈ Chng minh hoàn tt.
*

*

*

*

*

*

Trang 279
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Ví d
̈ Chng minh ngôn ng L = {w: n
a
(w) = n
b
(w)} là không tuyn
tính.
̈ Chng minh
̈ Gi s L là tuyn tính. Chn w = a
m
b
2m
a

m
.
T (8.7) ⇒ u, v, y, z phi cha toàn a. Nu bm chui này lên,
chúng ta nhn đc chui
a
m+k
b
2m
a
m+l
, vi k ≥ 1 hoc l ≥ 1, mà
chui này
∉ L (><) ⇒ L không phi là ngôn ng tuyn tính.
Trang 280
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Bài tp
̈ Ngôn ng nào sau đây PNC tuyn tính? Chng minh.
̈ L
1
= {a
n
b
n
a
m
b
m
: n, m ≥ 0}
̈ L
2

= { w: n
a
(w) ≥ n
b
(w)}
̈ L
3
= {a
n
b
j
: j ≤ n ≤ 2j -1}
̈ L
4
= L(G) vi G đc cho nh sau:
E
→ T | E + T
T → F | T * F
F → I | (E)
I → a | b | c
Trang 281
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Tính đóng ca NNPNC
̈ nh lý 8.3
̈ H NNPNC là đóng di phép hi, kt ni, và bao đóng sao.
̈ Chng minh
̈ Gi s G
1
= (V
1

, T
1
, S
1
, P
1
), G
2
= (V
2
, T
2
, S
2
, P
2
) là hai VPPNC.
Vn phm
G
3
= (V
1
∪ V
2
∪ {S
3
}, T
1
∪ T
2

, S
3
, P
1
∪ P
2
∪ {S
3

S
1
| S
2
}) s có L(G
3
) = L(G
1
) ∪ L(G
2
).
Vn phm G
4
= (V
1
∪ V
2
∪ {S
4
}, T
1

∪ T
2
, S
4
, P
1
∪ P
2
∪ {S
4

S
1
S
2
}) s có L(G
4
) = L(G
1
)L(G
2
).
Vn phm
G
5
= (V
1
∪ {S
5
}, T

1
, S
5
, P
1
∪ {S
5
→ S
1
S
5
| λ}) s có
L(G
5
) = L(G
1
)*.
Trang 282
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Tính đóng ca NNPNC (tt)
̈ nh lý 8.4
̈ H NNPNC không đóng di phép giao và bù.
̈ Chng minh
̈ Hai ngôn ng {a
n
b
n
c
m
: n, m ≥ 0} và {a

n
b
m
c
m
: n, m ≥ 0} là phi
ng cnh, tuy nhiên giao ca chúng là ngôn ng {a
n
b
n
c
n
: n ≥ 0}
li không phi ng cnh, nên h NNPNC không đóng di phép
giao.
̈ Da vào lut Morgan suy ra h NNPNC cng không đóng di
phép bù. Vì nu đóng đi vi phép bù thì da vào tính đóng đi
vi phép hi suy ra tính đóng di phép giao theo lut Morgan.
Trang 283
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Tính đóng ca NNPNC (tt)
̈ nh lý 8.5
̈ Cho L
1
là mt NNPNC và L
2
là mt NNCQ, thì L
1
∩ L
2

là phi
ng cnh. Chúng ta nói rng h NNPNC là đóng di phép
giao chính qui.
̈ Chng minh
̈ Cho M
1
= (Q, Σ, Γ, δ
1
, q
0
, z, F
1
) là npda chp nhn L
1
và M
2
=
(P, Σ, δ
2
, p
0
, F
2
) là dfa chp nhn L
2
.
̈ Xây dng mt npda M’= (Q’, Σ, Γ, δ’, q’
0
, z, F’) mô phng
hot đng song song ca M

1
và M
2
Q’= Q × P, q’
0
= (q
0
, p
0
), F’= F
1
× F
2
,
δ’((q
k
, p
l
), x) ∈ ((q
i
, p
j
), a, b), ⇔ (qk, x) ∈δ
1
(qi, a, b),
và δ
2
(p
j
,

a) = p
l
,
Trang 284
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Tính đóng ca NNPNC (tt)
̈ Nu a = λ, thì p
j
= p
l
.
̈ Bng qui np chng minh rng
δ’*((q
0
, p
0
), w, z) |-*
M’
((q
r
, p
s
), x), vi q
r
∈ F
1
và p
s
∈ F
2


δ
1
*(q
0
, w, z) |-*
M1
(q
r
, x), còn δ
2
*(p
0
, w) = p
s
.
̈ Vì vy L(M’) = L(M
1
) ∩ L(M2) (điu phi chng minh)
Trang 285
Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin
Mt vài tính cht kh quyt đnh ca
NNPNC
̈ nh lý 8.6
̈ Cho mt VPPNC G = (V, T, S, P), thì tn ti mt gii thut đ
quyt đnh L(G) có trng hay không.
̈ nh lý 8.7
̈ Cho mt VPPNC G = (V, T, S, P), thì tn ti mt gii thut đ
quyt đnh L(G) có vô hn hay không.

×