460-4093/01 – Logic Programming (LP)
Gurantor department | Department of Computer Science | Credits | 4 |
Subject guarantor | prof. RNDr. Marie Duží, CSc. | Subject version guarantor | prof. RNDr. Marie Duží, CSc. |
Study level | undergraduate or graduate | Requirement | Choice-compulsory |
Year | 1 | Semester | summer |
| | Study language | Czech |
Year of introduction | 2015/2016 | Year of cancellation | |
Intended for the faculties | FEI | Intended for study types | Follow-up Master |
Subject aims expressed by acquired skills and competences
The course will provide the fundamentals of logic programming. Students will learn how to specify a program in the declarative way as a knowledge base of facts and rules. We will also deal with evaluation strategies based on resolution method and with the foundations of machine learning.
Teaching methods
Lectures
Individual consultations
Tutorials
Project work
Summary
The course will provide the fundamentals of logic programming. Students will learn how to specify a program in the declarative way as a knowledge base of facts and rules. We will also deal with evaluation strategies based on resolution method and with the foundations of machine learning.
Compulsory literature:
[1] J. W. Lloyd. Foundations of Logic Programming (2nd edition). Springer-Verlag 1987.
[2] I. Bratko. PROLOG. Programming for Artificial Intelligence (3rd edition). Addison Wesley 2001.
[3] W.F. Clocksin, C.S. Mellish. Programming in Prolog. Springer-Verlag 1987.
Recommended literature:
[1] D. DeGroot, G. Lindstrom. Logic Programming; Functions, Relations and Equations. Prentice Hall, New Jersey, 1986.
Way of continuous check of knowledge in the course of semester
During the semester, the students write small programs solving particular tasks; at the end of the semester, these programs are evaluated as a whole task.
E-learning
Other requirements
Fundamentals of mathematical logic, in particular, the general resolution method
Prerequisities
Subject has no prerequisities.
Co-requisities
Subject has no co-requisities.
Subject syllabus:
Lectures:
1. The structure of a logical program
2. Communication with Prolog interpreter, quering
3. Prolog evaluatiuon strategies.
4. Syntactic structures of Prolog (facts, rules, lists, built-in predicates,…)
5. Simple applications; relational databases, graphs, natural language processing
6. Recursion
7. Cut vs. not
8. Crisp vs. fuzzy approach (theory and practice)
9. Introduction to fuzzy Prolog (Ciao Prolog), Aggregation operators, syntax
10. Applications of fuzzy logic programming
11. Artificial intelligence in agent systems; machine learning algorithms in Prolog.
12. Graphic interface in LPA Prolog
Seminars:
1. The structure of a logical program
2. Communication with Prolog interpreter, quering
3. Prolog evaluatiuon strategies.
4. Syntactic structures of Prolog (facts, rules, lists, built-in predicates,…)
5. Simple applications; relational databases, graphs, natural language processing
6. Recursion
7. Cut vs. not
8. Crisp vs. fuzzy approach (theory and practice)
9. Introduction to fuzzy Prolog (Ciao Prolog), Aggregation operators, syntax
10. Applications of fuzzy logic programming
11. Artificial intelligence in agent systems; machine learning algorithms in Prolog.
12. Graphic interface in LPA Prolog
Conditions for subject completion
Occurrence in study plans
Occurrence in special blocks
Assessment of instruction