一句话:证明 RGSep 程序逻辑在 release-acquire 弱内存一致性下仍然可靠,提供更简单的 RA 程序验证方法。
本文研究并发程序逻辑 RGSep 在弱内存模型下的可靠性。RGSep 结合 rely-guarantee 推理与分离逻辑,最初针对顺序一致性设计。作者证明,在 release-acquire(RA)一致性——C++11 并发模型中一个表现良好的子集——下,RGSep 仍然保持可靠性。该结果使开发者能够沿用 RGSep 的分离逻辑与依赖保证风格来推理 RA 程序,而无需采用当前支持弱内存的最先进程序逻辑,从而提供更简单的验证途径。论文以理论证明为主,并与现有支持弱内存的程序逻辑进行概念性比较,说明该方法在推理简洁性上的优势。
RGSep is a program logic for reasoning about the correctness of concurrent programs that combines rely-guarantee reasoning and separation logic. Although RGSep was initially developed for sequential consistency, we show that it is also sound under the much weaker release-acquire (RA) consistency model, which is a well-behaved subset of the C++11 concurrency model. Our result provides a simpler way to reason about RA programs than the state-of-the-art program logics that support weak memory consistency models.