首页> 外文期刊>Theory and Practice of Logic Programming >An iterative approach to precondition inference using constrained Horn clauses
【24h】

An iterative approach to precondition inference using constrained Horn clauses

机译:使用约束的Horn子句的前提推理的迭代方法

获取原文
获取原文并翻译 | 示例

摘要

We present a method for automatic inference of conditions on the initial states of a program that guarantee that the safety assertions in the program are not violated. Constrained Horn clauses (CHCs) are used to model the program and assertions in a uniform way, and we use standard abstract interpretations to derive an over-approximation of the set of unsafe initial states. The precondition then is the constraint corresponding to the complement of that set, under-approximating the set of safe initial states. This idea of complementation is not new, but previous attempts to exploit it have suffered from the loss of precision. Here we develop an iterative specialisation algorithm to give more precise, and in some cases optimal safety conditions. The algorithm combines existing transformations, namely constraint specialisation, partial evaluation and a trace elimination transformation. The last two of these transformations perform polyvariant specialisation, leading to disjunctive constraints which improve precision. The algorithm is implemented and tested on a benchmark suite of programs from the literature in precondition inference and software verification competitions.
机译:我们提出了一种自动推断程序初始状态的条件的方法,该方法可确保不会违反程序中的安全性断言。约束的Horn子句(CHC)用于以统一的方式对程序和断言进行建模,并且我们使用标准的抽象解释来得出不安全初始状态集的过度逼近。然后,前提条件是与该集合的补码相对应的约束,该约束与该安全初始状态的集合近似不足。这种互补的想法并不是什么新鲜事物,但是以前利用它的尝试却遭受了精度损失的困扰。在这里,我们开发了一种迭代专业化算法,以给出更精确的,有时甚至是最佳的安全条件。该算法结合了现有的转换,即约束专业化,部分评估和跟踪消除转换。这些转换的最后两个执行多变量专业化,从而导致析取约束,从而提高了精度。在先决条件推理和软件验证竞赛中,该算法是在文献中的基准程序套件上实现和测试的。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号