VeriFast is a powerful tool for verification of various correctness properties of C programs using symbolic execution. However, VeriFast itself has not been verified. We present a proof-of-concept extension which generates a correctness certificate for each successful verification run individually. This certificate takes the form of a Coq script containing two proofs which, when successfully checked by Coq, together remove the need for trusting in the correctness of VeriFast itself. The first proves a lemma expressing the correctness of the program with respect to a big step operational semantics developed by ourselves, intended to reflect VeriFast's interpretation of C. We have formalized this semantics in Coq as cbsem. This lemma is proven by symbolic execution in Coq, which in turn is implemented by transforming the exported AST of the program into a Coq proposition representing the symbolic execution performed by VeriFast itself. The second proves the correctness of the same C program with respect to CompCert's Clight big step semantics. This proof simply applies our proof of the soundness of cbsem with respect to CompCert Clight to the first proof.


翻译:Verifast 是使用象征性执行来验证 C 程序各种正确性特性的有力工具。 然而, Verifast 本身尚未被验证。 我们提出了一个概念验证扩展, 以生成每次成功单个核查运行的正确性证书。 此证书的形式为 Coq 脚本, 包含两个证明, 由 Coq 成功检查后, 共消除信任 Verifast 本身正确性的必要性。 第一项证明是 emma, 显示程序对由我们自己开发的大型操作语义的正确性, 旨在反映 VeriFast 对 C的诠释 。 我们在 Coq 中将语义正式化为 cbsem 。 这个 Lemma 由 Coq 的象征性执行来证明, 其执行方式是将导出的程序 AST 转换为代表 VeriFast 自己执行的象征性执行的 Coq 。 第二证明 C 程序对 Ccomcert 的 Clight 大步义的正确性。 此证明只是将我们关于 cbsright 的正确性证明用于 Ccompertrence。

0
下载
关闭预览

相关内容

iOS 8 提供的应用间和应用跟系统的功能交互特性。
  • Today (iOS and OS X): widgets for the Today view of Notification Center
  • Share (iOS and OS X): post content to web services or share content with others
  • Actions (iOS and OS X): app extensions to view or manipulate inside another app
  • Photo Editing (iOS): edit a photo or video in Apple's Photos app with extensions from a third-party apps
  • Finder Sync (OS X): remote file storage in the Finder with support for Finder content annotation
  • Storage Provider (iOS): an interface between files inside an app and other apps on a user's device
  • Custom Keyboard (iOS): system-wide alternative keyboards

Source: iOS 8 Extensions: Apple’s Plan for a Powerful App Ecosystem
专知会员服务
22+阅读 · 2021年4月10日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
已删除
将门创投
8+阅读 · 2018年10月31日
disentangled-representation-papers
CreateAMind
26+阅读 · 2018年9月12日
条件GAN重大改进!cGANs with Projection Discriminator
CreateAMind
8+阅读 · 2018年2月7日
【推荐】YOLO实时目标检测(6fps)
机器学习研究会
20+阅读 · 2017年11月5日
【学习】Hierarchical Softmax
机器学习研究会
4+阅读 · 2017年8月6日
Arxiv
0+阅读 · 2021年12月17日
Arxiv
0+阅读 · 2021年12月15日
Arxiv
0+阅读 · 2021年12月14日
VIP会员
相关资讯
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
已删除
将门创投
8+阅读 · 2018年10月31日
disentangled-representation-papers
CreateAMind
26+阅读 · 2018年9月12日
条件GAN重大改进!cGANs with Projection Discriminator
CreateAMind
8+阅读 · 2018年2月7日
【推荐】YOLO实时目标检测(6fps)
机器学习研究会
20+阅读 · 2017年11月5日
【学习】Hierarchical Softmax
机器学习研究会
4+阅读 · 2017年8月6日
Top
微信扫码咨询专知VIP会员