Saya akan mengatakan bahwa perbedaan klasik "otomatis membuktikan teorema" (ATP) vs "teorema interaktif pembuktian" (ITP) perlu dipertimbangkan. Jika Anda mengambil sistem ITP terkenal seperti Isabelle / HOL hari ini (Isabelle2013 dari Februari 2013), hal tersebut terintegrasi cukup banyak add-on alat dari portofolio ATP:
On-board generik alat bukti otomatis: tua-sekolah alat Isabelle seperti fast
dan blast
(oleh L. Paulson) dan lebih baru provers otomatis seperti metis
(oleh J. Hurd).
ATP eksternal untuk Logika Orde Pertama yang dipanggil melalui Sledgehammer: E prover, SPASS, Vampire. Bukti yang ditemukan dianalisis untuk mengetahui lemon mana yang berkontribusi padanya, mengurangi 10.000 menjadi 10, dan memberi makan hasilnya metis
.
TPS eksternal dengan rekonstruksi bukti parsial, terutama untuk Z3 (oleh S. Boehme).
Alat untuk menemukan contoh counter pernyataan yang belum terbukti: nitpick / Kodkodi (J. Blanchette) dan Quickcheck (L. Bulwahn).
Apakah semua yang otomatis hal make Isabelle sebuah otomatis prover teorema?
Pada akhirnya, saya pikir perbedaan "ATP" vs "ITP" hanyalah semacam "label" yang memberi tahu bagaimana Anda ingin memposisikan atau "menjual" sistem Anda: ATP mengklaim sebagai "alat tombol-tekan", tetapi dalam berlatih Anda akan harus berinteraksi (secara tidak langsung), dengan memberikan parameter atau petunjuk, atau reformulasi masalah Anda. Itu mungkin benar-benar cukup menantang, karena runtimes panjang yang umum-tempat di masyarakat ATP.
Sebaliknya, sistem ITP dibuat untuk orang-orang yang menunggu di tempat, dengan akses setengah layak untuk negara bukti internal, untuk melihat apa yang hilang untuk menyelesaikan bukti. Sebuah sistem ITP yang wraps up alat ATP dalam cara Isabelle mungkin berubah lebih menarik lebih banyak pengguna dan aplikasi yang lebih, daripada baik ITP atau ATP saja.