×

字符串静态分析的孪生自动机和正则表达式。 (英语) Zbl 1472.68039号

Henglein,Fritz(编辑)等人,《验证、模型检验和抽象解释》。第22届国际会议,VMCAI 2021,丹麦哥本哈根,2021年1月17日至19日。诉讼程序。查姆:斯普林格。莱克特。注释计算。科学。12597, 267-290 (2021).
摘要:在本文中,我们形式化了塔西斯这是一个新的抽象域,基于抽象解释理论,通过有限状态自动机近似字符串值。的主要新颖性塔西斯是它在字符串字母表上工作,而不是在单个字符上。一方面,这种方法需要对加宽运算符进行更复杂和精细的定义,以及字符串运算符的抽象语义。另一方面,它可以获得比最先进的方法更精确的结果。我们实现了一个原型塔西斯,我们将其应用于从一些最流行的Java库中提取的一些案例研究,这些库用于处理字符串值。实验结果证实塔西斯可以获得比现有分析更精确的结果。
关于整个系列,请参见[Zbl 1471.68017号].

MSC公司:

68号30 软件工程的数学方面(规范、验证、度量、需求等)
第68季度第45季度 形式语言和自动机
PDF格式BibTeX公司 XML格式引用

参考文献:

[1] Abdulla,P.A.等人:有效处理字符串编号转换。摘自:Donaldson,A.F.,Torlak,E.(编辑)《第41届ACM SIGPLAN编程语言设计与实现国际会议论文集》,PLDI 2020,英国伦敦,2020年6月15日至20日,第943-957页。ACM(2020年)。数字对象标识代码:10.1145/3385412.3386034
[2] Abdulla等人:验证的字符串约束。摘自:Biere,A.,Bloem,R.(eds.)计算机辅助验证——2014年第26届国际会议,CAV,2014年,作为维也纳逻辑夏季的一部分,VSL 2014,奥地利维也纳,2014年7月18-22日。诉讼程序。计算机科学课堂讲稿,第8559卷,第150-166页。斯普林格(2014)。数字对象标识代码:10.1007/978-3-319-08867-9_10·兹比尔1293.68018
[3] Abdulla,P.A.,Atig,M.F.,Diep,B.P.,Holík,L.,Janku,P.:无链字符串约束。发表于:Chen,Y.,Cheng,C.,Esparza,J.(编辑)《验证和分析自动化技术——第17届国际研讨会》,2019年10月28日至31日,台湾台北,会议记录。计算机科学课堂讲稿,第11781卷,第277-293页。斯普林格(2019)。doi:10.1007/978-3-030-31784-3-16·Zbl 1437.68131号
[4] Almashfi,N.,Lu,L.:分析javascript数组和对象的精确字符串域。摘自:2020年第三届信息和计算机技术国际会议(ICICT),第17-23页(2020年)
[5] 阿马迪尼,R。;恒河,G。;Stuckey,PJ,字符串约束求解的虚线字符串,Artif。智力。,289, 103368 (2020) ·Zbl 1504.68202号 ·doi:10.1016/j.artint.2020.103368文件
[6] 阿塞里,V。;Maffeis,S.,《打字杂耍的抽象域》,电子。理论注释。计算。科学。,331, 41-55 (2017) ·Zbl 1412.68033号 ·doi:10.1016/j.entcs.2017.02.003
[7] Arceri,V.,Mastroeni,I.:动态代码的声音抽象解释器。摘自:Hung,C.,Cerní,T.,Shin,D.,Bechini,A.(编辑)SAC 2020:第35届ACM/SIGAPP应用计算研讨会,在线活动,【捷克共和国布尔诺】,2020年3月30日至4月3日。第1979-1988页。ACM(2020年)。doi:10.1145/3341105.3373964
[8] 阿塞里,V。;马斯特罗尼,I。;Xu,S.,Ecmascript字符串操作程序的静态分析,应用。科学。,10, 3525 (2020) ·doi:10.3390/app10103525
[9] Arceri,V.,Olliaro,M.,Cortesi,A.,Mastroeni,I.:javascript程序字符串分析抽象域的完整性。收录于:Hierons,R.M.,Mosbah,M.(编辑)《计算的理论方面——2019-16国际学术讨论会》,2019年10月31日至11月4日,突尼斯哈马马特,会议记录。计算机科学讲义,第11884卷,第255-272页。斯普林格(2019)。doi:10.1007/978-3-030-32505-3-15·Zbl 07142680号
[10] Bartzis,C.,Bultan,T.:加宽算术自动机。In:Alur,R.,Peled,D.A.(eds.)计算机辅助验证,第16届国际会议,CAV 2004,波士顿,马萨诸塞州,美国,2004年7月13日至17日,会议记录。计算机科学课堂讲稿,第3114卷,第321-333页。斯普林格(2004)。doi:10.1007/978-3-540-27813-9_25·Zbl 1103.68606号
[11] Chen,T.,Hague,M.,Lin,A.W.,Rümmer,P.,Wu,Z.:具有复杂操作的字符串操作程序的路径可行性的决策过程。程序。ACM计划。语言3(POPL),49:1-49:30(2019)。数字对象标识代码:10.1145/3290362
[12] Choi,T.,Lee,O.,Kim,H.,Doh,K.:通过扩展方法实现的实用字符串分析器。收录于:小林,N.(编辑),《编程语言与系统》,第四届亚洲研讨会,2006年11月8日至10日,澳大利亚悉尼,APLAS,2006,会议记录。计算机科学课堂讲稿,第4279卷,第374-388页。斯普林格(2006)。doi:10.1007/11924661_23·Zbl 1168.68359号
[13] Christensen,A.S.,Möller,A.,Schwartzbach,M.I.:字符串表达式的精确分析。收录于:Cousot,R.(编辑)《静态分析》,第十届国际研讨会,SAS 2003,圣地亚哥,CA,USA,2003年6月11-13日,会议记录。《计算机科学讲义》,第2694卷,第1-18页。斯普林格(2003)。doi:10.1007/3-540-44898-5_1·Zbl 1067.68541号
[14] Cortesi,A.,Olliaro,M.:M字符串分段:C程序中字符串分析的一个精炼抽象域。参见:Pang,J.、Zhang,C.、He,J.和Weng,J.(编辑),2018年软件工程理论方面国际研讨会,2018年8月29日至31日,中国广州,第1-8页。IEEE计算机学会(2018)。doi:10.1109/TASE.2018.00009
[15] 科尔特斯,A。;Zanioli,M.,《抽象解释的加宽和缩小运算符》,计算。语言系统。结构。,37, 1, 24-42 (2011) ·Zbl 1218.68100号 ·doi:10.1016/j.cl.2010.09.001
[16] 科斯坦蒂尼,G。;费拉拉,P。;Cortesi,A.,字符串值静态分析的一组抽象域,Softw。实践。有效期:45、2、245-287(2015年)·doi:10.1002/spe.2218
[17] 库索,P.,库索,R.:抽象解释:通过构造或近似不动点对程序进行静态分析的统一格模型。收录人:Graham,R.M.,Harrison,M.A.,Sethi,R.(编辑)第四届ACM编程语言原理研讨会会议记录,美国加利福尼亚州洛杉矶,1977年1月,第238-252页。ACM(1977年)。doi:10.1145/512950.512973
[18] 库索,P.,库索,R.:程序分析框架的系统设计。摘自:Aho,A.V.,Zilles,S.N.,Rosen,B.K.(编辑)第六届美国计算机学会编程语言原理年会会议记录,美国德克萨斯州圣安东尼奥,1979年1月,第269-282页。ACM出版社(1979)。数字对象标识代码:10.1145/567752.567778
[19] 库索特,P。;Cousot,R.,《抽象解释框架》,J.Log。计算。,2, 4, 511-547 (1992) ·Zbl 0783.68073号 ·doi:10.1093/logcom/2.4.511
[20] Cousot,P.,Halbwachs,N.:程序变量之间线性约束的自动发现。收录于:Aho,A.V.,Zilles,S.N.,Szymanski,T.G.(编辑)美国亚利桑那州图森市第五届ACM编程语言原理年度研讨会会议记录,1978年1月,第84-96页。ACM出版社(1978)。doi:10.1145/512760.512770
[21] D’Antoni,L.,Veanes,M.:符号自动机最小化。参见:Jagannathan,S.,Sewell,P.(eds.)第41届ACM SIGPLAN-SIGACT编程语言原则年度研讨会,POPL 2014,美国加利福尼亚州圣地亚哥,2014年1月20日至21日,第541-554页。ACM(2014)。doi:10.1145/2535838.2535849·Zbl 1284.68347号
[22] Davis,M.D.,Sigal,R.,Weyuker,E.J.:可计算性、复杂性和语言:基金。Theor的。反恐精英。学术出版社专业版(1994)
[23] D’Silva,V.:为Automata加宽。理科硕士论文,仪器毛发信息UZH(2006)
[24] Giacobazzi,R.,Ranzato,F.,Scozzari,F.:完成抽象解释。《美国临床医学杂志》47(2),361-416(2000)。数字对象标识代码:10.1145/333979.333989·兹比尔1133.68370
[25] Madsen,M.,Andreasen,E.:动态字段访问的字符串分析。Cohen,A.(编辑)《编译器构造——2014年第23届国际会议》,CC,作为欧洲软件理论与实践联合会议的一部分,ETAPS 2014,法国格勒诺布尔,2014年4月5日至13日。诉讼程序。计算机科学讲义,第8409卷,第197-217页。斯普林格(2014)。doi:10.1007/978-3-642-54807-9_12
[26] Mastroeni,I.,Nikolic,D.:抽象程序切片:从理论到实现。Dong,J.S.,Zhu,H.(编辑)《形式方法与软件工程——第十二届形式工程方法国际会议》,2010年11月17日至19日,中国上海。诉讼程序。计算机科学课堂讲稿,第6447卷,第452-467页。施普林格(2010)。doi:10.1007/978-3-642-16901-4_30
[27] Mastroeni,I.,Zanardini,D.:抽象程序切片:一种基于抽象解释的程序切片方法。ACM事务处理。计算。日志。18(1), 7:1-7:58 (2017). doi:10.1145/3029052·Zbl 1367.68070号
[28] Midtgaard,J.,Nielson,F.,Niellson,H.R.:格值正则表达式的参数抽象域。摘自:Rival,X.(编辑)《静态分析-第23届国际研讨会》,2016年9月8日至10日,英国爱丁堡,SAS 2016,会议记录。计算机科学课堂讲稿,第9837卷,第338-360页。斯普林格(2016)。doi:10.1007/978-3-662-53413-7_17·Zbl 1394.68080号
[29] Park,C.、Im,H.、Ryu,S.:使用正则表达式域对jquery进行精确且可扩展的静态分析。参见:Ierusalimschy,R.(编辑)《第十二届动态语言研讨会论文集》,DLS 2016,荷兰阿姆斯特丹,2016年11月1日,第25-36页。ACM(2016)。doi:10.1145/2989225.2989228
[30] Preda,M.D.,Giacobazzi,R.,Lakhotia,A.,Mastroeni,I.:抽象符号自动机:可执行文件的混合语法/语义相似性分析。在:Rajamani,S.K.,Walker,D.(编辑)第42届ACM SIGPLAN-SIGCT编程语言原理年度研讨会论文集,POPL 2015,印度孟买,2015年1月15-17日,第329-341页。ACM(2015)。doi:10.1145/2676726.2676986·Zbl 1345.68100号
[31] Rival,X.,Mauborgne,L.:跟踪分区抽象域。ACM事务处理。程序。语言系统。29(5),26-es,2007年8月。doi:10.1145/1275497.1275501·Zbl 1108.68427号
[32] Veanes,M.:符号有限自动机的应用。收录人:Konstantinidis,S.(编辑)《自动化的实现和应用——第18届国际会议》,2013年7月16日至19日,加拿大新南威尔士州哈利法克斯,CIAA 2013。诉讼程序。《计算机科学讲义》,第7982卷,第16-23页。施普林格(2013)。doi:10.1007/978-3-642-39274-03·兹比尔1298.68160
[33] Wang,H.,Chen,S.,Yu,F.,Jiang,J.R.:字符串和长度约束分析的符号模型检查方法。收录于:Huchard,M.、Kästner,C.、Fraser,G.(编辑)《第33届ACM/IEEE自动化软件工程国际会议论文集》,ASE 2018,法国蒙彼利埃,2018年9月3-7日,第623-633页。ACM(2018)。数字对象标识代码:10.1145/3238147.3238189
[34] Yu,F。;Alkhalaf,M。;布尔坦,T。;俄亥俄州Ibarra,《基于自动化的符号字符串分析用于漏洞检测》,《形式方法》。系统。设计。,44, 1, 44-70 (2013) ·Zbl 1291.68272号 ·doi:10.1007/s10703-013-0189-1
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。