×

通过存储进行递归推理的规范模式。 (英语) Zbl 1358.68184号

总结:高订单商店这意味着代码可以存储在程序操作的可变堆中,并且是可以在运行时更改或重新配置的灵活软件的基础。
指定这样的程序很有挑战性,因为高阶存储允许通过存储递归,其中动态设置代码之间的新(相互)递归。
本文提出了一系列形式化规范模式,这些模式通过存储捕获递归的日益复杂的使用。为了表达必要的规范,我们扩展了下面给出的高阶存储的分离逻辑J.施温哈默等【Lect.Notes Compute.Sci.5771,440–454(2009;Zbl 1257.03056号)]、添加参数传递和某些递归定义的断言家族。
我们给出了扩展逻辑的证明规则,并展示了它们的合理性。最后,我们将我们的规范模式和规则应用于一个示例程序,该程序利用了高阶存储提供的许多可能性;这是根据Schwinghammer等人[loc.cit.]的工作,使用逻辑技术进行的第一个大型案例研究,并表明它们是实用的。

MSC公司:

60年第68季度 规范和验证(程序逻辑、模型检查等)
03B70号 计算机科学中的逻辑
68号30 软件工程的数学方面(规范、验证、度量、需求等)
PDF格式BibTeX公司 XML格式引用
全文: 内政部

参考文献:

