私はここで質問を参照しています:実装するには複雑すぎる強力なアルゴリズム。
アルゴリズムが強力であるが、実装するには複雑すぎる場合、アルゴリズムが正しいことをどのように確認できますか?実装なしでは、実際のシナリオでアルゴリズムをテストすることはできません。そのような複雑なアルゴリズムには、アルゴリズムを無効にするバグが含まれている可能性があります。
これは私が理解していないことです。アルゴリズムの正当性を証明する手法があれば、そのアルゴリズムをすでに実装しているでしょうね。それとも、証明テクニックが正しいことをどのように確認できますか?
初級に聞こえてすみません!
Kavehからの更新(引数の方が良いため、ここで再現!):
Coqのような形式システムでアルゴリズムの正しさを正式に証明できれば、アルゴリズムを抽出することもできます(本質的にはアルゴリズムを実装したため)。しかし、重要な事実は、ほとんどのアルゴリズムで、アルゴリズムの正確さ、私たちは正確さの非公式の証明を使用します。証明は誤りである場合があり、これは時々発生します。正確性の正式な証明でさえ、アルゴリズムが正しいことを完全に確信させることはできません。