首页> 外文会议>International Conference on Verification, Model Checking, and Abstract Interpretation >An inference-rule-based decision procedure for verification of heap-manipulating programs with mutable data and cyclic data structures
【24h】

An inference-rule-based decision procedure for verification of heap-manipulating programs with mutable data and cyclic data structures

机译:基于推断规则的决策过程,用于验证具有可变数据和循环数据结构的堆操纵程序

获取原文

摘要

Research on the automatic verification of heap-manipulating programs (HMPs) - programs that manipulate unbounded linked data structures via pointers - has blossomed recently, with many different approaches all showing leaps in performance and expressiveness. A year ago, we proposed a small logic for specifying predicates about HMPs and demonstrated that an inference-rule-based decision procedure could be performance-competitive, and in many cases superior to other methods known at the time. That work, however, was a proof-of-concept, with a logic fragment too small to verify most real programs. In this work, we generalize our previous results to be practically useful: we allow the data in heap nodes to be mutable, we allow more than a single pointer field, and we add new primitives needed to verify cyclic structures. Each of these extensions necessitates new or changed inference rules, with the concomitant changes to the proofs and decision procedure. Yet, our new decision procedure, with the more general logic, actually runs as fast as our previous results. With these generalizations, we can automatically verify many more HMP examples, including three small container functions from the Linux kernel.
机译:关于堆操纵程序(HMPS)的自动验证的研究 - 通过指针操纵无绑定的链接数据结构的程序 - 最近绽放,许多不同的方法都显示出在性能和表现力方面的跨利赛。一年前,我们提出了一个小型逻辑,用于指定关于HMP的谓词,并证明了基于推理规则的决策程序可能是竞争性的,并且在许多情况下优于当时已知的其他方法。然而,这是一个概念验证,逻辑片段太小,无法验证大多数真实的程序。在这项工作中,我们概括了我们以前的结果实际上是有用的:我们允许堆节点中的数据是可变的,我们允许多个指针字段,并且我们添加验证循环结构所需的新原语。这些扩展中的每一个都需要新的或改变的推断规则,伴随着证明和决策程序的变化。然而,我们的新决策程序与更普遍的逻辑,实际上始于以前的结果。通过这些概括,我们可以自动验证更多HMP示例,包括来自Linux内核的三个小容器功能。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号