Week 
Date 
Main Topics 
Course notes and readings 
Additional readings 
Slides 
Selected exercises 
Solutions to selected exercises 
Assignments and deadlines 
36/01 
04.09

Introduction to the course.
Brief revision on basics of propositional logic:
 propositions and logical connectives. Truth tables.
 Tautologies and propositional logical consequence.
 Logically correct propositional inferences.

Lecture Notes on Classical Logic, (Provided on Mondo) Sections 1.11.2
Alternatively: Sections 1.11.2 from the book Logic as a Tool (available from the SU library)

J. van Benthem, H. van Ditmarsch, J. van Eijck, J. Jaspars, Logic in Action, Ch. 2. Open Course Project, University of Amsterdam
See more references below

Provided on Mondo:
Intro to the course
Revision on basics of propositional logic

From the lecture notes: (Do as many exercises from each group as needed)
Ex.1.1.8, p.1416: 2a,e; 3c,e; 4a,c.e; 5a,c,e; 6a,c,e; 7b,d,e; 8g,i; 9d,l
Ex.1.2.4, p. 2426: 3a,b; 4b,d, 5a,c,e.

Provided on Mondo.


38/02 
18.09 
Revision on propositional logic:
 Propositional tableaux.
 Propositional logical equivalence and negation normal form.
 Conjunctive and disjunctive normal forms (CNF and DNF).
 Propositional Resolution.

Lecture Notes on Classical Logic, Ch.2: 1.3, 2.3, 2.5
Alternatively:
Sections 1.3, 2.3, 2.5 from the book Logic as a Tool (available from the SU library)

J. van Benthem, H. van Ditmarsch, J. van Eijck, J. Jaspars, Logic in Action, Ch. 4. Open Course Project, University of Amsterdam
See more references below 
Provided on Mondo:
Propositional tableaux
Propositional logical equivalence and negation normal form
Normal forms (CNF and DNF). Propositional Resolution.

From the lecture notes:
Ex. 1.3.4, p.3031: 2a,f; 3g,h,j; 4a,e.
Ex. 2.3.4, p. 5962: 1c,f,g; 2c,f; 3c; 4d; 5b
Ex. 2.5.5, p.7577. Own selection from: 4a,c,e; 5a,c,e,g,i; 6a,c,e,g; 7b,d,h

Provided on Mondo


39/03 
25.09 
Classical firstorder logic (FOL): basic consepts. Firstorder structures and languages.
Firstorder terms and formulae.
Formal semantics of FOL.
Translations between FOL and natural language.

Lecture Notes on Classical Logic, Sections 3.1, 3.2, 3.3.13.3.3
Alternatively:
Sections 3.1, 3.2, 3.3.13.3.3 from the book Logic as a Tool (available from the SU library)

W. Hodges, Elementary Predicate Logic, Sections 115, in: D.M. Gabbay and F.Guenthner (eds.), Handbook of Philosophical Logic. 2nd edition. Vol. l , 1129. Kluwer, 2001.
J. van Benthem, H. van Ditmarsch, J. van Eijck, J. Jaspars, Logic in Action, Ch. 4 and 10. Open Course Project, University of Amsterdam
See more references below 
Provided on Mondo:
Firstorder structures and languages
Semantics of FOL.

From the lecture notes:
Ex. 3.1.4, p.9798, 3+4a,e,h; 6, 7a,f,j,m, 10, 11.
Ex. 3.2.7, p.109111: 1a,b; Selection from: 4a,c,e,g,i,k,m,o,q,s,u,w,y; 5a,c,e,g,i,k,m,p,q,r,t,w,y; 6b,d,f,h,k,l,n; 7a,c,e.

Provided on Mondo 

40/04 
02.10 
Syntax and grammar of FOL.
Satisfiability, validity, and logical consequence in FOL

Lecture Notes on Classical Logic, Sections 3.3.43.3.6, 3.4.13.4.5.
Alternatively:
Sections 3.3.43.3.6, 3.4.13.4.5 from the book Logic as a Tool (available from the SU library)

