An ACL2 Mechanization of an Axiomatic Framework for Weak Memory

Benjamin Selfridge
(University of Texas at Austin)

Proving the correctness of programs written for multiple processors is a challenging problem, due in no small part to the weaker memory guarantees afforded by most modern architectures. In particular, the existence of store buffers means that the programmer can no longer assume that writes to different locations become visible to all processors in the same order. However, all practical architectures do provide a collection of weaker guarantees about memory consistency across processors, which enable the programmer to write provably correct programs in spite of a lack of full sequential consistency. In this work, we present a mechanization in the ACL2 theorem prover of an axiomatic weak memory model (introduced by Alglave et al.). In the process, we provide a new proof of an established theorem involving these axioms.

In Freek Verbeek and Julien Schmaltz: Proceedings Twelfth International Workshop on the ACL2 Theorem Prover and its Applications (ACL2 2014), Vienna, Austria, 12-13th July 2014, Electronic Proceedings in Theoretical Computer Science 152, pp. 129–144.
Published: 4th June 2014.

ArXived at: https://dx.doi.org/10.4204/EPTCS.152.11 bibtex PDF
References in reconstructed bibtex, XML and HTML format (approximated).
Comments and questions to: eptcs@eptcs.org
For website issues: webmaster@eptcs.org