×

泛型宇宙类型可调类型推理的计算复杂性分析。 (英语) Zbl 1435.68059号

摘要:我们解决了与推断特定类型系统(Java程序的通用宇宙类型(Generic Universe types,GUT))类型的计算复杂性相关的问题。GUT对许多应用程序都很有用,例如程序验证、线程同步和内存管理。然而,要求程序员显式地提供类型信息是很繁重的,这引发了自动推断类型的问题。与经典类型系统相比,所有权类型系统(如GUT)可能具有满足类型系统规则的多个类型。因此,推理是可调的,也就是说,程序员可以通过可中断的约束和/或部分注释来指示特定类型的偏好。那么,一个问题是类型推理问题是否存在有效的算法。在这项工作中,我们为GUT的类型推理问题建立了以下结果[W.迪特尔等,Lect。注释计算。科学。6813, 333–357 (2011;Zbl 1435.68061号)]. (1) 允许可破坏约束的可调类型推理问题是NP公司-困难,(2)像以前的工作一样,将问题编码为布尔可满足性(SAT),实际上是多项式时间的约简,(3)(mathbf{P}\neq\mathbf}NP})意味着对于任何(epsilon>0),在多项式时间的近似比为(n^{1-\epsilon})的情况下,问题都是不可近似的,以及(4)然而,对实际利益问题的一些限制版本,例如禁止可打破的约束P(P),其他人仍在NP公司-很难。我们的结果证明了先前基于SAT还原的方法是正确的。除了这些结果之外,考虑到先前工作中观察到的实际问题似乎很容易,我们解决了一个自然的问题,即什么样的硬实例可能看起来像,以及它们是否可能在实际中出现。我们通过设计一种方法来识别问题的一类硬实例,该方法从顶点覆盖问题的实例开始生成此类实例,已知NP公司-很难。然后,我们分析了此类实例的结构特性,并将其与类似大小的简单实例进行了比较。我们发现,对于我们考虑的实例类别,某些SAT结构参数可以预测经验硬度。

MSC公司:

68甲15 编程语言理论
68甲19 其他编程范式(面向对象、顺序、并发、自动等)
2017年第68季度 问题的计算难度(下限、完备性、近似难度等)
65年第68季度 算法和问题复杂性分析
68兰特 可满足性的计算方面
PDF格式BibTeX公司 XML格式引用
全文: DOI程序

参考文献:

[1] 迪特尔,W。;Drossopoulou,S。;Müller,P.,通用宇宙类型,(欧洲面向对象编程会议,欧洲面向对象程序设计会议,ECOOP(2007)),28-53
[2] 迪特尔,W。;恩斯特,医学博士。;Müller,P.,通用宇宙类型的可调静态推理,(欧洲面向对象编程会议,欧洲面向对象程序设计会议,ECOOP(2011)),333-357·Zbl 1435.68061号
[3] 迪特尔,W。;Müller,P.,《程序验证中的对象所有权》,(Clarke,D.;Noble,J.;Wrigstad,T.,《面向对象编程中的别名》,《计算机科学讲义》(2012))
[4] Bracha,G.,可插入类型系统(动态语言复兴研讨会(2004年))
[5] 黄,W。;迪特尔,W。;Milanova,A。;Ernst,M.D.,对象所有权的推断和检查,(欧洲面向对象编程会议,欧洲面向对象程序设计会议,ECOOP(2012)),181-206
[6] 迪特尔,W。;Müller,P.,《宇宙:JML的轻量级所有权》,J.Object Technol。,4, 8, 5-32 (2005)
[7] Karp,R.M.,组合问题中的可约性,(计算机计算复杂性(1972)),85-103·Zbl 1467.68065号
[8] Arora,S.,NP-hard问题的逼近性,(计算理论研讨会(1998),ACM),337-348·Zbl 1028.68065号
[9] Hástad,J.,《集团很难在(n^{1-\epsilon})内进行近似,(计算机科学基础(1996)),627-636
[10] 科尔曼,T.H。;Leiserson,C.E。;Rivest,R.L。;Stein,C.,算法导论(2009)·Zbl 1187.68679号
[11] SHARCNET公司
[12] Biere,A.,Lingeling,plingeling and treenging into the SAT competition 2013,(2013年SAT competition会议录,第B-2013-1卷(2013)),51-52,可从
[13] Nudelman,E。;莱顿-布朗,K。;胡斯,H。;德夫卡尔,A。;Shoham,Y.,《理解随机SAT:超越条款与变量之比》(Constraint Programming的原理与实践,第3258卷(2004)),438-452·Zbl 1152.68569号
[14] 塞尔曼,B。;米切尔,D.G。;Levesque,H.J.,生成难满足性问题,Artif。智力。,81, 1-2, 17-29 (1996) ·Zbl 1508.68347号
[15] 弗拉纳根,C。;Freund,S.N.,针对种族的类型推断,(静态分析研讨会(2004)),116-132·Zbl 1104.68399号
[16] 弗拉纳根,C。;Freund,S.N.,《检测大型程序中的竞争条件》,(2001年ACM SIGPLAN-SIGSOFT软件工具和工程程序分析研讨会论文集(2001),ACM),90-96
[17] Elder,M。;Liblit,B.,堆型是NP完全(2007年10月),威斯康星大学麦迪逊分校,理工大学,众议员1618
[18] Polishchuk,M。;利布利特,B。;Schulze,C.W.,《用于程序理解和调试的动态堆类型推断》,ACM SIGPLAN通知,第42卷,39-46(2007),ACM
[19] 加格农,E。;亨德伦·L·J。;Marceau,G.,Java字节码静态类型的有效推断,(静态分析研讨会(2000)),199-219·Zbl 0966.68563号
[20] Tiuryn,J.,子类型不等式,(计算机科学中的逻辑(1992)),308-315
[21] Palsberg,J。;Zhao,T.,记录串联和子类型的类型推断,Inf.Comput。,189, 1, 54-86 (2004) ·Zbl 1082.68013号
[22] Palsberg,J。;Jim,T.,简单自型的类型推断是NP-完全的,Nord.J.Compute。,4, 259-286 (1997) ·Zbl 1034.68528号
[23] 林肯,P。;Mitchell,J.C.,具有子类型的类型推理的算法方面,(编程语言原理。编程语言原理,POPL(1992)),293-304
[24] Hoang,M。;Mitchell,J.C.,《带有子类型的类型推理的下限》,(编程语言原理。编程语言原理,POPL(1995)),176-185
[25] 哈克,R。;Palsberg,J.,可放置对象的类型推断,(欧洲面向对象编程会议,欧洲面向对象程序设计会议,ECOOP,第37卷(2015)),371-395
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。