1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Hướng dẫn giải bài tập toán rời rạc phần 1 – đỗ đức giáo

177 2,2K 3
Tài liệu được quét OCR, nội dung có thể không chính xác

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 177
Dung lượng 4,17 MB

Nội dung

Trang 3

Cơng ty Cổ phần sách Đại học - Dạy nghể — Nhà xuất bản Giáo dục Việt Nam giữ quyền cơng bố tác phẩm

Trang 4

LỜI NĨI ĐẦU

Hiện nay ở nước ta cĩ một số tài liệu viết và dịch về Tốn rời rạc dưới

dạng lý thuyết, cịn tài liệu về Bài tập tốn rời rạc hầu như rất ít (nếu khơng muốn nĩi là chưa cĩ)

Để nàng cao chất lượng giảng dạy và học tập mơn Tốn rời rạc, chúng

tơi biên soạn cuốn "Hướng dẫn giải bài tập Tốn rời rạc", trước mắt chỉ gồm: Ngơn ngữ, Đồ thị và Lơgic Mỗi chương của cuốn sách được mở đâu bằng phân Tĩm tắt lý thuyết, sau đĩ là Bài tập giải mẫu và Bài tập tự giải

Cuốn "Hướng dẫn giải bài tập Tốn rời rạc" giúp người học thơng qua làm bài tập hiểu được lý thuyết thấu đáo hơn, rèn kuyện tư duy khoa học, kỹ năng tính tốn và khả năng vận dụng tốn học vào giải quyết vấn đề, kích

thích niêm say mê học tập và từ đĩ nâng cao kỹ năng thực hành, tư duy sáng

tạo khi học các mơn học cơ sở và chuyên ngành Cơng nghệ thơng tín tiếp theo Cuốn sách này cũng rất bổ ích cho việc ơn thi tuyển sinh sau đại

học ngành Cơng nghệ thơng tin được tổ chức hàng năm ở Đại học Quốc gia

Hà Nội

Tác giả chân thành cảm ơn Hội dâng Khoa học Tự nhiên (Bộ Khoa học và Cơng nghệ) đã tài trợ đê tài NCCB mã số 22 (2004 ~ 2005) của tác giả Cuốn Hướng dẫn giải bài tập Tốn rời rạc là một trong những sản phẩm của đề tài NCCB nĩi trên

Tác giả chân thành cảm ơn Trường Đại học Cơng nghệ - ĐHQG Hà Nội

(cơ quan chủ đề tài) và các bạn đồng nghiệp, đặc biệt là GS.TS Đặng Huy Ruận (Trường ĐHKHTN); PGS.TS Hơ Sỹ Đàm, TS Nguyễn Tuệ, TS: Nguyễn Việt Hà

(Trường ĐHCN); PGS.TS Vũĩ Đức Thi và TSKH Phạm Trần Nhu (Viện

CNTT Quốc gia) đã đọc bản thảo và động viên tác giả trong thời gian biên soạn cuốn sách này

Do thời gian dành cho việc biên soạn khơng nhiêu và lân đâu tiên sách được viết dưới dạng bài tập, nên khĩ tránh khỏi những sai sĩt về hình thức cũng như về nội dung Vì vậy, tắc giả mong nhận được sự gĩp ý của bạn đọc để cuấn sách ngày càng tốt hơn Mọi sự gĩp ý xin gửi về: Cơng ty Cổ phần Sách Dai hoc và Dạy nghề: 25 Hàn Thuyên — Hà Nội

Trang 5

MỤC LỤC

Trang

LỜI NĨI ĐẦU 2 Q1 TH TH 1n 1251212122111 015111115111121 511151155 enxee 3 Phén 1 NGON NGỮ HÌNH THỨC, VĂN PHẠM VÀ ƠTƠMAT

Chương !._ VĂN PHAM VÀ NGƠN NGỮ SINH CỦA VĂN PHẠM 7 A TOm tat l thuy6t 7 B Bai tap gidi MAU cc ccececeseusscesereseteseusrseeveneeneucens 10 C Bài tập tự giải LH HH n0 101 ray 18 Chương 2 NGƠN NGỮ CHÍNH QUY, BIỂU THỨC CHÍNH QUY

VÀ VĂN PHẠM CHÍNH QUY SUY RỘNG 22 A Tĩm tắt lý thuyết or ke 22

B Bài tập giải mẫu c TS HH HH ng ngu 23

C Bài tập tự giải : -cc2Sk11 1213235141821 7131x12 1113 2 32 Chuong 3 OTOMAT HOU HAN TRẠNG THÁI DOAN NHAN

NGON NGU CHÍNH QUY SUY RỘNG 35

A Tom tat ly thuyết ¬" 35 B Bài tập giải mẫu cv sSsisedressserdsssss.c 3Ơ C Bài tập tự giải ¬- ¬—

Chương 4 ƠTƠMAT ĐẨY XUỐNG ĐỐN NHẬN NGƠN NGỮ

PHI NGỮ CẢNH VÀ THUẬT TỐN PHAN TICH CU PHAP 68

A Tĩm tắt lý thuyết ‹ x OB

§1 Van phạm phi ngữ cảnh và cây dẫn xuất đầy đủ

(cây cú pháp) CỦ4 nĨ uc SH HH 68

§2 Văn phạm phi ngữ cảnh chuẩn " _— -

§3 Dạng bién dich BNF (Backus — Naur Form) s - PỢ §4 Ơtơmat đẩy xuống và ngơn ngữ đốn nhận của a n ơ- 72 Đ5, Thut tn phân tích cú pháp trên lớp ngơn ngữ ,

Trang 6

Chương Š, Chương ĩ Chương 7 Chương 8 Chương 9 Phần 2 ĐỒ THỊ VÀ ỨNG DỤNG ĐỒ THỊ —- CÁC DẠNG ĐỒ THỊ VÀ CÁC PHƯƠNG PHÁP BIỂU DIỄN ĐỒ THỊ 2222 2 2n TH g2 182 re eree 95 A Tĩm tắt lý thuyết cung 95 B Bai tap giai mau occ ceccecccccesesecsesesssesscsusreecescseseecsesensers 98 C Bai tap tu giai cc csecsccccssescsescesessessestsarcsesessesseesensn 113 MOT SO THUAT NGU QUAN TRONG VA CAC

TÍNH CHẤT LIÊN QUAN CỦA NĨ TRONG ĐỒ THỊ 122 A Tĩm tắt lý thUyẾT -L Qn HH H HH x1 xey 122

B Bài tập giải mẫu - Là S1 22 triệt 125

€ Bài tập tự giải -c ng HH Hee 142 DUONG (CHU TRINH) EULER VA HAMILTON —

BÀI TỐN TÌM ĐƯỜNG ĐI NGẮN NHẤT ss¿ 150 A _ Tĩm tắt lý thUyếT .sLstnHehie 150

B Bài tập giải mẫu - TS LH HH TH HH nh kh 153 C Bài tập tự giải - Lc ccct ng xxx se 173

ĐỒ THỊ PHẲNG ~ SẮC SỐ CỦA ĐỒ THỊ VÀ

BÀI TỐN TƠ MÀU BẢN ĐỒ Q.22 177 A Tĩm tắt lý thUYẾT - ngư 177 §1 Đồ thị phẳng và các tính chất của nĩ 177 §2 Sắc số của đồ thị và bài tốn tơ màu bản đồ 179 B, Bài tập giải mẫu á TS ngư 480

C Bài tập tỰ giải cuc L2 ng HH Hưng, 199

CAY VA UNG DUNG CUA CAY oo ceccceccccstecccsresestccneenerecses 202 A Tĩm tắt lý thuy€t 0 cece ecsccssssserstessseesatessesetenve e202 §1 Định nghĩa và các ví dụ về cây - coi 202 §2 Một số tính chất của cây .- L cuc nành rrki 205 §3 Các Ứng dụng CỦa Cây Ăn 2n, 206

§4 Các phương pháp duyệt cây ¬ ¬— 208

B Bài tập giải mẫu on n1 errmveei 219

C Bài tập tự giải ải ccccnnn2Henrrrrrenrerree 229

§5 Cây và các bài tốn sắp xếp cà sec 233 A Tĩm tắt lý thUyết - -:- - Ác cà L c2 ni 233 B Bài tập giải mẫu - ác L -Q Q.22 2222 H2 nhe 234

C Bài tập tự giải :.cc cct 22 2111121218112 Ecrerreed 241

§6 Cây khung của đồ thị - ¡Scc ninh ước 242 A._ Tĩm tắt lý thUyết - SH n1 ro 242 B Bài tập giải mẫu - cà tt 16 He, 244

Trang 7

Phần 3 LỖGIC VÀ ỨNG DỤNG

Chương ï0 LƠGIC MỆNH ĐỀ Q0 2 2 nen, 274

A Tĩm tắt lý thuyếT c1 274 §1 Cơng thức và các luật trong lơgic mệnh đề 274 §2 Dạng chuẩn tắc hội và dạng chuẩn tắc tuyển °

2ý Nssv 0107 AT aÄAỒ , 277

§3 Các phương pháp kiểm tra tính hằng đúng, hằng sai

của cơng thỨC cá n1 hư 278

B Bài tập giải mẫu -QLc.cSL nghi 281 C Bài tập tự giải Là cv ch nh nH kh ngyc 317 Chương I1 LƠGIC VỊ TỪ Q.0 H1 2 yêu 324 A Tĩm tắt lý thuyết cu Heo 324

§1 Cơng thức trong lơgïc vị tỪ - nào 220 2x22 xex 324

§2 Dạng chuẩn tắc, dạng chuẩn tắc hội và dạng

chuẩn tắc tuyển của cơng thức .- -sccc se: 326 §3 Các phương pháp kiểm tra tính hằng đúng và

tính hằng sai của cơng thức trong lơgic vị từ cấp 1 327 B Bài tập giải mẫu 5 cán n nhe 333

C Bài tập tự giải ác SH 112112 xxx 365

Phụ lục MỘT SỐ ĐỀ THỊ TUYỂN SINH SAU ĐẠI HỌC (ĐHQGHN)

Máy thị: CƠ BẢN — NGANH CONG NGHE THONG TIN 373

Trang 8

PHẦN 1

NGON N@U HINH THUC, VAN PHAM VA OTOMAT

Chương I

VAN PHAM VA NGON NGU SINH CUA VAN PHAM

A TOM TAT LY THUYET

1 Ngơn ngữ hình thức

