Abstract
Hoare's logical system for specifying and proving partial correctness properties of sequential programs is generalized to concurrent programs. The basic idea is to define the assertion {P} S {Q} to mean that if execution is begun anywhere in S with P true, then P will remain true until S terminates, and Q will be true if and when S terminates. The predicates P and Q may depend upon program control locations as well as upon the values of variables. A system of inference rules and axiom schemas is given, and a formal correctness proof for a simple program is outlined. We show that by specifying certain requirements for the unimplemented parts, correctness properties can be proved without completely implementing the program. The relation to Pnueli's temporal logic formalism is also discussed. © 1980 Springer-Verlag.
Cite
CITATION STYLE
Lamport, L. (1980). The “Hoare logic” of concurrent programs. Acta Informatica, 14(1), 21–37. https://doi.org/10.1007/BF00289062
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.