Introduction to Logic Programming
- 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).
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
Please register for the course via the
KUSSS system.
- 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.
-
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:
- Additional material:
-
System(s):
-
Some interesting on-line resources:
Maintained by Temur Kutsia