TÀI LIỆU ôn tập OTOMAT

15 357 0
TÀI LIỆU ôn tập OTOMAT

Đ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

Cõu 1: a. Định nghĩa văn phạm chớnh quy và cho vớ dụ? Định nghĩa: Văn phạm chớnh quy (hay cũn gọi là văn phạm loại 3 theo phõn loại Chomsky) là văn phạm cú cấu trỳc G gồm 4 thành phần G = (N, T, S, P), trong đú: + N: là tập cỏc biến. Vớ dụ: A, B, C,... + T: là tập ký hiệu kết thỳc (TN =). Vớ dụ: a, b, c,... + S: là ký hiệu bắt đầu (start; SN). + P là tập luật sinh. Mỗi luật sinh trong P đều cú dạng tuyến tớnh trỏi: A > wB | w hoặc cú dạng tuyến tớnh phải A > Bw | w với w là xõu ký tự thuộc T. Vớ dụ: Văn phạm G = (N, T, S, P) N = {S, A}, T = {a, b} S = {S} P: S > aS| aA|a A > aA| a| b b. Cho văn phạm G = (N, T, S, P) P: S>aSa | aa Cho biết ngụn ngữ của văn phạm trờn? Văn phạm trờn là văn phạm gỡ? Tại sao? Ngụn ngữ của văn phạm Xột một suy dẫn của S ta cú: S > aSa > aaSaa> aaaaaa = a6 => L(G) = {an| n >= 2} Văn phạm trờn là văn phạm phi ngữ cảnh hay văn phạm loại 2 theo phõn loại văn phạm Chomsky vỡ: văn phạm cú cấu trỳc G gồm 4 thành phần G = (N, T, S, P), trong đú: + N: là tập cỏc biến. Vớ dụ: A, B, C,... + T: là tập ký hiệu kết thỳc (TN =). Vớ dụ: a, b, c,... + S: là ký hiệu bắt đầu (start; SN). + P là tập luật sinh. Mỗi luật sinh trong P đều cú dạng tuyến tớnh trỏi: A >với A là một biến vàlà xõu ký tự thuộc (NT) S > aSa => A =S;= aSa S > aa => A =S;= aa Cõu 2:

