2010
DOI: 10.1007/978-3-642-14295-6_40
|View full text |Cite
|
Sign up to set email alerts
|

Automatically Proving Linearizability

Abstract: This paper presents a practical automatic verification procedure for proving linearizability (i.e., atomicity and functional correctness) of concurrent data structure implementations. The procedure employs a novel instrumentation to verify logically pure executions, and is evaluated on a number of standard concurrent stack, queue and set algorithms.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
2

Citation Types

1
107
0

Year Published

2011
2011
2020
2020

Publication Types

Select...
7
1

Relationship

0
8

Authors

Journals

citations
Cited by 116 publications
(108 citation statements)
references
References 21 publications
(33 reference statements)
1
107
0
Order By: Relevance
“…We further show that we can use existing tools for proving classical linearizability (e.g., [16,2]) to establish our generalisation. To this end, we identify a class of linearization-closed properties that, when satisfied by a library, are also satisfied by any other library linearizing it.…”
Section: Introductionmentioning
confidence: 92%
See 2 more Smart Citations
“…We further show that we can use existing tools for proving classical linearizability (e.g., [16,2]) to establish our generalisation. To this end, we identify a class of linearization-closed properties that, when satisfied by a library, are also satisfied by any other library linearizing it.…”
Section: Introductionmentioning
confidence: 92%
“…We use this in §5 to harness existing linearizability checkers in reasoning about liveness properties. The linearizability of concurrent libraries according to the classical definition can be established using several logics and tools, e.g., based on separation logic [16,15] or TVLA [2]. These logics and tools reduce showing linearizability to proving an invariant relating the states of the implementation and the sequential specification.…”
Section: Concurrent Library Semantics and Linearizabilitymentioning
confidence: 99%
See 1 more Smart Citation
“…Like [25], our technique for handling values in queues need only consider a small number of data values (not an unbounded one), for which it is sufficient to track equalities. The approach is extended in [28] to automatically infer the position of linearization points: these have to be supplied in our approach.…”
Section: Introductionmentioning
confidence: 99%
“…Static analysis methods based on shape analysis [3,23] are not completely automated. A recent approach by [26] automatically is able to linearizability for unbounded heaps and threads but, reports limited success with concurrent lists.…”
Section: Introductionmentioning
confidence: 99%