The goal of the course is to present the fundamental basic notions of logic that are important in computer science. One presents propositional and predicate logic in natural deductions the way it is done in most interactive theorem provers, with a suggestive box notation for proofs. One presents also the basis of model checking and temporal logic (LTL and CTL). One does not cover a detailed proof of the completeness theorem for predicate logic (and one gives a sketch of completeness for propositional logic) but what is important is that the students understand well the meaning of the various completeness theorems. (On the other hand one gives a proof of undecidability of predicate logic via Post systems.) In the same spirit, one does not present complete proofs of decidability for LTL and CTL but one presents in detail the fixed-point semantics of CTL.
The content of the course is roughly the first three chapters of Huth and Ryan "Logic in Computer Science".
There are some slides motivating the course.
This course uses Logic in Computer Science by Michael Huth and Mark Ryan (available as an eBook from the Chalmers Library).
Tuesday, 10:00–11:45 in HB3 and Friday, 8:00–9:45 in HB3
(except: October 9th, October 12th and October 26th)
Tuesday, October 9th, 8:00–9:45 in HB3
Wednesday, October 10th, 8:00–9:45 in HC4
Friday, 10:00–11:45 in HB3 (except: October 12th
and October 26th)
Tuesday, October 9th, 10:00–11:45 in HB3
Thursday, 14:00–14:59 in 6103A (or via e-mail to the assistants)
Week | Chapters | Topics | Exercises | Assignments | Solutions |
---|---|---|---|---|---|
1 | 1.1, 1.2 | Propositional logic, natural deduction | Week 1 | ex1.pdf | - |
2 | 1.3, 1.4, 1.5 | Formal language, proof by induction, semantics, normal form | Week 2 | ex2.pdf | - |
3 | 2.1, 2.2, 2.3 | Predicate logic, natural deduction | Week 3 | ex3.pdf | - |
4 | 2.4 | Semantics of predicate logic | Week 4 | ex4.pdf | - |
5 | 2.5, 2.6 | Undecidability, expressivity of predicate logic | Week 5 | ex5.pdf | sol52.txt |
6 | 3.2, 3.3, 3.4, 3.5 | LTL, CTL | Week 6 | ex6.pdf | sol6.pdf, sol62.txt |
7 | 3.6, 3.7 | Algorithms, fixed-point characterization, repetition | Week 7 | - | - |
There will be six non-obligatory assignments which should be handed in individually. Each assignment gives ten points and 10% of those points count as bonus points in the exam. The bonus points are only valid for the exams held before September 2019.
Your solutions must be handed in before the weekly exercise session. The first deadline is in study week two, i.e. Friday, September 14th, at 10:00. You can hand them in the return box by the printers and restrooms on the 6th floor (will be emptied no later than 9:45), in the beginning of the exercise session, or in office 6103A. Please do not hand them in by email.
Graded submissions will be handed back during the exercise session the week after; afterwards you can pick them up in room 6103A.
All submissions must include your name, email address, and be stapled together. Your solutions must be clear and readable; everything must be carefully motivated!
As always in life, you should not cheat! Cheating will be taken seriously and will be reported to the Disciplinary Committee for further investigation.
The exam is on Tuesday, October 30th 2018, starting at 14:00 in Maskin-salarna.
The exam has 60 points in total. No books or written help is allowed during the exam.
On the exam you are only allowed to use the basic deduction rules on page 27 of the course book, ¬¬e, LEM, PBC, the introduction and elimination rules for equality (pp. 107, 108) and quantifiers (pp. 109, 110, 112, 113), and the copy rule (p. 20). So in particular, ¬¬i, Modus tollens and De Morgan's rules are not allowed (unless you also provide their proof, then they can be used as lemmas).
Here is a list of exercises from a previous year, some with comments. Exercises marked with an asterisk ("*") in the text book have solutions.
Here is a collection of old exams from the years 2007, 2011, 2012, 2013, and 2016–2018.
An interactive introduction to natural deduction for propositional and predicate calculus with several good examples.
A text on the tree method (looking systematically for a countermodel).
A prover to practice natural deduction (only for propositional logic).
A short note on how to decide an LTL formula. This is not required for the exam, but I found the explanations in the book difficult to follow and wanted to have a method which can be applied by hand on small examples.
A general presentation of some notions of the course and a nice application of the use of temporal logic.
Simon Huber,
mail: simon.huber(at)cse(dot)gu(dot)se
Thierry Coquand,
mail: thierry.coquand(at)cse(dot)gu(dot)se
Thierry is also the examiner of the course.
Andrea Vezzosi,
mail: vezzosi(at)chalmers(dot)se
Fabian Ruch,
mail: fabian.ruch(at)cse(dot)gu(dot)se