×

使用带有触发器的公理向SMT求解器添加决策过程。 (英语) Zbl 1356.68187号

摘要:可满足性模理论(SMT)解算器是确定基本公式可满足性的有效工具,包括许多内置理论,如同余、线性算术、数组和位向量。将理论添加到该列表中需要深入研究给定SMT解算器的实现细节,主要由解算器本身的开发人员完成。对于许多有用的理论,可以提供一阶公理化。然而,在存在量词的情况下,SMT解算器是不完整的,并且表现出不可预测的行为。因此,这种方法不能为我们提供对利益理论的完整和终止的处理。在本文中,我们基于实例化模式,也称为触发器触发器是一种注释,用于建议在证据搜索中更有用的实例。它们在处理一阶逻辑的所有SMT解算器中实现,并包含在SMT-LIB格式中。在我们的框架中,用户提供了一个带有触发器的理论公理化,以及该公理化的完备性和终止性的证明,并为其理论获得了一个可靠、完整和终止的解算器。我们描述并证明了传统抽象DPLL模理论框架的相应扩展。在给定的SMT求解器中实现此机制需要一次性开发工作。我们已经在Alt-Ergo证明程序中实现了所建议的扩展,并在本文中讨论了一些实现细节。为了证明我们的框架可以处理复杂的理论,我们证明了双链表的特征丰富公理化的完备性和终止性。我们的测试表明,我们的方法使求解器在目标上有更好的性能,这些目标源于对操纵双链表和集合的程序的验证。

MSC公司:

68吨15 定理证明(演绎、解析等)(MSC2010)
03B35型 证明和逻辑操作的机械化
PDF格式BibTeX公司 XML格式引用
全文: 内政部 哈尔

参考文献:

