| TU München | Informatik | Software & Systems Engineering | Theorem Proving Group | Lehre |
Praktikum Spezifikation und Verifikation
Prof. Tobias Nipkow
Steven Obua
|
Wollten Sie schon immer verstehen, was Ihr Programm eigentlich macht? Dann sind Sie hier richtig! |
|
![]() |
So sollten Sie z.B. ein rekursives funktionales Programm schreiben können, das die natürlichen Zahlen 1, ..., n aufsummiert. Der Begriff der vollständigen Induktion sollte kein Fremdwort sein, und der Beweis, dass der von obigem Algorithmus berechnete Wert gleich n(n+1)/2 ist, keine fundamentalen Schwierigkeiten bereiten.
Die Korrektheit von sicherheitskritischen Hard- und Softwaresystemen zu gewährleisten, ist immer noch ein ernstes Problem. Die zentralen Ziele dieses Praktikums sind das Erlernen
Konkret werden einige Anwendungsbeispiele behandelt, wobei wir aus Zeitgründen von vielen Details abstrahieren. Es werden aber auch Grundlagen behandelt wie
An jedem dieser Beispiele werden spezifische Modellierungs- und Beweistechniken geübt. Die Spezifikation und Verifikation erfolgt in Isabelle/HOL.
In einer das Praktikum speziell begleitenden Vorlesungsreihe werden die Grundlagen zu Isabelle/HOL vermittelt:
In der ersten Hälfte des Semesters findet eine Vorlesung statt, in der die nötigen Isabelle/HOL Kenntnisse vermittelt werden. Die Aufgaben sind jeweils innerhalb von 1-3 Wochen zu bearbeiten und bei der Praktikumsleitung zu präsentieren (Termin nach Vereinbarung). Die Bearbeitung erfolgt in Gruppen von je 2 Personen. Idealerweise finden Sie sich selbst direkt nach der ersten Vorlesung zu Gruppen zusammen und teilen diese dann der Praktikumsleitung mit.
Als Arbeitsumgebung stehen die am Lehrstuhl üblichen Sparc/Solaris und x86/Linux Plattformen zur Verfügung.
Jeder Gruppe ist ein individueller Betreuer zugewiesen. Erfreulicherweise gibt es dieses Semester zusätzlich wieder einen studentischen Betreuer, Lukas Bulwahn, an den Sie sich im Rechnerraum wenden können, wenn Sie spontane Fragen zur Benutzung von Isabelle haben. Die Betreuungszeiten werden an dieser Stelle bekanntgegeben werden.
Auf den sunbroy Rechnern lässt sich Isabelle (zusammen mit der Proof General Benutzeroberfläche) wie folgt starten:
/usr/proj/isabelle/Isabelle/bin/Isabelle
Mit
/usr/proj/isabelle/bin/isatool install -p ~/bin
kann man sich das Isabelle binary auch im eigenen
~/bin Verzeichnis installieren.
Sie können Isabelle recht einfach auf dem eigenen PC zuhause installieren. Isabelle sollte gut mit allen gängigen Linux-Distributionen zusammenarbeiten. Angenehmes Arbeiten ist ab ca. 384M Arbeitsspeicher und einer 500Mhz CPU möglich. Hinweise zur Installation finden Sie hier. Installation unter Windows (auch cygwin) ist nicht zu empfehlen; als Alternative bietet sich die Isabelle Live CD IsaMorph an.
Zum Abschluss des Praktikums findet eine Präsentation der letzten Aufgabe in Form eines 20- bis 25-minütigen Vortrags statt, an dem alle Teilnehmer einer Gruppe beteiligt sein sollten.
Für den Vortrag steht Ihnen ein Beamer und Notebook zur Verfügung, Sie können aber auch einen Tageslichtprojektor verwenden.
| Steven Obua | Last modified: Wed Jun 20 13:59:41 MEST 2007 |