ôtômat hữu hạn đoán nhận Ngôn ngữ chính quy

19 1.5K 31
ôtômat hữu hạn  đoán nhận Ngôn ngữ chính quy

Đ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

Ng Duc Thuan Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 12 Nguyễn Đức Thuần Ch-ơng II ôtômat hữu hạn đoán nhận Ngôn ngữ chính quy 1.ôtômat hữu hạn (Finite automata - Fa) Ôtômát hữu hạn có thể xem nh- "máy trừu t-ợng". Chúng là một công cụ đoán nhận một lớp các ngôn ngữ đơn giản gọi là chính qui. 2.1 ôtômát hữu hạn 2.1 Định nghĩa: Ôtômát hữu hạn là bộ M = <ồ,Q,d, q 0 ,F>, trong đó: ồ : là tập hữu hạn khác rỗng các ký hiệu vào. Q : là tập hữu hạn khác rỗng các trạng thái. q 0 : là trạng thái đầu (q 0 ẻ Q) F : là tập các trạng thái kết thúc (FQ) d : đ-ợc gọi là hàm chuyển có dạng : 1. Nếu hàm chuyển là ánh xạ : d : Q x ồ đ Q, khi đó M đ-ợc gọi là ôtômat đơn định ( Deterministic Finite Automata, viết tắt DFA). 2. Nếu hàm chuyển là ánh xạ : d : Q x ồ đ 2 Q , khi đó M đ-ợc gọi là ôtômat không đơn định ( Nondeterministic Finite Automata, viết tắt NDFA). Ta có thể mô tả các b-ớc làm việc của 1 ôtômát hữu hạn M = <ồ,Q,d, q 0 ,F>,khi cho xâu vào w = x 1 x 2 x n ẻ ồ * nh- một máy, mà ph-ơng thức làm việc nh- sau: Có một băng vào dùng để ghi xâu vào. Có một đầu đọc, ở mỗi thời điểm có thể nhìn vào 1 ô ở băng vào. Có một bộ điều khiển Q gồm một số hữu hạn trạng thái: ở mỗi thời điểm nó có một trạng thái. ( Hình 2.1) Băng vào x 1 x 2 x n-2 x n-1 x n Bộ điều khiển Hình 2.1 Các bộ phận của ôtômat hữu hạn Khi bắt đầu làm việc máy ở trạng thái đầu q 0 và đầu đọc đang nhìn vào ô có ký hiệu x 1 . Tiếp theo, máy chuyển từ trạng thái q 0 d-ới tác động của ký hiệu vào x 1 về trạng q Ng Duc Thuan Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 13 Nguyễn Đức Thuần thái mới d(q 0 , x 1 ) = q 1 ẻQ và đầu đọc chuyển sang một ô, tức nhìn vào ô ký hiệu x 2 . Sau đó ôtômat M lại tiếp tục chuyển từ trạng thái q 1 nhờ hàm chuyển d về trạng thái mới: q 2 = d(q 1 , x 2 ) = d(d (q 0 , x 1 ), x 2 ) ẻQ. Quá trình đó sẽ tiếp tục cho đến khi đầu đọc nhìn vào ký hiệu x n với trạng thái của máy là q n-1 = d(q 0 , x 1 x 2 x n-1 ). Hàm chuyển lại đ-a máy từ trạng thái q n-1 d-ới tác động của x n về trạng thái q n = d(q n-1 , x n ) = d(q 0 , x 1 x 2 x n-1 x n ) ẻQ. Khi đó ôtômat dừng lại. Nếu q n ẻF thì ta nói rằng ôtômat đã đoán nhận ra xâu w. Trong tr-ờng hợp ng-ợc lại, thì nói rằng ôtômát không đoán nhận đ-ợc xâu w. Tập L(M) = {w/ w ẻ ồ * mà d(q 0 , w)ẻ F} đ-ợc gọi là ngôn ngữ đ-ợc đoán nhận bởi ôtômat M. Tập trạng thái Q trong quá trình tính toán đ-ợc coi nh- là bộ nhớ của một ôtômat. Vì Q là hữu hạn nên M đ-ợc gọi là ôtômat hữu hạn. 2.2 ph>ơng pháp biểu diễn ôtômát hữu hạn Cho Ôtômat thực chất là cho hàm chuyển của nó. Hàm chuyển có thể cho d-ới dạng bảng chuyển, hoặc cho d-ới dạng đồ thị. a. Ph0ơng pháp cho ôtômat bằng bảng chuyển: Trạng thái Ký hiệu vào x 1 x 2 x n q 1 q 2 q 3 q k d(q 1 , x 1 ) d(q 2 , x 1 ) d(q 3 , x 1 ) d(q k , x 1 ) d(q 1 , x 2 ) d(q 2 , x 2 ) d(q 3 , x 2 ) d(q k , x 2 ) d(q 1 , x n ) d(q 2 , x n ) d(q 3 , x n ) d(q k , x n ) Ví dụ 1: Xét ôtômat hữu hạn đơn định M = <ồ,Q,d, q 0 ,F>, trong đó: ồ = {0,1}, Q= {q 0 , q 1 , q 2 , q 3 }, F = {q 3 } bảng chuyển cho bởi Trạng thái 0 1 q 0 q 1 q 2 q 3 q 1 q 3 q 0 q 3 q 2 q 0 q 3 q 3 Ví dụ 2 : Giả sử xét các xâu w 1 = 10110, w 2 = 10011. Hỏi rằng ôtômat M có đoán nhận các xâu đó hay không? Ng Duc Thuan Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 14 Nguyễn Đức Thuần a. Dãy trạng thái của ôtômat M khi cho w 1 vào là : w 1 = 1 0 1 1 0 q 0 đ q 2 đ q 0 đ q 2 đ q 3 đ q 3 ẻ F Do đó, ôtômat M đoán nhận xâu w 1 = 10110. b. Dãy trạng thái của ôtômat M khi cho w 2 vào là : w 1 = 1 0 0 1 1 q 0 đ q 2 đ q 0 đ q 1 đ q 0 đ q 2 ẽ F Do đó, ôtômat M không đoán nhận xâu w 2 = 10011. Từ các ví dụ trên ta thấy quá trình đoán nhận một xâu nào đó đối với ôtômat M đơn định là quá trình biến đổi trạng thái cuối cùng của ôtômat có phải là trạng thái kết thúc hay không. Thuật toán mô phỏng ôtômat hữu hạn đoán nhận xâu vào của ôtômat đơn định nh- sau: Input : - Một xâu w, kết thúc bởi ký hiệu hết dòng eol. - Một ôtômat hữu hạn M với trạng thái ban đầu q 0 và tập trạng thái kết thúc là F. Output : - "True" nếu M đoán nhận đ-ợc xâu w - "False" nếu M không đoán nhận xâu w. Thuật toán: Begin S:=q 0 ; C:= ký tự đầu trong xâu w; While C <> eol do Begin S:= d (S,C); C:= ký tự tiếp trong w; end; If S in F then return (true) else return(False); End; Ví dụ 3 : Cho ôtômat không đơn định = <ồ,Q,d, q 0 ,F>, trong đó: ồ = {0,1}, Q = {q 0 , q 1 , q 2 , q 3 }, q 0 là trạng thái đầu, F = {q 2 , q 4 } là tập các trạng thái kết thúc. Ng Duc Thuan Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 15 Nguyễn Đức Thuần Hàm chuyển d : Qxồ đ 2 Q đ-ợc cho ở bảng sau: Trạng thái Ký hiệu vào 0 1 q 0 {q 0, ,q 3 } {q 0 ,q 1 } q 1 q 2 q 2 q 2 q 2 q 3 q 4 q 4 q 4 q 3 Khi cho xâu vào là w = 01001 thì đối với máy M ta có cây đoán nhận xâu nh- sau: Trong cây trên có một đ-ờng đi từ q 0 đến q 4 ẻ F nên xâu w 1 = 01001 là xâu đoán nhận đ-ợc bởi máy M. b. Ph0ơng pháp cho ôtômat bằng đồ thị chuyển: Thông th-ờng để dễ hình dung hơn, ta th-ờng biểu diễn hàm chuyển d-ới dạng một đồ thị định h-ớng, gọi là đồ thị chuyển nh- sau: Mỗi đỉnh của đồ thị t-ơng ứng với một trạng thái. Nút đầu đ-ợc trỏ bởi một mũi tên, các đỉnh có trạng thái kết thúc đ-ợc khoanh vòng tròn 2 lần. Nếu có d(q,a) = p thì có một cung đi từ đỉnh q đến đỉnh p, và cung đó mang nhãn a. Ví dụ 4 : Cho ôtômat không đơn định M= <ồ,Q,d, q 0 ,F>, trong đó: ồ = {0,1}, Q = {q 0 , q 1 , q 2 , q 3 }, q 0 là trạng thái đầu, F = {q 0 } là tập các trạng thái kết thúc. Trạng thái 0 1 q 0 q 1 q 2 q 3 q 2 q 3 q 0 q 1 q 1 q 0 q 3 q 2 q 0 q 0 q 0 q 0 q 3 q 1 q 3 q 0 q 0 q 3 q 1 q 4 q 4 Ng Duc Thuan Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 16 Nguyễn Đức Thuần Lúc này, đồ thị chuyển sẽ có dạng nh- sau: Chú ý : Định nghĩa ôtômat hữu hạn đơn định & không đơn định bằng hệ viết lại: - Ta gọi Hệ viết lại ngầm định của Ôtômat hữu hạn đơn định (không đơn định): M= <ồ,Q,d, q 0 ,F>, là hệ viết lại RW = (V,P) nh- sau: V = ồẩQ, P gồm các sản xuất đ-ợc thành lập theo quy tắc: Nếu có d(q,a) = p (hoặc d(q,a) = {p 1 ,p 2 , p m }) trong đó p, q, p i ẻ Q và a ẻồ thì : qa đ p là một sản xuất trong P (hay qa đ {p 1 p 2 p 3 p n }) Với các quan hệ suy dẫn , đã xác định ở ch-ơng I, hệ viết lại RW cho phép biến đổi các hình trạng của Ôtômat hữu hạn. Ngôn ngữ đ-ợc đoán nhận bởi M là: L = {w ẵ w ẻồ* và q 0 w p với p ẻ F}. 2.3 sự t>ơng đ>ơng giữa Ôtômat hữu hạn đơn định và Ôtômat hữu hạn không đơn định: Theo định nghĩa của Ôtômat đơn định M và không đơn định N , nếu ký hiệu các lớp ngôn ngữ đ-ợc đoán nhận bởi M và N t-ơng ứng là L(M) và L(N). Ta có định lý sau: 2.3.1 Định lý : Lớp ngôn ngữ đoán nhận bởi ôtômát đơn định trùng với lớp ngôn ngữ đoán nhận đ-ợc bởi ôtômat không đơn định. Chứng minh: Theo định nghĩa của ôtômat đơn định & ôtômát không đơn định, dễ dàng nhận thấy: lớp ngôn ngữ đoán nhận đ-ợc bởi ôtômat đơn định là lớp con của lớp ngôn ngữ đoán nhận đ-ợc ôtômát không đơn định. ( L(M) L(N) ). Ta chứng minh L(N) L(M). Thật vậy, giả sử p ẻồ * đoán nhận đ-ợc bởi ôtômát không đơn định N = <ồ,Q,d,s 0 ,F> hay p ẻ L(N). Ta xây dựng ôtômát đơn định M = <ồ',Q',d',q 0 ,F'> đoán nhận p nh- sau : ồ'=ồ, Q' = 2 Q , q 0 = {s 0 }; F' = {U QẵUầFạặ} còn d':Q'xồ đ Q' đ-ợc xác định nh- sau: q 3 q 1 q 2 q 0 1 1 0 0 0 0 1 1 Ng Duc Thuan Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 17 Nguyễn Đức Thuần "UẻQ, "xẻồ thì d'(U,x) = qUẻ U d(q,x). Với M định nghĩa nh- trên, thì ta có p ẻL(M) hay L(N) L(M). (đ.p.c.m) Ví dụ 5: Cho Ôtômat không đơn định N = <ồ,Q,d, s 0 ,F>, với ồ = {a,b}, Q ={s 0, s 1 }, F = {s 1 }, hàm chuyển đ-ợc xác định : d: Qxồ đ 2 Q đ-ợc cho bởi bảng chuyển sau: Trạng thái Ký hiệu vào a b s 0 {s 0 , s 1 } s 1 s 1 {s 0, s 1 } Khi đó Ôtômat đơn định M t-ơng ứng với ôtômat không đơn định N đ-ợc xây dựng nh- sau: M = <ồ',Q',d',q 2 ,F'>, với ồ' = ồ= {a,b}, Q' = {q 1 ,q 2 ,q 3 ,q 4 } ở đây q 1 =ặ, q 2 = {s 0 }, q 3 = {s 1 }, q 4 = {s 0 , s 1 } còn F' = {q 3 , q 4 }. Hàm chuyển d' cho d-ới bảng sau: Trạng thái Ký hiệu vào a b q 1 ặ ặ q 2 q 4 q 3 q 3 q 4 q 4 q 4 q 4 Ta có L(N) = L(M) hay N t-ơng đ-ơng với M. Ví dụ 6: - Xét Ôtômát không đơn định N có đồ thị chuyển nh- sau : - Đồ thị chuyển của Ôtômát đơn định M t-ơng ứng là: q 1 q 0 0,1 1 0 1 {q 1 } {q 0 } {q 0 , q 1 } 1 1 0 0 0,1 0,1 Ng Duc Thuan Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 18 Nguyễn Đức Thuần Nhận xét: Theo định lý trên : Nếu ngôn ngữ L đ-ợc chấp nhận bởi ôtômat hữu hạn không đơn định, thì tồn tại một ôtômát hữu hạn đơn định chấp nhận L. 2. Ôtômat hữu hạn và văn phạm chính qui: 2.4.1 Định lý : Nếu L là ngôn ngữ chính qui thì tồn tại một ôtômat hữu hạn không đơn định chấp nhận L. Chứng minh : Giả sử L đ-ợc sinh ra bởi văn phạm chính qui G = <ồ, D,S,P>. Ta xây dựng ôtômat hữu hạn không đơn định N = < ồ' ,Q, d, q 0 , F>, trong đó: - ồ' = ồ, Q= D ẩ {E}, E ẽ ồẩD; - q 0 = S - d(E, a) = ặ, "a ẻồ - d(B,a) chứa tất cả các trạng thái D sao cho B đaDẻP, thêm vào : d(B,a) chứa E nếu Bđa ẻP. -Nếu có S đe : d(B,a)={S} F E ES = ỡ ớ ợ {}, {,}, Ta chứng minh L(N) = L(G)=L. * L(G) L(N) Lấy w = a 1 a 2 a k ẻ L và giả sử eạw, lúc đó tồn tại một suy dẫn trong G: S a 1 A 1 a 1 a 2 A 2 a 1 a 2 a k-1 A k-1 a 1 a 2 a k . ở đây A 1 , A 2 , , A k-1 ẻD và do đó tồn tại một dãy qui tắc của p: S đ a 1 A 1 ; A 1 đ a 2 A 2 ; ; A k-1 đ a k . Theo định nghĩa của d thì : A 1 ẻd(S,a 1 ); A 2 ẻd(A 1 ,a 2 ); ; A k-1 ẻd( A k-2 ,a k-1 ); E ẻd( A k-1 ,a k ); Nh- vậy : E ẻ d(A,a 1 a 2 a k ) hay w ẻ L(N); Nếu w = e ẻ L thì trong G chứa S đ e và do đó S ẻ F. Trong tr-ờng hợp này d(S,e) ={S} nên e ẻ L(N). * L(N) L(G) Ng-ợc lại, Lấy w = a 1 a 2 a k ẻ L(N) và giả sử eạw, lúc đó tồn tại một dãy trạng thái S, A 1 , A 2 , ,A k , E sao cho: A 1 ẻd(S,a 1 ); A 2 ẻd(A 1 ,a 2 ); ; A k-1 ẻd( A k-2 ,a k-1 ); E ẻd( A k-1 ,a k ); Theo định nghĩa của d ta lại có các qui tắc: S đ a 1 A 1 ; A 1 đ a 2 A 2 ; ; A k-1 đ a k . Và do đó có dãy suy dẫn: nếu P không chứa S đe ng-ợc lại Ng Duc Thuan Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 19 Nguyễn Đức Thuần S a 1 A 1 a 1 a 2 A 2 a 1 a 2 a k-1 A k-1 a 1 a 2 a k . hay w ẻ L(G); Nếu w = e ẻ L(N) thì tồn tại qui tắc S đ e ẻP và do đó eẻL(G). Vậy L(M) = L(G) = L. đ.p.c.m Ví dụ 7: Xét G = < {a,b}, {S,A,B}, S, { S đaA, S đ bB, A đ aA, B đbB, A đa, B đb}> Xây dựng Ôtômat hữu hạn không đơn định thừa nhận L(G): N= <{a,b}, {S,A,B,E}, d, S, {E}> d(S,a) = {A} d(A,a) = {A,E} d(S,b) = {B} d(A,b) = ặ d(B,a) = ặ d(B,b) = {B,E} d(E,a) = d(E,b) = ặ. L(G) = {a i , b j , i,j 0 } 2.4.2 Định lý : Nếu ngôn ngữ L đ-ợc đoán nhận bởi 1 ôtômát hữu hạn đơn định thì L là 1 ngôn ngữ chính qui. Chứng minh : Cho M = < ồ,Q, d, q 0 , F> là ôtômát hữu hạn đơn định chấp nhận L. Ta xây dựng văn phạm chính qui sau : G = <ồ, D,S,P>. ở đây: S = q 0 ; D = Q; P đ-ợc xác định nh- sau: - Nếu có d(q, a) = p thì P chứa q đ ap - Nếu có d(q, a) = p ẻF thì P chứa q đ a. Ta sẽ chứng minh : L(G) = L - {e} * Ta chứng minh L - { e } L(G): S b b A E B a a Ng Duc Thuan Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 20 Nguyễn Đức Thuần Lấy w = a 1 a 2 a k ẻ L - {e} ta có : d(q 0 , a 1 ) = p 1 d(p 1 , a 1 ) = p 2 . . . . . . . . . . d(p k-1 , a k ) = p k ẻ F, và do đó trong P có các qui tắc: q 0 đ a 1 p 1 , p 1 đ a 2 p 2 , , p k-1 đ a k hay : q 0 a 1 p 1 a 1 a 2 p 2 a 1 a 2 a k . Suy ra : w = a 1 a 2 a k ẻ L(G). * Ta chứng minh L(G) L - { e }: Ng-ợc lại lấy w = a 1 a 2 a k ẻ L(G), lúc đó tồn tại dãy suy dẫn: q 0 a 1 p 1 a 1 a 2 p 2 a 1 a 2 a k và nh- vậy: q 0 đ a 1 p 1 , p 1 đ a 2 p 2 , , p k-1 đ a k là các qui tắc của P. Theo định nghĩa của d ta có : p 1 = d(q 0 , a 1 ) p 2 = d(p 1 , a 2 ) . . . . . . . . . . p k =d(p k-1 , a k ) và p k ẻ F, do đó w ẻ L(M)= L Trong tr-ờng hợp eẻL, theo ch-ơng 1, ta có thể xây dựng đ-ợc G' sao cho: L(G') = L(G) ẩ {e} = L .(đ.p.c.m) Chú ý : L ngôn ngữ chính qui ị Ôtômát hữu hạn không đơn định í ò Ôtômát hữu hạn đơn định 2.4.3 Định lý : ( Định lý Pumping cho ngôn ngữ chính qui) Giả sử L là 1 ngôn ngữ hạn đ-ợc đoán nhận bởi 1 ôtômat hữ- hạn đơn định thì tồn tại 1 số tự nhiên m sao cho "w ẻL có ẵwẵm có thể phân tích d-ới dạng w=xyz, ở đây ẵxyẵÊ m, ẵyẵ 1 và "i0, xy i z ẻL. Chứng minh: Nếu L đ-ợc đoán nhận bởi 1 ôtômat hữu hạn đơn định (dfa): M =< ồ ,{q 0 , q 1 , q 2 , , q n },d, q 0 , F> Chọn m=n+1. "wẻL, ẵwẵ=k m, các trạng thái tham gia vào việc đoán nhận w có dạng: q 0 , q i , q j , , q j , , q r , , q r , , q f (vì số trạng thái tham gia đoán nhận lớn hơn số trạng thái có đ-ợc của ôtômat nên có ít nhất 1 trạng thái lặp) Gọi x, y, z lần l-ợt là các xâu con của w mà: d*(q 0 , x) = q r d*(q r , y) = q r {y là xâu con bé nhất của w thoả d*(q r , y) = q r } d*(q r , z) = q f Ta có thể nhận thấy Ng Duc Thuan Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 21 Nguyễn Đức Thuần ẵxyẵÊ m=n+1, ẵyẵ 1 Từ đó suy ra: d*(q 0 , xz) = q f d*(q 0 , xy 2 z) = q f d*(q 0 , xy 3 z) = q f Bằng qui nạp có thể chứng minh : d*(q 0 , xy i z) =q f , "i 0. (đ,p.c.m) 2.4.4. Hệ quả : Tồn tại 1 ngôn ngữ PNC không đ-ợc đoán nhận bởi 1 ôtômat hữu hạn không đơn định. Chứng minh: Xét L = {a n b n , n > 0}, G = <{a,b}, {S}, {Sđ aSbẵab}> L = L(G) Nếu L là đ-ợc đoán nhận bởi 1 ôtômat hữu hạn đơn định ịL là ngôn ngữ chính quiịL thoả định lý pumping: w i = a n b n = xy i z , ẵxyẵÊ m, ẵyẵ=k 1 Chọn n > m ị y chỉ chứa toàn bộ ký tự a. Khia i=0, w i = a n-k b n ẽL ( mâu thuẩn). Vì vậy L không là ngôn ngữ chính qui. Chú ý : Lớp ngôn ngữ chính qui và lớp nn PNC là phân biệt. 2.4.5 Một vài ví dụ minh hoạ: a. Cho ồ = {a, b}. Chứng minh rằng L = {ww R : w ẻồ *} không là ngôn ngữ chính qui. Giả sử L là 1 ngôn ngữ chính qui ị thoả định lý pumping ị $m, ẵww R ẵ m ị ww R = xy i z, ẵxyẵÊ m, ẵyẵ 1. Chọn m đủ lớn: Xét w= a m b m ị ww R = aa a bb b bb b a aa x y z ị xy i z với i = 0, ww R = a m-k b m b m a m ẽ L (mâu thuẩn). ị Vậy L không là ngôn ngữ chính qui. b. Cho ồ = {a, b}. Chứng minh rằng L = { w ẻồ * : n a (w) < n b (w)} không là ngôn ngữ chính qui. Giả sử L là 1 ngôn ngữ chính qui ị thoả định lý pumping ị $m, ẵwẵ m ị w = xy i z, ẵxyẵÊ m, ẵyẵ 1. Chọn n = m, và m đủ lớn w = a a b b ị w i = xy i z ẻ L x y z Chọn i 2 ị xy i z ẻ L ị n a (w i ) > n b (w i ) (mâu thuẩn). Vậy L không là ngôn ngữ chính qui. (đpcm) 3. Định lý Kleene [...]... Một số đồ thị chuyểncủa ôtômat hữu hạn đơn định: a Ôtômat đoán nhận ặ q0 h T c q1 b Ôtômat đoán nhận e e q0 u D hoặc q1 c Ôtômat đoán nhận {a} g N a q0 q1 d Ôtômat đoán nhận r1+r2 q0 q1 e Ôtômat đoán nhận r1* q0 f Ôtômat đoán nhận (a+b)* hoặc q0 q1 q0 n a u Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 27 Nguyễn Đức Thuần g Ôtômat đoán nhận r1*r2* r 1 q0 q1... là 0+1+2+ Ví dụ 9: Cho Ôtômat hữu hạn không đơn định, chấp nhạn ngôn ngữ đ-ợc cho bởi biểu thức chính qui sau: (01*+02)1+(0+1)(220*1)* Tr-ớc hết ta xây dựng các Ôtômát hữu hạn không đơn định d-ới đây: a 0 s0 s1 h T c Ôtômat này chấp nhận ngôn ngữ đ-ợc ký hiệu bởi 01* b s0 0 s1 s2 2 u D Ôtômat nay chấp nhận ngôn ngữ đ-ợc ký hiệu bởi 02 0 c g N s0 s1 1 Ôtômát này chấp nhận ngôn ngữ đ-ợc ký hiệu bởi 0+1... Hệ quả : Mọi ngôn ngữ tạo nên từ các ngôn ngữ hữu hạn bằng cách áp dụng một số hữu hạn lần l-ợt các phép hợp, ghép tiếp và * đều là NNCQ Chứng minh : Do hệ quả 1.8.1, 1.8.3, 1.8.4, h T c 2.5.4 Định lý (Kleene) :Mọi NNCQ đều có thể nhận đ-ợc từ các ngôn ngữ hữu hạn bằng cách áp dụng một số hữu hạn lần các phép hợp, ghép tiếp và * Chứng minh : Giả sử L đ-ợc đoán nhận bởi một Ôtômat hữu hạn đơn định M... Ôtômát này chấp nhận ngôn ngữ đ-ợc ký hiệu bởi biểu thức 220*1 n a u Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 25 Nguyễn Đức Thuần S1 0 e S0 0 2 s2 S3 Ôtômát này chấp nhận ngôn ngữ đ-ợc ký hiệu bởi (220*1)* S1 2 f 2 S0 1 0 S2 h T c Ôtômat này chấp nhận ngôn ngữ đ-ợc ký hiệu 01*+02 1 1 S2 S1 0 g S0 g N 0 u D S3 1 S4 2 Ôtômat này chấp nhận ngôn ngữ đ-ợc ký hiệu... Ngôn ngữ Hình thức & Ôtômat 26 Nguyễn Đức Thuần Ôtômát này chấp nhận ngôn ngữ đ-ợc ký hiệu bởi biểu thức (0+1)(220*1)* S2 1 0 S1 1 1 S4 S0 0 S3 2 S5 1 1 2 S6 2 0 S7 0 Từ các Ôtômat trên ta có thể xây dựng Ôtômat chấp nhận ngôn ngữ đ-ợc ký hiệu bởi biểu thức chính qui sau: (01*+02)1+(0+1)(220*1)* 2.6.2 Biểu thức chính qui& đồ thị chuyển ôtômat hữu hạn. ..Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 22 Nguyễn Đức Thuần 2.5.1 Định lý : ặ và {e} là các ngôn ngữ chính qui (NNCQ) Chứng minh : ặ đ-ợc đoán nhận bởi mọi Ôtômat có F = ặ {e} đ-ợc đoán nhận bởi Ôtômát hữu hạn M = với d(q0, a) = d(q1,a) = q1 2.5.2 Định lý... thức chính qui, và Do hệ quả 2.5.3, và định lý Kleene ta có thể chứng minh các định lý sau: Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 28 Nguyễn Đức Thuần 2.6.3 Bổ đề : Với mọi tập hữu hạn L ồ*, đều tồn tại một BTCQ mà tập nó chỉ định là L 2.6.4 Định lý : Một ngôn ngữ L đ-ợc chỉ định bởi một BTCQ khi và chỉ khi nó đ-ợc đoán nhận bởi một Ôtômát hữu hạn Nói... ngữ L đ-ợc chỉ định bởi một BTCQ khi và chỉ khi nó đ-ợc đoán nhận bởi một Ôtômát hữu hạn Nói tóm lại : Các ngôn ngữ do BTCQ chỉ định và lớp các ngôn ngữ do Ôtômát h-u hạn đoán nhận là một Đó là lớp các NNCQ 5 Cực tiểu hóa các Ôtômat hữu hạn 2.7.1 Định nghĩa : Cho M = < ồ,Q, d, q0, F> là Ôtômát hữu hạn đơn định, và q1, q2 là 2 trạng thái khác nhau Ta nói rằng: n a u - Xâu u phân biệt các trạng thái q1,... của các ngôn ngữ chính quy Đó là nhờ các biểu thức chính quy, mà ta định nghĩa nh- sau: h T c 2.6.1 Định nghĩa: Cho ồ là một bộ chữ Một biểu thức chính quy( viết tắc là BTCQ) trên ồ là tập hợp do nó chỉ định đ-ợc định nghĩa một cách đệ qui nh- sau: u D 1/ ặ là một biểu thức chính qui, và chỉ định tập rỗng 2/ e là một biểu thức chính qui, và chỉ định tập {e} 3/ Với mỗi a ẻồ thì a là một biểu thức chính. .. đều có thể nhận đ-ợc từ các ngôn ngữ hữu hạn, bằng cách áp dụng một số hữu hạn lần các phép hợp, ghép tiếp và * Chứng minh : từ định nghĩa (2.5.4*) ta thấy, nếu w ẻ Rijk thì trong suy dẫn qiw qj: k (1) hoặc là trong M suy dẫn trên không đi qua trạng thái qk, tức là w ẻ Rij -1 (2) hoặc là M có (một số lần) đi qua qk Nh- vậy w bị chia cắt thành nhiều đoạn: Lý Thuyết Ngôn ngữ Hình thức & Ôtômat 23 Nguyễn . hữu hạn lần l-ợt các phép hợp, ghép tiếp và * đều là NNCQ. Chứng minh : Do hệ quả 1.8.1, 1.8.3, 1.8.4, 2.5.4 Định lý (Kleene) :Mọi NNCQ đều có thể nhận đ-ợc từ các ngôn ngữ hữu hạn bằng. Hình thức & Ôtômat 22 Nguyễn Đức Thuần 2.5.1 Định lý : ặ và {e} là các ngôn ngữ chính qui (NNCQ) Chứng minh : ặ đ-ợc đoán nhận bởi mọi Ôtômat có F = ặ. {e} đ-ợc đoán nhận bởi Ôtômát hữu. q 0 , {q 0 }> với d(q 0 , a) = d(q 1 ,a) = q 1 . 2.5.2 Định lý : Với w ẻồ*, thì {w} là NNCQ. Chứng minh : Nếu w = e thì mệnh đề đã đ-ợc chứng minh. - Nếu không w = a 0 a 1 a n trong

Ngày đăng: 09/05/2014, 08:58

Từ khóa liên quan

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

Tài liệu liên quan