You are on page 1of 18

1

Ngn ng v s phn cp Chomsky


Ni dung:
Khi nim ngn ng
Cch biu din ngn ng
Vn phm
S phn lp vn phm
Chng 2:
2
K hiu, b ch ci, chui
K hiu (symbol): l mt thc th tru tng m ta
khng nh ngha c mt cch hnh thc
Cc ch ci a, b, c hoc cc s 1, 2, 3
B ch ci (alphabet):
L mt tp (khng rng) cc k hiu no
B ch ci Latin {A, B, C, , a, b, c, , z}
Chui (string): mt chui (hay mt t - word) trn b
ch ci
L mt dy hu hn cc k hiu ca
Mt k hiu c th xut hin nhiu ln
3
Chui
di chui: l s cc k hiu to thnh chui
|abca| = 4
Chui rng: k hiu , l chui khng c k hiu no
|| = 0
Chui con: chui v l chui con ca w nu v c to
bi cc k hiu lin k nhau trong chui w.
Chui 10 l chui con ca chui 010001
Chui tin t: l chui con bt k nm u chui
Chui hu t: l chui con bt k nm cui chui
Chui abc c cc tin t a, ab, abc
Chui 0246 c cc hu t 6, 46, 246, 0246
4
Chui
Chui ni kt (ghp): l chui c to thnh bng
cch vit chui th nht, sau vit chui th hai, ...
Ni ghp ca chui Long v Int l LongInt
Ni kt ca chui rng: w = w = w (vi mi w)
l n v ca php ni kt
Chui o ngc: ca chui w, k hiu w
R
, l chui
w c vit theo th t ngc li.
w = abcd w
R
= dcba
R
=
5
Ngn ng (Languages)
Tng quan v ngn ng:
Ngn ng t nhin: ting Vit, ting Anh,
Ngn ng lp trnh: Pascal, C/C++,
L tp hp cc cu theo cu trc quy nh no
Biu th cc ngh, cc s kin hay cc khi nim
Bao gm mt tp cc k hiu v cc quy tc
vn dng chng
6
Ngn ng (Languages)
Mt ngn ng (hnh thc) L l mt tp hp cc chui
ca cc k hiu t mt b ch ci E no .
E* v E
+
:
E* : tp hp tt c cc chui con, k c chui rng
, sinh ra t b ch ci E.
E
+
: tp hp tt c cc chui con, ngoi tr chui
rng , sinh ra t b ch ci E.
E* = E
+
+ {} E+ = E* - {}
E = {0,1} th:
E* = {, 0, 1, 00, 01, 10, 11, 000, }
E
+
= {0, 1, 00, 01, 10, 11, 000, }
Chui 010210 e E* v c s 2 e E
7
Php phn b (complement):
= E* - L
Php ni kt (concatenation):
L
1
L
2
= {w
1
w
2
| w
1
e L
1
v w
2
e L
2
} trn b ch ci
1

2
LLLLL = L
i
(kt ni i ln trn cng ngn ng L)
L
0
= {}
Cc php ton trn ngn ng
L
8
Php bao ng (closure): thnh lp mt ngn ng
bng cch kt ni cc chui (vi s lng bt k) cc
chui ca mt ngn ng L cho trc
Bao ng Kleene: L* = L
i
Bao ng dng (positive): L
+
= L
i

Ch : L
+
= L*L = LL* L* = L
+
{}
V d: cho L = {a, ba}
L
2
= {aa, aba, baa, baba}
L
3
= {aaa, aaba, abaa, ababa, baaa,baaba, babaa, bababa}
L* = {, a, ba, aa, aba, baa, baba, aaa, aaba, }
Cc php ton trn ngn ng
i = 0

i = 1

