Đây là phần tiếp theo của một câu hỏi khác ở đây và tôi hy vọng nó không quá triết lý. Như Raphael đã chỉ ra trong một nhận xét về câu hỏi trước đây của tôi, tôi thực sự không có định nghĩa về "tính toán", nhưng theo một số bài báo tôi đọc, định nghĩa cũng không thực sự rõ ràng khi nói về các mô hình tính toán yếu hơn so với Turing máy vì mã hóa đầu vào và đầu ra.
Định nghĩa điển hình của Turing tính toán như sau:
Định nghĩa 1: Một chức năng được gọi là Turing tính toán khi và chỉ khi có một máy Turing M mà tính f sử dụng một mã hóa phù hợp các số tự nhiên như dây đàn.
Các định nghĩa khác nhau về chính xác mã hóa phù hợp là gì, nhưng hầu hết đề cập đến mã hóa nhị phân , mã hóa đơn nguyên hoặc mã hóa thập phân là mã hóa cố định và phù hợp. Cũng có thể chỉ ra rằng việc sửa một mã hóa là cần thiết cho định nghĩa tính toán tính toán. Nhưng điều gì làm cho mã hóa nhị phân của các số tự nhiên trở nên đặc biệt để chúng ta có thể axiomatize nó như một mã hóa phù hợp? Có lẽ bởi vì nó phù hợp với khái niệm trực quan về khả năng tính toán có nghĩa là trùng hợp .
Bây giờ nếu chúng ta nhìn vào các mô hình tính toán yếu hơn máy turing thì sao? Ví dụ: chúng ta hãy xem xét tập hợp của các máy xử lý "bị tê liệt" với bảng chữ cái { 0 , 1 } chỉ có thể di chuyển sang bên phải và một định nghĩa về tính toán tính toán bị tê liệt phù hợp với khả năng tính toán của tính năng bảo mật:
Định nghĩa 2: Hàm được gọi là turing turing có thể tính toán hoặc tính toán được trong M c iff có một máy turing bị tê liệt M tính toán f sử dụng mã hóa phù hợp các số tự nhiên dưới dạng chuỗi.
Nếu chúng ta định nghĩa "mã hóa phù hợp" là "mã hóa nhị phân", thì hàm là không tính toán trong M c . Nếu chúng ta axiomatize "mã hóa phù hợp" là "mã hóa đơn nguyên", thì f có thể tính toán được trong M c . Điều này có vẻ khó xử khi thực tế là mọi người có thể sửa một trong vô số nhiều mã hóa trực quan theo ý muốn. Cần phải rõ ràng nếu một mô hình tính toán có thể tính f hoặc không phải không đề cập đến một số mã hóa cụ thể - ít nhất tôi chưa từng thấy ai đề cập đến việc mã hóa nào được sử dụng khi nói rằng "các chương trình vòng lặp yếu hơn các máy turing".
Sau phần giới thiệu này, cuối cùng tôi cũng có thể diễn đạt câu hỏi của mình: Làm thế nào người ta định nghĩa "mã hóa phù hợp" và "tính toán" cho các mô hình tính toán tùy ý không trùng với khái niệm trực quan về tính toán? Đây có phải là trong khuôn khổ của tính toán turing?
Chỉnh sửa: Tôi rút ngắn phần giới thiệu, nó không thêm vào câu hỏi.