Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 35 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
35
Dung lượng
1,71 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC VINH PHẠM VĂN AN VỀLỚPNGÔNNGỮLINDENMAYERSUYRỘ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ÔNNGỮ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ÔNNGỮLINDENMAYERSUYRỘ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 Lindenmayersuyrộ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ônngữ 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ônngữ 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ônngữ 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ônngữ đó. Trong [4], tác giả Nguyễn Thị Lý đã nghiên cứu các lớpngônngữ liên quan đến quá trình phát triển của hệ thực vật, đó là lớpngônngữ 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ớpngônngữ Lindenmayer, đó là lớpngônngữLindenmayer nguyên (xem [5]). Các lớpngônngữ 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ớpngônngữ 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ônngữ 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ônngữ 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ônngữLindenmayersuy 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 Lindenmayersuy 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ÔNNGỮ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ônngữ 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ônngữ 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ônngữ sinh ra bởi G (hoặc đơn giản ngônngữ 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ônngữ L được gọi là ngônngữ 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ônngữ 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ônngữ OL (hơn nữa là một ngônngữ 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ônngữ và hệ thống OL và một vài ví dụ vềngônngữ 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ônngữ hữu hạn không phải là ngônngữ 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ônngữ 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ônngữ { } 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ônngữ 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