bài tập cơ bản về automat hữu hạn
Bài tập lý thuyết chương 4 Các đặc tính của ngôn ngữ chính qui Môn: Automata và Ngôn ngữ hình thức. Bổ đề bơm 1. Chứng minh các ngôn ngữ dưới đây không phải là ngôn ngữ chính qui: a) {0 n 1 n | n ≥ 1}. b) Tập các chuỗi mở, đóng ngoặc tròn cân bằng (tương ứng với một biểu thức số học đúng khi loại bỏ đi các toán tử và toán hạng). c) {0 n 10 n | n ≥ 1}. d) {0 n 1 m 2 n | n, m ≥ 1}. e) {0 n 1 m | n ≤ m}. f) {0 n 1 m | n > m}. g) {0 n 1 2n | n ≥ 1}. h) Tập các chuỗi 0, 1 với số lượng 0 bằng số lượng 1. 2. Chứng minh các ngôn ngữ dưới đây không phải là ngôn ngữ chính qui: a) {0 n | n là số chính phương}. b) {0 n | n là số mà căn bậc ba của nó cũng là số nguyên}. c) {0 n | n là lũy thừa của 2}. d) {0 n | n là số nguyên tố}. e) {w {0, 1}* | |w| là số chính phương}. f) {ww | w {0, 1}*}. g) {www | w {0, 1}*}. h) {ww R | w {0, 1}*}. i) {ww | w {0, 1}*, w chính là w mà các số 0 được chuyển thành 1 và các số 1 được chuyển thành 0}. Tính đóng của ngôn ngữ chính qui 1. Gọi L là ngôn ngữ trên bảng chữ cái Σ, a ∈ Σ. Khi đó, L/a là thương (quotient) của L và a. L/a = {w ∈ Σ* | wa ∈ L} Ví dụ: L = {a, aab, baa} thì L/a = {ε, ba}. Chứng minh: Nếu L là RL thì L/a cũng là RL. Hướng dẫn: Xét DFA của L và chú ý đến các trạng thái chấp nhận. 2. Gọi L là ngôn ngữ trên bảng chữ cái Σ, a ∈ Σ. Khi đó, a\L là: a\L = {w ∈ Σ* | aw ∈ L} Ví dụ: L = {a, aab, baa} thì a\L = {ε, ab}. Chứng minh: Nếu L là RL thì a\L cũng là RL. Hướng dẫn: Chú ý tính đóng của phép đảo và thương. 3. Hãy chỉ ra rằng ngôn ngữ chính qui L là đóng dưới các thao tác sau: a) min(L) = {w | w ∈ L và không có tiền tố nào của w thuộc L}. b) max(L) = {w | w ∈ L và không có chuỗi x ≠ ε khiến cho wx thuộc L}. c) init(L) = {w | với một chuỗi x nào đó, wx thuộc L}. Hướng dẫn: Bắt đầu từ DFA của L, tiến hành xây dựng DFA cho ngôn ngữ min(L), max(L), init(L). 4. Nếu x = x 1 x 2 … x n và y = y 1 y 2 … y n là những chuỗi có cùng chiều dài. Gọi alt(x, y) là chuỗi mà trong đó, sự xuất hiện của từng ký hiệu thuộc x và y xen kẽ nhau, bắt đầu bằng ký hiệu thuộc x: alt(x, y) = x 1 y 1 x 2 y 2 … x n y n Chứng minh rằng nếu L và M là RL thì alt(L, M) = {alt(x, y) | x L, y M, |x| = |y|} cũng là RL. Tối giản DFA 1. Cho DFA với bảng truyền sau: 0 1 A B A B A C C D B *D D A E D F F G E G F G H G D a) Xây dựng bảng xác định các cặp trạng thái phân biệt/tương đương. b) Xây dựng DFA tương đương có số lượng trạng thái tối thiểu. 2. Yêu cầu tương tự như Bài 1 cho DFA có bảng truyền sau: 0 1 A B E B C F *C D H D E H E F I *F G B G H B H I C *I A E Hết . Bài tập lý thuyết chương 4 Các đặc tính của ngôn ngữ chính qui Môn: Automata và Ngôn ngữ hình thức. Bổ đề bơm 1. Chứng minh các ngôn ngữ dưới đây không phải là