paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Weak-consistency specification via visibility relaxation

通过可见性松弛的弱一致性规范
POPL 3(POPL)2019匹配度 3/10 · 该论文属于并发/内存模型与程序验证领域,提出了弱一致性规范的注解语言和验证方法,与用户关注的 PL 与 AI/LLM 交叉、浮点程序分析、贝叶斯程序分析等核心方向没有直接关系。仅在“兼具理论形式化和工程实现”的 PL 验证偏好上有一定边缘重合。引用 20 inbox
Michael Emmi, Constantin Enea
crossref: 2026-09-10

AI 速览

一句话:提出可见性松弛注释语言,为多一致性级别操作提供弱一致性规范并支持有效验证。

模块化推理依赖有效的软件规范,使客户端无需了解实现细节即可建立程序性质。然而现有方法无法刻画非原子操作提供的多种弱一致性保证,导致涉及此类操作的规范失效。本文提出一种规范软件模块的方法,支持操作满足多个不同一致性级别;核心是一种简单的注释语言,通过可见性松弛表达弱一致性操作,注释对操作间的可见性施加不同约束。为适配现代软件平台,作者提出称为 sequential happens-before consistency 的一致性新刻画,支持有效验证。实验上,为 Java 并发对象推导并验证松弛可见性规范,并表明更细粒度语言也无法给出更强规范,体现注释语言最优性。

问题
现有规范方法无法表达非原子操作提供的多种弱一致性保证,难以对调用此类操作的模块进行模块化推理。
方法
提出基于可见性松弛的注释语言来规范多一致性级别操作,并定义 sequential happens-before consistency 以支持有效验证。
评估
为 Java 并发对象推导并验证松弛可见性规范,并经验性证明更细粒度注释语言也不能给出更强规范。
原文摘要(Abstract)

Effective software specifications enable modular reasoning, allowing clients to establish program properties without knowing the details of module implementations. While some modules’ operations behave atomically, others admit weaker consistencies to increase performance. Consequently, since current methodologies do not capture the guarantees provided by operations of varying non-atomic consistencies, specifications are ineffective, forfeiting the ability to establish properties of programs that invoke non-atomic operations. In this work we develop a methodology for specifying software modules whose operations satisfy multiple distinct consistency levels. In particular, we develop a simple annotation language for specifying weakly-consistent operations via visibility relaxation, wherein annotations impose varying constraints on the visibility among operations. To integrate with modern software platforms, we identify a novel characterization of consistency called sequential happens-before consistency, which admits effective validation. Empirically, we demonstrate the efficacy of our approach by deriving and validating relaxed-visibility specifications for Java concurrent objects. Furthermore, we demonstrate an optimality of our annotation language, empirically, by establishing that even finer-grained languages do not capture stronger specifications for Java objects.

链接与引用

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

BibTeX
@article{paperbot673,
  title = {Weak-consistency specification via visibility relaxation},
  author = {Michael Emmi and Constantin Enea},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {3},
  number = {POPL},
  year = {2019},
  doi = {10.1145/3290373}
}