e« Giả sử 3 là một tập khơng rỗng và hữu hạn các phần tử Ð, gọi là bảng chữ cái của ngơn ngữ Xâu œ trên bảng chữ cái 3, là một đãy các phần tử của 23; đứng liền nhau: œ = X¡X¿ Xa, Với Xị e 3` Ta quy ước xâu rỗng là xâu khơng cĩ phần tử nào và ký hiệu là 2 Độ dài

của xâu œ ký hiệu là /(@) (/(©) := số ký tự cĩ mặt trong xâu 0)

>* := tất cả các xâu (kể cả xâu rỗng) được tạo thành từ các phần tử của > 3” := X*\ [^.} = tất cả các xâu (khơng kể xâu rỗng) được tạo thành từ các phần tử của >

«Ẳ Mỗi tập L C 3 * gọi là một ngơn ngữ hình thức (cịn gọi là ngơn ngữ) trên bảng chữ cái 3 Bản thân ký hiệu tập rỗng Ø và tập gồm một xâu rỗng {^A} cũng là ngơn ngữ trên bảng chữ cái } Nếu > = {O, 1} thi theo dinh nghia : ** = {^, 0, 1, 00, 01, 10, 11, 000, 001, .} = tập tất cả các xâu được tạo thành từ các phần tử 0, I đứng

liền nhau cĩ độ dài bằng O, 1, 2,

e Từ các ngơn ngữ cho trước, ta nhận được các ngơn ngữ mới trên bảng chữ cái đĩ bằng cách áp dụng các phép tốn hợp (L2), nhân ghép (.) và phép lặp (*) Chẳng hạn, từ ngơn ngữ L., Lạ, Lạ c 3* ta cĩ các ngơn ngữ mới L¡ © Lạ, Ly.L,, L*, L* ¢ 2, trong đĩ:

L, UL, = [@ Í @ø e L¡ hoặc @ e Ly}; L,.L, = {@,0,!@, e L¡ và + e Lạ};

LẺ =LP(2LÍ UL? UL u , ở đây LP = [X),LP=L!41;

Trang 9

e Mot vấn đẻ được đặt ra: Cho L œ ®ˆ* và œ e >*, làm thế nào để biết được œ € L hay » £ L2? Đây là vấn đề biểu diễn ngơn ngữ cĩ liên

quan tới văn phạm

2 Văn phạm và ngơn ngữ sinh của văn phạm Định nghĩa văn phạm

Van pham [a b6 4: G = <3, A, I, R>, 6 day:

— 2 # ©, hit han cdc phan tt (goi 1a céc phần tử kết thúc), 3` là từ điển cơ bản (hay cịn gọi là từ điển kết thúc);

~ A#, hau han các phần tử (gọi là các phần tử khơng kết thúc), Ala từ điển hỗ trợ (hay cịn gọi là từ điển khơng kết thúc) (3¬ A = Ø); ~ le A gọi là ký hiệu ban đầu;

- R={a —>BIœ e V*AV*, B e V*} gọi là tập các quy tắc của văn phạm (V =5} A gọi là từ điển đầy đủ của văn phạm)

Định nghĩa ngơn ngữ sinh của văn phạm

Cho van pham G = <}, A, Ìj R> và œ e 2* Tạ nĩi xâu œ cĩ dẫn xuất

day đủ trong G (ky hiéu D(w)) khi va chi khi D(m) = (w,, @) @,) théa mãn đồng thời các điều kiện sau:

— œ,€ V* (i=0,I, ,n);

— @ạ=l€A¿œ=0K€2*;j

—_ 0@.¡ l=@; (= I, 2, 3, , n), cĩ nghĩa là œ, nhận được từ œ,_¡ bằng cách áp dụng một quy tắc nào đĩ trong R

Trong trường hợp này, ta nĩi xâu œ được văn phạm Ư sinh ra, hay xâu

œ cĩ đẫn xuất đầy đủ trong G và ký hiệu là,I |—— œ hay I |—œ L(G) la ky hiéu tap ngơn ngữ sinh của G và được định nghĩa:

L(G) := {œ | @ e 3 * và ] |— ø) 3 Phân loại văn phạm của Chomsky

Trong phân loại văn phạm, Chomsky gọi văn phạm định nghĩa như trên

là van phạm cấu trúc câu (cịn gọi là văn phạm ngữ cấu)

Trang 10

Chi y /: Nếu trong định nghĩa VPCQ G = <}, A, L R>, với R = |A —>aB, A->al1A,BeA,ae 3`) mà ta thêm vào R quy tac A > A, tức là R cĩ dạng R = {A -> aB, A —> a, A —>ÀLA,Be A,ac 3, ^.là xâu rồng} thì văn phạm Ø được gọi là VPCQ suy rộng Như vậy, VPCQ cũng là VPCQ suy rộng và ngơn ngữ của chúng chỉ sai khác nhau một xâu rỗng

Chú ý 2:

se _ Văn phạm được phân loại cĩ tên là gì thì ngơn ngữ sinh của nĩ cũng cĩ tên như vậy

se Ngơn ngữ văn phạm chính quy viết tắt là NNCQ; ngơn ngữ văn

phạm phi ngữ cảnh viết tắt là NNPNC; ngơn ngữ văn phạm cảm ngữ canh viết tất là NNCNC; ngơn ngữ văn phạm cấu trúc câu viết tắt là

NNCTC Ta cĩ bao hàm thức sau:

NNCQ c NNPNC c NNCNC c NNCTC 4 Một sơ thuật tốn thường gặp trên lớp các văn phạm

đa) Thuát tốn tương đương

Hai văn phạm G và G' tương đương (ký hiệu G = G’') khi và chỉ khí L(G) = L(G’)

Baitodn: inputG =<, A, 1, R> output G' = <d, A’, 1, R> =G Bước I: A':=A(2 với S ={AalaeПS],

Bước 2: R':= RUR, với R= tập tất cả các quy tắc nhận được từ các quy tắc của R, bằng cách thay ký tự a e 3, bởi ký tự đối ngẫu a < ®ĐvàR ={ã >alaeŸ)

Với G' xây dựng như trên thì G' = G

b) Thuật tốn hợp các ngơn ngữ sinh của văn phạm

Trang 11

c) Thuật tốn nhân ghép ngơn ngữ văn phạm

Bai todn: input G; = <j, A, I, R> (1= 1,2, ,n); output G = <b, A, I, R> cĩ LG) = [ [L(G,) =L(G,).L(G,) LG,) i=} Bước Ì: >={|)J>- 121 Bude 2: A= {I}ULJA, Bước3: R=(I->hl; I,] 2 JR, Với G xây dựng như trên thì L(G) = []L(G,) = e,@s œạ [œ e L(G,), ¡ = I, , n] ¡=Í ‘ Chủ ý:

« Trong mục l ta đã dùng phép tốn hợp (t2), phép nhân ghép (.) và phép lặp (*) để tạo ra ngơn ngữ mới từ các ngơn ngữ đã cho

se Trong mục 4 ta chỉ cần hai thuật tốn hợp và nhân ghép các văn phạm cũng tạo ra ngơn ngữ mới, vì phép lặp là sự kết hợp hai phép

tốn hợp và nhân ghép mà thơi

B BÀI TẬP GIẢI MẪU

1 Cho văn phạm G =<2.,A, I, R> với tập quy ức

3 5

= [TA I> Aja, Lợb, aA, + yay, aA, > Aya),

a A, 5 Aya, aA, > Azã¿, bÀ¡ 4 a,b, bA, + ab}

e Viết đầy đủ G theo định nghĩa

« G là văn phạm loại gì theo phân loại của Chomsky? e_ Tìm ngơn ngữ sinh của G

Giải

e D = (aj, a, b}: A= {I As, Ay}: Le A 1a ky hiéu ban dau, con tập quy tắc R cho như trên

« G là VPCTC (khơng phải là VPPNC và VPCQ)

Trang 12

và Với aia; = œ thì @bœ = a¡a;baya; cĩ đẫn xuất đầy đủ D(a;azbata¿) =

(I, pfA5a5, Aja, Aa, 3bA sa) A a), sai bài Á2ã›, sa¡DA2ã¡a+, gaya;ba¡ a2)

2 Cho VPPNC G = <3, A, I, R>, với tập quy tắc

I 2 a 4 $ 6 7 Đ

R = {I ala, I.blb, I—>clc, F—> đld, I—aa, ï— bb, I> cc, I> dd}

Tìm ngơn ngữ sinh của G

Gidi L(G) = {© | 6 {a, b, c, đ}”}, ở đây @ là ảnh gương của œ Giả SỬ (@ = X,X¿ xạ, khi đĩ ảnh gương của w la @ = X, X9X, Ta chi ra xau @@ = XIXa XaXạ XaX, cĩ dẫn xuất đầy đủ trong G:

D(@ @) = (1, XTX 4, ces Kp Xe Kye pl pep eX gX ys XpRqee Kye XpXpNp—peeXQXy = OO)

1.2.3.4 12.34 5.6.7.8

3 Cho VPPNC G = <3, A, ï, R>, với tập quy tắc

R = {I > ala, I > bib, I > cle, I > dId, ï —x} Tìm NNPNC của văn phạm đã cho

Gidi L(G) = {ox |@ € {a, b,c, d}*, @ là ảnh gương của œ} Chứng minh dan xuat day di cla wx @ tương tự như bài tập 2 ở trên

4 Cho VPCQ G = <¥,, A, 1, R>, vdi:

Do = {ay, a, ag}s A= (E, Ay, Ad, «., Ags} va

R= (Il ajAj, Ay > agg, «., Ageg > agp Apps An) => a, 12 2} Tìm ngơn ngữ sinh của văn phạm trên

Giải L(G) = {0 = ayáy an} Thật vậy, dân xuất đầy đủ của xâu oœ là; D(w) £ (Í, ái Ai, arpa2Á2, ‹ , 842 An—L Âm |s 3,82 ân—jân = 0) 5 Cho VPPNC G với tập quy tắc

R = {Il > al, 1—> aB, B> bB, B> bbD, D> cD, D> ccc}

Tìm ngơn ngữ sinh của nĩ

Gidi, L(G) = {a"b™c* in > 1, m >2, k > 3) Dẫn xuất đây đủ của a"b"cÈ là:

D(a"b"c*) = (1, al, a’l, a"B, a"bB, , a"b™ °B, a"b™D, a®bcD , a’b™ck 3D, abc), 6 Xay dung VPCNC G = <, A, I, R> sao cho: L(G) = {n’ in =1, 2, .}; D={1};A4= (LA, B.C, D,E, Fi le Ala ky tu ban dau; R={!l—+ABBDF} (1) BD—-DCB (2) BC->CB_ (3) D->AAE (4) EC>AE (5) EBODOBE (6) —EF>BBDF (7) DEF—>›i (8) B—I (9)

A>] q0) II (11)}

là văn phạm sinh ra ngơn ngữ L(G) = {n’In=1,2, }

Trang 13

Giai

«e n=l,I”=1 =l: dẫn xuất của 1? là D(1?) = (1, ¡¡L= 1= 1?)

e_n=2,2?=4=lIl: D(2”) = (I, ,ABBDF, ;ABB,, ,;IBBl, gIIBI, „II = lÝ = 22)

© n=3,3=9=?:

D(3*) = (1, ,ABBDF, ,ABDCBF, ,ADCBCBF, ,AAECBCBF,

yAAECCBBF, ;AAAECBBF, ;AAAAEBBF, ,A“BEBF,

oA‘BBEF, A*BBBBDF, ,A‘B‘I, ;lB'I, of 141 = 1°)

Một cách tổng quát, với œ = L =!"` ta cĩ dẫn xuất đầy đủ là

