Quantitative Separation Logic - A Logic for Reasoning about Probabilistic Programs.

arXiv: Logic in Computer Science(2018)

引用 22|浏览13
暂无评分
摘要
We present quantitative separation logic ($mathsf{QSL}$). In contrast to classical separation logic, $mathsf{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 $mathsf{QSL}$. This calculus is a conservative extension of both Reynoldsu0027 separation logic for heap-manipulating programs and Kozenu0027s / McIver and Morganu0027s weakest preexpectations for probabilistic programs. Soundness is proven with respect to an operational semantics based on Markov decision processes. Our calculus preserves Ou0027Hearnu0027s 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.
更多
查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要