1. Trang chủ
  2. » Giáo án - Bài giảng

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

34 1,5K 9

Đ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 34
Dung lượng 230,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

Gốc cây con có nhãn là A ta gọi cây con đó là A-cây  Biên kết quả của một cây suy dẫn hay của một A-cây là xâu tạo thành bằng cách ghép tiếp các lá của cây theo trật tự từ>| trái qua

Trang 1

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

Trang 3

Suy dẫn phi ngữ cảnh

Văn phạm phi ngữ cảnh: là văn phạm trong đó

các sản xuất có dạng:

A với A;  ()*

Suy dẫn phi ngữ cảnh: tại mỗi bước chỉ áp

dụng sản xuất phi ngữ cảnh

Trang 5

<danh từ>|<đại từ>>bò|mèo|…

<đại từ>|<đại từ>>tôi|nó|…

<động từ>|<đại từ>>ăn|nằm|…

 Kí hiệu không kết thúc: <câu>, <chủ ngữ>, <vị ngữ>, <danh từ>|<đại từ>>,

<đại từ>|<đại từ>>, <động từ>|<đại từ>>

 Kí hiệu kết thúc: “bò”, “mèo”, “tôi”, “nó”, “ăn”, “nằm”… là các từ>|<đại từ> tiếng Việt

Trang 6

Suy dẫn phi ngữ cảnh

Định lý III.1 (định lý phân dã suy dẫn)

Cho G=(, , P, S) là văn phạm phi ngữ cảnh, đặt V=  Nếu trong G có suy dẫn u1u2…un=>kG v trong đó ui, vV* thì tồn tại viV*và kiN (i=1, 2,…, n) sao cho:

Trang 7

Cây suy dẫn và sự nhập nhằng

Định nghĩa cây suy dẫn:

Trong văn phạm phi ngữ cảnh G=(,,P,S), Cây suy dẫn là cây mà mỗi đỉnh được gắn một nhãn là một phần tử thuộc tập {} và thỏa các điều kiện:

i Nhãn của gốc là kí hiệu đầu S.

ii Nhãn của mỗi đỉnh trong là kí hiệu không kết thúc Nhãn của mỗi lá là kí hiệu kết thúc hoặc .

iii Với mỗi đỉnh trong có nhãn A và các con có nhãn là X1, X2

…Xk thì A X1X2Xk là một sản xuất trong G.

iv Nếu một lá có nhãn là  thì lá đó là con duy nhất của cha nó

Trang 8

Cây suy dẫn (tiếp)

Cây con là một cây tạo thành bởi một đỉnh và mọi hậu duệ

của nó cùng với các nhãn và cung liên kết chúng Gốc cây con có nhãn là A ta gọi cây con đó là A-cây

Biên (kết quả) của một cây suy dẫn hay của một A-cây là

xâu tạo thành bằng cách ghép tiếp các lá của cây theo trật

tự từ>|<đại từ> trái qua phải ta được một câu gọi là kết quả.

Trang 9

2 5 9

4

11

S A

b b

a S a

S A

a a

Trang 10

Cây suy dẫn (tiếp)

Định lý III.2:

Cho G là văn phạm phi ngữ cảnh có một xâu w

cây suy dẫn của văn phạm đó mà biên của nó là w.

Trang 11

Suy dẫn trái và suy dẫn phải

Suy dẫn trái: là suy dẫn mà trong đó, ở mỗi

bước, kí hiệu được thay thế luôn luôn là kí hiệu không kết thúc nằm bên trái nhất trong dạng câu.

Suy dẫn phải:là suy dẫn mà trong đó, ở mỗi

bước, kí hiệu được thay thế luôn luôn là kí hiệu không kết thúc nằm bên phải nhất trong dạng

câu.

Trang 12

Suy dẫn trái và suy dẫn phải (tiếp)

Ví dụ: Cho văn phạm G với các sản xuất:

S AB

A  aA|a

