Computer Science > Distributed, Parallel, and Cluster Computing
arXiv:2301.02638 (cs)
Abstract:This paper presents a {theoretical study} of the problem of verifying linearizability at runtime, where one seeks for a concurrent algorithm for verifying that the current execution of a given concurrent shared object implementation is linearizable. It shows that it is impossible to runtime verify linearizability for some common sequential objects, regardless of the consensus power of base objects. Then, it argues that a variant of the problem, which we call predictive verification, can be solved, if linearizability is verified indirectly. Namely, it shows that (1) linearizability of a class of concurrent implementations can be p…
Computer Science > Distributed, Parallel, and Cluster Computing
arXiv:2301.02638 (cs)
Abstract:This paper presents a {theoretical study} of the problem of verifying linearizability at runtime, where one seeks for a concurrent algorithm for verifying that the current execution of a given concurrent shared object implementation is linearizable. It shows that it is impossible to runtime verify linearizability for some common sequential objects, regardless of the consensus power of base objects. Then, it argues that a variant of the problem, which we call predictive verification, can be solved, if linearizability is verified indirectly. Namely, it shows that (1) linearizability of a class of concurrent implementations can be predictively verified using only read/write base objects (i.e. without the need of consensus), and (2) any implementation can be transformed to its counterpart in the class using only read/write objects. As far as we know, this is the first runtime verification algorithm for any correctness condition that is fully asynchronous and fault-tolerant. As a by-product, it is obtained a simple and generic methodology for deriving linearizable implementations that runtime verify their responses, and are able to produce a history certifying this, properties that allows the design of concurrent systems in a modular manner with accountable and forensic guarantees. We call such implementations self-enforced linearizable. The results hold not only for linearizability but for a correctness condition that includes generalizations of it such as set-linearizability and interval-linearizability.
| Subjects: | Distributed, Parallel, and Cluster Computing (cs.DC) |
| Cite as: | arXiv:2301.02638 [cs.DC] |
| (or arXiv:2301.02638v3 [cs.DC] for this version) | |
| https://doi.org/10.48550/arXiv.2301.02638 arXiv-issued DOI via DataCite |
Submission history
From: Armando Castañeda [view email] [v1] Fri, 6 Jan 2023 18:31:18 UTC (859 KB) [v2] Tue, 2 May 2023 08:29:51 UTC (902 KB) [v3] Thu, 13 Nov 2025 01:27:07 UTC (438 KB)