[1] Henderson,B.,Linux可加载内核模块HOWTO(v1.09)(2006),在线提供
[2] 斯托尔,G。;希克斯,M。;比尔曼,G。;苏厄尔,P。;Neamtiu,I.,Mutatis mutandis:安全和可预测的动态软件更新,ACM Trans。程序。语言系统。,29 (2007) ·Zbl 1369.68157号
[3] Neamtiu,I。;希克斯,M.W。;斯托尔,G。;Oriol,M.,面向C的实用动态软件更新,(Schwartzbach,M.I.;Ball,T.,《2006年ACM SIGPLAN编程语言设计与实现会议论文集》。《2006年ACM SIGPLAN编程语言设计与实现会议论文集》,加拿大安大略省渥太华PLDI,2006年6月11日至14日,ACM),72-83
[4] 镍,锌。;Shao,Z.,使用嵌入式代码指针的认证汇编编程,(Morrisett,J.G.;Peyton-Jones,S。L.,第33届ACM SIGPLAN-SIGCT编程语言原理研讨会论文集。第33届ACM SIGPLAN-SIGACT编程语言原理研讨会论文集,POPL 2006,美国南卡罗来纳州查尔斯顿,2006年1月11日至13日(2006年),ACM,320-333·Zbl 1369.68150号
[5] Landin,P.J.,表达式的力学评估,计算。J.,6308-320(1964年)·Zbl 0122.36106号
[6] 伽玛,E。;赫尔姆·R。;约翰逊·R·E。;Vlissides,J.,《设计模式:可重用面向对象软件的元素》(1995),艾迪森·韦斯利:艾迪森·韦斯利阅读,马萨诸塞州
[7] 本田,K。;吉田,N。;Berger,M.,《命令式高阶函数的观测完全程序逻辑》,(第20届IEEE计算机科学逻辑研讨会,第20届计算机科学逻辑IEEE研讨会,2005年,美国伊利诺伊州芝加哥,2005年6月26日至29日(2005),IEEE计算机学会),270-279
[8] Birkedal,L。;重用,B。;施温哈默,J。;Yang,H.,高阶存储分离逻辑的简单模型,(Aceto,L.;Damgórd,I.;Goldberg,L.A.;Halldórsson,M.M.;Ingólfsdóttir,A。;Walukiewicz,I.,《自动化、语言和编程》,第35届国际学术讨论会,ICALP 2008,冰岛雷克雅未克,2008年7月7日至11日,会议记录,第二部分-轨道B:逻辑、语义和编程理论&轨道C:安全和密码基础。自动化,语言与编程,第35届国际学术讨论会,ICALP 2008,冰岛雷克雅未克,2008年7月7日至11日,会议记录,第二部分-轨道B:逻辑、语义和编程理论&轨道C:安全和密码基础,计算机科学讲义,第5126卷(2008),Springer),348-360·Zbl 1155.68361号
[9] 施温哈默,J。;Birkedal,L。;重用,B。;Yang,H.,Nested Hoare三元组和高阶存储的框架规则,(Grädel,E.;Kahle,R.,《计算机科学逻辑》,第23届国际研讨会,2009年CSL,第18届EACSL年会。计算机科学逻辑,第23次国际研讨会,CSL 2009,第18次EACSL年度会议,2009年9月7日至11日,葡萄牙科英布拉。计算机科学逻辑,第23届国际研讨会,CSL 2009,EACSL第18届年会。计算机科学逻辑,第23届国际研讨会,CSL 2009,EACSL第18届年会,2009年9月7日至11日,葡萄牙科英布拉,计算机课堂讲稿。科学。,第5771卷(2009),施普林格),440-454·Zbl 1257.03056号
[10] 北卡罗来纳州查尔顿。;霍斯福尔,B。;Reus,B.,Crowfoot:高阶存储程序的验证器,(Kuncak,V.;Rybalchenko,A.,VMCAI.VMCAI,计算机科学讲义,第7148卷(2012),Springer),136-151·Zbl 1325.68143号
[11] 吉宝,D。;艾格斯,S.J。;Henry,R.R.,《运行时代码生成案例》(1991),华盛顿大学计算机科学与工程系,技术报告UWCSE 91-11-04
[12] 施温哈默,J。;Birkedal,L。;罗伊斯,B。;Yang,H.,Nested Hoare三元组和高阶存储的框架规则,LMCS,7(2011)·Zbl 1237.68066号
[13] 北卡罗来纳州查尔顿。;Reus,B.,通过存储递归的规范模式和证明,(Owe,O.;Steffen,M.;Telle,J.A.,计算理论基础-第18届国际研讨会。计算理论基础-第18届国际研讨会,FCT 2011,挪威奥斯陆,2011年8月22-25日。计算理论基础-第18届国际研讨会。计算理论基础——第18届国际研讨会,FCT 2011,挪威奥斯陆,2011年8月22-25日,计算机科学讲义,第6914卷(2011),Springer,310-321·Zbl 1342.68207号
[14] 戴维斯,R。;Pfenning,F.,阶段计算的模态分析,J.ACM,48,555-604(2001)·Zbl 1323.68107号
[15] Reynolds,J.C.,《分离逻辑:共享可变数据结构的逻辑》,(第17届IEEE计算机科学逻辑研讨会,2002年7月22日至25日,丹麦哥本哈根,LICS 2002,IEEE计算机学会),55-74
[16] 重用,B。;Streicher,T.,《关于高阶存储的Hoare逻辑》,(Caires,L.;Italiano,G.F.;Monteiro,L.,Palamidessi,C.;Yung,M.,第32届国际学术讨论会,自动化,语言与编程,第32次国际学术讨论会议,ICALP 2005,葡萄牙里斯本,2005年7月11日至15日。自动化,语言与编程,第32届国际学术讨论会。自动化,语言与编程,第32届国际学术讨论会,ICALP 2005,葡萄牙里斯本,2005年7月11日至15日,计算机科学讲义,第3580卷(2005),Springer),1337-1348·兹比尔1081.68577
[17] Birkedal,L。;Torp-Smith,N。;Yang,H.,类Algol语言的分离逻辑类型和高阶框架规则的语义,LMCS,2(2006)·Zbl 1127.68019号
[18] 北卡罗来纳州查尔顿。;霍斯福尔,B。;Reuse,B.,关于运行时代码更新的形式推理,(Abiteboul,S.;Böhm,K.;Koch,C.;Tan,K.-L.,ICDE Workshops(2011),IEEE),134-138
[19] M.阿巴迪。;Cardelli,L.,《对象理论》(1996),Springer:Springer New York,Inc.,Secaucus,NJ,USA·Zbl 0876.68014号
[20] 科尔贝,J。;鲁比尼,A。;Kroah-Hartman,G.,《Linux设备驱动程序》(2005),O'Reilly Media
[21] 美国,P。;Rutten,J.J.M.M.,在一类完备度量空间中求解自反域方程,J.Compute。系统。科学。,39, 343-375 (1989) ·Zbl 0717.18002号
[22] Birkedal,L。;斯特夫林,K。;Thamsborg,J.,参数多态性的可实现性语义,一般参考和递归类型,数学。结构计算。科学。,20, 655-703 (2010) ·Zbl 1209.68122号
[23] M.阿巴迪。;Leino,K.R.M.,面向对象程序的逻辑,(Dershowitz,N.,Verification:Theory and Practice。献给Zohar Manna的64岁生日论文。Verification:Theory and Practice。献给Zohar Manna的64岁生日论文,计算机科学讲义(2004),Springer),11-41·Zbl 1274.68055号
[24] Birkedal,L。;罗伊斯,B。;施温哈默,J。;斯特夫林,K。;Thamsborg,J。;Yang,H.,递归世界上的Step-indexed Kripke模型,(Ball,T.;Sagiv,M.,第38届ACM SIGPLAN-SIGACT编程语言原理研讨会论文集。第38届美国计算机学会SIGPLAN-SIGACT程序设计语言原理研讨会会议论文集,2011年POPL,美国德克萨斯州奥斯汀,2011年1月26日至28日(2011年),ACM,119-132·Zbl 1284.68102号
[25] 蔡,H。;邵,Z。;Vaynberg,A.,认证自修改代码,(Ferrante,J.;McKinley,K.S.,《2007年ACM SIGPLAN编程语言设计与实现会议论文集》,2007年6月10日至13日,美国加利福尼亚州圣地亚哥,ACM,2007年第66-77页
[26] Charlton,N.,Hoare logic for higher order store using simple semantics,(Beklemishev,L.D.;de Queiroz,R.,《逻辑、语言、信息和计算——第十八届国际研讨会》,2011年5月18日至20日,美国宾夕法尼亚州费城,WoLLIC,2011年。逻辑、语言、信息和计算——第18届国际研讨会。逻辑、语言、信息和计算——第18届国际研讨会,WoLLIC 2011,费城,宾夕法尼亚州,美国,2011年5月18日至20日,计算机科学讲义,第6642卷(2011),施普林格),52-66·Zbl 1326.68085号
[27] 雅各布斯,B。;Smans,J。;Piessens,F.,《可卸载模块的验证》,(Butler,M.;Schulte,W.,FM 2011:形式方法-第17届形式方法国际研讨会。FM 2011:2011年6月20-24日,爱尔兰利默里克,形式方法第17届国际研讨会。FM 2011:形式方法——第17届形式方法国际研讨会。FM 2011:形式方法-第17届形式方法国际研讨会,爱尔兰利默里克,2011年6月20日至24日,计算机科学讲稿,第6664卷(2011),斯普林格),402-416
[28] Benton,N.,抽象分配,(埃西克,Z.,《计算机科学逻辑》,第20届国际研讨会,CSL 2006,第15届EACSL年会。计算机科学逻辑,第20次国际研讨会,2006年CSL,第15次EACSL年度会议,匈牙利塞格德,2006年9月25日至29日。计算机科学逻辑,第20届国际研讨会,CSL 2006,第15届EACSL年会。计算机科学逻辑,第20届国际研讨会,CSL 2006,第15届EACSL年会,塞格德,匈牙利,2006年9月25-29日,计算机科学讲义,第4207卷(2006),斯普林格),182-196·Zbl 1225.68109号
[29] Svendsen,K。;Birkedal,L。;Parkinson,M.,验证泛型和代表,(D′Hondt,T.,ECOOP 2010-面向对象编程,第24届欧洲会议。ECOOP 2010-面向对象的编程,第二十四届欧洲会议,斯洛文尼亚马里伯,2010年6月21日至25日。ECOOP 2010:面向对象编程,第24届欧洲会议。ECOOP 2010:面向对象编程,第24届欧洲会议,2010年6月21日至25日,斯洛文尼亚马里博尔,计算机科学讲义,第6183卷(2010),斯普林格出版社,175-199
[30] Nanevski,A。;莫里塞特,G。;Shinnar,A。;Govereau,P。;Birkedal,L.,Ynot:命令式程序的依赖类型,(Hook,J.;Thiemann,P.,《第十三届ACM SIGPLAN功能编程国际会议论文集》,第十三届AC M SIGPLA功能编程国际大会论文集,ICFP 2008,加拿大不列颠哥伦比亚省维多利亚市,2008年9月20日至28日(2008),ACM),229-240·Zbl 1323.68142号
[31] Nanevski,A。;莫里塞特·J·G。;Birkedal,L.,霍尔型理论,多态性和分离,Funct杂志。程序。,18, 865-911 (2008) ·Zbl 1155.68354号
[32] 彼得森,R.L。;Birkedal,L。;Nanevski,A。;Morrisett,G.,非独立Hoare类型理论的可实现性模型, (Drossopoulou,S.,《编程语言和系统》,第17届欧洲编程研讨会,ESOP 2008,作为欧洲软件理论与实践联合会议的一部分举行。《编程语言与系统》,欧洲编程研讨会(ESOP 2008)ftware,ETAPS 2008,匈牙利布达佩斯,2008年3月29日至4月6日。《编程语言与系统》,第17届欧洲编程研讨会,ESOP 2008,作为欧洲软件理论与实践联合会议的一部分举行。编程语言与系统,第17届欧洲编程研讨会,ESOP 2008,作为欧洲软件理论与实践联合会议的一部分举行,ETAPS 2008,匈牙利布达佩斯,2008年3月29日至4月6日,计算机科学讲稿,第4960卷(2008),Springer),337-352·Zbl 1133.68311号
[33] Berdine,J。;加尔卡尼奥,C。;O'Hearn,P.W.,Smallfoot:带分离逻辑的模块化自动断言检查,(de Boer,F.S.;Bonsangue,M.M.;Graf,S.;de Roever,W。P.,组件和对象的形式化方法,第四届国际研讨会,FMCO 2005,荷兰阿姆斯特丹,2005年11月1-4日,修订讲座。组件和对象的正式方法,第四届国际研讨会,FMCO 2005,荷兰阿姆斯特丹,2005年11月1日至4日,修订讲座,计算机科学讲义,第4111卷(2005年),施普林格),115-137
[34] Distefano,D。;Parkinson,M.J.,jStar:面向Java的实际验证(Harris,G。E.,第23届ACM SIGPLAN面向对象编程、系统、语言和应用年会论文集。第23届ACM SIGPLAN面向对象编程、系统、语言和应用年会论文集,OOPSLA 2008,美国田纳西州纳什维尔,2008年10月19-23日(2008),ACM),213-226
[35] 雅各布斯,B。;Smans,J。;Piessens,F.,《VeriFast程序验证器快速巡视》,(Ueda,K.,《编程语言和系统-第八届亚洲研讨会》,编程语言与系统-第8届亚洲研讨会,2010年11月28日至12月1日,中国上海,APLAS 2010。编程语言和系统-第八届亚洲研讨会。编程语言与系统-第八届亚洲研讨会,2010年11月28日至12月1日,中国上海,APLAS 2010,计算机科学讲义,第6461卷(2010),Springer),304-311
[36] 霍斯福尔,B。;北卡罗来纳州查尔顿。;Reuse,B.,《验证反思型访问者模式》(《第14届类Java程序形式技术研讨会论文集》,《第14次类Java程序正式技术研讨会论文集中》,FTfJP,中国北京(2012),ACM),27-34
[37] (2012),Crowfoot网站
[38] 施温哈默,J。;Yang,H。;Birkedal,L。;Pottier,F。;重用,B.,隐藏状态的语义基础, (Ong,L.,《软件科学和计算结构基础》,第13届国际会议,FOSSACS 2010,作为欧洲软件理论和实践联合会议的一部分举行。《软件科学基础和计算结构》,第十三届国际会议《软件理论与实践》,ETAPS 2010,塞浦路斯帕福斯,2010年3月20日至28日。软件科学和计算结构基础,第13届国际会议,FOSSACS 2010,作为欧洲软件理论与实践联合会议的一部分举行。软件科学和计算结构基础,第13届国际会议,FOSSACS 2010,作为欧洲软件理论与实践联合会议的一部分举行,ETAPS 2010,Paphos,塞浦路斯,2010年3月20日至28日,计算机科学讲稿,第6014卷(2010),Springer),2-17·兹比尔1284.68376
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。