Về lớp ngôn ngữ lindenmayer suy rộng

35 310 0
Về lớp ngôn ngữ lindenmayer suy rộng

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC VINH PHẠM VĂN AN VỀ LỚP NGÔN NGỮ LINDENMAYER SUY RỘNG LUẬN VĂN THẠC SĨ TOÁN HỌC VINH-2010 2 MỤC LỤC Trang MỞ ĐẦU 2 Chương 1. NGÔN NGỮ LINDENMAYER 4 1.1. Các định nghĩa ………………………………………………… 4 1.2. Hai bài toán thuật toán về hệ thống OL ……………………. 8 Chương 2. NGÔN NGỮ LINDENMAYER SUY RỘNG 15 2.1. Sự phân bậc Chomsky………………………………………… 15 2.2. Toán tử mở rộng………………………………………………… 19 2.3. Sự hạn chế của lan truyền và tất định trên các hệ thống Lindenmayer suy rộng 25 KẾT LUẬN 29 TÀI LIỆU THAM KHẢO 30 3 MỞ ĐẦU Trong thời gian gần đây, lý thuyết ngôn ngữ hình thức phát triển mạnh mẽ, được nhiều tác giả trong và ngoài nước quan tâm nghiên cứu. Cùng với những thành tựu rực rỡ của tin học, lý thuyết ngôn ngữ hình thức đã thu được nhiều thành tựu đáng kể, đặc biệt là trong lĩnh vực ứng dụng các tương đẳng nửa nhóm để khảo sát các cấu trúc đại số của các ngôn ngữ hình thức: Vị nhóm cú pháp, văn phạm, ôtômát và dáng điệu của ngôn ngữ đó. Trong [4], tác giả Nguyễn Thị Lý đã nghiên cứu các lớp ngôn ngữ liên quan đến quá trình phát triển của hệ thực vật, đó là lớp ngôn ngữ Lindenmayer. Sau đó tác giả Lê Thị Diệu Hương đã nghiên cứu trường hợp đặc biệt của lớp ngôn ngữ Lindenmayer, đó là lớp ngôn ngữ Lindenmayer nguyên (xem [5]). Các lớp ngôn ngữ này được gợi ý bởi các tác giả G.T.Herman, G.Rozenberg và A.Lindenmayer qua cuốn sách “Developmental sytems and languages”. Dựa vào cuốn sách trên, chúng tôi nghiên cứu theo hướng mở rộng của lớp ngôn ngữ Lindenmayer. Luận văn gồm hai chương cùng với phần mở đầu, kết luận và danh mục các tài liệu tham khảo. Chương 1. Ngôn ngữ Lindenmayer. Trong chương này chúng tôi nhắc lại những kiến thức cơ bản về ngôn ngữ Lindenmayer, các định nghĩa và hai bài toán thuật toán về hệ thống OL. Chương 2. Ngôn ngữ Lindenmayer suy rộng. Chương này gồm 3 tiết: Tiết 1: Khảo sát sự phân bậc Chomsky. Tiết 2: Trình bày về toán tử mở rộng. Tiết 3: Trình bày về sự hạn chế của lan truyền và tất định trên các hệ thống Lindenmayer suy rộng. 4 Luận văn được hoàn thành với sự giúp đỡ tận tâm, nhiệt tình của thầy giáo PGS.TS Lê Quốc Hán. Nhân dịp này, tác giả xin được bày tỏ lòng biết ơn sâu sắc và kính trọng đến thầy giáo Lê Quốc Hán. Tác giả cũng xin bày tỏ lòng biết ơn đến các thầy giáo, cô giáo trong tổ Đại số đã giúp đỡ động viên, chỉ bảo trong thời gian học tập cũng như trong việc hoàn thành luận văn. Nhân dịp này, tác giả xin gửi lời cảm ơn sâu sắc tới Ban giám hiệu nhà trường, Ban chủ nhiệm Khoa Toán, Khoa Sau đại học và các phòng ban liên quan đã tạo điều kiện giúp đỡ cho tác giả trong thời gian học tập và nghiên cứu tại Trường Đại học Vinh. Luận văn chắc chắn còn nhiều thiếu sót, tác giả rất mong nhận được sự góp ý của các thầy giáo, cô giáo và các bạn. Vinh, tháng 10/2010 Tác giả 5 CHƯƠNG 1 NGÔN NGỮ LINDENMAYER Một cấu trúc toán học bao gồm các quy tắc tương ứng (hàm chuyển trạng thái) mà không có sự tương tác giữa các tế bào, bảng chữ cái của các ký hiệu (tập hợp các ký hiệu trạng thái) và một tiên đề (bắt đầu chuỗi trạng thái) được gọi là hệ thống Lindenmayer không tương tác hoặc ngắn gọn hơn là hệ thống OL. Hệ thống OL lan truyền (các hàm chuyển trạng thái không xoá bỏ) và tất định (các hàm chuyển trạng thái đơn giá trị), được ký hiệu lần lượt là POL và DOL, khi cả hai điều kiện được thoả mãn ta có hệ thống PDOL. 1.1. CÁC ĐỊNH NGHĨA 1.1.1. Định nghĩa. Một lược đồ OL là một cặp S X, P= , trong đó X (bảng chữ cái của S ) là một tập khác rỗng hữu hạn và P (tập các quy tắc thay thế của S ) là tập con khác rỗng hữu hạn của X X , ∗ × sao cho a X, X ∗ ∀ ∈ ∃α ∈ sao cho a, P< α > ∈ . Theo qui ước thông thường của lý thuyết ngôn ngữ hình thức một tương ứng trong P sẽ được viết là: → αa ta sẽ viết là →α P a thay cho “ a, < α > trong P ”. 1.1.2. Định nghĩa. Giả sử S X, P= là một lược đồ OL, 1 m x a .a= , với m 0≥ và j a X∈ với j =1, ., m và giả sử rằng y X . ∗ ∈ Khi đó ta nói x trực tiếp sinh ra y (trong S ), ký hiệu là S x y⇒ khi và chỉ khi 1 m , ., X ∗ ∃α α ∈ sao cho 1 1 m m (a ), .,(a )→ α → α và α α 1 m y = . . Theo định nghĩa này thì Λ trực tiếp sinh ra y khi và chỉ khi y = Λ . 1.1.3. Định nghĩa. Cho lược đồ OL S X, P= , x X ∗ ∈ và n nguyên không âm tùy ý. Chúng ta định nghĩa ngôn ngữ hữu hạn n L (S, x) bằng phép quy nạp theo n: 0 L (S, x) {x}= , n 1 n S L (S, x) {y | z sao cho z L (S, x) vµ z y} + = ∃ ∈ ⇒ . 6 Chúng ta nói rằng x sinh ra y trong S nếu n y L (S, x)∈ với n nào đó. Chú ý: n S x y⇒ ký hiệu cho n y L (S, x)∈ , S x y + ⇒ ký hiệu cho n S n 1 (x y)∃ ≥ ⇒ , S x y ∗ ⇒ ký hiệu cho n S ( n 0) (x y)∃ ≥ ⇒ và nói rằng x sinh ra y. Chúng ta sẽ sử dụng các ký hiệu: ⇒ , n ⇒ , + ⇒ và ∗ ⇒ thay cho: S ⇒ , n S ⇒ , S + ⇒ và S ∗ ⇒ với mọi S đã được cho. Những bổ đề sau đây (đã được chứng minh trong [8]) sẽ được sử dụng nhiều trong các phần tiếp theo. 1.1.4. Bổ đề. Với mọi lược đồ OL: S X, P= , mọi n nguyên không âm, và mọi từ 1 2 1 2 x ,x , y , y vµ z X∈ , nếu: n n n 1 1 2 2 1 2 1 2 x y vµ x y th× x x y y⇒ ⇒ ⇒ . Ngược lại nếu n 1 2 x x z⇒ thì tồn tại các từ 1 2 z , z X ∗ ∈ sao cho = ⇒ ⇒ n n 1 2 1 1 2 2 z z z , x z , x z . 1.1.5. Bổ đề. Cho lược đồ OL: S X, P= , n nguyên không âm tuỳ ý và các từ x, y và z tuỳ ý trong X . ∗ Nếu : n x y⇒ và m y z⇒ thì l x z⇒ , trong đó l = n + m. 1.1.6. Định nghĩa. Một lược đồ OL: S X, P= được gọi là lan truyền nếu trong P không có quy tắc thay thế dạng a → Λ (một quy tắc thay thế dạng a → Λ được gọi là sản phẩm xoá). Trong trường hợp khác S được gọi là không lan truyền. 1.1.7. Định nghĩa. Một lược đồ OL: S X, P= được gọi là tất định nếu với mỗi a X∈ tồn tại duy nhất một α trong X ∗ sao cho P a→α . Trong trường hợp khác S được gọi là không tất định. 1.1.8. Định nghĩa. Một hệ thống OL là một bộ ba: G X, P,= ω , trong đó S X, P= là một lược đồ OL (gọi là sơ đồ của G ) và ω (gọi là tiên đề của 7 G ) là một từ trên X. G được gọi là lan truyền khi và chỉ khi S lan truyền và ω ≠ Λ . G được gọi là tất định khi và chỉ khi S là tất định. Chú ý: Nếu G X, P,= ω là một hệ thống OL và S X, P= thì chúng ta sẽ viết: n G ⇒ , G + ⇒ và G ∗ ⇒ thay cho n S ⇒ , S + ⇒ và S ∗ ⇒ . Chúng ta cũng sẽ dùng các ký hiệu: n L (G, w) thay cho n L (S, w) và n L (G) thay cho n L (S, )ω . 1.1.9. Định nghĩa. Giả sử G X, P,= ω là một hệ thống OL và S X, P .= Ngôn ngữ sinh ra bởi G (hoặc đơn giản ngôn ngữ của G ), ký hiệu: L(G) , được xác định bởi: G L(G) {x | x} ∗ = ω⇒ . 1.1.10. Định nghĩa. Một ngôn ngữ L được gọi là ngôn ngữ OL khi và chỉ khi: L L(G)= với hệ thống Lindenmayer G nào đó. Nếu bổ sung thêm điều kiện G là một lan truyền (hoặc tất định) thì L được gọi là một ngôn ngữ lan truyền (hoặc tất định). Theo chú ý nêu trên chúng ta viết tắt đối với “Ngôn ngữ OL tất định lan truyền” bằng “Ngôn ngữ PDOL”. Lưu ý rằng { }Λ là một ngôn ngữ OL (hơn nữa là một ngôn ngữ DOL) được sinh bởi hệ thống OL bất kỳ nào có tiên đề là Λ . Trong phần tiếp theo chúng ta sẽ giới thiệu một số ví dụ của ngôn ngữ và hệ thống OL và một vài ví dụ về ngôn ngữ mà nó không được sinh ra bởi hệ thống OL. 1.1.11. Ví dụ. Xét hệ thống OL: G {a,b}, a a, a b, a aa, b b= → → → → . Khi đó G là một lan truyền nhưng không tất định. Rõ ràng: a b,⇒ a aa,⇒ aa baa,⇒ aa aab ⇒ và như vậy: a baa, + ⇒ + a aab.⇒ Vì vậy hiển nhiên là: L(G) {a,b} . + = 1.1.12. Ví dụ. Xét hệ thống OL: 3 G {a}, {a a, a a }, a= → → , khi đó G là một lan truyền không tất định. Thật vậy: 3 3 5 a a , a a⇒ ⇒ và do đó: 5 a a + ⇒ . Như vậy: { } 2n 1 L(G) a | n 1 − = ≥ . 8 1.1.13. Ví dụ. Xét hệ thống OL: { } { } 2 G a, b , a (ab) , b ,ab= → → Λ . Khi đó G không lan truyền nhưng tất định. Thật vậy: 2 ab (ab) ,⇒ 2 4 (ab) (ab)⇒ . Điều đó cho thấy rằng: đối với bất kỳ n, { } n 2 n L (G) (ab)= và { } n 2 L(G)= (ab) | n 0≥ . 1.1.14. Ví dụ. Xét hệ thống OL: G = 〈 {S, a, b, c, d, e, f, g, h, i, j, k, m, 0, 1, 2}, { S ab,→ a dg,→ b e0,→ c 22,→ d 0e,→ e cf,→ f lc,→ g hb,→ h di,→ i jk,→ j ml,→ k c0,→ m 0c,→ 0 0,→ 1 1,→ 2 2 → }, S 〉 . Khi đó G vừa là tất định vừa là lan truyền. Có 8 bước suy ra đầu tiên bắt đầu với S như sau: S ab dge0 0ehbcf0 0cfdie0221c0 0221c0ejkcf 0221220⇒ ⇒ ⇒ ⇒ ⇒ 0221220cfm1c0221c0221220 0221220221c0c1220221220221220⇒ ⇒ 0221220221220221220221220221220⇒ . Như vậy L(G) bao gồm 9 danh mục chuỗi ở trên. Lindenmayer (1971) đã đưa ra ví dụ trên như là một sự phát triển của dãy tế bào dọc theo mép của một lá cây. Tương ứng để đánh dấu tế bào xảy ra tại mép lá cây như sau: 0 – các tế bào đánh dấu giữa hai thuỳ. 1 – các tế bào tại đỉnh các thuỳ. 2 – các tế bào không phân chia mọi nơi trên mép lá. Với giả thiết đó, ta có thể hình dung chiếc lá biểu diễn chuỗi cuối cùng như sau: 9 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 0 0 0 0 2 0 0 2 1.1.15. Định lý. Tồn tại ngôn ngữ hữu hạn không phải là ngôn ngữ OL. Chứng minh. Trước tiên ta chứng minh sơ bộ hai kết quả, các kết quả này đúng cho một sơ đồ OL tuỳ ý, S X, P= và một ký hiệu tùy ý a trong X . (i) Nếu 2 a a ∗ ⇒ thì 4 a a . ∗ ⇒ Thật vậy, nếu 2 a a ∗ ⇒ thì n 2 a a⇒ với n nào đó. Từ đó n 4 aa a⇒ và do đó 2n 4 a a⇒ . Suy ra 4 a a ∗ ⇒ . (ii) Nếu 2 a a ∗ ⇒ thì 2 a ∗ ⇒Λ . Thật vậy 2 a a ∗ ⇒ thì n 2 a a⇒ với n nào đó. Thế thì n a a⇒ và n a⇒Λ . Từ đó n aa⇒Λ hay n 2 a ⇒Λ . Bây giờ chúng ta chứng minh rằng: { } 2 L a, a= không phải là ngôn ngữ OL. Chúng ta sẽ chứng minh điều này với mọi hệ thống OL tuỳ ý G X, P,= ω với L L(G)≠ . Xét các trường hợp sau: (1) aω = . Nếu 2 a L(G)∉ thì L L(G)≠ . Nếu 2 a L(G)∈ thì 2 a a ∗ ⇒ , từ đó kết hợp với (i) ở trên ta có 4 a L(G)∈ và do đó L L(G)≠ . (2) 2 a .ω = Nếu a L(G)∉ thì L L(G).≠ Nếu a L(G)∈ thì 2 a a, ∗ ⇒ từ đó kết hợp với (ii) ở trên ta có L(G)Λ∈ và do đó L L(G)≠ . (3) L ω∈ . Rõ ràng L L(G)≠ . Từ tất cả các khả năng đã xét ở trên chúng ta thấy rằng không có hệ thống OL nào sinh ra ngôn ngữ { } 2 a,a . W 1.1.16. Ví dụ. Giả sử { } { } 2n 3 L a | n 1 a= ≥ U . Khi đó L không phải là ngôn ngữ OL. Chứng minh ví dụ này tương tự việc chứng minh Định lý 1.1.15. 1.2. HAI BÀI TOÁN THUẬT TOÁN VỀ HỆ THỐNG OL 10

Ngày đăng: 23/12/2013, 19:12

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan