Báo cáo môn học : Lý thuyết tính toán (cao học: Khoa học máy tính)Đề tài : Turing Machine

24 1.7K 7
Báo cáo môn học : Lý thuyết tính toán (cao học: Khoa học máy tính)Đề tài : Turing Machine

Đ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

Báo cáo môn học : Lý thuyết tính toán (cao học: Khoa học máy tính)Đề tài : Turing Machine

Tiểu luận mơn học Lý Thuyết Tính Tốn MỤC LỤC MỤC LỤC LỜI MỞ ĐẦU PHẦN LÝ THUYẾT MÁY TURING 8.2.1 NHIỆM VỤ GIẢI QUYẾT CÁC CÂU HỎI TOÁN HỌC 8.2.2 KÝ PHÁP CHO MÁY TURING 8.2.3 MÔ TẢ TỨC THỜI CHO MÁY TURING .7 8.2.4 NHỮNG SƠ ĐỒ CHUYỂN TIẾP CHO MÁY TURING 12 8.2.5 NGÔN NGỮ CỦA MÁY TURING 16 8.2.6 MÁY TURING VÀ TRẠNG THÁI DỪNG 17 PHẦN BÀI TẬP 18 2.1 BÀI 8.2.1 18 2.2 BÀI 8.2.3 21 TÀI LIỆU THAM KHẢO 24 Lớp KHMT Khoá 26 Trang Tiểu luận mơn học Lý Thuyết Tính Tốn LỜI MỞ ĐẦU Nhóm chúng em thực việc nghiên cứu tài liệu “Introduction to Automata Theory, Languages, and Computation”, phần 8.2 (tr 316 – 328) Rất mong đóng góp ý kiến Thầy PGS TS Phan Huy Khánh Xin chân thành cảm ơn! Lớp KHMT Khóa 26 Trần Thanh Liêm Nguyễn Trọng Nguyên Nguyễn Minh Quỳnh Lớp KHMT Khoá 26 Trang Tiểu luận mơn học Lý Thuyết Tính Tốn PHẦN LÝ THUYẾT MÁY TURING Mục đích lý thuyết vấn đề (8.1) không để thể tồn chúng - ý tưởng thú vị mặt trí tuệ theo nghĩa –mà cịn cung cấp hướng dẫn cho lập trình viên họ khơng thể thực cách lập trình Lý thuyết có tác dụng thực tiễn lớn thảo luận (chương 10): vấn đề định lại yêu cầu lượng lớn thời gian để giải chúng Những vấn đề này, gọi vấn đề nan giải, có xu hướng trình bày khó khăn cho lập trình việc nhà thiết kế hệ thống so với vấn đề định Lý là, vấn đề định thường rõ ràng vậy, giải pháp chúng áp dụng thực tế, vấn đề nan giản xuất ngày Hơn nữa, chúng thường mang lại thay đổi nhỏ yêu cầu giải pháp heuristic Vì vậy, người thiết kế thường xuyên phải đối mặt với việc phải định có hay khơng vấn đề nan giải, phải làm với có Chúng ta cần cơng cụ mà cho phép chứng minh câu hỏi hàng ngày định hay nan giải Kĩ thuật giới thiệu mục 8.1 hữu ích cho câu hỏi ứng phó với chương trình, khơng dễ dàng Ví dụ, giảm độ khó câu hỏi tốn hello-world cho dù ngữ pháp mơ hồ Kết là, cần phải xây dựng lại sở lý thuyết vấn đề định, không dựa chương trình C ngơn ngữ khác, mà dựa máy tính có mơ hình đơn giản gọi máy Turing Thiết bị thực chất máy tự động hữu hạn có băng đơn dài vơ hạn mà đọc ghi liệu Một ưu điểm máy Turing so với chương trình tính máy Turing đủ đơn giản để diễn tả cấu hình cách xác, cách sử dụng ký hiệu đơn giản giống ID PDA Trong so sánh, chương trình C có trạng thái, liên quan đến tất biến theo trình tự lời gọi hàm thực Lớp KHMT Khố 26 Trang Tiểu luận mơn học Lý Thuyết Tính Tốn hiện, cú pháp mơ tả trạng thái phức tạp để hiểu chứng minh Sử dụng ký pháp máy Turing, chứng minh tốn khơng thể định khơng liên quan đến lập trình Một ví dụ, thấy phần 9.4, câu hỏi đơn giản liên quan đến hai danh sách chuỗi, định được, vấn đề làm cho dễ dàng đưa câu hỏi ngữ pháp, chẳng hạn mơ hồ, định Tương tự, giới thiệu vấn đề khó, thấy số câu hỏi, dường khó áp dụng phương pháp tính tốn (ví dụ cơng thức boolean) 8.2.1 Nhiệm vụ giải câu hỏi toán học Bước vào kỷ 20, nhà toán học D Hilbert hỏi liệu tìm thấy thuật tốn để xác định xác sai lầm lời tuyên bố toán học Đặc biệt, ơng hỏi có cách để xác định xem công thức Kể từ phép tính tốn số ngun đủ mạnh mẽ để thể phát biểu "ngữ pháp mơ hồ," "chương trình in hello world" Hilbert thành cơng, có vấn đề có thuật tốn mà đến biết không tồn Tuy nhiên, vào năm 1931, K Godel cơng bố định lý bất tồn tiếng ơng Ơng xây dựng cơng thức tính tốn áp dụng cho số ngun, khẳng định cơng thức khơng cần chứng minh khơng bác bỏ tính tốn Kỹ thuật Godel tương tự việc xây dựng chương trình mâu thuẫn H2 mục 8.1.2, với chức số nguyên, với chương trình C Tính tốn vị từ khơng khái niệm lý thuyết liên quan đến tính tốn Trong tính tốn vị từ thực tế, thành phần khai báo khơng phải tính tốn, phải hoàn tất với loạt ký hiệu, bao gồm chức đệ quy phần, giống ký hiệu ngơn ngữ lập trình ký hiệu tương tự khác Năm 1936, A M Turing đề xuất máy Turing mơ hình có Lớp KHMT Khố 26 Trang Tiểu luận mơn học Lý Thuyết Tính Tốn thể tính tốn Mơ hình giống máy tính chương trình, điện tử, chí máy tính điện tử nhiều năm sau phát minh (Turing tự tham gia vào xây dựng máy suốt chiến tranh giới thứ II) Điều thú đề xuất quan trọng cho mơ hình tính tốn có quyền nhau, chúng tính tốn chức tương tự công nhận ngôn ngữ giống Giả định chứng minh cách thức chung để tính tốn cho phép tính tốn có hàm đệ quy phần (hoặc tương đương máy Turing, máy tính đại ngày tính tốn) biết đến giả thuyết Church luận đề ChurchTuring 8.2.2 Ký pháp cho máy Turing Chúng ta hình dung máy Turing hình 8.8 Máy bao gồm điều khiển hữu hạn, thuộc tập hợp hữu hạn trạng thái Có băng chia thành ô vuông ngăn, ngăn chứa số hữu hạn biểu tượng Hình 8.8 Ban đầu, đầu vào (là chuỗi hữu hạn chiều dài ký hiệu chọn từ bảng chữ đầu vào) đặt băng Tất ô khác băng mở rộng vô hạn đến bên trái phải, ban đầu chứa ký hiệu đặc biệt gọi ký hiệu rỗng Ký hiệu rỗng ký hiệu băng, khơng phải ký hiệu Lớp KHMT Khố 26 Trang Tiểu luận mơn học Lý Thuyết Tính Tốn đầu vào, có ký hiệu băng khác, bên cạnh ký hiệu đầu vào ký hiệu rỗng Một đầu băng ô vị trí thứ băng Máy Turing qt ô băng Ban đầu, đầu băng ô bên trái chứa liệu đầu vào Di chuyển máy Turing hàm trạng thái kiểm soát hữu hạn biểu tượng băng quét Trong di chuyển, máy Turing sẽ: Thay đổi trạng thái Trạng thái tùy chọn tương tự trạng thái Viết biểu tượng băng ô quét Biểu tượng băng thay biểu tượng có Tuy nhiên, biểu tượng giống biểu tượng có Di chuyển đầu băng sang trái phải Sau trạng thái, yêu cầu di chuyển, không cho phép đầu đọc đứng yên chỗ Hạn chế không không hạn chế máy Turing tính tốn Ký hiệu thức mà sử dụng cho máy Turing (TM) tương tự sử dụng automát hữu hạn PDA Chúng ta mô tả TM tuple-7: M = (Q, ∑, Γ, δ, q0, B, F) Các thành phần có ý nghĩa sau: Q: tập hữu hạn trạng thái kiểm soát hữu hạn ∑: tập hợp hữu hạn ký hiệu đầu vào Γ: hoàn chỉnh biểu tượng băng; E tập hợp Γ δ: Hàm chuyển đổi Những tham số hàm δ(q, X) trạng thái q ký hiệu băng X Giá trị hàm δ(q, X), định nghĩa, ba (p, Y, D), đó: Lớp KHMT Khoá 26 p trạng thái tiếp theo, Q Trang Tiểu luận môn học Lý Thuyết Tính Tốn Y biểu tượng, Γ, viết ô quét, thay biểu tượng có D hướng, L R, viết tắt chữ "left" "right", cho biết hướng di chuyển đầu đọc/ghi q0: Trạng thái bắt đầu, phần tử Q, kiểm sốt hữu hạn tìm thấy ban đầu B: Biểu tượng rỗng Biểu tượng Γ khơng phải ∑, nghĩa là, khơng phải biểu tượng đầu vào Biểu tượng rỗng xuất ban đầu tất cả, số lượng hữu hạn ô ban đầu giữ biểu tượng đầu vào F: tập hợp trạng thái cuối hay trạng thái chấp nhận, tập hợp Q 8.2.3 Mô tả tức thời cho máy Turing Để mơ tả thức máy Turing (TM) làm, cần phải phát triển ký pháp cho cấu hình mơ tả tức thời (ID), giống ký hiệu phát triển cho PDA Từ TM, nguyên tắc, có băng dài vơ tận, tưởng tượng khơng thể mơ tả cấu hình TM cách ngắn gọn Tuy nhiên, sau số lượng hữu hạn di chuyển, TM có số hữu hạn truy cập, số lượng ô truy cập cuối phát triển xa giới hạn hữu hạn Như vậy, ID, có tiền tố hậu tố vơ hạn ô không truy cập Tất ô phải giữ hai khoảng trống số hữu hạn ký hiệu đầu vào Do thấy ID có tận bên trái bên phải ngoại trừ khoảng trống bên phải Trong điều kiện đặc biệt, đầu đọc quét đầu băng dấu trống, số hữu hạn khoảng trống bên trái bên phải phần không trống băng phải bao gồm ID Lớp KHMT Khoá 26 Trang Tiểu luận mơn học Lý Thuyết Tính Tốn Ngồi để biểu diễn băng, phải biểu diễn cho điều khiển hữu hạn vị trí đầu băng Để làm vậy, nhúng trạng thái băng, đặt tới bên trái ô quét Để phân biệt với chuỗi băng cộng với trạng thái, phải chắn không sử dụng ký hiệu trạng thái ký hiệu băng Tuy nhiên, thật dễ dàng để thay đổi tên trạng thái chúng khơng có chung với ký hiệu băng, kể từ hoạt động TM khơng phụ thuộc vào trạng thái gọi Vì vậy, sử dụng chuỗi X X2 … Xi-1qXiXi+1 Xn để biểu diễn cho ID, đó: q trạng thái máy Turing Đầu đọc băng quét ký hiệu thứ i từ bên trái X1X2 … Xn phần băng tận bên trái bên phải không trống Như ngoại lệ, đầu đọc đến bên trái tận bên trái không trống đến bên phải tận bên phải khơng trống, số tiền tố hậu tố X1X2 Xn để trống, i n, tương ứng Chúng ta mô tả di chuyển máy Turing M = (Q, E, Г,δ, qo, B, F) ký hiệu M ta sử cần dụng sử dụng cho PDA Khi TM M hiểu, chúng để phản ánh di chuyển Như thường lệ, dùng để 0, nhiều di chuyển máy Turing M Giả sử δ(q, Xi) = (p, Y, L), động thái dịch chuyển sang trái Khi đó: X X X i −1qX i X i +1 X n >X X X i −2 pX i −1YX i +1 X n Chú ý động thái phản ánh thay đổi trạng thái p thực tế đầu đọc băng vị trí (i – 1) Có hai trường hợp ngoại lệ quan trọng: Nếu i = 1, M di chuyển vào chỗ trống bên trái X Trong trường hợp đó: Lớp KHMT Khố 26 Trang Tiểu luận mơn học Lý Thuyết Tính Tốn Nếu i = n Y = B, ký hiệu B viết đè lên X n tham gia vào chuỗi vô hạn khoảng trống theo sau không xuất ID Vì vậy: Bây giờ, giả sử δ(q,Xi) = (p,Y,R), hướng di chuyển hướng bên phải Khi đó: Ở đây, di chuyển phản ánh thực tế đầu đọc chuyển đến (i + 1) Một lần nữa, có hai trường hợp ngoại lệ quan trọng: Nếu i = n thứ (i + 1) giữ khoảng trống, ô phần ID trước Vì vậy, thay vào có: Nếu i = Y = B, ký hiệu B viết đè lên X1 tham gia vào chuỗi vô hạn khoảng trống đầu hàng không xuất ID Vì vậy: Ví dụ 8.2: Chúng ta thiết kế máy Turing xem hoạt động đầu vào chuẩn Các TM xây dựng chấp nhận ngơn ngữ {0n1n|N≥1} Ban đầu, cho chuỗi hữu hạn số l băng nó, trước sau vô hạn khoảng trống Cách khác, TM thay đổi từ số thành X sau thay đổi số thành Y, tất số l thay đổi phù hợp Chi tiết hơn, đầu bên trái đầu vào, liên tục thay đổi từ số thành X di chuyển sang phải qua nhìn thấy số Y, đến số Nó thay đổi số thành Y di chuyển sang trái, qua Y số 0, tìm thấy X Vào thời điểm đó, cho số bên phải, Lớp KHMT Khoá 26 Trang Tiểu luận mơn học Lý Thuyết Tính Tốn tìm thấy số 1, thay đổi thành X lặp lặp lại quy trình, thay đổi số thành Y Nếu đầu vào không trống khơng thuộc 0*1*, TM cuối khơng có di chuyển ngừng hoạt động mà khơng có chấp nhận Tuy nhiên, hồn thành việc thay đổi tất số thành X vòng, thay đổi số cuối thành Y, tìm thấy đầu vào mẫu hình thức 0nln chấp nhận Đặc điểm TM M là: δ cho bảng hình 8.9 M thực tính tốn nó, phần băng nơi đầu băng M truy cập, luôn chuỗi biểu tượng mô tả biểu thức quy X*0*Y*1* Đó là, có số số thay đổi thành X, số số chưa thay đổi thành X Sau có số số l thay đổi thành Y, số số l chưa thay đổi thành Y Có thể có khơng có số số theo sau Hình 8.9: Một máy Turing chấp nhận {0nln | n≥ 1} Trạng thái qo trạng thái ban đầu, M nhập vào trạng thái qo trở số lại tận bên trái Nếu M trạng thái qo quét số 0, quy tắc góc bên trái hình 8.9 “nói” để đến trạng thái q1, thay đổi từ số thành X di chuyển sang phải Một trạng thái q1, M di chuyển tất số Y mà tìm thấy băng cịn lại trạng thái q1 Nếu M thấy X B, ngừng hoạt động Tuy nhiên, trạng thái q1 M Lớp KHMT Khố 26 Trang 10 Tiểu luận mơn học Lý Thuyết Tính Tốn nhìn thấy số 1, thay đổi số thành Y, đến trạng thái q2, bắt đầu di chuyển sang trái Trong trạng thái q2, M di chuyển sang trái số Y Khi M đến X bên phải, đánh dấu kết thúc khối số mà thay đổi thành X, M trở trạng thái qo di chuyển sang bên phải Có hai trường hợp: Nếu M nhìn thấy số 0, lặp lặp lại chu kỳ phù hợp với vừa mô tả Nếu M thấy Y, thay đổi tất số thành X Nếu tất l thay đổi thành Y, đầu vào dạng nln, M phải chấp nhận Như vậy, M đến trạng thái q3, bắt đầu di chuyển sang bên phải, qua Y Nếu biểu tượng khác so với Y M nhìn thấy khoảng trống, thực có số lượng số số lượng l, đó, M vào trạng thái q4 chấp nhận Mặt khác, M gặp số khác có q nhiều số 1, M ngừng hoạt động mà khơng chấp nhận Nếu gặp số đầu vào hình thức sai, M ngừng hoạt động Đây ví dụ tính tốn chấp nhận M Đầu vào 0011 Ban đầu, M trạng thái qo, quét số đầu tiên, nghĩa là, ID ban đầu M q00011 Trình tự tồn di chuyển M là: Ví dụ khác, xem xét M nhập vào 0010, khơng phải ngôn ngữ chấp nhận Các hành vi M 0010 giống hành vi 0011, ID XXYq10 M quét số cuối cho lần M phải di chuyển sang phải, trạng thái q1, đưa đến ID XXY0q1B Tuy nhiên, trạng thái q M Lớp KHMT Khố 26 Trang 11 Tiểu luận mơn học Lý Thuyết Tính Tốn khơng có di chuyển băng biểu tượng B, M ngừng hoạt động không chấp nhận đầu vào 8.2.4 Những sơ đồ chuyển tiếp cho máy Turing Chúng ta biểu diễn cho trình chuyển đổi máy Turing cách hình tượng, làm cho PDA Một sơ đồ chuyển đổi trình bao gồm tập hợp nút tương ứng với trạng thái TM Một vòng cung từ trạng thái q đến trạng thái p dán nhãn nhiều mục mẫu X/YD, X Y biểu tượng băng, D định hướng (L hay R) Bất δ(q,X)=(p,Y,D), tìm thấy nhãn X/YD vịng cung từ q đến p Tuy nhiên, sơ đồ chúng ta, hướng D mô tả ← cho “bên trái” → cho “bên phải” Đối với loại biểu đồ dịch chuyển, sử dụng “Start” để đại diện cho trạng thái bắt đầu mũi tên vào trạng thái Trạng thái chấp nhận định vịng trịn kép Như vậy, thơng tin TM đọc trực tiếp từ biểu đồ biểu tượng sử dụng cho khoảng trống Chúng ta giả định biểu tượng B trừ trạng thái khác Ví dụ 8.3: Hình 8.10 cho thấy sơ đồ chuyển tiếp cho máy Turing ví dụ 8.2, có chức chuyển đổi đưa hình 8.9 Ví dụ 8.4: Trong ngày thấy thật thuận tiện để nghĩ máy Turing nhận dạng ngôn ngữ, tương đương, giải vấn đề, quan điểm ban đầu máy Turing máy có chức tính giá trị số ngun Trong chương trình mình, số nguyên biểu diễn dạng đơn nguyên, khối đơn ký tự, máy tính cách thay đổi chiều dài khối việc xây dựng khối nơi khác băng Trong ví dụ đơn giản này, xem chức tính tốn máy Turing thực nào, gọi phép trừ monus proper subtraction xác định m n = max (m - n, 0) Cụ thể, m n m - n m> n số m

