Verifying Opacity of a Transactional Mutex Lock

Software transactional memory (STM) provides programmers with a high-level programming abstraction for synchronization of parallel processes, allowing blocks of codes that execute in an interleaved manner to be treated as an atomic block. This atomicity property is captured by a correctness criterion called opacity. Opacity relates histories of a sequential atomic specification with that of STM implementations.

[1]  Hagit Attiya,et al.  A programming language perspective on transactional memory consistency , 2013, PODC '13.

[2]  Mohsen Lesani,et al.  On the Correctness of Transactional Memory Algorithms , 2014 .

[3]  Mark Moir,et al.  Towards formally specifying and verifying transactional memory , 2009, Formal Aspects of Computing.

[4]  Maurice Herlihy,et al.  Linearizability: a correctness condition for concurrent objects , 1990, TOPL.

[5]  John Derrick,et al.  Verifying Linearisability with Potential Linearisation Points , 2011, FM.

[6]  Kurt Stenzel,et al.  Structured Specifications and Interactive Proofs with KIV , 1998 .

[7]  Rachid Guerraoui,et al.  On the correctness of transactional memory , 2008, PPoPP.

[8]  Christos H. Papadimitriou,et al.  The serializability of concurrent database updates , 1979, JACM.

[9]  Rachid Guerraoui,et al.  Model checking transactional memories , 2008, PLDI '08.

[10]  John Derrick,et al.  A Sound and Complete Proof Technique for Linearizability of Concurrent Data Structures , 2014, TOCL.

[11]  Mark Moir,et al.  A Framework for Formally Verifying Software Transactional Memory Algorithms , 2012, CONCUR.

[12]  Nir Shavit,et al.  Transactional Locking II , 2006, DISC.

[13]  James R. Larus,et al.  Transactional Memory, 2nd edition , 2010, Transactional Memory.

[14]  Rachid Guerraoui,et al.  Principles of Transactional Memory , 2010, Synthesis Lectures on Distributed Computing Theory.

[15]  J. Michael Spivey,et al.  The Z notation - a reference manual , 1992, Prentice Hall International Series in Computer Science.

[16]  Michel Raynal,et al.  Virtual world consistency: A condition for STM systems (with a versatile protocol with invisible read operations) , 2012, Theor. Comput. Sci..

[17]  Hagit Attiya,et al.  Safety of Live Transactions in Transactional Memory: TMS is Necessary and Sufficient , 2014, DISC.

[18]  Jens Palsberg,et al.  Decomposing Opacity , 2014, DISC.

[19]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[20]  Nir Shavit,et al.  Transactional Mutex Locks , 2010, Euro-Par.

[21]  Keir Fraser,et al.  Language support for lightweight transactions , 2014, SIGP.

[22]  Nir Shavit,et al.  Software transactional memory , 1995, PODC '95.

[23]  Viktor Vafeiadis,et al.  Modular fine-grained concurrency verification , 2008 .