Extending Memory Consistency of Finite Prefixes to Infinite Computations
Infinite computations are widely used to model arbitrarily long computations of infinite-state systems. Certain properties have both a finitary version, applying only to finite prefixes of computations, and an infinitary version. It is tempting to verify these properties for finite computations only, and then conclude that the infinitary version of the property holds too. This generalization is sound for safety properties, but to verify non-safety properties “by prefixes”, one must justify the generalization step. This paper studies how this can be done for sequential consistency of shared memory protocols. In the related literature, this generalization is sometimes done informally, if at all. We define, independently of any specific shared memory algorithm, sufficient conditions so that sequential consistency can be verified by finite prefixes. These conditions are expected to be satisfied by any reasonable shared memory system, regardless of the consistency model.
KeywordsShared Memory Memory Location Safety Property Address Space Read Operation
Unable to display preview. Download preview PDF.
- 1.Yehuda Afek, Geoffrey Brown, and Michael Merritt. Lazy caching. ACM Transactions on Programming Languages and Systems, 15(1):182–205, January 1993.Google Scholar
- 5.Marcelo Glusman and Shmuel Katz. Mechanizing proofs of computation equivalence. In Proceedings of 11th International Conference on Computer-Aided Verification, CAV’99, volume 1633 of LNCS, pages 354–367. Springer-Verlag, 1999.Google Scholar
- 9.Shmuel Katz. Refinement with global equivalence proofs in temporal logic. In D. Peled, V. Pratt, and G. Holzmann, editors, Partial Order Methods in Verification, pages 59–78. American Mathematical Society, 1997. DIMACS Series in Discrete Mathematics and Theoretical Computer Science, vol. 29.Google Scholar
- 13.Z. Manna and A. Pnueli. A hierarchy of temporal properties. In Proceedings of the 9th ACM Symposium on Principles of Distributed Computing (PODC), pages 377–408, New York, NY, 1990. ACM Press.Google Scholar
- 14.Shaz Qadeer. On the verification of memory models of shared-memory multiprocessors. In Workshop on Shared Memory Protocol Verification, October 2000.Google Scholar
- 15.Andrew Tanenbaum. Distributed Operating Systems. Prentice-Hall, Inc., 1995.Google Scholar