| | |
Summary: Distrib. Comput. (2010) 22:129145
DOI 10.1007/s00446-009-0092-6
Model checking transactional memories
Rachid Guerraoui · Thomas A. Henzinger ·
Vasu Singh
Received: 28 February 2009 / Accepted: 3 October 2009 / Published online: 1 December 2009
© Springer-Verlag 2009
Abstract Model checking transactional memories (TMs) is
difficult because of the unbounded number, length, and delay
of concurrent transactions, as well as the unbounded size of
the memory. We show that, under certain conditions satis-
fied by most TMs we know of, the model checking problem
can be reduced to a finite-state problem, and we illustrate
the use of the method by proving the correctness of several
TMs, including two-phase locking, DSTM, and TL2. The
safety properties we consider include strict serializability and
opacity; the liveness properties include obstruction freedom,
livelock freedom, and wait freedom. Our main contribution
lies in the structure of the proofs, which are largely automated
and not restricted to the TMs mentioned above. In a first step
|