Thut ton v phc tp My Turing machine

  • Slides: 17
Download presentation
Thuật toán và độ phức tạp Máy Turing machine 03/03/2021 FITA 1/17

Thuật toán và độ phức tạp Máy Turing machine 03/03/2021 FITA 1/17

Máy Turing MÔ TẢ Turing machine Mô tả DESCRIPTION Máy Turing bao gồm: Dải

Máy Turing MÔ TẢ Turing machine Mô tả DESCRIPTION Máy Turing bao gồm: Dải băng chứa ký tự Ký tự trống Đầu đọc Trạng thái ban đầu Đọc Sau Ghi Chạy S 0 0 S 2 1 … … … Hàm chuyển trạng thái Bản ghi trạng thái 03/03/2021 Trái FITA 2/17

Máy Turing MÔ TẢ Turing machine DESCRIPTION Ví dụ Hoạt động Example Cho máy

Máy Turing MÔ TẢ Turing machine DESCRIPTION Ví dụ Hoạt động Example Cho máy Turing có 4 trạng thái S={s 0, s 1, s 2, s 3} và hàm chuyển trạng thái: Đầu Đọc Sau Ghi Chạy S 0 0 Phải S 0 1 S 1 1 Phải S 0 B S 3 B Phải 0 sau? S 0 Nó sẽ chạy như nào trên. Sdải băng 1 0 Phải S 1 1 S 2 0 Trái S 1 B S 3 B Phải S 2 1 S 3 0 Phải Vị trí ban đầu … B 03/03/2021 B 0 1 1 0 B B … FITA 3/17

Máy Turing MÔ TẢ Turing machine Hoạt động DESCRIPTION Ví dụ Example … B

Máy Turing MÔ TẢ Turing machine Hoạt động DESCRIPTION Ví dụ Example … B 0 B 1 0 0 s 3 1 1 0 0 10 10 0 B B … 0 s 1 s 2 S 012 Chưa 0 1 có ! 03/03/2021 S 0213 Phải 1 Dừng lại Trái → 0 ! FITA 4/17

Máy Turing ĐỊNH NGHĨA Turing machine Định nghĩa DEFINITION Định nghĩa Definition Máy Turing

Máy Turing ĐỊNH NGHĨA Turing machine Định nghĩa DEFINITION Định nghĩa Definition Máy Turing là bộ T = (S, I, f, s 0) với: • S = tập hữu hạn trang thái • s 0 là một phần tử của S, gọi là trạng thái xuất phát • I là tập hữu hạn chữ cái (chứa ký tự trống B) • f : S×I → S×I×{Phải, Trái} là hàm chuyển trạng thái 03/03/2021 FITA 5/17

Máy Turing ĐỊNH NGHĨA Turing machine Định nghĩa DEFINITION Ví dụ Example Hãy thử

Máy Turing ĐỊNH NGHĨA Turing machine Định nghĩa DEFINITION Ví dụ Example Hãy thử tạo ra máy Turing chạy trên một dải băng hữu hạn sau mà máy sẽ chạy mãi không dừng? … B B 0 1 B B … T = ( { s 0 }, {B, 0, 1}, f, s 0} với f như sau: 03/03/2021 Đầu Đọc Sau Ghi Chạy S 0 0 Phải S 0 1 Trái FITA 6/17

Máy Turing MÔ TẢ Turing machine DESCRIPTION Ví dụ Example Định nghĩa … B

