Describir: The Deductive Foundations of Computer Programming :