Logic Programming 26233
- Centre
- Faculty of Informatics
- Degree
- Bachelor's Degree in Informatics Engineering
- Academic course
- 2024/25
- Academic year
- 4
- No. of credits
- 6
- Languages
- Spanish
- Code
- 26233
TeachingToggle Navigation
Teaching guideToggle Navigation
Description and Contextualization of the SubjectToggle Navigation
The aim of this subject is to learn the main characteristics of Logic Programming, part of the declarative programming paradigm, using the Prolog programming language.
It is an optional subject taught in the fourth year that complements the basic subjects in the Programming Line, and offers a broader vision of this line.
Skills/Learning outcomes of the subjectToggle Navigation
Students who take this subject acquire knowledge and skills for representing and solving a range of problems in a different programming paradigm from the imperative one, which is the model studied in previous years.
Theoretical and practical contentToggle Navigation
Theme 1. Programming in Prolog. Introduction to logic programming: operational syntax and semantics.
Theme 2. Recursive definition of programs. Recursive programs, tests and completion.
Theme 3. Ccontrol in logic programming. The cutting operator and its different uses. Negation in Prolog.
Theme 4. Other aspects of Prolog. Arithmetic in Prolog, metalogical predicates, input-output.
Theme 5. Examples of programs. Representation and resolution of various problems using Prolog.
Theme 6. Areas of application. Examples of applications related to databases, expert systems, natural and formal language, etc.
MethodologyToggle Navigation
To achieve the aims and competences described above, the methodology consists of:
- Theoretical and practical classes.
- The performance of a series of tasks during the course, in which the concepts studied are examined in practice and exercises are solved.
- Continuous monitoring of the tasks carried out by the students is done by the professor.
- One set of practical work (optional) on a subject chosen by the student.
Assessment systemsToggle Navigation
- Continuous Assessment System
- Final Assessment System
- Tools and qualification percentages:
- Written test to be taken (%): 50
- Realization of Practical Work (exercises, cases or problems) (%): 25
- Team projects (problem solving, project design)) (%): 25
Ordinary Call: Orientations and DisclaimerToggle Navigation
- Assessment is continuous: a series of tasks done by the students throughout the course will be evaluated, consisting of two written tests (5.0 points on the final mark), practical laboratory exercises (2.5 points on the final mark) and practical team work (2.5 points on the final mark).
In order to pass the subject, it is necessary to get at least 50% of the total points in each part (written tests, practical laboratory exercises and practical team work) and to get a minimum of 30% of the total points in each test.
- The option of an overall assessment also exists, in which a written test represents 75% of the mark while a practical work takes 25% of the mark. Both parts must be passed to pass the subject.
Extraordinary Call: Orientations and DisclaimerToggle Navigation
In this evaluation, only the overall assessment (a written test representing 75% of the mark and a practical work taking 25% of the mark) will be taken into account. Both parts must be passed to pass the subject.
Compulsory materialsToggle Navigation
The subject is followed through the eGela platform. It contains all the material provided by the professor: slides and notes on the subject, lists of exercises and practical tasks.
BibliographyToggle Navigation
Basic bibliography
* Leon S. Sterling and Ehud Y. Shapiro "The Art of Prolog - Advanced Programming Techniques"
ISBN: 9780262691055. The MIT Press, 1986. (https://mitpress.mit.edu/9780262691055/)
* Richard O'Keefe "The Craft of Prolog" ISBN: 9780262150392. The MIT Press, 1990. (https://mitpress.mit.edu/9780262150392/)
* William F. Clocksin and Christopher S. Mellish "Programming in Prolog" ISBN: 9783540175391 (fifth edition). Springer-Verlag, 2003.
* Pascual Julián and María Alpuente "Programación Lógica. Teoría y Práctica". ISBN: 9788483223680. Prentice Hall, 2007.
In-depth bibliography
* Ulf Nilsson and Jan Maluszynski"Logic, Programming and Prolog". ISBN: 9780471959960 (second edition). John Wiley & Sons Ltd, 2000. (https://www.ida.liu.se/~ulfni53/lpp/)
* Kim Marriott and Peter Stuckey "Programming with Constraints - An Introduction" ISBN: 9780262539081. The MIT Press, 1998. (https://mitpress.mit.edu/9780262539081/programming-with-constraints/)
Journals
* Theory and Practice of Logic Programming (https://www.cambridge.org/core/journals/theory-and-practice-of-logic-programming)
* Journal of Logical and Algebraic Methods in Programming (https://www.sciencedirect.com/journal/journal-of-logical-and-algebraic-methods-in-programming)
Web addresses
* https://www.swi-prolog.org/
* https://lpn.swi-prolog.org/
GroupsToggle Navigation
16 Teórico (Spanish - Tarde)Show/hide subpages
Weeks | Monday | Tuesday | Wednesday | Thursday | Friday |
---|---|---|---|---|---|
16-30 | 14:00-15:30 (1) | 17:00-18:30 (2) |
Teaching staff
16 Applied laboratory-based groups-1 (Spanish - Tarde)Show/hide subpages
Weeks | Monday | Tuesday | Wednesday | Thursday | Friday |
---|---|---|---|---|---|
16-30 | 15:30-17:00 (1) |