- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
模型检测中的偏序约简
摘要:检查并发系统的性质变得日益困难。随着验证方法的发展,一些复杂系统并发性越来越高,越来越难以理解。偏序约简方法被提出以减少自动验证并发系统所需要的时间和内存。文中介绍了偏序约简技术的主要概念和基本算法,介绍了其在LTL中的应用,提出了改进方法。
关键词:并发系统;模型检测;偏序简化;LTL;算法
中图分类号:TP311文献标识码:A文章编号:1009-3044(2009)26-7545-02
Partial Order Reduction in Model Checking
ZHU Xin-feng, LI Bin, WU Jun
(College of Computer Science and Engineering, Yangzhou University, Yangzhou 225009, China)
Abstract: Checking the properties of concurrent systems is an ever growing challenge. Along with the development of improved verification methods, some critical systems that require careful attention have become highly concurrent and intricate. Partial order reduction methods were proposed for reducing the time and memory required to automatically verify concurrent asynchronous systems. Some main concepts and algorithms are introduced in this paper, and improving methods are proposed in the paper.
Key words: concurrent systems; model checking; partial order reduction; LTL; algorithm
模型检测是一种形式化的软硬件验证技术。软件不同状态的个数,代表了不同状态变量的赋值,随着并发系统组件数量的增长急速增长,即称为所谓的状态爆炸问题,有图1所示。偏序简化技术是其中一种重要技术,本文对偏序简化技术作了一些介绍。
状态变迁系统是一个四元组(S,S0,T,L) 其中S为有限状态集合,S0为初始状态集合, T表示变迁关系,对任意一个α∈T, α?哿S×S,α(s,s) 表示s,s之间存在变迁α,也可以表示为s=α(s)。L:S-2AP 是一个赋值函数,用来表示状态对于原子命题的赋值。状态s能够发生的变迁的集合称为Enabled(s),从状态s开始的路径被定义为 π=s0α0 s1α1…,其中s=s0,对于任意一个i,αi(si,si+1)成立。
偏序简化的基本思想是找到enabled(s)的子集ample(s)来生成状态s的后继 ample(s)?哿enabled(s),通过选择可变迁子集,属性的正确性检查在简化了的状态空间和全状态空间中得以保持。图2所示即为由图1通过偏序约简得到的简化图。
1 几个定义
1.1 不依赖性:
独立性I定义为 I?哿T×T,?坌(α,β)∈I ,s∈S, α,β∈enabled(s)有如两个条件成立:
1) α∈enabled(β(s))且β∈enabled(α(s))相互之间不能使对方失效;
2) α(β(s))= β(α(s)),说明α, β之间的先后执行次序无关。
如果(α,β)∈I,ample(s)中就没有必要包含α, β两者,可只包含其中之一。
1.2 不可见性
一个变迁α∈T是不可见的当 对s, s∈S, s=α(s), L(s)=L(s),也就是说一个变迁在执行过程中没有改变原子命题的值就可以称该变迁是不可见的。对于两个独立变迁α, β而言,有下列等式成立
1) 如α不可见,L(s)=L(α(s)),L(β(s))=L(α(β(s)))
2) 如β不可见,L(s)=L(β(s)),L(α(s))=L(β(α(s)))
3) 如α, β不可见,L(s)=L(α(s))=L(β(s))=L(α(β(s)))
1.3 stuttering相等
stuttering相等性是与不可见性相类似的概念,是对执行路径而言的,?|(
文档评论(0)