Axioms for concurrent objects

  • Authors:
  • M. P. Herlihy;J. M. Wing

  • Affiliations:
  • Department of Computer Science, Carnegie-Mellon University, Pittsburgh, PA, USA;Department of Computer Science, Carnegie-Mellon University, Pittsburgh, PA, USA

  • Venue:
  • POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
  • Year:
  • 1987

Quantified Score

Hi-index 0.01

Visualization

Abstract

Specification and verification techniques for abstract data types that have been successful for sequential programs can be extended in a natural way to provide the same benefits for concurrent programs. We propose an approach to specifying and verifying concurrent objects based on a novel correctness condition, which we call “linearizability.” Linearizability provides the illusion that each operation takes effect instantaneously at some point between its invocation and its response, implying that the meaning of a concurrent object's operations can still be given by pre- and post-conditions. In this paper, we will define and discuss linearizability, and then give examples of how to reason about concurrent objects and verify their implementations based on their (sequential) axiomatic specifications.