pith. sign in

arxiv: 1609.01171 · v1 · pith:72HH2GJHnew · submitted 2016-09-05 · 💻 cs.PL · cs.DC· cs.LO

A Generic Logic for Proving Linearizability (Extended Version)

classification 💻 cs.PL cs.DCcs.LO
keywords linearizabilitylogicprovinggenericreasoningalgorithmsconcurrencyconcurrent
0
0 comments X
read the original abstract

Linearizability is a commonly accepted notion of correctness for libraries of concurrent algorithms, and recent years have seen a number of proposals of program logics for proving it. Although these logics differ in technical details, they embody similar reasoning principles. To explicate these principles, we propose a logic for proving linearizability that is generic: it can be instantiated with different means of compositional reasoning about concurrency, such as separation logic or rely-guarantee. To this end, we generalise the Views framework for reasoning about concurrency to handle relations between programs, required for proving linearizability. We present sample instantiations of our generic logic and show that it is powerful enough to handle concurrent algorithms with challenging features, such as helping.

This paper has not been read by Pith yet.

discussion (0)

Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.