Skip to main content
Log in

A general proof rule for procedures in predicate transformer semantics

  • Published:
Acta Informatica Aims and scope Submit manuscript

Summary

A proof rule for the procedure call is derived for procedures with value, result and value-result parameters. It is extended to procedures with unrestricted global variables and to recursive procedures. Like D. Gries's proof rule, it is based on the substitution rule for assignment. However, it is more general and much simpler to apply. Assume that {U} S {V} has been proved about the procedure body S. The proof rule for determining whether a call establishes predicate E is based on finding an “adaptation” A satisfying AVE′, where E′ is derived from E by some substitution of parameters.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Dijkstra, E.W.: A Discipline of Programming, Prentice Hall, Englewood Cliffs, New Jersey, 1976

    Google Scholar 

  2. Dijkstra, E.W.: Lecture Notes: Predicate transformers, EWD835, Nov. 1982

  3. Dijkstra, E.W.: On Mathematical Induction, EWD803-22, Nov. 1981

  4. Dijkstra, E.W., Scholten, C.S.: About Predicate Transformers in General, EWD813, March 1982

  5. Gries, D., Levin, G.: Assignment and Procedure Call Proof Rules, TOPLAS 2, 564–579 (1980)

    Google Scholar 

  6. Gries, D.: The Science of Programming. Berlin-Heidelberg-New York: Springer-Verlag 1981

    Google Scholar 

  7. Gries, D.: Private communication, Feb. 1983

  8. Hoare, C.A.R.: Procedures and Parameters: An Axiomatic Approach. In: Symposium on Semantics of Programming Languages, pp. 102–116. Berlin-Heidelberg-New York: Springer 1971

    Google Scholar 

  9. London, R.L., Guttag, J.V., Horning, J.J., Lampson, B.W., Mitchell, J.G., Popek, G.J.: Proof Rules for the Programming Language Euclid. Acta Informat. 10, 1–26 (1978)

    Google Scholar 

  10. Scholten, C.S.: Private communication, Feb. 1983

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Martin, A.J. A general proof rule for procedures in predicate transformer semantics. Acta Informatica 20, 301–313 (1983). https://doi.org/10.1007/BF00264276

Download citation

  • Received:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00264276

Keywords

Navigation