Bài giảng môn lý thuyết ôtômát và ngôn ngữ hình thức - Chương 3
Thông tin tài liệu:
Nội dung trích xuất từ tài liệu:
Bài giảng môn lý thuyết ôtômát và ngôn ngữ hình thức - Chương 3 Chương 3 Ngôn ngữ chính qui và văn phạm chính qui 3.1 Biểu thức chính qui (Regular Expression) 3.2 Mối quan hệ giữa BTCQ và ngôn ngữ chính qui 3.3 Văn phạm chính qui (Regular Grammar) Trang 97 Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông Tin Biểu thức chính qui Biểu thức chính qui (BTCQ) là gì? Là một sự kết hợp các chuỗi kí hiệu của một bảng chữ cái ∑ nào đó, các dấu ngoặc, và các phép toán +, ., và *. trong đó phép + biểu thị cho phép hội, phép . biểu thị cho phép kết nối, phép * biểu thị cho phép bao đóng sao. Ví dụ Ngôn ngữ {a} được biểu thị bởi BTCQ a. Ngôn ngữ {a, b, c} được biểu thị bởi BTCQ a + b + c. Ngược lại BTCQ (a + b.c)* biểu thị cho ngôn ngữ {λ, a, bc, aa, abc, bca, bcbc, aaa, aabc, ...}. Trang 98 Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông Tin Định nghĩa hình thức BTCQ Định nghĩa 3.1 Cho ∑ là một bảng chữ cái, thì 1. ∅, λ, và a ∈ ∑ tất cả đều là những BTCQ hơn nữa chúng được gọi là những BTCQ nguyên thủy. 2. Nếu r1 và r2 là những BTCQ, thì r1 + r2, r1. r2, r1*, và (r1) cũng vậy. 3. Một chuỗi là một BTCQ nếu và chỉ nếu nó có thể được dẫn xuất từ các BTCQ nguyên thủy bằng một số lần hữu hạn áp dụng các quy tắc trong (2). Ví dụ Cho ∑ = {a, b, c}, thì chuỗi (a + b.c)*.(c + ∅) là BTCQ, vì nó được xây dựng bằng cách áp dụng các qui tắc ở trên. Còn (a + b +) không phải là BTCQ. Trang 99 Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông Tin Ngôn ngữ tương ứng với BTCQ Định nghĩa 3.2 Ngôn ngữ L(r) được biểu thị bởi BTCQ bất kỳ là được định nghĩa bởi các qui tắc sau. 1. ∅ là BTCQ biểu thị tập trống, 2. λ là BTCQ biểu thị {λ}, 3. Đối với mọi a ∈ ∑, a là BTCQ biểu thị {a}, Nếu r1 và r2 là những BTCQ, thì 4. L(r1 + r2) = L(r1) ∪ L(r2), 5. L(r1.r2) = L(r1).L(r2), 6. L((r1)) = L(r1), 7. L(r1*) = (L(r1))*. Trang 100 Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông Tin Ngôn ngữ tương ứng với BTCQ (tt) Qui định về độ ưu tiên Độ ưu tiên của các phép toán theo thứ tự từ cao đến thấp là 1. bao đóng – sao, 2. kết nối, 3. hội. Ví dụ L(a* . (a + b)) = L(a*) L(a + b) (L(a))* (L(a) ∪ L(b)) = {λ, a, aa, aaa, . . .}{a, b} = = {a, aa, aaa, . . . , b, ab, aab, . . .} Trang 101 Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông Tin Xác định ngôn ngữ cho BTCQ Tìm ngôn ngữ của các BTCQ sau r1 = (aa)*(bb)*b r2 = (ab*a + b)* r3 = a(a + b)* Kết quả L(r1) = {a2nb2m+1: n ≥ 0, m ≥ 0} L(r2) = {w ∈ {a, b}*: na(w) chẵn} L(r3) = {w ∈ {a, b}*: w được bắt đầu bằng a} Trang 102 Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông Tin Tìm BTCQ cho ngôn ngữ Tìm BTCQ cho các ngôn ngữ sau L1 = {tập tất cả các số thực của Pascal} L2 = {w ∈ {0, 1}*: w không có một cặp số 0 liên tiếp nào} L3 = {w ∈ {0, 1}*: n0(w) = n1(w)} Kết quả r1 = (‘+’ + ‘-’ + λ)(0 + 1 + … + 9)+(‘.’ (0 + 1 + … + 9)+ + λ) (‘E’ (‘+’ + ‘-’ + λ)(0 + 1 + … + 9)+ + λ) r2 = [(1* 011*)* + 1*] (0 + λ) hoặc (1 + 01)* (0 + λ) Không tồn tại BTCQ biểu diễn cho L3 Trang 103 Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông Tin Một số phép toán mở rộng Phép chọn lựa r? hoặc [r] r ? = [r] = (r + λ) Phép bao đóng dương + r+ = r.r* Chú ý (r*)* = r* (r1* + r2)* = (r1 + r2)* (r1r2* + r2)* = (r1 + r2)* Trong một số tài liệu phép cộng (+) được kí hiệu bằng dấu | thay cho dấu + . Chẳng hạn (a + b).c thì được viết là (a | b).c Trang 104 Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông Tin BTCQ biểu thị NNCQ Định lý 3.1 Cho r là một BTCQ, thì tồn tại một nfa mà chấp nhận L(r). Vì vậy, L(r) là NNCQ. Bổ đề Với mọi nfa có nhiều hơn một trạng thái kết thúc luôn luôn có một nfa tương đương với chỉ một trạng thái kết thúc. qf1 qf1 λ tương đương với qf λ qfn qfn Trang 105 Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông Tin Thủ tục: re-to-nfa Từ bổ đề trên mọi nfa có thể được biểu diễn bằng sơ đồ như sau M ...
Tìm kiếm theo từ khóa liên quan:
mạch điện ứng dụng vi mạch điện tử đề cương vi xử lí tài liệu học đại học lý thuyết ôtômát ngôn ngữ hình thức kỹ thuật điện tử lý thuyết tính toán ngôn ngữ phi ngữ cảnhGợi ý tài liệu liên quan:
-
Chuyên đề: Nghiên cứu Ngôn ngữ hình thức, Văn phạm phi ngữ cảnh và Automata đẩy xuống
84 trang 370 0 0 -
25 trang 329 0 0
-
Giáo trình Kỹ thuật điện tử (Nghề: Điện công nghiệp - Cao đẳng) - Trường Cao đẳng Cơ giới (2023)
239 trang 243 0 0 -
ĐỒ ÁN TỐT NGHIỆP: THIẾT KẾ HỆ THỐNG CUNG CẤP ĐIỆN CHO NHÀ MÁY SẢN XUẤT GẠCH MEN SHIJAR
63 trang 233 0 0 -
Giáo trình Toán rời rạc: Phần 1 - Đỗ Đức Giáo
238 trang 218 0 0 -
122 trang 217 0 0
-
102 trang 196 0 0
-
116 trang 177 0 0
-
NHỮNG VẤN ĐỀ CƠ BẢN VỀ TIỀN TỆ, TÍN DỤNG
68 trang 177 0 0 -
94 trang 170 0 0
-
Thảo luận về Tư Tưởng Hồ Chí Minh
34 trang 166 0 0 -
ĐỒ ÁN: THIẾT KẾ HỆ THỐNG CUNG CẤP ĐIỆN CHO NHÀ MÁY CƠ KHÍ TRUNG QUY MÔ SỐ 2
91 trang 163 0 0 -
Hệ thống sưởi - thông gió - điều hòa không khí - Thực hành kỹ thuật điện - điện tử: Phần 1
109 trang 158 0 0 -
83 trang 157 0 0
-
Tuyển Các bài Tập Nguyên lý Kế toán
64 trang 156 0 0 -
Luận văn: THIẾT KẾ CUNG CẤP ĐIỆN KHU DÂN CƯ
57 trang 153 1 0 -
Đề tài: Quản lý điểm sinh viên
25 trang 153 0 0 -
Đề kiểm tra giữa học kỳ II năm 2013 - 2014 môn Cấu trúc máy tính
6 trang 145 0 0 -
Phân tích yếu tố giới trong các dự án phát triển ở nông thôn Việt Nam
9 trang 140 0 0 -
34 trang 131 0 0