D(n2) = (I, ABBDF., Am DRC YR AO Brerd _ Am P@DI,

or? J2tn~0[—|tn=D)+2a-iwl _ I")

7 Cho ngơn ngữ L = {ab(xyz)" ba, ab™a | n > 0, m > 0} trên bảng chữ cái 3, = [a, b, x, y, z} Xây dựng VPCQ G = <X, A, 1, R> sao cho L(G) = L

Giải 3, = (a, b, x, y, z); A = [L, AI, A›, A+ AB];

R= {]— aA,, Ay > DA;, Ay —> XÂ+, À¿ > yAy, Ay > ZA, A, > bAs, A; — a, 1— aB, B—> bB, B — a}

Ta chỉ ra với R như trén thi L(G) = {ab(xyz)"ba, aba | n, m = 0} với dân xuất đầy đủ của xâu œ; = ab(xyz)"ba va x4u @, = ab™a 1a:

Diw@,) Z (ý AAi, abA¿, abXA¿, abxyA„,, abxyzAa, ab(xyz)"A,, ab(xyz)"bAg, ab(xyz)"ba) va D(w,) = (1, aB, abB, ., ab™B, ab™a)

8 Cho ngơn ngữ L = {0"1" 1 n > 0} trén bang Y = {0, 1} Xây dựng VPPNC G = <>, A, I, R> sao cho L(G) = {0"1" | n =O}

| 2

Gidi R = {1 OM, 1 > XỊ Rõ ràng LG) = {0°1°1n >0}, vì với n = O thì 0 = À Dân xuất đầy đủ của w = A 1a D(A) = (1, A) VGi n > 0 thì dẫn xuất đầy đủ của xâu œ = 0”1” = 99, 00 011 1 Lda

Dior") =(I, , OM, , 07117, ., ¡ 0H", ¿ 0010),

9 Cho L = {o+ 1 € {0,1}*, @ là ảnh gương của xâu a Xay dung VPPNC day du theo dinh nghia G = <>, A, I, R> sao cho L(G) =

Giat.Y = {0, 1, +}: A= {I}; R= (1>010, ] “1M, I> +}

Ta chi ra L(G) = {@ + ® |w © {0,1}* va @ là ảnh gương cia xau w}

Trường hợp œ = À thì xâu œ + œ = + Dẫn xuất đầy đủ của xâu này là D(+) = (1, +) Cho @ = X:X¿ X„ Và @ = X X2Xy, khi đĩ xâu @ + 6 cĩ dẫn xuất đây đủ là D(œ + @) = (1, ¡2XIÏXI, ¡2XIX2X2XI, J2XIX.» XaÍXạ X2Xp, ‡0 + @), ở đây x¡ € (0, 1], néu x; = 0 thì chọn quy tắc 1, cịn x; = 1 thì chọn quy tắc 2 trong tập quy tắc R ở trên

Trang 14

10 Cho ngon ngit L = {@@, a2", b™c lw © {a, b, c}*, ơ là ảnh gương cha o, n 2 l, m > O} trén bang Y = {a, b, c} Xây dựng VPPNC G=<%, A, I, R> đầy đủ theo định nghĩa sao cho L(G) = L

Giải Y= {a,b,c}, A= {LE b, 14} va

1 2 3 4 3 6 7

R= ti, [—I,, I-> I;, [,—>ala, Il,—>bL,b, l, —>clc, l—> A,

H 9 Ww 11

1, —>al,a, _—>aa, I,—>bl¿, l; 2e}

Với R như vậy thi L(G) = L đã cho Thật vậy, trước hết chỉ ra dẫn xuất đầy đủ của xâu œ@ với œ € {a,b,c}*

~ Trường hợp œ = 4 thi @@ =A va dan xuat day dé cua A 1a

D(A) = (1 I), 7À)

— Trường hợp œ # À Và œ = XỊX¿ Xa (X¡ € |a, b, c}) thì dẫn xuất đầy đủ của œ@ = X,X¿ XaXạ XaX; là

Do) = (11 2 seX( Xi s 446 X1 « Xe DX-.-X2XI, 7XIXuXnc-Xị = 6), Dẫn xuất đầy đủ của xâu a” = aa a (2n lần a) là

D(a?”) = (1, yl, gala, ga” 'Ia” |, sa Dẫn xuất đầy đủ của xâu œ = b”c là

D(b”c) = (dL, ya igdl,, ioÐ' la, IoÐ 1, IiB 7c)

11 Cho ngơn ngữ L = {a"b"c™ | n > 1, m> 1} trén bang > = {a, b, c} Xây dựng VPPNC G = <>, A, I, R> sao cho L(G) = (a"b"c™ Jn, m 2 1}

Gidi G= <>, A, 1, R>, với

L= fa, b,c}, R= {I > AB, A->aAb, A->ab, B->cB, Bc}

Với R như trén thi L(G) = {a"b"c™ | n, m > 1} vi dẫn xuất đầy đủ của

xau a"b"c™ 1a D(a"b"c™) =(I, ,AB, »a ADB, 3a7Ab°B, ., sa” "Ab* 1B, ;a"b"B,

sa"b"cB, ., gab" |B, sa"b"c”) ,

12 Cho ngơn ngữ L = {w@ca@o'w' lw e {a,b}*, @ là ảnh gương của œ và @' là ảnh gương của œ' trên bảng 3 = {0, 1}} Xay dung VPPNC

Trang 15

~ Trường hợp xâu œ = œ' = À thì œc ơœ`@0' = c cĩ dẫn xuất đầy đủ là

Đ(c) = (L, , AB, 4cB, 7c)

— Trường hợp œ # A va @ = Xx;X> xX, (x, € {a,b}) cdn wo’ = A thì xâu @C Ơ @' @` = XIX2 XaCXa X2X¡ cố dẫn kuất đầy đủ là

D(ac @) = (1, AB, 23XIÁXk, , 23XỊ X2 XuÂXu X2X., ¿00C Ơ ) - Trường hợp œ = À, œ' # À với œ = yYs y„ thì xâu œcœ'@' = CYIY2-.-YmYm -Y2Y) (yị 6 (0,11) cĩ đẫn xuất đầy đủ là

D(cœ'@') =1, ,AB, ;eB, ;scy¡By( s6CY(- YmnBYm -Ÿs 7CYL YmŸm -Ÿi =co'o 13 Cho ngơn ngữ L, = {(11)”0 In > 0} trên bang > = {0,1} Xay dung VPPNC G = <>, A, I, R> sao cho L(G) = L Gidi VPPNC G=<y¥,A,!I,R>c6R= (II L1, 1->0} thỏa mãn L(G) = {(11)°0!n >0 Thật vậy: — Trường hợp n = 0 xâu (11)”0 = À0 = 0, đẫn xuất đầy đủ của 0 là D(0) = (L, 20): — Trường hợp n z.0, dẫn xuất đầy đủ của (11)”0 là D((11770) = Œ, ,111, , (1171, 2(1120)

14 Cho ngơn ngữ L = (0°1°2°In > 0} trên bang > = {0, 1, 2} Xây dimg VPCTC G = <&, A, I, R> sao cho L(G) = (0°1°2°In >0)

Giải VPCTC G = <5, A, I, R> cổ tập quy tắc |

R= l1] 0IAB, I > A, BA AB, 0A > 01, LA > 11, IB 12,2B-> 22),

với 3` = {0, 1,2}, A= {I, A, B} sinh ra ap ngén ngit L(G) = (071"2" In > 0}

Chứng minh dành cho bạn doc như là một bài tập tự luyện

1Š Cho ngơn ngữ L = ta b?'cd?m*iccd2m+lc' 1 n >0, m >0,/>2] trên

bảng 3- = {a, b, c, d} Xây dựng VPPNC G = <2, A, I, R> sao cho L(G) = L

Giải

1 2 3 4 5 6 7

R= (I AcBC,A >aaAbb, AA, B—>ddBdd, B—>dccd, C—>cC, C—>cc|

Để chứng minh L(G) = L„ ta chỉ ra dẫn xuất đầy đủ của xâu

dì = a2nb2nca2m*leca7m+1 cÌ

là Dio) = (I ,AcBC, ;aaAbbcBC, ;(aa)"A(bb}'cBC, ;a”b?cBC,

ya"b™cdd BddC , 4a2"b""c(dd)™ B(dd)"C, „aPbcd2m*tccj?C,

, 2nh2nJ2m†+1ssa42m+l 1

6 6, =)

Trang 16

16 Cho hai văn phạm G, = <2, Á¿, f,, Ry> va Gy = <2), Ay, lạ, R¿>, với

{ 2

R, = {I, al, I, >a}

va R, = (I, 3xA,, A, SxA,, A, yA, A, AYA, Ay) tương ứng

a) Viét day du G,, G; theo định nghĩa và tìm L(G,), L(G›)

b) Xây dựng Œ, = <Ư, Ai, lụ Rị> =G, = <3 Á,, ly R> Œ= 1,2)

c) Xây dung G = <d, A, 1, R> sao cho: e L(G) =L(IG,))U L(G,);

« L(G) =L(G¡).L(G›) U L(G,).L(G,) U L(G,) U L(G)

Gidi a) G, = <2), Ay, 1, Ry> cd XY, = fa}, A, = (1,}, 1, © A, la ky ty

ban đầu, cịn R; = {], sal, I, “Sal; Gy = <2), Ay, 1, Ry> cĩ 3; = {x, y}, Ay = (Ih, Ay, Ap} I, € A, 1a ky tu ban dau, con

Rạ= H; SxA,, A, + KA, A, SyA,, A, SyA,, A, yl Ta cĩ L(G,) = (a”In > 1} vì dẫn xuất đầy đủ của xâu (ị = a” là

D(a") = (Ij yal, a21, , ¡at A, ga")

và ta cũng cĩ L(G›) = {x™y 1 m 2 1, k 2 2} vi din xuat ddy da cha xâu o = xyy (m= 1, k = 2) là D;(xyy) = (;, yXÁ¡, ¿XYẤ¿, 7xyy), con dan xuất day da cha x™y* 1a

Day(x TY") = (Lyn ;XÁI, XÃ, sa 2X Ags SX YA, GX NV A, ., KK Ala, OKT)

b) G = <>) Ay, I, R'> = G, c6 dang Y, = {a}, A) =A,U 5, ={l, 5},

R', = R,UR, ={I, > @,, 1, > 4, 7a} Dé dang kiểm tra lại:

L(G’) = {a"In 21} hay G', =G)

G', = <2), A’, 1h, R'y> © Gy = <2, Ay, L, R,> c6 2, = |X, y];

A'y = Ay U &, = (1.4, Aas y} VAR) = R, UR,

= {I, >xA,, A, > XA,, A, > YA,, A, > YA,, A, OY XPKY YI

= {I, 9 XA,, A, >¥A,, A, > YA, A, OYA, A, ¬> ÿ, X—> x, ÿ — ÿÌ

Dễ đàng nhận thay L(G',) = L(G,) = {x"y* 1m 2 1,k > 2}, hay G2 ~ G¿ c) eL(G) = L(G,) 2 L(G›) cĩ văn phạm G = <3, A, I, R> với:

3.:=3¡32 = [a, X VÌ:

Trang 17

& 9 1 2

R:=(I—I,,1— } Ĩ Rị R¿= (II, E—1,, l—al,, Loa, L xA,, A, ->XÁ„A, yA, A, SyAy, A, yl

Với G như vậy ta chỉ ra

L(G) = L(G.) U L(G,) = {a", x"y* In > 1, m>1,k>2}

Thật vậy, dẫn xuất đầy đủ của a" là D(a”) = (I, g I), aly, ¡ aN, 2a") và của x"y" là D@XfV) = ((, gĨy, ;XA¿, „XÃ, g XA,, ;XVA2, QXY Á¿, oxy Ad, Ky)

« L(G) = L(G,).L(G,) U L(G,).L(G,) U L(G,) U L(G,) c6 văn phạm G=<Š, A, I,R> với Ð = {a,x, y}, A= {I Ty, 1b Ay, Ay} và

R=(I>1],1> bl, 1>h,1 3b) RVR, =U], Io, Il,

Il, I, yal, I, “ya, I, xA,, A, “>XÁ,, A, yA, A, “>ÿA, A, yl Với G như vậy ta cĩ

L(G) = L(G,).L(G) U L(G,) L(G,) UL(G,) U LG;)

= fa™x™yk, x™yka" a™ x™ykK n> 1,m2>1,k 22}

Thật vậy, ta cĩ các dẫn xuất đầy đủ đối với từng xâu trong ngơn ngữ

L(G) la:

Deaxy*) = (1, ghyly, valJs, , ¡a" “H1, ;a", ;axA¡, ;a"XÊA, , garK A, sa XY As, sanx”V2A., pax y As, aPxVky,

Dex™yka") = (I, ololys gXAjTy) gX2A ploseens gX AGI), sX™YAg]), gX™y7Agl),

vay XY Ag, gx VN, L x VaẴ,, ., xX™yKa™ |T,, ox™yKa®) 17 Cho cdc van pham G, = <j, A,, I,, R;> (i = 1, 2, 3) với:

I 2

R, = {I, ~al,b, 1, ab};

R, = {L, Sala, L “>bLb, IL, “saa, I, ->bb|;

7 R ọ 10 tt 12

R,= (Il, > ABDE, A>aA, A-+a, B> bbB, Bb, D->aD, D->a, E->bbE, E->bb] a) Viết đầy đủ G, theo định nghĩa và tìm L(,) Gi = 1, 2, 3)

b) Xây dựng G = <Ư, A, I, R> sao cho L(G) = L(G,) U L(G,) U L(G))

c) Xây dung G= <), A, I, R> sao cho L(G) = L(G,).L(G,).L(G3) d) Xay dung G =<, A, I, R> sao cho

Trang 18

e) Xây dựng Œ' = <3 A’, I, R'> » G= <A, I, R>, 6 day G được xây

dung trong cau d

Giai

a) 2, = {a,b}, Ay = {1,} va R, cho dtrén tao nén G, =<), Aj, 1, Ry>:

22 = Ía, bỊ, A; = {lạ} và R¿ cho ở trên tạo nên G; = <Ư›, Ay, lạ, R;>;

22 = (a, bị, A, = (l;, A, B, C, E} và R¿ cho ở trên tạo nên G; = <2, A;, 1,, Ry>

Ta cé: L(G,) = {a"b" In 1};

L(G.) = {@6 |@ € {a,b}*, & 1A anh guong chaw)}; |

L(G;) = {a°(bb)™ba*(bb)! In > 1, m20,k21,/2 1}

Đối với L(G,) và L(G›) bạn đọc tự chứng mỉnh, ở đây chỉ chứng minh

đối với L(G;) Dẫn xuất đầy đủ của xâu œ = ababb (ứng với n = 1, m = 0,

k = 1,/ = 1) là D,(ababb) = (1y, ;ABDE, gaBDE, ,;abDE, ;;abaE, ;sababb)

Trường hợp tổng quát, dẫn xuất đầy đủ của ‹o = a"(bb)"ba“(bb) là

Dio) = (Ij, 7ABDE, ,aABDE, ., a” 'ABDE, 9a"BDE, ,9a"bbBDE, .,

(92"(bb)"BDE, ,,a°(bb)bDE, ,,°(bb)™baDE, ., ,9a"(bb) ba” 'DE,

13a(bb)™ba“E, —,ga(bb)™ba*(bb)E, , _4a"'(bb)™ba“(bb)/ "E, 15a"(bb)™ba“(bb)’) b) G=<z, A, I, R> ma L(G) = L(G,) U L(G,) U LG) c6 tập quy tắc R= (I> ]1,,1>L,1341,} UR, OR, UR; (ban doc tu chitmg minh) c)G = <2, A, Í, R> mà L(G) = L(G,).L(G;).L(G:) cĩ tập quy tắc R.= {1— Iblạ} x2 Rị C2 R¿ 2 R¿ (bạn đọc tự chứng minh) d) G =<2., A,L R> mà L(G) = L(G,).L(G,).L(G,) U L(G,).L(G,).L(G3) U L(G,).L(G) U LG3) cĩ tập quy tac R= {I> 1,Lb, I> 11,13, I> LL, I> lạ} U R,UR, WU Ra (bạn đọc tự chứng minh)

e) G =<Š, A', I, R> G = <Ÿ, Á, I, R> (xây dựng trong đ) cĩ

R'=RUR = (I >]b],1 911,11 o1),1 5b) U RU R, UR, = {I> I, LL, 13 Lk, — Hạ, E—> lạ, l > al,b, 1, - ab,

1, >al,a, I, > bl, 671, aa, I, > bb, I, > ABDE, A — đA, A > ä,B-—> bbB, B—>b, D->aD,D—a,

E> bbE, E ~> bb, a=>a,b~>b }

(bạn đọc tự chứng minh sự tương đương giữa G và G) 2- HDGBTTRR

Trang 19

Từ bài tập !8 đến 25 dưới đây, việc chứng mình dành cho bạn đọc

18 Cho Ð_ = {0,1} Xay dung VPCQ suy rong G =<, A, J, R> sao cho

L(G) = 3 * và L(G) = }”

Giải 3` = {O,1}, A= {I}, R= {I 9 OLI> 11,1 3 A} déi vai LG) = >*% Y= {0,1}, A= {I}, R= (15 OL] > 11,15 0,15 1} ddi voi L(G) = ©

19 Xây dung VPCQ G = <>, A, I, R> sao cho L(G) = {@ L@ e {0,1}

va I(@) = 2n + 1,n 20} (/(w) 1a độ dài của xâu () Giải

3;= {0,1},A= {1I,A),R= [I— 0A,T— LA, A —>01, A —> H0, — 1}

20 Xây dựng VPCQ suy rộng G = <Ư', A, I, R> sao cho L(G) = [@ 1ø e {0,1} va (@) = 2n, n> 0)

Giải

3= (0.1,A=ILAI,R= II 0A, I— 1A, A > 01, A > 1,1 A}

21 Xây dựng VPCQ G = <Ư, A I, R> sao cho L(G) = [I, 2, , n, } Giải Với mỗi n ta ký hiệu n := |L †=P

D={1},A={,R={lolhi ol}

22 Xay dung VPPNC G =<), A, I, R> sao cho L(G) = {a""'b™** 1n > 0} Gidi © = {a,b}, A= {I}, R= {I> alb, I > ab’

23 Cho L = {a” b"a™ | n, m 2 1} Xay dung VPPNC G = <3, A, I, R> sao cho L(G) = {a"b"a™ In, m > I}

Giai

X= {a,b}, A= {I, A, B}, R = {I— AB, A > aAb, A > ab, B> aB, Ba}

24 Cho L = {wala e {0,1}* & Io(w) = 1,(@)}, & day 1,(@) = 1,(@) cd

nghia 14 x4u 0) c6 s6 s6 0 bang s6 s6 1 Xay dung VPPNC G = <Q, A, I, R> sao cho L(G) = L 26 18 Gidi > = {0,1}, A= {I}, R={l>5 IL 15 00,15 110,15 01,1 10} 25 Xay dung VPCNC G = <5, A, I, R> sao cho L(G) = {a"b"c" In > 1} Giải -

> = {a,b,c}, A= {I, A}, R= {f— alAc, I > abc, cA > Ac, bA -> bb}

C BAI TAP TU GIAI

Cho VPCTC G = <3, A, |, R> với

R = {I > BCI, BCB > D, BC > bc, DC a, cl >c, 1 a}

Chỉ ra dẫn xuất đầy dt cia xau (be)"a™ (n 2 1, m > 2) trong van

Trang 20

21 28 29

Tìm ngơn ngữ sinh của VPCQ G = <Š, A, I, R> cĩ

3= lãi, tạ aa]}, A = [H, R= {Ï—> a¡, Ï— a), ., 1 a,} Tìm ngơn ngữ sinh của VPCQ G = <5, A, I, R> cĩ

3= (ãy, a2, an}, A= (HH, R= {I — ajI >> a,li= 1,2, ,n}

Tìm ngĩn ngữ sinh của VPCQ suy rộng G = <2, A, Lj R> cĩ

Y= {ay.ay, a} A= (I, R= (loalIoalici,2, ,n}

30 Tìm ngơn ngữ sinh của VPCQ suy rong G = <>), A, I, R>c6 31 32 39 40 4I

>= (lá, aạ, aạ}, A = [L A],R= (I—> ajÁ, A~>ajLÍ—> li = 1,2, , nÌ.,

Tìm ngơn ngữ sinh của VPCQ suy rộng G = <>, A, I, R> cd

2;:= la, b}, A= (IL A),R= {E— al, I— aA, A bA, A —> bị

Ta ký hiệu số tự nhiên n e Đ = {1,2, 3, } bởi n := | |Ì | Cho văn

phạm G = <>, A, I, R> với tập quy tắc R = {I —> II1, F — | } Viết đây

đủ G theo định nghĩa và tìm L(G)

._ Cho ngơn ngữ L = (a?tb*t2e”" |n_m > 1} trên Ð = {a, b, c} Xây dựng

n+] pt?

van pham G sao cho L(G) = {a cÐIn,m> 1

.- Cho ngơn ngữ L = {a"b"a™ | n 2 1,m > 4} trên 3 = {a, b| Xây dựng văn phạm G sao cho L(G) = {a"b"a™ (n= 1, m2> 4}

._ Cho ngơn ngữ L = {a?"b"a" | m, n > 1} trên Ð = {a, b} Xây đựng văn

phạm G sao cho L(G) = {a”"b°a" | n, m > 1]

Cho ngơn ngữ L = (a”b"In > 1} trên 3) = {a, b} Xây dựng văn phạm

G sao cho L(G) = {a*"b"1n 2 1}

Cho văn pham G = <), A, J, R> với R = {! > ABC, AB > iADj, Dij > jDi DiC > BIC, iB > Bi, AB 4, C> Ali,je {a, b}}, Van phạm trên là văn phạm gi va tim L(G)

Cho văn phạm G với R = {I > ABC, A > aAa, A > bAb, Ac,

B > OBO, B > IBI, B > 2B2, B > 00, B > 11, B > 22, C > xyC, C>z,C >A} Tim L(G)

Cho văn pham G véi R = {f — ABCD, A > aAa, A > a, B > bBb, B > aBa, B —› đBd, B — aa, B > bb, B > dd, C > 0C0, C > ICl, C -> 2C2, CC > 303, C > A} Tim L(G)

Cho ngơn ngữ L= {a”cb2d2lccd? In > 1m >0} trên Ð = {a, b, c, d] Xây dựng văn phạm G sao L(O) = L

Cho ngơn ngữ Lị = {a”“b°n> 1J, Ly = {øơ !œ e {0, 1}*, ơ là ảnh gương của œ], Lạ = {a"b"a |m > 1,k> 1}

Trang 21

b) Xây dựng văn phạm G = <>, A, I, R> sao cho

L(G) = L(G,).L(G¿).L(G;) vở L(G).L(G2).L(G,) © L(G,) Q2 L(G;) tý LG)

42

43

45

c) Xây dựng G'` = <È,, A’, I, R'> » G (trong cau b)

Cho VPPNC G = <d, A, I, R> véi R = {I > ABD, A > aA, A > bB, B—> cB, B-> cD, D> dD, D> d} Tim LG)

Cho văn phạm G = <5, A, I, R> với R = {I > aSBC, 1» aBC, CB BC, aB — ab, bD — bb, bC -> bc, cC — cc| Chỉ ra rằng

L(G) = {a"b"c" n> 1}

Xây dựng VPPNC sinh ra ngơn ngữ L = (abfa”1i> 1Ị Xây dựng văn phạm G = <2, A, I, R> sao cho:

a) L(G)= tập tất cả các xâu nhị phân chứa một số chấn các số Ơ và khơng chứa số I nào

b) L(G)= tập tất cả các xâu nhị phân tạo bởi một số số I và tiếp theo

là một số lẻ các số 0

c) L(G)= tập tất cả các xâu nhị phân chứa một số chắn các số Ư và

một số chắn các số 1

d) L(G) = tập tất cả các xâu chứa số các số 0 và số các số 1 bằng nhau e) L(G)= tập tất cả các xâu chứa số các số khơng và số các số I khơng bằng nhau, 46 Cho ee tuyến tính trái G = <3, A, Í, R> với 47 48 20 ={A—aB,A—alA,BeA, ae 2) (G cịn gọi là VPCQ trái) an tạng với

= (A — Ba, A >alA,Be A,a e5.) (G cịn gọi là VPCQ phải)

ching minh ring L(G’) = L(G) là ảnh gương cia ngén ngit L(G) Cho Hà tuyến tính trái G = <Š,, A, IL, R> với

= {[A — œB, A >=œ|lA,BeA,œ e5}

Xây dựng VPCQ G' sao cho L(G') = L(G) Nĩi cách khác, ngơn ngữ

L(G) 1a NNCQ

Cho các văn phạm sau đây:

a) G, với R¡ = [I— 0000000000A, A —= 0A, A>^];

b) G, v6i R, = (IAI, I> ABI, >A, ABBA, BA->AB, A— 0,B— 1]; -

c) G, voi R; = {I-+ABI, ABBA, BA > AB, A> 0,B> 1,1 A};

d) G, véi R, = (IAB, AB — BA, BA > AB, A> 0,B> 1,1 >C, ID, C>ÁC, C A, D ¬ BD, D ¬ BỊ

Trang 22

49 Cho văn phạm sinh G = <5, A, L, R> với:

R= la—> Bla e V*AV*, B e V*}; L(G) = {aloe Y* val —o} Nếu trong văn phạm trên mà ta định nghĩa

