Abstract
A relational specification consists of a state transition system and a set of fairness assumptions. The state transition system is specified using two basic constructs: state formulas that respresent sets of states, and event formulas that represent sets of state transitions. We present a theory of refinement of relational specifications. Several refinement relations between specifications are defined. To illustrate our concepts and methods, three specifications of the alternating-bit protocol are given. We also apply the theory to explain “auxiliary variables.” Other applications of the theory to protocol verification, composition, and conversion are discussed. Our approach is compared with the approaches of other authors.
The work of Simon S. Lam was supported by National Science Foundation under grant no. NCR-8613338 and by a grant from the Texas Advanced Research Program. The work of A. Udaya Shankar was supported by National Science Foundation under grant no. ECS-8502113 and grant no. NCR-8904590. This paper is an abbreviated version of [Lam & Shankar 88].
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
M. Abadi and L. Lamport, “The Existence of Refinement Mappings,” Technical Report, Digital Systems Research Center, Palo Alto, California, August 1988.
K. L. Calvert and S. S. Lam, “Formal Methods for Protocol Conversion,” to appear in IEEE Journal on Selected Areas in Communications, January 1990.
K.M. Chandy and J. Misra, Parallel Program Design: A Foundation, Addison-Wesley, Reading, MA, 1988.
B.T. Hailpern and S. Owicki, “Modular Verification of Computer Communication Protocols,” IEEE Transactions on Communications, Vol. COM-31, No. 1, January 1983.
E.C.R Hehner, “Predicative Programming, Part I and Part II,” Communications of the ACM, Vol. 27, No. 2, February 1984.
IBM Corporation, Systems Network Architecture Format and Protocol Reference Manual: Architecture Logic, IBM Form No. SC32-3112-2, 1980.
ISO/TC97/SC21/WG16-1 N422 Estelle — A Formal Description Technique Based on an Extended State Transition Model, February 1985.
S. S. Lam, “Protocol Conversion,” IEEE Transactions on Software Engineering, Vol. 14, No. 3, March 1988.
S. S. Lam and A. U. Shankar, “Protocol Verification via Projections,” IEEE Transactions on Software Engineering, Vol. SE-10, No. 4, July 1984.
S. S. Lam and A. U. Shankar, “Specifying Implementations to Satisfy Interfaces: A State Transition System Approach,” presented at the 26th Lake Arrowhead Workshop on How will we specify concurrent systems in the year 2000?, September 1987; full version available as Technical Report TR-88-30, Department of Computer Sciences, University of Texas at Austin, August 1988 (revised June 1989).
S. S. Lam and A. U. Shankar, “A Relational Notation for State Transition Systems,” Technical Report TR-88-21, Department of Computer Sciences, The University of Texas at Austin, May 1988 (Second Revision, August 1989).
L. Lamport, “What Good is Temporal Logic?” Proceedings Information Processing 83, IFIP, 1983.
L. Lamport, “Specifying Concurrent Program Modules,” ACM TOPLAS, Vol. 5, No. 2, April 1983.
L. Lamport, “What it means for a concurrent program to satisfy a specification: Why no one has specified priority,” Proceedings of the 12th ACM Symposium on Principles of Programming Languages, New Orleans, January 1985.
N.A. Lynch and M.R. Tuttle, “Hierarchical Correctness Proofs for Distributed Algorithms,” Proceedings of the ACM Symposium on Principles of Distributed Computing, Vancouver, B.C., August 1987.
Z. Manna and A. Pnueli, “Adequate Proof Principles for Invariance and Liveness Properties of Concurrent Programs,” Science of Computer Programming, Vol. 4, 1984.
Z. Manna and R. Waldinger, The Logical Basis for Computer Programming, Addison-Wesley, Reading, MA, 1985.
S.L. Murphy and A.U. Shankar, “A Verified Connection Management Protocol for the Transport Layer,” Proceedings ACM SIGCOMM '87 Workshop, Stowe, Vermont, August 1987.
S.L. Murphy and A.U. Shankar, “Service Specification and Protocol Construction for the Transport Layer,” Proceedings ACM SIGCOMM '88 Symposium, Stanford University, August 1988.
S. Owicki and D. Gries, “Verifying Properties of Parallel Programs: An Axiomatic Approach,” Communications of the ACM, Vol. 19, No. 5, May 1976.
S. Owicki and L. Lamport, “Proving Liveness Properties of Concurrent Systems,” ACM TOPLAS, Vol. 4, No. 3, 1982.
T. F. Piatkowski, “The State of The Art in Protocol Engineering,” Proceedings ACM Sigcomm '86 Symposium, Stowe, Vermont, 1986.
A. Pnueli, “Applications of Temporal Logic to the Specification and Verification of Reactive Systems: A Survey of Current Trends,” in Current Trends in Concurrency: Overviews and Tutorials, J.W, deBakker et al. (ed.), LNCS 224, Springer Verlag, 1986.
K. Sabnani, “An Algorithmic Procedure for Protocol Verification,” IEEE Transactions on Communications, Vol. 36, No. 8, August 1988.
J. Scheid and S. Holtsberg, Ina Jo Specification Language Reference Manual, System Development Group, Unisys Corp., Santa Monica, CA, September 1988.
A.U. Shankar, “Verified Data Transfer Protocols with Variable Flow Control,” ACM Transactions on Computer Systems, Vol. 7, No. 3, August 1989; an abbreviated version appears in Proceedings ACM SIGCOMM '86, Stowe, Vermont, August 1986.
A.U. Shankar and S.S. Lam, “An HDLC Protocol Specification and its Verification Using Image Protocols,” ACM TOCS, Vol. 1, No. 4, November 1983.
A.U. Shankar and S.S. Lam, “Time-dependent communication protocols,” in Tutorial: Principles of Communication and Networking Protocols, S.S. Lam (ed.), IEEE Computer Society, 1984.
A.U. Shankar and S.S. Lam, “Time-dependent distributed systems: proving safety, liveness, and real-time properties,” Distributed Computing, Vol. 2, No. 2, 1987.
A.U. Shankar and S.S. Lam, “A Stepwise Refinement Heuristic for Protocol Construction,” Technical Report CS-TR-1812, Department of Computer Science, University of Maryland, March 1987 (revised March 1989).
C.H. West, “A General Technique for Communications Protocol Validation,” IBM Journal of Research and Development, Vol. 22, July 1978.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1990 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lam, S.S., Shankar, A.U. (1990). Refinement and projection of relational specifications. In: de Bakker, J.W., de Roever, W.P., Rozenberg, G. (eds) Stepwise Refinement of Distributed Systems Models, Formalisms, Correctness. REX 1989. Lecture Notes in Computer Science, vol 430. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-52559-9_75
Download citation
DOI: https://doi.org/10.1007/3-540-52559-9_75
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-52559-2
Online ISBN: 978-3-540-47035-9
eBook Packages: Springer Book Archive