Abstract
We combine two ideas for specification and verification of concurrent systems: The rely-guarantee paradigm and transition-based specification. We consider specification of safety properties of shared variable systems. A component is specified by stating which transitions its environment is allowed to make to the interface variables and which changes the component then guarantees to stay within. Auxiliary variables are used to carry history information. For such specifications, we present proof rules for verifying that one specification refines another and that parallel composition of components implements a given specification. Application of the rules is illustrated by small examples.
Preview
Unable to display preview. Download preview PDF.
References
Martin Abadi & Leslie Lamport: The Existence of Refinement Mappings. Digital Equipment Corporation 1988. Shortened version in Proceedings of the LICS Conference, Edinburgh, Scotland. July 1988.
Martin Abadi & Leslie Lamport: Composing Specifications. In proc. of REX workshop on stepwise refinement of distributed systems, LNCS 430, Springer-Verlag 1990, pages 1–41.
Howard Barringer, Ruurd Kuiper & Amir Pnueli: Now You May Compose Temporal Logic Specifications Proceedings of the 16th ACM SOTCS, Washington 1984, pages 57–63.
Mani Chandy & Jajadev Misra: Parallel Program Design — A Foundation. Addison-Wesley Publishing Company Inc. 1988.
P. Grønning & T. Qvist Nielsen: Compositional Specification and Verification of Concurrent Systems. Master's Thesis, Department of Computer Science, Technical University of Denmark, January 1990.
C.A.R Hoare: Communicating Sequential Processes, Prentice Hall, 1985.
Cliff B. Jones: Specification and Design of (Parallel) Programs. Proceedings of IFIP 83, pages 321–332.
Bengt Jonsson: Compositional Verification of Distributed Systems. Ph.D. Thesis. Uppsala DoCS 87/09 1987.
Bengt Jonsson: On Decomposing and Refining Specifications of Distributed Systems. In proc. of REX workshop on stepwise refinement of distributed systems, LNCS 430, Springer-Verlag 1990, pages 361–385
N. Klarlund & F.B. Schneider: Verifying Safety Properties Using Infinite-State Automata. Technical Report, No. TR 89-1036, Cornell University, 1989.
Reino Kurki-Suonio: Operational Specification with Joint Actions: Serializable Databases. To appear in Distributed Computing.
Leslie Lamport: Specifying Concurrent Program Modules. ACM Transactions on Programming Languages and Systems, Vol. 5, No. 2, April 1983, pages 190–222.
S.S. Lam & A.U. Shankar: Protocol verification via projections. IEEE Transactions on Software Engineering, Vol. SE-10, No. 4, July 1984, pages 325–342.
Nancy A. Lynch & Mark R. Tuttle: Hierachical Correctness Proofs for Distributed Algorithms. In proc. of the Sixth Symposium on the Principles of Distributed Computing, ACM, August 1987, pages 137–151.
Alain J. Martin: Compiling communicating processes into delay-insensitive VLSI circuits, Distributed Computing, Vol. 1 1986, pages 226–234.
Robin Milner: Communication and Concurrency, Prentice Hall, 1989.
Jayadev Misra & K. Mani Chandy: Proofs of Networks of Processes. IEEE Transactions of Software Engineering, Vol. SE-7, No. 4, July 1981, pages 417–426.
P. Pandya: Compositional Verification of Distributed Programs. Ph.D. Thesis. University of Bombay, 1988.
Amir Pnueli: In Transition From Global to Modular Temporal Reasoning about Programs. NATO ASI Series, Vol. F13, Logics and Models of Concurrent Systems, Springer-Verlag 1985, pages 123–144.
Eugene W. Stark: A Proof Technique for Rely/Guarantee Properties. Foundations of Software Technology and Theoretical Computer Science, LNCS 206, Springer-Verlag, 1985, pages 369–391.
Eugene W. Stark: Proving Entailment Between Conceptual State Specifications. European Symposium on Programming, Saarbrücken, LNCS 213, Springer-Verlag, 1986, pages 197–209.
Jørgen Staunstrup & Mark Greenstreet: Synchronized Transitions. In Jørgen Staustrup (ed) Formal Methods for VLSI Design, North-Holland, 1990.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1990 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Grønning, P., Nielsen, T.Q., Løvengreen, H.H. (1990). Refinement and composition of transition-based rely-guarantee specifications with auxiliary variables. In: Nori, K.V., Veni Madhavan, C.E. (eds) Foundations of Software Technology and Theoretical Computer Science. FSTTCS 1990. Lecture Notes in Computer Science, vol 472. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-53487-3_55
Download citation
DOI: https://doi.org/10.1007/3-540-53487-3_55
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-53487-7
Online ISBN: 978-3-540-46313-9
eBook Packages: Springer Book Archive