Máy Turing MÔ TẢ Turing machine DESCRIPTION Ví dụ Example Định nghĩa … B B 0 0 1 B B … 1 s 0 s 3 s 1 s 2 S 0 03/03/2021 1 0 S 0 1 0 Trái Phải FITA 7/17

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Định nghĩa Đoán nhận Definition Trạng thái

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Định nghĩa Đoán nhận Definition Trạng thái kết thúc của máy Turing T = (S, I, f, s 0) là các trạng thái của S không nằm trong cột đầu của bảng f. Ví dụ Example Cho máy ({s 0, s 1, s 2}, {1, B}, f, s 0) với f cho trong bảng sau. Tìm trạng thái kết thúc? Đầu Đọc Sau Ghi Chạy s 1 không có trong cột đầu → s 1 là kết thúc 03/03/2021 S 0 B Phải S 0 B S 1 1 Trái S 2 B S 2 1 Phải FITA 8/17

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Đoán nhận Định nghĩa Definition Cho máy

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Đoán nhận Định nghĩa Definition Cho máy Turing T = (S, I, f, s 0) và V là tập con của I. Xâu x trong V* được đoán nhận bởi T khi và chỉ khi T chạy trên băng ghi xâu x, bắt đầu từ vị trí chữ đầu tiên của xâu x, sẽ dừng lại ở một trạng thái kết thúc. 03/03/2021 FITA 9/17

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Đoán nhận Định lý Theorem Tập có

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Đoán nhận Định lý Theorem Tập có thể được đoán nhận bởi máy Turing khi và chỉ khi nó được sinh bởi văn phạm loại 0. 03/03/2021 FITA 10/17

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Ví dụ Example Xây dựng máy đoán

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Ví dụ Example Xây dựng máy đoán nhận tập { 0 n 1 n | n = 1, 2, …}? Đoán nhận … B 0 0 1 1 B … • cần trạng thái kết thúc t (khi đã đoán nhận) • cần ký tự đánh dấu phần đã đọc (có thể là M) • đọc 0 tận cùng trái, rồi 1 tận cùng phải, rồi 0 tận cùng trái, … đến khi hết thì dừng ở t → nếu xâu có dạng 0 n 1 n thì đoán nhận • nếu xâu không có dạng này, máy không dừng ở t (không đoán nhận) 03/03/2021 FITA 11/17

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Ví dụ Đoán nhận Example Ví dụ:

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Ví dụ Đoán nhận Example Ví dụ: … B M M t 03/03/2021 M 0 M s 0 0 M 1 M 1 M B … M s 1 FITA 12/17

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Ví dụ Cụ thể Đoán nhận 03/03/2021

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Ví dụ Cụ thể Đoán nhận 03/03/2021 Example Đầu Đọc Sau Ghi Chạy S 0 S 1 0 0 S 1 M 0 Phải S 1 1 Phải S 1 M S 2 M Trái S 1 B S 2 B Trái S 2 1 S 3 M Trái S 3 S 3 S 4 S 5 1 0 M M S 3 S 4 S 5 S 4 S 0 t 1 0 M M Trái Phải Trái FITA 13/17

Máy Turing LUẬN ĐỀ Turing machine THESIS Luận đề Church-Turing Thesis Nếu một bài

Máy Turing LUẬN ĐỀ Turing machine THESIS Luận đề Church-Turing Thesis Nếu một bài toán có thể giải được bằng một thuật toán thì cũng sẽ tồn tại một máy Turing giải được bài toán này. 03/03/2021 FITA 14/17

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Ví dụ Luận đề Example Xây dựng

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Ví dụ Luận đề Example Xây dựng máy Turing thực hiện phép cộng các số tự nhiên, với • đầu vào là băng gồm (n 1+1) số 1 rồi đến ký tự + rồi đến (n 2+1) số 1, ví dụ • đầu ra là băng gồm (n 1+n 2+1) số 1, ví dụ … B 1 B 1 + B 1 1 B … 0 1 1 03/03/2021 FITA 15/17

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Ví dụ Example Nhận xét: Luận đề

Máy Turing ĐOÁN NHẬN Turing machine RECOGNIZATION Ví dụ Example Nhận xét: Luận đề 03/03/2021 • nếu xóa bớt 2 số 1 ở đầu băng rồi thay dấu + bằng số 1 thì tổng cộng thu được n 1+n 2+1 số 1 trên băng • (nếu n 1 = 0 thì chỉ xóa được số 1 trước dấu + và cần xóa cả dấu +) Đầu Đọc Sau Ghi Chạy S 0 1 S 1 B Phải S 1 1 S 2 B Phải Xóa số 1 thứ 2 (nếu có) S 1 + t B Phải Nếu không, xóa + và dừng S 2 1 Phải Nếu có, đi tiếp khi gặp 1… S 2 + t 1 Trái . . . thay + bằng 1 và dừng Xóa số 1 đầu FITA 16/17

Máy Turing TÓM TẮT Turing machine Tóm tắt 03/03/2021 SUMMARY • Chúng ta đã

Máy Turing TÓM TẮT Turing machine Tóm tắt 03/03/2021 SUMMARY • Chúng ta đã học: – Máy Turing: • Định nghĩa. • Hoạt động. • Đoán nhận ngôn ngữ loại 0. • Tính các hàm toán học. FITA 17/17