Springer Nature is making Coronavirus research free. View research | View latest news | Sign up for updates

Proof of algorithms by general snapshots


A constructive approach to the question of proofs of algorithms is to consider proofs that an object resulting from the execution of an algorithm possesses certain static characteristics. It is shown by an elementary example how this possibility may be used to prove the correctness of an algorithm written in ALGOL 60. The stepping stone of the approach is what is called General Snapshots, i.e. expressions of static conditions existing whenever the execution of the algorithm reaches particular points. General Snapshots are further shown to be useful for constructing algorithms.

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


  1. The basic question of proof has so far been ignored in data processing to an incredible degree. A review of recent work is given in: J. McCarthy,Problems in the Theory of Computation, Proc. IFIP Congress 65, Vol. 1, 1965, pp. 219–222.

  2. Most of the work described there is heavily oriented towards the basic theoretical problems of computation. The General Snapshots of the present chapter are related to the state vectors of J. McCarthy: J. McCarthy,A Formal Description of a Subset of ALGOL, Proc. of a Conference on Formal Language Description Languages, Vienna, 1964.

  3. However, the present approach, which is directly applicable in proving and constructing practical programs, is believed to be new. Similar concepts have been developed independently by Robert W. Floyd (unpublished paper, communicated privately).

Download references

Author information

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Naur, P. Proof of algorithms by general snapshots. BIT 6, 310–316 (1966).

Download citation

Key words

  • Algorithm
  • proof
  • computer
  • programming