1 Mathematical Preliminaries.- 2 Predicate Logic.- 3 Three Simple Programming Languages.- 4 Fixpoints in Complete Partial Orders.- 5 Denotational Semantics.- 6 Correctness of Programs.- 7 The Classical Methods of Floyd.- 8 The Axiomatic Method of Hoare.- 9 Verification Methods Based on Denotational Semantics.- 10 LCF, A Logic for Computable Functions.- 11 An Overview of Further Developments.