L(G) = {œ | ị e $* và œ L—T]

thì G gọi là văn phạm đốn nhận

Nhu vậy, văn phạm sinh hay văn phạm đốn nhận đều cĩ chung 2, A, l, chỉ khác nhau ở chỗ nếu œ —> B là quy tắc thuộc văn phạm này thi B > œ là quy tắc thuộc văn phạm kia Hai văn phạm như vậy được gọi là đối ngẫu nhau

a) Cho các văn phạm sinh

R, = {Ialb, >A} va R, = {I—>^, 011, ol)

Tìm văn phạm đốn nhận đối ngẫu với hai văn phạm trên

b) Chứng minh rằng, nếu G = <Š, A, I, R> là một văn phạm (sinh hay đốn nhận) và G' = <5, A, L, R> là văn phạm đối ngẫu với nĩ thì

L(G) = L(G’)

Trang 23

Chương 2

NGƠN NGỮ CHÍNH QUY, BIỂU THỨC CHÍNH QUY

VÀ VĂN PHAM CHÍNH QUY SUY RỘNG

A TĨM TẮT LÝ THUYẾT

1 Ngơn ngữ chính quy và biểu thức chính quy trên

Ký hiệu >* chi tập tất cả các xâu (kể cả xâu rỗng 2.) được thành lập từ

