CHC-COMP 2023: 制約ホーン節ソルバーの評価
CHCコンペでは、ソルバーの進歩とプログラム検証への応用が紹介されたよ。
― 1 分で読む
CHC-COMP 2023は、制約ホーン述語の解決者コンペの第6回目だったよ。このコンペは2023年4月に開催されて、結果はフランス・パリでの第10回ホーン条項検証と合成に関するワークショップで発表されたんだ。イベントでは7つのソルバーが披露されて、そのうち6つが参加して、1つはコンペ外で発表されたんだ。参加者はそれぞれ異なる6つのトラックで、特定のタイプのホーン述語に取り組んでた。
制約ホーン述語って何?
制約ホーン述語は特別な論理式の一種で、従来のホーン条項の形式に制約を加えたもの。これらの制約は整数算術、配列、データ型などのさまざまな背景理論から来ることがあるんだ。CHCは自動プログラム検証に広く使われてて、プログラムが正しく動作するか確認するのを助けてくれるんだ。
過去10年間で、これらの条項を効率的に扱えるツール、つまりCHCソルバーの開発が大きく進展したよ。このソルバーは充足可能性に関する問題を解決できて、与えられた論理式に対する解が存在するかどうかを判断できるんだ。
CHC-COMPの目的
CHC-COMPの主な目的は、誰でもアクセスできる現実的なベンチマークに基づいて最良のCHCソルバーを評価することだよ。このコンペは、CHCを解決する方法や実用的なアプリケーションに興味のある開発者や研究者、ユーザーからの貢献を奨励してるんだ。
CHC-COMP 2023は、前述のワークショップに関連して開催されたよ。候補ベンチマークの提出締切は2023年3月24日だった。参加者は短期間でツールを提出して競ったんだ。2週間の競技の後、結果がワークショップで共有されたよ。
コンペの構成
このコンペでは、参加したソルバーが6つの異なるトラックで競い合ったんだ。それぞれのトラックは異なるタイプのCHCを扱ってたよ。トラックはさまざまな基準に基づいてソルバーを評価するために設計されてた。
- 背景理論: トラックごとに異なる基礎理論を利用してソルバーを評価してた。
- 解釈されていない原子の数: 理論の文脈で解釈されていない原子(変数や記号として理解される)によってトラックが分類されたよ。
これらのトラックに含まれる条項のタイプは、整数算術、配列などに制約が適用された線形および非線形CHCだったんだ。
技術的詳細
CHC-COMP 2023は、StarExecプラットフォームを利用して競技を行ったよ。StarExecは、ソルバーを動かすための強力なプロセッサが搭載されたノードの専用キューを提供してたので、競技は多くのタスクを同時に処理できたんだ。
コンペの前に、チームはプラットフォームに慣れるためのテストランに参加して、ツールが正しく機能するか確認したよ。このテストフェーズでは、主催者が参加者とコミュニケーションを取って、公式コンペが始まる前に問題を解決できるようにしてた。
主要なコンペは、さまざまなベンチマークに対して評価される最終提出から成り立ってた。各ジョブには、フェアな競技を確保するためにCPU時間やメモリ使用量に特定の制限があったんだ。
ソルバーの評価
ソルバーは、割り当てられたベンチマークでのパフォーマンスに基づいて評価されたよ。満足可能または不満足の結果を正確に特定した数に基づいてスコアが与えられたんだ。もしソルバーが不明な結果を返した場合、それはあまり良くない評価だったよ。
もし2つのソルバーがベンチマークの結果について意見が異なる場合、主催者はその不整合に注意を払い、該当するチームに通知したんだ。時間が許せば、チームはこれらの問題に対処する機会が与えられたよ。
ベンチマーク選定プロセス
コンペのためのベンチマークを選定するにはいくつかのステップがあったんだ。まず、必要な形式に準拠しているか確認するためにベンチマークが処理されたよ。フォーマットが整ったら、複雑さや他の特徴に基づいて6つのトラックに分類されたんだ。
選定プロセスは「簡単」と「難しい」のベンチマークを混ぜることを目指してた。「簡単」なベンチマークは、勝ったソルバーと準優勝したソルバーがすぐに解決できたものだったよ。各ベンチマークは、過去のコンペでのパフォーマンスに基づいて評価されて、公平なテストの代表を確保してたんだ。
ソルバーの提出
CHC-COMP 2023には7つのソルバーが参加して、競技主催者がその設定を記録してたよ。ソルバーは競技トラックの特定のタイプの条項に適したさまざまな設定を使用してたんだ。
また、これらのソルバーのパフォーマンスは、それぞれの能力や直面したベンチマークの性質によって異なることが予想されてたよ。コンペは、新しいソルバーや確立されたソルバーが自分の強みを披露する機会を提供してたんだ。
見つかった問題と解決策
コンペ中に、特定のソルバーのパフォーマンスに関するいくつかの問題が見つかったよ。例えば、結果に不整合があった場合、チームに連絡を取り、修正を提出する機会が与えられたんだ。主催者は、競技の公正さを維持するために、これらのチームと緊密に連携して問題を修正させたよ。
コミュニケーションをオープンに保つことで、多くの不一致が解決され、より正確な結果が報告されるようになったんだ。
最終結果
コンペの結論で、勝者はさまざまなトラックでの全体的なパフォーマンスに基づいて発表されたよ。今年は、異なるカテゴリーで特定の能力に基づいて複数の勝者が認められたんだ。
今後の課題
今後のことを考えると、CHC-COMPの主催者は次回の改良や変更を検討してるんだ。考慮されているのは以下のことだよ。
- 結果の検証: 各ソルバーが正確な証言や証拠を生成できることを確保するのが優先事項だよ。
- ベンチマークの状況: ベンチマークが期待される結果を明示的に宣言する必要があるんだ。これが、ソルバーが提供した結果の正確さを評価するのに役立つよ。
- 並行トラック: 特定のトラックで並行処理を許可するアイデアが、コンペのダイナミクスを向上させて、参加者に新たな挑戦を提供できるかもしれないよ。
- ベンチマークの貢献の強化: 主催者は、次回のコンペのために利用可能なベンチマークセットを拡大するためにコミュニティからの貢献を奨励してるんだ。
結論
CHC-COMP 2023は、CHC解決の分野での進展を評価して披露することに成功したよ。このイベントは、研究者と開発者の協力の重要性を強調し、プログラム検証分野での継続的な発展のプラットフォームを提供したんだ。参加者からの貴重なフィードバックと今回の教訓をもとに、次回のコンペではさらに大きな成功を収めることができるかもしれないよ。
コンペが成長し続ける中で、コミュニティメンバーの関与と新しいベンチマークの提供がイノベーションを促進し、ソルバー技術を改善するために不可欠になるんだ。CHCコミュニティは次回の開催を楽しみにしてて、この分野がさらに進化するのを期待してるんだ。
タイトル: CHC-COMP 2023: Competition Report
概要: CHC-COMP 2023 is the sixth edition of the Competition of Solvers for Constrained Horn Clauses. The competition was run in April 2023 and the results were presented at the 10th Workshop on Horn Clauses for Verification and Synthesis held in Paris, France, on April 23, 2023. This edition featured seven solvers (six competing and one hors concours) and six tracks, each of which dealing with a class of clauses. This report describes the organization of CHC-COMP 2023 and presents its results.
著者: Emanuele De Angelis, Hari Govind V K
最終更新: 2024-04-23 00:00:00
言語: English
ソースURL: https://arxiv.org/abs/2404.14923
ソースPDF: https://arxiv.org/pdf/2404.14923
ライセンス: https://creativecommons.org/licenses/by/4.0/
変更点: この要約はAIの助けを借りて作成されており、不正確な場合があります。正確な情報については、ここにリンクされている元のソース文書を参照してください。
オープンアクセスの相互運用性を利用させていただいた arxiv に感謝します。
参照リンク
- https://chc-comp.github.io/format.html
- https://github.com/chc-comp/scripts
- https://github.com/chc-comp
- https://github.com/chc-comp/chc-tools/tree/master/format-checker
- https://github.com/chc-comp/chc-comp23-benchmarks
- https://www.starexec.org/starexec/secure/explore/spaces.jsp?id=538230
- https://chc-comp.github.io/
- https://www.sci.unich.it/hcvs23/
- https://tacas.info/toolympics2023.php
- https://www.starexec.org/
- https://www.starexec.org/starexec/public/machine-specs.txt
- https://www.starexec.org/starexec/secure/explore/spaces.jsp?id=538944
- https://raw.githubusercontent.com/duetosymmetry/orcidlink-LaTeX-command/master/orcidlink.sty
- https://github.com/Z3Prover/z3
- https://github.com/ftsrg/theta
- https://github.com/uuverifiers/eldarica
- https://loat-developers.github.io/LoAT/
- https://github.com/usi-verification-and-security/golem
- https://www.microsoft.com/en-us/research/project/boogie-an-intermediate-verification-language/
- https://ultimate.informatik.uni-freiburg.de/smtinterpol/
- https://github.com/ultimate-pa/
- https://www.ultimate-pa.org/
- https://www.ultimate-pa.org/?ui=tool&tool=automata_library
- https://dx.doi.org/10.4204/EPTCS.402.10