×

关于具有无限数据的列表操作程序的自动推理的抽象域。 (英语) Zbl 1325.68058号

Kuncak,Viktor(编辑)等人,《验证、模型检查和抽象解释》。2012年1月22日至24日,第13届国际会议,VMCAI 2012,美国宾夕法尼亚州费城。诉讼程序。柏林:施普林格出版社(ISBN 978-3-642-27939-3/pbk)。计算机科学课堂讲稿7148,1-22(2012)。
摘要:我们描述了一个框架,用于对带有整数数字数据的列表的程序进行推理。我们使用抽象域来描述和操作这些程序配置的复杂约束,混合了堆的形状、列表的大小、存储在这些列表中的多组数据以及不同位置的数据的约束。此外,我们还提供了强大的技术,用于Hoare-triples的自动验证和不变量检查,以及使用模块化过程间分析自动合成不变量和过程摘要。该方法已在一个名为Celia的工具中实现,并在大型程序基准上进行了成功的实验。
关于整个系列,请参见[Zbl 1236.68007号].

MSC公司:

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

参考文献:

[1] 奥盖博士:用无限数据对堆操作程序进行自动验证。巴黎迪德罗大学博士论文-巴黎7(2011)
[2] Barrett,C.,Tinelli,C.:CVC3。摘自:Damm,W.,Hermanns,H.(编辑)CAV 2007。LNCS,第4590卷,第298-302页。施普林格,海德堡(2007)·doi:10.1007/978-3-540-73368-3_34
[3] Beyer,D.,Henzinger,T.A.,Majumdar,R.,Rybalchenko,A.:组合理论的不变综合。摘自:Cook,B.,Podelski,A.(编辑)VMCAI 2007。LNCS,第4349卷,第378-394页。斯普林格,海德堡(2007)·兹比尔1132.68333 ·doi:10.1007/978-3-540-69738-1_27
[4] Bouajjani,A.、Bozga,M.、Habermehl,P.、Iosif,R.、Moro,P.和Vojnar,T.:带有列表的程序是反自动机。收录:Ball,T.,Jones,R.B.(编辑)CAV 2006。LNCS,第4144卷,第517-531页。斯普林格,海德堡(2006)·Zbl 1188.68181号 ·doi:10.1007/11817963_47
[5] Bouajjani,A.,Drégoi,C.,Enea,C.,Rezine,A.,Sighireanu,M.:用无界数据操作列表的程序的不变合成。收录:Touili,T.、Cook,B.、Jackson,P.(编辑)CAV 2010。LNCS,第6174卷,第72-88页。斯普林格,海德堡(2010)·doi:10.1007/978-3-642-14295-68
[6] Bouajjani,A.、Dragoi,C.、Enea,C.和Sighireanu,M.:关于带有列表和数据的程序的过程间分析。In:程序。PLDI第578–589页(2011年)·数字对象标识代码:10.1145/1993498.1993566
[7] Calcagno,C.,Distefano,D.,O’Hearn,P.W.,Yang,H.:通过双外展进行成分形状分析。In:程序。第289-300页(2009年)·Zbl 1315.68085号 ·doi:10.1145/1594834.1480917
[8] CEA。Frama-C平台,http://frama-c.com
[9] 西莉亚插件,http://www.liafa.jussieu.fr/celia
[10] Chang,B.-Y.E.,Rival,X.:关系归纳形态分析。In:程序。第247-260页(2008年)·Zbl 1295.68081号 ·doi:10.1145/1328438.1328469
[11] 库索,P.,库索,R.:程序分析框架的系统设计。In:程序。第269-282页(1979年)·Zbl 1323.68356号 ·数字对象标识代码:10.1145/567752.567778
[12] 库索,P.,库索,R.:抽象解释:通过构造或近似不动点对程序进行静态分析的统一格模型。In:程序。POPL,第238–252页(1977年)·doi:10.1145/512950.512973
[13] 库索,P.,库索,R.:递归过程动态特性的静态测定。In:程序。IFIP Conf.on Formal Description of Programming Concepts,第237–277页(1977)·Zbl 0393.68080号
[14] Cousot,P.,Halbwachs,N.:程序变量之间线性约束的自动发现。In:程序。POPL,第84-96页(1978年)·doi:10.1145/512760.512770
[15] de Moura,L.,Björner,N.:Z3:高效SMT求解器。收录:Ramakrishnan,C.R.,Rehof,J.(编辑)TACAS 2008。LNCS,第4963卷,第337-340页。斯普林格,海德堡(2008)·doi:10.1007/978-3-540-78800-3_24
[16] Gopan,D.,Reps,T.W.,Sagiv,S.:数组运算的数值分析框架。In:程序。POPL,第338–350页(2005)·Zbl 1369.68138号 ·数字对象标识代码:10.1145/1040305.1040333
[17] Gotsman,A.,Berdine,J.,Cook,B.:用分离堆抽象法进行硬膜外形状分析。In:Yi,K.(编辑)SAS 2006。LNCS,第4134卷,第240-260页。斯普林格,海德堡(2006)·Zbl 1225.68072号 ·doi:10.1007/11823230_16
[18] Gulwani,S.、Lev-Ami,T.、Sagiv,M.:跟踪分区大小的组合框架。In:程序。第239-251页(2009年)·Zbl 1315.68094号 ·doi:10.1145/1594834.1480912
[19] Gulwani,S.,McCloskey,B.,Tiwari,A.:将抽象解释器提升到量化的逻辑域。收录于:POPL,第235-246页(2008年)·Zbl 1295.68085号 ·doi:10.1145/1328438.1328468
[20] Halbwachs,N.,Péron,M.:发现简单程序中数组的属性。收录于:PLDI,第339-348页(2008年)·数字对象标识代码:10.1145/1375581.1375623
[21] Jeannet,B.,Miné,A.:围裙:静态分析的数值抽象域库。收录:Bouajjani,A.,Maler,O.(编辑)CAV 2009。LNCS,第5643卷,第661-667页。施普林格,海德堡(2009)·doi:10.1007/978-3-642-02658-4_52
[22] Jhala,R.,McMillan,K.L.:从证明中提取数组。摘自:Damm,W.,Hermanns,H.(编辑)CAV 2007。LNCS,第4590卷,第193-206页。斯普林格,海德堡(2007)·Zbl 1135.68474号 ·doi:10.1007/978-3-540-73368-3_23
[23] McCloskey,B.,Reps,T.,Sagiv,M.:静态推断复杂堆、数组和数字不变量。收录:Cousot,R.,Martel,M.(编辑)SAS 2010。LNCS,第6337卷,第71-99页。斯普林格,海德堡(2010)·Zbl 1306.68032号 ·doi:10.1007/978-3-642-15769-16
[24] Miné,A.:八角形抽象域。高阶和符号计算19(1),31–100(2006)·Zbl 1105.68069号 ·doi:10.1007/s10990-006-8609-1
[25] Perrelle,V.,Halbwachs,N.:阵列排列分析。收录:Barthe,G.,Hermenegildo,M.(编辑)VMCAI 2010。LNCS,第5944卷,第279-294页。斯普林格,海德堡(2010)·Zbl 1273.68093号 ·doi:10.1007/978-3642-11319-21
[26] Podelski,A.,Wies,T.:布尔堆。收录:Hankin,C.,Siveroni,I.(编辑)SAS 2005。LNCS,第3672卷,第268-283页。斯普林格,海德堡(2005)·Zbl 1141.68374号 ·doi:10.1007/11547662_19
[27] 波德尔斯基,A.,维斯,T.:反例引导聚焦。In:程序。第249-260页(2010年)·Zbl 1312.68067号 ·数字对象标识代码:10.1145/1706299.1706330
[28] Reynolds,J.C.:分离逻辑:共享可变数据结构的逻辑。In:程序。LICS的。IEEE计算机学会(2002)·doi:10.1109/LICS.2002.1029817
[29] Rinetzky,N.,Bauer,J.,Reps,T.W.,Sagiv,S.,Wilhelm,R.:过程局部堆及其抽象的语义。In:程序。第296–309页(2005年)·Zbl 1369.68154号 ·数字对象标识代码:10.1145/1040305.1040330
[30] Rinetzky,N.、Sagiv,M.、Yahav,E.:无切入点程序的跨过程形状分析。收录:Hankin,C.,Siveroni,I.(编辑)SAS 2005。LNCS,第3672卷,第284–302页。斯普林格,海德堡(2005)·Zbl 1141.68375号 ·doi:10.1007/11547662_20
[31] Rival,X.,Chang,B.-Y.E.:用形状调用上下文抽象。In:程序。第173-186页(2011年)·Zbl 1284.68198号 ·数字对象标识代码:10.1145/1926385.1926406
[32] Sagiv,S.,Reps,T.W.,Wilhelm,R.:通过三值逻辑进行参数形状分析。ACM事务处理。程序。语言系统。 24(3), 217–298 (2002) ·doi:10.1145/514188.514190
[33] Sharir,M.,Pnueli,A.:程序间数据流分析的两种方法。摘自:《程序流分析:理论与应用》,第189-234页。普伦蒂斯·霍尔(1981)
[34] Vafeiadis,V.:验证线性化的形状值抽象。摘自:Jones,N.D.,Müller-Olm,M.(编辑)VMCAI 2009。LNCS,第5403卷,第335-348页。斯普林格,海德堡(2009)·Zbl 1206.68103号 ·doi:10.1007/978-3-540-93900-9_27
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。