Skip to main content
QUICK REVIEW

[论文解读] On Reducing Linearizability to State Reachability

Ahmed Bouajjani, Michael Emmi|arXiv (Cornell University)|Feb 24, 2015
Distributed systems and fault tolerance参考文献 9被引用 7
一句话总结

本文提出了一种通用的约化方法,将线性化验证问题约化为特定原子数据类型(队列、栈、寄存器和互斥锁)的控制状态可达性问题,通过将规范违反表示为有限个正则语言的并集。其主要贡献在于无需线程数量限制即可实现线性化的可判定性,从而使得现有安全验证工具可用于并发对象的正确性验证。

ABSTRACT

Efficient implementations of atomic objects such as concurrent stacks and queues are especially susceptible to programming errors, and necessitate automatic verification. Unfortunately their correctness criteria - linearizability with respect to given ADT specifications - are hard to verify. Even on classes of implementations where the usual temporal safety properties like control-state reachability are decidable, linearizability is undecidable. In this work we demonstrate that verifying linearizability for certain fixed ADT specifications is reducible to control-state reachability, despite being harder for arbitrary ADTs. We effectuate this reduction for several of the most popular atomic objects. This reduction yields the first decidability results for verification without bounding the number of concurrent threads. Furthermore, it enables the application of existing safety-verification tools to linearizability verification.

研究动机与目标

  • 解决在具有无界线程的并发系统中线性化验证的不可判定性问题。
  • 开发一种方法,将特定抽象数据类型(ADT)规范的线性化检查约化为控制状态可达性问题。
  • 通过将线性化问题约化为可判定的可达性问题,使现有安全验证工具可用于线性化验证。
  • 证明在有限共享内存程序中,对于具有有限状态线程的并发实现,线性化问题的可判定性,且无需限制并发线程的数量。

提出的方法

  • 使用归纳规则定义原子数据类型规范,支持有效执行的增量构建。
  • 通过归纳规则的共正则性,将ADT规范的违反表示为有限个正则语言的并集。
  • 利用数据独立性,尽管字母表无界,仍通过有限状态自动机编码无界数据值。
  • 将线性化问题约化为实现与违反语言的正则语言之间交集的空性问题。
  • 利用与正则语言相交的封闭性,确保该约化在实现类之间保持成立。
  • 将问题约化为Petri网的可覆盖性问题,该问题可判定且为EXPSPACE完全。

实验结果

研究问题

  • RQ1线性化验证能否约化为特定原子数据类型的控制状态可达性问题?
  • RQ2在具有无界线程的并发实现中,线性化在何种条件下是可判定的?
  • RQ3尽管存在无界数据值,能否将原子对象的规范违反表示为正则语言?
  • RQ4能否在不绑定并发线程数量的前提下,利用现有验证工具验证线性化?
  • RQ5如何利用ADT的归纳规范来刻画非线性化的执行?

主要发现

  • 对于具有有限状态线程的有限共享内存程序,即使不绑定并发线程数量,线性化也是可判定的。
  • 约化为控制状态可达性使得现有安全验证工具可用于线性化检查。
  • 原子队列、栈、寄存器和互斥锁的规范违反可表示为有限个正则语言的并集。
  • 该方法依赖于数据独立性和归纳规则的共正则性,以处理无界数据值。
  • Petri网的可覆盖性问题捕获了约化后的问题,使其为EXPSPACE完全。
  • 该方法具有通用性,可复用于除已研究的四种ADT之外的其他ADT。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。