1. Trang chủ
  2. » Luận Văn - Báo Cáo

Một số tính chất của ngôn ngữ phi ngữ cảnh

46 21 0

Đ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 46
Dung lượng 846,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Như vậy, các quy tắc trong văn phạm phi ngữ cảnh có vế trái chỉ chứamột ký hiệu phụ còn vế phải là tùy ý, và được gọi là quy tắc phi ngữ cảnh.. Rút gọn các văn phạm phi ngữ cảnh Trong mộ

Trang 1

TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2

KHOA TOÁN

LÊ THỊ THANH LOAN

MỘT SỐ TÍNH CHẤT

CỦA NGÔN NGỮ PHI NGỮ CẢNH

KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC

Chuyên ngành: Toán ứng dụng

Người hướng dẫn khoa học

TS KIỀU VĂN HƯNG

HÀ NỘI - 2017

Trang 2

Khóa luận tốt nghiệp Lê Thị Thanh Loan

LỜI CẢM ƠN

Em xin được bày tỏ lòng biết ơn chân thành tới TS Kiều Văn Hưng,người thầy đã truyền thụ kiến thức, tận tình giúp đỡ, hướng dẫn em trong suốtquá trình học tập, nghiên cứu và hoàn thành khóa luận này

Em xin được gửi lời cảm ơn tới các thầy cô giáo trường Đại học Sưphạm Hà Nội 2, các thầy cô giáo khoa Toán đã giúp đỡ em trong quá trìnhhọc tập tại trường và tạo điều kiện cho em hoàn thành đề tài khóa luận tốtnghiệp

Trong quá trình nghiên cứu, không tránh khỏi những thiếu sót và hạnchế Em kính mong nhận được sự đóng góp ý kiến của các thầy giáo, cô giáo

và toàn thể bạn đọc để khóa luận được hoàn thiện hơn

Em xin chân thành cảm ơn!

Vĩnh Phúc, tháng 4 năm 2017

Sinh viên

Lê Thị Thanh Loan

Trang 3

Khóa luận tốt nghiệp Lê Thị Thanh Loan

LỜI CAM ĐOAN

Em xin cam đoan dưới sự hướng dẫn của thầy giáo Kiều Văn Hưng khóa luận của em được hoàn thành không trùng với bất kì đề tài nào khác

Trong khi làm khóa luận này, em đã kế thừa thành quả khoa học của cácnhà khoa học với sự trân trọng và biết ơn

Vĩnh Phúc, tháng 4 năm 2017

Sinh viên

Lê Thị Thanh Loan

Trang 4

Khóa luận tốt nghiệp Lê Thị Thanh Loan

MỤC LỤC

MỞ ĐẦU 1

Chương 1 Văn phạm phi ngữ cảnh 3

1.1 Văn phạm phi ngữ cảnh 3

1.1.1 Định nghĩa 3

1.1.2 Ngôn ngữ sinh bởi văn phạm phi ngữ cảnh 4

1.1.3 Cây suy dẫn đầy đủ trong văn phạm phi ngữ cảnh 5

1.1.4 Quan hệ giữa dẫn xuất và cây suy dẫn 6

1.1.5 Văn phạm phi ngữ cảnh đa nghĩa 8

1.1.6 Rút gọn các văn phạm phi ngữ cảnh 9

1.2 Chuẩn hóa văn phạm phi ngữ cảnh 14

1.2.1 Dạng chuẩn Chomsky 14

1.2.2 Dạng chuẩn Greibach 16

1.3 Bài tập 20

Chương 2 Tính chất của ngôn ngữ phi ngữ cảnh 26

2.1 Hai bổ đề Bơm 26

2.1.1 Bổ đề Bơm cho ngôn ngữ phi ngữ cảnh 26

2.1.2 Bổ đề Bơm cho ngôn ngữ tuyến tính 30

2.2 Tính đóng của ngôn ngữ phi ngữ cảnh 31

2.3 Một vài tính chất khả quyết của ngôn ngữ phi ngữ cảnh 32

2.4 Bài tập 32

KẾT LUẬN VÀ KIẾN NGHỊ 34

TÀI LIỆU THAM KHẢO 35

Trang 5

1

Trang 6

1 Lý do chọn đề tài

MỞ ĐẦU

Những năm gần đây, con người đã đạt được nhiều thành tựu khoa học rực

rỡ, một trong những thành tựu đó là sự bùng nổ của ngành khoa học máy tính

Sự phát triển kì diệu của máy tính gắn liền với sự phát triển toán học hiện đại,

đó là Toán rời rạc Toán học rời rạc nghiên cứu các cấu trúc có tính chất rờirạc không liên tục Toán rời rạc bao gồm các lĩnh vực như quan hệ, lý thuyết

đồ thị, ngôn ngữ hình thức và otomat

