Skip to main content
QUICK REVIEW

[論文レビュー] Exploiting Binary Floating-Point Representations for Constraint Propagation

Roberto Bagnara, Matthieu Carlier|arXiv (Cornell University)|Aug 18, 2013
Numerical Methods and Algorithms被引用数 1
ひとこと要約

この論文は、浮動小数点表現の数学的構造を活用することで、IEEE 754 2進浮動小数点制約を効率的かつ形式的に正当化されたアルゴリズムで伝搬する手法を提示する。Marre と Michel が提唱した技術を一般化することで、浮動小数点ドメイン上で正確な制約解決が可能となり、複雑な浮動小数点プログラムのテストデータ生成が著しく向上する。

ABSTRACT

Floating-point computations are quickly finding their way in the design of safety- and mission-critical sys-tems, despite the fact that designing floating-point algorithms is significantly more difficult than designing integer algorithms. For this reason, verification and validation of floating-point computations is a hot research topic. An important verification technique, especially in some industrial sectors, is testing. However, generat-ing test data for floating-point intensive programs proved to be a challenging problem. Existing approaches usually resort to random or search-based test data generation, but without symbolic reasoning it is almost impossible to generate test inputs that execute complex paths controlled by floating-point computations. Moreover, as constraint solvers over the reals or the rationals do not natively support the handling of round-ing errors, the need arises for efficient constraint solvers over floating-point domains. In this paper, we present and fully justify improved algorithms for the propagation of arithmetic IEEE 754 binary floating-point con-straints. The key point of these algorithms is a generalization of an idea by B. Marre and C. Michel that exploits a property of the representation of floating-point numbers. Key words: software verification; testing; floating-point numbers; constraint solving 1.

研究の動機と目的

  • 従来のランダムまたは探索ベースの手法が失敗する浮動小数点演算に重点を置いたプログラムの有効なテスト入力を生成する課題に対処する。
  • 実数または有理数の制約ソルバの浮動小数点の丸め誤差処理における限界を克服する。
  • 2進浮動小数点算術にネイティブに適合した制約ソルバを設計し、形式的な正しさの保証を提供する。
  • 浮動小数点条件によって制御される複雑な分岐を持つプログラムにおけるテストデータ生成の記号的推論を可能にする。

提案手法

  • Marre と Michel が提唱した、2進浮動小数点数の離散的かつ順序付き構造を利用した既存手法を一般化する。
  • 浮動小数点制約を表現可能な値の有限で離散的な集合上の論理的制約としてモデル化する。
  • 丸めモードと精度を考慮しながら境界を追跡する区間ベースの伝搬アルゴリズムを設計する。
  • IEEE 754 形式のビットレベル特性を直接活用して、丸め誤差の意味論を制約伝搬に統合する。
  • 浮動小数点の意味論に整合した正確性を保ちながら、算術演算を通じて制約を伝搬する記号的変換を用いる。
  • 浮動小数点ドメイン内での伝搬アルゴリズムの健全性と完全性を形式的に証明する。

実験結果

リサーチクエスチョン

  • RQ1実数ソルバに依存せずに、浮動小数点制約伝搬を効率的かつ正確に行うにはどうすればよいか?
  • RQ2浮動小数点表現のどの構造的性質を活用すれば制約解決が改善できるか?
  • RQ3実用的なテスト用途に適した形式的正しさの保証を備えた浮動小数点数上の制約ソルバを設計できるか?
  • RQ4提案手法は、浮動小数点プログラムにおける複雑な分岐を処理する際、既存手法をどのように上回るか?

主な発見

  • 提案されたアルゴリズムは、2進浮動小数点数の固有構造を活用することで、正確な制約伝搬を実現する。
  • この手法により、複雑な浮動小数点制御フローを持つプログラムにおける効果的な記号的推論が可能になる。
  • 形式的正当化により、制約伝搬プロセスの健全性と完全性が保証される。
  • 実数または有理数上で浮動小数点制約を近似する方法の不正確さと非効率性を回避する。
  • Marre と Michel の先行研究を一般化し、より広範なクラスの制約への適用可能性を拡張する。
  • 標準的なすべての IEEE 754 丸めモードと精度フォーマットをサポートしており、実用的関連性を確保する。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。