185.291 Formale Methoden der Informatik
Diese Lehrveranstaltung ist in allen zugeordneten Curricula Teil der STEOP.
Diese Lehrveranstaltung ist in mindestens einem zugeordneten Curriculum Teil der STEOP.

2019W, VU, 4.0h, 6.0EC

Merkmale

  • Semesterwochenstunden: 4.0
  • ECTS: 6.0
  • Typ: VU Vorlesung mit Übung

Lernergebnisse

Nach positiver Absolvierung der Lehrveranstaltung sind Studierende in der Lage...

  • grundlegende Methoden der Berechnungstheorie anzuwenden um z.B unentscheidbare Probleme zu identifizieren
  • fundamentale Methoden der Komplexitätstheorie auf neue Probleme anzuwenden, insb. um zu zeigen ob ein Problem polynomiell lösbar oder NP-schwer ist,
  • Probleme aus dem Bereich der formalen Methoden als Erfüllbarkeitsprobleme darzustellen, diese dann mit den entsprechenden Beweissystemen zu  lösen,  sowie die Korrektheit der benutzen Techniken und Reduktionen formal zu argumentieren,
  • partielle und vollständige Korrektheit von Softwaresystemen mittels deduktiver Verifikationsansätze basierend auf Hoare Logik und Prädikat-Transfomers formal zu zeigen. Die Studierenden sind außerdem imstande Programsemantiken zu formulieren sowie Programmeigenschaften algorithmisch zu zeigen,
  • die grundlegenden Techniken des Model Checking zu verstehen und anzuwenden: das Formulieren von Spezifikationen in Temporallogiken, das Schlussfolgern über Formeln in Temporallogiken, das Model Checking von Formeln auf Kripke Strukturen, das Anwenden von Techniken zur Reduktion des Zustandsraums, und der Einsatz von Bounded Model Checking für Verifikationsprobleme.

 

Inhalt der Lehrveranstaltung

Die Lehrveranstaltung behandelt vier Themenblöcke:

1. Grundzüge der Komplexitätstheorie: Problemreduktion, P versus NP, Unentscheidbarkeit;

2. Lösungsmethoden für das aussagenlogische Erfüllbarkeitsproblem (SAT):  Anwendungen in der Informatik;

3. Einführung in die formale Semantik von Programmiersprachen; formale Verifikation von Programmen;

4. Model checking mit Anwendungen in der Hard- und Softwareverifikation.

Didaktisches Vorgehen: Die Vorlesung wird von einer freiwilligen Übung begleitet, in der Aufgaben zu den vier Themenblöcken bearbeitet und zur Korrektur abgegeben werden können. Die Gesamtbeurteilung ergibt sich aus der abschließenden schriftlichen Prüfung.

Methoden

Die LVA is in 4 Themenblöcke unterteilt. Die LVA (und daher jeder Block) besteht aus einem Vorlesungs- und Vertiefungsteil.

Der Stoff der Lehrveranstaltung wird in den Vorlesungseinheiten präsentiert

Der Vertiefungsteil inkludiert zwei zusätzliche Lehreinheiten, die der Diskussion und dem Lösen von Übungsaufgaben dienen. Studierende erhalten für jeden Themenblock eine Übungssammlung. Ihre Lösungen werden korrigiert um Feedback zu geben.

Drei weitere Einheiten dienen einer Wiederholung grundlegender Techniken zur Beweisführung.

Prüfungsmodus

Schriftlich

Weitere Informationen

Aufwandsabschätzung

  2 h Einleitung (erste Vorlesung)
60 h Vorlesung (20 Termine à 2h + 1h Vor-/Nachbereitung)
40 h Übungsbeispiele (4 Blätter mit je 10 Beispielen à 1h)
 16 h Diskussion der Übungsbeispiele (8 Termine à 2h)
30 h Testvorbereitung
2 h schriftlicher Test
-----------------------------------------------------------
150 h = 6 Ects

Vortragende

Institut

LVA Termine