J. van Benthem, H. van Ditmarsch, J. van Eijck, J. Jaspars, Logic in Action, Ch. 10. Open Course Project, University of Amsterdam 
Provided on Mondo:
Satisfiability, validity, and logical consequence in FOL
Syntax and grammar of FOL.

From the lecture notes:
Ex. 3.3.7, p.118122. Selection from: 1b,d,f,h,j,l; 2a,c,e; 3a,c,e,g,i; 4a,c,e,g,i,k,m,o; 5a,c,e,g,i,k,l,m,o,p; 6a,c,e; 7a,b,d,f,h; 10a,d,g; 11a,c,e,g,i; 13a,c,f,g,h,j;
Ex. 3.4.9, p.138142. Own selection from: 1a,c,e,g,i,k,m,o

Provided on Mondo 

41/05 
09.10 
Logical consequence in FOL
Logical deduction and deductive systems for FOL: basic concepts.
Semantic tableaux for firstorder logic.
Logical equivalence in firstorder logic. Negating firstorder formulae.
Prenex normal forms, Skolemization, clausal forms.

Lecture Notes on Classical Logic, Sections 4.2, 3.4.53.4.7, 4.4
Alternatively:
Sections 4.2, 3.4.53.4.7, 4.4 from the book Logic as a Tool (available from the SU library)

J. van Benthem, H. van Ditmarsch, J. van Eijck, J. Jaspars, Logic in Action, Ch. 10. Open Course Project, University of Amsterdam 
Provided on Mondo:
Semantic tableaux for firstorder logic.
Logical equivalence in firstorder logic. Negating firstorder formulae.
Prenex normal forms

From the lecture notes:
Ex. 3.4.9, p.138142. Own selection from: 6a,c,e; 7f; 8a,c,e,gi,k; 12a,c,h; 13, 14a,c,e,g,i; 15b,d,f,h; 16; 18a,c,e (only formalisation and semantic argument) 19a,d
Ex. 4.2.4, p.158162: 1c; 2a,e,g; 4c,d,h,l.
Ex. 4.4.4, p.173. Ex. 2,4,6,10.

Provided on Mondo 

41/06 
12.10

Resolution rule for firstorder logic.
Term unification.
Resolution with unification in firstorder logic.
Applications to AI: Knowledge reprepresentation and automated reasoning in FOL
A brief intro to the Automated Theorem Prover SPASS.

Lecture Notes on Classical Logic, Sections 4.5, 5.4
Alternatively:
Sections 4.5, 5.4 from the book Logic as a Tool (available from the SU library)
Chapter 1from: Learn Prolog Now! 
J. van Benthem, H. van Ditmarsch, J. van Eijck, J. Jaspars, Logic in Action, Ch. 10. Open Course Project, University of Amsterdam
Stuart Russell and Peter Norvig, Artificial Intelligence: A Modern Approach, Chapter 9: Inference in FirstOrder Logic
Robert Kowalski, Computational Logic and Human Thinking: How to be Artificially Intelligent, Nov 2010.
Also, see list of additional readings below 
Provided on Mondo:
Skolemization, clausal forms.
Resolution with unification in firstorder logic.
Resolutionbased Automated Reasoning

From the lecture notes:
Ex. 4.4.4, p.173. Ex. 2,4,6,10 (to complete)
Ex. 4.5.8, p.183187. Ex. 1, 2a,c,e,h; 3a,c,e,h; 4a,c,e,g,i,k; 5b,d,f; 6a,b; 8a,c; 10

Provided on Mondo 
Assignment 1 posted on Mondo 
43/07 
23.10 
Introduction to logical methods for program verification.
FloydHoare logic for proving partial correctness of imperative sequential programs.

Mike Gordon, Background reading on Hoare Logic, Ch.12, pp 732

M. Huth and M. Ryan, Logic in Computer Science modelling and reasoning about systems, CUP, 2004. 2nd ed. Chapter 4, pp 256305 (available on Mondo. Book available from the SU library. Chapters 1 and 3 available electronically from the authors website)