các phần tử của > Ký hiệu Ð chỉ tập tất cả các xâu (khơng kể xâu rỗng i) được thành lập từ các phần tử của 3) Như vậy 3 = 3 *\ {AJ

Định nghĩa 1 (Phép hợp, nhân ghép và lặp)

Trên lớp các ngơn ngữ 3 * ta định nghĩa các phép tốn: 4) Phép hợp ngơn ngữ (C2): Cho L¡, Lạ G ®*, khi đĩ

L, UL, = {@@ 6 L¡ hoặc ư 6 Lạ} c>*

b) Phép nhân ghép ngơn ngữ (.): Cho L¡, Lạ G 3 *, phép nhân ghép L„ với Lạ ký hiệu là L Lạ và được định nghĩa

LL, = {a,0,1@, € L, via, e Lạ} G33,

c) Phép ldp ngon ngit (con goi la phép déng Kleene): ChoL Â &*:

â Phộp lap (*) cua L 1a ngén ngit L* va được định nghĩa

Lt= JL =L’UL UU

a=U

Oday L°= {A} vAL"=L" LL

° Phép lap (+) của L cũng là một ngơn ngữ trên 3, và định nghĩa

L*= (JL hay Lt =L* \ (21

n=l

Ngon ngit chinh quy trén 2 ky hiéu là Lnncọ được định nghĩa như sau: Định nghĩa 2 (Ngơn ngữ chính quy)

«e Ký hiệu tập rỗng Ø là tập chứa một xâu rỗng {1} va tap {a} (a e 3) được gọi là một NNCQ trên bang >

« Giả sử A, B là hai NNCQ trên bang 3 khi dé A U B, A.B va A*

Trang 24

Từ định nghĩa 2 ta cĩ kết quả sau đây:

Định lý ! Mọi NNCOQ trên bảng 3 đều nhận được từ các ngơn ngữ hữu

hạn, bằng cách áp dụng một số lần các phép tốn hợp, phép tốn nhân ghép và phép tốn lặp (*)

Để biểu diễn NNCQ trên bảng ® người ta dùng khái niệm biểu thức chính quy (BTCQ) và được định nghĩa như sau:

Định nghĩa 3 (Biểu thức chính quy) Ký hiệu Ø là một BTCQ, nĩ biểu

diễn tập rồng (tập khơng chứa xâu nào); ký hiệu ^ là một BTCQ, nĩ biểu diễn tập {A.} và ký hiệu a (a e > ) là một BTCQ, nĩ biểu diễn tập gồm một

phần tử {a}

Giả sử (A), (B) là hai BTCQ, nĩ biểu diễn NNCQ A và B tương ứng, khi

đĩ các ký hiệu: (A t2 B), (A.B) và (A)* cũng là BTCQ, nĩ biểu diễn các NNCQ A UB, A.B va A* tuong ứng trên >

Định lý 2 Mỗi ngịn ngữ trén © 1a NNCQ khi va chi khi ngơn ngữ đĩ được biểu diễn bởi BTCQ trén >

2 Quan hệ giữa ngơn ngữ chính quy và ngơn ngữ chính quy suy rộng trén bang >

Van pham G =<), A, I, R> 14 VPCQ suy réng khi va chi khi n6 cé tap

quy tác R = (A —-> aB, A >a,A>^AÍA,BeA,ae>)

Ngơn ngữ do VPCQ suy rộng G = <Ư”, A, I, R> sinh ra goi 1a NNCQ

suy rộng Ký hiệu Lypoqsạ là lớp NNCQ suy rộng do VPCQ suy rộng sinh

ra Ký hiệu Lục là lớp NNCQ do VPCO sinh ra Từ định nghĩa ta cĩ:

Định lý 3 Lypoo = LupcosgV ÍÀI-

Định lý 4 Ngơn ngữ L c 3 * là NNCQ khi và chỉ khi cĩ tồn tại VPCQ

suy rong G =<), A, I, R> sao cho L(G) =

Một cắch hinh thiic, ky higu Lyycg 1416p ngơn ngữ được cho bởi

BTCQ Ta cĩ mối quan hệ sau

Lyreg = Lyneo = Lypegsr = Lvpcg U {44-

B BÀI TẬP GIẢI MẪU

1 Cho hai ngơn ngữ L¡ = {A, ab, ac, bbca} va L, = fa, ab, ca, aabac}

trên bảng 3, = {a, b,c}

ä) Tìm L\ C2 Lạ b) Tìm L¡.La

c) Cho L C **, phần bù của L ta ký hiệu là Cụ ;= **\L Hãy phát biểu các tính chất của phép tốn hợp (t2), phép tốn nhân ghép (.) và phép lấy phan bi (C, ) cua ngơn ngữ L

Trang 25

