...
首页> 外文期刊>Journal of Systems Science and Complexity >A QUANTIFIER-ELIMINATION BASED HEURISTIC FOR AUTOMATICALLY GENERATING INDUCTIVE ASSERTIONS FOR PROGRAMS
【24h】

A QUANTIFIER-ELIMINATION BASED HEURISTIC FOR AUTOMATICALLY GENERATING INDUCTIVE ASSERTIONS FOR PROGRAMS

机译:基于数量论消除的启发式算法,用于自动生成程序的感应式声明

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

摘要

A method using quantifier-elimination is proposed for automatically generating program invariants/inductive assertions. Given a program, inductive assertions, hypothesized as parameterized formulas in a theory, are associated with program locations. Parameters in inductive assertions are discovered by generating constraints on parameters by ensuring that an inductive assertion is indeed preserved by all execution paths leading to the associated location of the program. The method can be used to discover loop invariants-properties of variables that remain invariant at the entry of a loop. The parameterized formula can be successively refined by considering execution paths one by one; heuristics can be developed for determining the order in which the paths are considered. Initialization of program variables as well as the precondition and postcondition, if available, can also be used to further refine the hypothesized invariant. The method does not depend on the availability of the precondition and postcondition of a program. Constraints on parameters generated in this way are solved for possible values of parameters. If no solution is possible, this means that an invariant of the hypothesized form is not likely to exist for the loop under the assumptions/approximations made to generate the associated verification condition. Otherwise, if the parametric constraints are solvable, then under certain conditions on methods for generating these constraints, the strongest possible invariant of the hypothesized form can be generated from most general solutions of the parametric constraints. The approach is illustrated using the logical languages of conjunction of polynomial equations as well as Presburger arithmetic for expressing assertions.
机译:提出了一种使用量词消除的方法来自动生成程序不变式/归纳断言。给定程序,归纳断言(在理论上被假设为参数化公式)与程序位置相关联。归纳断言中的参数是通过确保归纳断言确实被导致程序相关位置的所有执行路径保留的方式生成的,从而对参数产生约束。该方法可用于发现在循环入口处保持不变的变量的循环不变性-属性。通过依次考虑执行路径,可以依次细化参数化公式;可以开发启发式方法来确定考虑路径的顺序。程序变量的初始化以及前提条件和后置条件(如果可用)也可以用于进一步完善假设的不变式。该方法不取决于程序的先决条件和后置条件的可用性。解决了以此方式生成的参数约束,以获取可能的参数值。如果没有可能的解决方案,则这意味着在为生成关联的验证条件而进行的假设/逼近下,该循环不太可能存在假设形式的不变式。否则,如果参数约束是可解的,则在用于生成这些约束的方法的某些条件下,可以从参数约束的大多数一般解生成假设形式的最强可能不变性。使用多项式方程的合取逻辑语言以及用于表达断言的Presburger算法进行了说明。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号