首页> 外文会议>Annual IEEE Symposium on Logic in Computer Science >An Automata-Theoretic Approach for Model Checking Threads for LTL Propert
【24h】

An Automata-Theoretic Approach for Model Checking Threads for LTL Propert

机译:用于LTL属性的模型检查线程的自动机 - 理论方法

获取原文

摘要

In this paper, we propose a new technique for the verification of concurrent multi-threaded programs. In general, the problem is known to be undecidable even for programs with just two threads [1]. However, we exploit the observation that, in practice, a large fraction of concurrent programs can either be modeled as Pushdown Systems communicating solely using locks or can be reduced to such systems by applying standard abstract interpretation techniques or by exploiting separation of data from control. Moreover, standard programming practice guidelines typically recommend that programs use locks in a nested fashion. In fact, in languages like Java and C#, locks are guaranteed to be nested. For such a framework, we show, by using the new concept of Lock Constrained Multi-Automata Pair (LMAP), that pre-closures of regular sets of states can be computed efficiently. This is accomplished by reducing the pre-closure computation for a regular set of states of a concurrent program with nested locks to those for its individual threads. Leveraging this new technique then allows us to formulate a fully automatic, efficient and exact (sound and complete) decision procedure for model checking threads communicating via nested locks for indexed linear-time temporal logic formulae.
机译:在本文中,我们提出了一种验证并发多线程程序的新技术。通常,即使对于只有两个线程[1]的程序,也知道问题是不可识别的。然而,我们利用观察说明,在实践中,大部分并发程序可以被建模,因为通过应用标准抽象解释技术或通过从控制中利用数据分离来减少到这些系统的推动系统。此外,标准编程实践指南通常建议程序使用嵌套方式锁。事实上,在像Java和C#这样的语言中,保证锁定被嵌套。对于这样的框架,我们通过使用锁定约束多自动机对(LMAP)的新概念来显示,可以有效地计算常规状态集的预扣。这是通过减少与嵌套锁的并发程序的正常状态的预闭合计算来实现,以便为其各个线程进行嵌套程序。利用这种新技术,然后我们允许我们为模型检查线程进行全自动,高效和精确(声音和完整的)决策程序,以便通过嵌入的线性时间时间逻辑公式通信。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号