Sciweavers

PODC
2010
ACM

Verifying linearizability with hindsight

13 years 8 months ago
Verifying linearizability with hindsight
We present a proof of safety and linearizability of a highlyconcurrent optimistic set algorithm. The key step in our proof is the Hindsight Lemma, which allows a thread to infer the existence of a global state in which its operation can be linearized based on limited local atomic observations about the shared state. The Hindsight Lemma allows us to avoid one of the most complex and non-intuitive steps in reasoning about highly concurrent algorithms: considering the linearization point of an operation to be in a different thread than the one executing it. The Hindsight Lemma assumes that the algorithm maintains certain simple invariants which are resilient to interference, and which can themselves be verified using purely thread-local proofs. As a consequence, the lemma allows us to unlock a perhaps-surprising intuition: a high degree of interference makes non-trivial highlyconcurrent algorithms in some cases much easier to verify than less concurrent ones.
Peter W. O'Hearn, Noam Rinetzky, Martin T. Vechev,
Added 16 Aug 2010
Updated 16 Aug 2010
Type Conference
Year 2010
Where PODC
Authors Peter W. O'Hearn, Noam Rinetzky, Martin T. Vechev, Eran Yahav, Greta Yorsh
Comments (0)