×

分离逻辑的实用策略。 (英语) Zbl 1252.68261号

Berghofer,Stefan(编辑)等人,《高阶逻辑中的定理证明》。2009年8月17日至20日在德国慕尼黑举行的第22届TPHOL国际会议。诉讼程序。柏林:施普林格出版社(ISBN 978-3-642-03358-2/pbk)。计算机科学课堂讲稿5674343-358(2009)。
小结:我们提出了一套全面的策略,使在证明助手中使用分离逻辑变得切实可行。这些策略能够验证复杂指针密集型程序的部分正确性属性。我们的目标是使分离逻辑与证明助手的标准逻辑一样易于使用。我们开发了用于简化、重排、拆分、匹配和重写分离逻辑断言的策略,以及使用机器状态的分离逻辑描述来释放程序验证条件。我们在Coq证明助手中实现了我们的策略,并将其应用于Cminor的深度嵌入,这是Leroy的验证CompCert编译器使用的一种类似C的中间语言。我们已经使用我们的策略验证了用Cminor编写的切尼复制垃圾收集器的安全性和完整性。我们的思想应该适用于其他子结构逻辑和命令式语言。
有关整个系列,请参见[兹比尔1173.68002].

MSC公司:

68吨15 定理证明(演绎、解析等)(MSC2010)
03B70号 计算机科学中的逻辑
PDF格式BibTeX公司 XML格式引用
全文: 内政部

参考文献:

[1] Reynolds,J.C.:分离逻辑:共享可变数据结构的逻辑。收录于:LICS 2002,美国华盛顿特区,第55-74页。IEEE计算机学会,Los Alamitos(2002)
[2] 吉拉德,J.Y.:线性逻辑。理论计算机科学50,1-102(1987)·Zbl 0625.03037号 ·doi:10.1016/0304-3975(87)90045-4
[3] Birkedal,L.、Torp-Smith,N.、Reynolds,J.C.:关于复制垃圾收集器的局部推理。收录于:POPL 2005,第220-231页。ACM出版社,纽约(2004)·Zbl 1325.68041号
[4] McCreight,A.、Shao,Z.、Lin,C.、Li,L.:gcs及其突变子认证的一般框架。参见:PLDI 2007,第468–479页。ACM,纽约(2007)
[5] Coq开发团队:Coq证明助理,http://coq.inia.fr
[6] Berdine,J.、Calcagno,C.、O'Hearn,P.W.:Smallfoot:带分离逻辑的模块化自动断言检查。收录人:de Boer,F.S.,Bonsangue,M.M.,Graf,S.,de Roever,W.-P.(编辑)FMCO 2005。LNCS,第4111卷,第115-137页。斯普林格,海德堡(2006)·Zbl 05189668号 ·doi:10.1007/118041926
[7] Leroy,X.:编译器后端的正式认证,或者:使用校对助手对编译器进行编程。收录于:POPL 2006,第42-54页。ACM出版社,纽约(2006)·Zbl 1369.68124号
[8] Cheney,C.J.:非递归列表压缩算法。ACM通信13(11),677–678(1970)·Zbl 0215.28002号 ·数字对象标识代码:10.1145/362790.362798
[9] Appel,A.W.,Blazy,S.:小步Cminor的分离逻辑。收录:Schneider,K.,Brandt,J.(编辑)TPHOLs 2007。LNCS,第4732卷,第5-21页。斯普林格,海德堡(2007)·Zbl 1144.68351号 ·doi:10.1007/978-3-540-74591-43
[10] Paulin-Mohring,C.:系统Coq中的归纳定义——规则和属性。收录:Bezem,M.,Groote,J.F.(编辑)TLCA 1993。LNCS,第664卷。斯普林格,海德堡(1993)·Zbl 0844.68073号 ·doi:10.1007/BFb0037116
[11] Wildmoser,M.,Nipkow,T.:验证机器代码安全性:浅嵌入与深嵌入。收录:Slind,K.,Bunker,A.,Gopalakrishnan,G.C.(编辑)TPHOLs 2004。LNCS,第3223卷,第305-320页。斯普林格,海德堡(2004)·Zbl 1099.68545号 ·doi:10.1007/978-3-540-30142-422
[12] Appel,A.W.:分离逻辑的策略(2006年1月),http://www.cs.princeton.edu/appel/papers/sepatcs.pdf
[13] Marti,N.、Affeldt,R.、Yonezawa,A.:使用分离逻辑对操作系统的堆管理器进行形式验证。收录:Liu,Z.,He,J.(编辑)ICFEM 2006。LNCS,第4260卷,第400-419页。斯普林格,海德堡(2006)·doi:10.1007/11901433_22
[14] Boutin,S.:利用反思构建高效且经认证的决策程序。收录:Ito,T.,Abadi,M.(编辑)TACS 1997。LNCS,第1281卷,第515–529页。斯普林格,海德堡(1997)·doi:10.1007/BFb0014565
[15] Myreen,M.O.,Slind,K.,Gordon,M.J.C.:多架构的机器代码验证——反编译为逻辑的应用程序。收录:《计算机辅助设计形式方法学报》(FMCAD)(2008)·doi:10.1109/FMCAD.2008.ECP.24
[16] Hawblitzel,C.,Petrank,E.:实际垃圾收集器的自动验证。收录于:POPL 2009,第441-453页。ACM,纽约(2009)·Zbl 1315.68096号
[17] Tuch,H.、Klein,G.、Norrish,M.:类型、字节和分离逻辑。收录于:POPL 2007,第97-108页。ACM,纽约(2007)·Zbl 1295.68094号
[18] Marti,N.,Affeldt,R.:分离逻辑片段的认证验证器。In:第九届JSSST编程与编程研讨会。兰斯,PPL 2007(2007)
[19] Tuerk,T.:HOL中的分离逻辑框架。在:Otmane Ait Mohamed,C.M.,Tahar,S.(编辑)《2008年TPHOLs:Emerging Trends Proceedings》,2008年8月,第116–122页(2008)
[20] Calcagno,C.,Distefano,D.,O'Hearn,P.,Yang,H.:通过双向归纳法进行成分形状分析。收录于:POPL 2009,第289-300页。ACM,纽约(2009)·Zbl 1315.68085号
[21] Mehta,F.,Nipkow,T.:用高阶逻辑证明指针程序。Inf.计算。 199(1-2), 200–227 (2005) ·Zbl 1081.68008号 ·doi:10.1016/j.ic.2004.10.007
[22] Bulwahn,L.、Krauss,A.、Haftmann,F.、Erkök,L.和Matthews,J.:使用Isabelle/HOL的强制函数编程。收录:Mohamed,O.A.,Muñoz,C.,Tahar,S.(编辑)TPHOLs 2008。LNCS,第5170卷,第134-149页。斯普林格,海德堡(2008)·Zbl 1165.68352号 ·doi:10.1007/978-3-540-71067-7_14
[23] Filliátre,J.C.,Marché,C.:演绎程序验证的Why/Krakatoa/Caduceus平台。摘自:Damm,W.,Hermanns,H.(编辑)CAV 2007。LNCS,第4590卷,第173-177页。斯普林格,海德堡(2007)·Zbl 05216226号 ·doi:10.1007/978-3-540-73368-3_21
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。