Văn phạm chính quy& các tính chất
1Văn phạm chính quy& các tính chấtNội dung:•Văn phạm chính quy (RG: Regular Grammar)•Sự tương đương giữa RG và FA•Bổ đề bơm cho tập hợp chính quy•Tính chất đóng của tập hợp chính quyChương 4: 2Văn phạm chính quyVăn phạm chính quy: là văn phạm mà tất cả các luật sinh của nó đều có dạng tuyến tính trái (hoặc tuyến tính phải)•Tuyến tính trái: dạng A → Bw hoặc A → w•Tuyến tính phải: dạng A → wB hoặc A → wVăn phạm chính quy, ngôn ngữ chính quy, biểu thức chính quy và tập hợp chính quy:•Văn phạm chính quy sinh ra ngôn ngữ chính quy•Ngôn ngữ chính quy có thể được ký hiệu đơn giản bằng một biểu thức chính quy•Tập hợp các chuỗi được ký hiệu bởi một biểu thức chính quy được gọi là tập hợp chính quy 3Sự tương đương giữa RG & FAĐịnh lý 4.1: Nếu L được sinh ra từ một văn phạm chính quy thì L là tập hợp chính quyÝ nghĩa: một văn phạm chính quy có thể được biểu diễn bởi một Automata hữu hạn.Ví dụ: xét văn phạm tuyến tính phải: S → 0A ; A → 10A | ε•Nếu A là một biến: δ([A], ε) = {α | A → α là một luật sinh}•Nếu a là một ký hiệu kết thúc: δ([aα], a) = { [α] }•Trạng thái bắt đầu [S], trạng thái kết thúc [ε][0A] [A] [ε]0Startε[10A][S]ε1ε 4Sự tương đương giữa RG & FAVí dụ: xét văn phạm tuyến tính trái: S → S10 | 0•Đảo ngược văn phạm tuyến tính trái → tuyến tính phảiS → 01S | 0 [S] [01S][ε]Startε[0][1S]ε10•Đảo ngược automata0[0]εStartε[01S][ε]010[S] [1S] 5Sự tương đương giữa RG & FAĐịnh lý 4.2: Nếu L là một tập hợp chính quy thì L được sinh ra từ một văn phạm tuyến tính trái hoặc một văn phạm tuyến tính phải nào đóÝ nghĩa: một Automata hữu hạn có thể được biểu diễn bởi một văn phạm chính quy.Ví dụ: xét DFA cho 0(10)*A CB010, 1StartD0110 6Sự tương đương giữa RG & FATuyến tính phải: xét hàm chuyển trạng thái δ(p, a) = q•Ta có luật sinh: p → aq•Ngoài ra, nếu q là trạng thái kết thúc, ta có thêm luật sinh: p → a•Nếu q0 là trạng thái kết thúc, thêm vào: S → q0 | εA → 0B | 1D | 0B → 0D | 1CC → 0B | 1D | 0D → 0D | 1DA → 0B | 0B → 1CC → 0B | 0Do biến D không có ích:Tuyến tính trái: •Bắt đầu với một NFA cho LR•Đảo ngược chuỗi vế phải cho tất cả mọi luật sinh của văn phạm vừa thu được 7Bổ đề bơm cho tập hợp chính quyBổ đề 4.1: nếu L là tập hợp chính quy thì có tồn tại hằng số n sao cho nếu z là một từ bất kỳ thuộc L và |z| ≥ n thì ta có thể viết z=uvw với |uv| ≤ n, |v| ≥ 1 và ∀i ≥ 0 ta có uviw ∈ LChứng minh:•L là ngôn ngữ chính quy → tồn tại DFA M=(Q, Σ, δ, q0, F) có n trạng thái chấp nhận L.•Xét chuỗi nhập z = a1a2…am, m ≥ n•Với mỗi i=1,2,…,m, ta đặt δ(q0, a1a2…ai) = qi•Phải có ít nhất 2 trạng thái trùng nhau•z ∈ L → qm ∈ F → a1…ajak+1…am ∈ L(M) → a1…aj(aj+1…ak)iak+1…am ∈ L(M), với i ≥ 0 q0a1. . . ajqmqj=qkak+1. . amaj+1. . akuvwqm 8Bổ đề bơm cho tập hợp chính quyỨng dụng của bổ đề bơm: dùng để chứng tỏ một tập hợp không là tập hợp chính quyVí dụ: chứng minh tập hợp L = { | i là số nguyên, i ≥ 1} không làp tập hợp chính quyChứng minh:•Giả sử L là tập chính quy → tồn tại DFA chấp nhận L. Gọi n là số trạng thái của DFA.•Xét chuỗi z = •Theo bổ đề bơm: z=uvw với 1≤ lvl ≤ n và uviw ∈ L•Xét i = 2, ta phải có uv2w ∈ L•Mặt khác: n2 = lzl = luvwl < luvvwl ≤ n2 + n < (n+1)2•Do n2 và (n+1)2 là 2 số chính phương liên tiếp nên luv2wl không thể là một số chính phương, hay uv2w không thuộc L (trái giả thiết).0 n20 i2 9Tính chất đóng của tập hợp chính quyMột phép toán là đóng đối với tập chính quy khi áp dụng chúng vào tập hợp chính quy thì vẫn giữ được các tính chất của tập chính quy.Định lý 4.3: tập hợp chính quy đóng với các phép toán: hợp, nối kết và bao đóng Kleen.Định lý 4.4: tập hợp chính quy đóng với phép lấy phần bù.Định lý 4.5: tập hợp chính quy đóng với phép giao . quy Tính chất đóng của tập hợp chính quyChương 4: 2Văn phạm chính quyVăn phạm chính quy: là văn phạm mà tất cả các luật sinh của nó đều có dạng tuyến tính. 1Văn phạm chính quy& các tính chấtNội dung: Văn phạm chính quy (RG: Regular Grammar)•Sự tương đương giữa RG và FA•Bổ đề bơm cho tập hợp chính quy•Tính