Logikprogrammierung
(V3 + Ü2, SS 2017)
|
|
Details und aktuelle Informationen finden Sie auf der englischen Seite zur Vorlesung.
Sprache
englisch
Inhalt
Neben einer kurzen Einführung in die Sprache Prolog behandelt diese Vorlesung
die Grundlagen der logischen Programmierung, logische
Programmiertechniken, die Implementierung von Logiksprachen sowie den
Einsatz logischer Programmiersprachen in verschiedenen Anwendungsbereichen.
Im Einzelnen werden folgende Themen besprochen:
- Prädikatenlogische Grundlagen
- Unifikation
- Resolution
- Horn-Klauseln und SLD-Resolution
-
Logikprogramme
- Operationelle und denotationelle Semantik
- Auswertungsstrategien
-
Die Programmiersprache Prolog
- Syntax und Semantik
- Negation as Failure
- Nicht-logische Bestandteile von Prolog
- Programmiertechniken
- Anwendungen und Erweiterungen der Logikprogrammierung
Literatur
- 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.
Zuordnung
Wahlpflichtfach Theorie (für Bachelor),
Theoretische Informatik (für Master Informatik und Master SSE)
Software
Um Prolog-Programme zu erstellen, kann das SWI Prolog System
verwendet werden:
Eine Alternative zu SWI-Prolog ist GNU
Prolog: