THE UNIVERSITY of EDINBURGH

DEGREE REGULATIONS & PROGRAMMES OF STUDY 2019/2020

University Homepage
DRPS Homepage
DRPS Search
DRPS Contact
DRPS : Course Catalogue : School of Informatics : Informatics

Undergraduate Course: Logic Programming (INFR09031)

Course Outline
SchoolSchool of Informatics CollegeCollege of Science and Engineering
Credit level (Normal year taken)SCQF Level 9 (Year 3 Undergraduate) AvailabilityAvailable to all students
SCQF Credits10 ECTS Credits5
SummaryThis course describes the connection between Horn clause logic and computation via programming. The reference point for the course is the Prolog programming language - a principal aim being to develop students' programming expertise through experience in typical applications. The course is divided into two interacting sections: a theory section and a programming section.
Course description The following are core elements of the syllabus:

- Programming: Declarative programming: goals, programs, recursion; Nonlogical features; parsing and DCGs; search techniques; reflection and meta-programming; higher-order logic programs

- Theory: Definite clause logic (propositional and predicate); Inference systems, proof search, completeness and incompleteness; Herbrand models; Negation by failure and completion procedures; Higher-order Logic Programming.

Relevant QAA Computing Curriculum Sections: Artificial Intelligence, Programming
Fundamentals
Entry Requirements (not applicable to Visiting Students)
Pre-requisites Co-requisites
Prohibited Combinations Other requirements This course is open to all Informatics students including those on joint degrees. For external students where this course is not listed in your DPT, please seek special permission from the course organiser.

This course has the following mathematics prerequisites:

- Propositional logic (at the level taught in Informatics 1 Computation and Logic).
- First Order Logic (at the level taught in Informatics 2D - Reasoning and Agents).
Information for Visiting Students
Pre-requisitesVisiting students are required to have comparable background to that
assumed by the course prerequisites listed in the Degree Regulations &
Programmes of Study. If in doubt, consult the course lecturer.
High Demand Course? Yes
Course Delivery Information
Not being delivered
Learning Outcomes
On completion of this course, the student will be able to:
  1. Understand and explain principles of declarative specification, and its relation to procedural realisations
  2. Construct well-crafted Prolog programs of moderate size and sophistication
  3. interpret problems in a style that suits logic programming
  4. Understand and explain the logical foundations of logic programming
Reading List
* Clocksin, W.F. and Mellish, C.S., 2003, "Programming in Prolog: Using the ISO Standard"
* Sterling, L. & Shapiro, E. 1994, "The Art of Prolog"
Additional Information
Course URL http://course.inf.ed.ac.uk/lp
Graduate Attributes and Skills Not entered
KeywordsNot entered
Contacts
Course organiserDr Alan Smaill
Tel: (0131 6)50 2710
Email:
Course secretaryMrs Victoria Swann
Tel: (0131 6)50 4565
Email:
Navigation
Help & Information
Home
Introduction
Glossary
Search DPTs and Courses
Regulations
Regulations
Degree Programmes
Introduction
Browse DPTs
Courses
Introduction
Humanities and Social Science
Science and Engineering
Medicine and Veterinary Medicine
Other Information
Combined Course Timetable
Prospectuses
Important Information