×

用偏序证明线性化能力。 (英语) Zbl 1485.68084号

Yang,Hongseok(编辑),《编程语言和系统》。2017年4月22日至29日在瑞典乌普萨拉举行的第26届欧洲编程研讨会(ESOP 2017),是欧洲软件理论与实践联合会议(ETAPS 2017)的一部分。诉讼程序。柏林:斯普林格。莱克特。注释计算。科学。10201, 639-667 (2017).
概述:线性化是并发数据结构正确性的普遍接受的概念。它要求通过线性化来证明数据结构的任何执行是合理的,线性化是指满足数据结构顺序规范的操作的线性顺序。证明线性化能力通常具有挑战性,因为操作在线性化顺序中的位置可能取决于未来的操作。这使得在证明中逐步构造线性化非常困难。
我们提出了一种新的证明方法,可以处理具有这种未来相关线性化的数据结构。我们的关键思想是逐步构造操作的线性顺序,而不是单个线性顺序,而是描述满足顺序规范的多重线性化的部分顺序。这允许延迟有关操作顺序的决策,以反映数据结构实现的行为。我们将我们的方法形式化为基于可靠保证推理的程序逻辑,并通过验证几个具有挑战性的数据结构来证明其有效性:Herlihy-Wing队列、TS队列和乐观集。
关于整个系列,请参见[Zbl 1360.68021号].

MSC公司:

68第05页 数据结构
03B70型 计算机科学中的逻辑
06年06月06日 部分订单,通用
PDF格式BibTeX公司 XML格式引用

参考文献:

[1] Dinsdale-Young,T。;多兹,M。;加德纳,P。;帕金森,MJ;瓦菲亚迪斯,V。;D’Hondt,T.,并发抽象谓词,ECOOP 2010-面向对象编程,504-528(2010),海德堡:施普林格·doi:10.1007/978-3-642-14107-2_24
[2] Dodds,M.、Haas,A.、Kirsch,C.M.:一个可扩展的、正确的时间戳堆栈。In:POPL(2015)·Zbl 1345.68116号
[3] Dongol,B.,Derrick,J.:验证线性化能力:一项比较调查。arXiv CoRR,1410.6268(2014)
[4] 菲利波维奇,I。;奥赫恩,PW;Rinetzky,N。;Yang,H.,并发对象的抽象,Theor。计算。科学。,411, 51-52, 4379-4398 (2010) ·Zbl 1209.68156号 ·doi:10.1016/j.tcs.2010.09.021
[5] Fishburn,PC,无差异区间不等的不及物无差异,J.Math。心理医生。,7, 144-149 (1970) ·Zbl 0191.31501号 ·doi:10.1016/0022-2496(70)90062-3
[6] Gotsman,A。;Yang,H。;库特尼,M。;Ulidowski,I.,所有权转移的线性化,CONCUR 2012-并发理论,256-271(2012),海德堡:施普林格·Zbl 1364.68136号 ·doi:10.1007/978-3-642-32940-119
[7] Haas,A.:通过时间戳快速并发数据结构。萨尔茨堡大学博士论文(2015)
[8] 海勒,S。;Herlihy,M。;卢昌科,V。;莫尔,M。;谢勒,WN;北沙维特。;安德森,JH;普伦西佩,G。;Wattenhofer,R.,《基于延迟并发列表的集合算法》,《分布式系统原理》,3-16(2006),海德堡:斯普林格出版社·数字对象标识代码:10.1007/117954903
[9] Hemed,N。;Rinetzky,N。;瓦菲亚迪斯,V。;Moses,Y.,并发感知线性化的模块化验证,分布式计算,371-387(2015),海德堡:施普林格,海德堡·Zbl 1394.68229号 ·doi:10.1007/978-3-662-48653-5_25
[10] TA Henzinger;塞兹金,A。;瓦菲亚迪斯,V。;D’Argenio,公关;Melgratti,H.,面向方面的线性化证明,CONCUR 2013-并发理论,242-256(2013),海德堡:施普林格·Zbl 1390.68213号 ·doi:10.1007/978-3-642-40184-8_18
[11] Herlihy,M.,Wing,J.M.:线性化:并发对象的正确性条件。In:ACM TOPLAS(1990)
[12] 霍夫曼,M。;沙列夫,O。;沙维特,N。;托瓦尔,E。;Tsigas,P。;Fouchal,H.,《篮子队列》,《分布式系统原理》,401-414(2007),海德堡:施普林格出版社·doi:10.1007/978-3-540-77096-1_29
[13] Jones,C.B.:(并行)程序的规范和设计。In:IFIP大会(1983年)
[14] Khyzha,A.,Dodds,M.,Gotsman,A.,Parkinson,M.:使用部分阶证明线性化能力(扩展版)。arXiv CoRR,1701.05463(2017)·Zbl 1485.68084号
[15] Liang,H.,Feng,X.:用非固定线性化点对线性化能力进行模块化验证。输入:PLDI(2013)
[16] Morrison,A.、Afek,Y.:x86处理器的快速并发队列。In:PPoPP(2013)
[17] O'Hearn,P.W.,Rinetzky,N.,Vechev,M.T.,Yahav,E.,Yorsh,G.:用后见验证线性化能力。输入:PODC(2010)·Zbl 1315.68068号
[18] 奥维基,SS;Gries,D.,并行程序公理证明技术I,《信息学报》,6319-340(1976)·Zbl 0312.68011号 ·doi:10.1007/BF00268134
[19] 谢尔霍恩,G。;Derrick,J。;Wehrheim,H.,并发数据结构线性化能力的一种可靠且完整的证明技术,ACM TOCL,15,4,31(2014)·Zbl 1354.68066号 ·doi:10.1145/2629496
[20] Turon,A.,Dreyer,D.,Birkedal,L.:在高阶并发逻辑中统一求精和老式推理。在:ICFP(2013)·Zbl 1323.68386号
[21] Turon,A.J.、Thamsborg,J.、Ahmed,A.、Birkedal,L.、Dreyer,D.:细粒度并发的逻辑关系。In:POPL(2013)·Zbl 1301.68181号
[22] Vafeiadis,V.:模块化细粒度并发验证。英国剑桥大学博士论文(2008年)。技术报告UCAM-CL-TR-726
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。