1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Ngôn ngữ hình thức: Chương 4 - Nguyễn Thị Hồng

29 2 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 29
Dung lượng 675,55 KB

Nội dung

Bài giảng Ngôn ngữ hình thức: Chương 4 Ôtômat đẩy xuống, cung cấp cho người học những kiến thức như: Ô tô mát đẩy xuống; Sự tương đương giữa các loại ô tô mát đẩy xuống; Mối quan hệ giữa ô tô mát đẩy xuống và văn phạm phi ngữ cảnh; Ngôn ngữ phi ngữ cảnh. Mời các bạn cùng tham khảo!

Chương 4 Ơtơmat đẩy xuống GV: Ngũn Thi Hơ ̣ ̀ng Email: nguyenhong@hnue.edu.vn Nội dung     Ơ tơ mát đẩy xuống Sự tương đương giữa các loại ơ tơ mát đẩy xuống Mối quan hệ giữa ơ tơ mát đẩy xuống và văn  phạm phi ngữ cảnh Ngơn ngữ phi ngữ cảnh Ơ tơ mát đẩy xuống (ODX)  Mơ tả trực quan: Ơ tơ mát đẩy xuống  Cấu tạo:  Một băng vào chứa các kí hiệu của xâu vào  Một đầu đọc duyệt băng từ trái qua phải  Một bộ điều khiển các trạng thái hữu hạn  Một stack có khả năng nhớ vơ hạn, lúc đầu là rỗng (lúc  đầu stack chứa một kí hiệu đặc biệt để đánh dấu đáy  stack) Hoạt động của Ơ tơ mát đẩy xuống    Ban đầu, stack là rỗng Q trình thực hiện của ơ tơ mát đẩy xuống tương tự  như ơ tơ mát hữu hạn khơng tiền định Mỗi bước thực hiện của Ơ tơ mát đẩy xuống căn cứ  vào ba yếu tố:  Kí hiệu ở đỉnh stack  Trạng thái của ơ tơ mát  Kí hiệu đọc được trên băng vào Hoạt động của Ơ tơ mát đẩy xuống   Mỗi dịch chuyển gồm các hành động:  Thay đổi nội dung stack (đỉnh stack)  Thay đổi trạng thái  Đầu đọc dịch sang phải một ơ Chú ý: tồn tại dịch chuyển   nghĩa là kí hiệu trên băng  khơng được tham khảo (đầu đọc khơng dịch chuyển  sang phải) Sự đốn nhận của ODX  Có hai cách thừa nhận xâu:  Xâu vào được thừa nhận khi ơ tơ mát đọc hết xâu  và đến một trạng thái thừa nhận  Xâu vào được thừa nhận khi ơ tơ mát đọc hết xâu  và lúc đó stack rỗng Ơ tơ mát đẩy xuống  Định nghĩa IV.1 Ơ tơ mát đẩy xuống khơng tiền định là một bộ 7 thành  phần: M (Σ, Q, Γ, δ, q0, Z0, F)   Q : tập hữu hạn các trạng thái   Σ : bộ chữ vào   Γ : bộ chữ cái Stack, Q  Γ= Ø   δ : hàm chuyển Γ x Q x (Σ   {ε}) → tập con của Q x Γ*   q0 : trạng thái khởi đầu   Z0 : ký hiệu bắt đầu trên Stack(đáy stack)   F   Q : tập các trạng thái kết thúc Ơ tơ mát đẩy xuống    Ta gọi hình trạng của ơ tơ mát đẩy xuống là mọi xâu có dạng  qw trong đó  Γ*, q Q, w * Hình trạng có dạng Z0q0x được gọi là hình trạng ban đầu Hệ viết lại ngầm định trong M là W=(V, P):  V=Q Γ  P: ( ,p) δ(z,q,a) hay zqa p là một quy tắc trong P Ơ tơ mát đẩy xuống  Ngơn ngữ được thừa nhận theo trạng thái cuối bởi ODX M là: L(M)={w  *| Z0q0w=>*M  p,  Γ*, p F} Ngơn ngữ được thừa nhận theo stack rỗng bởi ODX M là: N(M)={w *| Z0q0w=>*M p, p Q} Sự tương đương giữa các ODX  Định lý IV.4: Cho L=L(M) trong đó M là một ODX. Tồn tại một ODX M’  sao cho L=N(M’) ( Nghĩa là Nếu L được đốn nhận bởi ODX  theo kiểu trạng thái cuối thì L cũng được đốn nhận bởi một  ODX theo kiểu stack rỗng) Sự tương đương giữa các  ODX   Giả sử M=( , Q,  ,  , q0, Z0, F) Xây dựng ơ tơ mát M’:  Thêm hai trạng thái mới q ’ và q  và một kí hiệu đáy stack  e mới X0: M’=( , Q {q0’, qe},  {X0},  ’, q0’, X0,  ) Hàm dịch chuyển  ’ được xác định như sau: (1)  ’(X0, q0’,  ) = {(X0Z0, q0)}  (2)  ’(Z, q, a) =  (Z, q, a) (với mọi q Q\F, a   { }, Z ) (3)  ’(Z, q, a) =  (Z, q, a),  ’(Z, q,  ) =  (Z, q,  ) {( , qe)} (với mọi q F, a  và Z ) (4)  ’(X0, q,  ) ={( , qe)} (với mọi q F) Sự tương đương giữa các  ODX  Ví dụ: Ngơn ngữ L={anbn|n≥0} được đốn nhận theo trạng  thái cuối của ODX M:  M=({a,b}, {q ,q ,q },{Z,a}, , q , Z, {q }) 0  Với  :  (Z,q ,a)={(Za,q )} nạp a và stack (a,q1,a)={(aa,q1)} nạp tiếp a vào stack (a,q1,b)={( ,q2)} xóa a khỏi stack (a,q2,b)={( ,q2)} tiếp tục xóa a khỏi stack (Z,q2, )={( ,q0)} về trạng thái thừa nhận M đốn nhận ngơn ngữ trên theo trạng thái cuối  Xây dựng M’ cũng đốn nhận ngơn ngữ trên theo stack  rỗng Sự tương đương giữa các  ODX   Xây dựng M’=({a,b}, {q0,q1,q2,q0’,qe},{Z,a,X},  ’, q0’, X,  )  trong đó  ’ gồm các sản xuất sau:  Quy tắc (1):  ’(X,q ’, )={XZ,q } 0  Quy tắc (2):  ’(a,q ,a)={aa,q },  ’(a,q ,b)={( ,q )},  1 ’(a,q2,b)={( ,q2)},  ’(Z,q2, )={( ,q0)}  Quy tắc (3):  ’(Z,q ,a)={(Za,q )},  ’(Z,q , )={( ,q )},  e ’(a,q0, )={( ,qe)}  Quy tắc (4):  ’(X,q , )={( ,q )} e  Quy tắc (5):  ’(Z,q , )={( ,q )},  ’(a,q , )={( ,q )},  e e e e ’(X,qe, )={( ,qe)} Một suy dẫn Sự tương đương giữa các  ODX  Với xâu đầu vào aabb, chuỗi suy dẫn như sau:  Như vậy quá trình suy dẫn kết thúc khi đọc hết xâu, trạng  thái là qe và stack rỗng => xâu aabb được ơ tơ mát thừa nhận  theo hình thức stack rỗng Sự tương đương giữa các  ODX Định lý IV.5: Cho L=N(M) trong đó M là một ODX. Tồn tại một ODX M’  sao cho L=L(M’) Chứng minh:  Giả sử M=( , Q,  ,  , q , Z ,  ) 0   Xây dựng ơ tơ mát M’: thêm hai trạng thái mới q0’ và qf , và  một kí hiệu đáy stack mới X0: M’=( , Q {q0’, qf},  {X0},  ’, q0’, X0, {qf}) Sự tương đương giữa các  ODX  Hàm dịch chuyển  ’ như sau: (1)  ’(X0, q0’,  ) = {(X0Z0, q0)} (2)  ’(Z, q, a) =  (Z, q, a) (với mọi q Q, a (3)  ’(X0, q,  ) = {( , qf)} (với mọi q Q)   { }, Z ) Ví dụ: Cho ơ tơ mát đẩy xuống M đốn nhận theo stack rỗng: M=({+,a}, {q}, {E,+,a},  , q, E,  ) trong đó   gồm các dịch  chuyển: (E, q,  ) = {(a+E, q), (a,q)} (+, q, +) = {( ,q)} (a, q, a) = {( ,q)}  Sự tương đương giữa các  ODX   Xây dựng ơ tơ mát M’ đốn nhận theo trạng thái cuối tương  đương với M: M’=({+,a}, {q,q0,qf}, {E,+,a,X},  ’, q0, X, {qf})  trong đó hàm dịch chuyển  ’ gồm các sản xuất sau: Quy tắc (1):  ’(X, q0,  ) = {(XE, q)} Quy tắc (2):  ’(E, q,  ) = {(a+E, q), (a,q)},  ’(+, q, +) = {( ,q)} ’(a, q, a) = {( ,q)}  Quy tắc (3):  ’(X, q,  ) = {( , q )}  f  Sự tương đương giữa các  ODX  Với xâu đầu vào a+a, chuỗi suy dẫn như sau:  Như vậy chuỗi suy dẫn có một nhánh đọc hết xâu và trạng  thái là qf là trạng thái thừa nhận => xâu được thừa nhận theo  trạng thái cuối.  Sự tương đương giữa ODX và văn  phạm phi ngữ cảnh Định lý IV.6:  Nếu L là một ngơn ngữ phi ngữ cảnh, thì tồn tại một ơ tơ  mát đẩy xuống M mà L=N(M) Xây dựng ODX:  M=( ,{q}, , ,q, S,  ) trong đó hàm   được xác định:  Nếu đỉnh stack là một kí hiệu khơng kết thúc A (1) với mọi A :  (A,q, )={( R,q)|A P}  Nếu đỉnh stack là một kí hiệu kết thúc a (2) với mọi a :  (a,q,a)={( ,q)}  Ví dụ   Cho văn phạm phi ngữ cảnh G: SaAA AaS|bS|a Xây dựng ODX:  M=({a,b},{q},{S,A,a,b}, ,q, S,  )  Hàm dịch chuyển  : (S,q, )={AAa,q}   (A,q, )={(Sa,q),(Sb,q),(a,q)} (a,q,a)={ ,q} (b,q,b)={ ,q} Sự tương đương giữa ODX và văn  phạm phi ngữ cảnh   Định lý IV.7: Cho L=N(M) với M là một ơ tơ mát đẩy xuống, thì L là  ngơn ngữ phi ngữ cảnh Xây dựng Văn phạm PNC G=( ,  , P, S)  M=( , Q, Γ, , q , Z ,  ) là ODX thừa nhận L theo stack  0 rỗng  Đặt E={[Z,p,q]|Z  Γ và p,q Q}  =E {S} Sự tương đương giữa ODX và văn  phạm phi ngữ cảnh  Tập các quy tắc P được thiết lập như sau: (1) với mọi q Q, S[Z0,q0,q] là một quy tắc (2) nếu (Xk…X2X1,p) (Z,q,a) trong đó k≥1 và  X1,X2, …,Xk Γ thì với mọi s1,s2,…,sk Q [Z,q,sk]a[X1,p,s1][X2,s1,s2]…[Xk,sk­1,sk] là mơt quy  tắc (3)Nếu ( ,r)  (Z,q,a) thì [Z,q,r]a là một quy tắc Ngơn ngữ phi ngữ cảnh    Ngơn ngữ phi ngữ cảnh được xác định bởi văn phạm phi ngữ  cảnh và ơ tơ mát đẩy xuống Các tính chất đóng của ngơn ngữ phi ngữ cảnh:  Định lý IV.8: Cho L  và L  là các ngơn ngữ phi ngữ cảnh.  Thế thì L1 L2, L1.L2 và L1* đều là các ngơn ngữ phi ngữ  cảnh  Định lý IV.9: Lớp các ngơn ngữ phi ngữ cảnh là khơng đóng  đối với phép giao và phép lấy bổ sung  Định lý IV.10: Nếu ngơn ngữ R là chính quy, ngơn ngữ L là  phi ngữ cảnh thì ngơn ngữ R L là phi ngữ cảnh Các bài tốn quyết định  trên ngơn ngữ phi ngữ cảnh     Bài tốn ngơn ngữ rỗng: Phải chăng L= Bài tốn xâu rỗng: Phải chăng  L Bài tốn về tính hữu hạn: Cho ngơn ngữ phi ngữ cảnh L. Vấn  đề là xác định xem L là hữu hạn hay vơ hạn Bài tốn thành viên: Cho ngơn ngữ phi ngữ cảnh G và một  xâu w. Xác định phải chăng w G ... Định lý IV.10: Nếu ngơn? ?ngữ? ?R là chính quy, ngơn? ?ngữ? ?L là  phi? ?ngữ? ?cảnh thì ngơn? ?ngữ? ?R L là phi? ?ngữ? ?cảnh Các? ?bài? ?tốn quyết định  trên ngơn? ?ngữ? ?phi? ?ngữ? ?cảnh     Bài? ?tốn ngơn? ?ngữ? ?rỗng: Phải chăng L= Bài? ?tốn xâu rỗng: Phải chăng ... (Z,q,a) thì [Z,q,r]a là một quy tắc Ngơn? ?ngữ? ?phi? ?ngữ? ?cảnh    Ngơn? ?ngữ? ?phi? ?ngữ? ?cảnh được xác định bởi văn phạm phi? ?ngữ? ? cảnh và ơ tơ mát đẩy xuống Các tính chất đóng của ngơn? ?ngữ? ?phi? ?ngữ? ?cảnh:  Định lý IV.8: Cho L... Định lý IV.8: Cho L  và L  là các ngơn? ?ngữ? ?phi? ?ngữ? ?cảnh.  Thế thì L1 L2, L1.L2 và L1* đều là các ngơn? ?ngữ? ?phi? ?ngữ? ? cảnh  Định lý IV.9: Lớp các ngơn? ?ngữ? ?phi? ?ngữ? ?cảnh là khơng đóng  đối với phép giao và phép lấy bổ sung

Ngày đăng: 25/10/2022, 10:12