Inference Rules for Program Annotation

Research output: Contribution to journalArticlepeer-review


Methods are presented whereby an Algol-like program given together with its specifications can be documented automatically. The program is incrementally annotated with invariant relations that hold between program variables at intermediate points in the program text and explain the actual workings of the program regardless of whether it is correct. Thus, this documentation can be used for proving correctness of programs or may serve as an aid in debugging incorrect programs. The annotation techniques are formulated as Hoare-like inference rules that derive invariants from the assignment statements, from the control structure of the program, or, heuristically, from suggested invariants. The application of these rules is demonstrated by examples that have run on an experimental implementation.

Original languageEnglish
Pages (from-to)207-222
Number of pages16
JournalIEEE Transactions on Software Engineering
Issue number2
StatePublished - Mar 1981
Externally publishedYes


  • Inference rules
  • invariant assertions
  • program annotation
  • program correctness
  • verification


Dive into the research topics of 'Inference Rules for Program Annotation'. Together they form a unique fingerprint.

Cite this