B  bB|b Các dẫn xuất khác nhau cho từ>|<đại từ> aaabb:

1 S =>AB => aAB => aaAB => aaaB => aaabB => aaabb

2 S => AB => AbB => Abb => aAbb => aaAbb => aaabb

3 S => AB => aAB => aAbB => aAbb => aaAbb => aaabb

4 S => AB => aAB => aaAB => aaAbB => aaabB => aaabb

 Dẫn xuất (1) là dẫn xuất trái nhất, (2) là dẫn xuất phải nhất

 Các dẫn xuất tuy khác nhau, nhưng có cùng một cây dẫn

xuất

Trang 13

Văn phạm nhập nhằng

Khái niệm: một văn phạm phi ngữ cảnh G được gọi là

văn phạm nhập nhằng (ambiguity) nếu nó có nhiều hơn một cây dẫn xuất cho cùng một chuỗi w.

Trang 14

Văn phạm nhập nhằng (tiếp)

 Một ngôn ngữ có thể được sinh ra từ>|<đại từ> văn phạm nhập nhằng hoặc văn phạm không nhập nhằng

 Ngôn ngữ được gọi là nhập nhằng (nhập nhằng

cố hữu – không nghiên cứu) nếu mọi văn phạm sinh ra nó đều nhập nhằng

Trang 15

Văn phạm nhập nhằng (tiếp)

Để giản trừ nhập nhằng: ta đưa vào một số kí hiệu kết thúc

phụ và một vài sản xuất trung gian:

 Quy định rằng các phép cộng và nhân luôn được thực

hiện theo thứ tự từ>|<đại từ> trái sang phải (trừ>|<đại từ> khi gặp ngoặc đơn)

Trang 16

Biến đổi văn phạm phi ngữ cảnh

 Loại bỏ các kí hiệu vô ích

 Loại bỏ các sản xuất 

 Loại bỏ các sản xuất đơn

Trang 17

Loại bỏ kí hiệu vô ích

Định nghĩa: Cho văn phạm G=(,,P,S), đặt

V= XV là có ích nếu tồn tại suy dẫn:

Trang 18

Loại bỏ kí hiệu vô sinh

Bổ đề III.1 (Loại bỏ các kí hiệu vô sinh)

Tồn tại một thuật toán cho phép, với mọi văn phạm phi ngữ cảnh

G mà L(G)≠, thành lập một văn phạm phi ngữ cảnh tương

đương G’ chỉ có các kí hiệu hữu sinh

Trang 19

Loại bỏ kí hiệu vô sinh

Ví dụ: Cho G=(, , P, S) trong đó:

 ={a, b}; ={S, A, B, C}

 P={SaA| bAB| abA

AaB| bA| a BaB| bB

CaA| bS| a }

Tìm văn phạm G’ tương đương không còn kí hiệu vô sinh

Trang 20

Loại bỏ kí hiệu vô sinh

Trang 21

Loại bỏ các kí hiệu không đến được

Bổ đề III.2 (Loại bỏ các kí hiệu không đến được)

Tồn tại một thuật toán cho phép với mọi văn phạm phi ngữ cảnh G thành lập một văn phạm phi ngữ cảnh tương đương G’ chỉ có các kí hiệu đến được

Thuật toán:

 Thành lập tập hợp các kí hiệu đến được:

 W0={S}; U0=

 Wi=Wi-1{A| ƎBWi-1, Ǝu1, u2()*: Bu1Au2P}

 Ui=Ui-1 {a| ƎBWi-1, Ǝu1, u2()*: Bu1au2P}

 W=Wi; U= Ui (i≥0)

 Thành lập văn phạm G’=(U, W, P’, S) trong đó:

 P’={AuP|AW và u(U  W)*}

Trang 22

Loại bỏ các kí hiệu không đến được

Ví dụ: Cho G’ ở ví dụ trên, tìm văn phạm G’’ chỉ gồm các

Trang 23

Loại bỏ -sản xuất

