【24h】

Complete Instantiation-Based Interpolation

机译:完整的基于实例的插值

获取原文

摘要

Craig interpolation has been a valuable tool for formal methods with interesting applications in program analysis and verification. Modern SMT solvers implement interpolation procedures for the theories that are most commonly used in these applications. However, many application-specific theories remain unsupported, which limits the class of problems to which interpolation-based techniques apply. In this paper, we present a generic framework to build new interpolation procedures via reduction to existing interpolation procedures. We consider the case where an application-specific theory can be formalized as an extension of a base theory with additional symbols and axioms. Our technique uses finite instantiation of the extension axioms to reduce an interpolation problem in the theory extension to one in the base theory. We identify a model-theoretic criterion that allows us to detect the cases where our technique is complete. We discuss specific theories that are relevant in program verification and that satisfy this criterion. In particular, we obtain complete interpolation procedures for theories of arrays and linked lists. The latter is the first complete interpolation procedure for a theory that supports reasoning about complex shape properties of heap-allocated data structures. We have implemented this procedure in a prototype on top of existing SMT solvers and used it to automatically infer loop invariants of list-manipulating programs.
机译:克雷格插值一直是形式化方法的宝贵工具,在程序分析和验证中具有有趣的应用。现代SMT求解器对这些应用程序中最常用的理论执行插值过程。但是,许多特定于应用程序的理论仍然不受支持,这限制了基于插值的技术所应用的问题类别。在本文中,我们提出了一个通用框架,通过简化现有的插值程序来构建新的插值程序。我们考虑一种情况,在这种情况下,可以将特定于应用的理论形式化为具有附加符号和公理的基础理论的扩展。我们的技术使用扩展公理的有限实例化将理论扩展中的插值问题减少到基础理论中的一个。我们确定了一个模型理论标准,该标准使我们能够检测出我们的技术已经完成的情况。我们讨论与程序验证相关且满足此条件的特定理论。特别是,我们获得了有关数组和链表理论的完整插值过程。后者是该理论的第一个完整插值过程,该理论支持有关堆分配的数据结构的复杂形状属性的推理。我们已经在现有SMT求解器的原型中实现了此过程,并使用它来自动推断列表处理程序的循环不变式。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号