×

节省内存的定点计算。 (英语) Zbl 1474.68056号

Pichardie,David(编辑)等人,《静态分析》。第27届国际研讨会,SAS 2020,虚拟活动,2020年11月18日至20日。诉讼程序。查姆:斯普林格。莱克特。注释计算。科学。12389, 35-64 (2020).
总结:实际采用静态分析通常需要以精确性换取性能。本文的重点是在不牺牲精度或时间效率的情况下提高抽象解释的存储效率。在计算上,抽象解释将推导程序不变量的问题简化为计算一组方程的不动点。本文提出了一种在布尔顿克迭代策略中最小化内存占用的方法,布尔顿克的迭代策略是一种广泛使用的不动点计算技术。我们的技术对所使用的抽象领域是不可知的。我们证明,在计算相同结果的同时,我们的技术对于Bourdoncle的迭代策略来说是最优的(即,它导致最小的内存占用)。我们通过在一个名为米科斯扩展了最先进的抽象解释器IKOS。验证用户提供的断言时,米科斯显示与IKOS相比,峰值内存使用量平均减少到\(4.07\%)\(24.57倍)\)。在执行过程间缓冲溢出分析时,米科斯与IKOS相比,峰值内存使用量平均减少到了43.7%(2.29倍)。
关于整个系列,请参见[Zbl 1471.68022号].

MSC公司:

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

参考文献:

