Professional Documents
Culture Documents
NI DUNG MN HC
Chng 1 Chng 2 Chng 3 Chng 4 Chng 5 Chng 6 Gii thiu v l thuyt tnh ton tmt hu hn Ngn ng chnh qui v vn phm chnh qui Cc tnh cht ca ngn ng chnh qui Ngn ng phi ng cnh n gin ha vn phm phi ng cnh v cc dng chun Chng 7 tmt y xung Chng 8 Cc tnh cht ca ngn ng phi ng cnh Chng 9 My Turing
Trang 2 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 3 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
HNH THC NH GI
S c thng bo c th cho tng kha hc. Tuy nhin, thng l nh c cho bn di. Thi trc nghim
Thi gian: 120 pht S lng: 50 cu c php xem ti liu trong 4 t giy A4
Trang 4 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
CC MN LIN QUAN
Ngn ng lp trnh Trnh bin dch (*) Ton tin hc
Trang 5 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
1.4 Mt vi ng dng
Trang 6 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Gii thiu
tmt
Cc m hnh tnh ton t ng
Trang 7 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Yu cu v kin thc nn
L thuyt
Tp hp th
K thut m phng
Trang 8 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Ba khi nim c bn
Ngn ng (languages) Vn phm (grammar) tmt (automata)
Trang 9 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Ngn ng
Ngn ng l g?
Cc t in nh ngha ngn ng mt cch khng chnh xc l mt h thng thch hp cho vic biu th cc ngh, cc s kin, hay cc khi nim, bao gm mt tp cc k hiu v cc qui tc vn dng chng.
nh ngha trn cha chnh xc nghin cu v NNHT Chng ta cn xy dng mt nh ngha ton hc cho khi nim ngn ng
Trang 10 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Cc khi nim
Bng ch ci (alphabet),
L tp hp hu hn khng trng cc k hiu (symbol).
V d
{A, B, C, ... , Z}: Bng ch ci La tinh. {, , , ... , }: Bng ch ci Hi Lp. {0, 1, 2, ... , 9}: Bng ch s thp phn. {I, V, X, L, C, D, M}: Bng ch s La M.
Trang 11 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Vi = {a, b}, th abab v aaabbba l cc chui trn .
Qui c
Vi mt vi ngoi l, chng ta s s dng cc ch ci thng a, b, c, . . . cho cc phn t ca cn cc ch ci u, v, w, . . . cho cc tn chui.
Trang 12 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
o (reverse), wR
o ca chui w = a1a2 ...an l chui: wR = an...a2a1
Trang 13 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Tip v ng (suffix)
v c gi l tip v ng ca w
Chiu di ca chui w
L s k hiu trong chui, v c k hiu l |w|
Ly tha (power), wn
w l mt chui th wn l mt chui nhn c bng cch kt ni chui w vi chnh n n ln. w0 =
L wn = w2w 13
n lan
Trang 15 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
th hu hn cn + v * l v hn m c
Trang 16 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh ngha ngn ng
Ngn ng
L mt tp con ca *, hay ni cch khc l mt tp bt k cc cu trn b ch ci.
V d
Cho = {a, b} * = {, a, b, aa, ab, ba, bb, aaa, aab, ...} Tp {a, aa, aab} l mt ngn ng trn . N l mt ngn ng hu hn. Tp L = {anbn : n 0} cng l mt ngn ng trn . N l mt ngn ng v hn.
Trang 17 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Kt ni, L1L2
Cho 2 ngn ng L1, L2. Kt ni ca 2 ngn ng L1, L2 l: L1L2 = { xy : x L1 , y L2 }
Ly tha, Ln
Ly tha bc n ca L, k hiu l Ln, l vic kt ni L vi chnh n n ln L0 = {} n
L = 13 L2 L L
n lan
Trang 18 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 19 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Vn phm
Vn phm l g?
Cc t in nh ngha vn phm mt cch khng chnh xc l mt tp cc qui tc v cu to t v cc qui tc v cch lin kt cc t li thnh cu.
V d
Cho on vn phm ting Anh sau <sentence> <noun phrase><predicate>, <noun phrase> <article><noun>, <predicate> <verb>, <article> a | the, <noun> boy | dog, <verb> runs | walks,
Trang 20 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh ngha vn phm
Cc cu a boy runs v the dog walks l c "dng ng, tc l c sinh ra t cc lut ca vn phm. nh ngha 1.1
Vn phm G c nh ngha nh l mt b bn G = (V, T, S, P) V: tp cc k hiu khng kt thc (nonterminal symbol), cn c gi l cc bin (variable), T: tp cc k hiu kt thc (terminal symbol), S V: c gi l bin khi u (start variable), i khi cn c gi l k hiu mc tiu, P: tp hu hn cc lut sinh (production),
Trang 21 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Cho vn phm sau: G = ({S, A, B}, {a, b}, S, P), vi P: S aAS | bBS | , A aaA | b, B bbB | a,
Trang 22 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Vn phm (tt)
Qui c:
Cc k t ch hoa A, B, C, D, E v S biu th cc bin; S l k hiu khi u tr phi c pht biu khc i. Cc k t ch thng a, b, c, d, e, cc k s, cc chui in m biu th cc k hiu kt thc (terminal). Cc k t ch hoa X, Y, Z biu th cc k hiu c th l terminal hoc bin. Cc k t ch thng u, v, w, x, y, z biu th chui cc terminal. Cc k t ch thng Hi Lp , , biu th chui cc bin v cc terminal.
Trang 23 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Cc khi nim
Dn xut trc tip (directly derive),
Cho lut sinh x y v chui w = uxv . Lut sinh trn c th p dng ti chui w. Khi p dng ta s nhn c chui mi z = uyv w dn xut ra z hay ngc li z c dn xut ra t w v k hiu l: uxv uyv
Trang 24 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh ngha 1.2
Cho G = (V, T, S, P) l mt vn phm, th tp: * L(G) = {w T* : S w} c gi l ngn ng c sinh ra bi G.
Trang 25 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Cho vn phm G = ({S}, { a, b}, S, P), vi P S aSb | .
Trang 26 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 27 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Bi tp vn phm
M t ton hc cho ngn ng
Ngn ng L1 bao gm cc chui t kha begin, end ca ngn ng Pascal. Cc chui biu din cu trc lng nhau ca cc cp t kha ny trong cc chng trnh trn ngn ng Pascal. Ngn ng L2 bao gm tp cc danh hiu ca Pascal.
Xc nh ngn ng ca vn phm
G1 G2 S aSbS | bSaS | EE+T|T TT*F|F F (E) | a | b
Trang 28 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Bi tp vn phm (tt)
Xy dng vn phm cho ngn ng
Ngn ng L1 v L2 trang trn L3 = {wwR : w {a, b}*} L4 = {anbmcn+m : n, m 0} L5 = {anbn+mcm : n, m 0}
Trang 29 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
tmt
tmt l g?
tmt, dch ngha l my t ng, l thit b c th t thc hin cng vic m khng cn s can thip ca con ngi. N hot ng da trn mt s quy tc v da vo cc quy tc ny con ngi lp trnh cho n hot ng theo mun ca mnh. My tnh s ngy nay chnh l mt my t ng in hnh v mnh nht hin nay.
Trang 30 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh ngha tmt
tmt
L mt m hnh tru tng ca my tnh s bao gm cc thnh phn ch yu sau Input file
Control unit
Storage
Output
Trang 31 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Hot ng ca tmt
n v iu khin (control unit): mi tmt c mt n v iu khin, ci m c th trong mt trng thi bt k trong mt s hu hn cc trng thi ni, v c th chuyn i trng thi trong mt kiu c nh ngha sn no .
Hot ng ca tmt
Mt tmt c gi thit l hot ng trong mt khung thi gian ri rc (discrete time frame). Ti mt thi im bt k cho, n v iu khin ang trong mt trng thi ni (internal state) no , v c cu nhp l ang qut (scanning) mt k hiu c th no trn input file.
Trang 33 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 34 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Cc khi nim
Trng thi ni (internal state): l mt trng thi ca n v iu khin m n c th vo. Trng thi k (next state): l mt trng thi ni ca n v iu khin m n s vo ti thi im k tip. Hm chuyn trng thi (transition function): l hm gi ra trng thi k ca tmt da trn trng thi hin hnh, k hiu nhp hin hnh c qut, v thng tin hin hnh trong b nh tm.
Trang 35 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 36 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 37 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 38 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Mt vi ng dng
Cung cp kin thc nn tng cho vic xy dng cc ngn ng lp trnh (NNLT), cc trnh dch.
Dng vn phm nh ngha cc NNLT. Dng accepter nh ngha mt vi thnh phn ca NNLT. Xy dng cc b phn tch t vng, phn tch c php cho cc NNLT.
Trang 39 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Dng vn phm m t danh hiu ca Pascal. <id> <letter><rest>, <rest> <letter><rest> | <digit><rest> | , <letter> a .. z | A .. Z <digit> 0 .. 9
Trang 40 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
Dng accepter m t danh hiu ca Pascal.
Letter Digit
Letter or digit
3 Letter or digit
Trang 41 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 43 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Mt vi ng dng (tt)
ng dng vo cc lnh vc x l chui.
Cc chc nng tm kim, thay th trong cc trnh son tho vn bn hoc x l chui. X l ngn ng t nhin: ch thch loi t cho cc t, sa li chnh t, ...
Trang 44 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d - Mch cng
Xt mt b cng nh phn tun t hai s nguyn dng
ai bi Serial adder Sum bit di
Carry Trong hai chui cng x = a0a1 . . . an y = b0b1 . . . bm biu din cho hai s nguyn
v( x ) =
i=0
ai 2 i
v( y ) =
Trang 45 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
i=0
bi 2 i
(1, 1)/0
(0, 0)/1
Trang 46 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Chng 2 tmt hu hn
2.1 Accepter hu hn n nh 2.2 Accepter hu hn khng n nh 2.3 S tng ng gia accepter hu hn n nh v accepter hu hn khng n nh 2.4 Rt gn s trng thi ca mt tmt hu hn
Trang 47 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Accepter hu hn n nh
nh ngha 2.1
Mt accepter hu hn n nh (deterministic finite state accepter) hay dfa c nh ngha bi b nm M = (Q, , , q0, F), Q l mt tp hu hn cc trng thi ni (internal states), l mt tp hu hn cc k hiu c gi l bng ch ci ng nhp (input alphabet), : Q Q l hm chuyn trng thi (transition function). chuyn trng thi tmt da vo trng thi hin hnh q Q n ang vo v k hiu nhp a n ang c c, n s chuyn sang trng thi k c nh ngha sn trong .
Trang 48 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Accepter hu hn n nh (tt)
q0 Q l trng thi khi u (initial state), F Q l mt tp cc trng thi kt thc (final states) (hay cn c gi l trng thi chp nhn).
Ch
tmt hu hn khng c b nh so vi m hnh tng qut.
Trang 49 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Hot ng ca mt dfa
Hot ng ca mt dfa
Ti thi im khi u, n c gi thit trong trng thi khi u q0, vi c cu nhp (u c) ca n ang trn k hiu u tin bn tri ca chui nhp. Trong sut mi ln di chuyn, c cu nhp tin v pha phi mt k hiu, nh vy mi ln di chuyn s ly mt k hiu ng nhp. Khi gp k hiu kt thc chui, chui l c chp nhn (accept) nu tmt ang vo mt trong cc trng thi kt thc ca n. Ngc li th c ngha l chui b t chi.
Trang 50 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 51 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Cho dfa sau M = (Q, , , q0, F) Q = {q0, q1, q2}, = {0, 1}, F = {q1}, cn c cho bi (q0, 0) = q0, (q0, 1) = q1, (q1, 0) = q0, (q1, 1) = q2, (q2, 0) = q2, (q2, 1) = q1, th chuyn trng thi tng ng l 0 0 1 1 q2 q1 q0 1 0
Trang 52 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Nu (q0, a) = q1, v (q1, b) = q2, Th *(q0, ab) = q2
Ch
khng c nh ngha cho chuyn trng thi rng, tc l khng nh ngha cho (q, ).
Trang 53 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Ngn ng v dfa
nh ngha 2.2
Ngn ng c chp nhn bi dfa M = (Q, , , q0, F) l tp tt c cc chui trn c chp nhn bi M. L(M) = {w *: *(q0, w) F}.
Trang 54 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
V d
Xt dfa M sau a q0 b q1 a, b a, b q2
Dfa trn chp nhn ngn ng sau L(M) = {anb : n 0} Trng thi by (trap state): l trng thi m sau khi tmt i vo s khng bao gi thot ra c. Trng thi by c th l trng thi kt thc hoc khng. nh ngha trn cng c th m rng ra cho nhm cc trng thi by kt thc hay khng kt thc.
Trang 55 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l, bng truyn
nh l 2.1
Cho M = (Q, , , q0, F) l mt accepter hu hn n nh, v GM l th chuyn trng thi tng ng ca n. Th qi, qj Q, v w +, *(qi, w) = qj nu v ch nu c trong GM mt con ng mang nhn l w i t qi n qj.
q0 q1 q2
Bng truyn gi cho chng ta mt cu trc d liu m t cho tmt hu hn. ng thi cng gi cho chng ta rng mt dfa c th d dng c hin thc thnh mt chng trnh my tnh; chng hn bng mt dy cc pht biu if.
Trang 57 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Tm dfa chp nhn ngn ng
Tm dfa M1 chp nhn tp tt c cc chui trn = {a, b} c bt u bng chui ab. Tm dfa M2 chp nhn tp tt c cc chui trn = {0, 1}, ngoi tr nhng chui cha chui con 001. a, b q0 a b q1 a q3 a, b
Trang 58 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
1 0 1 0 0
0 00 1
0, 1 001
q2
Bi tp dfa
Tm dfa chp nhn ngn ng
L1 = {vwvR {a, b}*: |v| = 2} L2 = {ababn: n 0} {aban: n 0} L3 = {anbm : (n+m) mod 2= 0} L4 = {w {a, b}*: na(w) chn, nb(w) l} L5 = {w {0, 1}*: gi tr thp phn ca w chia ht cho 5} L6 = {w {a, b}*: s k t a trong chui l mt s l}
Trang 59 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Chng minh rng ngn ng L= {awa : w {a,b}*} l chnh qui. a b a a q0 q2 q3 b b q1 a, b
Trang 60 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Accepter hu hn khng n nh
nh ngha 2.4
Mt accepter hu hn khng n nh (nondeterministic finite state accepter) hay nfa c nh ngha bng b nm: M = (Q , , , q0, F ) trong Q, , q0, F c nh ngha nh i vi accepter hu hn n nh cn c nh ngha l: : Q ( { }) 2Q
Nhn xt
C hai khc bit chnh gia nh ngha ny v nh ngha ca mt dfa.
Trang 61 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
a q0 a q1 q4 a a a (a) q5 q2 a q3 q0 1 0 q1 (b) 0, 1 q2
Cho mt nfa, hm chuyn trng thi m rng c nh ngha sao cho *(qi, w) cha qj nu v ch nu c mt con ng trong TCTT i t qi n qj mang nhn w. iu ny ng vi mi qi, qj Q v w *.
Trang 63 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 64 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Ngn ng ca nfa
nh ngha 2 .6
Ngn ng c chp nhn bi nfa M = (Q, , , q0, F), c nh ngha nh l mt tp tt c cc chui c chp nhn bi nfa trn. Mt cch hnh thc, L(M) = {w *: *(q0, w) F }.
V d
Ngn ng c chp nhn bi tmt bn di l L = {(10)n: n 0} 1 0, 1 q2 q1 q0 0
Trang 65 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Cch tnh *
Vi T l mt tp con ca Q, ta nh ngha
(T , a ) =
qT
(q, a ) * (T , ) = U
qT
(q, ) * (T , a ) = U
qT
U (q , a )
Ngi ta thng hin thc cch tnh cc hm ny (q, a), (T, a), *(q, ), *(T, ) ln lt bng cc hm move(q, a), move(T, a), -closure(q), -closure(T) (closure c l bao ng-) *(q, a) = -closure(move(-closure(q), a)) *(T, a) = -closure(move(-closure(T)
Trang 66 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
a q0 a a q4 q5 q1 q2 q3 q0 q1 q2 q3 q4 q5 a q4 q1 q0, q3 q2
Hy tnh *(q0, a). *(q0, a) = -closure(move(-closure(q0), a)) -closure(q0) = {q0, q1, q2} move({q0, q1, q2}, a) = {q4, q0, q3} -closure({q4, q0, q3}) = {q4, q0, q3, q5, q1, q2} Vy *(q0, a) = {q0, q1, q2, q3, q4, q5}
Trang 67 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
q5
V bn cht nh ngha ny v nh ngha trc y l tng ng nhau (cng nh ngha tnh n nh ca dfa). N ch khc nh ngha th nht ch cho php kh nng khng c mt s chuyn trng thi i vi mt cp trng thi v k hiu nhp. Trong trng hp ny th ta xem nh n ri vo mt trng thi by khng kt thc m trng thi ny khng c v ra.
Trang 68 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
0 q0 1 q1 0 q0 0 1 q2 (a) 0, 1 (b) q1 1
Dfa trong hnh (a) n gin hn dfa trong hnh (b) mc d chng cng chp nhn mt ngn ng nh nhau. Vy dfa m rng v dfa dfa y theo nh ngha ban u tht s l tng ng nhau v chng ch khc nhau mt trng thi by khng kt thc.
Trang 69 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Bi tp nfa
Tm nfa chp nhn ngn ng
L1 = {tp tt c cc s thc ca Pascal} Mt run trong mt chui l mt chui con c chiu di ti thiu 2 k t, di nht c th v bao gm ton cc k t ging nhau. Chng hn, chui abbbaabba cha mt run ca b c chiu di 3, mt run ca a c chiu di 2 v mt run ca b c chiu di 2. Tm cc nfa v dfa cho mi ngn ng sau trn {a, b}. L2 = {w: w khng cha run no c chiu di nh hn 3} L3 = {w: mi run ca a c chiu di hoc 2 hoc 3} L4 = {w {0, 1}*: mi chui con bn k hiu c ti a hai k hiu 0}.
Trang 70 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Dfa v nfa sau l tng ng nhau v cng chp nhn ngn ng {(10)n: n 0} 0,1 1 1 0, 1 1 q q2 q0 q1 q0 0 q1 2 0
Trang 71 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Hy xy dng dfa tng ng vi nfa bn. b q0 a q1 a
Trang 72 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
a b q2 q0 q1 q1 q1 q2 q0 q2
V d
Xy dng dfa bng cch m phng li qu trnh chp nhn mt chui bt k ca nfa *(q0, ) = {q0} *({q0}, a) = {q1, q2} *({q0}, b) = *({q1, q2}, a) = {q1, q2}
a b q0 q1 q1 q1 q2 q0 q2
Ch
Mt trng thi ca nfa l {q0} mt tp trng thi ca dfa b Trng thi kt thc ca nfa l trng thi m c cha trng thi kt thc ca dfa.
a {q1, q2}
Trang 73 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l v s tng ng
nh l 2.2
Cho L l ngn ng c chp nhn bi mt accepter hu hn khng n nh MN = (QN, , N, q0, FN), th tn ti mt accepter hu hn n nh MD = (QD, , D, {q0}, FD) sao cho L = L(MD).
Th tc: nfa_to_dfa
Input: nfa MN = (QN, , N, q0, FN) Output: TCTT GD ca dfa MD
Trang 74 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Th tc: nfa_to_dfa
B1. To mt th GD vi nh khi u l tp N*(q0, ). B2. Lp li cc bc B3 n B6 cho n khi khng cn cnh no thiu. B3. Ly mt nh bt k {qi, qj, , qk} ca GD m c mt cnh cn cha c nh ngha i vi mt a no . B4. Tnh N*({qi, qj, , qk}, a) = {ql, qm, , qn}. B5. To mt nh cho GD c nhn {ql, qm, , qn} nu n cha tn ti. B6. Thm vo GD mt cnh t {qi, qj, , qk} n {ql, qm, , qn} v gn nhn cho n bng a. B7. Mi trng thi ca GD m nhn ca n cha mt qf bt k FN th c coi l mt nh kt thc.
Trang 75 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Hy bin i nfa di (c bng truyn tng ng bn cnh) thnh dfa tng ng.
a q2 a q0 q1 q3 q4 q1 q0 q4 q3 q3 b q1 q3 q2 q4
b a,
a q1 b q3 a a, b
q0
q2 q1, q2 q4
Trang 76 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
*(q0, ) = {q0, q3, q4} q0 *({q0, q3, q4}, a) = {q1, q2, q4} q1 *({q0, q3, q4}, b) = {q1, q2, q3, q4} q2 *({q1, q2, q4}, a) = {q0, q1, q2, q3, q4} q3 *({q1, q2, q4}, b) = {q3, q4} q4 *({q1, q2, q3, q4}, a) = {q0, q1, q2, q3, q4} *({q1, q2, q3, q4}, b) = {q3, q4} *({q0, q1, q2, q3, q4}, a) = {q0, q1, q2, q3, q4} *({q0, q1, q2, q3, q4}, b) = {q1, q2, q3, q4} *({q3, q4}, a) = {q4} *({q3, q4}, b) = {q3, q4} *({q4}, a) = *({q4}, b) = {q3, q4}
Trang 77 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
a b q1 q1 q3 q0 q2 q1, q2 q4 q3 q4 q3
V d (tt)
q0 q1 q2 q3 q4
a b q1 q1 q3 q0 q2 q1, q2 q4 q3 q4 q3
Trang 78 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Nfa M2 b q2 q0 q4 a q0 q1 q0 q1, q3 q3 q3
Nfa M3 b q2 q1 q3
q1 0
q2 0, 1
Trang 80 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 81 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Nhn xt
Trng thi kt thc v khng kt thc khng th ging nhau.
Trang 83 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Nhn xt (tt)
Ch
Quan h ging nhau l mt quan h tng ng. V vy quan h ny s phn hoch tp trng thi Q thnh cc tp con ri nhau, mi tp con bao gm cc trng thi ging nhau.
Trang 84 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Th tc nh du - mark
xc nh cc cp trng thi khng phn bit c, ngi ta thc hin cng vic ngc li l xc nh cc cp trng thi khng ging nhau lm iu ny ngi ta s dng th tc mark (nh du) bn di.
Th tc: mark
Input: Cc cp trng thi, gm (|Q| (|Q| -1)/2) cp, ca dfa y . Output: Cc cp trng thi c nh du phn bit c.
Trang 85 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Th tc nh du - mark
B1. Loi b tt c cc TTKT. B2. Xt tt c cc cp trng thi (p, q). Nu p F v q F hay ngc li, nh du cp (p, q) l phn bit c. Cc cp trng thi c nh du bc ny s c ghi l nh du bc s 0 (gi l bc c bn). Lp li bc B3 cho n khi khng cn cp no khng c nh du trc c nh du bc ny. B3. i vi mi cp (p, q) cha c nh du v mi a , tnh (p, a) = pa v (q, a) = qa. Nu cp (pa, qa) c nh du l phn bit c ln lp trc , th nh du (p, q) l phn bit c. Cc cp c nh du bc ny s c ghi l c nh du bc th i nu y l ln th i bng qua vng lp.
Trang 86 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Th tc nh du mark (tt)
nh l 2.3
Th tc mark, p dng cho mt dfa y bt k M = (Q, , , q0, F), kt thc v xc nh tt c cc trng thi phn bit c.
B 1
Cp trng thi qi v qj l phn bit c bng chui c di n, nu v ch nu c cc chuyn trng thi (qi, a) = qk v (qj, a) = ql vi mt a no , v qk v ql l cp trng thi phn bit c bng chui c di n-1.
Trang 87 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Th tc nh du mark (tt)
B 2
Khi bng qua vng lp trong bcln th n, th tc s nh du c thm tt c cc cp trng thi phn bit c bng chui c di n m cha c nh du.
B 3
Nu th tc dng li sau n ln bng qua vng lp trong bc 3, th khng c cp trng thi no ca dfa m phn bit c bng chui c chiu di ln hn n.
Trang 88 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Th tc rt gn - reduce
Th tc: reduce
Input: dfa M = (Q, , , q0, F)
M = Q, , , q0 , F B1. S dng th tc mark tm tt c cc cp trng thi phn bit c. T y tm ra cc tp ca tt c cc trng thi khng phn bit c, gi l {qi, qj, , qk}, {ql, qm, , qn}, ... B2. i vi mi tp {qi, qj, , qk} cc trng thi khng phn bit c, to ra mt trng thi c nhn ij k cho M.
Trang 89 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Th tc rt gn - reduce
B3. i vi mi quy tc chuyn trng thi ca M c dng (qr, a) = qp, tm cc tp m qr v qp thuc v. Nu qr {qi, qj, , qk} v qp {ql, qm, , qn}, th thm vo quy tc ( ij k, a) = lm n. q0 l trng thi ca m nhn ca n c cha B4. Trng thi khi u 0. B5. F l tp tt c cc trng thi m nhn ca n cha i sao cho qi F.
Trang 90 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Hy rt gn trng thi ca dfa sau (cho km bng truyn tng ng bn cnh).
q1 0 q2 1 0 q3 1 0,1 1 1 q4 0 1 q1 q3 q2 q4 q1 q4 q2 q4 q4 q4
0 0 q0
q0 q1 q2 q3 q4
Trang 91 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
q0 (q0, q1) 1 (q0, q3) 1 (q1, q2) (q1, q4) 0 (q2, q4) 0 q1 (q0, q2) 1 (q0, q4) 0 (q1, q3) (q2, q3) (q3, q4) 0 q2 q3
0 1 q1 q3 q2 q4 q1 q4 q2 q4 q4 q4
0
0
q4 0, 1 1 4 0,1
1,2,3 4
123
Trang 92 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l
nh l 2.4
Cho mt dfa M bt k, p dng th tc reduce to ra mt dfa M sao cho khc L(M) = L( M ) Hn na l ti gin theo ngha khng c mt dfa no khc c s trng thi nh hn m cng chp nhn L(M).
Trang 93 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Hy rt gn trng thi ca dfa sau (cho km bng truyn tng ng bn cnh).
0 0 q3 0 q1 1 1 q4 q0 1 q2 0,1 0,1 q5 0 1 q0 q1 q2 q3 q4 q5 q6 0 q1 q3 q5 q3 q5 q6 q6 1 q2 q4 q5 q4 q5 q5 q6
q6 0,1
Trang 94 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
(q0, q1) 0 (q1, q2) 0 (q2, q4) (q0, q2) 0 (q1, q3) (q4, q5) 0 (q2, q5) 0 (q4, q6) 0 q0 q1 q2 q3 q4 q5 q6
(q0, q3) 0 (q1, q4) 1 (q2, q6) 0 (q5, q6) (q0, q4) 0 (q1, q5) 0 (q3, q4) 1 (q0, q5) 1 (q1, q6) 0 (q3, q5) 0 (q0, q6) 1 (q2, q3) 1 (q3, q6) 0
0 q1 q3 q5 q3 q5 q6 q6
1 q2 q4 q5 q4 q5 q5 q6
1,3
0
2,4 5,6
Trang 95 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Bi tp rt gn dfa
Rt gn nhng dfa sau thnh dfa ti gin
Dfa M1 a b q0 q1 q4 q1 q4 q2 q2 q4 q3 q3 q3 q4 q4 q5 q5 q4 q6 q6 q7 q6 q7 q7 Dfa M2 a b q0 q1 q2 q1 q2 q3 q2 q2 q3 q3 q5 q4 q4 q5 q3 q5 q5 q5 q6 q1 q7 q7 q6 q4 Dfa M3 a b q0 q1 q2 q1 q2 q3 q2 q1 q4 q3 q4 q0 q4 q3 q0 Dfa M4 a b q0 q1 q3 q1 q2 q4 q2 q0 q3 q3 q1 q4 q4 q2 q3
Trang 96 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 97 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Ngn ng {a} c biu th bi BTCQ a. Ngn ng {a, b, c} c biu th bi BTCQ a + b + c. Ngc li BTCQ (a + b.c)* biu th cho ngn ng {, a, bc, aa, abc, bca, bcbc, aaa, aabc, ...}.
Trang 98 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
V d
L(a* . (a + b)) = = = = L(a*) L(a + b) (L(a))* (L(a) L(b)) {, a, aa, aaa, . . .}{a, b} {a, aa, aaa, . . . , b, ab, aab, . . .}
Trang 101 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Kt qu
L(r1) = {a2nb2m+1: n 0, m 0} L(r2) = {w {a, b}*: na(w) chn} L(r3) = {w {a, b}*: w c bt u bng a}
Trang 102 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Kt qu
r1 = (+ + - + )(0 + 1 + + 9)+(. (0 + 1 + + 9)+ + ) (E (+ + - + )(0 + 1 + + 9)+ + ) r2 = [(1* 011*)* + 1*] (0 + ) hoc (1 + 01)* (0 + ) Khng tn ti BTCQ biu din cho L3
Trang 103 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Ch
(r*)* = r* (r1* + r2)* = (r1 + r2)* (r1r2* + r2)* = (r1 + r2)* Trong mt s ti liu php cng (+) c k hiu bng du | thay cho du + . Chng hn (a + b).c th c vit l (a | b).c
Trang 104 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
B
Vi mi nfa c nhiu hn mt trng thi kt thc lun lun c mt nfa tng ng vi ch mt trng thi kt thc. qf1 tng ng vi qf1 qf
qfn
qfn
Trang 105 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Th tc: re-to-nfa
T b trn mi nfa c th c biu din bng s nh sau M qf q0 Chng minh Th tc: re-to-nfa
Input: Biu thc chnh qui r. Output: nfa M = (Q, , , q0, F).
(a) nfa chp nhn (b) nfa chp nhn {} (c) nfa chp nhn {a}
Trang 106 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
q01
qf1
q02
qf2
hoc
M(r1) M(r2)
q0
M(r)
qf
hoc
q0 qf
Trang 109 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Xy dng nfa cho BTCQ sau r = (a + bb)*(ba* + )
b a b b a
a b b
Trang 110 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Bi tp BTCQ
Xy dng nfa cho cc BTCQ sau
r1 = aa* + aba*b* r2 = ab(a + ab)* (b + aa) r3 = ab*aa + bba*ab r4 = a*b(ab + b)*a* r5 = (ab* + a*b)(a + b*a)* b r6 = (b + a*)(ba* + ab)*(b*a + ab)
Trang 111 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 112 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Nhn xt
TCTT ca mt nfa bt k c th c xem l TTCTTTQ nu cc nhn cnh c din dch nh sau.
Mt cnh c gn nhn l mt k hiu n a c din dch thnh cnh c gn nhn l biu thc a. Mt cnh c gn nhn vi nhiu k hiu a, b, . . . th c din dch thnh cnh c gn nhn l biu thc a + b + . . .
Mi NNCQ u mt TCTTTQ chp nhn n. Ngc li, mi NN m c chp nhn bi mt TCTTTQ l chnh qui.
Trang 113 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
qi
a d
b c qj
Trang 114 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l
Rt gn trng thi q ca TCTT sau
a
(a+b)a ab
aa q b 1 +b) (a a+ b ab q2
q0
a b b
+b a
a
q1 b q2
aa+b
q0
a+b
nh l 3.2
Cho L l mt NNCQ, th tn ti mt BTCQ r sao cho L = L(r). r4 r1 r2 th chuyn qf r3 r = r1*r2(r4 + r3r1*r2)* q0 trng thi
Trang 115 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Xc nh BTCQ cho nfa sau b a q0 a q1 b b a, b q2 b+ab*a q0 ab*b a+b q2
Trang 116 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 117 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 118 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
VP G1 = ({S}, {a, b}, S, P1), vi P1 c cho nh sau l TT-P S abS | a VP G2 = ({S, S1, S2}, {a, b}, S, P2), vi P2 nh sau l TT-T S S1ab, S1 S1ab | S2, S2 a, Dy S => abS => ababS => ababa l mt dn xut trong G1. L(G1) = L((ab)*a) L(G2) = L(a(ab)*ab)
Trang 120 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 121 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
B1. ng vi mi bin Vi ca vn phm ta xy dng mt trng thi mang nhn Vi cho nfa tc l: Q V. B2. ng vi bin khi u V0, trng thi V0 ca nfa s tr thnh trng thi khi u, tc l: S = V0 B3. Nu trong vn phm c mt lut sinh no dng Vi a1a2am th thm vo nfa mt v ch mt trng thi kt thc Vf.
Trang 122 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 123 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Xy dng mt nfa chp nhn ngn ng ca vn phm sau: V0 aV1 | ba V1 aV1 | abV0 | b Nfa kt qu
V0 b b a a a V1 a b Vf
Trang 124 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Th tc: nfa to GP
B2. Vi mi chuyn trng thi (qi, aj) = qk ca M ta xy dng lut sinh TT-P tng ng qi ajqk. B3. i vi mi trng thi qf F chng ta xy dng lut sinh qf .
V d
Xy dng VPTT-P cho ngn ng L(aab*a).
b q0 a q1 a q2 a qf
Trang 126 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l 3.5 Ngn ng L l chnh qui nu v ch nu tn ti mt VPTT-T G sao cho L = L(G). Ta chng minh mi quan h tng ng thng qua VPTT-P. B 1
T VPTT-T GT cho ta xy dng VPTT-P GP tng ng nh sau
Trang 127 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
B 2
Nu L l chnh qui th LR cng chnh qui.
Nhn xt
Lp VPTT-T tng ng vi lp NNCQ
nh l 3.6
Mt ngn ng L l chnh qui nu v ch nu tn ti mt VPCQ G sao cho L = L(G).
Trang 128 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Xy dng nfa M, VPTT-T GT tng ng vi VPTT-P GP sau S aS | bA A bB | a B aS | b
a
b S a
A b B
a U b
b a
Y b Z
a X b
MR
GPR X aY | bZ Y bU Z bY U aU | aZ |
GT
Trang 129 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
X Ya | Zb Y Ub Z Yb U Ua | Za |
Trang 130 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 131 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Tnh ng ca NNCQ
ng di cc php ton tp hp n gin. nh l 4.1
Nu L1 v L2 l cc NNCQ, th L1L2, L1L2 , L1L2, L v L1* cng vy. Chng ta ni rng h NNCQ l ng di cc php hi, giao, kt ni, b v bao ng-sao.
Chng minh
Nu L1, L2 l chnh qui th cc BTCQ r1, r2 sao cho L1= L(r1), L2= L(r2). Theo nh ngha r1 + r2, r1r2 v r1* l cc BTCQ nh ngha cc ngn ng L1L2, L1L2, v L1*. V vy h NNCQ l ng i vi cc php ton ny. CM tnh ng i vi php b, cho M = (Q, , , q0, F) l ^ dfa chp nhn L1, th dfa M = (Q, , , q0, Q - F) chp nhn L .
Trang 132 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
L1 I L2 = L1 I L2 = L1 U L2
Th tc: intersection
Th tc: intersection
Input: dfa M1 = (Q, , 1, q0, F1) v dfa M2 = (P, , 2, p0, F2) ^ ^ ^ ^ Output: dfa M = (Q , , , ( q0 , p0 ), F ) ^ ^ Q = Q P, tc l Q = {(qi, pj): trong qi Q cn pj P}. Cc chuyn trng thi c xy dng nh sau ^ ((qi, pj), a) = (qk, pl) nu v ch nu 1(qi, a) = qk v 2(pj, a) = pl ^ F = {(qi, pj): trong qi F1 cn pj F2}
Trang 134 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
L1
L2
p1 a b
p3
p4
L1 L2
q1 p2 a
Trang 135 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Chng minh
chng minh tnh ng i vi php hiu da vo cc qui tc tp hp ta c: L1 - L2 = L1 L2 Da vo tnh ng ca php b v php giao c chng minh, suy ra tnh ng cho php hiu. Tnh ng ca php nghch o c chng minh Chng 3, slide 128.
Trang 136 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Cho ={a, b}, ={a, b, c} v h c nh ngha nh sau h(a) = ab, h(b) = bbc. Th h(aba) = abbbcab. nh ng hnh ca L = {aa, aba} l ngn ng h(L) = {abab, abbbcab}. Cho ={a, b}, ={ b, c, d } v h c nh ngha nh sau h(a) = dbcc, h(b) = bdc. Nu L l ngn ng c biu th bi BTCQ r = (a + b*)(aa)*, th r1 = (dbcc + (bdc)*)(dbccdbcc)*, l BTCQ biu th cho h(L). T dn ta ti nh l sau
Trang 138 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l
nh l 4.3
Cho h l mt ng hnh. Nu L l mt NNCQ, th nh ng hnh ca n h(L) cng l NNCQ. H cc NNCQ v vy l ng di php ng hnh bt k.
Cho w, v * th thng ng (right quotient) ca w cho v c k hiu v nh ngha l w/v = u nu w = uv, ngha l nu v l tip v ng ca w th w/v l tip u ng tng ng ca w. Cho L1 v L2 l cc ngn ng trn bng ch ci ging nhau, th thng ng ca L1 vi L2 c nh ngha l L1/L2 = {w/v: w L1, v L2 } = {x : xy L1 vi mt y no L2 }
Trang 139 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Cho L1 = {anbm: n 1, m 0} {ba} v L2 = {bm: m 1}, th L1 /L2 = { anbm: n 1, m 0}. V L1, L2, v L1 /L2 l cc NNCQ , iu ny gi cho chng ta rng thng ng ca hai NNCQ cng l NNCQ.
B
Cho M1 = (Q1, , 1, q0, F1) l mt dfa cho L1. Nu mt trng thi q no Q1 c tnh cht tn ti mt chui y no L2 sao cho 1*(q, y) F1 th x m 1*(q0, x) = q, x s L1/L2. V v vy nu thay nhng trng thi kt thc ca M bng nhng trng thi q c tnh cht ny th ta s c mt dfa m chp nhn L1/L2.
Trang 140 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l
M1 M2 q0 p0 x q y y qf pf x m 1*(q0, x) = q th x L1/L2
nh l 4.4
Nu L1 v L2 l cc NNCQ, th L1/L2 cng chnh qui. Chng ta ni rng h NNCQ l ng di php thng ng.
Chng minh
Cho L1 = L(M) trong M = (Q, , , q0, F) l mt dfa. Ta xy ^ ^ dng mt dfa khc M =( Q, , , q0, F ), chp nhn L1/L2,bng cch ch thay i tp F thng qua th tc sau.
Trang 141 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Tm L1/L2 cho L1 = L(a*baa*), L2 = L(ab*). a a L1/L2 b q0 q2
a M1 q0 b q1 b M2 p0 a p1 a
a q1 a q2
Trang 143 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Cc cu hi c bn v NNCQ
Cho mt ngn ng L v mt chui w, chng ta c th xc nh c w c phi l mt phn t ca L hay khng?
y l mt cu hi thnh vin (membership) v phng php tr li n c gi l gii thut thnh vin.
Mt ngn ng cho l hu hn hay v hn? Hai ngn ng no c ging nhau khng? C hay khng mt ngn ng l tp con ca mt ngn ng khc?
Cc nh l
nh l 4.5
Cho mt biu din chun ca mt NNCQ L bt k trn v mt chui w bt k *, th tn ti gii thut xc nh w c L hay khng.
Chng minh
Chng ta biu din ngn ng bng mt dfa ri kim tra xem w c c chp nhn bi dfa ny khng.
nh l 4.6
Tn ti gii thut xc nh mt NNCQ cho trong mt dng biu din chun c trng, hu hn, v hn hay khng.
Trang 145 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Cc nh l (tt)
Chng minh
Chng ta biu din ngn ng bng mt dfa. Nu tn ti mt con ng i t trng thi khi u n mt trng thi kt thc no th ngn ng l khc trng. xc nh ngn ng c v hn khng, ta tm tt c cc nh m c chu trnh i qua n. Nu c mt nh trong s ny thuc mt con ng no i t trng thi khi u n mt trng thi kt thc th ngn ng l v hn, ngc li th l hu hn.
Trang 146 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Cc nh l (tt)
nh l 4.7
Cho cc biu din chun ca hai NNCQ L1 v L2, tn ti gii thut xc nh c hay khng L1 = L2.
Chng minh
S dng L1 v L2 chng ta xy dng ngn ng: L3 = ( L1 I L2 ) U ( L1 I L2 ) Theo l thuyt tp hp ta c L1 = L2 khi v ch khi L3 = . Vy thay v kim tra L1 c bng L2 khng ta chuyn v kim tra L3 c bng khng. Bng tnh ng L3 l chnh qui, v chng ta c th tm thy dfa M m chp nhn L3. Thm vo chng ta c gii thut trong nh l 4.6 xc nh xem L3 c bng trng khng. Nu L3 = th L1 = L2, ngc li th khng.
Trang 147 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Nhn xt
Trong l lun ny, nguyn l chung chim b cu n gin pht biu rng mt tmt hu hn c mt b nh hu hn. chp nhn tt c cc chui anbn, mt tmt phi phn bit gia mi tip u ng an v am. Nhng v ch c mt s hu hn cc trng thi ni thc hin iu ny, nn phi c mt n v mt m no m i vi chng tmt khng th phn bit c.
Trang 149 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
B bm
nh l 4.8
Cho L l mt NNCQ v hn, th tn ti mt s nguyn dng m no sao cho w L v |w| m u tn ti mt cch phn tch w thnh b ba w = xyz, vi |xy| m, v |y| 1, sao cho wi =xyiz L i = 0, 1, 2, ...
Chng minh
Nu L l chnh qui, th mt dfa chp nhn n. Ly mt dfa nh th c tp trng thi Q = {q0, q1, q2, ... ,qn}. Chn m = |Q| = n + 1.
Trang 150 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Vn dng b bm
S dng b bm chng minh L = {anbn: n 0} l khng chnh qui.
Gi s L l chnh qui, d thy L v hn. Theo b bm tn ti s nguyn dng m. Chn w = ambm L, |w|=2m m. Theo b bm mt cch phn tch w thnh b ba w = xyz, trong |xy| m (1), |y|= k 1 (2). T cch chn w c m k hiu a i u, kt hp vi (1) suy ra xy ch cha a, t y suy ra y cng ch cha a. Vy y = ak. Xt wi = xyiz vi i = 0, ta c w0 = an - kbn L theo b bm, nhng iu ny mu thun vi nh ngha ca L. Vy L l khng chnh qui.
Trang 153 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Vn dng b bm (tt)
Nhn xt L lun ny c th c trc quan ha nh mt tr chi chng ta u vi mt i th. Mc ch ca chng ta l thng vn chi bng cch to ra mt s mu thun ca b bm, trong khi i th th chn ng chng ta. C bn bc i trong tr chi ny nh sau. (1) i th ly m. (2) Vi m cho chng ta ly mt chui w L tha |w| m. (3) i th chn phn hoch xyz, tha |xy| m, |y| 1. Chng ta phi gi thit rng i th chn la lm sao cho chng ta kh thng vn chi nht. (4) Chng ta chn i sao cho chui c bm ln L.
Trang 154 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Vn dng b bm (tt)
Bc quyt nh y l bc (2). Trong khi chng ta khng th p buc i th ly mt phn hoch c th ca chui w, chng ta c th chn chui w sao cho i th b hn ch nghim ngt trong bc (3), p buc mt s chn la ca x, y, z sao cho cho php chng ta to ra mt mu thun vi b bm trn bc k tip ca chng ta.
V d
Chng minh cc ngn ng sau l khng chnh qui. L1 = {wwR: w {a, b}*} L2 = {anbl: n l}
Trang 155 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Tm tt h NNCQ
ng vi hi, giao, kt ni, b, bao ng sao, hiu, nghch o, ng hnh, thng ng wL? L=? L v hn ? L1 = L2 ? L chnh qui ?
Dfamin
NNCQ
Dfa
Nfa
VPTT-T
VPTT-P
BTCQ
Trang 156 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 157 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Nhn xt
Mi NNCQ u l PNC, nhng iu ngc li th khng. Nh chng ta s thy sau ny h NNCQ l mt tp con thc s ca h NNPNC.
Trang 158 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Cc v d v NNPNC
V d 1
Vn phm G = ({S}, {a, b}, S, P), c cc lut sinh S aSa | bSb | , l PNC. Mt dn xut in hnh trong vn phm ny l S aSa aaSaa aabSbaa aabbaa D thy L(G) = {wwR: w {a, b}*} Vn phm trong v d trn khng nhng l PNC m cn l tuyn tnh. Cc VPCQ v tuyn tnh r rng l PNC, nhng mt VPPNC khng nht thit l tuyn tnh.
Trang 159 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Cc v d v NNPNC (tt)
V d 2 Ngn ng sau l PNC. L = {anbn: n 0} VPPNC cho ngn ng ny l: S aSb | V d 3 Ngn ng sau l PNC. L = {anbm: n m} Trng hp n > m Trng hp m > n S AS1 S S1B S1 aS1b | S1 aS1b | A aA | a B bB | b
Trang 160 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Cc v d v NNPNC (tt)
V d 4
Xt vn phm sau S aSb | SS | . Vn phm ny sinh ra ngn ng L = {w {a, b}*: na(w) = nb(w) v na(v) nb(v), vi v l mt tip u ng bt k ca w}
Nhn xt
Nu trong ngn ng trn thay a bng du m ngoc (, b bng du ng ngoc ), th ngn ng s tng ng vi cu trc ngoc lng nhau, chng hn (( )) hay (( ) ( )), ph bin trong cc ngn ng lp trnh.
Trang 161 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh ngha 5.2
Mt dn xut c gi l tri nht (DXTN - leftmost derivation) nu trong mi bc bin tri nht trong dng cu c thay th. Nu bin phi nht c thay th, chng ta gi l dn xut phi nht (DXPN - rightmost derivation).
Trang 163 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Xt vn phm vi cc lut sinh (c nh ch s bn tay phi) S aAB, 1 A bBb, 2 B A | , 3, 4 1 2 3 2 4 4 S aAB abBbB abAbB abbBbbB abbbbB abbbb l mt DXTN ca chui abbbb. Mt DXPN ca chui ny l 1 2 2 3 4 4 S aAB aA abBb abAb abbBbb abbbb DXTN v DXPN c li im l ta ch cn trnh by dy s hiu lut sinh c dng sinh ra cu m khng s b nhm ln. DXTN ca abbbb l: 123244. DXPN ca abbbb l: 142324.
Trang 164 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Cy dn xut
Mt cch th hai trnh by cc dn xut, c lp vi th t cc lut sinh c p dng, l bng cy dn xut (CDX). Mt CDX l mt cy c th t trong cc nt c gn nhn vi v tri ca lut sinh cn cc con ca cc nt biu din v phi tng ng ca n. Chng hn, bn di trnh by mt phn ca CDX biu din lut sinh A abABc. A a b A B c
Trang 165 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Cy dn xut (tt)
nh ngha 5.3
Cho G = (V, T, S, P) l mt VPPNC. Mt cy c th t l mt cy dn xut cho G nu v ch nu c cc tnh cht sau. 1. Gc c gn nhn l S. 2. Mi l c mt nhn ly t tp T {}. 3. Mi nt bn trong (khng phi l l) c mt nhn ly t V. 4. Nu mi nt c nhn A V, v cc con ca n c gn nhn (t tri sang phi) a1, a2, ... , an, th P phi cha mt lut sinh c dng A a1a2 ... an 5. Mt l c gn nhn th khng c anh ch em, tc l, mt nt vi mt con c gn nhn khng th c con no khc.
Trang 166 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Cy dn xut (tt)
Mt cy m c cc tnh cht 3, 4 v 5, cn tnh cht (1) khng nht thit c gi v tnh cht 2 c thay th bng 2.Mi l c mt nhn ly t tp V T {} th c gi l mt cy dn xut ring phn (CDXRP). Chui k hiu nhn c bng cch c cc nt l ca cy t tri sang phi, b qua bt k no c bt gp, c gi l kt qu (yield) ca cy.
Trang 167 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Xt vn phm G vi cc lut sinh sau S aAB, A bBb, B A | , CDX cho chui abbbb CDX ring phn S S a b A B B b a b A B
Trang 168 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
B b b A B b
nh l 5.1
Cho G = (V, T, S, P) l mt VPPNC, th w L(G), tn ti mt CDX ca G m kt qu ca n l w. Ngc li, kt qu ca mt CDX bt k l thuc L(G). Tng t, nu tG l mt CDX ring phn bt k ca G m gc ca n c gn nhn l S th kt qu ca tG l mt dng cu ca G.
Trang 169 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Cho vn phm G sau: S aAbS | bBS | (1, 2, 3) A aAA | aS | b (4, 5, 6) B bBB | bS | a (7, 8, 9) Hy PTCP t trn xung cho chui sau: w = aabbbba.
Trang 171 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
aabbbba aabbbba aabbbba aAbS aaAAbS aaAAbS 6 aabbbba aabbbba aabbbba aabbbS aabbbS aabbbS 9 3
Trang 173 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d v PTCP t di ln
Hy PTCP t di ln cho w = abbcde trn vn phm G sau: S aABe (1) A Abc | b (2, 3) Bd (4) B1. Cc l ca cy dn xut a b b c d e A B2. Thu gim bng A b a b b c d e A B3. Thu gim bng A Abc a A
Trang 174 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
b b c d e
V d v PTCP t di ln (tt)
S aABe (1) A Abc | b (2, 3) Bd (4) B4. Thu gim bng B d A
A a
b b c d e S A A B
b b c d e 1 3 2 4 Kt qu: abbcde aAbcde aAde aABe S 1 2 3 4 Hay S aABe aAde aAbcde abbcde (DXPN)
Trang 175 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Nhn xt
Sau lt th n chng ta c cc dng cu m c th c dn xut t S vi n lut sinh. Nu w L(G), th n phi c mt DXTN c di hu hn. V vy phng php ny cui cng s tm c mt DXTN ca w.
V d
Xt vn phm S SS | aSb | bSa | v chui w = aabb. 1, 2, 3, 4
Trang 177 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
S SS | aSb | bSa | 1, 2, 3, 4 Lt 1 Lt 2 1. S SS 1.1 S SS SSS 2. S aSb 1.2 S SS aSbS 3. S bSa 1.3 S SS bSaS 4. S 1.4 S SS S 2.1 S aSb aSSb 2.2 S aSb aaSbb 2.3 S aSb abSab 2.4 S aSb ab w = aabb.
n Lt 3 ta tm thy 2.2.4 S aSb abSab abab Vy chui aabb thuc ngn ng ca vn phm ang xt.
Trang 178 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Nhn xt
PPPTCPVC c cc nhc im nghim trng sau.
1. Khng hiu qu. B bng n t hp. 2. C kh nng khng bao gi kt thc i vi cc chui L(G). Chng hn vi w = abb, phng php ny s i n vic sinh ra v hn cc dng cu m khng dng li, tr phi chng ta b sung thm vo cch cho n dng li. Nhc im 2 c th khc phc c nu chng ta gii hn vn phm khng c php cha cc lut sinh rng (A ) v n v (A B).
Trang 179 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l
nh l 5.2
Gi s rng G = (V, T, S, P) l mt VPPNC m khng c bt k lut sinh no c dng A , hay A B, trong A, B V, th PPPTCPVC c th c hin thc thnh mt gii thut m w T*, hoc to ra c s PTCP ca w, hoc bit rng khng c s PTCP no l c th cho n.
Chng minh
mi bc dn xut hoc chiu di hoc s k hiu kt thc ca dng cu tng t nht 1 n v. V vy sau khng qu (2|w| 1) lt, chng ta s xc nh c w c L(G) khng.
Trang 180 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l (tt)
nh l 5.3
i VPPNC gii thut m phn tch mt chui w bt k c L(G) khng trong mt s bc t l vi |w|3.
Nhn xt
Mt PP m thi gian t l vi |w|3 l khng hiu qu. Nu mt trnh bin dch da trn s cn mt lng thi gian kh ln PTCP cho thm ch mt chng trnh c di trung bnh. Nhng g m chng ta mun l t l vi |w|. Chng ta gi nhng PP nh vy l PPPTCP thi gian tuyn tnh. Tng qut, chng ta khng bit mt PPPTCP thi gian tuyn tnh no cho NNPNC, nhng cc PP nh th c th c tm thy i vi mt s lp VP c bit.
Trang 181 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Vn phm-s
Vn phm-s (simple grammar)
L mt VPPNC trong cc lut sinh c dng A ax trong A V, a T, x V*, v mi cp (A, a) ch c th xut hin ti a trn mt lut sinh. Ni cch khc, nu hai lut sinh bt k m c v tri ging nhau th v phi ca chng phi bt u bng cc k hiu kt thc khc nhau.
V d
Bn di l mt v d v vn phm-s S aS | bA (1, 2) A aAA | b (3, 4)
Trang 182 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Vn phm-s (tt)
Vn phm-s cho php PTCP mt chui w bt k khng qu |w| bc. Vi mi cp (A, a) trong A l bin cn thay th, a l k hiu ang c xt chui nhp, c ti a mt v phi ca A c th c p dng. S aS | bA (1, 2) V d vi VP trn vic PTCP chui ababb A aAA | b (3, 4) ch tn 5 bc v c kt qu nh sau. 3 1 2 4 4 S aS abA abaAA ababA ababb Vn phm-s c th m rng x, bng cch cho x (V T)*. iu ny khng lm thay i kh nng v tnh cht ca vn phm m cn lm qu trnh PTCP n gin hn mt cht. Ngn ng Pascal c th c biu th bng vn phm-s.
Trang 183 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Xt vn phm sau G = (V, T, E, P) vi V = {E, I}, T = {a, b, c, +, *, (, )} v cc lut sinh E I | E + E | E * E | (E) Ia|b|c Vn phm ny l nhp nhng v vi chui a + b * c c hai CDX khc nhau trn G nh sau.
Trang 184 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
ET|E+T TF|T*F F I | (E) Trang 185 I a|b|c L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Ngn ng L = {anbncm} { anbmcm } vi n, m khng m l mt NNPNC nhp nhng c hu. (Ch L = L1 L2). G2: S2 AX2 G1: S1 X1C X2 bX2c | X1 aX1b | C cC | A aA | Mt VP cho L bng cch kt hp hai VP trn vi lut sinh thm vo l S S1 | S2
Trang 186 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 187 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 189 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Xt vn phm G = ({A, B}, {a, b}, A, P) vi cc lut sinh A a | aA | bBc, B abA | b. Sau khi thay th bin B ta nhn c VP tng ng nh sau A a | aA | babAc | bbc, B abA | b Chui abbc c cc dn xut trong G v G1 ln lt nh sau: A aA abBc abbc A aA abbc Ch rng, bin B v cc lut sinh ca n vn cn trong VP mc d chng khng cn ng vai tr g trong bt k dn xut no. Sau ny chng ta s thy rng nhng lut sinh khng cn thit nh vy c th b loi b ra khi vn phm.
Trang 192 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Ghi ch
Cc lut sinh qui-tri ch l mt trng hp c bit ca qui-tri trong vn phm nh c pht biu sau. Mt vn phm c gi l qui-tri nu c mt bin A no * m i vi n A Ax l c th.
Trang 194 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
S dng nh l 6.2 loi b cc lut sinh qui-tri khi VP A Aa | aBc | B Bb | ba p dng nh l cho bin A ta c tp lut sinh mi nh sau: A aBc | | aBcZ | Z B Bb | ba Z a | aZ p dng nh l mt ln na ln ny cho bin B ta c tp lut sinh kt qu cui cng nh sau: A aBc | aBcZ | Z | B ba | baY Z a | aZ Y b | bY
Nhn xt
Vic loi b cc lut sinh qui-tri a ra cc bin mi. VP kt qu c th l "n gin" hn ng k so vi VP gc nhng mt cch tng qut n s c nhiu bin v lut sinh hn.
Trang 195 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Cc dng v dng
V dng loi 1: A V dng loi 2: S
* w T* * xAy
Trang 196 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Chng minh
Loi b cc bin v lut sinh v dng loi 1 To vn phm G1 = (V1, T, S, P1) vi V1 l tp bin khng v dng loi 1. Ta tm V1 nh sau: 1. Khi to V1 = . 2. Lp li bc sau cho n khi khng cn bin no c thm vo V1. i vi mi A V m c lut sinh A x, x (V1T)*, th thm A vo V1. 3. Loi khi P cc lut sinh c cha cc bin V1, ta c P1.
Trang 197 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
V d
Loi b cc bin v dng loi 1 ta c V1 = {S, A, B} v tp lut sinh P1 S aS | A Aa B aa Loi b cc bin v dng loi 2 ta c vn phm kt qu S aS | A Aa S aS | A | C Aa B aa C aCb S A B
Nhn xt
Nu thay i th t loi b (loi b cc bin v lut sinh v dng loi 2 trc) th s khng loi b c tt c cc bin v lut sinh v dng ch bng mt ln nh v d sau cho thy.
Trang 199 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
S aSb | ab | A A aAB Bb Nu loi b cc bin v lut sinh v dng loi 2 trc ta thy vn phm vn khng thay i v tt c cc bin u t ti c t S. Sau loi b tip cc bin v lut sinh v dng loi 1 ta s c vn phm sau: S aSb | ab | A Bb R rng vn phm ny cn bin B l v dng loi 2. Xt vn phm sau
Trang 200 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l 6.4
Chng minh:
Cho G l mt VPPNC bt k m L(G) khng cha , th tn ti mt vn phm G0 tng ng m khng c cha lut sinh-.
Trang 202 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Loi b cc lut sinh- ca vn phm sau: S ABaC CD| A BC Dd Bb| V B v C suy ra B v C l cc bin kh trng. V A BC nn suy ra A cng l bin kh trng. Ngoi ra khng cn bin no khc l kh trng. Theo Bc 2 ta xy dng c tp lut sinh mi tng ng nh sau: S ABaC | BaC | AaC | ABa | aC | Aa | Ba | a A BC | B | C Bb CD Dd
Trang 203 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l 6.5
Cho G = (V, T, S, P) l mt VPPNC bt k khng c lut sinh, th tn ti mt VPPNC G1 = (V1, T, S, P1) m khng c bt k lut sinh n v no v tng ng vi G1.
Chng minh
V d
3. i vi mi A, B tha (*) thm vo trong P1 cc lut sinh A y1 | y2 | ... | yn vi B y1 | y2 | ... | yn l cc lut sinh khng n v ca B. Loi b cc lut sinh n v cho VP sau S Aa | B B A | bb A a | bc | B S A B Trc ht, t cc lut sinh khng n v vo trong P1 S Aa A a | bc B bb T TPT ta a c thm cc lut sinh sau vo S a | bc | bb A bb Trang 205 B a | bc
V d
V d (tt)
Kt qu ta c vn phm tng ng sau khng c lut sinh n v S Aa | a | bc | bb A a | bc | bb B bb | a | bc
nh l 6.6
Cho L l mt NNPNC khng cha , tn ti mt VPPNC sinh ra L m khng cha bt k lut sinh v dng, lut sinh-, hay lut sinh-n v no.
Chng minh:
B1. Loi b lut sinh- B2. Loi b lut sinh n v B3. Loi b lut sinh v dng loi 1, ri v dng loi 2
Trang 206 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Mt s nhn xt
1. Loi b bin v dng loi 1 c th sinh ra bin v dng loi 2. 2. Vic loi b bin v dng loi 2 khng sinh ra bin v dng loi 1. 3. Vn phm khng c lut sinh n v th vic loi b lut sinh- c th sinh ra lut sinh-n v. 4. Vn phm khng c lut sinh- th vic loi b lut sinh-n v khng th sinh ra lut sinh- mi. 5. Loi b lut sinh- c th sinh ra bin v dng loi 1. 6. Loi b lut sinh-n v c th sinh ra bin v dng loi 2. 7. Vn phm khng c lut sinh-, lut sinh-n v th vic loi b cc lut sinh v dng loi 1, loi 2 khng sinh ra thm bt k lut sinh- v lut sinh-n v no mi.
Trang 207 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l 6.7
Bt k VPPNC G = (V, T, S, P) no vi L(G) u c mt vn phm tng ng G1 = (V1, T, S, P1) c dng chun Chomsky. Khng mt tng qut gi s G khng c lut sinh-v dng, lut sinh-n v v lut sinh-. Ta xy dng vn phm G1 c dng chun Chomsky bng th tc sau:
Trang 208 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Chng minh
Th tc: G-to-GChomsky
Input: G = (V, T, S, P) vi L(G) Output: G1 = (V1, T, S, P1) c dng chun Chomsky. 1. t cc lut sinh A a vo P1. 2. i vi cc lut sinh A x1x2 ... xn vi n 2, xi (V T) th thay cc k hiu kt thc, chng hn xk = a, bng cc bin i din mi Ba, to thnh cc lut sinh trung gian A C1C2...Cn. 3. ng vi mi bin i din Ba t vo P1 cc lut sinh Ba a. 4. Sau khi thc hin bc 2, ng vi mi lut sinh A C1C2 ... Cn m n = 2 t n vo P1. Ngc li ng vi n > 2 ta gii thiu cc bin mi D1, D2, ... v a vo cc lut sinh sau: A C1 D1 D1 D1 D2 Dn-2 Cn-1Cn
Trang 209 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Hy bin i VP sau thnh VP c dng chun Chomsky.
B c1
Sa Bb
S a | ABa A aab B b | Ac
c4
Trang 210 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l 6.8
i vi mi VPPNC G vi L(G), th tn ti mt vn phm tng ng trong dng chun Greibach.
Chng minh
Khng mt tnh tng qut gi s G khng c lut sinh-v dng, lut sinh-n v v lut sinh-. Ta xy dng vn phm c dng chun Greibach bng th tc sau.
Trang 211 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Th tc: G-to-GGreibach
Input: G = (V, T, S, P) vi L(G) Output: G1 = (V1, T, S, P1) c dng chun Greibach. 1. nh s th t cho cc bin chng hn l A1, A2, . . . An. 2. Dng nh l 6.1 v 6.2 vit li VP sao cho cc lut sinh c mt trong ba dng sau Ai Ajxj, i < j a T v x (V T)* i Zi Ajxj, j n Zi l cc bin mi Ai axi iu ny thc hin c bng cch s dng nh l 6.1 v 6.2 cho cc bin Ai theo th t i i t 1, 2, ... n n nh sau. Gi s xt lut sinh ca bin Ai. Nu c lut sinh Ai Ajx m i > j th thay Aj i u bng cc v phi ca n, v lm cho n khi cc lut sinh ca Ai c dng Ai Ajx, i j. n y loi qui tri cho Ai th cc lut sinh ca n s c dng nh nu.
Trang 212 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Bin i VP sau thnh VP c dng chun Greibach
Trang 213 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
S SBb | Ab A Sb | Ba B Sa | b
V d
S0 S0B2b | A1b A1 S0b | B2a Loi qui tri Thay th
S SBb | Ab A Sb | Ba B Sa | b
Loi qui tri A B a | B aZ (3) 1 2 2 1 Z1 bb | bZ0b | bbZ1 | bZ0bZ1 (4) Thay th B2 S0a | b B2 A1ba | A1bZ0a | b Thay th B2 b | bZ2 (5) B2 B2aba | B2aZ1ba | B2abZ0a | Z2 aba | aZ1ba | abZ0a | B2aZ1bZ0a | b aZ bZ a | abaZ | aZ baZ | abZ0aZ2 | aZ1bZ0aZ2
1 0 2 1
(6)
Trang 214 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
B2 b | bZ3 (5) A1 ba | bZ2a | baZ1 |bZ2aZ1 (7) S0 bab | bZ2ab | baZ1b | bZ2aZ1b | babZ0 | bZ2abZ0 | baZ1bZ0 | bZ2aZ1bZ0 (8) Z0 bb | bZ2b | bbZ0 |bZ2bZ0 (9)
Thay th
Trang 215 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
Vn phm gnGreibach
S0 bab | bZ2ab | baZ1b | bZ2aZ1b | babZ0 | bZ2abZ0 | baZ1bZ0 | bZ2aZ1bZ0 (8) A1 ba | bZ2a | baZ1 |bZ2aZ1 (7) (5) B2 b | bZ3 Z0 bb | bZ2b | bbZ0 |bZ2bZ0 (9) Z1 bb | bZ0b | bbZ1 | bZ0bZ1 (4) Z2 aba | aZ1ba | abZ0a | aZ1bZ0a | abaZ2 |aZ1baZ2 | abZ0aZ2 | aZ1bZ0aZ2 (6)
V d
S dng gii thut CYK PTCP chui w = aabbb trn G sau S AB (1) A BB | a (2, 3) B AB | b (4, 5) Ta c w = a a b b b 12345 V11 = {A}, V22 = {A}, V33 = {B}, V44 = {B}, V55 = {B}, V12 = , V23 = {S, B}, V34 = {A}, V45 = {A}, V13 = {S, B}, V24 = {A}, V35 = {S, B}, V14 = {A}, V25 = {S, B}, V15 = {S, B}. S V15 w L(G).
Trang 219 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
S AB A BB | a B AB | b
w=aabbb tm dn xut cho w, chng ta phi 12345 tm cch lu vt 5 3 3 V11 = {A ( a)}, V22 = {A( a)}, V33 = {B( b)}, 5 5 V44 = {B( b)}, V55 = {B( b)}, 1 4 V12 = , V23 = {S( A22B33), B( A22B33)}, 2 2 V34 = {A( B33B44)}, V45 = {A( B44B55)}, 2 1 4 V13 = {S( A11B23), B( A11B23)}, V24 = {A( B23B44)}, 4 1 V35 = {S( A34B55), B( A34B55)}, 1 2 1 V14 = {A( B13B44)}, V25 = {S( A22B35, A24B55), 4 4 B( A22B35, A24B55)}, 4 4 1 1 V15 = {S( A11B25, A14B55), B( A11B25, A14B55)}.
Trang 220 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
S AB A BB | a B AB | b w=aabbb 12345
Kt qu c 3 DXTN nh sau: 1 3 4 2 4 3 (1) S A11B25 aB25 aA22B35 aaB35 aaA34B55 ,5, aaB33B44B5555aabbb (DXTN: 134342555) 3 4 1 2 4 (2) S A11B25 aB25 aA24B55 aB23B44B55 aA22B33B44B553,5,5,5aabbb (DXTN: 134243555) 2 4 1 4 3 (3) S A14B55 B13B44B55 A11B23B44B55 aB23B44B55 aA22B33B44B553,5,5,5aabbb (DXTN: 124343555)
Trang 221 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
3 CDX tng ng: S A11 a A22 a A34 B33 B44 b b B25 B35 B55 b A11 a B23 A22 B33 a b A24 B44 b S B25 B55 b
B55 b
Trang 222 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Bi tp
Dng gii thut CYK PTCP cc chui sau w1 = abab, w2 = abaa trn cc VP G1, G2 tng ng. G1 G2 S ABBB (1, 2) S AB (1) A BAa (3, 4) A BBa (2, 3) B AAab (5, 6, 7) B BAb (4, 5)
Trang 223 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 225 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
(q, a, b) = {(p, cd)} Input file a Control unit p q Stack c d b
V d
Xt mt npda vi Q = {q0, q1, q2, qf}, = {a, b}, = {0, 1, z}, F = {qf},
Trang 228 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Nhn xt
(q0, a, z) = {(q1,1z), (qf, )}, (q0, , z) = {(qf, )}, (q1, a, 1) = {(q1, 11)}, (q1, b, 1) = {(q2, )}, (q2, b, 1) = {(q2, )}, (q2, , z) = {(qf, )}. (q0, b, 0) khng c nh ngha tng ng vi cu hnh cht m ta hc. (q1, a, 1) = {(q1, 11)} thm mt k hiu 1 vo stack khi a c c. (q2, b, 1) = {(q2, )} xa mt k hiu 1 khi stack khi b c c. L(M) = {anbn : n 0} {a}
Trang 229 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Mt s khi nim
Hnh trng tc thi
L b ba (q, w, u), trong q l trng thi ca n v iu khin, w l phn cha c ca chui nhp, cn u l ni dung ca stack (vi k hiu tri nht l k hiu nh ca stack).
|_ Di chuyn,
Mt di chuyn t mt hnh trng tc thi ny n mt hnh trng tc thi khc s c k hiu bng |_ . (q1, aw, bx) |_ (q2, w, yx) l c kh nng (q2, y) (q1, a, b). |_* , |_+ , |_ Du * ch ra c 0 bc di chuyn c thc hin cn du + ch ra 1 bc di chuyn. Ch M ch ra di chuyn ca tmt no. Trang 230
L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Xy dng mt npda cho ngn ng L = {w {a, b}*: na(w) = nb(w)}
Trang 231 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Xy dng npda cho ngn ng ny nh sau. M = ({q0, qf}, {a, b}, {0, 1, z}, , q0, z, {qf}). (q0, , z) = {(qf, z)}, (q0, a, z) = {(q0, 0z)}, (q0, b, z) = {(q0, 1z)}, (q0, a, 0) = {(q0, 00)}, (q0, b, 0) = {(q0, )}, (q0, a, 1) = {(q0, )}, (q0, b, 1) = {(q0, 11)}, Trong qa trnh x l chui baab, npda thc hin cc di chuyn sau. (q0, baab, z) |_ (q0, aab, 1z) |_ (q0, ab, z) |_ (q0, b, 0z) |_ (q0, , z) |_ (qf, , z)
Trang 232 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
Xy dng npda cho ngn ng L = {wwR: w {a, b}+} M = ({q0, q1, qf}, {a, b}, {a, b, z}, , q0, z, {qf}). (q0, a, z) = {(q0, az)}, (q0, b, z) = {(q0, bz)}, (q0, a, a) = {(q0, aa)}, (q0, b, a) = {(q0, ba)}, (q0, a, b) = {(q0, ab)}, (q0, b, b) = {(q0, bb)}. (q0, , a) = {(q1, a)}, (q0, , b) = {(q1, b)}, (q1, a, a) = {(q1, )}, (q1, b, b) = {(q1, )}, (q1, , z) = {(qf, z)}.
Trang 233 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
Dy chuyn hnh trng chp nhn chui abba l. (q0, abba, z) |_ (q0, bba, az) |_ (q0, ba, baz) |_ (q1, ba, baz) |_ (q1, a, az) |_ (q1, , z) |_ (qf, , z). Npda ci tin (q0, a, z) = {(q0, aa)}, (q1, a, a) = {(q1, )}, (q0, b, z) = {(q0, bz)}, (q1, b, b) = {(q1, )}, (q0, a, a) = {(q0, aa), (q1, )}, (q1, , z) = {(qf, z)}. (q0, b, a) = {(q0, ba)}, (q0, a, b) = {(q0, ab)}, (q0, b, b) = {(q0, bb), (q1, )}.
Trang 234 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Bi tp
Dy chuyn hnh trng chp nhn chui abba l. (q0, abba, z) |_ (q0, bba, az) |_ (q0, ba, baz) |_ (q1, a, az) |_ (q1, , z) |_ (qf, , z).
V d
Xy dng npda cho ngn ng c sinh ra bi vn phm sau. S aSbb | a. u tin ta bin i vn phm ny sang dng chun Greibach, thnh vn phm l: S aSA | a, A bB, B b. Automat tng ng s c ba trng thi {q0, q1, qf}, vi trng thi khi u l q0 v trng thi kt thc l qf. u tin, trng thi khi u bin S c t trn stack bng (q0, , z) = {(q1, Sz)}
Trang 237 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
Cc lut sinh S aSA | a c m phng thnh (q1, a, S) = {(q1, SA), (q1, )} Bng kiu tng t, cc lut sinh khc c m phng bng (q1, b, A) = {(q1, B)}, (q1, b, B) = {(q1, )} S xut hin k hiu khi u stack trn nh stack bo hiu s hon tt ca dn xut v PDA s c t vo trong trng thi kt thc ca n bng chuyn trng thi (q1, , z) = {(qf, )}.
Trang 238 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
Input file a a b b # S aSA aaA aabB aabb S aSA | a, A bB, B b. Input file a a b b # Control unit q0 f 1 Stack S A B S z
Trang 239 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l
nh l 7.1
i vi mt NNPNC bt k khng cha , tn ti mt npda M sao cho L = L(M).
Th tc: GGreibach-to-npda
Input: G = (V, T, S, P) c dng chun Greibach Output: npda M = (Q, , , , q0, z, F) sao cho L(M) = L(G). B1 M = ({q0, q1, qf}, T, V {z}, , q0, z, {qf}), z V. B2 (q0, , z) = {(q1, Sz)} B3 (q1, a, A) {(q1, u)} P c lut sinh A au B4 (q1, , z) = {(qf, z)}
Trang 240 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
S aA, A aABC | bB | a, B b, C c. (q0, , z) = {(q1, Sz)}, (q1, a, S) = {(q1, A)}, (q1, a, A) = {(q1, ABC), (q1, )}, (q1, b, A) = {(q1, B)}, (q1, b, B) = {(q1, )}, (q1, c, C) = {(q1, )}, (q1, , z) = {(qf, z)}. (q0, aaabc, z) |_ (q1, aaabc, Sz) |_ (q1, aabc, Az) |_ (q1, abc, ABCz) |_ (q1, bc, BCz) |_ (q1, c, Cz) |_ (q1, , z) |_ (qf, , z).
Trang 241 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Th tc G-to-npda ci tin
Th tc: G-to-npda
Input: G = (V, T, S, P) c dng ty Output: npda M = (Q, , , , q0, z, F) sao cho L(M) = L(G). B1 M = ({q0, q1, qf}, T, V T {z}, , q0, z, {qf}), z V. B2 (q0, , z) = {(q1, Sz)} B3 (q1, a, A) {(q1, u)} P c lut sinh A au, a T B4 (q1, , A) {(q1, u)} P c lut sinh A u v u khng c k hiu kt thc i u. B5 (q1, a, a) = (q1, ) vi a T v a xut hin trong mt v phi lut sinh no m khng phi v tr khi u. B6 (q1, , z) = {(qf, z)}
Trang 242 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
(q0, , z) = {(q1, Sz)}, (q1, a, S) = {(q1, A)}, (q1, b, S) = {(q1, BbS)}, (q1, , S) = {(q1, AB)}, (q1, a, A) = {(q1, B)}, (q1, b, A) = {(q1, BaA)}, (q1, a, B) = {(q1, BbB)}, (q1, , B) = {(q1, SB), (q1, )}, (q1, a, a) = {(q1, )}, (q1, b, b) = {(q1, )}, (q1, , z) = {(qf, z)}. w = baabaa S bBbS bSBbS baABbS baaBBbS baaBbS baabS baabaA baabaaB baabaa
S aA | bBbS | AB, A aB | bBaA, B aBbB | SB | (q0, baabaa, z) |_(q1, baabaa, Sz) |_(q1, aabaa, BbSz) |_(q1, aabaa, SBbSz) |_(q1, abaa, ABbSz) |_(q1, baa, BBbSz) |_(q1, baa, BbSz) |_(q1, baa, bSz) |_ (q1, aa, Sz) |_ (q1, a, Az) |_ (q1, , Bz) |_ (q1, , z) |_ (qf, , z).
Trang 243 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
npda npda tng ng tha 2 iu kin (1) Ch c mt trng thi kt thc v npda ch trong trng thi ny stack l trng. (2) Mi chuyn trng thi c dng (qi, a, A) = {c1, c2, ..., cn}, trong ci = (qj, ), (7.5) hoc Tc l, mt di chuyn ci = (qj, BC) (7.6) hoc tng hoc gim ni dung stack mt k hiu.
Trang 244 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
(qi, a, A) = (qj, ) (qi, a, A) = (qj, BC) (qiAqj) a (qiAqk) a(qjBql)(qlCqk)
Trang 245 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 246 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Xy dng VPPNC cho npda sau (q0 khi u, q2 kt thc) (q0, a, z) = {(q0, Az)}, (q0, a, A) = {(q0, A)}, L = {anb : n 1} (q0, b, A) = {(q1, )}, (q1, , z) = {(q2, )}. Bin i n thnh npda tng ng tha 2 iu kin. (q0, a, z) = {(q0, Az)}, (1) (q0, a, A) = {(q3, )}, (2) (q3, , z) = {(q0, Az)}, (3) (q0, b, A) = {(q1, )}, (4) (q1, , z) = {(q2, )}. (5)
Trang 247 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
Ba chuyn trng thi (2), (4), (5) c dng (7.5) nn c cc lut sinh tng ng vi n l (q0Aq3) a (6) (q0, a, A) = {(q3, )}, (2) (q0, b, A) = {(q1, )}, (4) (q0Aq1) b (7) (q1, , z) = {(q2, )}. (5) (q1zq2) (8).
Trang 248 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
(q0, a, z) = {(q0, Az)} c m phng thnh (q0zq0) a(q0Aq0)(q0zq0) | a(q0Aq1)(q1zq0) | a(q0Aq2)(q2zq0) | a(q0Aq3)(q3zq0), (q0zq1) a(q0Aq0)(q0zq1) | a(q0Aq1)(q1zq1) | a(q0Aq2)(q2zq1) | a(q0Aq3)(q3zq1), (q0zq2) a(q0Aq0)(q0zq2) | a(q0Aq1)(q1zq2) | a(q0Aq2)(q2zq2) | a(q0Aq3)(q3zq2), (q0zq3) a(q0Aq0)(q0zq3) | a(q0Aq1)(q1zq3) | a(q0Aq2)(q2zq3) | a(q0Aq3)(q3zq3),
Trang 249 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
Chuyn trng thi (q3, , z) = {(q0, Az)} c th c m phng bng tp lut sinh sau (q3zq0) (q0Aq0)(q0zq0) | (q0Aq1)(q1zq0) | (q0Aq2)(q2zq0) | (q0Aq3)(q3zq0), (q3zq1) (q0Aq0)(q0zq1) | (q0Aq1)(q1zq1) | (q0Aq2)(q2zq1) | (q0Aq3)(q3zq1), (q3zq2) (q0Aq0)(q0zq2) | (q0Aq1)(q1zq2) | (q0Aq2)(q2zq2) | (q0Aq3)(q3zq2), (q3zq3) (q0Aq0)(q0zq3) | (q0Aq1)(q1zq3) | (q0Aq2)(q2zq3) | (q0Aq3)(q3zq3),
Trang 250 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
(q0Aq3) a (6) Bin khi u ca vn phm l (q0zq2). (q0Aq1) b (7) Loi b bin v dng (q1zq2) (8) (q0zq0) a(q0Aq0)(q0zq0) | a(q0Aq1)(q1zq0) | a(q0Aq2)(q2zq0) | a(q0Aq3)(q3zq0), (q0zq1) a(q0Aq0)(q0zq1) | a(q0Aq1)(q1zq1) | a(q0Aq2)(q2zq1) | a(q0Aq3)(q3zq1), (q0zq2) a(q0Aq0)(q0zq2) | a(q0Aq1)(q1zq2) | a(q0Aq2)(q2zq2) | a(q0Aq3)(q3zq2), (q0zq3) a(q0Aq0)(q0zq3) | a(q0Aq1)(q1zq3) | a(q0Aq2)(q2zq3) | a(q0Aq3)(q3zq3),
Trang 251 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
(q0Aq3) a (6) (q0Aq1) b (7) (q1zq2) (8) (q0Aq0)(q0zq0) | (q0Aq1)(q1zq0) | (q0Aq2)(q2zq0) | (q0Aq3)(q3zq0), (q0Aq0)(q0zq1) | (q0Aq1)(q1zq1) | (q0Aq2)(q2zq1) | (q0Aq3)(q3zq1), (q0Aq0)(q0zq2) | (q0Aq1)(q1zq2) | (q0Aq2)(q2zq2) | (q0Aq3)(q3zq2), (q0Aq0)(q0zq3) | (q0Aq1)(q1zq3) | (q0Aq2)(q2zq3) | (q0Aq3)(q3zq3),
Trang 252 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
Vn phm kt qu (q0zq2) a(q0Aq1)(q1zq2) | a(q0Aq3)(q3zq2), (q3zq2) (q0Aq1)(q1zq2) | (q0Aq3)(q3zq2), (q0Aq3) a, (q0Aq1) b, (q1zq2) , Phn tch chui aab (q0, aab, z) |_
|_ |_ |_ |_
Npda (q0, a, z) = {(q0, Az)}, (q0, a, A)= {(q3, )}, (q3, , z) = {(q0, Az)}, (q0, b, A)= {(q1, )}, (q1, , z) = {(q2, )}. a(q0Aq3)(q3zq2) aa(q3zq2) aa(q0Aq1)(q1zq2) aab(q1zq2) aab
(q0zq2)
Trang 253 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
Rt gn vn phm (q0zq2) a(q0Aq1)(q1zq2) | a(q0Aq3)(q3zq2), (q3zq2) (q0Aq1)(q1zq2) | (q0Aq3)(q3zq2), (q0Aq3) a, (q0Aq1) b, (q1zq2) , S ab | aaX, X b | aX, S aBC | aAX, X BC | AX, A a, B b, C , L = {anb : n 1}
nh l 7.2
Nu L = L(M) i vi mt npda M no , th L l NNPNC.
Trang 254 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
PDA n nh v NNPNC n nh
nh ngha 7.3
Mt tmt y xung M = (Q, , , , q0, z, F) c gi l n nh nu n l mt tmt c nh ngha nh trong nh ngha 7.1, nhng phi chu s gii hn rng, i trng thi q Q, k hiu a {}, v b , (1) (q, a, b) cha ti a mt phn t, (2) Nu (q, , b) , th (q, c, b) phi = c .
nh ngha 7.4
Mt ngn ng L c gi l NNPNC n nh nu v ch nu tn ti mt dpda M sao cho L = L(M).
Trang 255 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Ngn ng L = {anbn: n 0} l PNC. V n c chp nhn bi dpda sau M = ({q0f, q1, q2}, {a, b}, {z, a}, , q0f, z, {q0f}) vi (q0f, a, z) = {(q1, az)}, (q1, a, a) = {(q1, aa)}, (q1, b, a) = {(q2, )}, (q2, b, a) = {(q2, )}, (q2, , z) = {(q0f, )}.
Trang 256 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d (tt)
Cch 2 (vi # l k hiu kt thc chui eof) M = ({q0, q1, qf}, {a, b}, {z, 1}, , q0, z, {qf}) vi (q0, #, z) = {(qf, )}, (q0, a, z) = {(q0, 1z)}, (q0, a, 1) = {(q0, 11)}, (q0, b, 1) = {(q1, )}, (q1, b, 1) = {(q1, )}, (q1, #, z) = {(qf, )}.
Trang 257 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Bi tp
Xy dng dpda cho cc ngn ng sau
L1 = {anbmcn+m: n, m 0} L2 = {anbn+mcm: n, m 1} L3 = {anbm: 2n m 3n} L4 = {w: na(w) = nb(w) + 2} L5 = {w: na(w) = 2nb(w)} L6 = {w: 2nb(w) na(w) 3nb(w)}
Trang 258 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Dpda v Npda
Dpda l mt lp con thc s ca npda L1 = {anbn : n 0} v L2 = {anb2n : n 0} l cc NNPNC v L = L1 L2 cng l NNPNC. L s c chng minh khng phi l NNPNC n nh.
Chng minh
Trc ht chng ta s dng mt kt qu trong Chng 8 l rng ngn ng L0 = {anbncn : n 0} l khng phi ng cnh. Gi s L l NNPNC n nh, gi M = (Q, , , , q0, z, F) l dpda ca L vi Q = {q0, q1, ..., qn}
Trang 259 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
anbn
Trang 260 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Phn c so trng
Trang 262 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Vn phm LL(k)
nh ngha 7.5
Cho G = (V, T, S, P) l mt VPPNC. Nu i vi mi cp dn xut tri nht * * S w1Ax1 w1y1x1 w1w2, * * S w1Ax2 w1y2x2 w1w3, vi w1, w2, w3 T*, s bng nhau ca k k hiu tri nht ca w2 v w3 (nu c) y1 = y2, th G c gi l mt VPLL(k). iu ny c ngha l nu nhn trc k k hiu ng nhp th ch c ti a mt lut sinh l ng n nht.
V d
Vn phm bn l thuc loi LL(1)
Trang 264 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Vn phm LL(k)
Bng PTCP a b # S 1 2 X 4 3 S aX | bS, (1, 2) X b | aS, (3, 4)
V d
Cc vn phm sau y thuc h LL(k) khng? Nu c k = ? S aSbS | bSaS | , (1, 2, 3) S aS | AB, A bA | b, B aS | b, (1, 2) (3, 4) (5, 6)
Trang 265 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Vn phm LL(k)
Vn phm LL(k) cho php PTCP n nh nu nhn trc k k hiu. Vn phm LL l mt ch quan trng trong vic nghin cu cc trnh bin dch. Mt s NNLT c th c nh ngha bng cc vn phm LL, v nhiu trnh bin dch c vit bng cch s dng cc b PTCP LL. Nhng vn phm LL l khng tng qut gii quyt cc NNPNC. V vy, c mt mi quan tm n cc loi vn phm khc, vn phm n nh tng qut hn. l vn phm LR, ci m cho php PTCP hiu qu, v xy dng cy dn xut t di ln.
Trang 266 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Bi tp
Xy dng vn phm LL(k) cho cc ngn ng sau
L1 = {anbn: n 0} L2 = {w {a , b}*: na(w) = nb(w)} L3 = {w {a , b}*: na(w) = nb(w), na(v) nb(v) vi v l mt tip u ng bt k ca w}
Trang 267 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 269 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
B bm cho NNPNC
nh l 8.1
Cho L l mt NNPNC v hn, tn ti mt s nguyn dng m sao cho bt k chui w no L vi |w| m, w c th c phn hoch thnh w = uvxyz (8.1) vi |vxy| m (8.2) v |vy| 1 (8.3) sao cho uvixyiz L (8.4) i = 0, 1, 2, ... nh l ny c gi l b bm cho NNPNC.
Chng minh
Xt ngn ng L {}. y l NNPNC vn phm c dng chun Chomsky G chp nhn n.
Trang 270 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Chng minh
B
Nu cy dn xut ca mt chui w c sinh ra bi mt vn phm Chomsky m c chiu di mi con ng i t gc ti l nh hn hay bng h th |w| 2h-1. B ny c th chng minh bng qui np da trn h. S S A B T2 T1 Tr li chng minh ca nh l. Gi s G c k bin (|V| = k). Chn m = 2k. Ly w bt k L sao cho |w| m. Xt cy dn xut T ca w. Theo b trn suy ra T phi c t nht mt con ng i t gc ti l c chiu di k+1. a
Trang 271 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
B bm ny c dng chng minh mt ngn ng l khng PNC tng t nh Chng 4.
V d
Chng minh ngn ng L = {anbncn : n 0} l khng PNC.
Chng minh
Gi s L l PNC s nguyn dng m. Chn w = ambmcm L. mt phn hoch ca w thnh b 5 w = uvxyz V |vxy| m nn vxy khng cha ng thi c 3 k hiu a, b, c. Chn i = 2 w2 = uv2xy2z s cha a, b, c vi s lng khng bng nhau w2 L (><).
Trang 274 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Bi tp
Ngn ng no sau y PNC? Chng minh.
L1 = {anbjck: k = jn} L2 = {anbjck: k > n, k > j} L3 = {anbjck: n < j, n k j} L5 = { anbjanbj: n 0, j 0} L4 = {w: na(w) < nb(w) < nc(w)} L6 = { anbjakbl: n + j k + l} L7 = { anbjakbl: n k, j l} L8 = {anbncj: n j}
Trang 275 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l 8.2
Cho L l mt NN tuyn tnh v hn, tn ti mt s nguyn dng m sao cho bt k chui w no L vi |w| m, w c th c phn hoch thnh w = uvxyz vi |uvyz| m (8.7) v |vy| 1 (8.8) sao cho uvixyiz L (8.9) i = 0, 1, 2, ...
Trang 276 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Chng minh
Gi G l vn phm tuyn tnh m khng cha lut sinh-n v v lut sinh-. Gi k = max {cc chiu di v phi} mi bc dn xut chiu di dng cu tng ti a (k-1) k hiu mt chui w dn xut di p bc th |w| 1 + p(k-1) (1). t |V|= n. Chn m = 2 + n(k-1). Xt w bt k L, |w| m. (1) dn xut ca w c (n+1) bc dn xut c (n+1) dng cu m khng phi l cu. Ch mi dng cu c ng mt bin. Xt (n+1) dng cu u tin ca dn xut trn hai bin ca hai dng cu no trng nhau, gi s l bin A. Nh vy dn xut ca w phi c dng: * * * S uAz uvAyz uvxyz, (2) vi u, v, x, y, z T*.
Trang 277 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 278 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Chng minh ngn ng L = {w: na(w) = nb(w)} l khng tuyn tnh.
Chng minh
Gi s L l tuyn tnh. Chn w = amb2mam. T (8.7) u, v, y, z phi cha ton a. Nu bm chui ny ln, chng ta nhn c chui am+kb2mam+l, vi k 1 hoc l 1, m chui ny L (><) L khng phi l ngn ng tuyn tnh.
Trang 279 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Bi tp
Ngn ng no sau y PNC tuyn tnh? Chng minh.
L1 = {anbnambm: n, m 0} L2 = { w: na(w) nb(w)} L3 = {anbj: j n 2j - 1} L4 = L(G) vi G c cho nh sau: ET|E+T TF|T*F F I | (E) Ia|b|c
Trang 280 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Tnh ng ca NNPNC
nh l 8.3
H NNPNC l ng di php hi, kt ni, v bao ng sao.
Chng minh
Gi s G1 = (V1, T1, S1, P1), G2 = (V2, T2, S2, P2) l hai VPPNC. Vn phm G3 = (V1 V2 {S3}, T1 T2, S3, P1 P2 {S3 S1 | S2}) s c L(G3) = L(G1) L(G2). Vn phm G4 = (V1 V2 {S4}, T1 T2, S4, P1 P2 {S4 S1S2}) s c L(G4) = L(G1)L(G2). Vn phm G5 = (V1 {S5}, T1, S5, P1 {S5 S1S5 | }) s c L(G5) = L(G1)*.
Trang 281 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Chng minh
Hai ngn ng {anbncm: n, m 0} v {anbmcm: n, m 0} l phi ng cnh, tuy nhin giao ca chng l ngn ng {anbncn: n 0} li khng phi ng cnh, nn h NNPNC khng ng di php giao. Da vo lut Morgan suy ra h NNPNC cng khng ng di php b. V nu ng i vi php b th da vo tnh ng i vi php hi suy ra tnh ng di php giao theo lut Morgan.
Trang 282 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Chng minh
Cho M1 = (Q, , , 1, q0, z, F1) l npda chp nhn L1 v M2 = (P, , 2, p0, F2) l dfa chp nhn L2. Xy dng mt npda M= (Q, , , , q0, z, F) m phng hot ng song song ca M1 v M2 Q = Q P, q0 = (q0, p0), F = F1 F2, ((qk, pl), x) ((qi, pj), a, b), (qk, x) 1(qi, a, b), v 2(pj, a) = pl,
Trang 283 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Ngn ng L = { w {a, b}*: na(w) = nb(w), na(w) chn} l phi ng cnh.
Trang 284 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh l 8.7
Cho mt VPPNC G = (V, T, S, P), th tn ti mt gii thut quyt nh L(G) c v hn hay khng.
Trang 285 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Chng 9 My Turing
PDA v mt mt no mnh hn rt nhiu FSA. NNPNC-PDA vn cn gii hn. Bn ngoi n l g? FSA v PDA khc nhau bn cht ca b lu tr tm thi. Nu PDA dng hai, ba stack, mt hng (queue), hay mt thit b lu tr khc no th sc mnh s th no? Mi thit b lu tr nh ngha mt loi tmt mi v thng qua n mt h ngn ng mi? tmt c th c m rng n chng no? Kh nng mnh nht c th ca tmt? Nhng gii hn ca vic tnh ton? My Turing ra i v khi nim v s tnh ton c tnh my mc hay gii thut (mechanical or algorithmic computation). My Turing l kh th s, nhng sc bao trm cc qu trnh rt phc tp v lun Turing (Turing thesis) cho rng bt k qu trnh tnh ton no thc hin c bng cc my tnh ngy nay, u c th thc hin c bng my Turing.
Trang 286 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Chng 9 My Turing
9.1 My Turing chun 9.2 Kt hp cc my Turing cho cc cng vic phc tp 9.3 Lun Turing
Trang 287 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
My Turing chun
nh ngha 9.1
Mt my Turing M c nh ngha bng b by M = (Q, , , , q0, , F), Q l tp hu hn cc trng thi ni, l tp hu hn cc k hiu c gi l bng ch ci ng nhp, l tp hu hn cc k hiu c gi l bng ch ci bng, l hm chuyn trng thi, l mt k hiu c bit, Control unit gi l khong trng (blank), q0 Q l trng thi khi u, F Q l tp cc trng thi kt thc. Input, Storage, Output
Trang 288 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 289 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Xt mt my Turing c nh ngha nh sau Q = {q0, q1}, = {a, b}, = {a, b, }, F = , cn c nh ngha (q1, a) = (q0, a, L) (q0, a) = (q1, a, R) (q0, b) = (q1, b, R) (q1, b) = (q0, b, L) (q0, ) = (q1, , R) (q1, ) = (q0, , L) Xt hot ng ca M trong trng hp sau q0 q1 q0 a b a b a b
Cc c im ca my Turing chun
C nhiu m hnh khc nhau ca my Turing. Sau y l mt s c im ca my Turing chun. My Turing c mt bng khng gii hn c hai u, cho php di chuyn mt s bc ty v bn tri v phi. My Turing l n nh trong ng cnh l nh ngha ti a mt chuyn trng thi cho mt cu hnh. Khng c mt bng nhp (input file) ring bit. Chng ta gi thit l vo thi im khi u bng cha mt ni dung c th. Mt vi trong s ny c th c xem l chui nhp (input). Tng t khng c mt bng xut (output file) ring bit. Bt k khi no my dng, mt vi hay tt c ni dung ca bng c th c xem l kt qu xut (output).
Trang 291 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
(1) My dng li mt trng thi khng kt thc. (2) My i vo mt vng lp v tn v khng bao gi dng.
V d
Cho = {a, b}, thit k my Turing chp nhn L = {anbn: n1}. tng thit k l c mt a thay bng mt x, i kim mt b thay bng mt y. C nh vy cho n khi khng cn ng thi a v b thay th dng v chp nhn chui, cc trng hp khc th khng chp nhn. My Turing kt qu nh sau. Q = {q0, q1, q2, q3, qf }, F = {qf}, = {a, b}, = {a, b, x, y, } (q0, a) = {q1, x, R} (q2, y) = {q2, y, L} (q0, y) = {q3, y, R} (q1, a) = {q1, a, R} (q2, a) = {q2, a, L} (q3, y) = {q3, y, R} (q1, y) = {q1, y, R} (q2, x) = {q0, x, R} (q3, ) = {qf, , R} (q1, b) = {q2, y, L}
Trang 295 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
q0aaabbb |_ xq1aabbb |_ xq2aaybb |_ xxaq1ybb |_ xq2xayyb |_ xxxyyq1b |_ xxq2xyyy |_ xxxyyyq3
|_ |_ |_ |_ |_ |_ |_
|_ |_ |_ |_ |_ |_ |_ |_ |_ |_
xaaq1bbb |_ xq0aaybb |_ xxaq2yyb |_ xxxq1yyb |_ xxxyq2yy |_ xxxyq3yy |_ (chp nhn) xaaq1bb xq0aayb xxaq2yy xxxq1yy
|_ |_ |_ |_
xaq2aybb xxq1aybb xxq2ayyb xxxyq1yb xxxq2yyy xxxyyq3y xaq2ayb xxq1ayb xxq2ayy xxxyq1y
q0aaabb |_ xq1aabb |_ xaq1abb |_ xq2aaybq2 |_ xaayb |_ xxaq1yb |_ xxayq1b |_ xq2xayy |_ xxq0ayy |_ xxxyyq1 (dng)
Trang 296 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
My Turing nh l transducer
My Turing khng ch c quan tm nh l mt b chp nhn ngn ng m trong tng qut cn cung cp mt m hnh tru tng n gin ca mt my tnh s. V mc ch chnh ca mt my tnh l bin i input thnh output, n hot ng nh mt transducer. Hy th m hnh ha my tnh bng cch dng my Turing. Input ca mt s tnh ton l tt c cc k hiu khng trng trn bng ti thi im khi u. Ti kt thc ca s tnh ton, output s l bt k ci g c trn bng. Vy c th xem mt my Turing M nh l mt s hin thc ca mt hm f c nh ngha bi w = f(w) _* q w vi q l mt trng thi kt thc no . trong q0w | M f f
Trang 297 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
V d
Chng ta cng phi quyt nh cc s x v y vo lc ban u c t nh th no trn bng v tng ca chng xut hin nh th no lc kt thc s tnh ton. Chng ta gi thit rng w(x) v w(y) c phn cch bng mt k hiu 0, vi u c trn k t tri cng ca w(x). Sau khi tnh ton, w(x + y) s trn bng v c theo sau bi mt k t 0, v u c s c t trn k t tri cng ca kt qu. Chng ta v vy mun thit k mt my Turing thc hin s tnh ton (trong qf l mt trng thi kt thc) q0w(x)0w(y) |_* qf w(x + y)0, Q = {q0, q1, q2, q3, qf,}, F = {qf} (q0, 0) = (q1, 1, R) (q1, 1) = (q1, 1, R) (q0, 1) = (q0, 1, R) (q1, ) = (q2, , L) (q2, 1) = (q3, 0, L) (q3, 1) = (q3, 1, L) (q3, ) = (qf, , R)
Trang 299 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Thit k mt my Turing tnh ton hm sau f(x, y) = x + y nu x y =0 nu x < y Ta xy dng m hnh tnh ton cho n nh sau
Trang 300 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Chng ta s xy dng b so snh C m sau khi thc hin xong c kt qu nh sau: qC,0w(x)0w(y) |_* qA,0w(x)0w(y), nu x y qC,0w(x)0w(y) |_* qE,0w(x)0w(y), nu x < y trong qC,0, qA,0 v qE,0 ln lt l trng thi khi u ca b so snh, b cng v b xa.
Trang 301 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Bi tp
Nu chng ta xy dng c cc b so snh, b cng v b xa th vi m hnh kt hp nh trn chng ta c th xy dng c hm tnh ton c yu cu.
Trang 302 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Lun Turing
My Turing c th c xy dng t cc phn n gin hn, tuy nhin kh cng knh cho d phi thc hin cc php ton n gin. iu ny l v tp lnh ca mt my Turing l qu n gin v hn ch. Vy my Turing c sc mnh n u v nh th no trong s so snh vi sc mnh ca my tnh ngy nay? Mc du vi c ch n gin nhng my Turing c th gii quyt c cc bi ton phc tp m my tnh ngy nay gii quyt c. chng minh iu ny ngi ta chn ra mt my tnh in hnh, sau xy dng mt my Turing thc hin c tt c cc lnh trong tp lnh ca my tnh (tp lnh ca CPU). Tuy lm c iu ny nhng cng cha phi l mt chng minh cht ch chng t my Turing c sc mnh ngang bng vi cc my tnh ngy nay.
Trang 303 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Lun Turing
Bt k ci g c th c thc hin trn bt k my tnh s ang tn ti no u c th c thc hin bi mt my Turing. Khng ai c th a ra mt bi ton, c th gii quyt c bng nhng g m mt cch trc quan chng ta xem l mt gii thut, m i vi n khng tn ti my Turing no gii quyt c. Cc m hnh thay th khc c th c a ra cho s tnh ton c hc nhng khng c ci no trong s chng l mnh hn m hnh my Turing.
Trang 304 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Gii thut
Lun trn ng mt vai tr quan trng trong khoa hc my tnh cng ging nh vai tr ca cc nh lut c bn trong vt l v ha hc. Bng vic chp nhn lun Turing, chng ta sn sng nh ngha chnh xc khi nim gii thut, ci m l kh c bn trong khoa hc my tnh.
nh ngha 9.5
Mt gii thut cho mt hm f: D R l mt my Turing M sao cho cho mt chui nhp d D trn bng nhp, cui cng M dng vi kt qu f(d) R trn bng. Mt cch c th l: q0d |_* qf f(d), qf F, d D. M
Trang 305 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Chng 10 Ph lc
10.1 Mt s nh ngha 10.2 Tng kt cc i tng hc 10.3 Mi quan h gia cc i tng 10.4 S phn cp cc lp ngn ng hnh thc theo Chomsky 10.5 Mt s gii thut quan trng khc
Trang 306 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
My Turing khng n nh
nh ngha 10.6 nh l 10.5
Lp my Turing khng n nh tng ng vi lp my Turing chun. L my Turing m trong hm c nh ngha nh sau: : Q 2Q {L, R}
nh l 10.6
Tp tt c cc my Turing l v hn m c.
Trang 307 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 308 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
V d
Ngn ng L = {anbncn: n 0} l mt ngn ng rng buc tuyn tnh v chng ta c th xy dng c mt lba chp nhn ng n.
Trang 309 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
nh ngha 10.9
Mt ngn ng L trn c gi l qui nu tn ti mt my Turing M chp nhn n v dng i vi w +. Hay ni cch khc mt ngn ng l qui nu v ch nu tn ti mt gii thut thnh vin cho n.
Trang 310 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Vn phm
nh ngha 10
Mt vn phm m mi lut sinh khng cn tha bt k rng buc no tc l c dng trong (V T)*V(V T)*, (V T)* th c gi l vn phm loi 0 hay l vn phm khng hn ch. Mt vn phm m mi lut sinh c dng chiu di v tri nh hn hoc bng chiu di v phi tc l c dng trong (V T)*V(V T)*, (V T)* v || || th c gi l vn phm loi 1 hay vn phm cm ng cnh. Vn phm phi ng cnh cn c gi l vn phm loi 2. Vn phm chnh qui cn c gi l vn phm loi 3.
Trang 311 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Tng kt cc lp i tng
Cc lp ngn ng Chnh qui Regular Tuyn tnh Linear Phi ng cnh n nh Deterministic Context-Free Phi ng cnh Context-Free Cm ng cnh Context-Sensitive qui Recusive Kh lit k qui Recusively Enumerable K hiu LREG LLIN LDCF LCF LCS LREC LRE
Trang 312 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 313 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Trang 314 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin
Du c ngha l theo nh ngha, cn du = c ngha l tng ng, du c ngha l tp cha (khng bng), du c ngha l tp con (khng bng).
Trang 315 L thuyt tmt & NNHT - Khoa Cng Ngh Thng Tin