Specifying modules to satisfy interfaces: a state transition system approach

  • Authors:
  • Simon S. Lam;A. Udaya Shankar

  • Affiliations:
  • Department of Computer Sciences, The University of Texas at Austin, Austin, TX;Department of Computer Science and Institute for Advanced Computer Studies, University of Maryland, College Park, MD

  • Venue:
  • Distributed Computing - Special issue: Specification of concurrent systems
  • Year:
  • 1992

Quantified Score

Hi-index 0.01

Visualization

Abstract

We define interface, module and the meaning of M offers I, where M denotes a module and I an interface. For a module M and disjoint interfaces U and L, the meaning of M using L offers U is also defined. For a linear hierarchy of modules and interfaces, M1, I1, M2, I2, ..., Mn, In, we present the following composition theorem: If M1 offers I1 and, for i=2,..., n, Mi using Ii-1 offers Ii, then the hierarchy of modules offers Ii.Our theory is applied to solve a problem posed by Leslie Lamport at the 1987 Lake Arrowhead Workshop. We first present a formal specification of a serializable database interface. We then provide specifications of two modules, one based upon two-phase locking and the other multi-version timestamps; the two-phase locking module uses an interface offered by a physical database. We prove that each module offers the serializable interface.