Giải

a)L,UL, = {A, ab, ac, bbca} C2 {a, ab, ca, aabac } = {A, ab, ac, bbca, a, ca, aabac }

b) Lị.L = {A, ab, ac, bbca}.{a, ab, ca, aabac}

= {a, ab, ca, aabac, aba, abab, abca, abaabac, aca, acab,

acca, acaabac,bbcaa, bbcaab, bbcaca, bbcaaabac }

c) s Tính chất đối với phép tốn hợp ngơn ngữ: Giả sử Lị, Lạ, Le 3*, khi đĩ: L,VUL,=L, UL; (L, UL) UL, =L, U0, UL) =L, UL, OL; LỞÒ-:=ØUL=L; Lc3*thLO3* =5; ILj2121=l1L/1+1121—1L¡AL¿l

(phép giao ngơn ngữ (^¬) định nghĩa như phép giao trong lý thuyết tập hợp) e Tính chất đối với phép nhân ghép ngơn ngữ: Giả sử Lị, Lạ.L c 3 *, khi đĩ: L.L¿ # Lạ.Lị, (L,.L,)Ly = L)(L4L,) = Ly -Ly.L;; LO=aGDL=; L.{A} = [A}L=L: [LL lth, tI LL

Giả sử L., Lạ ce D4; Ce (a) = 2; Cyd" = {A}; CeO =L*, khi ds L, AL, = Cy(CrL, U CeL,) (hệ thức De Morgan)

2 Phép ảnh gương của một xâu œ c 3 * là œeœ 3 * với ơ Tà œ nhưng viết theo thứ tự ngược lại Ảnh gương của một ngơn ngữ L c #* là hợp các

ảnh gương của mỗi xâu trong L

Ø=

24

a) Cho L = {^„ abcd, aaaaa, bbac} Tìm ảnh gương của ngơn ngữ L b) Phát biều các tính chất của ảnh gương của một ngơn ngữ

Giải

a) L = {À, abcd, aaaaa, bbac } = {A, dcba, aaaaa, cabb}

b) Tính chất của ảnh gương: Giả sử L c #*, khi đĩ: Ù =L, Â =^,

Trang 26

3 Cho L € {a, b, c}* véi L = {a, be} a) Tìm L* và L” b) Phát biểu tính chất của phép lặp (*) Giải a)L* = | ]U =IA2L2LLU n=)

= {A} U {a, be} U [a, bc} {a, be} U fa, be} fa, be} (a, be} U = {A,a, bc} U {aa, bea, abc, bebe} U {aaa, bcaa, abca, aabc,

bcabc, abcbc } t2) = {^, a, be, aa, bea, abc, bcbe, aaa, bcaa,abca, aabc, beabc, abche, .}

L*=L*- {A}

Trang 27

6 Cho A = 10 11}, B= {00, 01} trên 3; = {0, 1} Tìm các tập sau:

a)AB, b)BA; c)A? đ) B Giai a) AB= (0, 11} (00, 11} = (000, 1100, 011, 1111} b) BA = {00, 11} {0, 11} = (000, 110, OO11, 1111} c) A? = (0, 11} {0 11 = (00, 110,011, 1111] d) B’ = {00, 01} {00,01} {00, 01} = {0000, 0100, 0001, 0101} {00,01} = {000000, 010000, 600100, 010100, 000001, 010001, 000101, 010101} 7 Tìm tất cả các tập A và B của các xâu sao cho AB = {10, 111, 1010, 1000, 10111, 101000} Giải ® A=(I,10I} và B= (0, 11, 000} vi ^ ng 101} {0, 11, 000} = {10, 111, 1000, 1010, 10111, 101000}; © A= (10, 111, L010, 1000, 10111, 101000} va B= {A} vi AB= A3 =A = {10, 111, 1010, 1000, 10111, 101000}; » A= {i, 10} va B= {10, 111, 1000} vi AB=AB= B= {10, 111, 1010, 1000, 10111, 101000}; hoac A= {A} va B= {10, 111, 1010, 1000, 10111, 101000} vi = {A, 10} (10, £11, 1000} = [ 10, 111, 1000, 1010, 10111, 101000} 8 Mơ tả bằng lời các xáu được cho bởi các BTCQ sau a) 1*0; b) 1*00*; c) 11) U001; d) (1 U 00)*; e) (00*1)*; f) (OU 1)(0 U 1)*00; g) 0O* 1; h) (OU {OU 1)(0 U 1)*0000*; 1) OF 1* U 1*0*; k) II(111)*(00)* Giải

a) Tập các xâu gồm bất kỳ số số 1 được tiếp theo sau bởi một số 0 b) Tập các xâu gồm bất kỳ số số I được tiếp theo bởi nhiều hơn một số 0 c) Tập các xâu gồm ba số 1, hoặc xâu gồm hai số 0 được tiếp theo là số I d) Tập các xâu gồm một số tùy ý các số 1, hoặc tùy ý các cặp 00, hoặc

một số mỗi loại ở một hàng

e) Tập các xâu À, hoặc xâu kết thúc bằng một số ] và cĩ một hoặc nhiều hơn các số 0 đứng trước số ]

f) Tập các xâu chiều dài ít nhất là 3 và tận cùng bằng 00

g) Tap các xâu cĩ một hoặc nhiều hơn số 0 được tiếp theo bởi số I

h) Tập các xâu cĩ hai hoặc nhiều hơn ký tự trong bảng chữ cái được

tiếp theo bởi ba hoặc nhiều hơn các số 0

Trang 28

¡) Tập các xâu hoặc khơng cĩ số 1 nào đứng trước một số 0, hoặc khơng cĩ số Ư nào đứng trước một số I

k) Tập các xâu chứa một xâu các số I sao cho số số ! bằng 2 (modun 3)

được tiếp theo bởi một số chẵn các số 0 (Chú ý: Số số I bằng 2 (modun 3) cĩ

nghĩa là: số số I trừ đi 2 chia hết cho 3)

9, Cho các BTCQ trên 3, = {0, I): 10*, (10)*, 0 0T, O10 U 1)* và O0(Ĩ 2 1)# 1] Hãy tìm các NNCQ trên 2 được biểu diễn bởi các BTCQ đã cho Giai L0* biểu diễn NNCQ (10”In>z0); (10)* biéu dién NNCQ {(10)"|n > 0}; 0t/0I biểu điển NNCQ {0, O1]; 0(0 2 1)# biểu điển NNCQ {0ø | @ e (0, 1}*}; 00(0 t2 I)*II biểu diễn NNCQ {0011 | @ e {0, 1)*} 10 Cho các BTCQ trên }' = {Õ, 1|: 1*0, 1*00*, 11] U 001, (OU 1)(0 U 1)*00 Hãy tìm các NNCQ của các BTCQ đã cho Giải

1*0 tương ứng với NNCO {10 In > 0}

I*00* tương ứng với NNCQ | I°00”In,m >0

[11\t2001 tương ứng với NNCQ { L1, 001}

(02 1) (0 ©/ [)* 00 tương ứng với NNCQ (0000, Io00l@ e {0,1)*} 11 Dùng các BTCQ biểu diễn các tập sau:

a) Tập các xâu cĩ một hoặc nhiều hơn một số 0 được tiếp sau bởi số I b) Tập các xâu cĩ hai hoặc nhiều hơn ky hiéu trong > = (0, 1} va tiếp

sau bởi ba hoặc nhiều hơn số 0

c) Tập các xâu khơng cĩ số l nào, hoặc nhiều hơn một số l đứng trước

một số chăn các số 0

d) Tập mọi xâu 0 và [ cĩ số 1 ở đầu và khơng cĩ hai số Ư đứng liền nhau €) Tập mọi xâu trên 3; = {0, !} khơng chứa hai số Ơ liên tiếp Ð Tập mọi xâu trên 3; = {0, I} được kết thúc bởi 011

¡) Tập mọi xâu gồm một số số 0, tiếp đến gồm một số số I, rồi đến một số số 2, trong đĩ 0, 1, 2 đều cĩ mặt

Giải

a) 00*1, 0*01 b) (0U 1) (0C ID) (0U 1)* 00003

Trang 29

c) O* U 111* (00)* đ) (1 © 10)* e) (OU A) (1 U 10)*, f) (OU 1)* O11 i) OO*11* 22* 12 Từ các BTCQ chỉ ra trong bài tập I1, hãy chỉ ra NNCQ của các BTCQ tương ứng đĩ Giải a) NNCQ của các BTCQ trong câu a là: 00*1 cĩ NNCQ hà {00°1Iln>0); 0*01 cĩ NNCQ là {0°01 In> 0) b) BTCQ: (0 Ĩ 1) (0 Ở 1) (0 2 1)* 0000* cĩ NNCQ là L = (000°, 0100", 110", 10m0" lo e Ð>* &n >3) c) BTCQ: 0* U 111*(00)* cé NNCQ là (0°, 111700) In, m, k > 0} đ) BTCQ: (I +2 10)* cĩ NNCQ là (1,10)* ={A}O {H1; 10) Ĩ [1, 10]11,10) 2 = {A, 1, 10, 11, 101, 110, 1010, .} (gồm tất cả các xâu cĩ số 1 đứng đầu và khơng cĩ hai số 0 đứng liền nhau) e) BTCQ: (OU A) 1 U 10)* cĩ NNCQ là {0, 01, O10, O11, 0101, 0110, 01010, .} (gồm tất cả các xâu trên 3” = (0, 1} khơng cĩ hai số 0 đứng liền nhau) 28 Ð NNCQ là L = {@O11i l@œ e {0,1)*] i) NNCQ AL = {0"1™2* {n> 1,m>1,k>1) 13 Cho VPCQ suy rộng G = <¥, A, I, R> véi R=tlÍ— IA,I0,I—>^,A 08, B— 1B, B — 1} a) Tim L(G) b) Tim BTCQ cha L(G) trén ¥ = {0, 1} Gidi a) L(G) = {0, 4, 101" n> 1)

b) BICQ cia NNCQ suy rong L(G) cé dang: OUAY 1011* 14 Cho VPCQ suy rộng G, = <Ư, A,, l¡, R,> với:

a) Rị = {l¡ —y 0A, lị —> 1B, A —> 0, B —y 0];

b) R, = [I; — IB, I; — 0, A —> 1A, A —› 0B, A — 1, A =0, B— 1|

Tim L(G,) (¡ = I, 2) Chỉ ra các BTCQ của nĩ

Giải

a) L(G,) = (00, 10}; 00 U 10 14 BTCQ cia L(G))

Trang 30

15 Cho VPCQ suy rộng G = <2 A, R> void = (a, be}, A= {I, A, B}

va R = {I “yal, 1->bA, A ->8A, A oh, I->eB, B->a, Bb}

a) Tim L(G)

b) X4c định BTCQ ctta L(G)

