¨Ubungen zu Logik und Künstliche Intelligenz

Werbung
Heilbronn, den 11.6.2010
Prof. Dr. V. Stahl
WS 10/11
Übungen zu Logik und Künstliche Intelligenz
Blatt 10
Aufgabe 1. Sei
f
=
(R, R, R)
R
= {(a, b) | a, b ∈ R ∧ a2 + b2 = 2}.
Handelt es sich bei f um eine Funktion bzw. eine partielle Funktion?
Begründen Sie Ihre Antwort.
Aufgabe 2. Definieren Sie eine Relation R, so dass
f = (P (N), P (N2 ), R)
eine Funktion ist. Berechnen Sie dann f ({2, 5}) und f (∅).
Aufgabe 3. Für jede Relation R ist die Umkehrrelation R−1 definiert durch
R−1 = {(a, b) | bRa}.
Finden Sie eine Menge A und eine Relation R so dass
• (A, A, R) und (A, A, R−1 ) Funktionen sind
• (A, A, R) eine Funktion ist, aber (A, A, R−1 ) keine Funktion ist.
Aufgabe 4. Sei A eine Menge von Zahlen und neg das Tripel
neg = (A, A, R)
mit
R = {(x, y) | x ∈ A, y ∈ A, x + y = 0}.
Für welche der nachfolgenden Mengen A ist neg eine partielle Funktion, für
welche eine totale Funktion? Begründen Sie Ihre Antwort und berechnen
Sie neg(x) für ein paar Beispiele x ∈ A.
A
= N
A
= Z
A
= R
A
= R \ {0}
Aufgabe 5. Wieviele Elemente hat die Menge {0, 1} → {0, 1, 2}? Stellen Sie
ein Element dieser Menge als Tripel (A, B, R) dar.
1
Aufgabe 6. Wieviele Elemente hat die Menge
¡
¢
{0, 1} × {0, 1} → {0, 1} ?
Hinweis: Achten Sie auf die Klammern, es handelt sich hier nicht um eine
Menge von Funktionen.
Aufgabe 7. Sei
int = {−231 , . . . , 231 − 1}
die Menge aller ganzer Zahlen, die mit dem Java Datentyp int dargestellt
werden können. Sei
+int ∈ int2 → int
die int Addition, die in Java zur Verfügung gestellt wird. Sei weiterhin
+Z ∈ Z2 → Z
die Addition ganzer Zahlen. Lesen Sie im Skript nach, wie der Begriff
der Erweiterung einer Funktion definiert ist. Ist +Z eine Erweiterung von
+int ? Überlegen Sie sich, was im Fall eines Overflows passiert und begründen Sie Ihre Antwort indem Sie die Definition des Begriffs Erweiterung verwenden.
Aufgabe 8. Zeigen Sie, dass für jede Funktion f ∈ A → B die Relation
R = {(x, y) | x, y ∈ A, f (x) = f (y)}
reflexiv auf A, symmetrisch und transitiv ist. Wenn der allgemeine Beweis
zu schwierig ist, untersuchen Sie ein paar Beispiele für konkrete Mengen
A und Funktionen f .
Aufgabe 9. Sei
(N × N, N, R)
f
=
R
= {((a1 , a2 ), b) | a1 , a2 , b ∈ N, a1 + a2 = b}
Ist f eine Funktion? Wie sieht’s mit
f
=
(N, N × N, R)
R
=
{(a, (b1 , b2 )) | a, b1 , b2 ∈ N, b1 + b2 = a}
aus? Beweisen Sie Ihre Antwort ausführlich.
Aufgabe 10. Sei
(N2 , N, R) mit
f
=
R
= {(x, y, z) | x, y, z ∈ N ∧ xy = xz}.
2
Beweisen Sie ausführlich, dass f eine Funktion ist. Wäre auch
f
=
(Z2 , Z, R) mit
R
=
{(x, y, z) | x, y, z ∈ Z ∧ xy = xz}
eine Funktion?
Aufgabe 11. Nennen Sie jeweils ein Beispiel für eine Funktion f ∈ N → N für
das die Formel
¡
¢
∀x, y ∈ N f (x) = f (y) → x = y
wahr bzw. falsch ist.
Aufgabe 12. Finden Sie 3 Beispiele von Funktionen und 3 Beispiele von partiellen Funktionen, die nicht total sind. Es sollten auch mehrstellige Funktionen darunter sein.
Aufgabe 13. Sei f ∈ A → B und g ∈ B → C. Außerdem sei f 0 ∈ A0 →
B 0 Erweiterung von f und g 0 ∈ B 0 → C 0 Erweiterung von g. Ist dann
auch g 0 ◦ f 0 Erweiterung von g ◦ f ? Finden Sie einen Beweis oder ein
Gegenbeispiel.
Aufgabe 14. Gegeben sind zwei Funktionen f ∈ R → R2 und g ∈ R2 → R mit
f (x)
=
(2x, 3x + 1)
g(x, y)
=
x − 5y
Bestimmen Sie die Funktion g ◦ f und f ◦ g.
Aufgabe 15. Gegeben sind die Funktionen
f
g
f (x) = (2x + 4, x2 )
g(x, y) = x − y
∈ N → N × N,
∈ N × N → Z,
Untersuchen Sie ob die Kompositionen f ◦ g bzw. g ◦ f existieren und falls
ja berechnen Sie jeweils die entstehende Funktion. Geben Sie auch an von
wo nach wo sie abbildet.
Aufgabe 16. Seien
f
∈
int → double
g
∈
double → int
die Typkonversionsfunktionen zwischen int und double in Java. Welche
der folgenden Aussagen sind wahr:
∀x ∈ int (g ◦ f )(x) = x
∀y ∈ double (f ◦ g)(x) = x
3
Herunterladen