The textbook "Mathematical Logic through Python" presents a new approach to teaching the material of a basic Logic course to undergraduate Computer Science students, bringing Mathematical Logic into the comfort zone of the ever-growing population of programming-savvy students by tapping into their unique intuitions and strengths.

The book's approach captures the essence of the mathematical analysis of Logic using a sequence of carefully designed programming projects in the Python programming language. Each chapter in the book provides the background for, explanation, implications, and mathematical treatment of an associated programming project. See the book's introduction ("Chapter 0" below) for more details on our unique pedagogic approach and its motivations.

- The code needed to implement the projects in the book, which also includes documented skeletons for all of the functions/methods to be implemented, as well as a comprehensive array of unit tests, can be downloaded here. (Version 3.7 or higher of the Python programming language is required.)
- The API of the software suite developed throughout the book can be viewed here.

- Front matter (including our preface)
- Chapter 0: Introduction and Overview
- Chapter 1: Propositional Logic Syntax
- Chapter 2: Propositional Logic Semantics
- Chapter 3: Logical Operators
- Chapter 4: Proof by Deduction
- Chapter 5: Working with Proofs
- Chapter 6: The Tautology Theorem and the Completeness of Propositional Logic
- Chapter 7: Predicate Logic Syntax and Semantics
- Chapter 8: Getting Rid of Functions and Equality
- Chapter 9: Deductive Proofs of Predicate Logic Formulas
- Chapter 10: Working with Predicate Logic Proofs
- Chapter 11: The Deduction Theorem and Prenex Normal Form
- Chapter 12: The Completeness Theorem
- Chapter 13: Sneak Peek at Mathematical Logic II: Gödel's Incompleteness Theorem
- Cheatsheet: Axioms and Axiomatic Inference Rules Used in this Book
- Index