The Logical Basis for Computer Programming : Deductive Reasoning
Zohar Manna · Cumulative Index of Computer Aided Architectural Design · 1984
An introduction to the basic notions of propositional and predicate logic and special theories including integers, strings, trees, lists, sets, and tuples (arrays). Algorithms are expressed not as explicit programs but as the definitions of functions and relations within these theories