Quantitative Separation Logic A Logic for Reasoning about Probabilistic Pointer Programs

被引:26
|
作者
Batz, Kevin [1 ]
Kaminski, Benjamin Lucien [1 ]
Katoen, Joost-Pieter [1 ]
Matheja, Christoph [1 ]
Noll, Thomas [1 ]
机构
[1] Rhein Westfal TH Aachen, Aachen, Germany
关键词
quantitative separation logic; probabilistic programs; randomized algorithms; formal verification; quantitative reasoning;
D O I
10.1145/3290347
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We present quantitative separation logic (QSL). In contrast to classical separation logic, QSL employs quantities which evaluate to real numbers instead of predicates which evaluate to Boolean values. The connectives of classical separation logic, separating conjunction and separating implication, are lifted from predicates to quantities. This extension is conservative: Both connectives are backward compatible to their classical analogs and obey the same laws, e.g. modus ponens, adjointness, etc. Furthermore, we develop a weakest precondition calculus for quantitative reasoning about probabilistic pointer programs in QSL. This calculus is a conservative extension of both Ishtiaq's, O'Hearn's and Reynolds' separation logic for heap-manipulating programs and Kozen's/Mclver and Morgan's weakest preexpectatioris for probabilistic programs. Soundness is proven with respect to an operational semantics based on Markov decision processes. Our calculus preserves O'Hearn's frame rule, which enables local reasoning. We demonstrate that our calculus enables reasoning about quantities such as the probability of terminating with an empty heap, the probability of reaching a certain array permutation, or the expected length of a list.
引用
收藏
页数:29
相关论文
共 50 条
  • [1] Reasoning about probabilistic sequential programs in a probabilistic logic
    Ying, MS
    [J]. ACTA INFORMATICA, 2003, 39 (05) : 315 - 389
  • [2] Reasoning about probabilistic sequential programs in a probabilistic logic
    M. Ying
    [J]. Acta Informatica, 2003, 39 : 315 - 389
  • [3] Reasoning about data-parallel pointer programs in a modal extension of separation logic
    Nishimura, Susumu
    [J]. ALGEBRAIC METHODOLOGY AND SOFTWARE TECHNOLOGY, PROCEEDINGS, 2006, 4019 : 293 - 307
  • [4] Qualitative and Quantitative Reasoning in Hybrid Probabilistic Logic Programs
    Saad, Emad
    [J]. ISIPTA 07-PROCEEDINGS OF THE FIFTH INTERNATIONAL SYMPOSIUM ON IMPRECISE PROBABILITY:THEORIES AND APPLICATIONS, 2007, : 375 - 384
  • [5] It is declarative - On reasoning about logic programs
    Drabent, W
    [J]. LOGIC PROGRAMMING: PROCEEDINGS OF THE 1999 INTERNATIONAL CONFERENCE ON LOGIC PROGRAMMING, 1999, : 607 - 607
  • [6] Reasoning about Monotonicity in Separation Logic
    Timany, Amin
    Birkedal, Lars
    [J]. CPP '21: PROCEEDINGS OF THE 10TH ACM SIGPLAN INTERNATIONAL CONFERENCE ON CERTIFIED PROGRAMS AND PROOFS, 2021, : 91 - 104
  • [7] Probabilistic Logic for Reasoning About Actions in Time
    Dautovic, Sejla
    Doder, Dragan
    [J]. SYMBOLIC AND QUANTITATIVE APPROACHES TO REASONING WITH UNCERTAINTY, ECSQARU 2019, 2019, 11726 : 385 - 396
  • [8] Quantitative Separation Logic and programs with lists
    Bozga, Marius
    Iosit, Radu
    Perarnau, Swann
    [J]. AUTOMATED REASONING, PROCEEDINGS, 2008, 5195 : 34 - 49
  • [9] Quantitative Separation Logic and Programs with Lists
    Marius Bozga
    Radu Iosif
    Swann Perarnau
    [J]. Journal of Automated Reasoning, 2010, 45 : 131 - 156
  • [10] Quantitative Separation Logic and Programs with Lists
    Bozga, Marius
    Iosif, Radu
    Perarnau, Swann
    [J]. JOURNAL OF AUTOMATED REASONING, 2010, 45 (02) : 131 - 156