Gidi

a) L(G) = {a"ba™, aca, a"cb | n > 0, m > 0) Dẫn xuất đây đủ của @,= a"ba™, @,= a"ca, @, = aed là:

D(@,) = d, ,al, ., ;a"L, 3a"bA, ,a"baA, ., ,a"bal™A, ,a"ba™); D(@,) = (IL, ,al, ., ;a°l, ,a"cB, „a”ca),

D(o;) = (I, ,al, ., ,a"l, sa"cB, 7a"cb)

b) BTCQ cua L(G) 1a: a*ba* U a*ca U a*cb

16 Cho VPCQ suy rộng G = <Ð>, A, I, R> với \ 2 3 4 5 6 R= {I >aA,, A, >bA,, A,—aA,, A, >b, I >aB,, B, >bB,, B, >aB,, B,—>bB,, B,—>a) a) Tim L(G) b) Xác định BTCQ của L(G) Giải a) L(G) = {aba"b, abab™a | n, m > 0] Dẫn cuất đầy đủ của œ¡ = = aba", @, = abab™a 1a:

Diw,) = (1, 1 aA}, 2 ADA,, 3 abaA,, ., 3 aba"A,, ¿ aba”b),

D(@;) = (1, 5aB,, ¿ abB›, abaB,, g ababB,, ., , abab™B,, 9 abab™a)

b) BTCQ cua L(G) 14 aba*b U abab*a 17 Cho các BTCQ: a) abba*b U abaa*b U abbb; b) 00(1 11)*00 U 1(00)*1 UOLF UILUA Xây dựng VPCQ suy rộng sinh ra NNCQ được biểu diễn bởi các BTCQ a và b đã cho > Gidi

a) NNCQ ting voi BTCQ: abba*b \Ở abaa*b t2 abbb là = {abba"b, abaa™b, abbb | n, m 2 0}

và VPCQ suy rộng sinh ra NNCQ trên cĩ tập quy-tắc sinh R cé dang:

= {I > aA), A; — bA,, A, > bA;, A; > aA;, A; - 6, I > aB,,

B, — bB,, B, —> aB;, B; > aB,, B; > b, 1» aD,, D, — bD,, Dạ — bD;, D; —> b]

Trang 31

Các xâu trong NNCQ L ứng với các BTCQ trên đều cĩ dẫn xuất đầy đủ là rõ ràng (bạn đọc tự kiểm tra)

b) NNCQ ứng với BTCQ: 00(111)*00U1(00)*IWO1*U1IWA 1a L= {00(111)"00, 1(00)™1, 01Ẻ, I1,ÀÍn >0,m>0,k>0)

VPCQ suy rộng G sinh ra NNCQ trên cĩ tập quy tắc sinh

R= [I— 0A, Á, —> Ố¿, Á¿ —> LÀ¿, Á¿ —> LÁ¿, A¿ — TÁ¿, Ap > OAs,

A; > 0,1 > 1B,, B, > OB, B; — 0B¿, B, > 1, I— 0DỊ, D, >1D,,D, 374,17 1IE,E> 1,TI> A}

Việc chỉ ra các đẫn xuất đầy đủ của các xâu trong L dành cho bạn đọc

18 Xây dựng VPCQ suy rong G =<, A, I, R>, sao cho L(G) = tap céc xau bat ky bat dau bdi sé 0 trên © = {0, 1} Tim BTCQ cha L(G)

Giải

>=(0,1),A=(LA}),R= [[—0A, A => 0A, A — IA, AA>^Ì; L(G) = (0œ l œ e {0, 1}*}

BTCQ của L(G) là 0(0 U 1)*

19 Cho ngơn ngữ L = {À, I@1, 0l œ e {0, 1J*} Xây dựng VPCQ suy

rong G =<), A, I, R> sao cho L(G) = L và tìm BTCQ của L

Giải

3>=(0.1];A=(LAI

R=(ï— IA,I >À,A 0A, A >1A,A—>^X,I— 0} BTCQ của L là À €2 I (0 C2 1)*1 C20

20 Cho ngơn ngữ L = {A, O"lo, 1™0, lo | m € {0,1}* van, m2 1}

Xây dựng VPCQ suy réng G = <X, A, I, R> sao cho L(G) = L va chi ra BTCQ của L Giải X= {0,1}; A= {], A, B, D}; R = [l— À, I— 0A, A > 0A, A > 1B, B > OB, B> 1B, BA, I> 1D, D> 1D,D > 0C,C > 0C,C 5 1C,C > 4,1 IE, Eo>0E,ED IE,E— A} BTCQ của L là À@ 0*I (0U T)* Ở 110 (0C D* C2 1(0 Ở D)*,

21 1 Viết BTCQ của các tập sau:

a) Tập các xâu cĩ một hoặc nhiều hơn số 0, được tiếp theo bởi một số I

b) Tập các xâu cĩ hai hoặc nhiều hơn ký hiệu, được tiếp sau bởi ba hoặc nhiều hơn số 0

Trang 32

c) Tập các xâu chứa một xâu các số l sao cho số các số |} bang

(2 modun 3), được tiếp theo bởi một số chãn các số 0

2 Xây dựng các VPCQ suy rộng sinh ra các xâu được mơ tả trong a, b, c ở

cau I Gidi

1.a) 00*1; b) (0Ø CĨ 1) (0 C7 1)(0 C7 1)* 0000*; c) E1(111)*%(00)*

2.a) R = {[Ï— 0A, A —> 0A, A —> 1}

b) R = {] + OA,;, A; > OA, Ay > OAy, Ay > IA), Ay > ƠA+,

A; > OAq4, Ay > OAy, Ay > 0 F > OA, As > 1Ag, Ag 3 OA,

Ag > 1Ag, Ag > OA7, Az — OAg, Ag > OAg, Ag > 0,1 > 1Ad, Ag — 1A Aig — OA; Aig => 1Aig Aig > OA),

Ay, > OAy3, Ayg — OA, Ayy 2 0, LT 1Ay3, Ay3 —> OAs,

Aig > OAjg, Ayyg > 1Ayy Al¿ 2 OAl5, Ays —> ƠAl¿, Aig — OAy6 Ayg —> 0}

Bạn đọc tự kiểm tra lại

L(G) = {0000", 0100", 11@0", LO@0" 1a € (0, 1}* & n> 3} cĩ BTCQ mơ tả trong b ở câu I

c) R = {I > IB,, B, I1B;, By IB;, By > 1B, B, > 1B, B, > OB;, B, > OB,, B, > A}

Bạn đọc tự kiểm tra lại

L(G) = {11(111)°(00)”In>0,m >0] cĩ BTCQ trong c ở câu |

22 Chứng minh rằng, nếu A là một NNCQ thì ảnh gương của A là A

cũng là NNCQ

Chứng mính Dùng quy nạp trên cơ sở định nghĩa BTCQ 23 Cho BTCQ: 01* 2 00*{ 2 (0 Ĩ 1) (0 2 1)*00,

a) Viết NNCQ được cho bởi BTCQ trên

Trang 33

25 26 21 29 30 31 32 a) Viết BTCQ của L b) Xây dựng VPCQ suy rộng sinh ra L Giải a) 01*0(0 U 1)* 2 2(33)*2(0 2 1)*Ĩ 10*11*000#(0 1)*,

b) R = {[ 0A, A —= 1A, A¬ 0B, B— 0B, B — 1B, B>A,I > 2D, D > 3F, F 3D, D > 2B, I IE,E > 0E, E IK,

K— 1K,K—0H,,H, —>0H;, H; -> 0H;, H; —> 1H¿, Hạ > A}

C BÀI TẬP TỰ GIẢI

Xây dựng các VPCQ suy rộng sinh ra các ngơn ngữ trong bài tập 8, 9 và 10

Xây dựng VPCQ suy rộng sinh ra các NNCQ tương ứng với các BTCQ

trong bai tap 12

Xâu œ = 1011 cĩ thuộc các NNCQ ứng với các BTCQ dudi đây khơng?

a) 10*1*; b) 0*(10 (2 11)*;

c) I(01)*1%; đ) 1*01(0 ©2 1);

e) 10*(11)*; f) 1(00)*(11)*;

ø) (10)*1011; h) (1 U 00) (0100)1*

Cho A C >*, với 3ˆ là bảng các chữ cái Các mệnh dé dưới đây, mệnh đẻ nào đúng, mệnh đề nào khơng đúng?

a)ACA?, b) NéuA =A? thid € A;

c) A{A} =A; d) (A*)* = A*;

e) A*A = A*; ĐỊAPI=IAI,

Trang 34

32 33 34 35 36 37 b) Tìm BTCQ của L(G,) va L(G)

c) Tim VPCQ ỞƠ sao cho L(G) = L(G,)L(G;) d) Chỉ ra BTCQ của L(G) trong câu c

Xây dựng các VPCQ (VPCQ suy rộng) G = <>, A, I, R> sinh ra ngơn

ngữ trên 5; = {0, 1} được cho dưới đây:

a) LG) =Ề*:¿ b)L(G)=>”

Tìm các BTCQ biểu diễn ngơn ngữ trên {Ơ, } sau:

a) Tập mọi xâu, trong đĩ mọi cặp số 0 liên tiếp đều xuất hiện trước

mọi cặp số 1 liên tiếp

b) Tập mọi xâu chứa nhiều nhất một cặp số 0 liên tiếp và nhiều nhất một cặp số l liên tiếp Mơ tả bằng lời các ngơn ngữ được biểu diễn bởi các BTCQ sau: a) (11 UV 0)* (00 U 1)*; b) (1 U 01 U 001)*(0 U 00); c) (00 U 11 U (01 U 10) (00 U 11)*(01 U 10))* Hãy chỉ ra VPCQ suy rộng sinh ra các ngơn ngữ trong các câu a, b và c tương ứng

Xây dựng các VPCQ suy rộng sinh ra các NNCQ được mơ tả dưới đây: a) Tập các xâu gồm bất kỳ số số 1, tiếp theo là số 0

b) Tập các xâu gồm bất kỳ số số l, tiếp theo là các xâu bất kỳ trên bảng 3; = (0, 1} và sau đĩ là một hoặc nhiều hơn các số 0

c) Tập các xâu bất đầu bởi 1, tiếp theo là một số bất kỳ số 0

d) Tập các xâu bắt đầu bởi số 0 và kết thúc bởi số 1 trên 3 = {0, 1} Chứng minh rằng, một ngơn ngữ LL được cho bởi BTCQ khi và chỉ khi ngơn ngữ LL được sinh bởi VPCQ suy rộng

Trang 35

38 40 4I 42 43 44 45 34

Chứng tỏ các BTCQ sau đây biểu diễn cùng một ngơn ngữ:

a) (aa)*; b) (aa)* U Ga;