PHOTO NGÂN SƠN – CỔNG PHỤ TÀI LIỆU OTOMAT Câu 1: a Định nghĩa văn phạm quy cho ví dụ? * Định nghĩa: Văn phạm quy (hay gọi văn phạm loại theo phân loại Chomsky) văn phạm có cấu trúc G gồm thành phần G = (N, T, S, P), đó: + N: tập biến Ví dụ: A, B, C, + T: tập ký hiệu kết thúc (T N= ) Ví dụ: a, b, c, + S: ký hiệu bắt đầu (start; S N) + P tập luật sinh Mỗi luật sinh P có dạng tuyến tính trái: A > wB | w có dạng tuyến tính phải A > Bw | w với w xâu ký tự thuộc T Ví dụ: Văn phạm G = (N, T, S, P) N = {S, A}, T = {a, b} S = {S} P: S > aS| aA|a A -> aA| a| b b Cho văn phạm G = (N, T, S, P) P: S > aSa | aa Cho biết ngôn ngữ văn phạm trên? Văn phạm văn phạm gì? Tại sao? PHOTO NGÂN SƠN – CỔNG PHỤ * Ngôn ngữ văn phạm Xét suy dẫn S ta có: S > aSa > aaSaa > aaaaaa = a6 => L(G) = {an| n >= 2} * Văn phạm văn phạm phi ngữ cảnh hay văn phạm loại theo phân loại văn phạm Chomsky vì: văn phạm có cấu trúc G gồm thành phần G = (N, T, S, P), đó: + N: tập biến Ví dụ: A, B, C, + T: tập ký hiệu kết thúc (T N= ) Ví dụ: a, b, c, + S: ký hiệu bắt đầu (start; S N) + P tập luật sinh Mỗi luật sinh P có dạng tuyến tính trái: A > ký tự thuộc (N với A biến xâu T)* S > aSa => A = S; S > aa => A = S; = aSa = aa Câu 2: a, Xây dựng FA đoán nhận xâu chứa 0, có 00 bắt đầu Kiểm nghiệm xâu w = 00101 có đoán nhận FA vừa xây dựng? * Xây dựng FA FA đoán nhận xâu chứa 0, có 00 bắt đầu => L(M) = {00w | w (0, 1)*} Để xây FA thỏa mãn điều kiện, ta có nhận xét sau: - Nếu xâu bắt đầu FA không đoán nhận xâu - Nếu xâu bắt đầu ký tự thứ FA không đoán nhận xâu PHOTO NGÂN SƠN – CỔNG PHỤ - Nếu xâu bắt đầu 00 FA đoán nhận ký hiệu sau xâu hay Từ nhận xét ta xây dựng hàm chuyển đổi sau: - (q0, 1) = - (q0, 0) = q1 (q1, 1) = - (q0, 0) = q1 (q1, 0) = q2 (q2, 0) = q2 (q2, 1) = q2 Vậy ta có FA sau: M = (Q, ∑, , q0, F) -> q0 q1 q1 q2 * q2 q2 q2 * Kiểm nghiệm xâu w = 00101 (q0, 0) = q1 (q1, 0) = q2 (q2, 1) = q2 (q2, 0) = q2 (q2, 1) = q2 PHOTO NGÂN SƠN – CỔNG PHỤ q2 F => w = 00101 L(M) PHOTO NGÂN SƠN – CỔNG PHỤ b Cho NFA M = (Q, ∑, , q0, F) a b {q0, >q0 q1} *q1 q1 q0 Xây dựng DFA tương đương Gọi M’ = (Q’, ∑, ’, q0’, F’) DFA tương đương cần xây dựng Áp dụng thuật toán chuyển đổi NFA sang DFA, ta có Q’ = {q0} ’= ’(q0, a) = (q0, a) = [q0, q1] => Q’ = {q0 [q0, q1]} ’ = { ’(q0, a)} ’(q0, b) = (q0, b) = => Q’ = {q0 [q0, q1]} ’ = { ’(q0, a)} ’([q0, q1], a) = (q0, a) (q1, a) = [q0, q1] => Q’ = {q0 [q0, q1]} ’ = { ’(q0, a); ’([q0, q1], a)} ’([q0, q1], b) = (q0, b) (q1, b) = q0 => Q’ = {q0 [q0, q1]} ’ = { ’(q0, a); ’([q0, q1], a); ’([q0, q1], b)} F’ = F Q’ = {[q0, q1]} PHOTO NGÂN SƠN – CỔNG PHỤ Vậy DFA cần xây dựng M’ = (Q’, ∑ , ’, q0’, F’) a >q0 b [q0, q1] *[q0, [q0, q1] q1] q0 Đặt A = q0; B = [q0, q1] => DFA M’ = (Q’, ∑, ’, q0’, F’) a b B >A *B B A c Xây dựng FA đoán nhận biểu thức quy: r = (01 + 1)*1 * Phân tích r: r = (01 + 1)*1 = r1r2 với r1 = (01 + 1)* r2 = r1 = r3* với r3 = (01 + 1) r3 = r4 + r5 với r4 = 01 r5 = r4 = r6r7 với r6 = r7 = * Xây dựng FA - r6 = 0: PHOTO NGÂN SƠN – CỔNG PHỤ - r7 = - r4 = r6r7: - r5 = 1: - r3 = r4 + r5: - r1 = r3* - r2 = 1: PHOTO NGÂN SƠN – CỔNG PHỤ r = r1r2: Câu 3: Cho G = (N, T, S, P) P: S > bA | A | AB A > AAa | b B > BBb | BA Đưa văn phạm dạng chuẩn Chomsky Gọi G’ = (N’, T, S, P’) văn phạm chuẩn Chomsky Loại bỏ luật sinh rỗng Không có luật sinh rỗng Loại bỏ luật sinh đơn vị - Ta có: S = {S, A}=> Thêm vào P’ luật sinh sau: S > bA | AAa | b | AB - Ta có A = {A}=> Thêm vào P’ luật sinh sau: A > AAa | b - Ta có B = {B}=> Thêm vào P’ luật sinh sau: B > BBb | BA PHOTO NGÂN SƠN – CỔNG PHỤ => P’: S > bA | AAa | b | AB A > AAa | b B > BBb | BA Loại bỏ ký hiệu vô ích 3.1 Loại bỏ ký hiệu vô sinh Gọi Nkvs tập ký hiệu không vô sinh => Nkvs = S > b => Nkvs = {S} A > b => Nkvs = {S, A} => Tập ký hiệu vô sinh là: N/Nkvs = {B} => Loại ký hiệu B cách loại bỏ luật liên quan tới B => P’: S > bA | AAa | b A > AAa | b 3.2 Loại bỏ ký hiệu không đạt đến Gọi Ndd tập ký hiệu đạt đến => Ndd = {S} S > bA A > b => Ndd = {S, A} => Không có ký hiệu không đạt đến => P’ sau loại bỏ ký hiệu vô ích là: S > bA | AAa | b A > AAa | b Chuẩn hóa S > bA => S > CbA Cb > b S > AAa => S > DCa D > AA Ca > a A > AAa => A > ECa PHOTO NGÂN SƠN – CỔNG PHỤ E > AA Ca > a => P’ sau chuẩn hóa: S > CbA | DCa | b D > AA Cb > b Ca > a A > ECa | b E > AA Vậy, G’ = (N’, T, S, P’) chuẩn Chomsky N’ = {S, A} T = {b} S = {S} P’: S > CbA | DCa | b D > AA Cb > b Ca > a A > ECa | b E > AA 10 PHOTO NGÂN SƠN – CỔNG PHỤ ĐỀ SỐ Thời gian: 90 phút (Không sử dụng tài liệu) Định nghĩa văn phạm, Phân loại văn phạm theo Chomsky, khác biệt loại văn phạm Cho ví dụ minh họa Trình bày thuật toán đoán nhận chuỗi automata hữu hạn cho trước Ví dụ minh họa Cho văn phạm G = < Σ, Δ, S, P >trong Δ = {S, A}, Σ ={a, b}, tập quy tắc có dạng: P ={1.S→Sa, 2.A→aAb, 3.A→ab, 4.S→Aa }.Tìm L(G) Biến đổi automata sau automata đơn định: q 0,1 q1 0,1 q2 Đề Câu 1: A) cho biết ngôn ngữ sinh văn phạm G =(N, T, S, P) với sản xuất P P: S-> aSa/aa với aT, T = {0,1,2} Đây văn phạm loại phân loại văn phạm Chomsky B) Dịnh nghĩa loại văn phạm xác định câu A Câu 2: A) Xây dựng otomat đoán nhận xâu chứa số 0, chẵn lần số Xâu w = 01101 có đoán nhận FA vừa xây dựng không? - Xây dựng FA đoán nhận xâu chứa 0,1 có 00 bắt đầu Kiểm nghiệm xâu w = 00101 có đoán nhận không? B) cho văn phạm G = (N, T, S, P) với tập sản xuất P sau: 11 PHOTO NGÂN SƠN – CỔNG PHỤ P: S -> 1A/B A -> 0S/0 B -> 1S/1 Hãy xây dựng otomat đoán nhận ngôn ngữ sinh văn phạm kiểm tra xem xâu w = 11010 có đoán nhận FA vừa xây dựng không? C) Xây dựng otomat hữu hạn đoán nhận biểu thức quy sau r = (10+1)* Câu 3: Cho văn phạm G = (N, T, S, P) với sản xuất P: S -> bA/aB/B A - > bAA/aS/b B -> bBB/ABC/a Hãy đưa văn phạm dạng chuẩn Chomsky Đề Câu (2,5 đ): Cho I={a,b} Hãy xây dựng automat hữu hạn M cho chấp nhận ngôn ngữ L={(anb2 : n ≥ 0} Câu (2,5 đ): Cho văn phạm sau đây: G= < {a,b} , {S} , P , S > Với P = { S  aSb, S  λ} ( với λ ký hiệu ký tự rỗng ) a) Hãy cho biết dạng thức dòng ký tự thuộc ngôn ngữ L(G) (0,5 điểm) b) Văn phạm G thuộc loại văn phạm ? Câu (2.5 đ): Xây dựng automat đẩy ngược ( pushdown automata) chấp nhận ngôn ngữ sau đây: L= { an bn+1: n ≥ 1} 12 PHOTO NGÂN SƠN – CỔNG PHỤ Câu (2.5 đ): Xây dựng automat đẩy ngược ( pushdown automata) chấp nhận văn phạm sau đây: G= < {a,b} , {S} , P , S > Với P = { S  aSb, S  λ} ( với λ ký hiệu ký tự rỗng ) - hết - GIẢI Câu (2.5 đ): Automat hữu hạn M cho chấp nhận ngôn ngữ L={(anb2 : n ≥ 0} là: M = (Q, Σ , δ , q0 , F) a,b a b b q q a,b a q q Với : Q = { q0 , q1 , q2 , q3 } ; Σ = { a,b} ; F = { q2} δ( q0, a) = q0 δ( q0, b) = q1 δ( q1, a) = q3 δ( q1, b) = q2 δ( q2, a) = q3 δ( q2, b) = q3 δ( q3, a) = q3 δ( q3, b) = q3 13 PHOTO NGÂN SƠN – CỔNG PHỤ Câu (2.5 đ): Cho văn phạm sau đây: G= < {a,b} , {S} , P , S > Với P = { S  aSb, S  λ} ( với λ ký hiệu ký tự rỗng ) a) Đặt w  { a,b}* , lúc từ P ta có: S  aSa  aaSbb  a3S b3  …  anS bn Thế S  λ vào ta dạng thức dòng ký tự thuộc L(G) anS bn : n ≥ b) Văn phạm G thuộc loại văn phạm tuyến tính ( văn phạm phi ngữ cảnh) Câu (2.5 đ ): Automat đẩy ngược ( pushdown automaton) chấp nhận ngôn ngữ L= { an bn+1: n ≥ 1} là: M = (Q, Σ , Γ , δ , q0 , z , F) Với : δ( q0, a , z ) = {( q0 ,az)} , δ( q0, a , a ) = {( q0 ,aa)} , δ( q0, λ , a ) = {( q1 ,a)} , δ( q1, b , a ) = {( q1 , λ)} , δ( q1, b , z ) = {( q1 , λ)} , δ( q1, λ , z ) = {( qf ,z)} , Q = { q0 , q1 , qf } ; Σ = { a,b} ; Γ= {a,z} ; F = { qf} Câu 10 (2.5 đ): Xây dựng automat đẩy ngược ( pushdown automata) chấp nhận ngôn ngữ sau đây: L = {wwR : w  { a,b}* } với wR đảo ngược dòng ký tự w 14 PHOTO NGÂN SƠN – CỔNG PHỤ tập ký tự ngôn ngữ {a,b} Giải : Automat đẩy ngược ( pushdown automata) chấp nhận ngôn ngữ L = {wwR : w  { a,b}* } là: M = (Q, Σ , Γ , δ , q0 , z , F) Với : δ( q0, a , z ) = {( q0 ,az)} , δ( q0, a , a ) = {( q0 ,aa)} , δ( q0, a , b ) = {( q0 ,ab)} , δ( q0, b , a ) = {( q0 ,ba)} , δ( q0, b , b ) = {( q0 ,bb)} , δ( q0, b , z ) = {( q0 ,bz)} , δ( q0, λ , a ) = {( q1 ,a)} , δ( q0, λ , b ) = {( q1 ,b)} , δ( q1, a , a ) = {( q1 , λ)}, δ( q1, b , b ) = {( q1 , λ)}, δ( q1, λ , z ) = {( qf ,z)} , Q = { q0 , q1 , qf } ; Σ = { a,b} ; Γ= {a,b,z} ; F = { qf} 15 [...]... 00 bắt đầu Kiểm nghiệm xâu w = 00101 có được đoán nhận không? B) cho văn phạm G = (N, T, S, P) với tập các sản xuất trong P như sau: 11 PHOTO NGÂN SƠN – CỔNG PHỤ P: S -> 1A/B A -> 0S/0 B -> 1S/1 Hãy xây dựng otomat đoán nhận ngôn ngữ sinh bởi văn phạm này và kiểm tra xem xâu w = 11010 có được đoán nhận bởi FA vừa xây dựng không? C) Xây dựng otomat hữu hạn đoán nhận biểu thức chính quy sau r = (10+1)*...PHOTO NGÂN SƠN – CỔNG PHỤ ĐỀ SỐ 1 Thời gian: 90 phút (Không sử dụng tài liệu) 1 Định nghĩa văn phạm, Phân loại văn phạm theo Chomsky, sự khác biệt giữa các loại văn phạm Cho ví dụ minh họa 2 Trình bày thuật toán đoán nhận chuỗi bởi một automata hữu hạn cho trước Ví dụ minh họa 3 Cho văn phạm G = < Σ, Δ, S, P >trong đó Δ = {S, A}, Σ ={a, b}, tập quy tắc có dạng: P ={1.S→Sa, 2.A→aAb, 3.A→ab, 4.S→Aa... q2 1 0 Đề 2 Câu 1: A) cho biết ngôn ngữ sinh bởi văn phạm G =(N, T, S, P) với các sản xuất trong P P: S-> aSa/aa với aT, T = {0,1,2} Đây là văn phạm loại nào trong phân loại văn phạm của Chomsky B) Dịnh nghĩa loại văn phạm đã xác định ở câu A Câu 2: A) Xây dựng otomat đoán nhận xâu chỉ chứa số 0, 1 và chẵn lần số 0 Xâu w = 01101 có được đoán nhận bởi FA vừa xây dựng không? - Xây dựng FA đoán nhận xâu... hữu hạn M sao cho chấp nhận ngôn ngữ L={(anb2 : n ≥ 0} Câu 9 (2,5 đ): Cho văn phạm sau đây: G= < {a,b} , {S} , P , S > Với P = { S  aSb, S  λ} ( với λ là ký hiệu ký tự rỗng ) a) Hãy cho biết dạng thức của những dòng ký tự thuộc ngôn ngữ L(G) (0,5 điểm) b) Văn phạm G thuộc loại văn phạm gì ? Câu 8 (2.5 đ): Xây dựng một automat đẩy ngược ( pushdown automata) chấp nhận ngôn ngữ sau đây: L= { an bn+1:... đẩy ngược ( pushdown automata) chấp nhận ngôn ngữ sau đây: L = {wwR : w  { a,b}* } với wR là sự đảo ngược của dòng ký tự w 14 PHOTO NGÂN SƠN – CỔNG PHỤ và tập ký tự của ngôn ngữ là {a,b} Giải : Automat đẩy ngược ( pushdown automata) chấp nhận ngôn ngữ L = {wwR : w  { a,b}* } là: M = (Q, Σ , Γ , δ , q0 , z , F) Với : δ( q0, a , z ) = {( q0 ,az)} , δ( q0, a , a ) = {( q0 ,aa)} , δ( q0, a , b ) = {(... nhận ngôn ngữ L= { an bn+1: n ≥ 1} là: M = (Q, Σ , Γ , δ , q0 , z , F) Với : δ( q0, a , z ) = {( q0 ,az)} , δ( q0, a , a ) = {( q0 ,aa)} , δ( q0, λ , a ) = {( q1 ,a)} , δ( q1, b , a ) = {( q1 , λ)} , δ( q1, b , z ) = {( q1 , λ)} , δ( q1, λ , z ) = {( qf ,z)} , Q = { q0 , q1 , qf } ; Σ = { a,b} ; Γ= {a,z} ; F = { qf} Câu 10 (2.5 đ): Xây dựng một automat đẩy ngược ( pushdown automata) chấp nhận ngôn ngữ... pushdown automata) chấp nhận văn phạm sau đây: G= < {a,b} , {S} , P , S > Với P = { S  aSb, S  λ} ( với λ là ký hiệu ký tự rỗng ) - hết - GIẢI Câu 7 (2.5 đ): Automat hữu hạn M sao cho chấp nhận ngôn ngữ L={(anb2 : n ≥ 0} là: M = (Q, Σ , δ , q0 , F) a,b a b b q q 0 1 a,b a q q 2 3 Với : Q = { q0 , q1 , q2 , q3 } ; Σ = { a,b} ; F = { q2} δ( q0, a) = q0 δ( q0, b) = q1 δ( q1, a) = q3 δ( q1, b) = q2

Ngày đăng: 15/05/2016, 22:13

Từ khóa liên quan

Mục lục

  • Thời gian: 90 phút

  • (Không sử dụng tài liệu).

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

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

Tài liệu liên quan