Việc gõ tương ứng với máy Turing là gì?


8

Tôi hy vọng câu hỏi của tôi có ý nghĩa: Bắt đầu với tiền đề rằng việc tháo gỡ λ tính toán tương đương với sức mạnh của máy Turing, với những gì trong máy Turing không thêm các loại vào λtính toán tương ứng? Có một số loại tự động tương tự để gõ, cho dù là tĩnh hay động?


3
Tôi khuyên bạn nên từ bỏ ý tưởng đơn giản rằng TM tương ứng với λ-calculus. Đó là sự hiểu lầm. Theo luận án Church-Turing, bạn có thể tìm thấy các bảng mã giữa tất cả các khung tính toán hợp lý. TM không tương ứng nữaλ-calculus hơn so với trò chơi cuộc sống của Conway hoặc các hệ thống bán Thue hoặc Prolog hoặc .... Chúng ta có thể tìm thấy mã hóa giữa tất cả các hệ thống này. Các bảng mã có hoặc thiếu các thuộc tính (ví dụ: thành phần) và điều đó có thể hoặc không thể là một điều tốt trong một ứng dụng cụ thể.
Martin Berger

1
Nếu nó quá sai lệch, vậy thì mọi người (đặc biệt là giáo sư) có nên ngừng nhấn mạnh nó không? Có vẻ như một kết quả quan trọng - thực sự, nền tảng - trong khoa học máy tính, vậy tại sao mọi người không nên tìm kiếm và mong đợi các kết nối khác giữa hai hệ thống?
BlueBomber

@BlueBomber, Điều quan trọng / nền tảng là vì lý do lịch sử: đây là hai trong số các chính thức được đề xuất chính của tính toán (cùng với μ-recursion) tại thời điểm không biết cách "chính xác" để chính thức hóa tính toán sẽ là gì. Vì vậy, việc phát hiện ra thực tế rằng mỗi cái có thể mô phỏng cái kia là một vấn đề lớn. Tuy nhiên, điều này không nhất thiết có nghĩa là chúng có mối liên hệ đặc biệt hơn bất kỳ hai cách tính toán nào khác.
usul

Câu trả lời:


4

Tôi không thể cung cấp cho bạn câu trả lời trực tiếp cho máy tự động, nhưng cho các chức năng về số.

Phép tính lambda chưa được xử lý tương ứng với μchức năng -recursive .

Đối với các hệ thống đánh máy, nó tự nhiên thay đổi cho các hệ thống khác nhau.

Một điều thú vị là Hệ thống F , còn được gọi là phép tính lambda đa hình. Có một định lý nói rằng

Một hàm (trên các số tự nhiên) có thể biểu thị được trong Hệ thống F khi và chỉ khi nó có thể được chứng minh theo số học Peano thứ hai mà hàm đó là tổng.

Điều này có nghĩa là trong Hệ thống F, bạn có thể thể hiện cơ bản tất cả các hàm tổng có thể tưởng tượng được.

Có một chút hệ thống yếu, hệ thống T Gödel, mà ở đó là một định lý rất giống nhau cho đầu tiên trật tự Peano số học. (Tuy nhiên, hệ thống này không đẹp như Hệ thống F. Trong Hệ thống F, bạn có thể biểu diễn các số tự nhiên, booleans, v.v., trong khi Hệ thống T được xây dựng dưới dạng phép tính lambda được gõ đơn giản với các hàm tự nhiên và booleans được thêm vào bên ngoài. Ngoài ra, Hệ thống F có dạng đa hình. , làm cho nó thanh lịch hơn nhiều trong nhiều trường hợp.)

Xem thêm:


2

Tôi sẽ nói rằng việc gõ không tương ứng với bất cứ điều gì cho Turing Machines. Đây là lý do của tôi: gõ không thực sự phải làm với tính toán và Turing Machines chỉ tính toán mô hình.

Đối với hầu hết các phần, các loại chương trình không thực sự ảnh hưởng đến cách chương trình đó chạy. Thay vào đó, chúng là các công cụ tại thời gian biên dịch được sử dụng vì một trong hai lý do. Một là làm cho các chương trình gõ kém không được biên dịch. Đây là một hoạt động hoàn toàn theo thời gian biên dịch, không ảnh hưởng đến cách tính toán kết quả được thực hiện.

Thứ hai là cho phép nhiều chức năng có cùng tên. Điều này không thực sự ảnh hưởng đến tính toán cơ bản, nó chỉ cho phép chúng tôi viết chương trình theo cách dễ hiểu hơn.

Các loại không phải là một công cụ tính toán. Chúng có thể được sử dụng để chứng minh, để hiểu các chương trình, để cấu trúc chúng theo cách dễ hiểu hơn, nhưng sự hiện diện của chúng không thay đổi cách cơ bản chúng ta thực hiện tính toán.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.