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 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 3rd and October 20th)
Tuesday, October 3rd, 8:00 - 9:45 in HB2
Wednesday, October 4th, 8:00 - 9:45 in HC4
Tuesday, October 17th, 10:00 - 11:45 in HB2
Friday, 10:00 - 11:45 in HB3 (except: October 6th
and October 20th)
Tuesday, October 3rd, 10:00 - 11:45 in HB2
Friday, 14:00 - 15:59 in 6103A (or via e-mail)
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 | - |
6 | 3.2, 3.3, 3.4, 3.5 | LTL, CTL | Week 6 | ex6.pdf | sol6.pdf |
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 2018.
Your solutions must be handed in before the weekly exercise session. The first deadline is in study week two, i.e. Friday, September 8th, 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 24th 2017, starting at 14:00 in SB Multisal.
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 they are proved as separate 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.
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.
Jan Smith,
mail: jan(dot)smith(at)chalmers(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