Provided on Mondo:
Introduction to FloydHoare logic 
Provided on Mondo:
Exercises on FloydHoare logic

Provided on Mondo 
Assignment 1 submission deadline: 26/10 (closed)

44 / 8 
30.10 
Propositional dynamic logics of programs (PDL).
Logic programming and Prolog: a brief Introduction
Practical introduction to Prolog (by Anders) 
D. Harel, D. Kozen, J. Tiuryn. Dynamic Logic, Chapter in: Handbook of Philosophical Logic, 2nd ed., 2002, vol. 4, pp. 99218, Sections 1,2,4 (Provided on Mondo)
The first 2 chapters from: Learn Prolog Now! 
1. J. van Benthem, H. van Ditmarsch, J. van Eijck, J. Jaspars, Logic in Action, Ch. 6.
2. Andre Platzer, Lecture Notes on Dynamic Logic
Rob Goldblatt, Logics of Time and Computations, CSLI pubblications, 2nd ed., 1992. Chapter 10
M. Spivey, An introduction to logic programming through Prolog, PrenticeHall International, 1995. Revised electronic version. Chapters 18

Provided on Mondo:
Introduction to PDL
Introduction to Logic programming and Prolog (Anders' slides) 
Provided on Mondo:
Exercises on PDL

Provided on Mondo 
Assignment 2 posted on Mondo 
45/09 
06.11 
Transition systems and computations.
Modal logic for transition systems.
Unfoldings and bisimulations of transition systems. 
Lecture notes on Temporal Logics of Computations (Provided on Mondo) Chapters 14
(For a more detailed exposition see: S. Demri, V. Goranko, M. Lange: Temporal Logics in Computer Science, CUP, 2016, Chapters 3,4,5) 
M. Huth and M. Ryan, Logic in Computer Science modelling and reasoning about systems, CUP, 2004. 2nd ed. Chapter 3.1

Provided on Mondo:
Transition systems and computations. Properties of computations. Basic modal logic for transition systems. Unfoldings and bisimulations. 
Selected exercises from the lecture notes:
Section 8.18.2, pp 125128.
Exercises: 5, 6, 10, 13, 14, 15, 16, 17, 18. 
Provided on Mondo 

46/10 
13.11 
The linear time temporal logic of computations LTL.

Lecture notes on Temporal Logics of Computations (provided on Mondo) Chapter 5 
M. Huth and M. Ryan, Logic in Computer Science modelling and reasoning about systems, CUP, 2004. 2nd ed. Chapters 3.2, 3.3 
Provided on Mondo:
Linear time temporal logics of computations

Selected exercises from the lecture notes:
Section 8.3, pp 129131
Exercises: 28, 29, 30, 31, 32, 33 
Provided on Mondo 
Assignment 2 submission deadline: 13.00 on 16/11 (closed)

47/11 
20.11 
Branchingtime temporal logics of computations. The computation tree logics CTL and CTL*.
Modelchecking in CTL and CTL*. Applications to verification of concurrent and reactive systems.
SPIN: tool for LTL model checking.

Lecture notes on Temporal Logics of Computations (provided on Mondo) Chapter 6 
M. Huth and M. Ryan, Logic in Computer Science modelling and reasoning about systems, CUP, 2004. 2nd ed. Chapters 3.43.7

To be provided on Mondo:
Branching time temporal logics
Presentation on SPIN

Selected exercises from the lecture notes:
Section 8.4, pp 132136
Exercises: 36, 37, 41, 43, 53

Provided on Mondo 
Assignment 3 to be posted on Mondo 
48/12 
27.11

Logics for multiagent systems. Alternating time temporal logic. 
Lecture notes on Temporal Logics of Computations (provided on Mondo) Chapter 7 

To be provided on Mondo:
Alternating time temporal logics
Exam info 
TBA



49/13 
04.12 
Capita selecta and general revision 





Assignment 3 submission 
51 
19.12 
Exam 






