IB013 Logic Programming I

Faculty of Informatics
Spring 2012
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)
doc. Mgr. Hana Rudová, Ph.D. (lecturer)
RNDr. Jan Rygl (seminar tutor)
RNDr. Miloš Jakubíček, Ph.D. (assistant)
RNDr. Vojtěch Kovář, Ph.D. (assistant)
Mgr. Adriana Strejčková (assistant)
Guaranteed by
prof. RNDr. Luděk Matyska, CSc.
Department of Computer Systems and Communications – Faculty of Informatics
Supplier department: Department of Computer Systems and Communications – Faculty of Informatics
Timetable
Thu 8:00–9:50 B204
  • Timetable of Seminar Groups:
IB013/01: each even Friday 10:00–11:50 A104, H. Rudová
IB013/02: Tue 14:00–15:50 A104, J. Rygl
IB013/03: Fri 10:00–11:50 B117, J. Rygl
Prerequisites
Knowledge in backgrounds of propositional and first-order logic, e.g. based on the course IB101 Introduction to logic and logic programming.
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. Online. 3rd ed. Addison-Wesley, 2001. 678 pp. ISBN 0201-40375-7. [citováno 2024-04-24] info
  • NILSSON, Ulf and Jan MALUSZYNSKI. Logic, programming and Prolog. Online. Chichester: John Wiley & Sons, 1990. 285 pp. ISBN 0-471-92625-6. [citováno 2024-04-24] URL info
  • DECHTER, Rina. Constraint processing. Online. San Francisco: Morgan Kaufmann Publishers, 2003. xx, 481 s. ISBN 1-55860-890-7. [citováno 2024-04-24] info
Teaching methods
The course has a form of standard lectures with seminars taking two hours per two weeks at the computer laboratory. Solved problems are often realized using modifications of existing code. Seminaries concerns namely practical realization of logic programs in SICStus Prolog. Seminaries include homeworks which solutions together with solutions of examples solved during seminaries are available at the course web site.
Assessment methods
The course has a form of a lecture with a seminar taking two hours per two weeks at the computer laboratory. Evaluation consists of three parts: project (up to 40 points), test written during the semester (up to 30 points), final written exam (up to 150 points). Credit is given for preparation of the project. Project includes written report containing preliminary analysis of the solved problem, final program in Prolog and program documentation. Projects are solved by 1-3 students. Test written during the semester is practically oriented on solving several simpler examples from the basics of Prolog. Final written exam consists of theoretical part and solving of practical examples. Taking of seminaries is obligatory. Absence at more than seminar requires successful completion of additional examples corresponding to the number of absent hours. High number of missed seminaries does not allow completion of the course.
Language of instruction
Czech
Follow-Up Courses
Further Comments
Study Materials
The course is taught annually.
The course is also listed under the following terms Spring 2003, Spring 2004, Spring 2005, Spring 2006, Spring 2007, Spring 2008, Spring 2009, Spring 2010, Spring 2011, Spring 2013.
  • Enrolment Statistics (Spring 2012, recent)
  • Permalink: https://is.muni.cz/course/fi/spring2012/IB013