Home | english  | Impressum | Datenschutz | Sitemap | KIT

Entscheidungsverfahren mit Anwendungen in der Softwareverifikation

Entscheidungsverfahren mit Anwendungen in der Softwareverifikation
Typ: Vorlesung / Übung (VÜ)
Semester: WS 19/20
Ort:

Raum 236 (Di, Vorlesung)

Raum -109 (Mo, Übungen, 14-tägig)

Zeit:

Di 11:30-13:00

Mo 17:30 - 19:00 14-tägig (Übungen)

Beginn: 22.10.2019
Dozent: Markus Iser
Prof. Dr. Carsten Sinz
SWS: 3
LVNr.: 2400073

Entscheidungsverfahren sind Algorithmen, die für ein gegebenes Problem immer eine korrekte Ja/Nein-Antwort liefern. Sie spielen in der Softwareverifikation eine entscheidende Rolle, da sich mit ihrer Hilfe eine Vielzahl von Korrektheitseigenschaften (z.B. in Bezug auf Speicherzugriffsfehler, Überläufe oder funktionale Eigenschaften) überprüfen und vollautomatisch beweisen lassen. Die Vorlesung stellt eine Reihe von logischen Entscheidungsverfahren und ihre Anwendung in der automatischen Programmverifikation vor.

Themen sind unter anderem:

  • SAT-Solving, DPLL
  • DPLL(T)
  • Gleichheit mit uninterpretierten Funktionen, Kongruenzabschluß
  • Lineare Arithmetik ganzer Zahlen
  • Bitvektoren und Machinenarithmetik
  • Arrays
  • Quantoren, Quantorenelimination
  • Software Bounded Model Checking
  • Symbolic Execution
  • Predicate Abstraction
  • Werkzeuge: LLBMC, KLEE, SatAbs

 

Vorlesungsfolien

 

Übungsblätter