Interactive Theorem Proving(ITP)にはさまざまなシステムがあります-その名前の会議も参照してください-Coq、Isabelle、HOL、ACL2、PVSなど
それらはすべて、学ぶのが比較的難しく、それぞれに固有の文化があります。それは外国語を学ぶようなものです。あなたはすでに英語を知っていると言い、それからフランス語、ドイツ語、イタリア語、スペイン語、ポルトガル語の選択肢があります。それらはすべて何らかの形で関連しています(これは中国語ではありません)が、これらすべてを同時に管理する人はほとんどいません。だから、あなたはそれぞれの文化やコミュニティの味を試してみて、そしてコミットメントをするべきです。
作業に本当に必要な「キラー機能」もあるかもしれません。
また、これらのシステムの1つについて仲間の専門家がいることも役立ちます。
どちらもスタンフォード/エジンバラ/ケンブリッジのLCFシステムの子孫です。1985年、G。ヒュートとL.ポールソンは、ケンブリッジLCFの最後のバージョンで共同作業を行いました。その後、フランスのCoc / CIC / COQ(現在のCoq)、およびケンブリッジとミュンヘンのIsabelleに向けて分割が行われました。HOL4、HOL-Light、HOL-XYZは、LCFの他の関連する子孫であることに注意してください。
20年以上前、CoqとIsabelleの区別は、論理的基盤(ここでは依存型の構成的論理、単純型の古典的論理)に従って行われていました。アドオンツールやライブラリを含む各フォーマルシステムの上にさらに多くのレイヤーが追加されているため、今日、実際にはそれに対する影響は驚くほどほとんどありません。
- IsabelleまたはCoq、またはその両方を学習する必要がありますか?
両方を見て、もっとワインとチーズ、またはブラートヴルストとザウアークラウトが好きなら、気分をつかむようにしてください。(イザベルの背後にいる人の一人ですが、現在フランスにいるとき、私が家にいて誰も見ていないときに、ザウアークラウトを実際に好きなフランス人がどれだけいるかに驚いています:-)
- イザベルまたはCoqを最初に学習することには利点がありますか?
そうは思いません。最初に試したものにこだわって、2つ目のものを試さないという危険があるか、最初の1つに失望しすぎてすぐに解雇する危険があります。いずれにせよ、どちらのシステムでも生産性を上げるには時間と永続性が必要です。
「IDE」としてのProof Generalがすでに言及されているため、Proof General / Emacsは長年にわたってCoqとIsabelleの両方の標準統一インターフェースでしたが、IDEとは呼んでいませんでした。名前に「IDE」を含むCoqIDEもありますが、Gtkウィジェットの上にある比較的基本的なエディターです。現在のIsabelleにはIsabelle / jEditが含まれています。Isabelle/ jEditは名前に「IDE」はありませんが、NetbeansまたはIntelliJ IDEAで日常的に表示されるものを概算することを目的としています。