...
首页> 外文期刊>Journal of Functional Programming >Modular Development Of Certified Program Verifiers With A Proof Assistant
【24h】

Modular Development Of Certified Program Verifiers With A Proof Assistant

机译:具有证明助手的模块化程序验证者的模块化开发

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

获取外文期刊封面封底 >>

       

摘要

We report on an experience using the Coq proof assistant to develop a program verification tool with a machine-checked proof of full correctness. The verifier is able to prove memory safety of x86 machine code programs compiled from code that uses algebraic datatypes. The tool's soundness theorem is expressed in terms of the bit-level semantics of x86 programs, so its correctness depends on very few assumptions. We take advantage of Coq's support for programming with dependent types and modules in the structure of the development. The approach is based on developing a library of reusable functors for transforming a verifier at one level of abstraction into a verifier at a lower level. Using this library, it is possible to prototype a verifier based on a new type system with a minimal amount of work, while obtaining a very strong soundness theorem about the final product.
机译:我们报告使用Coq证明助手开发带有计算机检查的完全正确性证明的程序验证工具的经验。该验证程序能够证明从使用代数数据类型的代码编译的x86机器代码程序的内存安全性。该工具的健全性定理是根据x86程序的位级语义表示的,因此其正确性取决于很少的假设。我们利用Coq对开发结构中依赖类型和模块的编程的支持。该方法基于开发可重用函子库,用于将一个抽象级别的验证程序转换为较低级别的验证程序。使用这个库,有可能以最少的工作量就基于新型系统的验证器进行原型设计,同时获得有关最终产品的非常强的稳性定理。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号