Chciałbym pisać matematyczne dowody przy pomocy asystenta dowodu. Wszystko zostanie napisane przy użyciu logiki pierwszego rzędu (z równością) i naturalnej dedukcji. Tłem jest teoria mnogości (ZF). Na przykład, jak mogę napisać następujący dowód?
Aksjomat:
Twierdzenie:
Oznacza to, że pusty zestaw jest unikalny.
Używanie papieru i długopisu jest dla mnie trywialne, ale tak naprawdę potrzebuję oprogramowania, które pomoże mi w sprawdzeniu poprawności.
Dziękuję Ci.
Odpowiedzi:
Zarówno Coq, jak i Isabelle mogą to zrobić.
[Coq] Oto artykuł omawiający sposób kodowania ZFC w CIC, na którym oparty jest Coq.
Benjamin Werner: Zestawy w typach, Typy w zestawach (1997). http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.55.1709
[Isabelle] Jest biblioteka dla ZF.
http://www.cl.cam.ac.uk/research/hvg/Isabelle/dist/library/ZF/index.html
źródło
Przeniesiono z komentarza na sugestię Kaveha
Najpierw musisz wybrać asystenta dowodu. Używam Coq , ale jest wiele innych . Coq opiera się na logice wyższego rzędu (tak zwany rachunek konstrukcji indukcyjnych). Inni asystenci ds. Dowodu opierają się na logice pierwszego rzędu, więc mogą być bardziej dostosowane do twoich potrzeb (modulo komentarze powyżej).
Następnie musisz zobowiązać się do nauki asystenta dowodu. Powiązany dokument to samouczek, jak zdobyć znajomość z Coq. Zostanie ekspertem Coq wymaga lat poświęcenia i praktyki, ale proste twierdzenia można udowodnić po południu. Kluczem do nauki Coq lub innego asystenta dowodu jest robienie dowodów, takich jak te w powiązanym dokumencie. Samo czytanie papieru niewiele pomoże, ponieważ całe doświadczenie interakcji z asystentem dowodu nie może być dobrze przekazane na papierze.
W ciągu kilku dni powinieneś być w stanie zakodować proste twierdzenia, takie jak powyższe, i je udowodnić. Nie oczekuj, że zrobimy to za Ciebie. Nic się nie nauczysz w ten sposób.
Kiedy uda ci się udowodnić te twierdzenia, możesz opublikować tutaj swoje odpowiedzi i być może zostawić kilka komentarzy na temat swoich doświadczeń.
Czy jesteś gotowy na wyzwanie?
źródło
Istnieje wiele artykułów matematycznych napisanych przy użyciu asystenta sprawdzającego Mizara: http://mizar.org/fm/
źródło
Dave Clarke sugeruje Coq, ale tak naprawdę Isabelle wydaje się lepszym pomysłem, ponieważ ma bibliotekę dla ZF . Isabelle jest również bardzo dojrzała i zawiera szeroką gamę taktyk i rozszerzeń.
Nie korzystałem osobiście z Mizara, ale równie dobrze może być dobrze.
źródło
W Isabelle / ZF możesz napisać coś takiego
Jak widać Isabelle automatycznie to potwierdza. Oczywiście, jeśli naprawdę chcesz, możesz napisać bardziej szczegółowy dowód.
źródło
To samo twierdzenie jest sprawdzonym przykładem (patrz przykład 11) w samouczku dołączonym do mojego oprogramowania DC Proof 2.0. Pobierz go bezpłatnie z mojej strony internetowej http://www.dcproof.com
źródło