Bài giảng ngôn ngữ hình thức và automat

68 685 1
Bài giảng ngôn ngữ hình thức và automat

Đ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

 TRƢỜNG ĐẠI HỌC HÀNG HẢI BỘ MÔN: KHOA HO ̣ C MA ́ Y TI ́ NH KHOA: CÔNG NGHỆ THÔNG TIN BÀI GIẢNG NGÔN NGỮ HÌNH THỨC ÔTÔMAT Ngôn ngữ hình thức Ôtômat  17204 TRÌNH ĐẠI HỌC CHÍNH QUY DÙNG CHO SV NGÀNH : CÔNG NGHỆ THÔNG TIN HẢI PHÒNG - 2008 Otomat i ĐỀ CƢƠNG CHI TIẾT Tên học phần: mat Loại học phần: 1 Bộ môn phụ trách giảng dạy:  Khoa phụ trách: CNTT Mã học phần: 17204 Tổng số TC: 2       45 45 0 0 0 0 Điều kiện tiên quyết:  Mục tiêu của học phần: -  -  Nội dung chủ yếu Gồm các phần: -  -  -  -  Nội dung chi tiết của học phần: TÊN CHƢƠNG MỤC PHÂN PHỐI SỐ TIẾT TS LT TH/Xemina BT KT MỞ ĐẦU Chƣơng I. Văn phạm ngôn ngữ. 05 04 01 1.1.  1.2.  1.3.  1.4.  1.5.  Chƣơng II. Ngôn ngữ chính quy otomat hữu hạn 16 12 03 01                                 2.12. Ngôn ng Otomat ii TÊN CHƢƠNG MỤC PHÂN PHỐI SỐ TIẾT TS LT TH/Xemina BT KT Chƣơng III. Ngôn ngữ phi ngữ cảnh otomat đẩy xuống. 09 06 02 01     Chƣơng IV: Cơ bản về chƣơng trình dịch 15 12 02 01 4.1. 4.2.Ch 4.2.1.  4.2.2.  4.2.3.  4.2.4.  4.2.5.  4.3. 4.4.  Nhiệm vụ của sinh viên :   Tài liệu học tập : - Ngôn ngữ hình thức - Lý thuyết otomat thuật toán  - Ngôn ngữ hình thức - Giáo trình chương trình dịch - Phân tích cú pháp Hình thức tiêu chuẩn đánh giá sinh viên: -  -  Thang điểm: Thang điểm chữ A, B, C, D, F Điểm đánh giá học phần: Z = 0,2X + 0,8Y. chính thức thống nhất ,  Ngày phê duyệt: / /2010 Trƣởng Bộ môn: Thạc sỹ Nguyễn Hữu Tuân Otomat iii MỤC LỤC  Trang  Chƣơng 1: Văm phạm ngôn ngữ 1  1 1.  2 1.  4 1.  6 1.  8  8 Chƣơng 2: Ngôn ngữ chính quy Otomat hữu hạn 9  9 2. 2 10   18  26  30  30  30  31  31  31  31 2. 12.  -  31  31 Chƣơng 3: Ngôn ngữ phi ngữ cảnh Otomat đẩy xuống 32 3. 1.  32 3. 2.  32 3. 3.  32 3. 4. Khái  32  32 Chƣơng 4: Cơ bản về chƣơng trình dịch 33 4. 1.  33 4. 2.  33  33  37  44  50  58  58  60  62  63  64 Otomat 1 CHƢƠNG 1: VĂN PHẠM NGÔN NGỮ Kiến thức cơ bản:                1.1. Bảng chữ cái, từ, ngôn ngữ              1.1.1.         = {0,1}     1.1.2.    1 , a 2,  n (a i , i=1  .   = {0,1} a 1 = 0, a 2 = 1, a 3 = 00, a 4 =        :  = {a,b,c} a 1 = aabb, a 2 = ac, | a 1 | = 4, |a 2 | = 2 Otomat 2    ,   thì a   .   = {0,1} ,   a 1 = 0110   ,     a       *.     +  + =  * \ {} 1.1.3.    .    *  .   = {a,b,c} A = {x   *   *.  .   .   1.2. Tích ghép, phép chia, phép soi gƣơng 1.2.1. Tích ghép hai xâu    = a 1 a 2 a  a n ,  = a 1 a 2  m ( a i   )     .  = . = a 1 a 2 a 3  n a 1 a 2  m  ={0,1}  = 011,  =1101  = 0111101   +     +  () =  () Otomat 3 + chính nó . = . =  =.     1.2.2. Chia xâu  * ) + Phép chia trái  cho x   x\ Z = y      Z /y = x   = {0,1}, x = 10, y = 11 Z = x.y = 1011 x\ Z = 11 Z /y = 10 1.2.3.      = a 1 a 2  m-1 a m  *  = a m a m-1  2 a 1   | | = | | 1.3. Các phép toán trên ngôn ngữ   C = A  B = {x  */x   B}   = {a,b,c} A = {a, b, ab, ac, cb}, B = {aa, bb, cc} Otomat 4 C = A  B = {a, b, ab, ac, cb, aa, bb, cc}    A  B = B  A   (A  B)  C= A  (B  C)    C = A  B = {x  * | x  A x  B}   = {a, b} A = {a, ab, ac, cb}, B = {b, ab, cb, aa, bc} C = A  B = {ab, cb}    C  (A  B) = B  (A  C)  Tính giao hoán A  B = B  A  A   =   A =  1.3.3.   C=A.B={z  *| z=x.y | x  A, y  B}   = {a, b, c} A = {a, b, ab, ac}, B{c, cb} C = A.B = {ac, bc, abc, acc, acb, bcb, abcb. accb}  -  A.B  B.A -  A.(B.C) = (A.B).C -  A.(B  C) = (A.B)  (A.C) Otomat 5 -   n 1.3.4.   C = A\B = {x  * | x  A, x  B}    = {a, b, c} A = {a, b, ac, bc, aa}, B = {b, bc, ab, bb} C = B\A = {b, ab, bb} 1.3.5.   A = C B = { x  */ x B}   Cho B = {a, bc}.  A = {x  * | x  a, x  bc}. 1.3.6.   .   *| x  A, y   \ A .   * | x  A, y      = {a, b, c} A = {a, bc, abc, aba} , B = {, b, ab, cbc} B\ A = { a, bc, abc, aba, c} A/ B = {a, bc, abc, aba} 1.3.7.    . Otomat 6  B = Ã = { * /  A }.   = {0, 1} A = {0, 1, 10, 110} B = Ã ={0, 1, 01, 011} 1.3.8.   .  A * = { }  A  A A n    - (A * )* = A * - {} * = {} - () * = {}    .  } - () + =   .   1.4. Văn phạm   1.4.1. Định nghĩa văn phạm cấu trúc (Grammar)  c  n      trung gian Quá trình    th  [...]... kết thúc bằng 1210 BÀI TẬP Bài 1 Cho các ngôn ngữ sau: L1 = {a, ab, abb, aabbb, abbaa, aaaabb, ababba} L2 = {, ab, bb, aba, bbb, aabb} Tìm các ngôn ngữ hợp, giao, tích ghép, lặp của L 1và L2 Tìm ngôn ngữ chia trái, chia phải của L1 cho L2 Tìm ngôn ngữ soi gương của L1 Bài 2 Cho bảng chữ cái  = {a, b, c} Xây dựng văn phạm sinh ngôn ngữ L = {anb2n+1ck *n > 0, k  0} 8 Bài giảng môn học: Ngôn ngữ. .. Các xâu có độ dài lẻ trên  30 Bài giảng môn học: Ngôn ngữ hình thức Otomat VD 6 Cho bảng chữ cái  0,1, 2 ây dựng văn phạm G sinh ngôn ngữ L như sau: L = gồm các từ bắt đầu bằng 011, chứa từ con 11211 kết thúc bằng 1210 2 8 Tính đóng của lớp ngôn ngữ chính quy 2.8.1 Lớp ngôn ngữ chính quy 2.8.2 Tính đóng của lớp ngôn ngữ chính quy 2 9 Điều kiện cần của lớp ngôn ngữ chính quy 2.9.1 Otomat tối... sinh ra, tức là N(I)=  N(Ii) i 1 Cho 2 nguồn I1 I2 : S0 q0 c a b c S2 S1 a b q2 q1 Hình 1.5 Nguồn I1 I2 Hợp của I1 I2 là : v(I) q0 S0 c a b S1 a b c S2 q1 Hình 1.6 Hợp của I1 I2 q2 12 Bài giảng môn học: Ngôn ngữ hình thức Otomat 2.2.4 Phép giao nguồn Giả sử có các nguồn I1, I2 Cần xây dựng nguồn I, sinh ngôn ngữ là giao của các ngôn ngữ do I1, I2 sinh ra, tức là N(I)= N(I1)  N(I2)... sinh ngôn ngữ là lặp của ngôn ngữ do nguồn I1 sinh ra, ta giữ nguyên 14 Bài giảng môn học: Ngôn ngữ hình thức Otomat cấu trúc của I1, thêm vào một đỉnh mới thừa nhận đỉnh này là đỉnh vào đồng thời là đỉnh kết duy nhất của nguồn I Từ đỉnh mới kẻ thêm một cung rỗng đi tới đỉnh v(I1), đồng thời từ mỗi đỉnh kết của nguồn I1 kẻ một cung rỗng đi tới đỉnh mới thêm Nguồn sinh ngôn ngữ là lặp cắt của ngôn. .. nguồn sinh ngôn ngữ phần bù của ngôn ngữ do I sinh ra ta thực hiện một thuật toán gồm các bước sau: 1 Nếu I chưa đơn định đầy đủ, ta xây dựng nguồn K đơn định, đầy đủ tương đương với I, tức là N(I)= N(K) 11 Bài giảng môn học: Ngôn ngữ hình thức Otomat 2 Trên nguồn K ta đổi các đình kết thành không kết không kết thành kết Khi đó nguồn nhận được sẽ sinh ra ngôn ngữ phần bù của ngôn ngữ do nguồn... T(s1, 0) =  = q2 24 Bài giảng môn học: Ngôn ngữ hình thức Otomat T(q4, 1) = T(s1, 1) = {s2} =q3 Ta xác định được Otomat đơn định đầy đủ A1 với Otomat A như sau : A1= ({q0, q1, q2, q3, q4}, {0, 1}, {q0}, 1, {q3) hàm chuyển 1được cho bằng bảng sau : 1 q0 q1 q2 q3 q4 0 q1 q1 q2 q4 q2 1 q2` q3 q2 q0 q3 25 Bài giảng môn học: Ngôn ngữ hình thức Otomat 2 4 Sự tƣơng đƣơng của nguồn Otomat hữu hạn... F(I)) khi chỉ khi S  F(I1)   R  F(I2)   Với cách xây dựng trên nguồn I sinh ngôn ngữ là giao của các ngôn ngữ do I1, I2 sinh ra Lấy ví dụ với 2 nguồn I1 I2 (hình 1.5 ) S0, q0 a b S0,q0 c b , q1 a,c c a,b , S2, a,b,c , S2 a,b,c , q2 a,b,c 13 Bài giảng môn học: Ngôn ngữ hình thức Otomat Nguồn giao của chúng là : a S1 S0 Hình 1.7 Nguồn giao cuả I1 I2 2.2.5 Phép tích ghép hai nguồn... của lớp ngôn ngữ chính quy 2 10 Điều kiện cần đủ của lớp ngôn ngữ chính quy 2.10.1 Quan hệ tương đương bất biến phải chỉ số hữu hạn 2.10.2 Điều kiện cần đủ 2 11 Otomat hữu hạn có lối ra 2.10.1 Định nghĩa 2.10.2 Cách biểu diễn 2 12  -Ngôn ngữ chính quy (Siêu ngôn ngữ chính quy) 2.12.1 Các định nghĩa 2.12.2 Các phép toán trên siêu ngôn ngữ 2 12 3 Tính đóng của siêu ngôn ngữ chính quy BÀI TẬP Bài 1... nguồn K sinh ngôn ngữ là thương bên phải của các ngôn ngữ do I1, I2 sinh ra Nguồn K được gọi là nguồn thương bên phải của các nguồn I1, I2 Thuật toán xây dựng nguồn thương bên phải: 1) Dựa vào cấu trúc của I1 đối với mỗi s1 D(I1) xây dựng nguồn Is i có đỉnh vào là si (v(Is i ) = si) F(Is i ) = F(I1) 16 Bài giảng môn học: Ngôn ngữ hình thức Otomat 2) Xây dựng nguồn giao K1 của I1 I2 Đối với... chữ cái  2.1.4 Nguồn đơn định đầy đủ Là nguồn vừa đơn định vừa đầy đủ r0 Ví dụ : a r1 b,c a,b a,b,c r2 c Hình 1.2 Nguồn đơn định đầy đủ I2 9 Bài giảng môn học: Ngôn ngữ hình thức Otomat 2 1 5 Từ được sinh bởi nguồn - Từ đựơc sinh bởi nguồn là dãy các ký hiệu của bảng chữ cái  nằm trên các cung của nguồn đi từ đỉnh vào đến một trong những đỉnh kết - Ngôn ngữ được sinh bởi nguồn I là tập . 0}  Otomat 9 CHƢƠNG II: NGÔN NGỮ CHÍNH QUY VÀ OTOMAT HỮU HẠN 2.1. Ngu n và ngôn ngữ đƣợc sinh bởi ngu n 2.1.1.  O) □).  Ngày phê duyệt: / /2010 Trƣởng Bộ môn: Thạc sỹ Nguyễn Hữu Tuân  Otomat iii MỤC LỤC  Trang  Chƣơng 1: Văm.  Otomat ii TÊN CHƢƠNG MỤC PHÂN PHỐI SỐ TIẾT TS LT TH/Xemina BT KT Chƣơng III. Ngôn ngữ phi ngữ cảnh và otomat đẩy xuống. 09 06 02 01 

Ngày đăng: 10/05/2014, 21:15

Từ khóa liên quan

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

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

Tài liệu liên quan