Proving Linearizability Using Reduction

06/21/2018
by   Tangliu Wen, et al.
0

Lipton's reduction theory provides an intuitive and simple way for deducing the non-interference properties of concurrent programs, but it is difficult to directly apply the technique to verify linearizability of sophisticated fine-grained concurrent data structures. In this paper, we propose three reduction-based proof methods that can handle such data structures. The key idea behind our reduction methods is that an irreducible operation can be viewed as an atomic operation at a higher level of abstraction. This allows us to focus on the reduction properties of an operation related to its abstract semantics. We have successfully applied the methods to verify 11 concurrent data structures including the most challenging ones: the Herlihy and Wing queue, the HSY elimination-based stack, and the time-stamped queue, and the lazy list. Our methods inherit intuition and simplicity of Lipton's reduction, and concurrent data structures designers can easily and quickly learn to use the methods.

READ FULL TEXT
POST COMMENT

Comments

There are no comments yet.

Authors

page 1

page 2

page 3

page 4

10/12/2021

A Simple Way to Verify Linearizability of Concurrent Stacks

Linearizability is a commonly accepted correctness criterion for concurr...
10/25/2018

Decoupling Lock-Free Data Structures from Memory Reclamation for Static Analysis

Verification of concurrent data structures is one of the most challengin...
04/25/2019

Performance Prediction for Coarse-Grained Locking

A standard design pattern found in many concurrent data structures, such...
02/02/2019

Transparent Concurrency Control: Decoupling Concurrency Control from DBMS

For performance reasons, conventional DBMSes adopt monolithic architectu...
12/05/2018

Sculptures in Concurrency

We give a formalization of Pratt's intuitive sculpting process for highe...
10/20/2017

Parallel Combining: Making Use of Free Cycles

There are two intertwined factors that affect performance of concurrent ...
02/19/2019

Layering Data Structures over Skip Graphs for Increased NUMA Locality

We describe an approach for blackbox concurrency based on layering user-...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.