Lý thuyết ngôn ngữ hình thức là lý thuyết nền tảng cho việc thấu hiểukhái niệm về ngôn ngữ nói chung (cả ngôn ngữ lập trình lẫn ngôn ngữ tựnhiên), và các vấn đề cơ bản về ngôn ngữ như cách xây dựng văn phạm sinh

ra ngôn ngữ (xây dựng văn phạm cho ngôn ngữ lập trình, cho quá trình phântích cú pháp), dịch từ ngôn ngữ lập trình cấp cao sang ngôn ngữ máy

Ngôn ngữ phi ngữ cảnh là chủ đề quan trọng nhất của lý thuyết ngôn ngữhình thức, vì nó áp dụng cho ngôn ngữ lập trình Mục đích của khóa luận nàynhằm tìm hiểu rõ hơn về ngôn ngữ phi ngữ cảnh cùng với các tính chất và ứngdụng của nó

2 Mục đích nghiên cứu

Tìm hiểu một cách tổng quan về ngôn ngữ sinh bởi văn phạm phi ngữ cảnh,các tính chất của ngôn ngữ phi ngữ cảnh

3 Đối tượng và phạm vi nghiên cứu

Đối tượng: Các kiến thức cơ bản về tính chất của ngôn ngữ phi ngữ cảnh Phạm vi: Nội dung kiến thức trong phạm vi của lí thuyết ngôn ngữ hình thức

4 Nhiệm vụ

Tìm hiểu về tính chất của ngôn ngữ phi ngữ cảnh

5 Phương pháp nghiên cứu

Phân tích tài liệu có liên quan

Trang 7

Tổng hợp kinh nghiệm bản thân.

6 Cấu trúc khóa luận

Ngoài phần mở đầu, kết luận và tài liệu tham khảo nội dung chính củakhóa luận bao gồm 2 chương:

Chương 1: Trình bày về văn phạm phi ngữ cảnh và ngôn ngữ phi ngữ cảnh Chương 2: Trình bày về tính chất của ngôn ngữ phi ngữ cảnh

Trang 8

Chương 1Văn phạm phi ngữ cảnh1.1.Văn phạm phi ngữ cảnh

Xuất xứ của văn phạm phi ngữ cảnh là sự mô tả thông qua các ngôn ngữ

tự nhiên Ta có thể viết quy tắc cú pháp để diễn tả câu "Mạnh là sinh viêngiỏi" như sau:

+  là một bảng chữ cái,  = , gọi là bảng ký hiệu phụ (hay bảngchữ cái không kết thúc), mỗi phần tử của nó được gọi là một ký hiệu không

Trang 9

kết thúc hay ký hiệu phụ.

+ S  được gọi là ký hiệu xuất phát hay tiên đề

+ P là tập hợp các quy tắc sinh có dạng A→ω, trong đó A,ω() Như vậy, các quy tắc trong văn phạm phi ngữ cảnh có vế trái chỉ chứamột ký hiệu phụ còn vế phải là tùy ý, và được gọi là quy tắc phi ngữ cảnh

Ví dụ 1.1Cho văn phạm G1 = <{a,b},{S, A, B},S,P1>, trong đó:

P1 = {S→AB, A→aA, A→a, B→bB, B→b}

G1 là văn phạm phi ngữ cảnh

Ví dụ 1.2Cho văn phạm G2 = <{0,1},{S},S,P2>, trong đó:

P2 = {S→SS, S→0S1, S→1S0, S→u}

G2 là văn phạm phi ngữ cảnh

1.1.2.Ngôn ngữ sinh bởi văn phạm phi ngữ cảnh

Định nghĩa 1.1Cho văn phạm phi ngữ cảnh G = <  ,  ,S,P>vàη,ω()* Ta nói ω được suy dẫn trực tiếp từ η trong G, ký hiệu η├Gωhay ngắn gọn là η├ω ( nếu không sợ nhầm lẫn ), nếu tồn tại quy tắcα→βP và γ, δ()* sao choη = γαβ, ω = γβδ

Điều này có nghĩa là nếu η nhận vế trái α của quy tắc α→β như là từ conthì ta thay α bằng β để được từ mớiω

Định nghĩa 1.2Cho văn phạm phi ngữ cảnh G = <,,S,P> vàη,ω()* Ta nói ω được suy dẫn từ η trong G, ký hiệu η ╞Gωhay ngắngọn là η ╞ ω (nếu không sợ nhầm lẫn), nếu η = ω hoặc tồn tại một dãyD=ω0, ω1, , ωk()* sao cho ω0= η,ωk = ω vàωi-1├ωi, với i =1,2, , k.Dãy D =ω0, ω1, , ωk được gọi là một dẫn xuất của ω từ η trong G và số

k được gọi là độ dài của dẫn xuất này.Nếu ω0= S và ωk* thì dãy D gọi làdẫn xuất đầy đủ

Nếu ωiđược suy dẫn trực tiếp từ ωi-1bằng việc áp dụng một quy tắc p nào

đó trong G thì ta nói quy tắc p được áp dụng ở bước thứ i

