FK Informatik LS XIV Software Engineering Prof. Dr. Jakob Rehof M. Sc. Andrej Dudenhefner
Übungen zur Vorlesung
Logische Methoden des Software Engineerings
Wintersemester 2017/2018 Übungsblatt Nr. 3
Abgabetermin: 2.11.2017 (in der Übung)
Gemeinsame Abgaben von Gruppen bis zu 4 Personen sind möglich. 25.10.2017 Arbeite Kapitel 1 aus dem Buch Sørensen, Morten Heine B., Urzyczyn, Paweª: Lectures on the Curry- Howard Isomorphism, 1998 soweit durch, dass mindestens die Denitionen, Beispiele und Sätze ver- standen sind.
Aufgabe 1 (Churchnummerale) (2Punkte)
Zeigen Sie, dass gilt:
A∗ cn cm=cn·m
wobei:
• cn:=λsz.sn(z)
• A∗ :=λxys.x(y s)
Aufgabe 2 (Projektion) (2Punkte)
Geben Sieλ-Terme Pn und π1. . . πn fürn∈N an, so dass für alleλ-Terme Qj gilt:
(PnQ1. . . Qn)πi =β Qi
(Aufgabe entspricht 1.7.16 im Buch Sørensen, Morten Heine B., Urzyczyn, Paweª: Lectures on the Curry-Howard Isomorphism, 1998.)
Aufgabe 3 (Fixpunktkombinator) (2Punkte)
Seiλx1x2. . . xn.M eine Abkürzung fürλx1.λx2. . . λxn.M. Sei
? =λabcdef ghijklmnopqstuvwxyzr.r(thisisaf ixedpointcombinator)
$ =??????????????????????????
Zeige, dass $ ein Fixpunktkombinator ist, d.h. es gilt$F =β F ($F). Hinweis: Folgende Beobachtungen könnten hilfreich sein:
• ?abstrahiert über 26 Zeichen.
• thisisaf ixedpointcombinato enthält 26 Zeichen.
• $ enthält 26 Vorkommen von?.
Seite 1 von 2
(Aufgabe entspricht 1.7.17 im Buch Sørensen, Morten Heine B., Urzyczyn, Paweª: Lectures on the Curry-Howard Isomorphism, 1998.)
Aufgabe 4 (Negation) (2 Punkte)
Deniere einenλ-Termneg so, dass
neg true=β false neg false=β true
gilt.
(Aufgabe entspricht 1.7.18 im Buch Sørensen, Morten Heine B., Urzyczyn, Paweª: Lectures on the Curry-Howard Isomorphism, 1998.)
Seite 2 von 2