inf407 - Programmverifikation (Vollständige Modulbeschreibung)
Modulbezeichnung | Programmverifikation |
Modulkürzel | inf407 |
Kreditpunkte | 6.0 KP |
Workload | 180 h |
Einrichtungsverzeichnis | Department für Informatik |
Verwendbarkeit des Moduls |
|
Zuständige Personen |
|
Teilnahmevoraussetzungen | |
Kompetenzziele | Einführung in Methoden zum Nachweis der Korrektheit von sequentiellen und parallelen Programmen.
Methodenkompetenzen
Sozialkompetenzen Die Studierenden:
Selbstkompetenzen
|
Modulinhalte | Programmverifikation ist ein systematischer Ansatz, die Fehlerfreiheit von Programmen zu zeigen. Dazu wird bewiesen, dass ein vorgegebenes Programm bestimmte wünschenswerte Verhaltenseigenschaften besitzt. Beispielsweise sollte ein Sortierprogramm nur sortierte Felder als Ergebnis abliefern. Bei sequentiellen Programmen geht es dabei vor allem um partielle Korrektheit, Terminierung und Abwesenheit von Laufzeitfehlern. Bei parallelen Programmen sind zusätzliche Verhaltenseigenschaften wichtig: Interferenz-Freiheit, Deadlock-Freiheit und faires Ablaufverhalten. In der Vorlesung geht es vornehmlich um die Verifikation paralleler Programme. Dazu werden klassische Methoden der Hoareschen Logik und ihre Erweiterung für parallele Programme, insbesondere auch für schwache Speichermodelle, studiert. Als Vorbereitung werden zunächst sequentielle Programme behandelt. |
Literaturempfehlungen | Essentiell:
Oder die erweiterte englische Version:
|
Links | |
Unterrichtssprache | Englisch |
Dauer in Semestern | 1 Semester |
Angebotsrhythmus Modul | jedes 2. Wintersemester |
Aufnahmekapazität Modul | unbegrenzt |
Lehr-/Lernform | V+Ü |
Vorkenntnisse | Nützliche Vorkenntnisse: Mengenlehre, Relationen und Funktionen, Aussagen- und Prädikatenlogik, Programmierkenntnisse in einer imperativen Sprache |
Lehrveranstaltungsform | Kommentar | SWS | Angebotsrhythmus | Workload Präsenz |
---|---|---|---|---|
Vorlesung | 3 | siehe Angebotsrhythmus Modul | 42 | |
Übung | 1 | siehe Angebotsrhythmus Modul | 14 | |
Präsenzzeit Modul insgesamt | 56 h |
Prüfung | Prüfungszeiten | Prüfungsform |
---|---|---|
Gesamtmodul | Am Ende des Semesters |
Klausur oder mündliche Prüfung |