Trang 10

Định nghĩa 1.3Cho văn phạm phi ngữ cảnh G = <,,S,P> Từ ω*được gọi là sinh bởi văn phạm phi ngữ cảnh G nếu tồn tại suy dẫn S╞ ω.Ngôn ngữ sinh bởi văn phạm G, ký hiệu L(G), là tập hợp tất cả các từ sinh bởivăn phạm G:

L(G) = {ω* | S ╞Gω}

Định nghĩa 1.4Hai văn phạm G1 = <1, 1,S1,P1> và G2=<2,2,S2,P2>được gọi là tương đương nếu L(G1) = L(G2)

Ví dụ 1.3Xét văn phạm G = <{a,b}, {S}, S, S→aSb, S→ab>

Bằng cách áp dụng quy tắc sinh thứ nhất n-1 lần và quy tắc sinh thứ hai

1 lần, ta có: S ├ aSb ╞ aaSbb ╞ a3Sb3╞ ╞ an-1bn-1╞ anbnVậy L(G) chứacác chuỗi có dạng anbn, hay L(G) = {anbn |n > 1}

1.1.3 Cây suy dẫn đầy đủ trong văn phạm phi ngữ cảnh

Định nghĩa 1.4Cho văn phạm phi ngữ cảnh G= <, , S, P> Cây suydẫn đầy đủ trong văn phạm G là một đồ thị hữu hạn có hướng, không có chutrình và thỏa mãn bốn điều kiện sau:

1 Mỗi đỉnh của cây được gán một nhãn là các ký hiệu trong tập

{ε} Gốc của cây được gán nhãn là S

2 Mỗi đỉnh trong được gán nhãn là một ký hiệu nào đó trong 

3 Mỗi đỉnh ngoài (lá của cây) được gán nhãn là một ký hiệu trong tập 

4 Nếu đỉnh m được gán nhãn là A , còn các đỉnh n1,n2, , nklà cáccon của đỉnh m theo thứ tự từ trái sang phải và được gán nhãn B1,B2, , Bk

tương ứng thì A→B1B2 Bk là một quy tắc trong P của văn phạm G

Nếu đọc tất cả nhãn ở các lá theo thứ tự từ trái sang phải, ta sẽ nhận đượcmột từ nào đó Từ đó sẽ là một phần tử trong L(G) và được gọi là kết quả củacây suy dẫn trong G

Ví dụ 1.4Cho văn phạm phi ngữ cảnh:

Trang 11

G1=<{a,b,c,+,*,(,)},{S,A},S,{S→S+S | A*A|a|b|c,A→(S+S)|a|b|c}> Câysuy dẫn của từ b+(a+c)*b trong G1là:

Hình 1.1Cây suy dẫn của từ ω = b+(a+c)*b trong G11.1.4 Quanhệ giữa dẫn xuất và cây suy dẫn

Định lý 1.1 Cho G= <,,S,P> là văn phạm phi ngữ cảnh và ω*\{ε}.Khi đó ω L(G) khi và chỉ khi tồn tại một cây suy dẫn đầy đủ trong Gcókết quả là ω

Chứng minh:Do ω ≠ε nên ta có thể giả thiết rằng S→εP Bây giờ vớimọi A,đặt GA = <, ,S,P>,ta có GA là văn phạm phi ngữ cảnh Ta sẽchứng tỏ rằng ω L(GA) khi và chỉ khi tồn tại một cây suy dẫn trong GA cókết quả là ω

Giả sử ω là kết quả của một cây suy dẫn trong GA và n là số ký hiệukhông kếtthúc trong cây Bằng quy nạp theo n, ta sẽ chỉ ra rằngω L(GA).Nếu tổng số ký hiệu không kết thúc trong cây là 1, ký hiệu phải là A và

là gốc của cây, do đó các con của A phải là các đỉnh được gán bởi các ký hiệukết thúc, chẳng hạn b1,b2, , bk Theo định nghĩa của cây suy dẫn, ta cóA→b1b2 bk hay A╞ ω

Trang 12

Giả sử mệnh đề đúng với mọi cây suy dẫn có số ký hiệu không kết thúc

là n-1 Xét một cây suy dẫn trong GA có kết quả là ω và trong cây có n kýhiệu không kết thúc Gọi các con của A theo thứ tự từ trái sang phải là B1, B2, ,Bk Nếu các đỉnh này đều là lá thì cây gốc A chỉ có một đỉnh có ký hiệukhông kết thúc Giả sử trong các đỉnh này có các đỉnh trong là C1, C2, , Cm.Xét các cây con mà gốc của nó là C1, C2, , Cm Gọi αi là kết quả của cây suydẫn gốc Ci Theo giả thiết quy nạp, αi L(GA) Vì tập các quy tắc trong GA

chứa trong tập các quy tắc trong GA nên ta có các suy dẫn trong GA là C1╞α1,

C2╞ α2, ,Cm╞ αm Sử dụng các suy dẫn này và quy tắc A→B1B2 Bk, tanhận được:

A╞ B1B2 Bk ╞ ω1C1ω2C2 ωmCmωm+1╞ ╞ ω1α1ω2α2 ωmαmωm+1

Do kết quả của cây suy dẫn trong GA là ω nên ω=ω1α1ω2α2 ωmαmωm+1

hay ωLG(A)

Đảo lại ta cần chứng minh rằng nếu có suy dẫn A╞ ω(ω ≠ ε)trongGA thì

có thể xây dựng một cây suy dẫn trong GA có kết quả là ω Mệnh đề này đượcchứng minh bằng quy nạp theo độ dài của suy dẫn

Trước hết, nếu A╞ ω╞ b1b2 bk (suy dẫn một bước) thì có thể xâydựngmột cây có gốc là A và các con từ trái sang phải lần lượt được gán cácnhãn là b1,b2, , bk

Giả sử mệnh đề đúng với mọi suy dẫn có độ dài không lớn hơn n.Chosuy dẫn trong GA là A = ω có độ dài là n+1 Giả sử quy tắc đầu tiên trong suydẫn này là A→B1B2 Bk và C1, C2, , Cm là các ký hiệu không kết thúc trongcác Bi(1<i<k), có nghĩa là B1B2 Bk = ω1C1ω2C2 ωmCmωm+1, ở đây Ci =

ωicó độ dài không vượt quá n Theo giả thiết quy nạp, tồn tại các cây Ti của

GCi mà kết quả của nó là ai và do đó ta có thể xây dựng trong GA cây suy dẫn

có kết quả làω như sau:

Trang 13

Hình 1.2Cây suy dẫn có kết quả là ω1.1.5 Văn phạm phi ngữ cảnh đa nghĩa

Định nghĩa 1.5Cho văn phạm phi ngữ cảnh G= <, , S, P> Ta nói văn phạm G là nhập nhằng hay đa nghĩa nếu tồn tại một xâu ω là kết quả của hai cây suy dẫn khác nhau trong G

Trong trường hợp ngược lại, ta nói G là không nhập nhằng hay đơnnghĩa

Một văn phạm phi ngữ cảnh được gọi là nhập nhằng vĩnh cửu nếu khôngtồn tại văn phạm phi ngữ cảnh đơn nghĩa nào tương đương với nó

Ngôn ngữ do văn phạm G sinh ra gọi là ngôn ngữ nhập nhằng nếu G làvăn phạm nhập nhằng

Ví dụ 1.5Văn phạm phi ngữ cảnh sau là nhập nhằng:

G = <{a, b, +, *}, {S}, S, {S→S+S, S→S*S, S→a, S→b}>

vì xâu ω = b+a*b+a có hai suy dẫn trái khác nhau trong G được chotrong hình 1.3:

Trang 14

Hình 1.3Hai cây suy dẫn khác nhau cho từω = b+a*b+aCùng với văn phạm G ở trên, văn phạm

G’ = <{a, b, +, *}, {S, A}, S, {S→A, S→A+S, A→A*A, A→a, A→b}>

là đơn nghĩa và L(G’) = L(G)

1.1.6 Rút gọn các văn phạm phi ngữ cảnh

Trong một văn phạm phi ngữ cảnh có thể có nhiều yếu tố thừa, chẳnghạn cónhững ký hiệu không hề tham gia vào quá trình sinh các ngôn ngữ,hoặc có những quy tắc dạng A→B chỉ làm mất thời gian trong quá trình hìnhthành các xâu của ngôn ngữ Vì lẽ đó cần loại bỏ những yếu tố dư thừa không

có ích trong việc sinh ngôn ngữ, sao cho việc loại bỏ đó không làm ảnh hưởngtới quá trình sinh ngôn ngữ Điều đó có nghĩa là chỉ cần giữ lại các ký hiệu vàcác quy tắc có ích trong văn phạm G mà chúng thực sự là cần thiết trong quátrình sinh ngôn ngữ mà thôi

Rút gọn các ký hiệu thừa trong văn phạm phi ngữ cảnh

Định nghĩa 1.6Cho văn phạm phi ngữ cảnh G= <, , S, P> X được gọi

là ký hiệu có ích nếu tồn tại suy dẫn S ╞ αXβ╞ ω, trong đó α, β()*,

X và ω*

Nếu ký hiệu X không thỏa mãn điều kiện trên thì X được gọi là ký hiệuthừa

Trang 15

Như vậy X là ký hiệu thừa nếu:

1/ Từ X không thể dẫn ra một xâu ω* Ký hiệu X có tính chất nhưthế được gọi là ký hiệu vô sinh

2/ Từ ký hiệu xuất phát S không thể dẫn được một xâu nào có chứa kýhiệu X Khi đó ta nói ký hiệu X là ký hiệu không đến được

Như vậy một ký hiệu là thừa nếu nó hoạc là ký hiệu vô sinh hoạc là kýhiệu không đến được