[1] Alberti,F.、Ghilardi,S.、Sharygina,N.:平面阵列属性的决策程序。在:Ábrahám,E.,Havelund,K.(编辑)和系统构建和分析算法。计算机科学课堂讲稿,第8413卷,第15-30页。柏林施普林格出版社(2014)·Zbl 1448.68284号
[2] Armando,A.,Ranise,S.,Rusinovitch,M.:可满足程序的重写方法。Inf.计算。183(2), 140-164 (2003). 参加:第十二届改写技术与应用国际会议(RTA 2001)·Zbl 1054.68077号
[3] Bansal,K.,Reynolds,A.,King,T.,Barrett,C.,Wies,T.:通过E-matching确定局部理论扩展。收录人:Kroening,D.,Psreanu,C.s.(编辑)计算机辅助验证,CAV 2015,计算机科学讲稿。第9207卷,第87-105页施普林格(2015)·Zbl 1381.68280号
[4] 巴雷特,C。;康威,CL;威特斯,M。;哈达兰。;Jovanović,D。;金,T。;雷诺兹,A。;Tinelli,C。;Gopalakrishnan,G.(编辑);Qadeer,S.(编辑),CVC4,No.6806,171-177(2011),柏林·doi:10.1007/978-3642-22110-14
[5] Barrett,C.、Stump,A.、Tinelli,C.:SMT-LIB标准版本2.0。爱荷华大学技术报告(2010年)·Zbl 1216.68163号
[6] Biere,A.,Heule,M.,van Maaren,H.:《可满足性手册》,第185卷。IOS出版社,阿姆斯特丹(2009)·Zbl 1183.68568号
[7] 比约纳,N.:Z3的工程理论。Yang,H.(编辑)《第九届亚洲编程语言与系统研讨会论文集》,APLAS 2011,《计算机科学讲义》,第7078卷,第4-16页。施普林格,柏林(2011)·兹比尔1232.68012
[8] Bobot,F.、Conchon,S.、Contejean,E.、Lescuyer,S.:在SMT求解器中实现多态性。收录于:SMT’08,ACM ICPS,第367卷,第1-5页。ACM,纽约(2008)
[9] Bradley,A.R.,Manna,Z.,Sipma,H.B.:阵列的决定因素是什么?参见:Emerson,E.A.、Namjoshi,K.S.(编辑)《第七届国际验证、模型检查和抽象解释会议论文集》(VMCAI 2006)。计算机科学课堂讲稿,第3855卷,第427-442页。柏林施普林格出版社(2006)·Zbl 1176.68116号
[10] Chatterjee,S.、Lahiri,S.K.、Qadeer,S.和Rakamarić,Z.:低级记忆模型和伴随的可达性谓词。国际期刊软件。技术工具。变压器。11(2), 105-116 (2009) ·doi:10.1007/s10009-009-0098-1
[11] de Moura,L.,Björner,N.:SMT求解器的高效E-matching。收录于:Pfenning,F.(编辑)CADE-21,LNCS,第4603卷,第183-198页。柏林施普林格出版社(2007)·Zbl 1213.68578号
[12] de Moura,L.,Björner,N.:工程DPLL(T)\[+\]+饱和。收录于:Armando,A.,Baumgartner,P.,Dowek,G.(编辑)IJCAR 2008,LNCS,第5195卷,第475-490页。柏林施普林格出版社(2008)·Zbl 1165.68479号
[13] de Moura,L.,Björner,N.:Z3:高效SMT求解器。在:Ramakrishnan,C.R.,Rehof,J.(编辑)TACAS 2008,LNCS,第4963卷,第337-340页。施普林格(2008)
[14] de Moura,L.,Björner,N.:广义高效数组决策程序。摘自:Biere,A.,Pixley,C.(编辑)《计算机辅助设计中的形式方法》,2009年。FMCAD 2009,第45-52页。IEEE(2009)
[15] Detlefs,D.,Nelson,G.,Saxe,J.B.:简化:程序检查的定理证明器。J.ACM 52(3),365-473(2005)·Zbl 1323.68462号 ·doi:10.1145/1066100.1066102
[16] Dross,C.,Conchon,S.,Kanig,J.,Paskevich,A.:触发器推理。摘自:第十届满意度模理论国际研讨会,SMT 2012,第22-31页(2012)·Zbl 1356.68187号
[17] Dross,C.,Filliâtre,J.C.,Moy,Y.:包含容器的正确代码。收录于:Gogolla,M.,Wolff,B.(eds.)《第五届国际测试与证明会议论文集》,TAP’11,《计算机科学讲稿》,第6706卷,第102-118页。施普林格,柏林(2011)·Zbl 1335.68052号
[18] Ganzinger,H.,Korovin,K.:理论实例化。摘自:Hermann,M.,Voronkov,A.(编辑)《程序设计、人工智能和推理的逻辑》,LPAR 2006,《计算机科学讲义》,第4246卷,第497-511页。柏林施普林格出版社(2006)·Zbl 1165.03315号
[19] Ge,Y.,Barrett,C.,Tinelli,C.:使用可满足性模理论求解量化验证条件。收录于:Pfenning,F.(编辑)CADE-21,LNCS,第4603卷,第167-182页。柏林施普林格出版社(2007)·Zbl 1213.68376号
[20] Ge,Y.,de Moura,L.:可满足模理论中量化公式的完全实例化。收录于:Bouajjani,A.,Maler,O.(编辑)计算机辅助验证,LNCS,第5643卷,第306-320页。施普林格(2009)·Zbl 1242.68280号
[21] Goel,A.,Krstić,S.,Fuchs,A.:用节俭公理实例化来决定数组公式。参见:第六届可满足模理论国际研讨会和第一届位精确推理国际研讨会联合研讨会会议记录,ACM ICPS,第12-17页。ACM,纽约(2008)
[22] Jacobs,S.,Kuncak,V.:关于公理规范的完整推理。在:Jhala,R.,Schmidt,D.(编辑)《VMCAI-12会议记录》,LNCS,第6538卷,第278-293页。柏林施普林格出版社(2012)·Zbl 1317.68117号
[23] Knuth,D.E.,Bendix,P.B.:泛代数中的简单单词问题。摘自:推理自动化,符号计算,第342-376页。柏林施普林格(1983)·Zbl 0188.04902号
[24] Korovin,K.:iProver——一种基于实例化的一阶逻辑定理证明器(系统描述)。载于:Armando,A.,Baumgartner,P.,Dowek,G.(编辑)《第四届国际自动推理联合会议论文集》(IJCAR 2008),《计算机科学讲义》,第5195卷,第292-298页。柏林施普林格出版社(2008)·Zbl 1165.68462号
[25] Korovin,K.:基于实例的推理:从理论到实践。收录于:Schmidt,R.A.(ed.)第22届自动扣除国际会议,CADE'22,计算机科学讲稿,第5663卷,第163-166页。柏林施普林格出版社(2009)
[26] Lynch,C.,Morawska,B.:自动判定。摘自:第17届IEEE计算机科学逻辑研讨会论文集,第7-16页。IEEE(2002)
[27] Lynch,C.、Ranise,S.、Ringeissen,C.、Tran,D.K.:自动可判定性和可组合性。Inf.计算。209(7), 1026-1047 (2011) ·Zbl 1216.68163号 ·doi:10.1016/j.ic.2011.03.005
[28] McPeak,S.,Necula,G.C.:通过局部等式公理的数据结构规范。收录于:Etessami,K.,Rajamani,S.K.(编辑)计算机辅助验证,CAV 2005,计算机科学讲义,第3576卷,第476-490页。柏林施普林格出版社(2005)·兹比尔1081.68584
[29] Moskal,M.:用触发器编程。摘自:《第七届满意度模理论国际研讨会论文集》,ACM ICPS,第20-29页。ACM,纽约(2009)
[30] Nelson,G.:程序验证技术。技术报告CSL81-10,施乐帕洛阿尔托研究中心(1981)
[31] Nieuwenhuis,R.,Oliveras,A.,Tinelli,C.:求解SAT和SAT模理论:从抽象的Davis-Putnam-Logemann-Loveland过程到DPLL(T)。《美国医学会期刊》53(6),937-977(2006)·Zbl 1326.68164号 ·doi:10.145/1217856.1217859
[32] Piskac,R.,Wies,T.,Zufferey,D.:使用SMT自动化分离逻辑。收录于:Sharygina,N.,Veith,H.(编辑)《计算机辅助验证》,CAV 2013,《计算机科学讲义》,第8044卷,第773-789页。施普林格,柏林(2013)
[33] Rümmer,P.:自由变量的E-matching。收录:Voronkov,A.,Björner,N.(编辑)《程序设计、人工智能和推理逻辑:第18届国际会议》,LPAR-18,LNCS,第7180卷,第359-374页。柏林施普林格出版社(2012)·Zbl 1352.68214号
[34] 苏特,P。;Steiger,R。;昆卡,V。;Jhala,R.(编辑);Schmidt,D.(ed.),可满足模理论中的基数约束集,第6538、403-418号(2011),柏林·Zbl 1317.68124号 ·doi:10.1007/978-3642-18275-428
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。