1、 分类号: 密级:编号:U D C:工学博士学位论文基于模态逻辑的模型检测技术研究博士研究生:陈志远指导教师:黄少滨教授学科、专业:计算机应用技术哈尔滨工程大学2014年3月分类号: 密级:编号:U D C:工学博士学位论文基于模态逻辑的模型检测技术研究博士研究生:陈志远指导教师:黄少滨教授学位级别:工学博士学科、专业:计算机应用技术所在单位:计算机科学与技术学院论文提交日期:2013年12月论文答辩日期:2014年03月学位授予单位:哈尔滨工程大学Classified Index:U.D.C:A Dissertation for the Degree of D.EngResearch of
2、Model Checking Technique based on Modal Logic Candidate: Chen ZhiyuanSupervisor: Prof. Huang ShaobinAcademic Degree Applied for: Doctor of EngineeringSpecialty: Computer Applied TechnologyDate of Submission: December, 2013Date of Oral Examination: March, 2014University: Harbin Engineering University
3、哈尔滨工程大学学位论文原创性声明本人郑重声明:本论文的所有工作,是在导师的指导下,由作者本人独立完成的。有关观点、方法、数据和文献的引用已在文中指出,并与参考文献相对应。除文中已注明引用的内容外,本论文不包含任何其他个人或集体已经公开发表的作品成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。作者(签字):日期: 年月日哈尔滨工程大学学位论文授权使用声明本人完全了解学校保护知识产权的有关规定,即研究生在校攻读学位期间论文工作的知识产权属于哈尔滨工程大学。哈尔滨工程大学有权保留并向国家有关部门或机构送交论文的复印件。本人允许哈尔滨工程
4、大学将论文的部分或全部内容编入有关数据库进行检索,可采用影印、缩印或扫描等复制手段保存和汇编本学位论文,可以公布论文的全部内容。同时本人保证毕业后结合学位论文研究课题再撰写的论文一律注明作者第一署名单位为哈尔滨工程大学。涉密学位论文待解密后适用本声明。本论文(在授予学位后即可 在授予学位 12个月后 解密后)由哈尔滨工程大学送交有关部门进行保存、汇编等。作者(签字): 导师(签字):日期: 年月日 年月日基于模态逻辑的模型检测技术研究摘 要模态逻辑是逻辑学领域最重要的分支之一。特别是克里普克可能世界语义学的建立,使模态逻辑有了准确可靠的语义模型,促进了模态逻辑的快速发展。模型检测技术是形式化验
5、证领域的重要组成部分,可以对软硬件系统的正确性进行高度自动化的验证,在软件工程领域和工业界备受瞩目。而如何避免状态空间爆炸问题、系统性质正确描述和长反例理解是模型检测技术面临的三个主要挑战。如何将模态逻辑这一强大工具有效地应用到模型检测技术中,提高对大型复杂系统进行检测的能力,从而保证系统的可靠性与安全性是一项意义重大的工作,同时也是理论计算机科学与软件工程领域的一个重要研究内容。针对该课题,本文主要在以下几个方面进行了研究:(1)提出了一种有限状态迁移系统模型的状态空间约简方法。该方法通过适当选取自函子的终结余代数,通过模态逻辑理论中的互模拟等价关系来产生最小的有限状态迁移系统模型。使得该迁
6、移系统能够完全等价地模拟原迁移系统的所有行为,保证系统验证的等效性,有效地避免对系统进行模型检测时的状态空间爆炸问题。(2)在 Global作用域下构造了一类可以正确描述系 统性质的抽象 CTL 公式模板。首先,通过对系统性质与系统行为进行研究,阐述了以组合命题作为模式与作用域参数的形式化描述研究的可行性与必要性。然后,通过对线性时序逻辑 LTL与分支时序逻辑CTL的研究,给出了用 CTL描述系统性质的方法。同时,通过重新定义的三个逻辑运算符来简化公式,使构造的 CTL公式模板更加简洁,易于理解。最后,构造出 Global作用域下所有模式的 CTL公式模板,用来生成由组合命题类、模式和作用域定
7、义的描述系统复杂性质和行为的 CTL公式。针对所构造的 CTL公式模板,给出了模板正确性的证明,说明该方法构造的 CTL公式模板可以生成正确的 CTL公式。(3)在 Before等作用域下构造了可以正确描述系统性质的抽象 CTL公式模板,从而完善了所有作用域与模式组合的 CTL公式模板类。首先,通过对将来区间逻辑 FIL的语法和语义研究,说明将来区间逻辑 FIL在刻画系统性质和系统行为方面表达能力的不足。特别是对 Prospec 描述结果的表示形式上,CTL无疑具有不可替代的优势,而且CTL也是现在众多优秀模型检测器的输入语言。然后,通过对系统行为进一步研究,扩展了接受组合命题作为参数的全部抽
8、象 CTL公式模板类,使 CTL公式模板构造完整化。接着,通过证明得出,所构造的 CTL公式模板可以正确地产生系统性质和行为描述的CTL公式,描述结果简洁有效。这些模板可以集成到现有的以 CTL为输入语言的模型哈尔滨工程大学博士学位论文检测器中,作为模型检测中的系统性质描述工具。最后,给出了 CTL公式模板的生成实例。(4)提出了一种基于带权偶图演化的不可满足子式求解算法,用来求解近似最小不可满足子式。首先,给出了偶图演化与带权偶图演化定义。然后,分析了不可满足合取范式的极大可满足子式与极小不可满足子式以及与最小不可满足子式之间的关系,并给出了它们之间的关系定理。最后,通过带权偶图演化的数学模
9、型,给出求解近似最小不可满足子式的算法,同时给出了该算法正确性的证明与分析。该方法以从无到有的方式自动生成近似最小不可满足子式的子句集合,能够快速准确地求解出 CNF公式的近似最小不可满足子式。从而最大程度地剔除系统不满足验证性质时反例中的无关变量,提高系统错误诊断的效率。关键词:模态逻辑;模型检测;模式;作用域;不可满足子式;偶图演化基于模态逻辑的模型检测技术研究AbstractModal logic is one of the most important branches of Logic. Especially, theestablishment of Kripke Possible
10、World let modal logic have a accurate and reliable semanticmodel, which promotes the rapid development of modal logic. Model checking technique isan important part of formal verification. It can automatically verify the correctness of bothsoftware systems and hardware systems, and thus has drawn gre
11、at attention in softwareengineering and industry. However, state space explosion, system properties description andlong counterexample understanding are three main challenges of model checking. In order toensure the reliability and security of large and complex systems, how to effectively applymodal
12、 logic to model checking to improve the ability of model checking is a significant work,and meanwhile, it is also an important topic in theoretical computer science and softwareengineering fields. Focus on this topic, the paper mainly studies the following aspects:(1) A state space reduction method
13、about finite state transition system is proposed. Themethod chooses proper final coalgebra of endofunctor, and generates the minimum finite statetransition system using the bisimulation equivalence in modal logic theory. The transitionsystem can completely equally simulate all the behavior of origin
14、al transition system, ensureverification equivalence and effectively avoid state space explosion.(2) A class of abstract CTL formula templates under Global scope to correctly describesystem properties are constucted. First, study system properties and behavior in order to provethe feasibility and ne
15、cessity of formally describing the pattern and scope parameters usingcomposite proposition. Then, through the studies about LTL and CTL, the paper presents anapproach to describe system properties using CTL. At the same time, redefining three logicoperators makes CTL formula templates simplified and
16、 easy to understand. Finally, the paperconstructs all the CTL formula templates under Global scope in order to generate the CTLformula for describing system properties and behavior defined by composite proposition class,pattern and scope. Aim at the CTL formula templates constructed, the paper prese
17、nts thecorrectness proof of the templates, thus proves the CTL formula templates can generatecorrect CTL formula.哈尔滨工程大学博士学位论文(3) It also constructs abstract CTL formula templates under Before scope to describesystem properties correctly. First, through the studies about the grammar and semantic of
18、FIL,the paper presents the shortness of FIL in describing system properties and behavior.Especially in the representation of the result described by Prospec, CTL has an irreplaceableadvantage, besides, CTL is the input language of many excellent model checkers. Then, withthe further study about comm
19、only used system behavior, the abstract CTL formula templatesare extended to receive composite proposition as parameters, which makes CTL templateconstruction complete. After that, the paper proves that the CTL templates constructed cancorrectly generate CTL formula that describes system properties
20、and behavior, and thedescription is brief and effective. These templates can be applied in existing model checkersusing CTL as input language, and act as system properties description tools. At last, the papergives the instance of CTL formula templates constructed.(4) An algorithm for deriving minim
21、um unsatisfiable subformula with weight-basedbipartite graph evolution is proposed, for deriving approximate minimum unsatisfiablesubformula. First, the paper presents the definition of bipartite graph evolution andweight-based bipartite graph evolution. Then, the paper analyzes the relationship amo
22、ngmaximum satisfiable subformula and minimum unsatisfiable subformula and smallestminimum unsatisfiable subformula, and gives the relation theorem. Finally, through themathematic model of weight-based bipartite graph evolution, the paper presents the approachfor deriving approximate minimum unsatisf
23、iable subformula, and presents the correctnessproof. The algorithm automatically generate the subclause collection of minimumunsatisfiable subformula, and derive approximate minimum unsatisfiable subformula fast andaccurately. Thus get rid of irrelevant variables in counterexamples as many as possib
24、le, andimprove the efficiency of error locating.Key words:Modal logic; Model checking; Pattern; Scope; Unsatisfiable subformula;Bipartite graph evolution基于模态逻辑的模型检测技术研究目录第 1章绪论 11.1研究背景及意义 11.2国内外研究现状 21.2.1现代模态逻辑 21.2.2形式化方法 91.2.3系统性质描述与验证 111.2.4不可满足子式求解 171.3主要研究内容201.4论文的组织结构21第 2章模态逻辑与余代数232.1
25、模态逻辑232.1.1语法与推理规则 232.1.2克里普克语义学 252.1.3正规模态逻辑系统 272.2余代数292.2.1基于状态的迁移系统 292.2.2余代数理论 302.2.3模态逻辑的余代数语义 322.3互模拟与行为等价332.4状态空间约简方法352.4.1自动机与 Kripke结构关系研究 352.4.2 Kripke框架与余代数关系研究 362.4.3系统状态约简方法 372.5本章小结39第 3章 Global作用域下系统性质描述研究 403.1 LTL与 CTL 413.1.1 LTL的语 法 413.1.2 LTL的语义 41哈尔滨工程大学博士学位论文3.1.3
26、CTL的语法423.1.4 CTL的语义433.2 SPS与 Prospec463.2.1模式描述系统 SPS 463.2.2 LTL与 CTL公式描述 483.2.3 Prospec与组合命题503.3以 CP为参数的模式与作用域研究 523.3.1包含 CP类的模式 523.3.2包含 CP类的作用域 533.4性质描述的 CTL模板543.4.1抽象 CTL模板构造的必要性543.4.2抽象 CTL模板类的构造543.5模板类正确性证明553.6本章小结60第 4章 Before等作用域下系统性质描述研究614.1模式与作用域层次关系研究614.1.1 SPS模式之 间关系的研究 614
27、.1.2 Prospec性质描述研究634.2 FIL描述与系统行为研究 664.2.1 FIL描述形式研究664.2.2系统常见行为研究 694.3模板类的扩展704.3.1 Before作用域下的模板类构造 704.3.2剩余作用域下的模板类构造 724.4模板类正确性证明734.5模板生成实例754.6本章小结76第 5章近似最小不可满足子式求解算法785.1反例理解与不可满足子式785.2相关定义795.3不可满足子式求解算法82基于模态逻辑的模型检测技术研究5.3.1消解原理与可满足性判定 825.3.2基于权值的偶图演化 855.3.3基于 WBBGE的近似最小不可满足子式求解算法
28、 885.4实验结果与分析905.5本章小结91结论92参考文献 94攻读博士学位期间发表的论文和取得的科研成果 105致谢 107个人简历 108第 1 章绪 论第1 章绪论1.1研究背景及意义模态逻辑(Modal logic )是逻辑学最为重要的分支之一1,它的思想、理论、技术和方法不仅在逻辑学中占有极其重要的地位,而且在其他领域,如计算机科学、语言学以及哲学等领域也都有非常广泛的应用,并成为这些领域相关部分的理论基础。尤其是借助于莱布尼茨的可能世界理论,克里普克创建了模态逻辑的可能世界语义学2,使得模态逻辑有了准确可靠的语义模型,促进了模态逻辑研究的快速发展,由此模态逻辑进入了一个全新的
29、发展时期,即现代模态逻辑发展时期,并产生了时序逻辑、道义逻辑和认知逻辑三大分支。随着伯努利开创性的将时序逻辑引入计算机科学中,对反应式系统和并发式系统进行性质描述和验证3,并取得了巨大的成功,开创了模态逻辑与计算机科学结合发展的新篇章。现如今,随着科技的进步、计算机科学与信息技术的发展,人们的生活发生了翻天覆地的变化,人类社会已经全面进入信息时代。各种软件系统和硬件设备参与到人类的生产活动中,并且已经进入到人们生活的各个环节,渗透到人类社会生产活动的方方面面。从人们的饮食起居、衣食住行等日常生活,如各种智能家用电器与汽车,到与国家安全和国防科技密切相关的武器防御系统、核安全控制系统以及航空航天
30、系统,这些都离不开各种硬件设备与相关的软件系统。正因如此,安全性和可靠性才变得至关重要,关系到人们的生命财产安全和国家的和谐与稳定。虽然计算机科学家和软件工程师们一直以来都在致力于设计更安全的设备和开发更可靠的系统,但是事实却不容乐观。由于软件系统可靠性和硬件设备安全性而引发的灾难举不胜举,其所产生的影响和造成的后果也都是极具破坏性的,不但造成了巨大的经济损失,而且也付出了生命的代价。表 1.1重点列出了几起由于系统设计错误或缺陷而引发灾难的事件4。除此以外,还有 IBM360操作系统开发失败、移动电话频 繁死机等事件也都是由软件系统故障和硬件系统缺陷造成的。由此可见,软件系统的可靠性和硬件设
31、备的安全性是至关重要的。随着软硬件系统在人们生产生活中的应用日渐广泛,以及系统规模的逐渐扩大,使得各系统之间关系更加复杂,各子系统之间的耦合关系与依赖程度更加明显。因此导致了软硬件系统的可靠性和安全性更加难以保证。这一直也是计算机科学家和软1哈尔滨工程大学博士学位论文件工程师们面临的一个严峻挑战。表 1.1系统失效导致的重大事故Table 1.1 List of some serious accidents国家/单位加拿大原子能公司事故名称 发生时间 事故原因 事故后果Therac-25医疗 1985年 06月 没有把计算机系统故障所造成的隐患考虑在内六件事故中,多名患者死亡或被严重辐射灼伤事
32、故 -1987年 01月防空系统拦截导弹失败跟踪软件运行 100小时后出现 0.36秒的舍入误差火箭主惯性参考系统在美 国 1991年 02月 造成 28名官兵死亡美国航空航天局ARIANE-5火 1996年 06月 64位浮点数转换为 16位直接经济损失 5亿美元箭自爆 有符号整数时越界美国航空航天局火星气象卫星失踪地面和卫星系统使用的弹道计算量纲不统一直接经济损失 1.25亿美元1999年 10月2003年 05月与控制中心失去联系超过 11分钟,与预定降落地点偏离 460多公里TMA1号飞船俄罗斯 系统软件错误导航系统失效而模型检测(Model checking)技术5,作为一种高度自动化的验证技术能对软硬件系统进行自动验证,并且能够在系统不满足验证性质时给出反例路径。通过对反例进行理解分析,可以找出系统存在的设计缺陷或错误。因此,模型检测技术从产生之初就备受关注,特别是随着其验证系统规模能力的提高而逐渐从理论界应用到工业界。现如今,模型检测技术已被应用于时序电路67、计算机硬件系统8、通信协议9、集成系统10、安全认证协议11 等方面的分析与验证中,取得了令人瞩