Bổ đề 1.1(Loại ký hiệu vô sinh) Cho văn phạm phi ngữ cảnhG=<,,S,P> với L(G)   Khi đó tồn tại văn phạm phi ngữ cảnh

G’=<, ’, S, P’> tương đương với G sao cho mọi A ’có một xâu

ω* để A╞ ω

Chứng minh: Từ tập quy tắc P của G, ta xây dựng  ’ như sau:

+ Nếu trong P có quy tắc dạng A→ω với A , ω* thì kết nạp A vào

Trang 16

+ Nếu A→X1 X2 Xk là quy tắc trong P mà Xihoặc Xi là biến đãđược kết nạp vào ’ thì ta kết nạp A vào ’

Cứ tiếp tục xét các quy tắc trong P, ta sẽ xây dựng các ký hiệu cho tập

’ Vì P là hữu hạn nên quá trình sẽ được dừng lại sau một số hữu hạn bước.Khi đó ta xây dựng được tập ’

Ta xây dựng tiếp cận quy tắc P’ gồm các quy tắc trong P mà các ký hiệu

có mặt trong đó đều thuộc tập ’

Bổ đề 1.2(Loại ký hiệu không đến được) Cho văn phạm phi ngữcảnhG=<,,S,P> Khi đó tồn tại văn phạm phi ngữ cảnhG’=<’,’,S,P’>tương đương với G sao cho mọi X '' cóα,β(’)* để cho S╞αXβ

Chứng minh: Xây dựng tập ’ và ’ như sau:

Trang 17

Đưa ký hiệu S vào ’ Nếu một ký hiệu A đã được kết nạp vào ’ vàA→α, ở đây α (’’)* thì ta kết nạp các ký hiệu phụ trong α vào ’,

còn các ký hiệu kết thúc trong α thì kết nạp vào ’

Thủ tục kết nạp trên sẽ ngừng khi không còn bổ sung thêm được bất kỳ

ký hiệu nào nữa vào các tập ’ và ’

Tập quy tắc P’ được xây dựng như sau:

P’ bao gồm mọi quy tắc trong P mà chứa các ký hiệu thuộc tập ’’.Với cách xây dựng đó, ta có L(G) = L(G’), trong đó G’ chỉ gồm các ký hiệuđến được

Định lý 1.2Mọi ngôn ngữ phi ngữ cảnh khác rỗng đều có thể đượcsinh ra từ một văn phạm phi ngữ cảnh không có ký hiệu thừa

Chứng minh: Đặt L = L(G) là ngôn ngữ phi ngữ cảnh không rỗng

ĐặtG1 là kết quả của việc áp dụng bổ đề 1.1 vào G và G2 là kết quả củaviệc áp dụng bổ đề 1.2 vào G1

Giả sử G2 có ký hiệu vô ích X Theo bổ đề 1.2 ta có S╞G2 αXβ Vì tất

cả các ký hiệu trong G2 đều có trong G1 nên theo bổ đề 1.1:S╞G1 αXβ╞G1ωvới ω là chuỗi ký hiệu kết thúc Vì vậy không có ký hiệu nào trong dẫn xuấtαXβ╞G1ω bị loại bởi bổ đề 1.2 Vậy X dẫn ra ký hiệu kết thúc trong G2 Suy

ra X là ký hiệu có ích (mâu thuẫn) Vậy văn phạm phi ngữ cảnh G2 không có

ký hiệu thừa nào

Rút gọn các quy tắc thừa trong văn phạm phi ngữ cảnh

Định nghĩa 1.7Cho văn phạm phi ngữ cảnh G = <,,S,P> Quy tắctrong P có dạng A→B, ở đây A, B, được gọi là quy tắc đơn hay phép đổitên

Quy tắc đơn có tác dụng làm kéo dài quá trình sinh ra ngôn ngữ, vì vậy

ta sẽ tìm cách loại quy tắc đơn mà không làm ảnh hưởng tới quá trình sinh rangôn ngữ của văn phạm đã cho

Trang 18

Định lý 1.3Đối với mọi phạm phi ngữ cảnh mà trong tâp các quytắc của nó có quy tắc đơn thì tồn tại một văn phạm phi ngữ cảnh tươngđương với nó mà trong tâp cácquy tắccủa nó không chứa quy tắc đơn.Chứng minh: Giả sử G = <,,S,P> là văn phạm phi ngữ cảnh có chứaquy tắc đơn (và không chứa ký hiệu thừa) Ta xây dựng văn phạm phi ngữcảnh G’=<,,S,P’> tương đương với G và không chứa quy tắc đơn.

Đưa tất cả các quy tắc không đơn của P vào P’ Nếu trong P có quy tắcA→B, với A, B , thì tồn tại suy dẫn S╞ αAβ╞ αBβ╞ αωβ, ở đây α,β()*, ω* do  gồm các ký hiệu không thừa

