複雑性理論研究での証明アシスタントの使用法?


14

STOCのような会議で取り上げられているトピックを考慮すると、アルゴリズムまたは複雑性の研究者はCOQまたはIsabelleを積極的に使用していますか?もしそうなら、彼らは研究でそれをどのように使用していますか?証拠が低すぎるため、ほとんどの人はそのようなツールを使用しないと思います。素敵なサプリメントとは対照的に、これらの証明アシスタントを研究に不可欠な方法で使用している人はいますか?

これらのツールのいずれかを学習し始める可能性があり、削減、正確さ、または実行時間の証明のコンテキストでそれらについて学ぶのが楽しいので、私は興味があります。


1
「理論B」、特にプログラミング言語の理論を除外しますか?私の理解では...証明アシスタントがPLにはるかに頻繁に慣れるということです
ジョシュアGrochow

1
用語を調べたところ、「理論A」
-nish2575

1
私の知る限り、理論Aのほとんどは、他のほとんどの数学と同じカテゴリーに属します。これらのシステムにこれまでに追加された基礎はほとんどないため、最も興味深い定理は、最初に必要な定義を実装するためのインフラストラクチャ。公式化されたいくつかの興味深いオートマトン理論があります。
アンドラスサラモン

1
複雑性理論の結果は、はるかに弱いシステムで証明可能である傾向があり、通常はPAも必要ありません。CoqとIsabellerは、私が言う複雑性理論にはあまり適していません。クックとグエンの本にあるようなほとんど正式な証明スケッチがありますが、主な関心は、複雑性クラスに関連する証明システムでそれらを証明することです。非常に弱いシステムで証明できるのに、なぜCoqで補題を切り替えることでそれらを証明したいのでしょうか?
-Kaveh

2
@Kavehさまざまな証明システムの弱点/強度は問題ではありません。プログラムを検証したい理由と同じ理由で、複雑性理論で証明を正式に検証したいのです。さらに、証明者理論を拡張して複雑性理論の証明をより便利に処理できるようにすることも興味深い課題です。
マーティンバーガー

回答:


15

一般的な経験則では、機械化する数学が抽象的でエキゾチックであるほど、簡単になります。逆に、数学がより具体的/なじみがあるほど、難しくなります。そのため、(たとえば)予測可能なポイントフリートポロジのような珍しい動物は、通常のメトリックトポロジよりも機械化が非常に簡単です。

これは最初は少し驚くかもしれませんが、これは基本的に実数などの具体的なオブジェクトがさまざまな代数構造に参加し、それらを含む証明がそれらのあらゆるビューからプロパティを利用できるためです。そのため、数学者が慣れ親しんでいる通常の推論を行うには、これらすべてを機械化する必要があります。対照的に、非常に抽象的な構造には(意図的に)小さく制限されたプロパティセットがあるため、適切なビットを取得する前に機械化する必要はほとんどありません。

複雑性理論とアルゴリズム/データ構造の証明は、(原則として)数字、ツリー、リストなどの単純なガジェットの洗練されたプロパティを使用する傾向があります。例えば、コンビナトリアル、確率論的および数論的議論は、複雑性理論の定理においてすべて同時に日常的に現れる。プルーフアシスタントライブラリのサポートをこれが得意なところまで取得するのは、非常に多くの作業です!

人々が仕事に積極的に参加する状況の1つは、暗号化アルゴリズムです。複雑な数学的理由により、非常に微妙なアルゴリズム上の制約があります。暗号化コードは敵対的な環境で実行されるため、わずかなエラーでも壊滅的です。そのため、たとえば、Certicryptプロジェクト は、暗号アルゴリズムの正確性のマシンチェックされた証拠を構築する目的で、多くの検証インフラストラクチャを構築しました。


6

1つの非常に顕著な例は、もちろん、多くの組み合わせ論を使用するCoqの4色定理のGonthiers Coq形式化です。

同僚のUliSchöppは、この目的のためにGonthierが開発したssreflectライブラリを使用して、グラフオートマトンのCookとRackoffの結果をCoqでも検証(およびわずかに拡張)しました。https://scholar.google.at/scholar?oi=bibs&cluster=4944920843669159892&btnI=1&hl=de(Schöpp、U.(2008)。無向グラフの到達可能性の正式な下限。プログラミング、人工知能、推論のロジック( pp。621-635)。スプリンガーベルリン/ハイデルベルク)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.