-sản xuất:sản xuất:

 -sản xuất là các sản xuất có dạng A

 Khi xâu  thuộc ngôn ngữ thì văn phạm phải chứa ít nhất một -sản xuất (thường là S ), ngoài ra các -sản xuất đều là thừ>|<đại từ>a và có thể loại bỏ

Trang 24

 Loại bỏ tất cả các -sản xuất

Trang 25

Loại bỏ -sản xuất

Ví dụ: Cho văn phạm:

SABC, ABB|, BCC|a, CAA|b

Loại bỏ các -sản xuất của văn phạm trên.

Lời giải:

 E={A, C, B, S}

 Văn phạm G’ tương đương là:

 SABC| AB| BC| AC| A| B| C

 ABB| B

 B CC| C| a

 C AA| A| b

Trang 26

Loại bỏ các sản xuất đơn

Trang 27

Loại bỏ các sản xuất đơn

Định lý III.6

Cho một văn phạm phi ngữ cảnh G=(, , P, S) Ta

có thể thành lập một văn phạm tương đương G’=(, , P’, S) không có các sản xuất đơn.

Thuật toán: Thành lập G’

 Cho R là quan hệ trên  được định nghĩa là:

ARB khi và chỉ khi ABP

 Đặt: P’={A| ƎBP, với   và AR*B}

(R* là bao đóng phản xạ, bắc cầu của R)

Trang 28

Loại bỏ các sản xuất đơn

Trang 29

Loại bỏ các sản xuất đơn

 Ta có: R={(E, T), (T, F)}

R*={(E, E), (T, T), (F, F), (E, T), (T, F), (E, F)}

 Có EE+T mà E+T, có (E, E)R* suy ra có sản xuất:

 Có Fa mà a, có (F,F), (T,F), (E,F) R* suy ra có sản xuất:

Fa và Ta và Ea

Trang 30

Loại bỏ các sản xuất đơn

 Văn phạm tương đương không có sản xuất đơn:

EE+T| T*F| (E)| a TT*F|(E)| a

F(E)|a

Trang 31

Dạng chuẩn Chomsky

Văn phạm phi ngữ cảnh ở dạng chuẩn Chomsky là văn

phạm mà các sản xuất của nó ở một trong hai dạng:

Trang 32

Đưa văn phạm về dạng chuẩn Chomsky

 Nhặt các sản xuất trong P ở dạng chuẩn Chomsky đưa

vào P’

 Các sản xuất còn lại đưa về dạng chuẩn Chomsky:

(1) Nếu có sản xuất AY1Y2…Yk (k>2) thì thay sản xuất đó

bằng hai sản xuất AY1A’ và A’Y2…Yk Lặp lại cho tới khi độ dài vế phải các sản xuất không lớn hơn 2

(2) Nếu có sản xuất mà vế phải độ dài có chứa kí hiệu kết

thúc a, ta thêm một kí hiệu không kết thúc Ca, thay sự xuất hiện của a trong sản xuất bằng Ca và thêm sản xuất Caa

Trang 33

Đưa văn phạm về dạng chuẩn Chomsky

Ví dụ: Đưa văn phạm trên về dạng chuẩn Chomsky

SaAB| BBBAABAB| a

B AS| b

Lời giải:

B1: Các sản xuất đã ở dạng chuẩn Chomsky

AaBAS| bB2: Đưa các sản xuất còn lại về dạng chuẩn Chomsky

SaAB được thay bằng SCAB và CaSCAB được thay bằng SCD và DABSBBBA được thay bằng SBE và EBBAEBBA được thay bằng EBF và FBAABAB được thay bằng ABT và TAB

Trang 34

Đưa văn phạm về dạng chuẩn Chomsky

 Ta thu được văn phạm G’=(, ’, P’, S) trong đó:

’={S, A, B, C, D, E, F, T}

P’={ SCD| BE

Ca DAB EBE FBA ABT| a TAB BAS| b}

Ngày đăng: 28/06/2016, 14:57

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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

w