Automated Reasoning (2018-19): This course is being updated

On this page:

The lectures are given by:

The Teaching Assistant (TA) is:

Demonstrator times:

Help and Feedback

If you run into difficulties and are not making satisfactory progress then seek help. The earlier you ask for help the more likely it is that your problems can be solved without damaging your performance in the course.

Note: This is a challenging course, which introduces you to novel techniques and skills. You are expected to learn them over a short period of time.

To seek help

Various kinds of feedback are provided during the course.

Note that there are no lecture notes for the course. Instead, recommended reading is associated with each lecture. This reading is usually from:

Lecture Schedule

The lectures are held at 14:10-15:00 in Semester 1 on Tuesdays and Thursdays in Room 1.3 of the Lister Learning and Teaching Centre, Roxburgh Street.

There will be one lecture on the coursework assignment to provide some general information and background. Note: These lectures do not necessarily coincide with the hand-out dates for the assignment sheet. Students should start work on their coursework as soon as they are handed out rather than wait for the lectures, if these come later on.

Please note: At any point of the course, the future schedule gives a strong indication of the topics to be covered. However, some details might change.

Week Date Title Recommended Reading
1 Tue 18th Sep 2018 1. Introduction
Lecture by Petros Papapanagiotou
Bundy, Ch. 1
[background] Formal Proof by Tom Hales.
[background] Logicomix
Thu 20th Sep 2018 2. Propositional Logic and Natural Deduction
Lecture by Petros Papapanagiotou
H&R Sec 1.1, 1.2, 1.3, start of 1.4
[background] Wadler's Propositions as Types
2 Tue 25th Sep 2017 3. Natural Deduction and Starting with Isabelle
Isabelle Theory file for Lecture 3
H&R Sec 1.2, 1.4
Sec 5.1-5.7 of Tutorial on Isabelle/HOL (2018)
Prop.thy Isabelle theory file
Thu 27th Sep 2018 4. Propositional Reasoning in Isabelle
Sec 5.1-5.7 of Tutorial on Isabelle/HOL (2018)
[background] Pollack's How to Believe a Machine-Checked Proof
[background] How do they verify a verifier of formalized proofs?
3 Tue 2nd Oct 2018 5. First-order Logic
H&R Secs 2.1-2.4
FOL.thy Isabelle theory file
[background] Logitext - an interactive L-system FOL prover
Thu 4th Oct 2018 6. Representation
Bundy Ch. 4
4 Tue 9th Oct 2018 7. Introduction to Higher Order Logic in Isabelle Sec 1.1-1.4 of Tutorial on Isabelle/HOL (2018)
N&K Sec 2.1-2.2
Thu 11th Oct 2018 8. Representation II: Locales in Isabelle/HOL
Isabelle Theory file for Lecture 8
Tutorial on Locales (Isabelle 2018)
[background] Interpretation of Locales in Isabelle
5 Tue 16th Oct 2018 9. Isar — A Language for Structured Proofs
Isar Demo Theory
The Isabelle/Isar Quick Reference Manual
N&K Ch. 5
Thu 18th Oct 2018 10. Coursework: Proving and Reasoning in Isabelle/HOL See coursework files
6 Tue 23rd Oct 2018 11. Unification Bundy, Sec 17.1-17.4
Thu 25th Oct 2018 12. Rewriting I Bundy, Ch. 9
Sec 3.1 of Tutorial on Isabelle/HOL (2018)
7 Tue 30th Oct 2018 13. Rewriting II Bundy, Ch. 9
Thu 1st Nov 2018 14. Inductive Proof (in Isabelle))
Isabelle Theory file for Lecture 14
H&R Sec 1.4.2
[background] The Automation of Mathematical Induction
8 Tue 6th Nov 2018 No Lecture
Thu 8th Nov 2018 15. Program Verification using Hoare Logic (I)
Lecture by Petros Papapanagiotou
Isabelle's Hoare Logic library
H&R Sec 4.1-4.3
N&K Sec 12.2.1
[background] Reading on Hoare Logic (especially pages 1-27, 37-48).
9 Tue 13th Nov 2018 16. Program Verification using Hoare Logic (II)
Lecture by Petros Papapanagiotou
Isabelle Theory file
Thu 15th Nov 2018 17. Exam Review Past papers (Note: Papers before 2016-17 also contain material not in the current course):
10 Thu 20th Nov 2018 No Lecture
Thu 22nd Nov 2018 No Lecture


Each tutorial sheet will be released the week before it's due to take place. Solutions will usually be added the week after that of the tutorial.
Week Title Solutions
3 Tutorial 1: Propositional logic and some Isabelle
4 Tutorial 2: First order logic and more Isabelle
5 Tutorial 3: Representation and reasoning in Isabelle using locales
6 Tutorial 4: Structured proofs in Isabelle
7 Tutorial 5: Unification and Rewrite Rules [pdf]
8 Tutorial 6/7: Rewrite Rules, Reasoning about Hoare Logic, Induction [thy]
[pdf][thy] [thy]
9 Tutorial 6/7: Rewrite Rules, Reasoning about Hoare Logic, Induction

Additional Isabelle Exercises

These are additional self-help exercises for you to familiarize yourself with theorem proving in Isabelle. Note that some of the statements that you're asked to prove may overlap with those in the tutorials.

Acknowledgement: Some of these originate from an annual Isabelle/HOL lab course taught at the Technische Universit√§t M√ľnchen.

Title Files Solutions
Propositional logic [pdf][thy] [thy]
Predicate logic [pdf][thy] [thy]
A riddle: The rich grandfather [pdf][thy] See Tutorial 4
A Bad Axiomatization [pdf][thy]


Useful Resources

Assessment and Coursework

There will be one item of assessed coursework for this course, which will count for 40% of the overall mark (the other 60% is assessed by exam).

The dates for the coursework are as follows:


Home : Teaching : Courses 

Informatics Forum, 10 Crichton Street, Edinburgh, EH8 9AB, Scotland, UK
Tel: +44 131 651 5661, Fax: +44 131 651 1426, E-mail:
Please contact our webadmin with any comments or corrections. Logging and Cookies
Unless explicitly stated otherwise, all material is copyright © The University of Edinburgh