×

模型检查并发程序。 (英语) Zbl 1392.68251号

Clarke,Edmund M.(编辑)等人,《模型检查手册》。查姆:施普林格(ISBN 978-3-319-10574-1/hbk;978-3-3169-10575-8/电子书)。573-611 (2018).
摘要:并发程序广泛用于利用多核硬件的计算能力。然而,开发对的并发程序。在实践中,与并发相关的错误(如数据争用、死锁和原子性违规)非常常见。在本章中,我们描述了基于模型检查的并发程序自动验证和调试工作。重点是推理线程和进程之间的同步和通信的核心思想,同时考虑由于它们的交互而可能发生的所有行为。
有关整个系列,请参见[兹比尔1390.68001].

MSC公司:

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

参考文献:

[1] 1.Algale,J.、Maranget,L.、Sarkar,S.、Sewell,P.:弱记忆模型中的栅栏(扩展版)。形式方法系统。设计。40(2), 170-205 (2012) ·Zbl 1247.68155号 ·doi:10.1007/s10703-011-0135-z
[2] 2.Atig,M.F.,Bouajjani,A.,Touili,T.:关于下推系统非循环网络的可达性分析。收录人:van Breugel,F.,Chechik,M.(编辑)CONCUR。LNCS,第5201卷,第356-371页(2008)·Zbl 1160.68451号
[3] 3.Atig,M.F.,Touili,T.:使用动态通信结构验证并行程序。收录人:Maneth,S.(编辑)CIAA。LNCS,第5642卷,第145-154页。斯普林格,海德堡(2009)·Zbl 1248.68138号
[4] 4.Bonnet,R.、Chadha,R.,Madhusudan,P.、Viswanathan,M.:上下文锁定下的可达性。日志。方法计算。科学。9(3), 1-17 (2013) ·Zbl 1274.68064号 ·doi:10.2168/LMCS-9(3:21)2013年
[5] 5.Bouajjani,A.,Emmi,M.:消息传递程序的有界相位分析。国际期刊软件。技术工具。变压器。16(2), 127-146 (2014) ·Zbl 1352.68057号 ·doi:10.1007/s10009-013-0276-z
[6] 6.Bouajjani,A.,Esparza,J.,Maler,O.:下推自动机的可达性分析:应用于模型检查。收录人:Marzurkiewicz,A.,Winkowski,J.(编辑)CONCUR。LNCS,第1243卷,第135-150页。斯普林格,海德堡(1997)·兹比尔1512.68135
[7] 7.Bouajjani,A.、Esparza,J.、Schwoon,S.、Strejcek,J.:异步通信多线程软件的可达性分析。收录:Ramanujan,R.,Sen,S.(编辑)FSTTCS。LNCS,第3821卷,第348-359页。斯普林格,海德堡(2005)·Zbl 1172.68422号
[8] 8.Bouajjani,A.,Esparza,J.,Touili,T.:对带有过程的并发程序进行静态分析的通用方法。载于:持久性有机污染物清单,第62-73页。ACM,纽约(2003)·Zbl 1321.68185号
[9] 9.Bouajjani,A.,Esparza,J.,Touili,T.:对带有过程的并发程序进行静态分析的通用方法。发现的国际期刊。计算。科学。14(4), 551-582 (2003) ·Zbl 1101.68457号 ·doi:10.1142/S0129054103001893
[10] 10.Burckhardt,S.、Alur,R.、Martin,M.M.K.:放松记忆模型上并发数据类型的有界模型检查:案例研究。In:Ball,T.,Jones,R.B.(编辑)CAV。LNCS,第4144卷,第489-502页。斯普林格,海德堡(2006)
[11] 11.Burckhardt,S.、Alur,R.、Martin,M.M.K.:检查围栏:检查放松内存模型上并发数据类型的一致性。摘自:PLDI,第12-21页。ACM,纽约(2007)
[12] 12.Burckhardt,S.,Musuvathi,M.:放松记忆模型的有效程序验证。收录人:Gupta,A.,Malik,S.(编辑)CAV。LNCS,第5123卷,第107-120页。斯普林格,海德堡(2008)·Zbl 1155.68428号
[13] 13.Calcagno,C.,Distefano,D.,O'Hearn,P.W.,Yang,H.:通过双向拉伸进行成分形状分析。J.ACM 58(6),26(2011)·Zbl 1281.68155号 ·数字对象标识代码:10.1145/2049697.2049700
[14] 14.Cerní,P.,Henzinger,T.A.,Radhakrishna,A.,Ryzhyk,L.,Tarrach,T.:通过语义表示转换实现并发的高效合成。收录:Sharygina,N.,Veith,H.(编辑)CAV。LNCS,第8044卷,第951-967页。斯普林格,海德堡(2013)
[15] 15.Chadha,R.、Madhusudan,P.、Viswanathan,M.:上下文锁定下的可达性。收录:Flanagan,C.,König,B.(编辑)TACAS。LNCS,第7214卷,第437-450页。斯普林格,海德堡(2012)·Zbl 1352.68059号
[16] 16.Chaki,S.、Clarke,E.M.、Kidd,N.、Reps,T.W.、Touili,T.:使用递归调用验证并发消息传递C程序。收录:Hermanns,H.,Palsberg,J.(编辑)TACAS。LNCS,第3920卷,第334-349页。斯普林格,海德堡(2006)·Zbl 1180.68109号
[17] 17.Chen,F.,Rosu,G.:参数和切片因果关系。摘自:Damm,W.,Hermanns,H.(编辑)CAV。LNCS,第4590卷,第240-253页。斯普林格,海德堡(2007)·Zbl 1135.68468号
[18] 18.Cherem,S.,Chilimbi,T.M.,Gulwani,S.:推断原子部分的锁。收录于:PLDI,第304-315页。ACM,纽约(2008)
[19] 19.Clarke,E.M.,Emerson,E.A.:使用分支时间时序逻辑设计和合成同步骨架。收录:Kozen,D.(编辑)《程序逻辑》。LNCS,第131卷,第52-71页。斯普林格,海德堡(1981)·Zbl 0546.68014号 ·doi:10.1007/BFb0025774文件
[20] 20.Cohen,A.,Namjoshi,K.S.:全球安全特性的局部证明。形式方法系统。设计。34(2), 104-125 (2009) ·Zbl 1176.68118号 ·doi:10.1007/s10703-008-0063-8
[21] 21.Elmas,T.,Qadeer,S.,Tasiran,S.:原子作用的微积分。收录于:POPL,第2-15页。ACM,纽约(2009)·兹比尔1315.68087
[22] 22.Emmi,M.,Fischer,J.S.,Jhala,R.,Majumdar,R.:船闸分配。收录于:POPL,第291-296页。ACM,纽约(2007)
[23] 23.Esparza,J.,Schwoon,S.:递归程序的基于BDD的模型检查器。收录:Berry,G.,Common,N.,Finkel,A.(编辑)CAV。LNCS,第2102卷,第324-336页。施普林格,海德堡(2001)·Zbl 0991.68539号
[24] 24.Farzan,A.,Kincaid,Z.:具有嵌套锁的并发程序的合成位向量分析。收录人:Cousot,R.,Martel,M.(编辑)SAS。LNCS,第6337卷,第253-270页。斯普林格,海德堡(2010)·Zbl 1306.68013号
[25] 25.Farzan,A.,Madhusudan,P.,Sorrentino,F.:嵌套锁下原子性违规的元分析。收录:Bonajjani,A.,Maler,O.(编辑)CAV。LNCS,第5643卷,第248-262页。斯普林格,海德堡(2009)·Zbl 1242.68065号
[26] 26.Flanagan,C.,Godefroid,P.:模型检查软件的动态部分顺序缩减。收录于:POPL,第110-121页。ACM,纽约(2005)·Zbl 1369.68135号
[27] 27.Ganai,M.K.,Gupta,A.:BMC中并发系统的高效建模。摘自:Havelund,K.,Majumdar,R.,Palsberg,J.(编辑)SPIN。LNCS,第5156卷,第114-133页。斯普林格,海德堡(2008)
[28] 28.Ganai,M.K.,Kundu,S.:使用相互原子事务减少并发系统的验证条件。收录于:Psreanu,C.(编辑)SPIN。LNCS,第5578卷,第68-87页。斯普林格,海德堡(2009)
[29] 29.Godefroid,P.:并发系统验证的部分序方法——状态爆炸问题的一种方法。LNCS,第1032卷。斯普林格,海德堡(1996)·兹比尔1293.68005 ·doi:10.1007/3-540-60761-7
[30] 30.Godefroid,P.:使用Verisoft对编程语言进行模型检查。收录于:POPL,第174-186页。ACM,纽约(1997)·数字对象标识代码:10.1145/263699.263717
[31] 31.Gotsman,A.、Berdine,J.、Cook,B.、Sagiv,M.:螺纹模数形状分析。收录于:PLDI,第266-277页。ACM,纽约(2007)
[32] 32.Gueta,G.,Flanagan,C.,Yahav,E.,Sagiv,M.:笛卡尔偏阶约化。In:Bošnački,D.,Edelkamp,S.(eds.)SPIN模型检查软件研讨会。LNCS,第4595卷,第95-112页。斯普林格,海德堡(2007)·doi:10.1007/978-3-540-73370-68
[33] 33.Gupta,A.,Popeea,C.,Rybalchenko,A.:用于验证多线程程序的谓词抽象和精化。收录于:POPL,第331-344页。ACM,纽约(2011)·Zbl 1284.68427号
[34] 34.Henzinger,T.A.,Jhala,R.,Majumdar,R.:通过上下文推理进行种族检查。摘自:PLDI,第1-13页。ACM,纽约(2004)
[35] 35.Henzinger,T.A.,Jhala,R.,Majumdar,R.:许可接口。摘自:ESEC/SIGSOFT FSE,第31-40页。ACM,纽约(2005)
[36] 36.Henzinger,T.A.、Jhala,R.、Majumdar,R.和Qadeer,S.:线程模块抽象细化。收录:Hunt,W.A.Jr.,Somenzi,F.(编辑)CAV。LNCS,第2725卷,第262-274页。斯普林格,海德堡(2003)·兹比尔1278.68175
[37] 37.Holzmann,G.J.:使用SPIN检查软件模型。高级计算。65, 78-109 (2005)
[38] 38.Kahlon,V.:锁链的有界性与无界性:描述通过锁通信的线程的成对CFL可达性的可判定性。收录于:LICS,第27-36页。IEEE,皮斯卡塔韦(2009)
[39] 39.Kahlon,V.:关于有界锁链螺纹的推理。收录:Katoen,J.,König,B.(编辑)CONCUR。LNCS,第6901卷,第450-465页。斯普林格,海德堡(2011)·Zbl 1343.68154号
[40] 40.Kahlon,V.,Gupta,A.:模型检查线程LTL属性的自动机理论方法。收录于:LICS,第101-110页。IEEE,皮斯卡塔韦(2006)
[41] 41.Kahlon,V.,Gupta,A.:关于相互作用下推系统的分析。收录于:POPL,第303-314页。ACM,纽约(2007)·Zbl 1295.68159号
[42] 42.Kahlon,V.,Ivančić,F.,Gupta,A.:关于线程通过锁通信的推理。收录人:Etessami,K.,Rajamani,S.K.(编辑)CAV。LNCS,第3576卷,第505-518页。斯普林格,海德堡(2005)·Zbl 1081.68623号
[43] 43.Kahlon,V.,Sankaranarayanan,S.,Gupta,A.:并发程序中线程交错的语义减少。收录:Kowalewski,S.,Philippou,A.(编辑)TACAS。LNCS,第5505卷,第124-138页。斯普林格,海德堡(2009)
[44] 44.Kahlon,V.,Wang,C.:通用因果图:检测并发程序中错误的精确发生前模型。收录人:Touili,T.、Cook,B.、Jackson,P.(编辑)CAV。LNCS,第6174卷,第434-449页。斯普林格,海德堡(2010)
[45] 45.Kahlon,V.,Wang,C.,Gupta,A.:单调部分阶约简:一种最佳符号部分阶约化技术。收录:Bouajjani,A.,Maler,O.(编辑)CAV。LNCS,第5643卷,第398-413页。斯普林格,海德堡(2009)·兹比尔1242.68166
[46] 46.Kidd,N.,Lammich,P.,Touili,T.,Reps,T.W.:检测与锁通信进程的原子性冲突的决策过程。国际期刊软件。技术工具。变压器。13(1), 37-60 (2011) ·doi:10.1007/s10009-010-0159-5
[47] 47.库珀斯坦(Kuperstein,M.)、维切夫(Vechev,M.T.)、雅哈夫(Yahav,E.):记忆栅栏的自动推理。SIGACT新闻43(2),108-123(2012)·数字对象标识代码:10.1145/2261417.2261438
[48] 48.Lahiri,S.K.、Qadeer,S.、Rakamaric,Z.:使用SMT解算器静态和精确检测系统代码中的并发错误。收录:Bouajjani,A.,Maler,O.(编辑)CAV。LNCS,第5643卷,第509-524页。斯普林格,海德堡(2009)
[49] 49.Lal,A.,Balakrishnan,G.,Reps,T.:扩展加权下推系统。收录人:Ekessami,K.,Rajamani,S.K.(编辑)CAV。LNCS,第3576卷,第434-448页。斯普林格,海德堡(2005)·Zbl 1081.68625号
[50] 50.Lal,A.,Reps,T.W.:减少与顺序分析相关的上下文下的并发分析。收录人:Gupta,A.,Malik,S.(编辑)CAV。LNCS,第5123卷,第37-51页。斯普林格,海德堡(2008)·Zbl 1155.68368号
[51] 51.Lammich,P.,Müller-Olm,M.,Wenner,A.:具有树正则约束的动态下推网络的前驱集。收录:Bouajjani,A.,Maler,O.(编辑)CAV。LNCS,第5643卷,第525-539页。斯普林格,海德堡(2009)·Zbl 1242.68058号
[52] 52.Lamport,L.:分布式系统中的时间、时钟和事件顺序。Commun公司。ACM 21(7),558-565(1978)·Zbl 0378.68027号 ·doi:10.1145/359545.359563
[53] 53.Mazurkiewicz,A.W.:痕迹理论。收录:Brauer,W.、Reisig,W.和Rozenberg,G.(编辑)《Petri网进展》。LNCS,第255卷,第279-324页。斯普林格,海德堡(1986)
[54] 54.Miné,A.:嵌入式关键并行C程序中运行时错误的静态分析。收录:Barté,G.(编辑)ESOP。LNCS,第6602卷。斯普林格,海德堡(2011)·Zbl 1239.68021号
[55] 55.穆苏瓦蒂,M.,卡迪尔,S.,鲍尔,T.,巴斯勒,G.,奈纳尔,P.A.,尼姆图,I.:在并发程序中发现和复制海森堡。收录于:OSDI,第267-280页。USENIX协会,伯克利(2008)
[56] 56.O'Hearn,P.W.:资源、并发和局部推理。收录人:Gardner,P.,Yoshida,N.(编辑)CONCUR。LNCS,第3170卷,第49-67页。斯普林格,海德堡(2004)·Zbl 1099.68588号
[57] 57.Peled,D.:从一开始,一对所有:使用代表进行模型检查。收录:Courcoubetis,C.(编辑)CAV。LNCS,第697卷,第409-423页。施普林格,海德堡(1993)
[58] 58.Qadeer,S.,Rehof,J.:并发软件的上下文模型检查。收录:Halbwachs,N.,Zuck,L.(编辑)TACAS。LNCS,第3440卷,第93-107页。斯普林格,海德堡(2005)·Zbl 1087.68598号
[59] 59.Rabinovitz,I.,Grumberg,O.:并发程序的有界模型检查。在:Etessami,K.,Rajamani,S.K.(编辑)CAV。LNCS,第3576卷,第82-97页。斯普林格,海德堡(2005)·Zbl 1081.68633号
[60] 60.Ramalingam,G.:上下文敏感同步敏感分析是不可判定的。收录于:托普拉斯,第416-430页。ACM,纽约(2000年)
[61] 61.Reps,T.,Schwoon,S.,Jha,S.:加权下推系统及其在过程间数据流分析中的应用。收录人:Cousot,R.(编辑)SAS。LNCS,第2694卷,第189-213页。斯普林格,海德堡(2003)·Zbl 1067.68051号
[62] 62.Sen,K.,Rosu,G.,Agha,G.:多线程程序的运行时安全分析。收录于:ESEC/SIGSOFT FSE,第337-346页。ACM,纽约(2003)
[63] 63.Singh,R.、Giannakopoulou,D.、Pasareanu,C.S.:学习组件与可能和必须的抽象接口。收录人:Touili,T.、Cook,B.、Jackson,P.(编辑)CAV。LNCS,第6174卷,第527-542页。斯普林格,海德堡(2010)
[64] 64.Sinha,A.、Malik,S.、Gupta,A.:检测多线程程序中不确定性的有效预测分析。收录于:FMCAD,第6-15页。IEEE,皮斯卡塔韦(2012)
[65] 65.Sinha,N.,Wang,C.:分阶段并发程序分析。参见:SIGSOFT FSE,第47-56页。ACM,纽约(2010年)
[66] 66.Sinha,N.,Wang,C.:关于干涉抽象。收录于:POPL,第423-434页。ACM,纽约(2011)·Zbl 1284.68203号
[67] 67.Solar-Lezama,A.,Jones,C.G.,Bodík,R.:绘制并发数据结构。收录于:PLDI,第136-148页。ACM,纽约(2008)
[68] 68.Stoller,S.D.:模型检查多线程分布式Java程序。国际期刊软件。技术工具。变压器。4(1), 71-91 (2002) ·doi:10.1007/s10009-002-0077-2
[69] 69.Touili,T.,Atig,M.F.:用动态通信结构验证并行程序。西奥。计算。科学。411(38-39), 3460-3468 (2010) ·Zbl 1209.68114号 ·doi:10.1016/j.tcs.2010.05.028
[70] 70.Vafeiadis,V.:自动证明线性化能力。收录人:Touili,T.、Cook,B.、Jackson,P.(编辑)CAV。LNCS,第6174卷,第450-464页。斯普林格,海德堡(2010)
[71] 71.Valmari,A.:用于减少状态空间生成的Stubborn集合。收录:Rozenberg,G.(编辑)《Petri网的进展》。LNCS,第483卷,第491-515页。斯普林格,海德堡(1989)
[72] 72.Visser,W.、Havelund,K.、Brat,G.P.、Park,S.、Lerda,F.:模型检查程序。自动。柔和。工程10(2),203-232(2003)·doi:10.1023/A:1022920129859
[73] 73.Vo,A.、Vakkalanka,S.S.、Delisi,M.、Gopalakrishnan,G.、Kirby,R.M.、Thakur,R.:实际MPI程序的正式验证。载于:PPOPP,第261-270页。ACM,纽约(2009)
[74] 74.Walukiewicz,I.:模型检查下推系统的CTL属性。收录:Kapoor,S.,Prasad,S.(编辑)FSTTCS。LNCS,第1974卷,第127-138页。斯普林格,海德堡(2000)·Zbl 1044.68111号
[75] 75.Wang,C.,Kundu,S.,Ganai,M.K.,Gupta,A.:并发程序的符号预测分析。载:Cavalcanti,A.,Dams,D.(编辑)FM.LNCS,第5850卷,第256-272页。斯普林格,海德堡(2009)·Zbl 1242.68187号
[76] 76.Wang,C.,Limaye,R.,Ganai,M.K.,Gupta,A.:原子违反的基于痕迹的符号分析。收录:Esparza,J.,Majumdar,R.(编辑)TACAS。LNCS,第6015卷,第328-342页。斯普林格,海德堡(2010)·兹比尔1284.68418
[77] 77.Wang,C.,Said,M.,Gupta,A.:覆盖率引导的系统并发测试。收录于:ICSE,第221-230页。ACM,纽约(2011)
[78] 78.Wang,C.,Yang,Z.,Kahlon,V.,Gupta,A.:Peephole部分阶降阶。收录:Ramakrishnan,C.R.,Rehof,J.(编辑)TACAS。LNCS,第4963卷,第382-396页。斯普林格,海德堡(2008)·Zbl 1134.68421号
[79] 79.Wies,T.、Zufferey,D.、Henzinger,T.A.:深度边界过程的正向分析。收录:Ong,L.(编辑)FOSSACS。LNCS,第6014卷,第94-108页。斯普林格,海德堡(2010)·Zbl 1284.68419号
[80] 80.Yang,Y.,Gopalakrishnan,G.,Lindstrom,G.:记忆模型敏感数据竞争分析。收录人:Davies,J.、Schutte,W.、Barnett,M.(编辑)ICFEM。LNCS,第3308卷,第30-45页(2004年)
[81] 81.Yi,J.,Sadowski,C.,Flanagan,C.:SideTrack:概括动态原子性分析。收录于:PADTAD,第8:1-8:10页。ACM,纽约(2009)
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。