9
Biu din ngn ng
Lit k chui: L = {aa, aba, baa, baba}
M t c im ch yu: L = {a
i
| i l s nguyn t}
Biu din thng qua vn phm v automata:
Cho php biu din ngn ng mt cch tng qut
Vn phm: c ch sn sinh ra mi chui ca ngn
ng
Automata: c ch cho php on nhn mt chui
bt k c thuc mt ngn ng L hay khng
10
nh ngha vn phm
Theo t in, vn phm l mt tp cc quy tc v cu
to t v cc quy tc v cch thc lin kt t li thnh
cu
nh ngha: vn phm cu trc G l mt h thng gm 4
thnh phn G(V, T, P, S)
V (variables): tp cc bin (VD: A, B, C, )
T (terminal): tp cc k hiu kt thc (V T = )
(VD: a, b, c, , w, x, y, ...)
P (production): tp lut sinh, dng vi , e
(V T)*
S (start): k hiu bt u (S c V)
11
nh ngha vn phm
Dn xut trc tip: nu l mt lut sinh th
o o |o
Dn xut gin tip: nu cc chui o
1
, o
2
, ...., o
m
e E* v
o
1
o
2
, o
2
o
3
, ..., o
m-1
o
m
th o
m
c th c
dn xut t o
1

o
1
* o
m
Ngn ng L sinh bi vn phm G:
L (G) = {w , w e T * v S * w}
Vn phm tng ng: l 2 vn phm sinh ra cng
mt ngn ng (G
1
tng ng G
2
L(G
1
)=L(G
2
) )
12
Phn cp Chomsky trn vn phm
Bng cch p t mt s quy tc hn ch trn cc lut
sinh, Noam Chomsky ngh mt h thng phn loi
cc vn phm da vo tnh cht ca cc lut sinh.
Loi 0 Vn phm khng hn ch (Unrestricted
Grammar): khng cn tha iu kin rng buc no
trn tp cc lut sinh
Loi 1 Vn phm cm ng cnh (CSG Context
Sensitive Grammar): nu vn phm G c cc lut
sinh dng v || ||
Loi 2 Vn phm phi ng cnh (CFG Context-Free
Grammar): c lut sinh dng A vi A l mt bin
n v l chui cc k hiu thuc (V T)*
13
Phn cp Chomsky trn vn phm
Loi 3 Vn phm chnh quy (RG Regular
Grammar): c mi lut sinh dng tuyn tnh phi hoc
tuyn tnh tri.
Tuyn tnh phi: A wB hoc A w
Tuyn tnh tri: A Bw hoc A w
Vi A, B l cc bin n, w l chui k hiu kt
thc (c th l rng)
Nu k hiu L
0
, L
1
, L
2
, L
3
l cc ngn ng c sinh ra
bi vn phm loi 0, 1, 2, 3, ta c:
L
3
c L
2
c L
1
c L
0

14
V d 1: vn phm G( {S, A}, {a, b}, P, S )


y l vn phm loi 3 (dng tuyn tnh phi)
Mt dn xut t S c dng:
S aS aaS aaaA aaabA aaabbA aaabbbA
aaabbbb = a
3
b
4
L(G) = a
+
b
+
= {a
n
b
m
| n,m 1}
Cc v d v vn phm
S aS
S aA
A bA
A b
P =
15
V d 2: vn phm G( {S}, {a, b}, P, S )


y l vn phm loi 2 (dng A )
Mt dn xut t S c dng:
S aSb aaSbb aaaSbbb aaaabbbb = a
4
b
4

L(G) = {a
n
b
n
| n 1}
Cc v d v vn phm
S aSb
S ab
P =
16
V d 3: vn phm G( {S, B, C}, {a, b, c}, P, S )




y l vn phm loi 1
Mt dn xut t S: S aSBC aaBCBC aabCBC
aabBCC aabbCC aabbcC aabbcc=a
2
b
2
c
2

L(G) = {a
n
b
n
c
n
| n 1}
Cc v d v vn phm
S aSBC
S aBC
CB BC
aB ab
bB bb
bC bc
cC cc
P =
17
nh ngha tmt (automata)
nh ngha: l my tru tng c c cu v hot ng
n gin nhng c kh nng on nhn ngn ng
Con ngi phi lp trnh sn cho my mt l trnh
thc hin

B iu khin
INPUT
OUTPUT
B NH
18
Phn loi automata
Automata n nh (Deterministic Automata):
Mi bc di chuyn ch c xc nh duy nht
bi cu hnh hin ti (hm chuyn ca automata l
n tr)
Automata khng n nh (Non-deterministic Automata):
Ti mi bc di chuyn, n c vi kh nng la
chn (hm chuyn ca automata l a tr)

You might also like