[论文解读] Trace Logic for Inductive Loop Reasoning
本文提出追踪逻辑(trace logic),一种多排序一阶逻辑框架,将程序变量建模为时间点和循环迭代的函数,从而实现程序安全性验证的自动化归纳循环推理。通过在追踪逻辑中编码程序语义,并利用可靠的追踪归结(trace lemmas)引导基于超推理(superposition-based)的定理证明,作者成功实现了对数组和整数中存在量词与全称量词交替的复杂一阶性质的全自动验证——在先前SMT求解器难以处理的SV-COMP基准中成功验证了100多个实例。
We propose trace logic, an instance of many-sorted first-order logic, to automate the partial correctness verification of programs containing loops. Trace logic generalizes semantics of program locations and captures loop semantics by encoding properties at arbitrary timepoints and loop iterations. We guide and automate inductive loop reasoning in trace logic by using generic trace lemmas capturing inductive loop invariants. Our work is implemented in the RAPID framework, by extending and integrating superposition-based first-order reasoning within RAPID. We successfully used RAPID to prove correctness of many programs whose functional behavior are best summarized in the first-order theories of linear integer arithmetic, arrays and inductive data types.
研究动机与目标
- 为解决在数组和归纳类型等无界数据结构上自动化归纳循环推理的挑战。
- 通过将变量值建模为时间点和循环迭代的函数,推广程序语义,实现对迭代的任意量化。
- 基于有界归纳的追踪归结,自动化发现循环不变量并实现安全性验证。
- 将基于超推理的一阶推理集成到形式化验证中,补充SMT求解器在处理量化、复杂性质方面的不足。
- 在真实世界基准上实现并评估该方法,证明其在现有基于SMT和基于变换的方法之上具有优越性。
提出的方法
- 提出追踪逻辑,一种多排序一阶逻辑,将程序位置视为执行时间点和循环迭代的函数。
- 定义程序语义的非递归、完备公理化体系,其在霍尔逻辑意义下被证明是可靠且完备的。
- 提出三个通用的追踪归结,通过有界归纳捕捉归纳循环不变量,确保推导出的不变量的可靠性。
- 扩展Vampire一阶定理证明器以支持追踪逻辑的性质,并将其集成到Rapid框架中。
- 在追踪逻辑上使用基于超推理的推理,自动推导出作为追踪归结和程序公理逻辑推论的循环不变量。
- 将程序和断言编码为追踪逻辑,包括对数组和整数的全称与存在量词交替,以表达复杂的安全性质。
实验结果
研究问题
- RQ1一阶定理证明能否有效用于自动化归纳循环推理以实现安全性验证?
- RQ2追踪逻辑能否支持对循环迭代和时间点的任意量化,以表达复杂的数组与整数性质?
- RQ3基于有界归纳的追踪归结能否可靠地引导发现具有无界数据结构程序的归纳不变量?
- RQ4在追踪逻辑中基于超推理的推理能否验证SMT求解器无法判定或难以处理的性质?
- RQ5将追踪逻辑集成到Rapid框架中,能否实现对现有工具无法处理的复杂量化断言基准的全自动验证?
主要发现
- 作者成功验证了SV-COMP代码库中的100多个基准,包括涉及数组和整数中量词交替的复杂安全性性质。
- 该方法证明了一个程序将一个数组中的正元素复制到另一个数组的正确性,这一性质在以往类似框架的工作中无法被证明。
- 追踪逻辑的非递归公理化体系在霍尔逻辑意义下既可靠又完备,为形式化验证提供了坚实基础。
- 三个追踪归结具有可靠性,能够通过超推理自动发现证明安全性断言所需的不变量。
- 将追踪逻辑与Vampire定理证明器在Rapid框架中的集成,实现了对当前SMT求解器和基于变换的工具无法处理的性质的全自动验证。
- 该方法在可扩展性和表达能力方面超越了现有方法,尤其在处理无界数据结构上的存在与全称量化性质方面表现出色。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。