Ngày đăng: 13/03/2014, 11:22

Hình ảnh liên quan

thể tính tốn bất kỳ. Mơ hình này giống như máy tính hơn là chương trình, mặc dù điện tử, hoặc thậm chí máy tính điện tử thì nhiều năm sau đó mới được phát  minh (Turing đã tự mình tham gia vào xây dựng máy trong suốt chiến tranh thế  giới thứ II). - Báo cáo môn học : Lý thuyết tính toán (cao học: Khoa học máy tính)Đề tài : Turing Machine

th.

ể tính tốn bất kỳ. Mơ hình này giống như máy tính hơn là chương trình, mặc dù điện tử, hoặc thậm chí máy tính điện tử thì nhiều năm sau đó mới được phát minh (Turing đã tự mình tham gia vào xây dựng máy trong suốt chiến tranh thế giới thứ II) Xem tại trang 5 của tài liệu.
δ được cho bởi bảng trong hình. 8.9. - Báo cáo môn học : Lý thuyết tính toán (cao học: Khoa học máy tính)Đề tài : Turing Machine

c.

cho bởi bảng trong hình. 8.9 Xem tại trang 10 của tài liệu.
Hình 8.10: sơ đồ chuyển tiếp cho một TM chấp nhận chuỗi hình thức 0n 1n - Báo cáo môn học : Lý thuyết tính toán (cao học: Khoa học máy tính)Đề tài : Turing Machine