€) (aa (7 aaaa)*; đ) (aa)*(aa)* Cho cac BTCQ: a) I0 (2 (0 2 11)0*1; b) 01((C10)* U 111)* U0)*1; c)(DODUNDNOVIDFUCOUINOVUIDOVU]I))* Xây dựng các VPCQ suy rộng sinh ra các ngơn ngữ được biểu diễn bởi các BTCQ đã cho VPPNC cé dang G = <3, A, I, R>, voi R={A—>Ba,A>alA,BeA,ae dX} gọi là VPCQ trái Người ta gọi VPCQ G = <>_, A, I, R>, ở đây R=IAOaB,ÀAoalA,BeA,ac>} là VPCQ phải Chứng minh rằng: a) Nếu L là NNCQ thì tồn tại VPCQ phai G = <>, A, I, R> sao cho L(G) =L\ {A}

b) Néu G la VPCQ phai thi L(G) la mét NNCQ

Ngơn ngữ L là NNCQ khi và chỉ khi cĩ một VPCQ phải G sao cho

L(G) =LN\ {A}

Chứng minh mọi NNCQ đều là NNPNC Mệnh đề đảo lại là khơng

đúng, cho ví dụ

VPCQ phải G = <3, A, I, R> và VPCQ trái G' = <2”, A, Í, R> được

gọi là các VPCQ đối ngẫu khi và chỉ khi quy tic A > Ba € R thi

quy tắc A —> aB e R' và quy tắc A —> a e R thì quy tắc A —> a e R'

Chứng minh rằng, nếu G và G' là hai VPCQ đối ngẫu thì

L(G') = L(G) , 0 day L 1a anh guong cua L

Chứng minh rằng, phép ảnh gương là đĩng đối với NNCQ

VPPNC G = <3, A, I, R> được gọi là văn phạm tuyến tính phải (VPTTP) nếu nĩ cĩ tập quy tắc

R=(A->øœB,A->œ!A,BeA,œeÐ>)

Trường hợp R = [A —> Bø, A —> øœ | A, B e A, ø e 3} thì G gọi là văn

phạm tuyến tính trái (VPTTT) Từ đĩ ta nĩi VPCQ trái (phải) là VPTTT

(VPTTP) khi /(œ) = ! Chứng minh rằng:

a) Nếu G là VPTTP thì L(G) là một NNCQ

Trang 36

Chương 3

ƠTƠMAT HỮU HẠN TRẠNG THÁI ĐỐN NHẬN NGƠN NGỮ CHÍNH QUY SUY RỘNG

A TĨM TẮT LÝ THUYẾT

Một trong những ứng dụng quan trọng của ơtơmat là sự đốn nhận ngơn ngữ của nĩ Sự đốn nhận ngơn ngữ của ơtơmat hữu hạn trạng thái (gọi

tắt là ơtơmat) và ơtơmat đẩy xuống được trình bày trong Chương 3 và Chương 4 đĩng vai trị quan trọng trong việc thiết kế và xây dựng các giải

thuật phân tích cú pháp trong ngơn ngữ lập trình

1 Định nghĩa ơtơmat

Ơtơmat là bộ 5 thành phần: M = <¥, Q, F, q,, o>, trong dé: Ð) — tập hữu hạn khác rỗng các ký hiệu vào; Q — tập hữu hạn khác rỗng các trạng thai; F c Q là tập trạng thái kết thúc; qọ e Q gọi là trạng thái ban đầu; o: Q x 2* ~ Q (trong trường hợp này M gọi là ơtơmat đơn định); ơ: Q x ©* — 2° (trong trường hợp này M gọi là ơtơmat khơng đơn định) 2 Phương pháp biểu diễn ơtơmat M = <Y, Q, F, g,, o>

a) Phương pháp lập bảng chuyển

Nếu M cĩ 3= {Xị, Xạ, Xa| và Q = {Gov Gye Gay - Um-1} Cm 2 1) thi M cĩ thể cho dưới dạng bảng chuyển: x Q xX, X2 x Xa Yo 1 } a , GX) q ¢ Qn-1 ‘

¡=0, 1, m— †,j= 1, 2, ., n; q, e Q là trạng thái ban đầu; F c Q là tập trạng thái kết thúc Nếu V(i, j) ma o(q, x) e Q thì M là đơn định,

ngược lại cĩ 3(i j) để ø(q, x) c Q thi M là khơng đơn định

Trang 37

b) Phương pháp đơ thị chuyển

Nếu M cĩ 3} = |X¿, X¿, Xa} và Q = Íđạ„ đụ, - đạ—¡ } (m > 1) thì M cĩ

thể cho dưới dạng đồ thị chuyển theo các nguyên tắc sau đây:

« Mỗi trạng thái q © Q đặt tương ứng với một đỉnh, đỉnh là một vịng trịn gán nhãn q: (Q)

«_ Nếu qạ e Q là trạng thái ban đầu thì đỉnh cĩ đạng : —> _

«_ Nếuq e Q mà q e F thì đỉnh của q là trạng thái kết thúc cĩ đạng:

« Nếu ơ(q, X) = q¡ e Q với ¡ # j thì trong đồ thị chuyển của M từ đỉnh q¡ đến q¡ cĩ một cung gán nhãn x:(4))—4(q)) Đặc biệt, nếu ¡ = j thì từ đỉnh q; đến đỉnh q; cĩ một khuyên gán nhãn x: « Nếu ưG(q, x) = {q,,q,.,.„q,}<Q thì từ đỉnh q, đến k đỉnh q,.q;, - q, cĩ k cung cung gấn nhãn x và trong đồ thị chuyển của M cĩ đạng:

Chú ý: Ta đã biết, đối với văn phạm G = <2, A, L, R>, cho văn phạm

thực chất là cho tập quy tắc sinh R Vì từ R ta khơi phục lại 3, A và I của

vân phạm Tương tự, đối với ơtơmat M = <3, Q, F, q„, ø>, cho M thực chất

là cho hàm chuyển ơ Vì từ ơ ta khơi phục lại các thành phần khác >, Q, F và qạ Như vậy, cho M dưới đạng bảng chuyển hay dưới dạng đồ thị chuyển đều là cho hàm chuyển ơ dưới dạng bảng chuyển hay đồ thị chuyển

3 Định nghĩa ngơn ngữ đốn nhận của ơtơmat

Cho M =<2,Q, F, qạ, ø> và œ e 3 * là một xâu trên 3, Nếu khí M đọc hết xâu œ bắt đầu từ trạng thái ban đầu, nĩ đưa về một trạng thái G(q,„ @) = q e F hoặc ø(qạ, 0) = Íq,, q, q, }Q với ø(q„, @) ¬ F = (q, dd, }/AE # © thì ta nĩi M đốn nhận xâu vào œ M đốn nhận

xâu Vào œ € }* theo hai cách:

L(M) = {@ Íœ e 3 ;* & o(q,, @) € F} déi véi M đơn định;

L(M)= [œløœ e >* & ø(q,, œ)¬ E # Ø] đối với M khơng đơn định

Trang 38

4 Sự tương đương giữa ơtơmat đơn định và khơng đơn định

Ta nĩi ơtơmat M là tương đương với ơtơmat M' (ký hiéu M ~ M’) khi va

chỉ khi L(M) = L(M)

Dinh lý 5.- Lớp ngơn ngữ đốn nhận của ơtơmat đơn định trùng với lớp ngơn ngữ đốn nhận của ơtơmat khơng đơn định trên bang ky tu >

_ Cơ sở để chứng minh Định lý 5 là thuật tốn sau:

Thuật tốn:

Input M = <>’, Q, F, qạ, ø> khơng đơn định;

output M' = <>’, Q', F,, s,, o'> don định va M~ M', M' được xây dựng theo các bước dưới đây:

Bước I: 3;:=Ð3 củaM

Bước 2: Q' := 2°, bday 22 = tập tất cả các tập con của Q hay

29 = (uy, u, 0ạ, 0u, lúc Q (=0, 1, , 29~1))

Va So = Uy = {qo} (qo la trang thai ban dau cia M)

Bước 3: F :={ulucQ &unF#Q}

Bước 4: Gđ: Q' x 3 * —y Q' được xác định: với mọi u e Q' và mọi x e>ta định nghia: o'(u, x) = (Jo(q,x)

qeU

Với M' xây dựng như trên thì M' là ơtơmat đơn định va M' = M

Chú ý: Về mặt phương diện cấu trúc và thiết kế chương trình dịch thì ơtơmat khơng đơn định phức tạp hơn rất nhiều so với ơtơmat đơn định Vì lý đo người ta luơn luơn biến đổi ơtơmat khơng đơn định về ơtơmat đơn định tương đương với nĩ bằng cách áp đụng thuật tốn trên,

5 Thuật tốn Thompson

Thuật tốn này thực chất là chỉ ra các ơtơmat đốn nhận ngơn ngữ theo các bước định nghĩa NNCQ trên bảng ký hiệu >

Nội dung gồm các bước sau:

a) NNCQ Ø được đốn nhận bởi M : (4p) (L(M) = @)

b) NNCQ {2} được đốn nhận bởi M : (L(M) = {A})

c) NNCQ {a)} (a e Ð) được đốn nhận bởi M: >()-“) (L(M) = {a})

Gia sir A, Bc >* 1a hai NNCQ duoc dodn nhan tuong ting boi hai ơtơmat:

Trang 40

6 Quan hệ giữa ngơn ngữ chính quy, ơtơmat và văn phạm chính quy suy rộng

Định lý 6 (Định lý Kileene) Tập A là NNCQ trên bảng ký tự Ð

khi và chí khi nĩ được đốn nhận bởi một ơtơmat hữu bạn trạng thái M = <>, Q, F, qo, o> sao cho L(M) = A

Định lý 7 a) Đối vi VPCQ suy réng bat ky G = <>, A, I, R>, bao gid cũng xây dung được ơtơmat hữu hạn trạng thái M = <3, Q, F, go, o> sao cho L(M) = L(G)

b) Đối với ơtơmat hữu hạn trạng thái M = <°, Q, F, qo, o>, bao giờ cũng xây dựng được VPCQ suy rộng G = <2, A, l, R> sao cho L(M) = L(G)

Chú ý: Mối quan hệ tương hỗ giữa lớp BTCQ (Lgrco), lớp NNCQ

(Lànco) lớp ngơn ngữ sinh bởi VPCQ (Lvpc), lớp ngơn ngữ sinh bởi VPCQ suy rộng (Lvpcosn) và lớp ngơn ngữ đốn nhận bởi ơtơmat M (Lory) được cho bởi biểu thức sau

Lince = Eyneg = Lorm = Lyecosr = Lypag {4}

B BÀI TẬP GIẢI MẪU

Ngày đăng: 16/06/2015, 12:10

TỪ KHÓA LIÊN QUAN

w