Abduction, reason, and science: processes of discovery and explanation-a review
An axiomatic basis for computer programming