¨Ubung 3 zur Vorlesung”Algebra des Programmierens“

Werbung
@
TECHNISCHE UNIVERSITÄT CAROLO-WILHELMINA ZU BRAUNSCHWEIG
Institut für Theoretische Informatik
Dr. J. Koslowski
Braunschweig, 2008-04-24
Übung 3 zur Vorlesung Algebra des Programmierens“
”
Besprechungstermin 2008-05-08
Aufgabe 8
Untersuchen Sie, ob die Umkehrung von Listen
listr A
reverse
/ listr A
mittels einer foldr - Operation definiert werden kann.
Aufgabe 9
Die Addition sowie die Multiplikation natürlicher Zahlen werden normalerweise als binäre Operationen
betrachtet, die zwei Argumente benötigen. Aufgrund der Assioziativität und wegen der Existenz eines
neutralen Elements ist es möglich, diese Operationen für beliebige Anzahlen von Argumenten zu verallgemeinern:
prod /
sum /
Nat bzw. listr Nat
Nat
listr Nat
(a) Drücken Sie diese Operationen mit Hilfe einer fold - Operation aus.
bin /
(b) Funktioniert das auch für die binäre Operation tree A × tree A
tree A, die zur Spezifikation
binärer Bäume mit Blättern aus A verwendet wurde? Begründen Sie Ihre Antwort.
Aufgabe 10
Untersuchen Sie die Mengen zusammen mit den (binären) Relationen darauf, ob es analoge Konstruktionen zum cartesischen Produkt und zur disjunkten Vereinigung gibt, die entsprechende universelle
Eigenschaften haben (nun bzgl. binärer Relationen, anstelle von Funktionen).
Aufgabe 11
Zeigen oder widerlegen Sie:
(a) Die Epimorphismen in Pos , der Kategorie der halbgeordneten Mengen und ordnungserhaltenden
Abbildungen, sind genau die surjektiven ordnungserhaltenden Abbildungen.
(b) Die Monomorphismen in Mon , der Kategorie der Monoide und Monoidhomomorphismen, sind
genau die injektiven Monoidhomomorphismen.
Lösungsvorschlag:
(a) hP, ≤i
e
/ hQ, vi sei eine ordnungserhaltende Abbildung.
f
// R,
Ist e surjektiv, so trennt e als Epimorphismus in Set alle verschiedenen Abbildungen Q
g
insbesondere also auch ordnungserhaltende Abbildungen, falls R mit einer Halbordnung versehen
ist.
Ist e nicht surjektiv, etwa q ∈
/ e[P ] , so betrachten wir die beiden “oberen Abschnitte” A :=↑ q :=
{ x ∈ Q : q ≤ x } und B := A \ {q} . Deren charakteristische Funktionen sind ordungserhaltende
Abbildungen von hQ, vi in die zwei-elementige Kette h2, ≤i . Wegen q ∈
/ e[P ] stimmen die Durchschnitte A ∩ e[P ] und B ∩ e[P ] überein. Aber das bedeutet gerade χa ◦ e = χB ◦ e . Folglich ist e
kein Epimorphismus.
(b) hM, ·, ei
h
/ hN, ?, ii sei ein Monoidhomomorphismus.
f
Ist h injektiv, so trennt h als Monomorphismus in Set alle verschiedenen Abbildungen L
insbesondere also auch Monoidhomomorphismen.
g
// M ,
Ist h nicht injektiv, etwa
h(a) = h(b) für a, b ∈ M verschieden, so betrachten wie die entsprechena /
/ M . Bekanntermaßen lassen sie sich eindeutig zu Monoidhomomorphismen
den Abbildungen
1
ā /
b
/ M fortsetzen, die nach Vorausssetzung h ◦ ā = h ◦ b̄ erfüllen. Damit ist h kein Mono1∗ ∼
= IN
b̄
morphismus.
Herunterladen