×

有界模型检查中基于格的精化。 (英语) Zbl 1403.68123号

Piskac、Ruzica(编辑)等人,《验证软件》。理论、工具和实验。第十届国际会议,2018年7月18日至19日,英国牛津,VSTTE 2018。修订了选定的论文。商会:施普林格出版社(ISBN 978-3-030-03591-4/pbk;978-3-030-03592-1/电子书)。计算机科学课堂讲稿11294,50-68(2018)。
摘要:在本文中,我们提出了一种使用带有库函数(标准函数或用户定义函数)的程序的SMT解算器进行有界模型检查的算法。通常,如果程序的正确性取决于库函数的输出,则模型检查过程要么将此函数视为未解释的函数,要么需要使用相关函数完全定义的理论。前一种方法导致了大量虚假的反例,而后一种方法则面临着国家爆炸问题的危险,由此产生的公式太大,无法通过现代SMT求解器求解。
我们扩展了用户定义摘要的方法,并建议将给定库函数的现有摘要集表示为晶格摘要子集的集合,其中meet和join操作分别定义为交集和并集。然后,细化过程由晶格遍历触发,在每个节点中,SMT解算器使用SMT的子集存储在此节点中的摘要,以搜索满意的分配。遍历的方向由当前节点获得的抽象反例的具体化结果决定。我们的实验结果表明,该方法可以解决一些现有有界模型检查器无法解决的实例。
关于整个系列,请参见[Zbl 1400.68034号].

MSC公司:

60年第68季度 规范和验证(程序逻辑、模型检查等)
PDF格式BibTeX公司 XML格式引用
全文: 内政部

参考文献:

