Blame and coercion: together again for the first time
An axiomatic basis for computer programming