×

利用Horn子句解决PLC软件的成分验证。 (英语) 兹比尔1435.68190

概要:现实世界的PLC软件是模块化的,由许多不同的功能块组成。然而,PLC软件验证的常用方法并没有利用这一点,而是采用内联或独立分析相同功能块类型的实例。随着约束Horn子句作为自动化程序验证的基础的出现,许多最先进的验证程序都是在它们的基础上建立的。我们说明了这种形式主义如何允许统一描述PLC程序语义和安全目标,这些目标源自反应系统安全基础。此外,我们给出了结果编码的自然扩展,从而可以对模块化软件进行组合推理。由于可编程逻辑控制器的循环执行,工程师对单个功能块的心智模型通常表现出状态机语义——将块的行为划分为不同的操作模式。我们说明了如何将这种模式空间和类似的高级知识与我们的构图特征相结合。我们通过描述PLC软件验证问题的特征,研究每种技术对模型检查性能的影响,这些问题包括非组合和组合方式(可能包括模式转换),并使用SMT求解器解决这些问题。对我们在PLCopen安全库示例上的原型实现的评估表明了所选形式和使用高级摘要的有效性。

MSC公司:

第68季度第60季度 规范和验证(程序逻辑、模型检查等)
68号30 软件工程的数学方面(规范、验证、度量、需求等)
68问题55 计算理论中的语义学
93C85号 控制理论中的自动化系统(机器人等)
PDF格式BibTeX公司 XML格式引用
全文: 内政部

参考文献:

[1] Apel S、Beyer D、Friedberger K、Raimondi F、von Rhein A(2013)《域类型:基于变量使用的抽象域选择》。In:硬件和软件:验证和测试-第九届国际海法验证会议,HVC 2013,以色列海法,2013年11月5-7日,会议记录,第262-278页
[2] Beckert B、Ulbrich M、Vogel-Heuser B、Weigl A(2015)《可编程逻辑控制器软件的回归验证》。In:形式方法和软件工程——第17届形式工程方法国际会议,ICFEM 2015,巴黎,法国,2015年11月3-5日,会议记录,第234-251页
[3] Tewodros A.Beyene。;科内留·波皮亚(Corneliu Popeea);Rybalchenko,Andrey,《通过Horn约束求解进行高效CTL验证》,《理论计算机科学电子论文集》,219,1-14(2016)·Zbl 1482.68134号 ·doi:10.4204/EPTCS.219.1
[4] Beyer D(2015)《软件验证和可验证证人》(2015年SV-COMP报告)。摘自:《系统构建和分析的工具和算法——第21届国际会议》,TACAS 2015,作为欧洲软件理论与实践联合会议的一部分,ETAPS 2015,英国伦敦,2015年4月11日至18日。会议记录,第401-416页
[5] Beyer,Dirk,C和Java程序的自动验证:SV-COMP 2019,系统构建和分析的工具和算法,133-155(2019),Cham:Springer International Publishing,Cham
[6] Beyer,D。;Stahlbauer,A.,基于Bdd的软件验证,国际软件工具技术转让,16,5,507-518(2014)·doi:10.1007/s10009-014-0334-1
[7] Beyer D、Henzinger TA、Théoduloz G(2007)《可配置软件验证:具体化模型检查和程序分析的收敛性》。在:计算机辅助验证,第19届国际会议,CAV 2007,德国柏林,2007年7月3-7日,会议记录,第504-518页·Zbl 1135.68466号
[8] Beyer D、Cimatti A、Griggio A、Keremoglu ME、Sebastiani R(2009)《通过大块编码进行软件模型检查》。收录:第九届计算机辅助设计形式方法国际会议论文集,FMCAD 2009,2009年11月15-18日,美国德克萨斯州奥斯汀,第25-32页
[9] Biallas S、Brauer J、Kowalewski S(2012)Arcade.plc:可编程逻辑控制器验证平台。参见:IEEE/ACM自动化软件工程国际会议,ASE’12,德国埃森,2012年9月3-7日,第338-341页
[10] Biallas S、Giacobbe M、Kowalewski S(2013)可编程逻辑控制器的谓词抽象。收录于:《工业关键系统的形式方法——第18届国际研讨会》,2013年9月23日至24日,西班牙马德里,FMICS 2013。会议记录,第123-138页
[11] 尼古拉·比约纳;阿里·古芬克尔(Arie Gurfinkel);肯·麦克米伦;Rybalchenko,Andrey,《程序验证的Horn子句求解器》,《逻辑和计算领域II》,24-51(2015),Cham:Springer International Publishing,Cham·Zbl 1465.68044号
[12] 布拉斯,A。;Gurevich,Y.,《存在固定点逻辑》,20-36(1987),柏林:施普林格出版社,柏林·Zbl 0647.03018号
[13] Bohlender,D。;Kowalewski,S.,《使用horn子句和模式抽象对plc软件进行组合验证》,IFAC-PapersOnLine,51,7,428-433(2018)·doi:10.1016/j.ifacol.2018.06.336
[14] Bohlender D,Kowalewski S(2018b)重启鲁棒工业控制软件的设计和验证。In:综合形式方法-第14届国际会议,2018年IFM,Maynooth,Ireland,2018年9月5-7日,Proceedings,pp 47-68
[15] Bohlender D、Simon H、Kowalewski S(2016)基于plcopen自动机的PLC安全应用的符号验证。收录于:第19届GI/ITG/GMM研讨会方法und Beschreibungssprachen zur Modellierung und Verifikation von Schaltungen und Systemen,2016年3月1日至2日,德国弗赖堡,第33-45页
[16] Bohlender D,Hamm D,Kowalewski S(2018)通过动态大块编码对PLC软件进行循环有界模型检查。摘自:2018年4月9日至13日,法国保罗,SAC,第33届ACM应用计算年会论文集,第1891-1898页
[17] Carter M、He S、Whitaker J、Rakamaric Z、Emmi M(2016)SMACK软件验证工具链。摘自:第38届国际软件工程会议记录,2016年ICSE,美国德克萨斯州奥斯汀,2016年5月14日至22日-附录卷,第589-592页
[18] Cavada R、Cimatti A、Dorigatti M、Griggio A、Mariotti A、Micheli A、Mover S、Roveri M、Tonetta S(2014)《数字符号模型检查器》。2014年7月18日至22日在奥地利维也纳举行的计算机辅助验证第26届国际会议,CAV 2014,作为维也纳逻辑夏季的一部分。诉讼,第334-342页
[19] 埃姆·克拉克;Klieber,W。;诺瓦切克,M。;Zuliani,P.,《模型检查与国家爆炸问题》,1-30(2012),柏林:施普林格出版社,柏林
[20] Darvas D、Fernandez Adiego B、Blanco E(2013)《将PLC程序转换为用于验证的正式模型》。欧洲核子研究组织EN-ICE-PLC技术代表
[21] Darvas D、Majzik I、Viñuela EB(2016)基于PLC的安全控制软件的正式验证。In:综合形式方法——第12届国际会议,2016年6月1日至5日,冰岛雷克雅未克IFM,2016,会议记录,第508-522页
[22] De Angelis E、Fioravanti F、Pettorossi A、Proietti M(2014)《Verimap:通过转换验证程序的工具》。在:系统构建和分析的工具和算法-第20届国际会议,TACAS 2014,作为欧洲软件理论和实践联合会议的一部分举行,ETAPS 2014,法国格勒诺布尔,2014年4月5日至13日。诉讼程序,第568-574页
[23] Dijkstra,Ew;Schölten,Cs,《最强后置条件》,209-215(1990),纽约:施普林格,纽约
[24] Eén n,Mishchenko A,Brayton RK(2011),高效实现面向属性的可达性。In:计算机辅助设计形式方法国际会议,FMCAD’11,奥斯汀,德克萨斯州,美国,2011年10月30日至11月2日,pp 125-134
[25] Frey G、Drath R、Schlich B、Eschbach R(2012)“安全自动机”——PLC安全应用开发的新规范语言。摘自:2012年9月17日至21日在波兰克拉科夫举行的2012年IEEE第17届新兴技术和工厂自动化国际会议记录,2012年ETFA,第1-8页
[26] Graf S,Saídi H(1997)用PVS构造抽象状态图。In:计算机辅助验证,第九届国际会议,1997年6月22日至25日,以色列海法CAV’97,会议记录,第72-83页
[27] Hoare,C.A.R.,《计算机编程的公理基础》,《ACM通信》,第12、10、576-580页(1969年)·Zbl 0179.23105号 ·doi:10.1145/363235.363259
[28] Hoder K,Björner N(2012)广义属性导向可达性。2012年6月17日至20日,意大利特伦托,第15届国际会议,《可满足性测试的理论与应用》。会议记录,第157-171页·Zbl 1273.68229号
[29] Komuravelli A,Björner N,Gurfinkel A,McMillan KL(2015)使用整数和数组上的horn子句对过程程序进行组合验证。收录于:《计算机辅助设计的形式方法》,FMCAD 2015,美国德克萨斯州奥斯汀,2015年9月27日至30日,第89-96页
[30] Lange T,Neuhäußer MR,Noll T(2013)加快可编程逻辑控制器代码的安全验证。In:硬件和软件:验证和测试-第九届国际海法验证会议,HVC 2013,以色列海法,2013年11月5-7日,会议记录,第44-60页
[31] 永克兰茨,O。;奥凯森,K。;费边,M。;袁,C.,《工业控制逻辑元件的形式化规范和验证》,IEEE Trans Automation Science and Engineering,7,3,538-548(2010)·doi:10.1010/TASE.2009.2031095
[32] Manna Z,Pnueli A(1995)《反应系统的临时验证——安全性》。施普林格·Zbl 1288.68169号
[33] McMillan KL(1993)符号模型检查。Kluwer公司·Zbl 0784.68004号
[34] Moon,I.,《逻辑验证用可编程逻辑控制器建模》,IEEE控制系统杂志,14,2,53-59(1994)·doi:10.1109/37.272781
[35] de Moura LM,Björner N(2008)Z3:一种高效的SMT求解器。在:《系统构建和分析的工具和算法》,第14届国际会议,TACAS 2008,作为欧洲软件理论和实践联合会议的一部分,ETAPS 2008,匈牙利布达佩斯,2008年3月29日至4月6日。诉讼,第337-340页
[36] Ovatman,T。;Aral,A。;Polat,D。;尤恩维尔,奥,《PLC软件验证的模型检查实践概述》,《软件和系统建模》,第15、4、937-960页(2016年)·doi:10.1007/s10270-014-0448-7
[37] PLCopen TC5(2006)安全软件,技术规范,第1部分:概念和功能块。PLCopen公司
[38] PLCopen TC5(2008)安全软件,技术规范,第2部分:用户示例。PLCopen公司
[39] Quinton S,Graf S(2008),基于合同的组件层次系统验证。摘自:第六届IEEE软件工程和形式方法国际会议,SEFM 2008,南非开普敦,2008年11月10日至14日,第377-381页
[40] Simon H,Kowalewski S(2018)PLC软件的模式感知协调测试。In:综合形式方法-第14届国际会议,2018年IFM,Maynooth,Ireland,2018年9月5-7日,Proceedings,pp 367-376
此参考列表基于出版商或数字数学图书馆提供的信息。它的项目与zbMATH标识符启发式匹配,并且可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。