×

面向对象程序的基于类型的复杂性分析。 (英语) Zbl 1395.68087号

摘要:为通用面向对象编程语言引入了一个类型系统,以推断资源上限。得到了多项式时间可计算函数集的一个完善的刻画。因此,类型化程序的堆空间和堆空间需求也是有界多项式。这种类型的系统受到了以前关于隐式计算复杂性的工作的启发,使用了分层和无干扰技术。提出的方法有几个优点。首先,它为程序员提供了显式的大(O)多项式上界,因此使用它可以让程序员避免内存错误。其次,类型检查在多项式时间内是可判定的。最后,它具有很好的表达能力,因为它分析了大多数面向对象的特性,如继承、重载、重写和递归。此外,它可以处理由对象保护的循环,也可以扩展到改变控制流的语句,如break或return。

MSC公司:

68甲19 其他编程范式(面向对象、顺序、并发、自动等)
第68季度25 算法和问题复杂性分析
PDF格式BibTeX公司 XML格式引用

参考文献:

[1] 贝兰托尼,S。;Cook,S.,多时间函数的新递归理论表征,计算。复杂。,2, 97-110, (1992) ·Zbl 0766.68037号
[2] Leivant,D。;Marion,J.-Y.,《多重时间的Lambda演算特征》,Fundam。通知。,19, 1/2, 167-184, (1993) ·Zbl 0781.68059号
[3] 沃尔帕诺,D。;欧文,C。;Smith,G.,《安全流动分析的健全型系统》,J.Compute。安全。,4, 2/3, 167-188, (1996)
[4] E.海因里。;Péchoux,R.,《多项式时间中的对象》(Programming Languages and Systems,13th Asian Symposium,APLAS 2015,计算机科学讲义,第9458卷,(2015)),387-404·Zbl 1329.68069号
[5] Marion,J.-Y.,复杂度流分析的类型系统,(第26届IEEE计算机科学逻辑年度研讨会,LICS 2011,(2011)),123-132
[6] Igarashi,A。;皮尔斯,公元前。;Wadler,P.,《Featherweight Java:Java和GJ的最小核心演算》,ACM Trans。程序。语言系统。,23, 3, 396-450, (2001)
[7] Girard,J.-Y.,轻型线性逻辑,Inf.Comput。,143, 2, 175-204, (1998) ·Zbl 0912.03025号
[8] 库克,美国。;Rackoff,C.,受限机器上迷宫线程化的空间下限,SIAM J.Compute。,9, 3, 636-652, (1980) ·Zbl 0445.68038号
[9] 丹纳,N。;Royer,J.S.,Ramified结构递归和同位递归,CoRR
[10] E.海因里。;Marion,J.-Y。;Péchoux,R.,fork进程的基于类型的复杂性分析,(FOSSACS,计算机科学讲义,第7794卷,(2013)),305-320·Zbl 1260.68097号
[11] Leivant博士。;Marion,J.-Y.,《进化图结构及其隐式计算复杂性》(Automata,Languages,and Programming,ICALP 2013,计算机科学讲义,第7966卷,(2013)),349-360·Zbl 1334.68048号
[12] Niggl,K.-H。;Wunderlich,H.,证明命令式程序的多项式时间和线性/多项式空间,SIAM J.Compute。,35, 5, 1122-1147, (2006) ·Zbl 1100.68035号
[13] Moyen,J.-Y.,资源控制图,ACM Trans。计算。日志。,10,4,29:1-29:44,(2009年)·Zbl 1351.68077号
[14] 琼斯,N.D。;Kristiansen,L.,流动演算工作压力-复杂性分析的界限。计算。日志。,10, 4, (2009)
[15] 霍夫曼,M。;Jost,S.,基于类型的摊销堆空间分析,(ESOP,计算机科学讲义,第3924卷,(2006)),22-37·Zbl 1178.68143号
[16] 霍夫曼,M。;Rodriguez,D.,摊销堆空间分析的高效类型检查,(CSL,计算机科学讲义,第5771卷,(2009)),317-331·Zbl 1257.68051号
[17] 霍夫曼,M。;Jost,S.,一阶函数程序堆空间使用的静态预测,(编程语言原理研讨会,POPL 2003,(2003),ACM),185-197·Zbl 1321.68180号
[18] Jost,S。;哈蒙德,K。;Loidl,H.-W。;Hofmann,M.,高阶程序定量资源使用的静态确定,(编程语言原理研讨会,POPL 2010,(2010)),223-236·Zbl 1312.68039号
[19] 贝林格,L。;霍夫曼,M。;Momigliano,A。;Shkaravska,O.,堆消耗的自动认证,(LPAR,计算机科学讲义,第3452卷,(2004)),347-362·Zbl 1108.68374号
[20] 艾伯特·E。;阿雷纳斯,P。;Genaim,S。;普埃布拉,G。;Zanardini,D.,Costa:Java字节码成本和终止分析器的设计与实现,(FMCO,计算机科学讲义,第5382卷,(2008)),113-132
[21] 艾伯特·E。;阿雷纳斯,P。;Genaim,S。;普埃布拉,G。;Zanardini,D.,面向对象字节码程序的成本分析,Theor。计算。科学。,413, 1, 142-159, (2012) ·Zbl 1236.68042号
[22] 科尔斯滕·R。;O.什卡拉夫斯卡。;van Gastel,B。;黑山,M。;van Eekelen,M.C.J.D.,《为实时Java实现资源分析》(Java Technologies for real time and Embedded Systems,JTRES’12,(2012)),135-144
[23] Cachera,D。;Jensen,T。;Pichardie,D。;Schneider,G.,认证内存使用分析,(FM 2005:正式方法,计算机科学讲义,第3582卷,(2005)),91-106·Zbl 1120.68385号
[24] 艾伯特·E。;Genaim,S。;Gómez-Zamalloa Gil,M.,使用垃圾收集对语言进行实时堆空间分析,(2009年内存管理国际研讨会论文集,(2009),ACM),129-138
[25] 艾伯特·E。;Genaim,S。;Gómez-Zamalloa,M.,垃圾收集语言内存需求的参数推断,ACM Sigplan通知,第45卷,121-130,(2010),ACM
[26] 钦·W。;Nguyen,H。;秦,S。;Rinard,M.,面向对象程序的内存使用验证,(Static Analysis,SAS 2005,(2005)),70-86·Zbl 1141.68364号
[27] 霍夫曼,M。;Schöpp,U.,指针程序和无向可达性,(第24届IEEE计算机科学逻辑研讨会,LICS 2009,(2009),IEEE计算机学会),133-142
[28] 霍夫曼,M。;Schöpp,U.,带迭代的纯指针程序,ACM Trans。计算。日志。,11, 4, (2010) ·Zbl 1351.68101号
[29] Ben-Amram,A.M.,尺寸变化终止,单调性约束和排序函数,Log。方法计算。科学。,6, 3, (2010) ·Zbl 1191.68179号
[30] Ben-Amram,A.M。;Genaim,S。;Masud,A.N.,《关于整数循环的终止》,(验证、模型检查和抽象解释,VMCAI 2012,计算机科学讲义,第7148卷,(2012)),72-87·Zbl 1325.68056号
[31] 库克,B。;Podelski,A。;Rybalchenko,A.,《终结者:超越安全》,(计算机辅助验证,CAV 2006,计算机科学讲稿,第4144卷,(2006)),415-426
[32] Podelski,A。;Rybalchenko,A.,转移谓词抽象和公平终止,(编程语言原理研讨会,POPL 2005,(2005),ACM),132-144·Zbl 1369.68152号
[33] Gulwani,S.,《速度:符号复杂性界限分析》,(计算机辅助验证,CAV 2009,计算机科学讲义,第5643卷,(2009)),51-62·兹比尔1242.68121
[34] Gulwani,S。;Mehra,K.K。;Chilimbi,T.M.,《速度:程序计算复杂性的精确有效静态估计》,(编程语言原理研讨会,POPL 2009,(2009),ACM),127-139·Zbl 1315.68095号
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。