Załóżmy, że chciałem sformalizować dowód Turinga dotyczący problemu zatrzymania, aby maszyna mogła to sprawdzić. Niektóre ze znanych automatycznych systemów dowodzenia twierdzeń obejmują Mizar, Coq i HOL4. Pobrałem i eksperymentowałem z Coq, ale nie ma biblioteki dla maszyn Turinga. Sam pomyślałem o kodowaniu jednego, ale brakowało tego samouczka, a język był trudny do odczytania.
Moje pytanie brzmi: czy istnieje automatyczna powiedzonka twierdzeń, która ogólnie dobrze sprawdza się w dowodzeniu twierdzeń dotyczących maszyn Turinga? Uznałbym, że taki twierdzący twierdzenie jest „dobry”, jeśli może sformalizować dowód nierozstrzygalności problemu zatrzymania przy użyciu już istniejących bibliotek. Uznałbym to za jeszcze lepsze, jeśli jest stosunkowo łatwo go podnieść. (Dla przypomnienia, zwykle nie mam trudności z językami programowania.)
Dzięki,
Philip
Odpowiedzi:
Oto biblioteka Isabelle / HOL zawierająca twierdzenie Rice'a, które stwierdza nierozstrzygalność szerokiego zakresu problemów. Ponieważ ta biblioteka modeluje obliczalność za pomocą funkcji rekurencyjnych, musisz zakodować uniwersalną maszynę Turinga jako funkcję rekurencyjną, aby użyć tego twierdzenia do wykazania nierozstrzygalności problemu zatrzymania maszyn Turinga. Jednak zasadnicze części dowodu nierozstrzygalności zostały już wykonane.
http://afp.sourceforge.net/browser_info/current/HOL/Recursion-Theory-I/index.html
źródło