首页> 外文会议>Proceedings of the 2011 ACM SIGPLAN international conference on functional programming >Characteristic Formulae for the Verification of Imperative Programs
【24h】

Characteristic Formulae for the Verification of Imperative Programs

机译:祈使程序验证的特征公式

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

摘要

In previous work, we introduced an approach to program verification based on characteristic formulae. The approach consists of generating a higher-order logic formula from the source code of a program. This characteristic formula is constructed in such a way that it gives a sound and complete description of the semantics of that program. The formula can thus be exploited in an interactive proof assistant to formally verify that the program satisfies a particular specification. This previous work was, however, only concerned with purely-functional programs. In the present paper, we describe the generalization of characteristic formulae to an imperative programming language. In this setting, characteristic formulae involve specifications expressed in the style of Separation Logic. They also integrate the frame rule, which enables local reasoning. We have implemented a tool based on characteristic formulae. This tool, called CFML, supports the verification of imperative Caml programs using the Coq proof assistant. Using CFML, we have formally verified nontrivial imperative algorithms, as well as CPS functions, higher-order iterators, and programs involving higher-order stores.
机译:在先前的工作中,我们介绍了一种基于特征公式的程序验证方法。该方法包括从程序的源代码生成一个高阶逻辑公式。该特征公式的构造方式使其能够对该程序的语义给出完整而完整的描述。因此,可以在交互式校对助手中利用该公式来正式验证程序是否满足特定规范。但是,以前的工作仅与纯功能程序有关。在本文中,我们描述了特征公式到命令式编程语言的一般化。在这种设置下,特征公式包含以“分离逻辑”样式表示的规范。他们还集成了框架规则,从而可以进行局部推理。我们已经基于特征公式实现了一个工具。这个称为CFML的工具支持使用Coq证明助手来验证命令式Caml程序。使用CFML,我们已经正式验证了非平凡的命令式算法,以及CPS函数,高阶迭代器和涉及高阶存储的程序。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号