1. Trang chủ
  2. » Giáo án - Bài giảng

Bài giảng Lý thuyết tính toán: Bài 11 - Phạm Xuân Cường

21 16 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 21
Dung lượng 190,79 KB

Nội dung

Bài giảng Lý thuyết tính toán: Bài 11 - Phạm Xuân Cường cung cấp cho học viên các kiến thức về các ngôn ngữ quyết định được; các bài toán quyết định được với ngôn ngữ chính quy; các bài toán quyết định được với ngôn ngữ phi ngữ cảnh;... Mời các bạn cùng tham khảo chi tiết nội dung bài giảng!

LÝ THUYẾT TÍNH TỐN BÀI 11: Các ngơn ngữ định Phạm Xuân Cường Khoa Công nghệ thông tin cuongpx@tlu.edu.vn Nội dung giảng Giới thiệu Các tốn định với ngơn ngữ quy Các tốn định với ngơn ngữ phi ngữ cảnh Giới thiệu Giới thiệu • Tính định giúp nghiên cứu kỹ khả giải toán thuật toán • Một số tốn giải thuật tốn, số khơng thể → Cần phải nghiên cứu khả khơng giải • Mục đích để phát giới hạn tính giải thuật tốn Các tốn định với ngơn ngữ quy Bài tốn Bài toán Cho DFA chuỗi w, DFA có chấp thuận chuỗi w khơng? • Đây có phải tốn định khơng? Để trả lời câu hỏi ta cần đưa toán toán ngôn ngữ ADFA = { | B DFA chấp thuận xâu vào w} Định lý ADFA ngơn ngữ định Chứng minh • Đưa TM định ADFA • TM nhận chuỗi đầu vào • TM kiểm tra xem B có biểu diễn định dạng khơng • TM mô B chuỗi w • Nếu B đạt trạng thái chấp thuận TM chấp thuận, ngược lại bác bỏ • TM luôn dừng (always halt) Định lý ANFA ngơn ngữ định Chứng minh • Phương pháp 1: Đưa TM định ANFA tương tự Định lý • Phương pháp 2: Chuyển NFA B thành DFA C tương đương Chạy máy Turing M giống Định lý với xâu đầu vào Nếu M chấp thuận kết luận N chấp thuận, ngược lại N bác bỏ Định lý AREX ngôn ngữ định Chứng minh Biến đổi biểu thức quy R thành NFA A tương đương Chạy máy Turing M giống Định lý với xâu đầu vào Nếu M chấp thuận kết luận R chấp thuận, ngược lại R bác bỏ → Khả định máy Turing biểu diễn DFA, NFA hay RE tương đương Một số tốn ngơn ngữ khác Bài toán chấp thuận ADFA = { | B DFA chấp thuận xâu vào w} Bài toán kiểm tra rỗng (Emptiness Testing) EDFA = { | A DFA L(A) = Ø} Bài toán kiểm tra tương đương (Equality Testing) EQDFA = { | A, B DFA L(A) = L(B) } Bài toán kiểm tra rỗng (Emptiness Testing) Định lý EDFA ngôn ngữ định Chứng minh Ý TƯỞNG: • Duyệt tất đường từ trạng thái bắt đầu đến trạng thái kết thúc • Nếu tồn đường → DFA sinh chuỗi → Bác bỏ • Nếu khơng có → Chấp thuận • Tương đương với toán đánh dấu đồ thị Bài toán kiểm tra rỗng (Emptiness Testing) Chứng minh Thuật toán cho TM T định EDFA : T = " Trên đầu vào A DFA: Đánh dấu trạng thái ban đầu A Lặp lại bước sau khơng cịn trạng thái đánh dấu: Đánh dấu trạng thái có bước chuyển tới từ trạng thái đánh dấu Nếu khơng có trạng thái chấp thuận đánh dấu → Chấp thuận, ngược lại bác bỏ Bài toán kiểm tra tương đương (Equality Testing) Định lý EQDFA ngơn ngữ định • Gọi C Khác biệt đối xứng (symmetric difference) tập A B → C = (A ∩ B) ∪ (A ∩ B) → Nếu A = B C = Ø Chứng minh Ý TƯỞNG: • Xây dựng DFA C chấp thuận tập khác biệt đối xứng L(A) L(B) • Sử dụng tốn kiểm tra rỗng để định EQDFA 10 Bài toán kiểm tra tương đương (Equality Testing) Chứng minh Thuật toán cho TM F định EQDFA : F = " Trên đầu vào A,B DFA: • Xây dựng DFA C chấp thuận tập khác biệt đối xứng L(A) L(B) • Chạy máy Turing T giống Định lý xâu đầu vào • Nếu T chấp thuận F chấp thuận, ngược lại F bác bỏ 11 Các toán định với ngơn ngữ phi ngữ cảnh Bài tốn Bài tốn: Liệu văn phạm phi ngữ cảnh CFG có sinh xâu w hay khơng ACFG = { | G CFG sinh xâu w} Định lý ACFG ngôn ngữ định Chứng minh Ý TƯỞNG: Sử dụng G để duyệt qua tất dẫn xuất xem có dẫn xuất dẫn xuất w hay khơng 12 Bài tốn kiểm tra CFG Chứng minh Biến đổi CFG G thành dạng chuẩn tắc Chomsky Liệt kê tất dẫn xuất với 2n-1 bước, trừ TH n = ta liệt kê dẫn xuất có số bước Nếu có dẫn xuất sinh w chấp thuận, ngược lại bác bỏ → Do CFG → PDA nên tính định PDA tương tự CFG 13 Bài toán kiểm tra CFG sinh chuỗi rỗng Bài toán: Liệu văn phạm phi ngữ cảnh CFG không sinh xâu hay không ECFG = { | G CFG L(G) = Ø} Định lý ECFG ngôn ngữ định Chứng minh Ý TƯỞNG: Kiểm tra xem liệu biến bắt đầu có tạo xâu kết thúc hay khơng 14 Bài tốn kiểm tra CFG sinh chuỗi rỗng Chứng minh Đánh dấu tất ký hiệu kết thúc G Lặp lại bước sau khơng cịn biến đánh dấu: Đánh dấu biến A G có dẫn xuất A → U1 U2 Uk U1 , U2 , , Uk đánh dấu Nếu biến khởi đầu chưa đánh dấu chấp thuận, ngược lại bác bỏ 15 Bài toán kiểm tra CFG tương đương Bài toán: Liệu văn phạm phi ngữ cảnh CFG khơng sinh xâu hay không EQCFG = { | G,H CFG L(G) = L(H) } • Liệu ta chứng minh tương tự Định lý 5? → Thực tế khơng CFG khơng đóng phép toán bù giao 16 Questions? 16 ... Chạy máy Turing T giống Định lý xâu đầu vào • Nếu T chấp thuận F chấp thuận, ngược lại F bác bỏ 11 Các tốn định với ngơn ngữ phi ngữ cảnh Bài toán Bài toán: Liệu văn phạm phi ngữ cảnh CFG có... bác bỏ 15 Bài toán kiểm tra CFG tương đương Bài toán: Liệu văn phạm phi ngữ cảnh CFG khơng sinh xâu hay không EQCFG = { | G,H CFG L(G) = L(H) } • Liệu ta chứng minh tương tự Định lý 5? →... 2n-1 bước, trừ TH n = ta liệt kê dẫn xuất có số bước Nếu có dẫn xuất sinh w chấp thuận, ngược lại bác bỏ → Do CFG → PDA nên tính định PDA tương tự CFG 13 Bài toán kiểm tra CFG sinh chuỗi rỗng Bài

Ngày đăng: 14/12/2021, 09:36