An Axiomatic Basis for Computer Programming

  • C. A. R. Hoare


In this paper an attempt is made to explore the logical foundations of computer programming by use of techniques which were first applied in the study of geometry and have later been extended to other branches of mathematics. This involves the elucidation of sets of axioms and rules of inference which can be used in proofs of the properties of computer programs. Examples are given of such axioms and rules, and a formal proof of a simple theorem is displayed. Finally, it is argued that important advantages, both theoretical and practical, may follow from a pursuance of these topics.

Key Words and Phrases

axiomatic method theory of programming’ proofs of programs formal language definition programming language design machine-independent programming program documentation 

CR Category

4.0 4.21 4.22 5.20 5.21 5.23 5.24 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    YANOV, Yu I. Logical operator schemes. Kybernetika 1, (1958).Google Scholar
  2. 2.
    IGARASHI, S. An axiomatic approach to equivalence problems of algorithms with applications. Ph.D. Thesis 1964. Rep. Compt. Centre, U. Tokyo, 1968, pp. 1–101.Google Scholar
  3. 3.
    DE BAKKER, J. W. Axiomatics of simple assignment statements. M.R. 94, Mathematisch Centrum, Amsterdam, June 1968.Google Scholar
  4. 4.
    MCCARTHY, J. Towards a mathematical theory of computation. Proc. IFIP Cong. 1962, North Holland Pub. Co., Amsterdam, 1963.Google Scholar
  5. 5.
    BURSTALL, R. Proving properties of programs by structural induction. Experimental Programming Reports: No. 17 DMIP, Edinburgh, Feb. 1968.Google Scholar
  6. 6.
    VAN WIJXGAARDEN, A. Numerical analysis as an independent science. BIT 6 (1966), 66–81.CrossRefGoogle Scholar
  7. 7.
    LASKI, J. Sets and other types. ALGOL Bull. 27, 1968.Google Scholar
  8. 8.
    FLOYD, R. W, Assigning meanings to programs. Proc. Amer. Math. Soc. Symposia in Applied Mathematics, Vol. 19, pp. 19–31.Google Scholar
  9. 9.
    NAUR, P. Proof of algorithms by general snapshots. BIT 6 (1966), 310–316.CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2002

Authors and Affiliations

  • C. A. R. Hoare
    • 1
  1. 1.Department of Computer ScienceThe Queen’s University of BelfastNorthern Ireland

Personalised recommendations