Intuitionistic logic is presented here as part of familiar classical
logic which allows mechanical extraction of programs from proofs. to
make the material more accessible, basic techniques are presented first
for propositional logic; Part II contains extensions to predicate logic.
This material provides an introduction and a safe background for reading
research literature in logic and computer science as well as advanced
monographs. Readers are assumed to be familiar with basic notions of
first order logic. One device for making this book short was inventing
new proofs of several theorems. The presentation is based on natural
deduction. The topics include programming interpretation of
intuitionistic logic by simply typed lambda-calculus (Curry-Howard
isomorphism), negative translation of classical into intuitionistic
logic, normalization of natural deductions, applications to category
theory, Kripke models, algebraic and topological semantics, proof-search
methods, interpolation theorem. The text developed from materal for
several courses taught at Stanford University in 1992-1999.