In diesem Praktikum soll der Einsatz eines Theorembeweisers erlernt werden und schließlich selbstständig zur Formalisierung und Verifikation eines Projekts aus dem Bereich der Sprachtechnologie verwendet werden. Der verwendete Theorembeweiser ist der Beweisassistent Isabelle/HOL. In der ersten Hälfte des Praktikums erlernt man anhand von Übungsblättern die wichtigsten Prinzipien im Theorembeweisen, z.B. Deduktion, Simplifikation, Rekursion, induktive Definitionen. In der zweiten Hälfte des Praktikums soll in Teams selbstständig ein Thema im Bereich der Sprachtechnologie, z.B. Semantik, Typsysteme, Compiler, formalisiert und verifiziert werden.
Die Übungsblätter werden einzeln, das vollständige Projekt als Gruppenarbeit bearbeitet und abgegeben. Die Anwesenheit an allen Übungsterminen, bei der Projektvorstellung und -präsentation wird erwartet. Es gibt keine begleitende Vorlesung für dieses Praktikum. Es muss keine schriftliche Praktikums- oder Projektausarbeitung erstellt werden.
Maximale Teilnehmerzahl: 20
Voraussetzungen
Kenntnisse in Logik, funktionaler Programmierung und formalen Systemen sind vorteilhaft, aber nicht zwingend.Einordnung
- Master-Studenten: Diese Veranstaltung ist Teil der Module
- [IN4INSPT] Sprachtechnologien
- [IN4INFM] Formale Methoden
- [IN4INPRAK2] Informatik-Praktikum 2
- Diplom-Studenten: Diese Veranstaltung ist Teil der Vertiefungsfächer
- VF 1: Theoretische Grundlagen
- VF 6: Softwaretechnik und Übersetzerbau
Unterlagen und Programme
- Isabelle 2016 ist hier herunterladbar.
- Eine gutes Tutorial zu Isabelle/HOL findet sich hier, die meisten Themen werden in der ersten Hälfte des Praktikums behandelt.
- Der kurze Stil-Guide für Isabelle darf konsultiert werden; etwa nach dem dritten Termin macht das meiste dort beschriebene Sinn (und was keinen Sinn macht haben wir euch absichtlich nicht erzählt).
Abgabe der Übungsaufgaben
Die Lösungen der Übungen sind über den Praktomaten einzureichen. Der Zugang erfolgt mit den Rechenzentrums-Zugangsdaten.
Übungen
Wenn nicht anders vermerkt, finden die Übungen jeweils von 14:00 Uhr bis 15:30 Uhr statt.
Datum | Raum | Thema | Unterlagen |
---|---|---|---|
19.4. | -143 | Einleitung, Deduktion | Folien Aufgabenblatt Isabelle-Rahmen Lösung |
26.4. | -143 | Quantoren, Fallunterscheidung, Definition, Gleichungen | Folien Aufgabenblatt Isabelle-Rahmen Lösung |
3.5. | -143 | apply-Skripte, automatische Taktiken, Datentypen, Rekursion und Induktion | Folien Aufgabenblatt Isabelle-Rahmen Lösung |
10.5. | -143 | allgemeine und wechselseitige Rekursion | Folien Aufgabenblatt Isabelle-Rahmen Lösung |
17.5. | -143 | induktive Prädikate | Folien Aufgabenblatt Isabelle-Rahmen Lösung |
24.5. | -143 | Maps, Split-Regeln | Folien Aufgabenblatt Isabelle-Rahmen Lösung |
31.5. | -143 | Semantik und Projektvorstellung | Folien Sprach-Projekt: 1 2 3 ; Mathe-Projekt: 1 |
7.6. | -143 | Attribute, Typedef, Locales | Folien Sitzung |
14.6. | -143 | Lifting, Codegenerierung, Koinduktion | Folien Sitzung |
21.6. | Entfällt | ||
28.6. | -143 | Koinduktion, Dokumentenerzeugung | Folien Sitzung Koinduktive Big-Step-Semantik |
5.7. | -143 | Eigene Objekt-Logiken | Aussagenlogik |
12.7. | -143 | Informationen zur Projektpräsentation | Folien |
19.7. 16 Uhr | 010 | Projektvorstellung | |
Alle Folien in einem Dokument | |||
dito, ohne Overlays (zum Drucken) |
Veranstalter
Lehrstuhlinhaber |
---|
Prof. Gregor Snelting |
Ehemalige Mitarbeiter |
---|
Dr. rer. nat. Joachim Breitner |
Dipl.-Inform. Denis Lohner |