毒蛇

Viper:基于权限推理的验证基础设施。基于一阶逻辑规范的验证技术的自动化从诸如Boogie和Why这样的验证基础设施中受益匪浅。它们提供了一种中间语言,可以表达不同的语言特性和验证技术,以及后端工具:特别是验证条件生成器。然而,这些基础设施不太适合基于分离逻辑和其他权限逻辑的验证技术,因为它们不提供对权限的直接支持,而且这些逻辑的现有工具通常倾向于符号执行而不是验证条件生成。因此,对这些逻辑(如果可用)的工具支持通常是针对每种技术独立开发的,这大大增加了开发基于权限的验证的自动工具的负担。在本文中,我们提出了一个验证架构,它的中间语言支持一个表达式的权限模型。我们提供的工具支持包括两个后端验证器:一个基于符号执行,一个基于验证条件生成;一个基于抽象解释的推理工具目前正在开发中。通过这个基础设施可以实现广泛的现有验证技术,减轻了构建基于权限的验证器的大部分负担,并允许高级推理技术的开发人员将精力集中在适当的抽象级别上。

此软件的关键字

这里的任何内容都将在支持canvas元素的浏览器上被替换