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
基金
美国国家科学基金会;
关键词
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 条
  • [1] A semantics for concurrent separation logic
    Brookes, S
    CONCUR 2004 - CONCURRENCY THEORY, PROCEEDINGS, 2004, 3170 : 16 - 34
  • [2] A semantics for concurrent separation logic
    Brookes, Stephen
    THEORETICAL COMPUTER SCIENCE, 2007, 375 (1-3) : 227 - 270
  • [3] A Game Semantics of Concurrent Separation Logic
    Mellies, Paul-Andre
    Stefanesco, Leo
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2018, 336 : 241 - 256
  • [4] Concurrent Separation Logic and Operational Semantics
    Vafeiadis, Viktor
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2011, 276 : 335 - 351
  • [5] Revisiting Concurrent Separation Logic and Operational Semantics
    Soares, Pedro
    Ravara, Antonio
    de Sousa, Simao Melo
    23RD EUROMICRO INTERNATIONAL CONFERENCE ON PARALLEL, DISTRIBUTED, AND NETWORK-BASED PROCESSING (PDP 2015), 2015, : 484 - 491
  • [6] Concurrent Logic and Automata Combined: A Semantics for Components
    Bowles, J. K. F.
    Moschoyiannis, S.
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2007, 175 (02) : 135 - 151
  • [7] INDEPENDENCE AND CONCURRENT SEPARATION LOGIC
    Hayman, Jonathan
    Winskel, Glynn
    LOGICAL METHODS IN COMPUTER SCIENCE, 2008, 4 (01)
  • [8] Concurrent Incorrectness Separation Logic
    Raad, Azalea
    Berdine, Josh
    Dreyer, Derek
    O'Hearn, Peter W.
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2022, 6
  • [9] Granularity and Concurrent Separation Logic
    Hayman, Jonathan
    CONCUR 2011: CONCURRENCY THEORY, 2011, 6901 : 219 - 234
  • [10] Revisiting concurrent separation logic
    Soares, Pedro
    Ravara, Antonio
    de Sousa, Simao Melo
    JOURNAL OF LOGICAL AND ALGEBRAIC METHODS IN PROGRAMMING, 2017, 89 : 41 - 66