Since ancient times, mathematical arguments have been viewed as paradigms of clarity and rigor. The goal of this course is to examine the features of mathematical reasoning that give it this distinctive character and that allow it to be systematically organized through the axiomatic method. Topics include propositional and predicate logic, and their semantics; formal deduction; axioms for arithmetic and set theory; and formal models of computation.