[論文レビュー] Disjunctive Interpolants for Horn-Clause Verification (Extended Technical Report)
本稿では、木型インタポルーレントと帰納的系列を一般化する新しい形のクレイグインタポルーレント、すなわち分岐論理の許容を認めるインタポルーレントツリーを用いる「分離的インタポルーレント」を導入する。本稿では、分離的インタポルーレントの構築アルゴリズムを提示し、再帰なしのホーン節に対してタイトな計算量の上限を証明(整数線形論理ではco-NEXPTIME)、実験的に分離的インタポルーレントが木型インタポルーレントと比較して抽象化精錬ステップを削減することを示したが、予測生成時間のトレードオフを伴う。
One of the main challenges in software verification is efficient and precise compositional analysis of programs with procedures and loops. Interpolation methods remain one of the most promising techniques for such verification, and are closely related to solving Horn clause constraints. We introduce a new notion of interpolation, disjunctive interpolation, which solve a more general class of problems in one step compared to previous notions of interpolants, such as tree interpolants or inductive sequences of interpolants. We present algorithms and complexity for construction of disjunctive interpolants, as well as their use within an abstraction-refinement loop. We have implemented Horn clause verification algorithms that use disjunctive interpolants and evaluate them on benchmarks expressed as Horn clauses over the theory of integer linear arithmetic.
研究の動機と目的
- ループおよび手続きを含むプログラムの効率的かつ正確な合成的検証の課題に取り組む。これは、抽象化・精錬に基づくインタポルーレントを用いる。
- 木型インタポルーレントや帰納的系列といった従来のインタポルーレント形式の限界を乗り越えるために、複数の反例を同時に処理できるより表現力の高い分離的形態を導入する。
- 再帰なしのホーン節の解法と相対的に、分離的インタポルーレントを構築するための効率的アルゴリズムを開発し、その計算量の複雑性を特定する。
- モデルチェックにおける抽象化精錬ステップの削減という実用的利点を、NTSライブラリのベンチマークとHSFおよび木型インタポルーレントとの比較を用いて実証する。
- 分離的インタポルーレントを用いた反例駆動型予測抽象化により、再帰的ホーン節の検証を可能にする。
提案手法
- 分離的インタポルーレントを定義し、分岐ノードに論理積と論理和の両方を許容するインタポルーレントツリーとして、木型インタポルーレントの一般化とみなす。
- 再帰なしのホーン節の部分クラスへの分離的インタポルーレント問題の還元を実施し、既存のホーン節ソルバの利用を可能にする。
- 再帰なしのホーン節の解法が命題論理ではPSPACE完全、整数線形論理ではco-NEXPTIME完全であることを証明する。
- これらの論理において、分離的インタポルーレント問題がco-NPに属することを示し、完全なホーン節解法と比較して計算量の利点を示す。
- 再帰的ホーン節の抽象化・精錬ループに分離的インタポルーレントを統合し、反例抽出と予測生成を用いる。
- プロトタイプを実装し、NTSライブラリのベンチマーク(再帰的アルゴリズム、リンクリスト、VHDL回路、配列プログラムなど)を用いて評価する。
実験結果
リサーチクエスチョン
- RQ1分離論理の分岐を許容するインタポルーレントツリーを用いることで、木型インタポルーレントと帰納的系列を一般化する新たなインタポルーレント形式を定義可能か?
- RQ2整数線形論理上での分離的インタポルーレント問題と再帰なしホーン節の計算量は何か?
- RQ3モデルチェックにおいて、木型インタポルーレントと比較して分離的インタポルーレントは抽象化精錬ステップ数を削減可能か?
- RQ4標準的なホーン節ベンチマークにおいて、分離的インタポルーレントの性能はHSFなどの最先端ツールと比較してどうか?
- RQ5精錬効率という観点から、インタポルーレント生成に要する時間と得られる予測の品質との間には実用的なトレードオフがあるか?
主な発見
- 分離的インタポルーレントは木型インタポルーレントと帰納的系列を包含し、複数の反例を同時に処理できるため、より表現力が高く、厳密に表現力が強い。
- 命題論理上、分離的インタポルーレント問題はco-NPに属し、整数線形論理上はco-NEXPTIMEに属する。一方、再帰なしホーン節の解法はそれぞれPSPACE完全およびco-NEXPTIME完全である。
- 実験では、分離的インタポルーレントが一貫して木型インタポルーレントより抽象化精錬ステップ数を削減し、より優れた予測品質を示した。
- 精錬ステップ数が少ないにもかかわらず、分離的インタポルーレントは予測生成に平均して42%の検証時間を要し、木型インタポルーレントの31%と比較して、一部のベンチマークでは全体的な性能が劣った。
- HSFが処理できなかったモジュラ算術を含むベンチマークを、本手法は正常に検証できた。これにより、より広範な適用可能性が示された。
- 大規模なベンチマークではHSFが依然として本プロトタイプより速かったが、性能差は縮小しており、さらなる最適化により改善の余地があることが示唆された。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。