Mathematical Logic through Python
The textbook "Mathematical Logic through Python" presents a new approach to teaching the material of a basic Logic course to undergraduate Computer Science students, tailored to the unique intuitions and strengths of this cohort of students.
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 preface ("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.
This material will be published by Cambridge University Press as "Mathematical Logic through Python" by Yannai A. Gonczarowski and Noam Nisan. This pre-publication version is free to view and download for personal use only. Not for re-distribution, re-sale or use in derivative works. © Yannai A. Gonczarowski and Noam Nisan 2017–2020
© Yannai A. Gonczarowski and Noam Nisan 2017–2020