Formal development of programs and proofs - Dijkstra, Edsger W (Addison-Wesley Publishing Company, 1990)