跳到主要内容
研究论文
免费访问

真实编译器的形式化验证

出版:2009年7月1日出版历史
跳过抽象节

摘要

本文报告了CompCert的开发和形式验证(语义保持证明),CompCert是一个从Clight(C编程语言的一个大子集)到PowerPC汇编代码的编译器,它使用Coq证明助手来编写编译器并证明其正确性。这样一个经过验证的编译器在关键软件及其形式验证的上下文中是有用的:编译器的验证保证了在源代码上证明的安全属性也适用于可执行的编译代码。

工具书类

  1. ]]Appel,A.W.基础校对代码。2001年计算机科学中的逻辑(2001),IEEE,247--258。谷歌学者谷歌学者数字图书馆数字图书馆
  2. ]]Appel,A.W.,Blazy,S.小步Cminor的分离逻辑。高阶逻辑中的定理证明,TPHOLs 2007,第4732卷,共页LNCS公司(2007),施普林格,5--21。谷歌学者谷歌学者数字图书馆数字图书馆
  3. ]]Y.Bertot、P.Caste ran。交互式定理证明与程序开发——Coq'Art:归纳构造的微积分(2004),Springer。谷歌学者谷歌学者数字图书馆数字图书馆
  4. ]]Blazy,S.、Dargaye,Z.、Leroy,X.C编译器前端的形式化验证。FM 2006:形式方法国际研讨会,第4085卷,共页LNCS公司(2006),施普林格,460-475。谷歌学者谷歌学者数字图书馆数字图书馆
  5. ]]Blazy,S.,Leroy,X.C语言Clight子集的机械化语义。J.汽车。推理(2009). 已接受出版,即将出版。谷歌学者谷歌学者
  6. ]]Chaitin,G.J.通过图着色进行寄存器分配和溢出。In1982年SIGPLAN编译器构造研讨会(1982),美国医学会,98--105。谷歌学者谷歌学者数字图书馆数字图书馆
  7. ]]Coq开发团队。考证助理。可在http://coq.inia.fr/, 1989--2009.谷歌学者谷歌学者
  8. ]]Dave,M.A.编译器验证:参考书目。SIGSOFT软件。工程注释28, 6 (2003), 2.谷歌学者谷歌学者数字图书馆数字图书馆
  9. ]]George,L.,Appel,A.W.迭代寄存器合并。ACM事务,程序。语言系统。18, 3 (1996), 300--324.谷歌学者谷歌学者数字图书馆数字图书馆
  10. ]]Hales,T.C.形式证明。通知AMS 55,11(2008),1370-1380。谷歌学者谷歌学者
  11. ]]Leroy,X.编译器后端的正式认证,或:使用校对助手对编译器进行编程。第三十三届程序设计语言原理研讨会(2006),ACM,42-54。谷歌学者谷歌学者数字图书馆数字图书馆
  12. ]]Leroy,X。CompCert验证了编译器、软件和评论证明。可在http://compcert.inria.fr/2008年8月。谷歌学者谷歌学者
  13. ]]Leroy,X.正式验证的编译器后端。arXiv:0902.2137{cs}。提交日期:2008年7月。谷歌学者谷歌学者
  14. ]]Leroy,X.,Blazy,S.类C内存模型的形式化验证及其用于验证程序转换。J.汽车。推理41, 1 (2008), 1--31.谷歌学者谷歌学者数字图书馆数字图书馆
  15. ]]Letouzey,P.Coq中的提取:概述。《逻辑与算法理论,欧洲的可计算性》,CiE 2008,第5028卷,共页LNCS公司(2008),施普林格,359--369。谷歌学者谷歌学者数字图书馆数字图书馆
  16. ]]McCarthy,J.,Painter,J.算术表达式编译器的正确性。计算机科学的数学方面,第19卷,共页应用数学专题讨论会论文集(1967),AMS,33-41。谷歌学者谷歌学者
  17. ]]Milner,R.,Weyhrauch,R.用机械化逻辑证明编译器的正确性。第七届年度机器智能研讨会会议记录,第7卷,共页机器智能(1972),爱丁堡大学出版社,51-72。谷歌学者谷歌学者
  18. ]]Morrisett,G.,Walker,D.,Crary,K.,Glew,N.从系统F到类型化汇编语言。ACM事务处理。掠夺。语言系统。21, 3 (1999), 528--569.谷歌学者谷歌学者数字图书馆数字图书馆
  19. ]]Necula,G.C.防卡码。第24届程序设计语言原理研讨会(1997),ACM,106-119。谷歌学者谷歌学者数字图书馆数字图书馆
  20. ]]Necula,G.C.优化编译器的翻译验证。程序设计语言设计与实现2000(2000),美国医学会,83-95。谷歌学者谷歌学者数字图书馆数字图书馆
  21. ]]Necula,G.C.,McPeak,S.,Rahul,S.P.,Weimer,W.CIL:C程序分析和转换的中间语言和工具。编译器构造,第2304卷,共LNCS公司(2002),施普林格,213--228。谷歌学者谷歌学者数字图书馆数字图书馆
  22. ]]Pnueli,A.,Siegel,M.,Singerman,E.翻译验证。用于系统构建和分析的工具和算法,TACAS’98,第1384卷,共页LNCS公司(1998),斯普林格,151-166。谷歌学者谷歌学者数字图书馆数字图书馆
  23. ]]Tristan,J.-B.,Leroy,X.翻译验证器的形式化验证:指令调度优化的案例研究。第35届程序设计语言原理研讨会(2008),ACM,17-27。谷歌学者谷歌学者数字图书馆数字图书馆
  24. ]]Tristan,J.-B.,Leroy,X.验证了惰性代码运动的验证。2009年程序设计与实现(2009),ACM。出现。谷歌学者谷歌学者数字图书馆数字图书馆

索引术语

  1. 真实编译器的形式化验证

                建议

                评论

                登录选项

                请检查您是否可以通过登录凭据或您的机构访问此文章以获得完全访问权限。

                登录

                完全访问权限

                • 发布于

                  ACM的封面图像通信
                  ACM的通信 第52卷第7期
                  Barbara Liskov:ACM的A.M.图灵奖得主
                  2009年7月
                  141页
                  ISSN公司:0001-0782
                  EISSN公司:1557-7317
                  内政部:10.1145/1538788
                  期刊目录

                  版权所有©2009 ACM

                  如果复制品不是为了盈利或商业利益而制作或分发的,并且复制品的第一页载有本通知和完整引文,则允许免费制作本作品的全部或部分数字或硬拷贝以供个人或课堂使用。必须尊重ACM以外的其他人对本作品组成部分的版权。允许用信用证进行摘要。要以其他方式复制或重新发布、在服务器上发布或重新分发到列表,需要事先获得特定许可和/或收取费用。向请求权限[电子邮件保护]

                  出版商

                  计算机协会

                  美国纽约州纽约市

                  出版历史

                  • 出版:2009年7月1日

                  权限

                  请求有关此文章的权限。

                  请求权限

                  检查更新

                  限定符

                  • 研究论文
                  • 受欢迎的
                  • 参考

                PDF格式

                以PDF文件查看或下载。

                PDF格式

                电子阅读器

                使用eReader联机查看。

                电子阅读器

                HTML格式

                以HTML格式查看本文。

                查看HTML格式