Logic Programming - Autumn 2012

The aim of this course is to introduce you to the theory and practice of logic programming. We teach it in two parts:

There will be 18 lectures, starting Monday 17th September.

Monday lectures are in David Hume Tower - Faculty Room South.

Thursday lectures are in Lecture Theatre 3, 7 Bristo Square.

Lectures take place 1510-1600 on Mondays and Thursdays in weeks 1,2,3,4,6,7,8,9 and 10. (Note that there are no lectures in week 5, i.e., no lectures on 15th, 18th October.)

Tutorials are held in weeks 3,4,5,6,7,8,9 and 10. (Note that tutorials take place as usual in Week 5.)

There will be two, summatively assessed, coursework exercises; each worth 10% of the final grade.

Revision office hours

The course lecturers are available for discussion of course material at the following hours during the revision period.

Meetings outside these hours are also possible by appointment.

Course timetable

Week
Date
Mon Lec
Thu Lec
Tutorials
Coursework (CW)
1 17 Sep   Prog 1 Prog 2    
2 24 Sep   Theory 1   Prog 3    
3 1 Oct   Theory 2 Prog 4 Tut 1    
4 8 Oct   Theory 3 Prog 5 Tut 2   CW1 handed out: Mon 8
5 15 Oct       Tut 3    
6 22 Oct   Theory 4 Prog 6 Tut 4   CW1 deadline: 3pm Mon 22  
7 29 Oct   Theory 5 Theory 6   Tut 5   CW2 handed out: Mon 29
8 5 Nov   Prog 7 Theory 7 Tut 6    
9 12 Nov   Theory 8 Prog 8 Tut 7   CW2 deadline: 3pm Mon 12  
10 19 Nov   Theory 9 Prog 9 Tut 8    

Office hours

The course lecturers are available (during Semester 1) for discussion of course material at the following hours.

Meetings outside these hours are also possible by appointment.

Course Text and Supplementary Material

The primary book for the programming side of the course is Learn Prolog Now, by Blackburn, Bos and Striegnitz. The book is strongly recommended, and is available free on-line.

Other useful books on prolog programming are

For the theory lectures, the following background material on propositional and predicate will be useful for students who have not previously encountered propositional and predicate logic.

SICStus Prolog

SICStus Prolog is recommended for use in the course and will be used for the final exam. Any DICE machine (i.e. any Linux machine in an Informatics computer lab) should have SICStus installed; type sicstus at a command prompt to start.

The School also has a site license for student use, in case you would prefer to install and run SICStus on your own computer. Contact Computing Support in person or via this form to arrange this.

Introductory Prolog Programming Notes

To get you quickly informed of the essential aspects of the Prolog programming language, read the Quick Prolog notes. These refer to the Prolog programs: ancestors.pl, dcg.pl, declar_v_proc.pl and mapcolour.pl.

Prolog Programming Lecture Videos

Some lectures from this and previous years were recorded on video so if you want a re-run of those lectures then visit the video site for the full lectures; clips of smaller segments; and instructions on how to view them on the Informatics DICE system.

Programming Lecture Slides

Theory Lecture Slides

Coursework

There will be two, summatively assessed, coursework exercises; each worth 10% of the final grade. Once marked, the coursework will be returned to students with feedback.

Tutorials

Tutorials start Week 3 (October 1).

See tutorial groups with times and membership.

Previous Exams


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: school-office@inf.ed.ac.uk
Please contact our webadmin with any comments or corrections. Logging and Cookies
Unless explicitly stated otherwise, all material is copyright © The University of Edinburgh