Vậy thay cho A→B, ta đưa vào P’ quy tắc S→ αAβ và A→ω đều là cácquy tắc không đơn nhưng chức năng sinh ngôn ngữ tương đương với quy tắcA→B

Ví dụ 1.6Văn phạm phi ngữ cảnh

G = <{a,+,*}, {S,A,B}, S, {S→S+A, S→A, A→A*B, S→a, A→B,B→a}> tương đương với văn phạm phi ngữ cảnh sau không còn cácquy tắc đơn:

G = <{a,+,*}, {S,A,B}, S, {S→S+A, A→A*B, B→a, S→a,S→A*B, A→a, S→a}>

Định nghĩa 1.8Cho văn phạm phi ngữ cảnh G = <, , S, P>, nếu trong

P có quy tắc A→ε, A , thì ta nói G có ε-quy tắc

Nếu L(G) không chứa từ rỗng ε thì có thể loại hết các ε -quy tắc trong P

để được một văn phạm mới tương đương với G; còn nếu trong L(G) có chứa

từ rỗng ε, thì không thể loại hết các ε -quy tắc khỏi G (ít nhất trong G phảichứa quy tắc S→ε)

Các ε -quy tắc cũng làm văn phạm phi ngữ cảnh trở nên cồng kềnh, thiếuchính xác Định lí dưới đây cho phép loại bỏ các ε -quy tắc trong văn phạmphi ngữ cảnh để được một văn phạm mới tương đương, chỉ sai khác một từ

Trang 19

Định lý 1.4Cho văn phạm phi ngữ cảnh G = <, , S, P>, giả sử L=L(G) khi đó tồn tại một văn phạm phi ngữ cảnh G’ = <’,’, S, P’>không chứa các ε-quy tắc sao cho L(G’) = L(G)\ {ε}

Chứng minh: Theo định lý 1.2, ta luôn giả thiết văn phạm G là khôngchứa các ký hiệu thừa Ta sẽ xây dựng G’ không chứa các quy tắc rỗng theocác bước sau:

1/ Tìm tất cả các ký hiệu triệt tiêu (nullable symbol) theo thủ tục:

 Nếu B→ε P thì A là ký hiệu triệt tiêu

Nếu B→α  P mà a là một xâu gồm toàn ký hiệu triệt tiêu thì B là kýhiệu triệt tiêu

Lặp lại các bước trên cho đến khi không tìm thêm được ký hiệu triệttiêu nào nữa

2/ Xây dựng tập quy tắc P’

 Loại tất cả các quy tắc rỗng trong P (có dạng A→ε)

Tập quy tắc mới P’ được xác định như sau: Nếu A→X1X2 Xn P,

Xi()*, thì đưa vào P’ tất cả các quy tắc dạng A→ α1α2 αnsao cho:

a/ Nếu Xi không phải ký hiệu triệt tiêu thì αi = Xi, (giữ nguyên Xi)

b/ Với các Xi là ký hiệu triệt tiêu thì mỗi lần thay một tập con của các

ký hiệu triệt tiêu này bởi các ký hiệu rỗng ε để được một quy tắc mới

c/ Không thay tất cả các αi bởi các ký hiệu rỗng, dù mọi Xi đều là kýhiệu triệt tiêu

Ví dụ 1.7 Cho văn phạm phi ngữ cảnh G = <{a, b}, {I, A, B}, I, P>vớitập quy tắc P = {I→AB, A→aA, A→ε, B→bB, B→ε} Hãy xây dựngvăn phạm G’ không có các ε-quy tắc, không có các ký hiệu thừa, sao choL(G’) = L(G) \{ε}

+ Dễ thấy G là không có các ký hiệu thừa

Trang 20

+ Cácký hiệu triệt tiêu là A và B.

+ Tậpquy tắc P’ = {I→AB, I→A, I→B, A→aA, A→a,B→bB,B→b} Vậy ta có G’ = <{a, b}, {I, A, B}, I, P’> là văn phạm không chứa các ε-quy tắc

Ví dụ 1.8 Văn phạm phi ngữ cảnh G1 =<{a, b, d}, {S, A, B, C, D},S,P1>với tập quy tắc P1 = {S→ABaC, A→BC, B→b | ε, C→D | ε, D→a}.Xâydựng văn phạm G1 ’ không có các ε-quy tắc sao cho L(G1) = L(G1) \ {ε}.+ Cácký hiệu triệt tiêu là A, B, C

