This lecture aims to provide students with the logical background knowledge needed to understand and appreciate the other lectures. We will cover propositional and first-order classical logic, both from a semantic perspective and in the context of sequent calculus. Time permitting we will also take a brief look at logic programming in Datalog.
There are several typos in the printed version of the lecture notes which have been corrected in the online version. Section 7 has been rewritten entirely, a handout of the new version will be provided in class.
Solutions to Knights and Knaves Puzzles: Solutions