Kommentar |
Die zukünftige Entwicklung großer Softwaresysteme setzt entsprechend der Aufgabenspezifikation die Nutzung unterschiedlicher Programmierparadigmen innerhalb eines Softwaresystems voraus. Der Studierende soll unterscheiden lernen, wann welches Paradigma am zweckmäßigsten anzuwenden ist. Insbesondere durch Übung werden Fertigkeiten im logischen Programmieren erworben, wobei die Besonderheiten gegenüber anderen Paradigmen im Vordergrund stehen. |
Literatur |
- Clocksin W, Mellish C. Programmieren in Prolog. Springer, 1994. ISBN 3-540-16384-0
- Clocksin W, Mellish C. Programming in Prolog. Using the ISO Standard. Springer, 2003. ISBN 3-540-00678-8
- Shapiro E. Art of PROLOG. MIT Press, 1994. ISBN 0-262-69163-9
- Patrick Blackburn, Johan Bos, Kristina Striegnitz, Learn Prolog Now! Aktueller on-line Prolog Kurs unter [[1]].
- Peter A. Flach, Simply Logical - Intelligent Reasoning by Example, Wiley Professional Computing, John Wiley & Sons, 1994
- N. E. Fuchs: Kurs in Logischer Programmierung, Springer, 1990
- N. E. Fuchs, Logische Programmierung, in: P. Rechenberg, G. Pomberger,
- Informatik-Handbuch, 3. Auflage, Hanser, 2002
- M. R. Genesereth, N. J. Nilsson: Logical Foundations of Artificial Intelligence, Morgan Kaufmann Publishers, 1987
- C. J. Hogger: Essentials of Logic Programming, Clarendon Press, 1990
- J. W. Lloyd: Foundations of Logic Programming, Springer, 1987 (Second Edition)
- U. Nilsson, J. Maluszynski: Logic, Programming and Prolog, Wiley 1995
- R. O’Keefe: The Craft of Prolog, MIT Press, 1990
- L. Sterling, E. Y. Shapiro: The Art of Prolog, MIT Press, 1994 (Second Edition)
|
Lerninhalte |
Die logische Programmierung beruht auf der Entdeckung, dass Logik als problemnahe und effiziente Programmiersprache verwendet werden kann. Die bekannteste Vertreterin dieser Sprachen ist Prolog. Das Modul behandelt die theoretischen Grundlagen der logischen Programmierung, führt in die Sprache Prolog ein und zeigt verschiedene praktische Anwendungen, z.B. aus den Gebieten Software Engineering und Verarbeitung von natürlicher Sprache. Die im Modul integrierten Übungen ermöglichen konkrete Erfahrungen mit Prolog zu machen.
Inhalte
- Was ist logische Programmierung
- Tutorial zur Programmiersprache Prolog
- Prädikatenlogik
- Klauselform
- Logische Inferenz: Resolution, Unifikation, SLD Resolution
- Negation: Negation als Fehlschlag, SLDNF Resolution
- Listen
- Mengenprädikate
- Metainterpreter
- Definite Clause Grammars
- Exemplarische Anwendungen
- Ausblick (DATALOG, CLP, HOL)
|