Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Hauptstudiumsprüfungen » Lehrstuhl 8 » Protokoll (Übersicht)
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige Überarbeitung | ||
pruefungen:hauptstudium:ls8:semprog_ss13 [29.07.2013 12:34] – rootzlevel | pruefungen:hauptstudium:ls8:semprog_ss13 [29.07.2013 13:05] (aktuell) – rootzlevel | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Protokoll ====== | ====== Protokoll ====== | ||
- | | + | Prüfer: Daniel, Lutz. Fragen nur von Daniel |
Zeile 10: | Zeile 10: | ||
- Nachfrage: Was ist mit: | - Nachfrage: Was ist mit: | ||
- | < | + | |
- | H: x = 1 | + | |
| | ||
- | </ | ||
- | - Antwort: Geht net, nur mit inversion. contradiction will tatsächlich | + | - Antwort: Geht net, nur mit inversion. contradiction will tatsächlich False (oder (A ∧ ¬A)) |
- | False (oder (A ∧ ¬A)) | + | |
===== Wie implementiert man conjunction ===== | ===== Wie implementiert man conjunction ===== | ||
- | - Antwort: Induktiver Datentyp mit einem Konstruktor, | + | - Antwort: Induktiver Datentyp mit einem Konstruktor, |
- | nimmt. | + | |
- Frage: Wie prooft man es? | - Frage: Wie prooft man es? | ||
- Antwort: split oder apply vom Konstructor | - Antwort: split oder apply vom Konstructor | ||
+ | |||
+ | ===== Was ist functional extensionality ==== | ||
+ | |||
+ | - forall x, f x = g x -> f = g | ||
===== Wie haben wir Program-Equivalence definiert ===== | ===== Wie haben wir Program-Equivalence definiert ===== | ||
Zeile 32: | Zeile 32: | ||
- Für expressions: | - Für expressions: | ||
- | - Für statements: Genau dann wenn das Eine mit state x terminiert, tuts | + | - Für statements: Genau dann wenn das Eine mit state x terminiert, tuts das andere auch. |
- | das andere auch. | + | |
+ | ===== Was ist ein Hoare-Triple ===== | ||
+ | |||
+ | - { P } c { Q } | ||
+ | - P, Q sind Assertions | ||
+ | - P gilt auf st, c / st || st', Q gilt für st' | ||
===== Schreibe die Hoare-Kalkül-Regeln hin ===== | ===== Schreibe die Hoare-Kalkül-Regeln hin ===== | ||
Zeile 41: | Zeile 46: | ||
===== Beweisen sie ein Fakultätsprogramm in Hoare ===== | ===== Beweisen sie ein Fakultätsprogramm in Hoare ===== | ||
- | Habe hingeschreben: | + | - Habe hingeschreben: |
# | # | ||
Zeile 50: | Zeile 55: | ||
end | end | ||
{ x = n! } | { x = n! } | ||
- | # | ||
- | | + | - Anwenden: Seq, Assign, Consequence, |
- | | + | - Nachdem ich mit consequence die invariante hatte, hat er abgebrochen. |
===== Was ist Big-Step vs Small-Step ===== | ===== Was ist Big-Step vs Small-Step ===== | ||
- | - Programm auf einmal komplett evaluieren vs. einzelne | + | - Programm auf einmal komplett evaluieren vs. ec terminiertinzelne |
===== Was ist zB ein Vorteil von Small-Step ===== | ===== Was ist zB ein Vorteil von Small-Step ===== | ||
- | | + | - Implementierung von Parallel-Imp |