+ Tậpquy tắc P1’ = {S→AbaC | BaC | AaC | ABa | aC | Aa|Ba|a,

Như vậy, có thể nhận xét rằng các văn phạm dạng chuẩn Chomsky sẽkhông có các quy tắc thuộc các loại sau:

a/ Các ε-quy tắc (các quy tắc rỗng)

b/ Các quy tắc đơn, dạng A→B, A, B 

c/ Các quy tắc mà vế phải có cả ký hiệu chính và ký hiệu phụ

d/ Các quy tắc có vế phải nhiều hơn hai ký hiệu

Đưa văn phạm phi ngữ cảnh về dạng chuẩn Chomsky

Định lý 1.5Đối với văn phạm phi ngữ cảnh tùy ý G = <, , S, P>, luôntồn tại một văn phạm phi ngữ cảnh ở dạng chuẩn Chomsky G’ = <, ', S,P’> tương đương với nó, tức là L(G) = L(G’)

Trang 21

Chứng minh:Theo các định lý 1.2, 1.3 và 1.4 phần trên, ta có thể giảthiết văn phạm G không chứa các ký hiệu thừa, không chứa các ε-quy tắc vàkhông chứa các quy tắc đơn Để xây dựng văn phạm mới G’ ở dạng chuẩnChomsky, ta chỉ cần loại bỏ các quy tắc mà vế phải có chứa cả ký hiệu chính

và ký hiệu phụ hoặc các quy tắc mà vế phải nhiều hơn hai ký hiệu Việc loại

bỏ các quy tắc không hợp lệ này tiến hành theo hai bước sau:

Bước 1: Với các quy tắc vế phải có chứa cả ký hiệu chính và ký hiệuphụ, tức là các quy tắc có dạng A→X1X2 Xm, với Xi.(1)

Xét tất cả các Xi trong quy tắc (1), nếu Xi thì giữ nguyên Xi, nếu Xi=

a , ta thêm vào ký hiệu phụ Aa, thay Xi trong quy tắc (1) bởi Aa,và thêmvào quy tắc Aa→a Lặp lại quá trình trên với tất cả các Xi trong quy tắc (1),quy tắc (1) trở thành: A→Y1Y2 Ym, với Yi là các ký hiệu phụ (Yi = Xi nếu

Xi , Yi = Ai nếu Xi = a )

Sau bước 1, ta nhận được văn phạm G1 = <, A1, S, P1> với 1 và P1

nhận được từ  và P sau khi thêm vào các ký hiệu phụ mới và các quy tắc mớinhư trên Rõ ràng L(G1) = L(G) mà G1 không chứa các quy tắc mà vế phải có

cả ký hiệu chính và ký hiệu phụ

Bước 2: Bây giờ trong G1 cần loại bỏ các quy tắc mà vế phải có độ dàilớn hơn 2, gồm toàn ký hiệu phụ, là các quy tắc dạng: A→Y1Y2 Ymvớim>2, Y 1

Ta thêm m-2 ký hiệu phụ Z1, Z2, , Zm-2 vào tập 1 và thêm vào m-2 quytắc sau đây:

AY1Z1 ; Z1Y2Z2; Y2Y3Z3 ; ; Zm-2Ym-1Zm.

Ta nhận được văn phạm mới G2 = <, 2, S, P2> không chứa các quy tắc

có vế phải nhiều hơn 2 ký hiệu, không chứa các quy tắc vế phải gồm cả kýhiệu chính và ký hiệu phụ Dễ dàng chỉ ra rằng L(G2) = L(G1) = L(G), vậy G2

Trang 22

chính là văn phạm G’ ở dạng chuẩn Chomsky cần tìm.

Ví dụ 1.9Cho văn phạm phi ngữ cảnh G = <{a,b},{S,A,B},S,P>,với tập quy tắc P = {S→A, S→ABA, A→aA, A→aA, A→a, A→B,B→bB, B→b} Hãy xây dựng văn phạm ở dạng chuẩn Chomsky tươngđương với G

Giải: Áp dụng định lý 1.3, ta có thể loại hết các quy tắc đơn trong G, đểđược văn phạm tương đương mà không chứa quy tắc đơn G1

=<{a,b},{S,A,B},S,P1>, với P1 = {S→ABA, S→aA, S→a, S→bB, S→b,A→aA, A→a, A→bB, A→b, B→bB, B→b}

Bây giờ ta thay tất cả các quy tắc mà vế phải có chứa cả ký hiệu chính và

Ta nhận được G2 = <{a, b},{S, A, B, Aa, Ab}, S, P2>, với

P2 ={S→ABA, S→AaA, S→a, S→AbB, S→b, A→AaA,A→a,A→AbB, A→b, B→AbB, B→b} không có quy tắc nào mà vế phải có

cả ký hiệu chính và ký hiệu phụ, và rõ ràng G2 ~ G1 ~ G

+ Với G2, ta giảm độ dài vế phải các quy tắc có hơn hai ký hiệu: thayquy tắc S→ABA bởi hai quy tắc S→AC, C→BA, và thêm C vào tập ký hiệuphụ Cuối cùng, ta được văn phạm G3 = <{a, b},{S, A, B, Sa, Ab,C}, S, P3>với P3 = {S→AC, C→BA, S→Aaa, S→a, S→AbB, S→b, A→AaA, A→a,A→AbB, A→b, B→AbB, B→b}

Văn phạm G3 ~ G2 ~ G1 ~ G, mà G3 ở dạng chuẩn Chomsky

1.2.2 Dạng chuẩn Greibach

Một dạng chuẩn khác của văn phạm phi ngữ cảnh là dạng chuẩn

Trang 23

Greibach cũng được sử dụng nhiều trong các chứng minh hay thiết kế các vănphạm.

Định nghĩa 1.10 Văn phạm phi ngữ cảnh G = <, , S, P> được gọi làvăn phạm dạng chuẩn Greibach, nếu mọi quy tắc đều có dạng A→aa với a

, α*,và S→ε nếu ε L(G) Khi εL(G) thì S không xuất hiện ở vế phảicủa mọi quy tắc

Trong dạng chuẩn Greibach, vế phải của mọi quy tắc đều bắt đầu bằngmột ký hiệu kết thúc:

Ví dụ 1.10Văn phạm G có các quy tắc S→aAB, S→ε, A→bC,B→b, C→c là văn phạm ở dạng chuẩn Greibach

Đưa văn phạm phi ngữ cảnh về dạng chuẩn Greibach

Trước hết ta xét hai bổ đề hỗ trợ sau

Bổ đề 1.3 Giả sử G = <, , S, P > là văn phạm phi ngữ cảnh Cho trướcA→Bγ là A-quy tắc trong P và B→β1 | β2 | | βk Văn phạm G1 = <, , S,

P1> thu được từ G bằng cách loại bỏ quy tắc A→ Bγ và thêm vào quy tắcA→ βiγ (1 <i<k) thì L(G) = L(G1)

Chứng minh: Nếu áp dụng A→ βγ trong suy dẫn để ω L(G) thì chúng

ta sẽ phải sử dụng B→Bi với i nào đó ở bước tiếp theo Vây A ╞G βiγ Kếtquả của việc sử dụng A→Bγ và loại bỏ B khỏi P trong G thì hoàn toàn tươngđương với việc sử dụng A→ βiγ trong G1 Do vậy L(G1) = L(G)

Bổ đề 1.4 G = <, , S, P> là văn phạm phi ngữ cảnh Giả sử tập các dẫn xuất là A→Aα1 | Aα2 | Aαn | β1 | β2 | | βm trong đó βi không bắt đầubằng A

A-G’ = <, {Z}, S, P1> với P1 được xác định như sau:

1) Tập các A-dẫn xuất trong P1 là A→ β1 | β2 | | βm và A→ β1Z| β2Z|

