Skip to main content
QUICK REVIEW

[论文解读] Generating certified properties for numerical expressions and their evaluations

Marc Daumas, Guillaume Melquiond|arXiv (Cornell University)|Jan 29, 2007
Numerical Methods and Algorithms被引用 1
一句话总结

Gappa 是一种工具,可自动为涉及精确运算和舍入运算的数值表达式生成形式化认证的边界。它使用多精度二进制分数的区间算术,并执行前向误差分析,以生成可在 Coq 或 HOL Light 中机器检查的证明,从而实现对数值软件属性的高可信度验证。

ABSTRACT

Gappa uses interval arithmetic to certify bounds on mathematical expressions that involve rounded as well as exact operators. Gappa generates a theorem with its proof for each bound treated. The proof can be checked with a higher order logic automatic proof checker, either Coq or HOL Light, and we have developed a large companion library of verified facts for Coq dealing with the addition, multiplication, division, and square root, in fixed- and floating-point arithmetics. Gappa uses multiple-precision dyadic fractions for the endpoints of intervals and performs forward error analysis on rounded operators when necessary. When asked, Gappa reports the best bounds it is able to reach for a given expression in a given context. This feature is used to quickly obtain coarse bounds. It can also be used to identify where the set of facts and automatic techniques implemented in Gappa becomes insufficient. Gappa handles seamlessly additional properties expressed as interval properties or rewriting rules in order to establish more intricate bounds. Recent work showed that Gappa is perfectly suited to the proof of correctness of small pieces of software. Proof obligations can be written by designers, produced by third-party tools or obtained by overloading arithmetic operators.

研究动机与目标

  • 为涉及精确运算和舍入运算的数学表达式提供形式化认证的边界。
  • 通过高阶逻辑证明检查器自动生成功能可验证的数值属性证明。
  • 通过认证的误差边界和形式化定理生成,支持数值软件组件的验证。
  • 通过区间约束和重写规则扩展对复杂数值属性的支持。
  • 通过揭示现有形式化库中的局限性,暴露当前技术与事实的不足之处。

提出的方法

  • Gappa 使用多精度二进制分数的区间算术,以精确表示区间端点。
  • 它对舍入运算符执行前向误差分析,以界定浮点计算中的数值误差。
  • 该工具为每个认证边界生成一个带有形式化证明的定理,该证明可由 Coq 或 HOL Light 检查。
  • 它集成了一个大型 Coq 伴生库,其中包含固定点和浮点格式下基本算术运算的已验证事实。
  • Gappa 通过区间约束和重写规则支持额外属性,以推导出更复杂的边界。
  • 它可以报告给定表达式可达到的最紧边界,从而帮助诊断其知识库中的缺口。

实验结果

研究问题

  • RQ1如何为涉及精确运算和舍入运算的数值表达式生成具有机器可检查证明的形式化边界?
  • RQ2使用区间算术时,哪些技术能够实现浮点计算中的可靠误差分析?
  • RQ3如何在确保与高阶逻辑证明检查器兼容的前提下,自动化形式化证明的生成?
  • RQ4Gappa 的形式化验证能力在哪些方面可以扩展以支持复杂数值属性?
  • RQ5该工具如何识别其内部事实与技术对给定边界的不足?

主要发现

  • Gappa 使用区间算术和多精度二进制分数,成功为数值表达式生成了形式化认证的边界。
  • 该工具在 Coq 或 HOL Light 中生成了可机器检查的证明,从而实现了对数值软件的高可信度验证。
  • 开发并集成了一个全面的 Coq 库,其中包含固定点和浮点运算的已验证算术事实。
  • 前向误差分析被有效应用于舍入运算符,以界定计算中的数值误差。
  • Gappa 可通过报告其可达到的最佳边界,识别自身推理的局限性,从而凸显其知识库中的缺口。
  • 该系统通过区间约束和重写规则无缝扩展边界,以支持复杂属性。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。