Oracle semantics for concurrent separation logic

被引:0
|
作者
Hobor, Aquinas [1 ]
Appel, Andrew W. [1 ]
Nardelli, Francesco Zappa [2 ]
机构
[1] Princeton Univ, Princeton, NJ 08544 USA
[2] INRIA, Paris, France
来源
PROGRAMMING LANGUAGES AND SYSTEMS, PROCEEDINGS | 2008年 / 4960卷
基金
美国国家科学基金会;
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We define (with machine-checked proofs in Coq) a modular operational semantics for Concurrent C minor-a language with shared memory, spawnable threads, and first-class locks. By modular we mean that one can reason about sequential control and dataflow knowing almost nothing about concurrency, and one can reason about concurrency knowing almost nothing about sequential control and data-flow constructs. We present a Concurrent Separation Logic with first-class locks and threads, and prove its soundness with respect to the operational semantics. Using our modularity principle, we proved the sequential C.S.L. rules (those inherited from sequential Separation Logic) simply by adapting Appel & Blazy's machine-checked soundness proofs. Our Concurrent C minor operational semantics is designed to connect to Leroy's optimizing (sequential) C minor compiler; we propose our modular semantics as a way to adapt Leroy's compiler-correctness proofs to the concurrent setting. Thus we will obtain end-to-end proofs: the properties you prove in Concurrent Separation Logic will be true of the program that actually executes on the machine.
引用
收藏
页码:353 / +
页数:2
相关论文
共 50 条
  • [41] Specifying Concurrent Programs in Separation Logic: Morphisms and Simulations
    Nanevski, Aleksandar
    Banerjee, Anindya
    Delbianco, German Andres
    Fabregas, Ignacio
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2019, 3 (OOPSLA):
  • [42] Real-Time Rewriting Logic Semantics for Spatial Concurrent Constraint Programming
    Ramirez, Sergio
    Romero, Miguel
    Rocha, Camilo
    Valencia, Frank
    REWRITING LOGIC AND ITS APPLICATIONS, WRLA 2018, 2018, 11152 : 226 - 244
  • [43] Formalizing and Verifying Decentralized Systems with Extended Concurrent Separation Logic
    Ding, Yepeng
    Sato, Hiroyuki
    ALGORITHMS AND ARCHITECTURES FOR PARALLEL PROCESSING, ICA3PP 2020, PT I, 2020, 12452 : 480 - 494
  • [44] Interactive Proofs in Higher-Order Concurrent Separation Logic
    Krebbers, Robbert
    Timany, Amin
    Birkedal, Lars
    ACM SIGPLAN NOTICES, 2017, 52 (01) : 205 - 217
  • [45] Modular Verification of Safe Memory Reclamation in Concurrent Separation Logic
    Jung, Jaehwang
    Lee, Janggun
    Choi, Jaemin
    Kim, Jaewoo
    Park, Sunho
    Kang, Jeehoon
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2023, 7 (OOPSLA):
  • [46] Decidable entailment checking for concurrent separation logic with fractional permissions
    Lee Y.
    Nakazawa K.
    Computer Software, 2023, 40 (04) : 67 - 86
  • [47] Simuliris: A Separation Logic Framework for Verifying Concurrent Program Optimizations
    Gaeher, Lennard
    Sammler, Michael
    Spies, Simon
    Jung, Ralf
    Dang, Hoang-Hai
    Krebbers, Robbert
    Kang, Jeehoon
    Dreyer, Derek
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2022, 6 (POPL):
  • [48] Spirea: A Mechanized Concurrent Separation Logic for Weak Persistent Memory
    Vindum, Simon Friis
    Birkedal, Lars
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2023, 7 (OOPSLA):
  • [49] Reasoning about B+ Trees with Operational Semantics and Separation Logic
    Sexton, Alan
    Thielecke, Hayo
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2008, 218 (355-369) : 355 - 369
  • [50] Logic and semantics
    Moretti, Alberto
    REVISTA DE FILOSOFIA-MADRID, 2006, 31 (02): : 31 - 43