paperbot · PL 论文追踪

全部论文 待读 收藏

P2 A Proof Recipe for Linearizability in Relaxed Memory Separation Logic

松弛内存分离逻辑中线性一致性的证明配方
PLDI 8(PLDI)2024匹配度 2/10 · 论文属于并发程序的形式化验证(弱内存分离逻辑与线性一致性证明),与用户核心关注的 LLM/Agent×静态分析/形式化验证、浮点程序分析×LLM、贝叶斯程序分析×LLM 均无直接交叉;仅在“形式化验证”这一宽泛主题上与 AI→PL 方向有较弱邻近性。引用 6 inbox
Sunho Park, Jaewoo Kim, Ike Mulder, Jaehwang Jung, Janggun Lee, Robbert Krebbers, Jeehoon Kang
dblp: 2026-09-10crossref: 2026-09-10

AI 速览

一句话:提出以对象修改序(OMO)为核心的证明配方,在 Coq 的 iRC11 分离逻辑中首次验证弱内存下多个并发对象的线性一致性。

线性一致性是并发对象正确性的事实标准,要求对象的所有操作表现得如同原子执行。近年来针对松弛内存一致性(RMC)的线性一致性规格不断增强,但由于乱序执行需要事件重排、选择性同步需要追踪视图传递,可扩展的证明方法始终缺失。本文在基于 Iris 的 iRC11 并发分离逻辑(Coq)中,为 Dang 等人提出的线性化历史规格给出了一套证明配方。其核心概念是对象修改序(OMO),它将 C11 内存模型中的修改序推广到对象局部场景,从而最小化事件重排所需证明的条件;OMO 还提供了新的 commit-with 关系,连接下层与上层库的线性化点,以支持在已有库之上构建的并发库的证明复用。作者在 Coq 中机械化该配方,首次验证了 Michael–Scott 队列、elimination stack 与 Folly 的 MPMC 队列在 RMC 下的线性一致性,并验证了自旋锁与原子引用计数比此前工作更强的规格。

问题
松弛内存一致性下的线性一致性规格日益强大,但乱序执行导致的事件重排与选择性同步导致的视图传递追踪,使得缺少可扩展的证明方法。
方法
在 Iris 的 iRC11 并发分离逻辑中构造面向线性化历史规格的证明配方,核心是对象局部的对象修改序(OMO)与连接上下层线性化点的 commit-with 关系,并在 Coq 中机械化。
评估
在 Coq 中实现该配方,首次验证 Michael–Scott 队列、elimination stack 和 Folly 的 MPMC 队列在 RMC 下的线性一致性,并给出自旋锁与原子引用计数强于先前工作的规格验证。
原文摘要(Abstract)

Linearizability is the de facto standard for correctness of concurrent objects–it essentially says that all the object’s operations behave as if they were atomic. There have been a number of recent advances in developing increasingly strong linearizability specifications for relaxed memory consistency (RMC), but scalable proof methods for these specifications do not exist due to the challenges arising from out-of-order executions (requiring event reordering) and selected synchronization (requiring tracking of view transfers). We propose a proof recipe for the linearizable history specifications by Dang et al . in the Iris-based iRC11 concurrent separation logic in Coq. Key to our proof recipe is the notion of object modification order (OMO) , which generalizes the modification order of the C11 memory model to an object-local setting. Using OMO we minimize the conditions that need to be proved for event reordering. To enable proof reuse for concurrent libraries that are built on top of others, OMO provides the novel notion of a commit-with relation that connects the linearization points of the lower and upper libraries. Using our recipe, we verify the linearizability of the Michael–Scott queue, the elimination stack, and Folly’s MPMC queue in RMC for the first time; and verify stronger specifications of a spinlock and atomic reference counting in RMC than prior work.

链接与引用

DOI 原文 · PDF(开放获取) · DBLP

BibTeX
@article{ParkKMJLKK24,
  title = {A Proof Recipe for Linearizability in Relaxed Memory Separation Logic},
  author = {Sunho Park and Jaewoo Kim and Ike Mulder and Jaehwang Jung and Janggun Lee and Robbert Krebbers and Jeehoon Kang},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {8},
  number = {PLDI},
  year = {2024},
  doi = {10.1145/3656384}
}