Tài liệu Đề thi môn ngôn ngữ hình thức và otomat doc

4 4K 78
Tài liệu Đề thi môn ngôn ngữ hình thức và otomat doc

Đang tải... (xem toàn văn)

Thông tin tài liệu

TRƯỜNG ĐẠI HỌC CẦN THƠ Đề thi môn: TIN HỌC LÝ THUYẾT KHOA CNTT & TRUYỀN THÔNG Lớp: TIN HỌC K.29 Lần 2 – Học kỳ 1 – Năm học 06 - 07 Thời gian làm bài: 120 phút NỘI DUNG ĐỀ Câu 1 (1.0 điểm): Áp dụng bổ đề bơm, bạn hãy chứng minh ngôn ngữ sau đây không là ngôn ngữ chính quy: L = {a i b j c j d i | i, j ≥ 1} Câu 2 (2.0 điểm): Bạn hãy tìm một DFA tương đương với NFA sau: Câu 3 (1.5 điểm): Bạn hãy vẽ một automata hữu hạn chấp nhận cho ngôn ngữ được ký hiệu bởi biểu thức chính quy sau: ( (a + ab) b* a )* Câu 4 (1.0 điểm): Bạn hãy chuyển văn phạm sau đây về dạng chuẩn Chomsky (cho biết rằng văn phạm không có ký hiệu vô ích): S → 0SA | 1SB | 01 A → 0A | 0 B → 1B | 1 Câu 5 (1.0 điểm): Bạn hãy chuyển văn phạm sau đây về dạng chuẩn Greibach: S → SA | 0 A → AS | 1 Câu 6 (1.5 điểm): Bạn hãy thiết kế một PDA tương đương với văn phạm phi ngữ cảnh có tập luật sinh như sau: S → 0SA | 1SB | 0 | 1 A → 0A | 0 B → 1B | 1 Câu 7 (2.0 điểm): Bạn hãy thiết kế một máy Turing để thực hiện phép nhân 3 một số nguyên n dương (n > 0). Chú ý: trên băng nhập đã được cho trước một ký hiệu X ở đầu băng. Đầu đọc đang chỉ tại vị trí đầu tiên của băng nhập (ký hiệu X). Ví dụ: thực hiện phép nhân 3 cho số n = 3 (3 * 3 = 9) Đầu vào (input): X000 Kết quả (output): 000000000 (9 số 0) - HẾT - ĐHCT, ngày 02 tháng 02 năm 2007 Giáo viên ra đề Nguyễn Thanh Bình q 1 q 2 q 3 a, b a a, b start b ĐÁP ÁN Câu 1 (1.0 điểm): Áp dụng bổ đề bơm, bạn hãy chứng minh ngôn ngữ sau đây không là ngôn ngữ chính quy: L = {a i b j c j d i | i, j ≥ 1} Giả sử L là ngôn ngữ chính quy. Khi đó sẽ tồn tại một DFA M chấp nhận cho ngôn ngữ L. Gọi n là số trạng thái của DFA M đó. Xét chuỗi z = a n b 1 c 1 d n . Ta có độ dài của chuỗi z là: |z| = 2n + 2 > n . Theo bổ đề bơm, ta có thể đặt z = uvw , trong đó u, v, w là các chuỗi con của z với điều kiện như sau: |uv| ≤ n, |v| ≥ 1 với mọi i ≥ 0 ta có uv i w ϵ L Do uv là chuỗi tiền tố của chuỗi z = a n b 1 c 1 d n uv có độ dài chuỗi không lớn hơn n nên uv chỉ chứa ký tự a. Vậy v cũng chỉ chứa ký hiệu a (và có ít nhất một ký hiệu a). Xét chuỗi uv 2 w, ta thấy chuỗi uv 2 w so với chuỗi uvw = z = a n b 1 c 1 d n có nhiều hơn một chuỗi v. Mặt khác, trong chuỗi v chỉ chứa ký hiệu a, nên ta suy ra trong chuỗi uv 2 w sẽ có số ký hiệu a lớn hơn n (và số ký hiệu d không đổi là n). Vậy trong chuỗi uv 2 w sẽ có số ký hiệu a nhiều hơn ký hiệu d, hay chuỗi uv 2 w không thuộc ngôn ngữ L. Vậy giả thiết L là ngôn ngữ chính quy sai, hay L không là ngôn ngữ chính quy. Câu 2 (2.0 điểm): Bạn hãy tìm một DFA tương đương với NFA sau: DFA tương đương: Câu 3 (1.5 điểm): Bạn hãy vẽ một automata hữu hạn chấp nhận cho ngôn ngữ được ký hiệu bởi biểu thức chính quy sau: ( (a + ab) b* a )* Cách 1: start [q 1 ] [q 2 ] [q 3 ] [q 1 , q 2 ] [q 2 , q 3 ] [q 1 ,q 2 ,q 3 ] a b a b b a b a a b q 1 q 2 q 3 a, b a a, b start b q 1 start q 2 q 3 b b a a a Cách 2: sử dụng cách vẽ đã học theo định lý 3.3 – Giáo trình Tin học lý thuyết – MSc. Võ Huỳnh Trâm – Đại học Cần Thơ – 2003. Câu 4 (1.0 điểm): Bạn hãy chuyển văn phạm sau đây về dạng chuẩn Chomsky (cho biết rằng văn phạm không có ký hiệu vô ích): S → 0SA | 1SB | 01 A → 0A | 0 B → 1B | 1 Bước 1: bỏ qua (vì đề bài đã cho biết văn phạm không có ký hiệu vô ích, nhìn vào văn phạm ta thấy không có luật sinh ε hay luật sinh đơn vị). Bước 2: thay thế các ký hiệu kết thúc ở các luật sinh có độ dài vế phải lớn hơn 1 bằng các biến tương ứng. S → C 0 SA | C 1 SB | C 0 C 1 A → C 0 A | 0 B → C 1 B | 1 C 0 → 0 C 1 → 1 Bước 3: thay thế luật sinh có độ dài vế phải lớn hơn 2 bằng các luật sinh có độ dài vế phải bằng 2. S → C 0 D 0 | C 1 D 1 | C 0 C 1 A → C 0 A | 0 B → C 1 B | 1 C 0 → 0 C 1 → 1 D 0 → SA D 1 → SB Câu 5 (1.0 điểm): Bạn hãy chuyển văn phạm sau đây về dạng chuẩn Greibach: S → SA | 0 A → AS | 1 Bước 1: văn phạm đã ở dạng chuẩn Chomsky. Bước 2: thay biến S bằng biến A 1 , biến A bằng biến A 2 . Ta có tập luật sinh: A 1 → A 1 A 2 | 0 A 2 → A 2 A 1 | 1 Bước 3: khử tính đệ quy trái ở tập luật sinh trên: A 1 → 0 | 0B 1 A 2 → 1 | 1B 2 B 1 → A 2 | A 2 B 1 B 2 → A 1 | A 1 B 2 Bước 4: các luật sinh từ biến A 1 A 2 đã thỏa dạng chuẩn Greibach. Bước 5: chuyển các luật sinh từ biến B 1 B 2 về dạng chuẩn Greibach. A 1 → 0 | 0B 1 A 2 → 1 | 1B 2 B 1 → 1 | 1B 2 | 1B 1 | 1B 2 B 1 B 2 → 0 | 0B 1 | 0B 2 | 0B 1 B 2 Tập luật sinh trên đã thỏa dạng chuẩn Greibach. Câu 6 (1.5 điểm): Bạn hãy thiết kế một PDA tương đương với văn phạm phi ngữ cảnh có tập luật sinh như sau: S → 0SA | 1SB | 0 | 1 A → 0A | 0 B → 1B | 1 Xây dựng PDA M như sau: M ({q}, {0, 1}, {S, A, B}, δ, q, S, Ø) Với các hàm chuyển δ như sau: δ (q, 0, S) = { (q, SA), (q, ε) } δ (q, 1, S) = { (q, SB), (q, ε) } δ (q, 0, A) = { (q, A), (q, ε) } δ (q, 1, B) = { (q, B), (q, ε) } Câu 7 (2.0 điểm): Bạn hãy thiết kế một máy Turing để thực hiện phép nhân 3 một số nguyên n dương (n > 0). Chú ý: trên băng nhập đã được cho trước một ký hiệu X ở đầu băng. Đầu đọc đang chỉ tại vị trí đầu tiên của băng nhập (ký hiệu X). Ý tưởng: a) Đổi X thành B (để làm chốt chặn ở đầu chuỗi) b) Gặp số 0 đầu tiên đổi thành 1 (đổi thành 1 để đánh dấu số 0 đó đã được xét) c) Di chuyển đến cuối chuỗi, đổi 2 ký hiệu B thành ký hiệu 2. d) Di chuyển về đầu chuỗi cho đến khi gặp ký hiệu 1, dịch phải. 1. Nếu ký hiệu tiếp theo là 0, lặp lại bước b. 2. Nếu ký hiệu tiếp theo là 2 thì di chuyển về cuối chuỗi (cho đến khi gặp B), sau đó dịch trái đổi các ký hiệu 1 2 thành 0. Gặp ký hiệu B ở đầu chuỗi thì kết thúc. -- HẾT -- q 0 q 1 q 7 (X, B, R) start q 5 q 6 q 2 q 3 q 4 (0, 1, R) (0, 0, R) (B, 2, R) (B, 2, L) (0, 0, L) (2, 2, L) (1, 1, R) (2, 2, R) (2, 2, R) (2, 2, R) (B, B, L) (2, 0, L) (1, 0, L) (B, B, Ø) . điểm): Áp dụng bổ đề bơm, bạn hãy chứng minh ngôn ngữ sau đây không là ngôn ngữ chính quy: L = {a i b j c j d i | i, j ≥ 1} Giả sử L là ngôn ngữ chính quy phút NỘI DUNG ĐỀ Câu 1 (1.0 điểm): Áp dụng bổ đề bơm, bạn hãy chứng minh ngôn ngữ sau đây không là ngôn ngữ chính quy: L = {a i b j c j d i | i, j ≥ 1}

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

Từ khóa liên quan

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

Tài liệu liên quan