A generic logic for proving linearizability

Artem Khyzha*, Alexey Gotsman, Matthew Parkinson

*Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

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 relyguarantee. 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.

Original languageEnglish
Title of host publicationFM 2016
Subtitle of host publicationFormal Methods - 21st International Symposium, Proceedings
EditorsConstance Heitmeyer, Anna Philippou, Stefania Gnesi, John Fitzgerald
PublisherSpringer Verlag
Pages426-443
Number of pages18
ISBN (Print)9783319489889
DOIs
StatePublished - 2016
Externally publishedYes
Event21st International Symposium on Formal Methods, FM 2016 - Limassol, Cyprus
Duration: 9 Nov 201611 Nov 2016

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume9995 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference21st International Symposium on Formal Methods, FM 2016
Country/TerritoryCyprus
CityLimassol
Period9/11/1611/11/16

Fingerprint

Dive into the research topics of 'A generic logic for proving linearizability'. Together they form a unique fingerprint.

Cite this