| βmZ

2) Tập các Z-dẫn xuất trong P1 là Z→α1 | α2 | αn và Z→α1Z | α2Z | |

Ngày đăng: 13/08/2020, 16:10

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Nguyễn Văn Ba (2002),Ngôn ngữ hình thức, NXB Khoa học và Kỹ thuật, Hà Nội Sách, tạp chí
Tiêu đề: Ngôn ngữ hình thức
Tác giả: Nguyễn Văn Ba
Nhà XB: NXB Khoa học và Kỹ thuật
Năm: 2002
2. Đoàn Văn Ban (2003), Giáo trình Ôtômát và Ngôn ngữ hình thức, NXB Đại học Quốc gia Hà Nội Sách, tạp chí
Tiêu đề: Giáo trình Ôtômát và Ngôn ngữ hình thức
Tác giả: Đoàn Văn Ban
Nhà XB: NXB Đại học Quốc gia Hà Nội
Năm: 2003
3. Nguyễn Văn Định (2012), Giáo trình Otomat và Ngôn ngữ hình thức, NXB Đại học Nông nghiệp Sách, tạp chí
Tiêu đề: Giáo trình Otomat và Ngôn ngữ hình thức
Tác giả: Nguyễn Văn Định
Nhà XB: NXB Đại học Nông nghiệp
Năm: 2012
4. Đặng Huy Ruận (2002),Lý thuyết ngôn ngữ hình thức và Otomat, NXB Đại học Quốc gia Hà Nội.Tài liệu tiếng Anh Sách, tạp chí
Tiêu đề: Lý thuyết ngôn ngữ hình thức và Otomat
Tác giả: Đặng Huy Ruận
Nhà XB: NXB Đại học Quốc gia Hà Nội
Năm: 2002
5. J.E. Hopcroft, J.D.Ullman (1979), Introduction to Automata Theory, Languages and Computation, Addison-Wesley, Reading Sách, tạp chí
Tiêu đề: Introduction to Automata Theory, Languages and Computation
Tác giả: J.E. Hopcroft, J.D. Ullman
Nhà XB: Addison-Wesley
Năm: 1979
6. J.E.Hopcropft,R. Motwani, J.D. Ullman (2001), Introduction to Automata Theory, Languages, and Computation (2 nd Edition), Addison- Wesley Sách, tạp chí
Tiêu đề: Introduction to Automata Theory, Languages, and Computation
Tác giả: J.E. Hopcroft, R. Motwani, J.D. Ullman
Nhà XB: Addison-Wesley
Năm: 2001

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w