[1] Banko,M.、Cafarella,M.J.、Soderland,S.、Broadhead,M.和Etzioni,O.:从网络中提取开放信息。收录于:IJCAI,第7卷,第2670-2676页(2007年)
[2] Berant,J.,Dagan,I.,Goldberger,J.:类型蕴涵规则的全球学习。摘自:《计算语言学协会第49届年会论文集:人类语言技术》,第1卷,第610-619页。计算语言学协会(2011)
[3] Christensen,J.,Mausam,S.S.,Soderland,S.,Etzioni,O.:走向连贯的多文档摘要。收录于:HLT-NAACL,第1163-1173页。Citeser(2013)
[4] Del Corro,L.,Gemulla,R.:Clausie:基于子句的开放信息提取。摘自:第22届万维网国际会议记录,第355-366页。ACM(2013)
[5] Etzioni,O.,《无监督的网络命名实体提取:一项实验研究》,Artif。智力。,165,1,91-134(2005年)·doi:10.1016/j.artint.2005.03.001
[6] Fader,A.,Soderland,S.,Etzioni,O.:识别开放信息提取的关系。2011年7月27日至31日,英国苏格兰爱丁堡,自然语言处理实证方法会议记录(EMNLP 2011)
[7] Fader,A.,Zettlemoyer,L.,Etzioni,O.:基于策划和提取的知识库的开放式问题解答。摘自:《第20届ACM SIGKDD知识发现和数据挖掘国际会议论文集》,第1156-1165页。ACM(2014)
[8] Gabor Angeli,M.J.P.,Manning,C.D.:利用语言结构进行开放域信息提取。摘自:《计算语言学协会学报》(2015)
[9] Gamallo,P.,Garcia,M.,Fernández-Lanza,S.:基于依赖的开放信息提取。在:NLP无监督和半监督学习联合研讨会论文集,第10-18页。计算语言学协会(2012)
[10] Kim,J.T.,Moldovan,D.I.:从语料库中提取信息的语义模式获取。载:《第九届人工智能应用大会论文集》,第171-176页。IEEE(1993)
[11] Li,P.,Cai,W.,Huang,H.:用于抽象多文档摘要的弱监督自然语言处理框架:弱监督抽象多文档文摘。摘自:第24届ACM国际信息与知识管理会议记录,第1401-1410页。ACM(2015)
[12] Li,X.,Roth,D.:探索浅层解析的证据。参见:《2001年计算自然语言学习研讨会论文集》,第7卷,第6页。计算语言学协会(2001)
[13] Manning,C.D.、Surdeanu,M.、Bauer,J.、Finkel,J.,Bethard,S.J.、McClosky,D.:斯坦福大学自然语言处理工具包。摘自:计算语言学协会(ACL)系统演示,第55-60页(2014年)。http://www.aclweb.org/antology/P/P14/P14-5010
[14] Mausam,Schmitz,M.,Bart,R.,Soderland,S.,Etzioni,O.:信息提取的开放式语言学习。In:自然语言处理和计算自然语言学习实证方法会议记录(EMNLP-CONLL)(2012)
[15] Reddy,S。;拉帕塔,M。;Steedman,M.,《无问答对的大规模语义分析》,Trans。关联计算。语言学家。,2, 377-392 (2014) ·doi:10.1162/tacla_00190
[16] Ruppert,E。;Sack,H。;Blomqvist,E。;d'Aquin,M。;吉迪尼,C。;Ponzetto,SP;Lange,C.,《信息提取的无监督概念化和语义文本索引》,《语义网络》。最新进展和新领域,853-862(2016),Cham:Springer,Cham·doi:10.1007/978-3-319-34129-3_54
[17] Schoenmackers,S.,Etzioni,O.,Weld,D.S.,Davis,J.:从网络文本中学习一阶喇叭子句。摘自:《2010年自然语言处理实证方法会议记录》,第1088-1098页。计算语言学协会(2010)
[18] Soderland,J.C.S.,Mausam,G.B.:分级摘要:扩大多文档摘要。摘自:计算语言学协会第52届年会会议记录,第902-912页(2014)
[19] Stanovsky,G.,Mausam,I.D.:开放IE作为语义任务的中间结构(2015)
[20] Surdeanu,M.:TAC2013知识库总体评估概述:英语时隙填充和时间时隙填充。In:第六届文本分析会议(2013)
[21] Vo,D.T.,Bagheri,E.:开放信息提取。arXiv预印本arXiv:1607.02784(2016)
[22] Wu,F.,Weld,D.S.:使用维基百科进行公开信息提取。摘自:计算语言学协会第48届年会会议记录,第118-127页。计算语言学协会(2010)
[23] 亨利·J。;Monniaux,D。;Moy,M.,PAGAI:路径敏感静态分析仪,电子。注释Theor。计算。科学。,289, 15-25 (2012) ·doi:10.1016/j.entcs.2012.11.003
[24] Heo,K.,Oh,H.,Yang,H.:从静态分析生成的标记数据中学习八角形的可变聚类策略。摘自:Rival,X.(编辑)《静态分析-第23届国际研讨会》,2016年9月8日至10日,英国爱丁堡,SAS 2016,会议记录。计算机科学课堂讲稿,第9837卷,第237-256页。查姆施普林格(2016)。doi:10.1007/978-3-662-53413-7_12·Zbl 1425.68069号
[25] Jeannet,B.,Miné,A.:围裙:静态分析的数值抽象域库。收录:Bouajjani,A.,Maler,O.(编辑)计算机辅助验证,第21届国际会议,2009年6月26日至7月2日,法国格勒诺布尔,CAV 2009。诉讼程序。计算机科学课堂讲稿,第5643卷,第661-667页。斯普林格,海德堡(2009)。doi:10.1007/978-3-642-02658-4_52
[26] Kim,S.K.,Venet,A.J.,Thakur,A.V.:确定性并行不动点计算。PACMPL 4(POPL),14:1-14:33(2020年)。数字对象标识代码:10.1145/3371082
[27] Kim,S.K.,Venet,A.J.,Thakur,A.V.:内存效率定点计算(2020)。https://arxiv.org/abs/2009.05865
[28] Li,Y.,Albarghouthi,A.,Kincaid,Z.,Gurfinkel,A.,Chechik,M.:SMT求解器的符号优化。参见:Jagannathan,S.,Sewell,P.(eds.)第41届ACM SIGPLAN-SIGACT编程语言原则年度研讨会,POPL 2014,美国加利福尼亚州圣地亚哥,2014年1月20日至21日。第607-618页。ACM(2014)。doi:10.1145/2535838.2535857·Zbl 1284.68410号
[29] Miné,A.,《通过抽象解释对数值不变量进行静态推断的教程》,Found。趋势计划。语言,4,3-4,120-372(2017)·数字对象标识代码:10.1561/250000034
[30] Monniaux,D.:astrée静态分析器的并行实现。摘自:《编程语言与系统》,第三届亚洲研讨会,2005年APLAS,日本筑波,2005年11月2-5日,会议记录,第86-96页(2005)。doi:10.1007/115754677·Zbl 1159.68378号
[31] Naeem,N.A.,Lhoták,O.,Rodriguez,J.:IFDS算法的实际扩展。摘自:Gupta,R.(编辑)《编译器构造》,第19届国际会议,CC 2010,作为欧洲软件理论与实践联合会议的一部分举行,ETAPS 2010,塞浦路斯帕福斯,2010年3月20日至28日。诉讼程序。计算机科学课堂讲稿,第6011卷,第124-144页。施普林格,海德堡(2010)。doi:10.1007/978-3-642-11970-5_8
[32] 纳瓦斯,J.A.:《螃蟹:抽象的聚宝盆:抽象解释的语言不可知论图书馆》。https://github.com/seahorn/crab(2019年)
[33] Oh,H.,Heo,K.,Lee,W.,Lee-W.,Park,D.,Kang,J.,Yi,K.:全球稀疏分析框架。ACM Trans。程序。语言系统。36(3), 8:1-8:44 (2014). 数字对象标识代码:10.1145/2590811
[34] Oh,H.,Heo,K.,Lee,W.,Lee-W.,Yi,K.:类c语言稀疏全局分析的设计和实现。2012年6月11日至16日,中国北京,ACM SIGPLAN编程语言设计与实现会议,第229-238页(2012)。doi:10.1145/2254064.2254092
[35] Okasaki,C.,Gill,A.:快速可合并整数映射。摘自:ML研讨会,第77-86页(1998年)
[36] Ramalingam,G.,《识别几乎线性时间内的循环》,ACM Trans。程序。语言系统。,21, 2, 175-188 (1999) ·数字对象标识代码:10.1145/316686.316687
[37] Ramalingam,G.,On loops,支配者和支配边界,ACM Trans。程序。语言系统。,24, 5, 455-490 (2002) ·数字对象标识代码:10.1145/570886.570887
[38] Rastello,F.:关于稀疏中间表示:一些结构性质及其在实时编译中的应用。Inria Grenoble Rhóne-Alpes大学工程(2012年12月)。https://hal.inia.fr/hal-00761555里昂正常生活保障
[39] Reps,T.W.,Horwitz,S.,Sagiv,M.:通过图形可达性进行精确的过程间数据流分析。参见:1995年POPL会议记录:第22届ACM SIGPLAN-SIGACT编程语言原理研讨会,1995年1月23日至25日,美国加利福尼亚州旧金山,第49-61页(1995)。数字对象标识代码:10.1145/199448.199462
[40] Reps,T.W.,Sagiv,S.,Yorsh,G.:最佳变压器的符号实现。收录于:Steffen,B.,Levi,G.(编辑)《验证、模型检查和抽象解释》,第五届国际会议,VMCAI 2004,意大利威尼斯,2004年1月11日至13日,会议记录。计算机科学课堂讲稿,第2937卷,第252-266页。Springer,纽约(2004)。doi:10.1007/978-3-540-24622-021·兹比尔1202.68255
[41] Reps,T.W.,Thakur,A.V.:自动化抽象解释。收录人:Jobstmann,B.、Leino,K.R.M.(编辑)验证、模型检查和抽象解释-第17届国际会议,2016年VMCAI,美国佛罗里达州圣彼得堡,2016年1月17日至19日。诉讼程序。计算机科学讲义,第9583卷,第3-40页。斯普林格,海德堡(2016)。doi:10.1007/978-3-662-49122-5_1·Zbl 1475.68097号
[42] Seidl,H.,Vogler,R.:自顶向下求解器的三个改进。摘自:Sabel,D.,Thiemann,P.(eds.)《第20届声明性编程原则与实践国际研讨会论文集》,2018年PPDP,德国法兰克福,2018年9月3日至5日,第21:1-21:14页。ACM(2018)。数字对象标识代码:10.1145/3236950.3236967
[43] Singh,G.,Püschel,M.,Vechev,M.T.:快速进行数值程序分析。2015年6月15日至17日,美国俄勒冈州波特兰市,第36届ACM SIGPLAN编程语言设计与实现会议论文集,第303-313页(2015)。doi:10.1145/2737924.2738000
[44] Singh,G.,Püschel,M.,Vechev,M.T.:快速多面体抽象域。收录于:Castagna,G.,Gordon,A.D.(编辑)《第44届ACM SIGPLAN编程语言原则研讨会论文集》,2017年POPL,2017年1月18日至20日,法国巴黎,第46-59页。ACM(2017)。doi:10.1145/3009837.3009885·Zbl 1380.68131号
[45] Singh,G.,Püschel,M.,Vechev,M.T.:具有强化学习的快速数值程序分析。摘自:计算机辅助验证——2018年第30届国际会议,CAV,作为联邦逻辑会议的一部分,2018年7月14日至17日在英国牛津举行,FloC 2018,会议记录,第一部分,第211-229页(2018)。doi:10.1007/978-3-319-96145-3_12·Zbl 1511.68090号
[46] Singh,G.,Püschel,M.,Vechev,M.T.:分解数值抽象域的实用构造。摘自:《ACM编程语言2(POPL)学报》,55:1-55:28(2018)。数字对象标识代码:10.1145/3158143
[47] Tarjan,RE,路径压缩在平衡树上的应用,J.ACM,26,4,690-715(1979)·Zbl 0413.68063号 ·doi:10.1145/322154.322161
[48] 科技,K.:Codehawk。https://github.com/kestreltechnology/codehawk (2020)
[49] Thakur,A.V.,Elder,M.,Reps,T.W.:符号抽象的双边算法。参见:Miné,A.,Schmidt,D.(编辑)静态分析-第19届国际研讨会,2012年9月11日至13日,法国多维尔,SAS 2012。诉讼程序。计算机科学课堂讲稿,第7460卷,第111-128页。查姆施普林格(2012)。doi:10.1007/978-3-642-33125-110
[50] 塔库尔,AV;拉尔,A。;Lim,J。;Reps、TW、Posthat等:自动化抽象解释、Electron。注释Theor。计算。科学。,311, 15-32 (2015) ·doi:10.1016/j.entcs.2015.02.003
[51] Thakur,A.V.,Reps,T.W.:抽象操作的符号计算方法。收录:Madhusudan,P.,Seshia,S.A.(编辑)计算机辅助验证-第24届国际会议,2012年CAV,美国加利福尼亚州伯克利,2012年7月7日至13日。计算机科学讲义,第7358卷,第174-192页。施普林格,海德堡(2012)。doi:10.1007/978-3642-31424-7_17
[52] Venet,A.,Brat,G.P.:用于大型嵌入式C程序的精确高效的静态数组边界检查。2004年6月9日至11日,美国华盛顿特区,ACM SIGPLAN 2004年编程语言设计与实现会议记录,第231-242页(2004)。doi:10.1145/996841.996869
[53] Wang,K.,Hussain,A.,Zuo,Z.,Xu,G.H.,Sani,A.A.:Graspan:一个用于大规模系统代码过程间静态分析的基于单机磁盘的图形系统。摘自:《第二十二届编程语言和操作系统架构支持国际会议论文集》,2017年4月8日至12日,中国西安,2017年,第389-404页(2017)。数字对象标识代码:10.1145/3037697.3037744
[54] Weiss,C.,Rubio-González,C.,Liblit,B.:可扩展错误传播的数据库支持程序分析。参见:第37届IEEE/ACM国际软件工程会议,ICSE 2015,意大利佛罗伦萨,2015年5月16日至24日,第1卷。第586-597页(2015年)。doi:10.1109/ICSE.2015.75
[55] Zuo,Z.,Gu,R.,Jiang,X.,Wang,Z.、Huang,Y.、Wang,L.、Li,X.:Bigspa:云中高效的跨过程静态分析引擎。2019年IEEE国际并行和分布式处理研讨会,2019年IPDPS,巴西里约热内卢,2019月20日至24日,第771-780页。IEEE(2019)。doi:10.1109/IPDPS.2019.00086
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。