×

在没有归纳法的情况下解决归纳数据类型上的Horn子句。 (英语) Zbl 1451.68172号

理论与实践。日志。程序。 18,编号3-4,452-469(2018); 勘误表同上,第19号,第4,629(2019)。
摘要:我们基于列表和树等归纳定义数据结构的理论来解决验证约束Horn子句(CHC)的可满足性问题。我们提出了一种转换技术,其目标是从CHCs中删除这些数据结构,从而将它们的可满足性降低为CHCs在整数和布尔上的可满足性问题。我们提出了一种转换算法,并识别了一类子句,其中它总是成功的。我们还考虑了该算法的一个扩展,它将子句转换与整数约束推理相结合。通过实验评估,我们表明我们的技术大大提高了将Z3求解器应用于CHC的有效性。我们还表明,我们基于CHC变换然后进行CHC求解的验证技术与通过归纳扩展的CHC解算器相比具有竞争力。

MSC公司:

第68季度第60季度 规范和验证(程序逻辑、模型检查等)
03B70号 计算机科学中的逻辑
68N17号 逻辑编程
PDF格式BibTeX公司 XML格式引用

参考文献:

[1] 艾伯特·E。;Gómez-Zamalloa,M。;休伯特,L。;Puebla,G.(2007)
[2] 巴格纳拉,R。;希尔,P.M。;Zaffanella,E.,《帕尔马多面体图书馆:针对硬件和软件系统的分析和验证的一整套数值抽象》,《计算机编程科学》,72,3-21,(2008)·doi:10.1016/j.scico.2007.08.001
[3] 比约纳,N。;古芬克尔,A。;麦克米伦,K.L。;Rybalchenko,A.,《逻辑与计算领域II》,《程序验证的Horn子句求解器》,24-51,(2015),施普林格出版社·Zbl 1465.68044号
[4] Bradley,A.R.(2011)
[5] 克拉克,E.M。;格伦伯格,O。;Jha,S。;卢,Y。;维思·H(2000)
[6] 库索特,P。;Halbwachs,N.(1978年)
[7] De Angelis,E。;Fioravanti,F。;Pettorossi,A。;Proietti,M.(2014)
[8] De Angelis,E。;Fioravanti,F。;Pettorossi,A。;Proietti,M.,通过线性化约束Horn子句来证明命令式程序的正确性,逻辑编程理论与实践,15635-650,(2015)·Zbl 1379.68093号 ·doi:10.1017/S1471068415000289
[9] De Angelis,E。;Fioravanti,F。;Pettorossi,A。;Proietti,M.(2016)
[10] De Angelis,E。;Fioravanti,F。;Pettorossi,A。;Proietti,M.(2017)
[11] De Angelis,E。;Fioravanti,F。;Pettorossi,A。;Proietti,M.,《使用约束处理规则和数组约束泛化进行程序验证》,《基础信息学》,150,73-117,(2017)·Zbl 1374.68113号 ·doi:10.3233/FI-2017-1461
[12] De Angelis,E。;Fioravanti,F。;Pettorossi,A。;Proietti,M.(2017)
[13] De Moura,L.M。;比约纳,N.(2008)
[14] De Schreye,D。;吕克,R。;Jörgensen,J。;Leuschel,M。;马滕斯,B。;Sørensen,M.H.,《共轭偏演绎:基础、控制、算法和实验》,逻辑编程杂志,41,2231-277,(1999)·Zbl 0944.68025号 ·doi:10.1016/S0743-1066(99)00030-8
[15] Dixon,L。;Fleuriot,J.D.(2003)
[16] Enderton,H.,《逻辑数学导论》(1972),学术出版社·Zbl 0298.0202号
[17] 埃塔利,S。;Gabbrielli,M.,《CLP模块的转换》,《理论计算机科学》,166101-146,(1996)·Zbl 0872.68021号 ·doi:10.1016/0304-3975(95)00148-4
[18] 费尔辛,D。;格雷宾,S。;Klebanov,V。;吕默,P。;Ulbrich,M.(2014)
[19] 格雷本希科夫,S。;Lopes,N.P。;波皮亚,C。;Rybalchenko,A.(2012年)
[20] 霍德,K。;比约纳,N.(2012)
[21] 霍贾特,H。;科内肯,F。;Garnier,F。;Iosif,R。;昆卡,V。;吕默,P.(2012)
[22] Jaffar,J。;纳瓦斯,J.A。;Santosa,A.E.,(2012年)
[23] 卡夫,B。;加拉赫,J.P。;莫拉莱斯,J.F.(2016)
[24] Komuravelli,A。;Gurfinkel,A。;Chaki,S。;Clarke,E.M.(2013)
[25] 勒罗伊,X。;Doligez,D。;弗里希,A。;Garrigue,J。;雷米·D·。;Vouillon,J.(2017)
[26] 麦克米伦,K.L.(2003)
[27] Méndez-Lojo,M。;纳瓦斯,J.A。;Hermenegildo,M.V.(2008)
[28] 莫德维诺夫,D。;Fedyukovich,G.(2017)
[29] 佩拉尔塔,J.C。;加拉赫,J.P。;萨格拉姆·H(1998)
[30] Proietti,M。;Pettorossi,A.,为了避免逻辑程序中不必要的变量,按此顺序展开定义折叠,理论计算机科学,142,1,89-124,(1995)·Zbl 0873.68023号 ·doi:10.1016/0304-3975(94)00227-A
[31] 雷诺兹,A。;昆卡,V.(2015)
[32] 苏特,P。;Köksal,A.S。;昆卡,V.(2011)
[33] Tamaki,H。;佐藤,T。;南澳大利亚州Tärnlund。,(1984)
[34] Unno,H。;托里,S。;坂本浩(2017)
[35] Wadler,P.L.,《森林砍伐:改造程序以消除树木》,《理论计算机科学》,第73期,第231-248页,(1990年)·Zbl 0701.68013号 ·doi:10.1016/0304-3975(90)90147-A
此参考列表基于出版商或数字数学图书馆提供的信息。它的项目与zbMATH标识符启发式匹配,并且可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。