Literature
The course is largely based on the book Modelling Computing Systems: Mathematics for Computer Science by Faron Moller and Georg Struth. The .pdf version of this book is available for free, provided you are on campus.
We are collecting errata in the book on Github – please let us know if you spot any mistakes!
In addition to this book, I have brief set of lecture notes that we will use for the last few weeks of the course.
But there are many other interesting books about logic:
-
Logicomix – An Epic Search for Truth by Apostolos Doxiadis and Christos Papadimitriou – a ‘graphic novel’ about the history of logic.
-
The Art of Logic by Eugenia Chang – shows how to apply logic to reason about everyday life and society.
-
Beschrijven en bewijzen by Hans Zantema and Piet Lemmens. Delft University Press – I learned logic using these lecture notes.
-
Logic for Computer Science by Michael Huth and Mark Ryan. This book goes a bit further than the book used in class. It covers various topics, focused on program verification. If you’re interested in learning more after having completed this course, this book would make a good choice.
-
Logica voor informatica by Jan van Eijck and Elias Thijsse. These lecture notes were used in previous editions of this course.
-
Proof and the Art of Mathematics by Joel David Hamkins - is a more mathematical introduction to logic and proofs, but very it is particularly accessible and does not require any advanced mathematical methods.
-
Elements of computing systems - if you want to know more about the design of computer hardware, this is a great book to learn how to construct a fully functional computer (including assembler and operating system) from the ground up.