Skip to main content
Log in

General predicate transformer and the semantics of a programming language with go to statement

  • Published:
Acta Informatica Aims and scope Submit manuscript

Summary

Dijkstra's predicate transformer for specifying the semantics of guarded commands set and proving the total correcness of a program is generalized to a programming language with the go to statement. The concept of general predicate transformer and its properties are introduced. We explore the approach of proving the correctness — preserving property of some common program transformations that are used in the compiling process.

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.

Similar content being viewed by others

References

  1. Alagic, S., Arbib, M.A.: The Design of Well-Structured and Correct Programs. Berlin, Heidelberg, New York: Springer 1978

    Google Scholar 

  2. Dijkstra, E.W.: A Discipline of Programming. New Jersey: Prentice-Hall 1976

    Google Scholar 

  3. Dijkstra, E.W.: Guarded Commands, Non-Determinacy and Formal Derivation of Programs. CACM 18(8) 453–457 (1975)

    Google Scholar 

  4. Knuth, D.E.: Structured Programming with Go To Statements. ACM Computing Survey 6(4) 261–301 (1974)

    Google Scholar 

  5. Lamport, L.: The “Hoare Logic” of Concurrent Programs. Acta Informat. 14, 21–40 (1980)

    Google Scholar 

  6. Russell, B.: Correctness of the Compiling Process Based on Axiomatic Semantics. Acta Informat. 14, 1–20 (1980)

    Google Scholar 

  7. Scott, D.: Outline of a Mathematical Theory of Computation Proceedings of Fourth Annual Princeton Conference on Information Science and Systems, pp. 169–176, 1970

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

He, J. General predicate transformer and the semantics of a programming language with go to statement. Acta Informatica 20, 35–57 (1983). https://doi.org/10.1007/BF00264294

Download citation

  • Received:

  • Issue Date:

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

Keywords

Navigation