The course content is split into two halves. In the first half, we develop sentential logic (also known as statement logic or propositional logic). We develop this from both semantic and syntactic perspectives, that is, from a study of implication, and from a formal study of proofs. We will also consider the relationship between these notions. In the second half, we develop a richer logical system called predicate (or first order) logic, which allows us to formalise many ideas from mathematics. In particular, this is the system in which set theory is typically developed, and in which axioms for many mathematical systems are expressed. In this course, predicate logic is studied from both the syntactic and semantic perspectives, paralleling the ideas developed for sentential logic in the first half of the course.
The course is designed to provide an understanding of many of the mathematical concepts and methods involved in mathematical logic and computer science.
This course could be of interest to students majoring in mathematics and/or computer science. The skills gained in this course may be of particular use to any students interested in formal systems, or in further study of the foundations of mathematics.