Bước 2: Xác định văn phạm tuyến tính phải đơn cần tìm có ∆: là tập các kí hiệu không kết thúc tức là kí hiệu còn có thể thay thế, còn có thể viết lại.. 1.1.1 Đường lối Để tìm văn phạm
Trang 1∆: là tập các kí hiệu không kết thúc( tức là kí hiệu còn
có thể thay thế, còn có thể viết lại)
( V= ∑∪∆)
P: là tập các sản xuất ( tập các quy tắc) của văn phạm S: S∈∆ được gọi là kí hiệu bắt đầu của văn phạm
1.1 Văn phạm tuyến tính phải( VPTTP)
Văn phạm tuyến tính phải là văn phạm mà các sản xuất của nó có dạng:
A→ a1a2…anB hoặc A→ a1a2…an với: A, B∈∆
ai∈∑, i= 1, 2,…, n
1.2 Văn phạm tuyến tính phải đơn( VPTTPD)
Văn phạm tuyến tính phải đơn là văn phạm mà các sản xuất của nó có dạng:
Để tìm văn phạm tuyến tính phải đơn ta làm các bước sau đây:
Bước 1: Xác định các thành phần của văn phạm tuyến tính
phải mà đề bài đã cho
NGÔN NGỮ HÌNH THỨC
Đề tài:
Biết VPTTP đơn tìm OHT
Biết OHT tìm VPTTP đơn
Biết VPTTP đơn tìm OHT
Biết OHT tìm VPTTP đơn
Trang 2
Bước 2: Xác định văn phạm tuyến tính phải đơn cần tìm có
∆: là tập các kí hiệu không kết thúc( tức là kí hiệu còn
có thể thay thế, còn có thể viết lại)
( V= Σ∪∆)
P: là tập các sản xuất ( tập các quy tắc) của văn phạm S: S∈∆ được gọi là kí hiệu bắt đầu của văn phạm
*)Văn phạm tuyến tính phải (VPTTP)
Văn phạm tuyến tính phải là văn phạm mà các sản xuất của nó có dạng:
A→ a1a2…anB hoặc A→ a1a2…an với: A, B∈∆
ai∈Σ, i= 1, 2,…, n
*)Văn phạm tuyến tính phải đơn( VPTTPĐ)
Văn phạm tuyến tính phải đơn là văn phạm mà các sản xuất của nó có dạng:
A→ aB hoặc A→ a với: A, B∈∆.
ai∈Σ, i= 1, 2,…, n
2.Ôtômát hữu hạn (OH)
− Là một máy đoán nhận ngôn ngữ
Trang 3BÀI TẬP
1.1 BIẾT VPTT PHẢI, TÌM VPTT PHẢI ĐƠN.
1.1.1 Đường lối
Để tìm văn phạm tuyến tính phải đơn ta làm các bước sau đây:
Bước 1: Xác định các thành phần của văn phạm tuyến tính
phải mà đề bài đã cho
Bước 2: Xác định văn phạm tuyến tính phải đơn cần tìm có
dạng G’ = (∑’, ∆’, P’, S’), trong đó:
Trang 4Σ’: là tập các kí hiệu kết thúc của văn phạm tuyến tính phải đơn G’.
Thay sản xuất này bằng các sản xuất
A→ a1B1( với B1→ a2a3…anB)
B1→ a2B2 ( với B2→ a3…anB)
………
Bn-1→ anBn + Xử lý các sản xuất dạng : A→ a1a2…an
Thay các sản xuất này bằng
A→ a1B1
B1→ a2B2
………
Bn-1→ anVậy P là tập tất cả các sản xuất mà ta viết dưới dạng ở trên
Nhận xét: Từ các bước làm trên, ta thấy văn phạm tuyến tính phải và văn phạm
tuyến tính phải đơn là tương đương
Trang 5Và ∆’= ∆∪{A1, B1,B2, S1, S2}
Kết luận: Văn phạm tuyến tính phải mà ta cần tìm là G’= (Σ’, ∆’, P’, S’) với Σ’,
∆’, P’, S’ được xác định như trên
Trang 6Tìm văn phạm tuyến tính phải đơn?
Và ∆’= ∆∪{B1, B2, C1, C2}
Kết luận: Văn phạm tuyến tính phải đơn ta cần tìm là G’= (∑’, ∆’, P’, S’) với
∑’, ∆’, P’, S’ được xác định như trên
Trang 7Và ∆’= ∆∪{ A1, A2, A3, B1, C1, C2}
Kết luận: Văn phạm tuyến tính phải đơn ta cần tìm là G’= (∑’, ∆’, P’, S’) với
∑’, ∆’, P’, S’ được xác định như trên
Trang 8A → a1B1B1 → a2B2
Bn-2 → an-1Bn-1Bn-1 → anBtrong đó B1, B2, , Bn là các ký hiệu không kết thúc mới (không ở đâu khác)
A → a1a2 an, n > 1bởi các qui tắc giống như trên, trừ qui tắc cuối cùng thì lại là:
Trang 9(Chú ý: M là ôtômát hữu hạn không tiền định)Sau đó chuyển thành otomat tiền định(OHT) qua bước dịch chuyển e và loại bỏ đặc tính không tiền định
Bài làm
Trang 10Ta gọi ÔH tương đương M: M = (Σ, Q, δ, qo, F)
Trang 12q0 → 0q1= q1 q0 →1q2= q2
q1 →0q3= q3
q2 →1q3= q3
q1 → 1q0= q0
q2 → 0q0= q0q3 → 0q3= q3q3 →1q3= q3
Đồ thị dịch chuyển của ÔH:
VD3.Cho văn phạm tuyến tính phải đơn G = (Σ, ∆, P, S) với:
Trang 13Các trạng thái đến được các trạng thái thừa nhận trong F = {K} nhờ toàn dịch chuyển ε là S và A Như vậy, khi loại bỏ dịch chuyển ε ta được:
Trang 14Do K không đến được từ S nên nó vô ích trong quá trình hoạt động của ôtômát,
để tránh rườm rà, ta loại K ra khỏi ôtômát Như vậy, ôtômát thu gọn trở thành:
Đây chính là ôtômát hữu hạn tiền định cần tìm
Trang 15Các trạng thái đến được các trạng thái thừa nhận trong F = {K} nhờ toàn dịch chuyển ε là A, B và C Như vậy, khi loại bỏ dịch chuyển ε ta được:
Trang 16Do K không đến được từ S nên nó vô ích trong quá trình hoạt động của ôtômát,
để tránh rườm rà ta loại bỏ nó ra khỏi ôtômát, khi đó ôtômát thu gọn thành:
Đây chính là ôtômát hữu hạn tiền định cần tìm
Trang 17Các trạng thái đến được các trạng thái thừa nhận trong F = {K} nhờ toàn dịch chuyển ε là B và D Như vậy, khi loại bỏ dịch chuyển ε ta được:
Trang 18Do K không đến được từ S nên nó vô ích trong quá trình hoạt động của ôtômát,
để tránh rườm rà ta loại bỏ nó ra khỏi ôtômát, khi đó ôtômát thu gọn thành:
Khi đó ôtômát thu gọn thành:
Tiếp tục loại bỏ đặc tính không tiền định ta được:
Trang 191.3 CHO ÔH TÌM VPTTP.
1.3.1 Bài toán :
Cho L được đoán nhận bởi ÔH tìm L được sinh bởi VPTTP đơn G
Giả thuyết : L được đoán nhận bởi OH.
Kết luận : L được sinh bởi VPTTP đơn
− Ứng với bước chuyển δ (q, a) = p Ta có sản xuất q → ap
− Ứng với mỗi q ∈ F ta có sản xuất q → ε
(với p,q ∈ Q, a ∈ Σ )
• S = q0
Trang 22δ (B, 1) = B ⇒ B → 1B
δ (C, 0) = A ⇒ C → 0C
Chú ý: Nếu bài ra cho OH thì chúng ta cần phải xem OH là loại nào OHT hay OHK
Nếu OHK thì chuyển về OHT rồi mới tìm được VPTTP
Cách chuyển ÔHK về ÔHT :
Trang 24 Từ đó ta có thể làm theo quá trình sau:
VPTTPVPPTTPĐÔHKÔHT
ÔHKÔHTVPTTPĐ
KẾT THÚC CÁC ĐỀ TÀI!