[论文解读] Exploiting Binary Floating-Point Representations for Constraint Propagation
本文提出了一套高效且形式化验证的算法,用于通过利用二进制浮点表示的数学结构,传播 IEEE 754 二进制浮点数约束。通过推广 Marre 和 Michel 提出的技术,该方法实现了对浮点数域的精确约束求解,显著提升了复杂浮点程序的测试数据生成效果。
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.
研究动机与目标
- 解决在传统随机或搜索方法失效的情况下,为浮点数密集型程序生成有效测试输入的挑战。
- 克服实数或有理数约束求解器在处理浮点数舍入误差方面的局限性。
- 设计一种原生针对二进制浮点数算术的约束求解器,并提供形式化正确性保证。
- 在由浮点数条件控制的复杂路径程序中,实现符号推理以支持测试数据生成。
提出的方法
- 推广 Marre 和 Michel 提出的先前技术,该技术利用了二进制浮点数的离散有序结构。
- 将浮点数约束建模为在可表示值的有限离散集合上的逻辑约束。
- 设计基于区间的传播算法,以追踪边界,同时考虑舍入模式和精度。
- 通过 IEEE 754 格式的位级特性,将舍入误差语义直接集成到约束传播中。
- 使用符号运算来传播算术运算中的约束,同时在浮点数语义下保持正确性。
- 在浮点数域内,形式化证明传播算法的可靠性和完备性。
实验结果
研究问题
- RQ1如何在不依赖实数求解器的前提下,使浮点数约束传播既高效又精确?
- RQ2二进制浮点数表示的哪些结构性质可被利用以改进约束求解?
- RQ3能否设计一种针对浮点数的约束求解器,并为其在测试中的实际应用提供形式化正确性保证?
- RQ4所提出的方法在处理浮点数程序中的复杂路径方面,如何优于现有方法?
主要发现
- 所提出的算法通过利用二进制浮点数的内在结构,实现了精确的约束传播。
- 该方法使在具有复杂浮点数控制流的程序中实现有效的符号推理成为可能。
- 形式化证明确保了约束传播过程的可靠性和完备性。
- 该方法避免了在实数或有理数上近似浮点数约束所导致的不准确性和低效性。
- 该技术推广了 Marre 和 Michel 的先前工作,将其适用范围扩展到更广泛的约束类别。
- 该解决方案支持所有标准的 IEEE 754 舍入模式和精度格式,确保了实际适用性。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。