FI:IB013 Logic Programming I - Course Information
IB013 Logic Programming I
Faculty of InformaticsSpring 2011
- 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)
Mgr. Adriana Strejčková (assistant) - Guaranteed by
- prof. RNDr. Václav Matyáš, M.Sc., Ph.D.
Department of Computer Systems and Communications – Faculty of Informatics - Timetable
- Tue 12:00–13:50 B410
- Timetable of Seminar Groups:
IB013/02: each odd Friday 10:00–11:50 A104, H. Rudová - Prerequisites
- Recommended knowledge of propositional and predicate 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
- Applied Informatics (programme FI, B-AP)
- Bioinformatics (programme FI, B-AP)
- Czech Language with Orientation on Computational Linguistics (programme FF, B-FI)
- Informatics with another discipline (programme FI, B-BI)
- Informatics with another discipline (programme FI, B-FY)
- Informatics with another discipline (programme FI, B-GE)
- Informatics with another discipline (programme FI, B-GK)
- Informatics with another discipline (programme FI, B-CH)
- Informatics with another discipline (programme FI, B-IO)
- Informatics with another discipline (programme FI, B-MA)
- Informatics with another discipline (programme FI, B-TV)
- Informatics (programme FI, B-IN)
- Public Administration Informatics (programme FI, B-AP)
- Mathematical Informatics (programme FI, B-IN)
- Parallel and Distributed Systems (programme FI, B-IN)
- Computer Graphics and Image Processing (programme FI, B-IN)
- Computer Networks and Communication (programme FI, B-IN)
- Computer Systems and Data Processing (programme FI, B-IN)
- Programmable Technical Structures (programme FI, B-IN)
- Embedded Systems (programme FI, N-IN)
- Service Science, Management and Engineering (programme FI, N-AP)
- Social Informatics (programme FI, B-AP)
- Artificial Intelligence and Natural Language Processing (programme FI, B-IN)
- 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
- 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.
- Language of instruction
- Czech
- Follow-Up Courses
- Further Comments
- Study Materials
The course is taught annually.
- Enrolment Statistics (Spring 2011, recent)
- Permalink: https://is.muni.cz/course/fi/spring2011/IB013