Ziele |
In diesem Fach werden einerseits die theoretischen Grundlagen der mathematischen Logik behandelt, die in der Diskussion des Zusammenhangs zwischen der inhaltlichen "Wahrheit" einer Aussage und ihrer formalen "Beweisbarkeit" mündet; darauf aufbauend werden grundsätzliche Fragen der Aussagekraft und der Einschränkungen formaler Logik behandelt. Andererseits wird in diesem Fach der fundamentale Zusammenhang zwischen der Mathematik/Logik und der Informatik herausgearbeitet. Insbesondere werden die theoretischen Grundlagen der Informatik, die wissenschaftliche Behandlung von Programmen, und alternative (auf mathematischen Prinzipien aufbauende) Programmiermodelle präsentiert. Die Studierenden lernen damit, die wichtige Verbindung zwischen Mathematik und Informatik herzustellen, insbesondere informatische Konzepte formal zu behandeln.
|
Lehrinhalte |
Mathematische Logik:
Aussagenlogik, Prädikatenlogik erster Stufe, Syntax, Semantik, Normalformen, Beweissysteme, Korrektheit und Vollständigkeit, Ausblick auf logisches Programmieren und Programmverifikation; Aussagekraft und Beweiskraft der Prädikatenlogik, Gödels Vollständigkeitssatz, Gödels Unvollständigkeitsatz, nicht-standard-Modelle.
Theoretische Informatik:
Berechenbarkeitstheorie, entscheidbare logische Theorien, Entscheidbarkeits- und Komplexitätsklassen, Analyse von Algorithmen.
Software Science:
Praktische Software-Technologie, formale Methoden der Software-Entwicklung, formale Semantik von Programmiersprachen.
Programmiermodelle:
Logisches Programmieren, Funktionales Programmieren, Rewriting-Systeme, paralleles und verteiltes Rechnen.
Spezialvorlesung Logik und Softwaredesign, Seminar Logik und Softwaredesign:
Spezielle Themen und aktuelle wissenschaftliche Arbeiten aus dem Fach Logik und Softwaredesign.
|