Hyperproperty-Preserving Register Specifications (Extended Version)
Reasoning about hyperproperties of concurrent implementations, such as the guarantees these implementations provide to randomized client programs, has been a long-standing challenge. Standard linearizability enables the use of atomic specifications for reasoning about standard properties, but not ab...
Gespeichert in:
Hauptverfasser: | , , |
---|---|
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Reasoning about hyperproperties of concurrent implementations, such as the
guarantees these implementations provide to randomized client programs, has
been a long-standing challenge. Standard linearizability enables the use of
atomic specifications for reasoning about standard properties, but not about
hyperproperties. A stronger correctness criterion, called strong
linearizability, enables such reasoning, but is rarely achievable, leaving
various useful implementations with no means for reasoning about their
hyperproperties. In this paper, we focus on registers and devise non-atomic
specifications that capture a wide-range of well-studied register
implementations and enable reasoning about their hyperproperties. First, we
consider the class of write strong-linearizable implementations, a recently
proposed useful weakening of strong linearizability, which allows more
intricate implementations, such as the well-studied single-writer ABD
distributed implementation. We introduce a simple shared-memory register
specification that can be used for reasoning about hyperproperties of programs
that use write strongly-linearizable implementations. Second, we introduce a
new linearizability class, which we call decisive linearizability, that is
weaker than write strong-linearizability and includes multi-writer ABD, and
develop a second shared-memory register specification for reasoning about
hyperproperties of programs that use register implementations of this class.
These results shed light on the hyperproperties guaranteed when simulating
shared memory in a crash-resilient message-passing system. |
---|---|
DOI: | 10.48550/arxiv.2408.11015 |