期刊文献+

基于分离逻辑的并行程序性质验证方法

Verification Method for Concurrent Programs Properties Based on Separation Logic
下载PDF
导出
摘要 随着多核多线程并行执行方式的普及,并行程序形式化验证的需求日显突出。并行程序验证中执行流程的不确定性使验证的内容与目标的关系难以确定,且从并行程序直接进行性质验证会导致验证规模大。为此,提出一种基于分离逻辑的新的验证方法。该方法根据分离逻辑的程序语义描述兼有解释语义和公理语义的特点,从验证的性质出发,把要验证的性质式转换成并行语句序列的逻辑组合式,并进行整理和化简;然后,利用分离逻辑公理系统对语句序列进行验证,用验证了的断言集来求出性质的真值。实例进一步说明,此方法更有效,同时也简化了验证的规模。 With the popularity of multi-core, multi-thread and parallel execution, there is an increasing demand for for-real verification of parallel programs. The uncertainty of execution flows in parallel program verification makes it diffi-cult to determine the relation between verification contents and targets. Verifying directly from the parallel programs will lead to large-scale verification. To this end, we proposed a new verification method based on separation logic. On the basis of the feature that the semantics of separation logic' s programming language are both interpretive and axiomatic, our method transforms the property formulae to be verified into logical composition expression, and reforms and simpli- fies them. Then separation logic's axiom system is used to verify the expression and calculate the value of property for-mulae with verified assertions. Case studies further illustrate that the proposed method is effective and can reduce verifi-cation scales.
出处 《计算机科学》 CSCD 北大核心 2013年第10期148-154,共7页 Computer Science
基金 国家自然科学基金项目(61070192 91018008 61170240) 北京自然科学基金(4122041) 国家高技术研究发展计划(2007AA01Z414) 中国人民大学科学研究基金(中央高校基本科研业务费专项资金)项目成果(+12XNLF06) 贵州自然科学基金项目(J[2011]2328)资助
关键词 霍尔逻辑 分离逻辑 并行程序 逻辑组合式 性质验证 Hoare logic, Separation logic,Concurrent program,Combination expression,Property checking
  • 相关文献

参考文献21

  • 1Hoare C A R. An Axiomatic Basis for Computer Programming [J]. Cornmunieations of the ACM, 1969,12(10):576-580.
  • 2O' Hearn P, Reynolds J, Yang H. Local Reasoning about Pro- grams that Alter Data Struetures[C]//Proceedings of 15th An- nual Conference of the European Association for Computer Sci- ence Logic. LNCS, Springer-Verlag, 2001 : 1-19.
  • 3Reynolds J C. Separation logic: A logic for shared mutable data structures. In LICS[C]//IEEE Computer Society. 2002 ; 55-74.
  • 4Reynolds J C. An overview of separation logie[C]//Meyer B, Woodcock J,ed. VSTTE, Lecture Notes in Computer Science. Springer, 2005,4171 ; 460-469.
  • 5O' Heam P W. Tutorial on separation logic [C] //Gupta A, Ma- lik S, eds. CAV. Springer, 2008,5123:19-21.
  • 6Ding L,Dong L D,Piao Y. Deadlock prevention policy of concur- rent programming base on Petri net[J]. Journal of Zhejiang Uni- versity: Science Edition, 2012,39(1).
  • 7Owieki S, Lamport L. Proving liveness properties of concurrent programs[J].ACM Transactions on Programming Languages and Systems(TOPLAS), 1982,4 (3) : 455-495.
  • 8Kleine M, Bartels B,Gothel T, et al. LLVM2CSP: extracting csp models from concurrent programs[M]. NASA Formal Methods, Springer Berlin Heidelberg, 2011 : 500-505.
  • 9肖美华,薛锦云.基于SPIN/Promela的并发系统验证[J].计算机科学,2004,31(8):201-203. 被引量:20
  • 10Witkowski T,Blane N,Kroening D, et al. Model checking con- current linux device drivers [C] // Proceedings of the Twenty- second IEEE/ACM International Conference on Automated Software Engineering. ACM, 2007 .. 501-504.

二级参考文献8

  • 1[1]Clarke E M, Grumberg O, Peled D A. Model checking, Cambridge,MA: MIT Press, 1999
  • 2[3]Holzmann G J. The SPIN Model Checker,Primer and Reference Manual. Addison-Wesley, 2003
  • 3[4]Berard B,Bidoit M,Finkel A. System and Software Verification:Model Checking Techniques and Tools. Springer-Verlag,2001
  • 4[5]http://netlib. bell-labs. com/netlib/spin
  • 5[6]SPIN Online Documentation, Concise Promela, Reference, RobGerth,Eindhoven University,Accessible from[5]
  • 6[7]Ruys T C. SPIN Tutorial: How to Become a SPIN Doctor,LNCS2318,2002
  • 7[8]http://www. acm. org/awards/ssaward. html
  • 8林惠民,张文辉.模型检测:理论、方法与应用[J].电子学报,2002,30(12A):1907-1912. 被引量:164

共引文献19

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部