[1] http://verify.inf.usi.ch/content/lattice-extremion
[2] https://scm.ti-edu.ch/projects/hifrog网站/
[3] 考证助理。https://coq.inria.fr/
[4] 软件验证竞赛(SV-COMP)(2017年)。https://sv-comp.sosy-lab.org/2017/
[5] Alt,L。;Legay,A。;Margaria,T.,HiFrog:基于SMT的软件验证功能摘要,系统构建和分析的工具和算法,207-213(2017),海德堡:斯普林格·doi:10.1007/978-3-662-54580-5_12
[6] Alt,L。;Fedyukovich,G。;Hyvärinen,美国司法部;北卡罗来纳州Sharygina。;Gurfinkel,A。;Seshia,SA,《小命题插值的证据敏感方法》,《验证软件:理论、工具和实验》,1-18(2016),查姆:斯普林格,查姆·doi:10.1007/978-3-319-29613-5_1
[7] Alt,L。;阿肯色州海瓦里宁;Sharygina,N.,《无人地带的上帝抵抗军插值》,《硬件和软件:验证和测试》,195-210(2017),查姆:斯普林格,查姆·doi:10.1007/978-3-319-70389-313
[8] Alt,L.,Hyvärinen,A.E.J.,Asadi,S.,Sharygina,N.:无量词等式和未解释函数的基于对偶的插值。收录:Stewart,D.,Weissenbacher,G.(编辑)《2017年FMCAD会议记录》,第39-46页。IEEE(2017)
[9] 安德森,I.,有限集组合数学(1987),牛津:克拉伦登出版社,牛津·Zbl 0604.05001号
[10] Biere,A。;Cimatti,A。;克拉克,E。;朱,Y。;Cleaveland,WR,《无BDD的符号模型检查,系统构建和分析的工具和算法》,193-207(1999),海德堡:斯普林格·数字对象标识代码:10.1007/3-540-49059-0_14
[11] Birkhoff,G.,格理论(1967),普罗维登斯:AMS,普罗维登斯·Zbl 0153.02501号
[12] Cimatti,A。;Griggio,A。;艾尔凡。;Roveri,M。;塞巴斯蒂亚尼,R。;Legay,A。;Margaria,T.,通过使用EUF增量还原为LRA对NRA过渡系统进行不变量检查,系统构建和分析的工具和算法,58-75(2017),海德堡:斯普林格·Zbl 1452.68116号 ·doi:10.1007/978-3-662-54577-5_4
[13] Cimatti,A。;Griggio,A。;艾尔凡。;Roveri,M。;塞巴斯蒂亚尼,R。;de Moura,L.,通过增量线性化的超越函数模的可满足性,自动演绎-CADE 26,95-113(2017),Cham:Springer,Cham·Zbl 1494.68281号 ·doi:10.1007/978-3-319-63046-57
[14] 克拉克,E。;格伦伯格,O。;Jha,S。;卢,Y。;维思,H。;艾默生,EA;Sistla,AP,反例引导的抽象精化,计算机辅助验证,154-169(2000),海德堡:施普林格·Zbl 0974.68517号 ·doi:10.1007/10722167_15
[15] 克拉克,E。;Kroening,D。;Lerda,F。;Jensen,K。;Podelski,A.,检查ANSI-C程序的工具,系统构建和分析的工具和算法,168-176(2004),海德堡:斯普林格·Zbl 1126.68470号 ·doi:10.1007/978-3-540-24730-2-15
[16] EM克拉克;格伦伯格,O。;Jha,S。;卢,Y。;Veith,H.,符号模型检查的反示例引导抽象求精,J.ACM,50,5,752-794(2003)·Zbl 1325.68145号 ·doi:10.1145/876638.876643
[17] 库索特,P。;选择,BY;Walsh,T.,抽象不动点检查的部分完整性,抽象,重构和近似,1-25(2000),海德堡:斯普林格·Zbl 0989.68033号 ·doi:10.1007/3-540-44914-0_1
[18] Cousot,P.,Cousot,R.:抽象解释:通过构造或近似不动点对程序进行静态分析的统一格模型。摘自:第四届ACM SIGACT-SIGPLAN编程语言原理研讨会论文集,POPL 1977,第238-252页。ACM,纽约(1977年)
[19] 库索,P.,库索,R.:程序分析框架的系统设计。摘自:第六届ACM SIGACT-SIGPLAN编程语言原理研讨会论文集,POPL 1979,第269-282页。ACM,纽约(1979)·Zbl 1323.68356号
[20] Craig,W.,Herbrand-Gentzen定理在关联模型理论和证明理论中的三种应用,J.符号逻辑,22269-285(1957)·Zbl 0079.24502号 ·电话:10.2307/2963594
[21] de Moura,L。;比约纳,N。;罗马克里希南,CR;Rehof,J.,Z3:一个高效的SMT求解器,系统构建和分析的工具和算法,337-340(2008),海德堡:施普林格,海德堡·doi:10.1007/978-3-540-78800-3_24
[22] Detlefs博士。;Nelson,G。;Saxe,JB,Simplify:用于程序检查的定理证明器,J.ACM,52,3,365-473(2005)·Zbl 1323.68462号 ·doi:10.1145/1066100.1066102
[23] D’Silva,V。;Kroening,D。;Purandare,M。;魏森巴赫,G。;Barthe,G。;Hermenegildo,M.,《插值强度、验证、模型检查和抽象解释》,129-145(2010),海德堡:施普林格·Zbl 1273.68225号 ·doi:10.1007/978-3642-11319-2-12
[24] Ekici,B。;Mebsout,A.等人。;Tinelli,C。;凯勒,C。;Katz,G。;雷诺兹,A。;巴雷特,C。;马朱姆达尔,R。;Kunčak,V.,SMTCoq:将SMT解算器集成到Coq中的插件,计算机辅助验证,126-133(2017),Cham:Springer,Cham·Zbl 1494.68285号 ·doi:10.1007/978-3-319-63390-97
[25] Giacobazzi,R。;昆塔雷利,E。;Cousot,P.,《抽象模型选择中的不完全性、反例和细化》,《静态分析》,356-373(2001),海德堡:斯普林格出版社·Zbl 1005.68099号 ·doi:10.1007/3-540-47764-0_20
[26] Giacobazzi,R。;Ranzato,F。;Scozzari,F.,《完成抽象解释》,美国计算机学会杂志,47,2361-416(2000)·Zbl 1133.68370号 ·数字对象标识代码:10.1145/333979.333989
[27] Ho,Y.S.,Chauhan,P.,Roy,P.、Mishchenko,A.、Brayton,R.:用于单词级模型检查的高效的未解释函数抽象和细化。收录于:FMCAD,第65-72页。ACM(2016)
[28] 阿肯色州海瓦里宁;阿萨迪,S。;Even-Mendoza,K。;费代科维奇,G。;节流阀,H。;北卡罗来纳州Sharygina。;Gaspers,S.公司。;Walsh,T.,《程序验证的理论改进,可满足性测试的理论与应用——SAT 2017,347-363(2017)》,Cham:Springer,Cham·Zbl 1496.68191号 ·doi:10.1007/978-3-319-66263-322
[29] 阿肯色州海瓦里宁;Marescotti,M。;Alt,L。;北卡罗来纳州Sharygina。;北卡罗来纳州克里诺。;Le Berre,D.,OpenSMT2:多核和云计算的SMT解算器,可满足性测试理论与应用-SAT 2016,547-553(2016),Cham:Springer,Cham·Zbl 1475.68438号 ·doi:10.1007/978-3-319-40970-2_35
[30] 扬切克,P。;Alt,L。;Fedyukovich,G。;阿肯色州海瓦里宁;科夫罗,J。;北卡罗来纳州Sharygina。;史蒂文斯,P。;Wasowski,A.,PVAIR:部分变量赋值InterpolatoR,《软件工程的基本方法》,419-434(2016),海德堡:斯普林格·doi:10.1007/978-3-662-49665-7_25
[31] Kutsuna,T。;石井,Y。;Yamamoto,A.,面向基于smt的测试用例生成的数学函数的抽象和精化,国际期刊Softw。技术工具。转账,18,1109-120(2016)·doi:10.1007/s10009-015-0389-7
[32] 罗里尼,旧金山;Alt,L。;费代科维奇,G。;阿肯色州海瓦里宁;北卡罗来纳州Sharygina。;McMillan,K。;Middeldorp,A.公司。;Voronkov,A.,《PeRIPLO:在基于SAT的软件验证中生成有效插值的框架》,《编程逻辑、人工智能和推理》,683-693(2013),海德堡:斯普林格,海德伯格·Zbl 1407.68303号 ·doi:10.1007/978-3-642-45221-545
[33] Rummer,P.,Subotic,P.:探索插值。在:《计算机辅助设计中的形式化方法》(FMCAD),第69-76页。IEEE(2013)
[34] 塞里,O。;Fedyukovich,G。;北卡罗来纳州Sharygina。;Chakraborty,S。;Mukund,M.,FunFrog:有界模型检查与基于插值的函数摘要,验证和分析自动化技术,203-207(2012),海德堡:斯普林格·doi:10.1007/978-3-642-33386-6_17
[35] 塞里,O。;Fedyukovich,G。;北卡罗来纳州Sharygina。;Eder,K。;Lourenço,J。;Shehory,O.,有界模型检查中基于插值的函数摘要,硬件和软件:验证和测试,160-175(2012),海德堡:施普林格,海德堡·doi:10.1007/978-3-642-34188-5_15
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。