×

从动态规范合成大型动态并发程序。 (英语) Zbl 1392.68143号

摘要:我们提出了两种从时序逻辑规范合成大型并发程序的方法。第一种方法处理静态的有限状态并发程序,即进程集是固定的。它产生了一个无限族的静态有限状态并发程序。第二种方法处理动态并发程序,即可以在运行时创建和添加新进程。它生成一个单独的动态并发程序。动态并发程序可以看作是无限族静态程序的极限情况,因此第二种方法可以被视为对第一种方法的推广。我们的方法在算法上是高效的,在任何时候“活动”的(程序)组件进程的数量上具有复杂性多项式。我们没有显式地构造所有活动进程的自动机理论乘积,因此避免了状态爆炸相反,对于每一对相互作用的过程,我们构造(从成对规范)一个成对结构这体现了两个过程的相互作用。从每一对结构中,我们合成一个配对程序协调这两个过程。我们的第二种方法允许在运行时动态添加对程序。然后,它们与当前活动的成对程序“结合”,以“重新合成”程序。因此,我们可以在运行时添加新的行为,从而满足新的属性。此“增量合成”步骤的复杂性与进程总数无关;它只需要对pair程序中的两个进程及其相邻进程(即它们直接交互的其他进程)进行力学分析。因此,任何发生的状态爆炸都是两个过程产物的爆炸。我们建立了“大模型”定理,表明合成的全局程序继承了对程序的正确性。

MSC公司:

68号30 软件工程的数学方面(规范、验证、度量、需求等)
60年第68季度 规范和验证(程序逻辑、模型检查等)
68问题85 并发和分布式计算的模型和方法(进程代数、互模拟、转换网等)
PDF格式BibTeX公司 XML格式引用

参考文献:

[1] Almagor S,Kupferman O(2014)噪声输入下的格点合成。收录于:Muscholl A(ed)软件科学和计算结构基础第17届国际会议,FOSSACS 2014,作为欧洲软件理论和实践联合会议的一部分,ETAPS 2014,法国格勒诺布尔,2014年4月5日至13日。计算机科学论文集,课堂讲稿,第8412卷。柏林施普林格,第226-241页·Zbl 1405.68178号
[2] Anuchtanukul A,Manna Z(1994),反应模块的可实现性和合成。摘自:第六届计算机辅助验证国际会议记录。计算机科学课堂讲稿,第818卷。柏林施普林格,第156-169页
[3] Apt K,Olderog E(1997)顺序和并发程序的验证。柏林施普林格·Zbl 0869.68064号 ·doi:10.1007/978-1-4757-2714-2
[4] Arons T,Pnueli A,Ruah S,Xu J,Zuck L(2001)《自动计算归纳断言的参数化验证》。输入:CAV·Zbl 0991.68541号
[5] Attie PC、Bensalem S、Bozga M、Jaber M、Sifakis J、Zaraket FA(2013)《BIP中死锁预防的抽象框架》。摘自:Beyer D,Boreale M(eds)分布式系统的形式化技术-联合IFIP WG 6.1国际会议,FMOODS/FORTE 2013,作为第八届分布式计算技术国际联合会议的一部分,DisCoTec 2013,意大利佛罗伦萨,2013年6月3-5日,会议记录。计算机科学课堂讲稿,第7892卷。柏林施普林格,第161-177页·Zbl 1256.68016号
[6] Attie PC、Cherri A、Bab KDA、Sakr M、Saklawi J(2015)通过SAT求解进行模型和程序修复。输入:13。2015年9月21日至23日,美国德克萨斯州奥斯汀,2015年MEMOCODE,ACM/IEEE联合设计正式方法和模型国际会议。IEEE,第148-157页。工具下载地址:http://eshmuntool.blogspot.com/ ·Zbl 0179.23105号
[7] Attie PC,Emerson EA(2001),原子读/写计算模型并发系统的合成。ACM翻译程序Lang Syst 23(2):187-242。扩展摘要出现在1996年5月于费城举行的第15届ACM分布式计算原理研讨会上,第111-120页·Zbl 1321.68342号
[8] Attie PC,Lynch N.(2016)《动态输入/输出自动机:动态系统的正式组合模型》。信息与计算·Zbl 1344.68114号
[9] Attie PC(2016)Finite-state并发程序可以成对规范形式表示。Theor Compute Sci 619:1-31·Zbl 1335.68042号 ·doi:10.1016/j.tcs.2015.11.032
[10] Attie P、Arora A、Emerson EA(2004)《容错并发程序综合》。ACM传输程序语言系统26(1):125-185。扩展摘要出现在第17届ACM分布式计算原理研讨会(PODC)的会议记录中,墨西哥瓦拉塔港,第173-182页·Zbl 1333.68080号
[11] Attie P,Chockler H(2005)大型并发程序死锁自由的有效可验证条件。摘自:《2005年VMCAI会议记录:验证、模型检查和抽象解释》,巴黎·Zbl 1111.68495号
[12] Attie PC,Emerson EA(1998)《具有许多类似过程的并发系统的合成》。ACM Trans Program Lang Syst 20(1):51-115。数字对象标识代码:10.1145/271510.271519·doi:10.145/271510.271519
[13] Avni G,Kupferman O(2014)《基于成本的组件库合成》。收录于:Baldan P,Gorla D(eds)CONCUR 2014-货币理论第25届国际会议,CONCUR 2014,意大利罗马,2014年9月2-5日。计算机科学课程记录,第8704卷。柏林施普林格,第156-172页·Zbl 1417.68097号
[14] Bloem R、Jacobs S、Khalimov A、Konnov I、Rubin S、Veith H、Widder J(2015),参数化验证的可判定性。分布式计算理论综合讲座。Morgan&Claypool Publishers,圣拉斐尔·Zbl 1400.68006号
[15] Bonakdarpour,B。;博兹加,M。;Jaber,M。;Quilbeuf,J。;西法基斯,J。;卡洛尼,CP(编辑);Tripakis,S.(编辑),《从基于高级组件的模型到分布式实现》,209-218(2010),纽约
[16] Bonakdarpour B、Bozga M、Jaber M、Quilbeuf J、Sifakis J(2012)基于组件模型的自动化分布式实现框架。分布计算25(5):383-409·Zbl 1256.68016号 ·doi:10.1007/s00446-012-0168-6
[17] Bonakdarpour B,Kulkarni S,Abujarad F(2012)掩蔽容错分布式程序的符号综合。分布计算25(1):83-108·Zbl 1285.68016号 ·doi:10.1007/s00446-011-0139-3
[18] Browne M,Clarke EM,Grumberg O(1988)描述命题时序逻辑中的有限kripke结构。计算机科学理论59:115-131·Zbl 0677.03011号 ·doi:10.1016/0304-3975(88)90098-9
[19] Buccafurri F,Eiter T,Gottlob G,Leone N(1999)通过人工智能技术加强验证中的模型检查。Artif Intell艺术情报112(1):57-104·Zbl 0996.68104号 ·doi:10.1016/S0004-3702(99)00039-9
[20] Chatzieleftheriou G,Bonakdarpour B,Katsaros P,Smolka SA(2015)抽象模型修复。对数方法计算科学11(3):1-43·Zbl 1448.68292号
[21] Clarke EM、Emerson EA、Sistla P(1986)使用时序逻辑规范对有限状态并发系统进行自动验证。ACM Trans程序语言系统8(2):244-263。第十届美国计算机学会编程语言原理年会会议记录摘要·Zbl 0591.68027号
[22] Clarke EM、Grumberg O、Browne MC(1986)《关于具有许多相同有限状态过程的网络的推理》。摘自:第五届ACM分布式计算原理研讨会论文集。ACM,纽约,第240-248页·兹比尔0709.68610
[23] de Moura LM、Owre S、RueßH、Rushby JM、Shankar N、Sorea M、Tiwari A(2004)SAL 2。In:Alur R,Peled DA(eds)计算机辅助验证,第16届国际会议,2004年7月13日至17日,美国马萨诸塞州波士顿,CAV 2004。计算机科学论文集,讲稿,第3114卷。柏林施普林格,第496-500页·Zbl 1103.68644号
[24] Deng X,Dwyer MB,Hatcliff J,Mizuno M(2002)基于不变量的并发程序同步规范、合成和验证。摘自:第24届软件工程国际会议论文集,ICSE’02。ACM,纽约,第442-452页
[25] Dijkstra EW(1974)尽管采用分布式控制,但仍具有自稳定系统。通信ACM 17(11):643-644·Zbl 0305.68048号 ·数字对象标识代码:10.1145/361179.361202
[26] Dijkstra EW(1976)编程学科。Prentice-Hall公司,Englewood Cliffs·Zbl 0368.68005号
[27] Dijkstra EW(1982)《计算机文选:个人视角》。纽约州施普林格·Zbl 0497.68001号 ·doi:10.1007/978-1-4612-5695-3
[28] Dill D,Wong-Toi H(1990)从时间规范合成过程和调度程序。参加:计算机辅助验证国际会议,LNCS第531期。柏林施普林格,第272-281页·Zbl 0765.68148号
[29] Emerson EA(1990)时间与模态逻辑。摘自:Leeuwen JV(ed)理论计算机科学手册。形式模型和语义,第B卷,麻省理工学院出版社,剑桥·Zbl 1256.68016号
[30] Emerson EA,Kahlon V(2000)将模型检查从多到少进行简化。致:自动扣除会议,第236-254页·Zbl 0963.68109号
[31] Emerson EA、Namjoshi KS(1996)参数化同步系统的自动验证(扩展摘要)。包含:CAV,第87-98页
[32] Emerson EA,Clarke EM(1982)使用分支时间时序逻辑合成同步骨架。科学计算程序2:241-266·Zbl 0514.68032号 ·doi:10.1016/0167-6423(83)90017-5
[33] Emerson EA,Lei C(1987)模型检查模式:分支时间逻辑反击。科学计算程序8:275-306·Zbl 0615.68019号 ·doi:10.1016/0167-6423(87)90036-0
[34] Faghih F、Bonakdarpour B(2014)基于SMT的分布式自稳定系统合成。在:Felber P,Garg VK(eds)分布式系统的稳定、安全和保障第16届国际研讨会,SSS 2014,德国帕德博恩,2014年9月28日至10月1日。计算机科学课程记录,第8756卷。柏林施普林格,第165-179页
[35] Fekete A、Gupta D、Luchango V、Lynch N、Shvartsman A(1999)最终可序列化数据服务。《计算机科学》220:113-156。会议版出现在1996年ACM分布式计算原理研讨会上·Zbl 0933.68009号
[36] Finkbeiner B,Schewe S(2013),有界合成。国际软工具技术转移杂志15(5-6):519-539·Zbl 1141.68491号 ·doi:10.1007/s10009-012-0228-z
[37] Gascon A,Tiwari A(2014)简单自稳定系统的合成。摘自:Chatterjee K,Ehlers R,Jha S(eds)Proceedings第三次合成研讨会,SYNT 2014,奥地利维也纳,2014年7月23日至24日。EPTCS,第157卷,第5-16页
[38] Grumberg O,Long D(1994),模型检查和模块验证。ACM Trans程序语言系统16(3):843-871·数字对象标识代码:10.1145/177492.177725
[39] Hoare CAR(1969)计算机编程的公理基础。公共ACM 12(10):576-580 583·Zbl 0179.23105号 ·doi:10.1145/363235.363259
[40] Kupferman O、Madhusudan P、Thiagarajan P、Vardi M(2000)《反应环境中的开放系统:控制和合成》。摘自:第11届并发理论国际会议论文集,计算机科学课堂讲稿,第1877卷。柏林施普林格,第92-107页·兹比尔0999.68124
[41] Kupferman O,Vardi M(1997)《不完全信息合成》。摘自:第二届时间逻辑国际会议,曼彻斯特,第91-106页·兹比尔1448.68292
[42] Ladin R、Liskov B、Shrra L、Ghemawat S(1992)使用延迟复制提供高可用性。ACM事务计算系统10(4):360-391·doi:10.1145/138873.138877
[43] Liskov B(2001)《java程序开发》。Addison Wesley,雷丁
[44] Lustig Y,Vardi MY(2009),组件库合成。在:第12届软件科学和计算结构基础国际会议论文集:作为欧洲软件理论和实践联合会议的一部分举行。ETAPS 2009,FOSSACS’09。柏林施普林格,第395-409页·Zbl 1234.68260号
[45] Lynch NA(1996)分布式算法。伯灵顿摩根考夫曼·Zbl 0877.68061号
[46] Manna Z,Pnueli A(1995)无功系统安全性的时间验证。柏林施普林格·Zbl 1288.68169号 ·doi:10.1007/978-1-4612-4222-2
[47] Manna Z,Wolper P(1984)从时序逻辑规范合成通信过程。ACM Trans Program Lang Syst 6(1):68-93。还出现在纽约约克敦高地的程序逻辑研讨会会议记录中。计算机科学课堂讲稿,第131卷。柏林施普林格·Zbl 0522.68030号
[48] Pnueli A,Rosner R(1989)关于反应性模块的合成。摘自:第16届ACM编程语言原理研讨会论文集。ACM,纽约,第179-190页·Zbl 0686.68015号
[49] Pnueli A,Rosner R(1989)《异步反应模块的合成》。摘自:第16届ICALP会议记录。计算机科学课堂讲稿,第372卷。柏林施普林格,第652-671页·Zbl 0686.68015号
[50] Pnueli A,Ruah S,Zuck L(2001)使用不可见不变量进行自动演绎验证。输入:TACAS·Zbl 0978.68539号
[51] Schewe S,Finkbeiner B(2007),有界合成。In:Namjoshi KS、Yoneda T、Higashino T、Okamura Y(eds)《用于验证和分析的自动化技术》,第五届国际研讨会,2007年10月22日至25日,日本东京,ATVA 2007。计算机科学论文集,课堂讲稿,第4762卷。柏林施普林格,第474-488页·Zbl 1141.68491号
[52] Schneider F(1997)《顺序程序和并发程序的验证》。柏林施普林格·Zbl 0869.68064号
[53] Sistla AP,德国SM(1992)《关于具有多个过程的系统的推理》。美国临床医学杂志39(3):675-735。会议版出现在1987年计算机科学IEEE逻辑中·Zbl 0799.68078号
[54] Tarjan R(1972)深度-第一搜索和线性图算法。SIAM J计算1(2):146-160·Zbl 0251.05107号 ·数字对象标识代码:10.1137/0201010
[55] Wolper P(1986)在命题时序逻辑中表达程序的有趣特性。摘自:第13届ACM SIGACT-SIGPLAN编程语言原理研讨会论文集。86年流行。ACM,纽约,第184-193页
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。