Putting Strong Linearizability in Context: Preserving Hyperproperties in Programs that Use Concurrent Objects

05/28/2019
by   Hagit Attiya, et al.
0

It has been observed that linearizability, the prevalent consistency condition for implementing concurrent objects, does not preserve some probability distributions. A stronger condition, called strong linearizability has been proposed, but its study has been somewhat ad-hoc. This paper investigates strong linearizability by casting it in the context of observational refinement of objects. We present a strengthening of observational refinement, which generalizes strong linearizability, obtaining several important implications. When a concrete concurrent object refining another, more abstract object - often sequential - the correctness of a program employing the concrete object can be verified by considering its behaviors when using the more abstract object. This means that trace properties of a program using the concrete object can be proved by considering the program with the abstract object. This, however, does not hold for hyperproperties, including many security properties and probability distributions of events. We define strong observational refinement, a strengthening of refinement that preserves hyperproperties, and prove that it is equivalent to the existence of forward simulations. We show that strong observational refinement generalizes strong linearizability. This implies that strong linearizability is also equivalent to forward simulation, and shows that strongly linearizable implementations can be composed both horizontally (i.e., locality) and vertically (i.e., with instantiation). For situations where strongly linearizable implementations do not exist (or are less efficient), we argue that reasoning about hyperproperties of programs can be simplified by strong observational refinement of abstract objects that are not necessarily sequential.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/30/2021

On Strong Observational Refinement and Forward Simulation

Hyperproperties are correctness conditions for labelled transition syste...
research
06/21/2018

Strict Linearizability and Abstract Atomicity

Linearizability is a commonly accepted consistency condition for concurr...
research
09/16/2021

Trillium: Unifying Refinement and Higher-Order Distributed Separation Logic

We present a unification of refinement and Hoare-style reasoning in a fo...
research
10/26/2021

Flexible Refinement Proofs in Separation Logic

Refinement transforms an abstract system model into a concrete, executab...
research
04/22/2019

Translating between models of concurrency

Hoare's Communicating Sequential Processes (CSP) admits a rich universe ...
research
10/27/2020

Verified Secure Compilation for Mixed-Sensitivity Concurrent Programs

Proving only over source code that programs do not leak sensitive data l...
research
06/23/2020

Intermediate Value Linearizability: A Quantitative Correctness Criterion

Big data processing systems often employ batched updates and data sketch...

Please sign up or login with your details

Forgot password? Click here to reset