Các tính chất của ngôn ngữ chính qui

27 1.3K 1
Các tính chất của ngôn ngữ chính qui

Đ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

NNCQ tổng quát là như thế nào? Có phải chăng mọi ngôn ngữ hình thức đều là chính qui?

Trang 130Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông TinChương 4 Các tính chất củangôn ngữ chính quiNNCQ tổng quát là như thế nào? Có phải chăng mọi ngôn ngữ hình thức đều là chính qui?Khi chúng ta thực hiện các phép toán trên NNCQ thì kết quả sẽ như thế nào, có còn là một NNCQ không?Một ngôn ngữ nào đócóhữu hạn không? Có rỗng không?Làm thế nào để biết một ngôn ngữ đã cho có là chính qui không? Trang 131Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông TinChương 4 Các tính chất củangôn ngữ chính qui4.1 Tính đóng của ngôn ngữ chính qui.4.2 Các câu hỏi cơ bản về ngôn ngữ chính qui 4.3 Nhận biết các ngôn ngữ không chính qui Trang 132Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông TinTính đóng của NNCQĐóng dưới các phép toán tập hợp đơn giản.Định lý 4.1Nếu L1và L2là các NNCQ, thì L1∪L2, L1∩L2 , L1L2, và L1* cũng vậy. Chúng ta nói rằng họ NNCQ là đóng dưới các phép hội, giao, kết nối, bù và bao đóng-sao.Chứng minhNếu L1, L2là chính qui thì ∃ các BTCQ r1, r2sao cho L1= L(r1), L2= L(r2). Theo định nghĩa r1+ r2, r1r2và r1* là các BTCQ định nghĩa các ngôn ngữ L1∪L2, L1L2, và L1*. Vì vậy họ NNCQ là đóng đối với các phép toán này.Để CM tính đóng đối với phép bù, cho M = (Q, Σ, δ, q0, F) làdfa chấp nhận L1, thì dfa = (Q, Σ , δ, q0, Q - F) chấp nhận .L^ML Trang 133Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông TinĐóng dưới các phép toántập hợp đơn giảnĐể CM tính đóng đối với phép giao ta có hai cách như sau.Cách thứ nhấtDựa vào qui tắc De Morgan ta cóDựa vào tính đóng của phép bù và phép hội vừa được chứng minh ở trên ta suy ra tính đóng đối với phép giao.Cách thứ haiTa sẽ xây dựng một dfa cho L1∩ L2.Cho M1= (Q, Σ, δ1, q0, F1) và M2= (P, Σ, δ2, p0, F2) là các dfa lần lượt chấp nhận L1, L2.Ta xây dựng dfa chấp nhận L1∩ L2bằng thủ tục intersection sau.212121LLLLLL UII ==)^),,(,^,,^(^00FpqQMδΣ= Trang 134Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông TinThủ tục: intersectionThủ tục: intersectionInput: dfa M1= (Q, Σ, δ1, q0, F1) và dfa M2= (P, Σ, δ2, p0, F2)Output: dfa = Q × P, tức là = {(qi, pj): trong đó qi∈ Q còn pj∈ P}.Các chuyển trạng thái được xây dựng như sau((qi, pj), a) = (qk, pl)nếu và chỉ nếuδ1(qi, a) = qkvà δ2(pj, a) = pl= {(qi, pj): trong đó qi∈ F1còn pj∈ F2})^),,(,^,,^(^00FpqQMδΣ=^Q^δ^Q^F Trang 135Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông TinThủ tục: intersection (tt)Cách xây dựng trên mô phỏng lại quá trình xử lý của đồng thời hai dfa M1và M2. Ngoài ra dựa vào định nghĩa của ta thấy chỉ chấp nhận những chuỗi mà được đồng thời cả hai dfa M1vàM2chấp nhận. Vì vậy chấp nhận L1∩ L2.Ví dụTìm dfa giao của L1={a2nbm: n, m ≥ 0} và L2={a3nb2m: n, m ≥ 0}^δ^M^Mp1p0p2p3aaabbbL2p4q1p1q0p0q2p4q1p2q2p3q0p2q0p1q1p0aaaaaabbbL1∩ L2q1q0q2aabL1b Trang 136Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông TinĐóng dưới các phép toántập hợp đơn giản (tt)Định lý 4.2Họ NNCQ là đóng dưới phép hiệu và nghịch đảo.Chứng minhĐể chứng minh tính đóng đối với phép hiệu dựa vào các qui tắc tập hợp ta có:L1- L2= L1 ∩Dựa vào tính đóng của phép bù và phép giao đã được chứng minh, suy ra tính đóng cho phép hiệu.Tính đóng của phép nghịch đảo đã được chứng minh ở Chương 3, slide 128.2L Trang 137Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông TinĐóng dưới các phép toán khácPhép đồng hình (homomorphism)Định nghĩa 4.1Giả sử Σ và Γ là các bảng chữ cái, thì một hàmh: Σ→Γ*được gọi là một phép đồng hình. Bằng lời, một phép đồng hình là một sự thay thế trong đómỗi kí hiệu đơn được thay thế bằng một chuỗi.Mở rộng nếu w = a1a2. . . an, thìh(w) = h(a1)h(a2). . .h(an)Nếu L là ngôn ngữ trên Σ, thì ảnh đồng hình (homomorphic image) của nó được định nghĩa làh(L) = {h(w): w ∈ L}. Trang 138Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông TinVí dụCho Σ ={a, b}, Γ ={a, b, c} và h được định nghĩa như sauh(a) = ab,h(b) = bbc.Thì h(aba) = abbbcab. Ảnh đồng hình của L = {aa, aba} làngôn ngữ h(L) = {abab, abbbcab}.Cho Σ ={a, b}, Γ ={ b, c, d } và h được định nghĩa như sauh(a) = dbcc, h(b) = bdc.Nếu L là ngôn ngữ được biểu thị bởi BTCQr = (a + b*)(aa)*, thìr1= (dbcc + (bdc)*)(dbccdbcc)*,là BTCQ biểu thị cho h(L). Từ đódẫn ta tới định lý sau Trang 139Lý thuyết Ôtômát & NNHT - Khoa Công Nghệ Thông TinĐịnh lýĐịnh lý 4.3Cho h là một đồng hình. Nếu L là một NNCQ, thì ảnh đồng hình của nó h(L) cũng là NNCQ. Họ các NNCQ vì vậy là đóng dưới phép đồng hình bất kỳ.Phép thương đúngĐịnh nghĩa 4.2Cho w, v ∈Σ* thì thương đúng (right quotient) của w cho v được kí hiệu và định nghĩa là w/v = u nếu w = uv, nghĩa là nếu vlà tiếp vĩ ngữ của w thì w/v là tiếp đầu ngữ tương ứng của w. Cho L1và L2là các ngôn ngữ trên bảng chữ cái giống nhau, thì thương đúng của L1với L2 được định nghĩa làL1/L2= {w/v: w ∈ L1, v ∈ L2}= {x : xy ∈ L1với một y nào đó ∈ L2} [...]... (homomorphic image) của nó được định nghĩa là h(L) = {h(w): w ∈ L}. Trang 131 Lý thuyết Ơtơmát & NNHT - Khoa Cơng Nghệ Thơng Tin Chương 4 Các tính chất của ngơn ngữ chính qui 4.1 Tính đóng của ngơn ngữ chính qui. 4.2 Các câu hỏi cơ bản về ngơn ngữ chính qui 4.3 Nhận biết các ngơn ngữ khơng chính qui Trang 136 Lý thuyết Ơtơmát & NNHT - Khoa Cơng Nghệ Thơng Tin Đóng dưới các phép tốn tập hợp... Khoa Cơng Nghệ Thơng Tin Chương 4 Các tính chất của ngơn ngữ chính qui  NNCQ tổng quát là như thế nào? Có phải chăng mọi ngơn ngữ hình thức đều là chính qui?  Khi chúng ta thực hiện các phép tốn trên NNCQ thì kết quả sẽ như thế nào, có cịn là một NNCQ khơng?  Một ngơn ngữ nào đócóhữu hạn khơng? Có rỗng khơng?  Làm thế nào để biết một ngơn ngữ đã cho có là chính qui khơng? Trang 137 Lý thuyết... giản.  Định lý 4.1  Nếu L 1 và L 2 là các NNCQ, thì L 1 ∪L 2 , L 1 ∩L 2 , L 1 L 2 , và L 1 * cũng vậy. Chúng ta nói rằng họ NNCQ là đóng dưới các phép hội, giao, kết nối, bù và bao đóng-sao.  Chứng minh  Nếu L 1 , L 2 là chính qui thì ∃ các BTCQ r 1 , r 2 sao cho L 1 = L(r 1 ), L 2 = L(r 2 ). Theo định nghĩa r 1 + r 2 , r 1 r 2 và r 1 * là các BTCQ định nghĩa các ngôn ngữ L 1 ∪L 2 , L 1 L 2 , và L 1 *.... đảo.  Chứng minh  Để chứng minh tính đóng đối với phép hiệu dựa vào các qui tắc tập hợp ta có: L 1 - L 2 = L 1 ∩  Dựa vào tính đóng của phép bù và phép giao đã được chứng minh, suy ra tính đóng cho phép hiệu.  Tính đóng của phép nghịch đảo đã được chứng minh ở Chương 3, slide 128. 2 L Trang 149 Lý thuyết Ơtơmát & NNHT - Khoa Cơng Nghệ Thơng Tin Nhận biết các NN khơng CQ Nhưng vì M chấp nhận... Thông Tin Các định lý (tt)  Định lý 4.7  Cho các biểu diễn chuẩn của hai NNCQ L 1 và L 2 , tồn tại giải thuật để xác định có hay khơng L 1 = L 2 .  Chứng minh  Sử dụng L 1 và L 2 chúng ta xây dựng ngôn ngữ:  Theo lý thuyết tập hợp ta có L 1 = L 2 khi và chỉ khi L 3 = ∅. Vậy thay vì kiểm tra L 1 có bằng L 2 khơng ta chuyển về kiểm tra L 3 có bằng ∅ khơng. Bằng tính đóng L 3 là chính qui, và chúng... một hộp chứa nhiều hơn một vật thể.  Ngơn ngữ L = {a n b n : n ≥ 0} có chính qui không?  Câu trả lời là không, như chúng ta sẽ chứng tỏ bằng cách sử dụng phương pháp phản chứng sau. Giả sử L là chính qui thì ∃ dfa M = (Q, {a,b}, δ, q 0 , F) nào đó cho L. Xét δ*(q 0 , a i ) với i = 0, 1, 2, 3, Vì có một số khơng giới hạn các i, nhưng chỉ có một số hữu hạn các trạng thái trong M, theo nguyên lý chuồng... chúng ta không thể ép buộc đối thủ lấy một phân hoạch cụ thể của chuỗi w, chúng ta có thể chọn chuỗi w sao cho đối thủ bị hạn chế nghiêm ngặt trong bước (3), ép buộc một sự chọn lựa của x, y, z sao cho cho phép chúng ta tạo ra một mâu thuẫn với bổ đề bơm trên bước kế tiếp của chúng ta.  Ví dụ Chứng minh các ngơn ngữ sau là khơng chính qui.  L 1 = {ww R : w ∈ {a, b}*}  L 2 = {a n b l : n ≠ l}... L 1 /L 2 là các NNCQ , điều này gợi ý cho chúng ta rằng thương đúng của hai NNCQ cũng là NNCQ.  Bổ đề  Cho M 1 = (Q 1 , Σ , δ 1 , q 0 , F 1 ) là một dfa cho L 1 .Nếu một trạng thái q nào đó ∈ Q 1 có tính chất tồn tại một chuỗi y nào đó ∈ L 2 sao cho δ 1 *(q, y) ∈ F 1 thì ∀ x mà δ 1 *(q 0 , x) = q, x sẽ ∈ L 1 /L 2 . Và vì vậy nếu thay những trạng thái kết thúc của M bằng những trạng thái q có tính chất. .. a m b n với n ≠ m. Điều này mâu thuẫn với định nghĩa của L, suy ra L khơng chính qui.  Nhận xét  Trong lý luận này, nguyên lý chuồng chim bồ câu đơn giản phát biểu rằng một ơtơmát hữu hạn có một bộ nhớ hữu hạn. Để chấp nhận tất cả các chuỗi a n b n , một ôtômát phải phân biệt giữa mọi tiếp đầu ngữ a n và a m . Nhưng vì chỉ có một số hữu hạn các trạng thái nội để thực hiện điều này, nên phải có... |w| ≥ m đều tồn tại một cách phân tích w thành bộ ba w = xyz, với |xy| ≤ m, và |y| ≥ 1, sao cho w i =xy i z ∈ L ∀ i = 0, 1, 2,  Chứng minh  Nếu L là chính qui, thì ∃ một dfa chấp nhận nó. Lấy một dfa như thế có tập trạng thái Q = {q 0 , q 1 , q 2 , ,q n }. Chọn m = |Q| = n + 1. Trang 132 Lý thuyết Ơtơmát & NNHT - Khoa Cơng Nghệ Thơng Tin Tính đóng của NNCQ  Đóng dưới các phép tốn tập hợp . TinChương 4 Các tính chất củangôn ngữ chính qui4 .1 Tính đóng của ngôn ngữ chính qui. 4.2 Các câu hỏi cơ bản về ngôn ngữ chính qui. .4.3 Nhận biết các ngôn ngữ không. TinChương 4 Các tính chất củangôn ngữ chính qui NNCQ tổng quát là như thế nào? Có phải chăng mọi ngôn ngữ hình thức đều là chính qui? Khi chúng ta thực hiện các

Ngày đăng: 13/10/2012, 09:16

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