Mathematical theory of program correctness - de Bakker, Jaco (Prentice-Hall, Inc, 1980)