Bài giảng Lý thuyết tính toán: Bài 9 - Phạm Xuân Cường cung cấp cho học viên các kiến thức về các biến thể của máy Turing; máy Turing tùy chọn tại chỗ; máy Turing bán vô hạn; máy Turing đa băng; máy Turing không đơn đị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 9: Các biến thể máy Turing 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 Máy Turing tùy chọn chỗ Máy Turing bán vô hạn Máy Turing đa băng Máy Turing không đơn định Giới thiệu Giới thiệu Có nhiều loại máy Turing khác nhau: • Máy Turing có khả nguyên chỗ (Stay-option) • Máy Turing bán vơ hạn (Semi-infinite) • Máy Turing đa băng • Máy Turing khơng đơn định Mơ hình gốc biến thể có chung lực → Đều đốn nhận tập ngôn ngữ Chứng minh mơ hình TM tương đương Để chứng minh mơ hình tương đương → Kỹ thuật mơ Ví dụ: Máy Turing M2 (Một biến thể đó) Máy Turing M1 (Dạng chuẩn) Cấu hình lịch sử tính tốn máy M1 tương tự máy M2 M1: d0 ⇒ d1 ⇒ d2 ⇒ ⇒ dn ∗ ∗ ∗ ∗ M2: d0 = ⇒ d1 = ⇒ d2 = ⇒ = ⇒ dn Máy Turing tùy chọn chỗ Máy Turing tùy chọn chỗ Đầu đọc máy Turing loại có khả khơng di chuyển thực chuyển dịch ↔ Có khả giữ nguyên vị trí b b b a a a a q1 Hàm dịch chuyển: δ: Q x Γ → Q x Γ x {L,R,S} Ví dụ ␣ ␣ a a b a b ␣ ␣ a b a b ␣ ␣ q1 a → b, S ␣ ␣ b q2 Sự tương đương với TM chuẩn Định lý Mọi máy Turing tùy chọn chỗ có máy Turing chuẩn tương đương Chứng minh Máy Turing tùy chọn chỗ mô TM chuẩn (CM: Bỏ qua chuyển dịch chỗ) TM dạng chuẩn mô máy Turing tùy chọn chỗ • Nếu chuyển dịch sang trái phải thực tương tự • Nếu chuyển dịch chỗ thay cặp chuyển dịch trái, phải phải, trái Ví dụ chứng minh Máy Turing tùy chọn chỗ a → b, R a → b, L TM Chuẩn a → b, R a → b, L a → b, S a → b, L a → b, R x → x, R x → x, L ∀x∈Γ Máy Turing đa băng • Chuỗi đầu vào nằm băng thứ • Tất đầu đọc khởi tạo đọc • Tại bước, đầu đọc đọc ghi ký hiệu lên băng tương ứng dịch chuyển sang bước (các dịch chuyển khác nhau) 19 Định nghĩa hình thức máy Turing đa băng M = (Q, Σ, Γ, δ, q0 , qaccept , qreject ) Trong đó: - Q: Tập trạng thái (hữu hạn) Σ: Bộ chữ đầu vào, ␣ ∈ Σ Γ: Bộ chữ phép viết băng, ␣ ∈ Γ Σ ⊂ Γ δ: Hàm dịch chuyển δ: Q - {qaccept ,qreject } x Γk → Q x (Γ x {L, R})k - q0 ∈ Q: Trạng thái bắt đầu - qaccept ∈ Q: Là tập trạng thái chấp thuận - qreject ∈ Q: Là tập trạng thái bác bỏ, qaccept = qreject 20 Ví dụ chuyển dịch TM đa băng (b,f) → (g,g),L,R q1 Tape ␣ q2 Tape a b c ␣ ␣ e q1 f g ␣ g ␣ q1 Sau chuyển dịch Tape ␣ Tape a q2 g c ␣ ␣ e g q2 21 Sự tương đương với TM chuẩn Định lý Mọi máy Turing đa băng có máy Turing đơn băng tương đương Chứng minh: (Bằng cách xây dựng) Ta cần cách xây dựng TM đơn băng từ TM đa băng Ta cần xem xét đặc điểm sau: • Cần lưu trữ giá trị tất băng vào băng • Cần lưu trữ vị trí đầu đọc • Cần chuyển đổi chuyển dịch đa băng thành chuyển dịch đơn 22 Ví dụ (1) Q (b, 1, x ) → (b, 0, y ), L, L, R R 23 • Sử dụng ký hiệu # để ngăn cách nội dung băng khác • Thêm dấu chấm vào ký hiệu băng để đánh dấu đầu đọc băng • Để mơ tả chuyển dịch từ trạng thái Q đến R ta thực - Đọc lần qua tất ô TM đơn băng để xác định vị trí đầu đọc ảo - Đọc lần thứ thực dịch chuyển tương ứng mô tả TM đa băng - Nếu lần đầu đọc TM đơn băng đọc chứa ký hiệu #, ghi giá trị ␣ dịch đầu đọc sang phải ô 24 Máy Turing không đơn định Máy Turing không đơn định Máy Turing không đơn định: Là máy Turing có nhiều lựa chọn trạng thái Hàm chuyển dịch TM không đơn định có dạng: δ: Q x Γ → P(Q x Γ x {L,R}) 25 Cách hoạt động TM không đơn định Máy Turing không đơn định Máy Turing 26 Sự tương đương với TM Định lý Mọi máy Turing khơng đơn định có máy Turing đơn định tương đương Ý tưởng chứng minh: Tìm kiếm nhánh chấp thuận hoạt động TM không đơn định • Chiến lược duyệt theo chiều sâu (DFS) hay theo chiều rộng (BFS)? 27 Sự tương đương với TM Định lý Mọi máy Turing khơng đơn định có máy Turing đơn định tương đương Ý tưởng chứng minh: Tìm kiếm nhánh chấp thuận hoạt động TM khơng đơn định • Chiến lược duyệt theo chiều sâu (DFS) hay theo chiều rộng (BFS)? → Sử dụng chiến lược duyệt theo chiều rộng → Xây dựng TM đơn định nào? 27 Chứng minh (1) Ta xây dựng TM có băng để mơ TM khơng đơn định • Băng liệu vào: chứa liệu vào không phép sửa đổi • Băng mơ phỏng: Mơ tính tốn TM khơng đơn định nhánh • Băng địa chỉ: Lưu vị trí hoạt động nhánh hoạt động TM không đơn định 28 Chứng minh (2) Ta gán địa cho nút tính tốn TM khơng đơn định: Ví dụ: 2322 29 Chứng minh (3) Các bước tính tốn D mơ tả sau: Khởi tạo băng chứa xâu vào w, băng 2, rỗng Sao chép nội dung băng sang băng Xét ký hiệu băng để xác định lựa chọn theo hàm chuyển TM khơng đơn định • Nếu khơng cịn ký hiệu băng → Thực bước • Nếu gặp cấu hình bác bỏ → Thực bước • Nếu gặp cấu hình chấp thuận → Chấp thuận xâu đầu vào Thay xâu ký tự băng xâu khác theo thứ tự từ điển Lặp lại bước 30 Questions? 30 ... ␣ ∈ Γ Σ ⊂ Γ δ: Hàm dịch chuyển δ: Q - {qaccept ,qreject } x Γk → Q x (Γ x {L, R})k - q0 ∈ Q: Trạng thái bắt đầu - qaccept ∈ Q: Là tập trạng thái chấp thuận - qreject ∈ Q: Là tập trạng thái bác... dịch từ trạng thái Q đến R ta thực - Đọc lần qua tất ô TM đơn băng để xác định vị trí đầu đọc ảo - Đọc lần thứ thực dịch chuyển tương ứng mô tả TM đa băng - Nếu lần đầu đọc TM đơn băng đọc ô... phỏng: Mơ tính tốn TM khơng đơn định nhánh • Băng địa chỉ: Lưu vị trí hoạt động nhánh hoạt động TM khơng đơn định 28 Chứng minh (2) Ta gán địa cho nút tính tốn TM khơng đơn định: Ví dụ: 2322 29 Chứng