Logikprogrammierung

Sommersemester 2006
Lehrstuhl für Programmiersprachen und Übersetzerkonstruktion
Hauptstudium

Nr.ArtTermineRaumVeranstalter
080207V4Mo 10:15 - 12:00LMS2-Ü1M. Hanus
  Mi 10:15 - 12:00LMS2-Ü1 
080198Ü2Do 14:15 - 16:00LMS2-Ü2M. Hanus, S. Fischer

Vorlesungsbeginn

Montag, 10.4.2006, 10:15 Uhr, Sem-Ü1

Zielgruppe

Studierende im Hauptstudium des Studiengangs Diplominformatik, des Bachelor- oder Masterstudiengangs Informatik sowie Studierende mit Nebenfach Informatik

Voraussetzungen

Grundstudium

Inhalt

Die Logikprogrammierung ist ein Ansatz, Software auf einem sehr hohen Abstraktionsniveau zu entwickeln. Im Gegensatz zu imperativen (und auch funktionalen) Sprachen muss bei der Logikprogrammierung nur das zu lösende Problem beschrieben werden - die Lösungsfindung selbst ist Aufgabe der Implementierung der jeweiligen logischen Programmiersprache. Somit stehen dem Programmierer direkt Techniken zur Lösungssuche zur Verfügung. Außerdem kann er mit partiellen Informationen arbeiten, d.h. er kann lediglich Bedingungen angeben, unter denen eine Lösung gefunden werden soll. Aus diesem Grund wird die Logikprogrammierung in vielen Anwendungsbereichen eingesetzt, wie z.B. (deduktive) Datenbanken, Expertensysteme, Theorembeweiser, künstliche Intelligenz, Planungs- und Optimierungsprobleme (Operations Research) u.v.m.

In dieser Vorlesung werden sowohl die Grundlagen der Logikprogrammierung als auch wichtige Programmiertechniken behandelt. Darüberhinaus wird eine Einführung in die heute verwendeten Implementierungstechniken gegeben, die es ermöglichen, Logikprogramme mit einer ähnlichen Effizienz wie klassische imperative Programme ablaufen zu lassen.

Kurzübersicht

In den begleitenden Übungen wird für die praktischen Programmieraufgaben die Sprache Prolog eingesetzt.

Ergänzende Materialien zur Vorlesung

Literatur

Weitere Literatur wird in der Vorlesung bekanntgegeben.

Informationen zu den Übungen


Michael Hanus