A Separation Logic for Concurrent Randomized Programs

被引:28
作者
Tassarotti, Joseph [1 ]
Harper, Robert [1 ]
机构
[1] Carnegie Mellon Univ, Comp Sci Dept, Pittsburgh, PA 15213 USA
来源
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL | 2019年 / 3卷 / POPL期
关键词
separation logic; concurrency; probability;
D O I
10.1145/3290377
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We present Polaris, a concurrent separation logic with support for probabilistic reasoning. As part of our logic, we extend the idea of coupling, which underlies recent work on probabilistic relational logics, to the setting of programs with both probabilistic and non-deterministic choice. To demonstrate Polaris, we verify a variant of a randomized concurrent counter algorithm and a two-level concurrent skip list. All of our results have been mechanized in Coq.
引用
收藏
页数:30
相关论文
共 67 条
  • [1] Aguirre Alejandro, 2018, ESOP
  • [2] Appel Andrew W, 2014, PROGRAM LOGICS CERTI, DOI DOI 10.1017/CBO9781107256552
  • [3] Proofs of randomized algorithms in COQ
    Audebaud, Philippe
    Paulin-Mohring, Christine
    [J]. SCIENCE OF COMPUTER PROGRAMMING, 2009, 74 (08) : 568 - 589
  • [4] Barthe G., 2017, LPAR
  • [5] Coupling Proofs Are Probabilistic Product Programs
    Barthe, Gilles
    Gregoire, Benjamin
    Hsu, Justin
    Strub, Pierre-Yves
    [J]. ACM SIGPLAN NOTICES, 2017, 52 (01) : 161 - 174
  • [6] Barthe Gilles, 2016, ICALP, V107
  • [7] Barthe Gilles, 2012, MATH PROGRAM CONSTRU
  • [8] Barthe Gilles, 2015, LOGIC PROGRAMMING AR
  • [9] Barthe Gilles, 2017, 44 INT C AUT LANG PR 44 INT C AUT LANG PR, V102
  • [10] Batz Kevin, 2018, ABS180210467 CORR ABS180210467 CORR