TagZeitDatumOrtBeschreibung
Di.12:00 - 14:0001.10.2019 - 21.01.2020EI 10 Fritz Paschke HS Vorlesung
Mi.12:00 - 14:0002.10.2019 - 22.01.2020EI 10 Fritz Paschke HS Vorlesung
Mo.13:00 - 15:0007.10.2019 - 27.01.2020EI 10 Fritz Paschke HS Vorlesung
Formale Methoden der Informatik - Einzeltermine
TagDatumZeitOrtBeschreibung
Di.01.10.201912:00 - 14:00EI 10 Fritz Paschke HS Vorlesung
Mi.02.10.201912:00 - 14:00EI 10 Fritz Paschke HS Vorlesung
Mo.07.10.201913:00 - 15:00EI 10 Fritz Paschke HS Vorlesung
Di.08.10.201912:00 - 14:00EI 10 Fritz Paschke HS Vorlesung
Mi.09.10.201912:00 - 14:00EI 10 Fritz Paschke HS Vorlesung
Mo.14.10.201913:00 - 15:00EI 10 Fritz Paschke HS Vorlesung
Di.15.10.201912:00 - 14:00EI 10 Fritz Paschke HS Vorlesung
Mi.16.10.201912:00 - 14:00EI 10 Fritz Paschke HS Vorlesung
Mo.21.10.201913:00 - 15:00EI 10 Fritz Paschke HS Vorlesung
Di.22.10.201912:00 - 14:00EI 10 Fritz Paschke HS Vorlesung
Mi.23.10.201912:00 - 14:00EI 10 Fritz Paschke HS Vorlesung
Mo.28.10.201913:00 - 15:00EI 10 Fritz Paschke HS Vorlesung
Di.29.10.201912:00 - 14:00EI 10 Fritz Paschke HS Vorlesung
Mi.30.10.201912:00 - 14:00EI 10 Fritz Paschke HS Vorlesung
Mo.04.11.201913:00 - 15:00EI 10 Fritz Paschke HS Vorlesung
Di.05.11.201912:00 - 14:00EI 10 Fritz Paschke HS Vorlesung
Mi.06.11.201912:00 - 14:00EI 10 Fritz Paschke HS Vorlesung
Mo.11.11.201913:00 - 15:00EI 10 Fritz Paschke HS Vorlesung
Di.12.11.201912:00 - 14:00EI 10 Fritz Paschke HS Vorlesung
Mi.13.11.201912:00 - 14:00EI 10 Fritz Paschke HS Vorlesung

Leistungsnachweis

Die Gesamtbeurteilung erfolgt auf Basis einer schriftlichen Abschlussprüfung.

Prüfungen

TagZeitDatumOrtPrüfungsmodusAnmeldefristAnmeldungPrüfung
Di.15:00 - 17:0010.12.2019HS 8 Heinz Parkus beurteilt26.11.2019 00:00 - 09.12.2019 08:00in TISS2017 Termin 6
Mo.16:00 - 19:0027.01.2020EI 9 Hlawka HS beurteilt10.01.2020 00:00 - 23.01.2020 08:00in TISS2019 Termin 1
Fr.16:00 - 18:0020.03.2020EI 9 Hlawka HS beurteilt05.03.2020 00:00 - 19.03.2020 08:00in TISS2018 Termin 2
Fr.16:00 - 18:0008.05.2020EI 9 Hlawka HS beurteilt24.04.2020 00:00 - 07.05.2020 08:00in TISS2018 Termin 3

LVA-Anmeldung

Von Bis Abmeldung bis
16.09.2019 08:00 21.10.2019 08:00 21.10.2019 08:00

Curricula

Literatur

Sämtliche Unterlagen sind im TUWEL-Kurs zu finden.

Vorkenntnisse

Grundlagen der Mathemathischen Logik und zu Algorithmen (gemäß den Lehrinhalten der LVAs Theoretische Informatik und Logik” and
“Algorithmen und Datenstrukturen”) sind Voraussetzung

Sprache

bei Bedarf in Englisch