Dạng chuẩn Chomsky

Một phần của tài liệu BÁO CÁO THỰC TẬP-NGÔN NGỮ VÀ BIỂU DIỄN NGÔN NGỮ (Trang 29)

Định lý 4. (Dạng chuẩn Chomsky): Mọi NNPNC không chứa ε đều có thể sinh từ

một văn phạm trong đó mọi sản xuất đều có dạng A → BC hoặc A → α, với A, B, C là biến và α là một ký hiệu kết thúc.

Chứng minh:

Cho NNPNC L. Theo định lý 3, ta có thể tìm được một văn phạm G1 = (Σ, Δ, P, S) không có sản xuất đơn hoặc ε- sản xuất và L = L(G1). Như thế, trong P nếu một sản xuất có vế phải là một ký hiệu duy nhất, thì ký hiệu đó phải là ký hiệu cuối và sản xuất đó đã ở dạng cần có rồi.

Vậy, ta xét một sản xuất trong P có dạng A → X1X2…Xm với m 2. Nếu Xi là một ký hiệu cuối α, ta đưa thêm một biến mới Ca và một sản xuất mới Ca → α, sản xuất này đã ở dạng quy định. Sau đó thay Xi bởi Ca trong sản xuất trên.

Như thế ta đã có một tập các ký hiệu không cuối mới Δ’ và một và một tập các sản xuất mới P’. Văn phạm G2 = (Σ, Δ’, P’, S) chưa hẳn là đã ở dạng chuẩn Chomsky, song các sản xuất của nó đã ở dạng A → α hoặc ở dạng A → B1B2…Bm với m2 và BiΔ’ (1im). Ta chứng minh được rằng G2 tương đương với G1(L(G2) = L(G1)). Bây giờ chúng ta sẽ biến đổi G2 về dạng chuẩn Chomsky:

Cứ với mỗi sản xuất A → B1B2…Bm trong P’ với m3 (chưa ở dạng cần có), ta đưa thêm các biến mới D1, D2, … Dm-2 và thay sản xuất trên bởi tập các sản xuất:

{A → B1D1, D1 → B2D2, …, Dm- 3 → Bm-2Dm-2, Dm-2 → Bm-1Bm}.

Qua đó, ta thu được tập các biến mới Δ” và một tập các sản xuất mới P”. Cho G3 = (Σ, Δ”, P”, S), G3 là VPPNC và ở dạng chuẩn Chomsky và ta cũng chứng minh được L(G2) = L(G3).

Ví dụ 1: Tìm dạng chuẩn Chomsky cho văn phạm ({a, b}, {S, A, B}, P, S} với P gồm các

sản xuất:

S → bA | aB A → bAA | aS | a B → aBB | bS | b

Các sản xuất đã cho ở dạng chấp nhận là: A → a, B → b. Không có các sản xuất đơn, vậy ta có thể bắt đầu thay thế các ký hiệu cuối ở các vế phải bởi các biến mới (trừ trong A → a và B → b).

S → bA được thay bởi S → CbA và Cb → b

A → aS A → CaS và Ca → a

A → bAA A → CbAA

S → aB S → CaB

B → bS B → CbS

B → aBB B → CaBB

A → CbAA A → CbD1 và D1 → AA B → CaBB B → CaD2 và D2 → BB Vậy, các sản xuất trong văn phạm ở dạng chuẩn Chomsky là:

S → CbA | CaB | D1 → AA Ca → a A → CaS | CbD1 | a D2 → BB Cb → b B → CbS | CaD2 | b

Ví dụ 2: Tìm văn phạm có dạng chuẩn Chomsky tương đương văn phạm sau :

S → A | ABA A → aA | a | B B → bB | b

Đầu tiên thay thế các sản xuất có độ dài vế phải = 1 (sản xuất đơn) Gọi tập Δ

A = {B | A *

B }, xét các biến trong văn phạm, ta có : Δ

S = { S, A, B } Δ

A = { A, B} Δ Δ

B = { B }

Vậy tập sản xuất mới, theo định lý sẽ chứa các sản xuất không là sản xuất đơn trong P, bổ sung thêm các sản xuất mới thay cho sản xuất đơn như sau :

S → aA | a | bB | b | ABA A → aA | a | bB | b

B → bB | b

Thay thế các luật sinh có chứa ký hiệu kết thúc ở các vế phải. Ta thấy, a và b đều xuất hiện ở vế phải một số sản xuất, do đó ta tạo thêm 2 biến mới Ca, Cbvà 2 sản xuất mới Ca→ a và Cb→ b.

Văn phạm tương đương có tập sản xuất như sau :

S → CaA | a | CbB | b | ABA A → CaA | a | CbB | b B → CbB | b Ca→ a Cb→ b

Cuối cùng, chỉ còn duy nhất một sản xuất cần xét ở bước này : S → ABA và tập sản xuất mới được thay thế có dạng như sau :

S→ CaA | a | CbB| b | AD1 A → CaA | a | CbB| b

B → CbB| b Ca→ a

Cb → b D1 → BA

Một phần của tài liệu BÁO CÁO THỰC TẬP-NGÔN NGỮ VÀ BIỂU DIỄN NGÔN NGỮ (Trang 29)

Tải bản đầy đủ (PDF)

(41 trang)