###
Journal of Software:2017.28(4):819-826

基于Z3的Coq自动证明策略的设计和实现
张恒若,付明
(中国科学技术大学 信息科学技术学院, 安徽 合肥 230026;中国科学技术大学 计算机科学与技术学院, 安徽 合肥 230026;中国科学技术大学 苏州研究院软件安全实验室, 江苏 苏州 215123)
Design and Implementation of Coq Tactics Based on Z3
ZHANG Heng-Ruo,FU Ming
(School of Information Science and Technology, University of Science and Technology of China, Hefei 230026, China;School of Computer Science, University of Science and Technology of China, Hefei 230026, China;Software Security Laboratory, Suzhou Institute for Advanced Study, University of Science and Technology of China, Suzhou 215123, China)
Abstract
Chart / table
Reference
Similar Articles
Article :Browse 2163   Download 1647
Received:June 20, 2016    Revised:September 08, 2016
> 中文摘要: 形式化验证方法被认为是一种构建高可信软件系统的有效手段.在定理证明工具通过手动写证明脚本来验证系统软件的功能正确性,这种验证方式表达力强,可以证明复杂系统,但是自动化程度低、验证代价比较高;而使用程序验证器接受经过规范标注的源代码生成验证条件,并将验证条件交给约束求解器自动求解,这种方式自动化程度高,缺点在于它很难验证复杂系统软件的全部功能的正确性.结合上述两种方式的优点,在定理证明工具Coq中实现了一个自动证明策略smt4coq,它通过在Coq中调用约束求解器Z3自动证明32位机器整数相关的数学命题,提高了自动化验证的程度,减少了用户手动验证程序的开销.
Abstract:Formal verification is an effective approach to construct high confidence software. Verifying the functional correctness of complex system software by manually writing proof scripts in proof assistant tools is feasible with the low degree of automation, and the verification cost is relatively high. The automatic program verifiers verify programs by taking the annotated source code as their input to generate verification conditions automatically solved by SMT solvers. This approach has a high degree of automation, but it is impossible to verify the functional correctness of the entire system software. By combining the advantage of the above two methods, this paper implements a novel Coq tactic plug-in named "smt4coq", which allows calling the Z3 SMT solver in Coq to automatically prove mathematical propositions involved with 32-bit machine integers. The new tactic improves the degree of automation and reduces the cost of manual verification.
文章编号:     中图分类号:    文献标志码:
基金项目:国家自然科学基金(61103023,61229201,61379039,91318301,61632005) 国家自然科学基金(61103023,61229201,61379039,91318301,61632005)
Foundation items:National Natural Science Foundation of China (61103023, 61229201, 61379039, 91318301, 61632005)
Reference text:

张恒若,付明.基于Z3的Coq自动证明策略的设计和实现.软件学报,2017,28(4):819-826

ZHANG Heng-Ruo,FU Ming.Design and Implementation of Coq Tactics Based on Z3.Journal of Software,2017,28(4):819-826