【24h】

Decidable Logics Combining Heap Structures and Data

机译:可解除逻辑组合堆结构和数据的逻辑

获取原文

摘要

We define a new logic, Strand, that allows reasoning with heap-manipulating programs using deductive verification and SMT solvers. Strand logic ("STRucture ANd Data"' logic) formulas express constraints involving heap structures and the data they contain; they are defined over a class of pointer-structures R defined using MSO-defined relations over trees, and are of the form( Ε)x~→(A)y~→Φ(x~→, y~→), where Φ is a monadic second-order logic (MSO) formula with additional quantification that combines structural constraints as well as data-constraints, but where the data-constraints are only allowed to refer to x~→ and y~→. The salient aspects of the logic are: (a) the logic is powerful, allowing existential and universal quantification over the nodes, and complex combinations of data and structural constraints: (b) checking Hoare-triples for linear blocks of statements with preconditions and post-conditions expressed as Boolean combinations of existential and universal STRAND formulas reduces to satisfiability of a Strand formula; (c) there are powerful decidable fragments of Strand, one semanticaily defined and one syntactically defined, where the decision procedure works by combining the theory of MSO over trees and the quantifier-free theory of the underlying data-logic. We demonstrate the effectiveness and practicality of the logic by checking verification conditions generated in proving properties of several heap-manipulating programs, using a tool that combines an MSO decision procedure over trees (Mona) with an SMT solver for integer constraints (Z3).
机译:我们定义了一种新的逻辑,轨道,允许使用Defuctive验证和SMT求解器使用堆操纵程序。 Strand逻辑(“结构和数据”逻辑)公式表达涉及堆结构的约束和它们所包含的数据;它们定义在一类指针结构R上,这些指针结构R定义了使用树木的MSO定义的关系,并且具有形式(ε)x〜→(a)y〜→φ(x〜→,y→→),其中φ是用另外的定量的一元二阶逻辑(MSO)式,结合结构限制以及数据的限制,但其中的数据约束只允许指X〜→和y〜→。逻辑的突出方面是:(a)逻辑功能强大,允许在节点上的存在和通用量化,以及数据和结构约束的复杂组合:(b)与前提条件和帖子的线性块检查的HOARE-TRIPLES -Conditions表示为存在性和通用链式的布尔组合降低了股线式的可靠性; (c)存在强大的可判定矩阵,一个语法定义,一个句法定义,其中决策程序通过将MSO的理论与底层数据逻辑的无量化理论相结合。我们通过使用将MSO决策过程与树木(MONA)与整数约束(Z3)的SMT求解器组合在树木(MONA)中的工具来验证所产生的验证条件来展示逻辑的有效性和实用性。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号