(V3 + Ü2, SS 2020)
We will start with online lectures on April 6,
Registration and Moodle Learning Environment
Please register for the course via RWTHonline here.
The Moodle pages for the course contain all necessary information. They can be
A short introductory video is here.
Course Notes etc.
In addition to a short introduction to the programming language Prolog, the
lecture deals with the foundations of logic programming, with programming
techniques in these languages, with the implementation of logic
programming languages, and with their application in several areas.
More precisely, these are the topics of the lecture:
- Prerequisites from predicate logic
- Horn clauses and SLD-resolution
- Operational and denotational semantics
- Evaluation strategies
The programming language Prolog
- Syntax and semantics
- Negation as failure
- Non-logical components of Prolog
- Programming techniques
- Applications and extensions of logic programming
- K. R. Apt: From logic programming to Prolog, Prentice Hall, 1997.
- I. Bratko: Prolog Programming for Artificial Intelligence, Addison-Wesley, 2011.
- W. F. Clocksin, C. S. Mellish: Programming in Prolog, Springer, 2013.
- T. Frühwirth, S. Abdennadher:
Essentials of Constraint Programming, Springer, 2010.
- M. Hanus: Problemlösen mit Prolog, Teubner, 1987.
- J. W. Lloyd: Foundations of Logic Programming, Springer, 2013.
- K. Marriott, P. J. Stuckey:
Programming with Constraints, MIT Press, 1998.
- P. H. Schmitt: Theorie der logischen Programmierung, Springer, 1992.
- U. Schöning: Logik für Informatiker, Spektrum Akademischer Verlag, 2000.
- L. Sterling, E. Shapiro: The art of Prolog, MIT Press, 2000.
Theoretical Computer Science, Theoretical Foundations of SSE
To write Prolog-programs, we recommend the SWI Prolog System.
An alternative to SWI-Prolog is GNU