Hình 8.10.

sơ đồ chuyển tiếp cho một TM chấp nhận chuỗi hình thức 0n 1n Xem tại trang 13 của tài liệu.
Hình 8.12: Sơ đồ chuyển đổi cho TM của ví dụ 8.4 - Báo cáo môn học : Lý thuyết tính toán (cao học: Khoa học máy tính)Đề tài : Turing Machine

Hình 8.12.

Sơ đồ chuyển đổi cho TM của ví dụ 8.4 Xem tại trang 15 của tài liệu.
Hình 8.11: Một máy Turing tính tốn chức năng proper-subtraction - Báo cáo môn học : Lý thuyết tính toán (cao học: Khoa học máy tính)Đề tài : Turing Machine

Hình 8.11.

Một máy Turing tính tốn chức năng proper-subtraction Xem tại trang 15 của tài liệu.
* Yêu cầu: Cho biết ID của máy Turing được mô tả trong hình 3 nếu đầu - Báo cáo môn học : Lý thuyết tính toán (cao học: Khoa học máy tính)Đề tài : Turing Machine

u.

cầu: Cho biết ID của máy Turing được mô tả trong hình 3 nếu đầu Xem tại trang 18 của tài liệu.

Từ khóa liên quan

Mục lục

  • MỤC LỤC

  • LỜI MỞ ĐẦU

  • PHẦN 1. LÝ THUYẾT MÁY TURING

    • 8.2.1 Nhiệm vụ giải quyết các câu hỏi toán học

    • 8.2.2 Ký pháp cho máy Turing

    • 8.2.3 Mô tả tức thời cho máy Turing

    • 8.2.4 Những sơ đồ chuyển tiếp cho máy Turing

    • 8.2.5 Ngôn ngữ của máy Turing

    • 8.2.6 Máy Turing và trạng thái dừng

    • PHẦN 2. BÀI TẬP

      • 2.1. Bài 8.2.1

      • 2.2. Bài 8.2.3

      • TÀI LIỆU THAM KHẢO

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan