IB013 Logic Programming I

Faculty of Informatics
Spring 2008
Extent and Intensity
2/1. 3 credit(s) (plus extra credits for completion). Recommended Type of Completion: zk (examination). Other types of completion: k (colloquium), z (credit).
Teacher(s)
Mgr. Adriana Strejčková (lecturer)
doc. Mgr. Hana Rudová, Ph.D. (lecturer)
Bc. Michal Novotný (assistant)
Guaranteed by
prof. RNDr. Václav Matyáš, M.Sc., Ph.D.
Department of Computer Systems and Communications – Faculty of Informatics
Timetable
Tue 10:00–11:50 B204
  • Timetable of Seminar Groups:
IB013/01: each even Tuesday 8:00–9:50 B311, A. Strejčková
IB013/02: each odd Tuesday 8:00–9:50 B311, A. Strejčková
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
fields of study / plans the course is directly associated with
there are 19 fields of study the course is directly associated with, display
Course objectives
The main goal of this lecture is to provide a basic information in the subject of Logic Programming. The lecture starts with basics of programming in Prolog. A brief introduction to computational logic is followed by the description of a theoretical background of logic programming language Prolog. Constraint logic programming is presented from the theoretical and practical point of view. Implementation of Prolog is discussed in the last part of the lecture together with basic optimization techniques. Seminaries are focused on practical aspects of logic programming.
Syllabus
  • Prolog, data structures, backtracking, cut. Extra-logical predicates, arithmetics. Programming techniques and style.
  • Theory of logic programming. First order logic, resolution, definite clauses and programs, models, SLD resolution.
  • Control of program flow, reduction of program search tree, cut.
  • Equality, negation, SLDNF resolution.
  • Constraint logic programming, basic programming in CLP(FD), constraint propagation, search.
  • Prolog implementation. Warren Abstract Machine.
Literature
  • BRATKO, Ivan. Prolog Programming for Artificial Intelligence. 3rd ed. Addison-Wesley, 2001, 678 pp. ISBN 0201-40375-7. info
  • NILSSON, Ulf and Jan MALUSZYNSKI. Logic, programming and Prolog. Chichester: John Wiley & Sons, 1990, 285 pp. ISBN 0-471-92625-6. URL info
  • DECHTER, Rina. Constraint processing. San Francisco: Morgan Kaufmann Publishers, 2003, xx, 481 s. ISBN 1-55860-890-7. info
Assessment methods (in Czech)
Hodnocení se skládá ze tří částí: zápočtového projektu (možno získat až 40 bodů), průběžné písemné práce (až 30 bodů) a závěrečné písemné práce (až 150 bodů). Opravné termíny jsou ve formě ústní zkoušky.


Zápočet z předmětu je udělen za vypracování projektu. Součástí řešení projektu je písemná zpráva obsahující předběžnou analýzu řešeného problému, finální program v Prologu a programová dokumentace. Projekty jsou řešeny 1-3 studenty.


Průběžná písemná práce je prakticky orientovaná na řešení několika jednodušších příkladů ze základů programování v jazyce Prolog.


Závěrečná písemná práce se skládá z teoretické části a z řešení praktických příkladů.

Language of instruction
Czech
Follow-Up Courses
Further Comments
Study Materials
The course is taught annually.
Teacher's information
http://www.fi.muni.cz/~ada/lp
The course is also listed under the following terms Spring 2003, Spring 2004, Spring 2005, Spring 2006, Spring 2007, Spring 2009, Spring 2010, Spring 2011, Spring 2012, Spring 2013.
  • Enrolment Statistics (Spring 2008, recent)
  • Permalink: https://is.muni.cz/course/fi/spring2008/IB013