集合、基数与关系:逻辑扩展与决策过程
在软件验证领域,涉及集合、多重集等集合结构以及基数约束的逻辑起着至关重要的作用。这些逻辑能够帮助我们对无界数据结构和并发进程进行推理。本文将介绍如何扩展这些逻辑,使其能够计算关系和函数的直接与逆图像,并探讨相关的决策过程和复杂度。
1. 研究背景与动机
在软件的演绎验证中,常常需要证明表达性逻辑中公式的有效性。验证条件生成会直接从带注释的源代码产生这些公式,谓词抽象技术在不动点计算过程中会生成大量公式,而抽象解释则会预先计算参数化的传递函数,这些过程最终都归结为证明公式的有效性。
本文起始于可判定逻辑,其变量表示对象的集合,例如堆中动态分配的对象或并发进程。这些逻辑包含标准的集合代数运算(如交集、并集和补集)、基数运算符(用于计算集合中元素的数量),并支持对基数的线性整数算术约束。其中,QFBAPA(无量词布尔代数与Presburger算术)是一种这样的逻辑,它已被证明属于NP复杂度类,相比之前基于量词消除的NEXPTIME算法有了改进。后续还将这一结果推广到了多重集的无量词约束。
为了使集合逻辑更具实用性,本文对其进行了自然的扩展,引入了函数和关系,并支持计算集合在这些函数和关系下的图像和逆图像。这样做的主要动机在于,在验证问题中,集合和多重集通常是通过计算更具体的数据结构(往往也是集合)的图像来定义的。
2. 主要贡献
- 新的NEXPTIME - 完全逻辑 :描述了一种包含集合、n元关系、一元函数和符号基数约束的新逻辑。
- 逻辑扩展与复杂度 :对上述逻辑进行扩展,加入
超级会员免费看
订阅专栏 解锁全文
19

被折叠的 条评论
为什么被折叠?



