An Asynchronous soundness theorem for concurrent separation logic
Abstract
Concurrent separation logic (CSL) is a specification logic for concurrent imperative programs with shared memory and locks. In this paper, we develop a concurrent and interactive account of the logic inspired by asynchronous game semantics. To every program , we associate a pair of asynchronous transition systems and which describe the operational behavior of the Code when confronted to its Environment or Frame --- both at the level of machine states () and of machine instructions and locks (). We then establish that every derivation tree of a judgment defines a winning and asynchronous strategy with respect to both asynchronous semantics and . From this, we deduce an asynchronous soundness theorem for CSL, which states that the canonical map from the stateful semantics to the stateless semantics satisfies a basic fibrational property. We advocate that this provides a clean and conceptual explanation for the usual soundness theorem of CSL, including the absence of data races.
Cite
@article{arxiv.1807.08117,
title = {An Asynchronous soundness theorem for concurrent separation logic},
author = {Paul-André Melliès and Léo Stefanesco},
journal= {arXiv preprint arXiv:1807.08117},
year = {2018}
}
Comments
Full version of an extended abstract published at LICS 2018