Có một hệ thống chứng minh tự động hợp lý cho các định lý TCS không?


28

Giả sử tôi muốn chính thức hóa bằng chứng của Turing liên quan đến vấn đề tạm dừng để máy có thể kiểm tra. Một số hệ thống chứng minh định lý tự động nổi tiếng bao gồm Mizar, Coq và HOL4. Tôi đã tải xuống và thử nghiệm với Coq, nhưng nó không có thư viện cho các máy Turing. Tôi nghĩ để tự viết mã, nhưng thấy hướng dẫn thiếu và ngôn ngữ khó tiếp thu.

Câu hỏi của tôi là: Có một người cung cấp định lý tự động nói chung là tốt trong việc chứng minh các định lý liên quan đến máy Turing không? Tôi sẽ xem xét một câu tục ngữ định lý như vậy là "tốt" nếu nó có thể chính thức hóa một bằng chứng về tính không ổn định của vấn đề tạm dừng sử dụng các thư viện đã tồn tại. Tôi sẽ xem xét nó thậm chí còn tốt hơn nếu nó tương đối dễ dàng để nhận. (Đối với bản ghi, tôi thường không gặp khó khăn với ngôn ngữ lập trình.)

Cảm ơn,

Philip


Bạn có thể muốn kiểm tra trang này nhưng danh sách không bao gồm vấn đề tạm dừng.
Kaveh

10
Tôi dám nói rằng bạn cần kiên trì với một cái gì đó như Coq trước khi nó cảm thấy tự nhiên. Và bạn cần phải ở nhà ga làm việc thông qua các vấn đề, thay vì đọc sách. Bắt tay vào "Định lý tương tác và phát triển chương trình: Coq'Art: Tính toán của các công trình quy nạp" sẽ giúp ích. Hướng dẫn về Coq: cis.upenn.edu/~bcpierce/sfadam.chlipala.net/cpdt khá tốt (mặc dù không nhắm trực tiếp vào những gì bạn muốn).
Dave Clarke

5
Việc chính thức hóa một bằng chứng có thể khá phức tạp nếu bạn chọn phiên bản "sai" của nó. Đối với vấn đề Dừng, tôi sẽ đề nghị chứng minh một phiên bản tổng quát và trừu tượng hơn trước. Sau đó, bạn có thể chứng minh rằng máy Turing là trường hợp đặc biệt của phiên bản trừu tượng, nếu bạn vẫn cảm thấy thích làm việc đó (sẽ có rất nhiều chi tiết tẻ nhạt về máy Turing nên có lẽ thời gian sẽ tốt hơn khi làm việc khác). Tôi sẽ nghĩ về một cách tốt để chứng minh điều này trong Coq. Vẫn điều chỉnh.
Andrej Bauer

5
Nếu bạn giỏi toán và giỏi lập trình, thì bạn có điều kiện tiên quyết để học cách sử dụng trợ lý chứng minh. Bạn thực sự cần phải coi nó như một kỹ năng mới. (Tuy nhiên, nó rất bổ ích.)
Neel Krishnaswami

Có vẻ như câu trả lời cho câu hỏi là "không". Một hệ thống như vậy sẽ rất hữu ích tôi nghĩ - tôi có thể yêu cầu rằng nếu bạn chính thức hóa máy Turing, bạn có thể suy nghĩ một chút về sự tương đương thời gian đa thức không?
Colin McQuillan

Câu trả lời:


17

Đây là một thư viện của Isabelle / HOL chứa định lý Rice, trong đó nêu rõ tính không thể giải quyết được của một loạt các vấn đề. Vì thư viện này mô hình hóa khả năng tính toán thông qua các hàm đệ quy, bạn phải mã hóa máy Turing phổ dụng dưới dạng hàm đệ quy để sử dụng định lý này để chứng minh tính không ổn định của vấn đề tạm dừng của máy Turing. Tuy nhiên, các phần thiết yếu của bằng chứng không thể thiếu được đã được thực hiện.

http://afp.sourceforge.net/browser_info/cản/HOL/Recursion-Theory-I/index.html

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.