Abstract
Unity [CM88, Mer92, Kna90], as action systems approach [BS91], is a formal method that attempts to decouple a program from its implementation. Therefore, Unity separates logical behaviour from implementation, it provides predicates for specifications, and proof rules for deriving specifications directly from the program text. This type of proof strategy is often clearer and more succinct than argument about a program's operational behaviour. Our research fits into Unity's methodology. Its aims to develop a proof environment suitable for mechanical proof of concurrent programs. This proof is based on Unity [CM88], and may be used to specify and verify both safety and liveness properties. Our verification method is based on theorem proving, so that an axiomatization of the operational semantics is needed. We use Dijkstra's wp-calculus to formalize the Unity logic, so we can always derive a sound relationship between the operational semantics of a given Unity specification and the axiomatic one from which theorems in our logic will be derived.
On sabbatical leave at the Department of Computing Science University of Stirling under the European Science Exchange Programme Royal Society — CNRS
Preview
Unable to display preview. Download preview PDF.
References
R.S. Boyer and J.S. Moore. A Computational Logic Handbook. Academic Press, 1988.
N. Brown and D. Mery. Deriving Occam Programs through the Refinement of Unity-like Specifications. In W. Joosen and E. Milgrom, editors, Proceedings European Workshop on Parallel Computing. IOS PRESS, 1992.
R.J.R. Back and K. Sere. Deriving an occam implementation of action systems. In C. Morgan and J.C.P. Woodcock, editors, 4rd Refinement Workshop. Springer-Verlag, January 1991. BCS-FACS, Workshops in Computing.
BP Innovation Centre and Edinburgh Portable Compilers Ltd. B-Tool Versionl. 1, Reference Manual, 1991.
BP Innovation Centre and Edinburgh Portable Compilers Ltd. B-Tool Versionl.1, Tutorial, 1991.
P Innovation Centre and Edinburgh Portable Compilers Ltd. B-Tool Versionl.1, User Manual, 1991.
Centaur. Version1.1, Reference Manual, 1991.
Centaur. Version1.2, Reference Manual, 1992.
K.M. Chandy and J. Misra. Parallel Program Design A Foundation. Addison-Wesley Publishing Company, 1988. ISBN 0-201-05866-9.
E.W. Dijkstra. A Discipline of Programming. Prentice-Hall, 1976.
E.W. Dijkstra and C.S. Scholten. Predicate Calculus and Program Semantics. Texts and Monographs in Computer Science. Springer Verlag, 1990.
D.M. Goldschlag. Mechanically verifying concurrent programs with the boyermoore prover. IEEE Transactions on Software Engineering, 16(9):1005–1023, September 1990.
A.J.M. Van Gasteren and G. Tel. Comments on ”on the proof of a distributed algorithm”: always true is not invariant. Information Processing Letters, 35:277–279, 1990.
E. Knapp. An exercise in the formal derivation of parallel programs: Maximum flows in graphs. Transactions On Programming Languages and Systems, 12(2):203–223, 1990.
L. Lamport. Proving the correctness of multiprocess programs. Trans. on Software Engineering 1, 1977.
L. Lamport. A temporal logic of actions. Technical Report 57, DEC Palo Alto, april 1990.
D. Mery. A proof system to derive eventuality properties under justice hypothesis. In LNCS, number 233. Mathematical Foundations of Computer Science, 1986. Bratislava, Tchecoslovaquie.
D. Mery. The NU system as a development system for concurrent programs: δ NU. Theoretical Computer Science, 94(2):311–334, march 1992.
J. Misra. Soundness of the substitution axiom. Notes on Unity, pages 14–90, 1990.
B.A. Sanders. Eliminating the substitution axiom from unity logic. Formal Aspects of Computing, 3:189–205, 1991.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1993 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Brown, N., Mery, D. (1993). A proof environment for concurrent programs. In: Woodcock, J.C.P., Larsen, P.G. (eds) FME '93: Industrial-Strength Formal Methods. FME 1993. Lecture Notes in Computer Science, vol 670. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0024647
Download citation
DOI: https://doi.org/10.1007/BFb0024647
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-56662-5
Online ISBN: 978-3-540-47623-8
eBook Packages: Springer Book Archive