|
 people
|
 publications
|
 projects
|
research
|
education
|
 industry
internal

 search: sitemap

# Introduction to Logic Programming

## Goals

• Introduction to logic programming.
• Understanding logical foundations and computational model.
• Learning practical programming in Prolog.

The final grade will depend on the assignment results and on the final exam in February 2011 (solving assignments is a necessary precondition to be admitted to the exam).

## Organization

Winter Semester 2010.

• Number: 326.028
• Title: Logic Programming
• Lecturer: Temur Kutsia
• Time: Wed 16:15-18:00
• Place: T 212
• Language: English
• First lecture: October 6.
• Final exam: The students can choose between two dates:
• Friday, January 28, 2011, from 11:00-12:45, room T 211
• Wednesday, February 9, 2011, from 11:00-12:45, room K 153 C

## Registration

Please register for the course via the KUSSS system.

## Contents

• Logical foundations. Introduction to Prolog programming.
• Questions, variables, conjunctions, rules, goals.
• Prolog syntax. Characters, operators, equality and matching, arithmetic.
• Using data structures. Programming techniques on Prolog (Mapping, recursion, accumulators, difference structures).
• Backtracking, generating multiple solutions, the cut.
• Selected examples.
• Unification, computational model of logic programs.
• Constraint logic programming.
• Grammar rules (DCG).
• Efficiency issues.

## Course Materials

• Book: W. F. Clocksin and C. S. Mellish. Programming in Prolog. Fifth edition. Springer. 2003.
• Slides:
• Introduction - pdf
• Questions, variables, conjunctions, rules, goals - pdf
• Prolog syntax - pdf
• Data structures, mapping, recursion - pdf
• Data structures, comparison, joining, accumulators, difference structures - pdf
• Backtracking, the cut - pdf
• Unification - pdf
• Computational Model - pdf
• Using Grammar Rules - pdf
• Efficiency issues - pdf
• Examples - pdf
• Manipulating programs - pdf
• Assignments: Assignments are to be submitted by email. There will be three assignments in total. Please write LP10-AS1, LP10-AS2, LP10-AS3, in the subject of your mail when you submit assignments.
• Programs:
• System(s):
• Some interesting on-line resources:

Maintained by Temur Kutsia