A Simple Way to Verify Linearizability of Concurrent Stacks

10/12/2021
by   Tangliu Wen, et al.
0

Linearizability is a commonly accepted correctness criterion for concurrent data structures. However, verifying linearizability of highly concurrent data structures is still a challenging task. In this paper, we present a simple and complete proof technique for verifying linearizability of concurrent stacks. Our proof technique reduces linearizability of concurrent stacks to establishing a set of conditions. These conditions are based on the happened-before order of operations, intuitively express the LIFO semantics and can be proved by simple arguments. Designers of concurrent data structures can easily and quickly learn to use the proof technique. We have successfully applied the method to several challenging concurrent stacks: the TS stack, the HSY stack, and the FA stack, etc.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
06/21/2018

Proving Linearizability Using Reduction

Lipton's reduction theory provides an intuitive and simple way for deduc...
research
01/13/2023

The Commutativity Quotients of Concurrent Objects

Concurrent objects form the foundation of many applications that exploit...
research
09/12/2021

Verifying Concurrent Multicopy Search Structures

Multicopy search structures such as log-structured merge (LSM) trees are...
research
09/19/2019

Proof Pearl: Magic Wand as Frame

Separation logic adds two connectives to assertion languages: separating...
research
05/15/2019

Quantifiability: Concurrent Correctness from First Principles

Architectural imperatives due to the slowing of Moore's Law, the broad a...
research
05/10/2018

Order out of Chaos: Proving Linearizability Using Local Views

Proving the linearizability of highly concurrent data structures, such a...
research
07/10/2023

Visibility and Separability for a Declarative Linearizability Proof of the Timestamped Stack: Extended Version

Linearizability is a standard correctness criterion for concurrent algor...

Please sign up or login with your details

Forgot password? Click here to reset