====== Algebra der Programmierung ====== Prüfer: Stefan Milius \\ Dauer: 30 Minuten \\ Fragen in etwa in nahezu korrekter Reihenfolge, Antworten //kursiv//: * Wir haben ja zu beginn Datentypen kennengelernt, nenne einen und ein paar Regeln. (//z.B. Bäume, Identitätsregel, Fusionsregel//). * Zusammenhang zu späterem? (//Algebra, AlgF, initiale Algebra//) * Hat jeder Funktor eine initiale Algebra? (//-> Nein//) Warum nicht? (//-> Satz von Cantor, aber initiale Algebra müsste isomorphismus sein nach Lambeks Lemma//) **Beweise** Lambeks Lemma. * Identitätsregel, Fusionsregel inkl. Beweis für F-Algebren * Konstruktion von initialen Algebren, welche Eigenschaften muss es haben? (//F finitär, ω-Ketten, Definition of finitär, Abgeschlossenheit finitärer Funktoren unter//) Wieso ist konstruiertes Objekt die initiale Algebra? (//→ Antwort nur in etwa, ohne weitere Details des Beweises//) * Was ist eine Natürliche Transformation? Nenne ein Beispiel (//Ich nannte: Id -> V**//) * Betrachte den Funktor FX = 2 x X^Σ, mit Σ fest und endlich. Wie sehen die Koalgebren zu F aus? (//-> Deterministische Automaten//) Wie lautet die Trägermenge der terminalen Koalgebra? (//-> Formale Sprachen//)