Universität Bremen
FB3 AG BKB

Formale Methoden der Softwaretechnik

Willkommen auf der Heimatseite der Lehrveranstaltung „Formale Methoden der Softwaretechnik“ im Sommersemester 2011. Auf dieser Seite finden sich:

Inhaltliches

Inhalt der Veranstaltung sind sogennannte Formale Methoden. Hierunter versteht man ganz allgemein Methoden, die Korrektheit von Software mit mathemathischen Mitteln (meist formaler Logik) sicherstellt. Formale Methoden werden immer wichtiger, weil immer mehr sicherheitskritische Funktionen in Software implementiert werden, und in immer mehr Situationen Softwarefehler inakzeptabel sind; hier besteht ein großer Bedarf. Gleichzeitig erfordert der Einsatz formaler Methoden auch eine gewisse Kenntniss der mathematischen Hintergründe, die weit über übliche Programmierkenntnisse hinausgeht, und die in dieser Veranstaltung vermittelt werden.

In der Veranstaltung werden wir verschiedene Logiken (Aussagenlogik, Prädikatenlogik erster und höhere Stufe) kennenlernen. Wir werden sehen, wie wir in diesen Logiken Korrektheitsaussagen (und welche) ausdrücken können, und werden Werkzeuge kennenlernen, die mit diesen Logiken arbeiten (SAT-Solver, automatische und interaktive Beweiser, SMT-Solver), und lernen, diese Werkzeuge sinnvoll einzusetzen, um korrekte Software zu entwickeln.

Die Ziele dieser Veranstaltung sind

Organisatorisches

Kenndaten: VAK 03-MB-706.05, Kategorie: V, ECTS: 6.

Die Veranstaltung ist als Kurs konzipiert, mit Vorlesungen und interaktivem Übungsbetrieb. Die Termine sind

Achtung, die Vorlesung am 30.06.11 muss leider wegen Abwesenheit der Veranstalter ausfallen.

Die Veranstalter sind Till Mossakowski und Christoph Lüth (siehe verlinkte Heimatseiten für die Kontaktdetails).

Vorlesungsunterlagen

Hier finden sich die Vorlesungsfolien:

Übungsblätter

Software für den Übungsbetrieb

Nachdem Sie diese Dateien heruntergeladen haben [1] [2], können sie in die die VirtualBox (siehe auch das Handbuch dazu), oder VMWare oder andere Virtualisierungssoftware geladen werden; Sie erhalten dann eine virtuelle Machine mit einer Ubuntu-Installation, auf der alle Software für die Veranstaltung vorinstalliert ist.