Diskrete Mathematik LVA 703015 Ausgewählte Musterlösungen, 3

Werbung
Diskrete Mathematik
Ausgewählte Musterlösungen, 3. PS-Blatt
LVA 703015
Institut für Informatik
2) Lösung. Basis (F = atomare Aussage E):
E enthält keine Operatoren, also ist E = E 0 .
Schritt:
• (F = ¬A): Laut IH existiert eine zu A äquivalente Formel A0 , welche als einzigen Operator
Z verwendet. F 0 = (A0 ZA0 ) enthält dann ebenfalls als einzigen Operator Z. Die Äquivalenz
F ≡ F 0 kann über eine Wahrheitstabelle gezeigt werden.
• (F = (A ∨ B)): Laut IH existieren A0 und B 0 welche zu A bzw. B äquivalent sind und
als einzigen Operator Z enthalten. F 0 = ((A0 Z A0 ) Z (B 0 Z B 0 )) enthält dann als einzigen
Operator Z. Die Äquivalenz F ≡ F 0 kann wieder über eine Wahrheitstabelle gezeigt
werden.
• (F = (A ∧ B)): Analog zum Fall (A ∨ B) mit F 0 = ((A0 Z B 0 ) Z (A0 Z B 0 )).
4) Lösung. Sei a ≺ b genau dann wenn a 6= b und a ein Teiler von b ist. Die Ordnung a ≺ b
auf {n ∈ N | n ≥ 2} ist wohlfundiert. Wir zeigen nun für ein beliebiges n ≥ 2 mittels
wohlfundierter Induktion bezüglich ≺, dass n als Produkt von Primzahlen dargestellt werden
kann. Wenn n selbst eine Primzahl ist, dann gilt die Aussage trivialerweise. Wenn n keine
Primzahl ist, dann gibt es natürliche Zahlen n1 ≥ 2 und n2 ≥ 2 für die gilt n = n1 n2 , n1 6= n
und n2 6= n. Also auch n1 ≺ n und n2 ≺ n. Über die Induktionshypothese erhalten wir
daher Primzahlen p1 , . . . , pk und q1 , . . . , q` so dass n1 = p1 · · · pk und n2 = q1 · · · q` . Da
n = p1 · · · pk q1 · · · q` ist der Beweis abgeschlossen.
5) Lösung.
• Rekursive Aufrufe von nat finden nur auf lexikographisch kleineren Argumenten
statt: x0 >gradlex x und x1 >gradlex x, wenn x ∈ B. Rekursive Aufrufe von bin finden nur
auf echt kleineren Argumenten statt: 2n > n und 2n + 1 > n, wenn n ∈ N+ .
• Mittels Induktion auf x: bin(nat(1)) = bin(1) = 1, bin(nat(x0)) = bin(2nat(x)) =
bin(nat(x))0 = x0 und bin(nat(x1)) = bin(2nat(x) + 1) = bin(nat(x))1 = x1. Wobei in
den letzten beiden Gleichungsketten die Induktionshypothese jeweils im letzten Schritt
verwenden wird.
Mittels Induktion auf n: nat(bin(1)) = nat(1) = 1, nat(bin(2n)) = nat(bin(n)0) =
2nat(bin(n)) = 2n und nat(bin(2n + 1)) = nat(bin(n)1) = 2nat(bin(n)) + 1 = 2n + 1.
Wobei in den letzten beiden Gleichungsketten die Induktionshypothese jeweils im letzten
Schritt verwenden wird.
• Mittels Induktion auf x.
– Für x = 1 gilt 20 = 1 ≤ 1 < 2 = 21 .
– Für x = y0 erhalten wir die Induktionshypothese 2|y|−1 ≤ nat(y) < 2|y| . Dann
gilt 2|x|−1 = 2|y| = 2 · 2|y|−1 ≤ 2nat(y) < 2 · 2|y| = 2|x| und wir schließen mit
2nat(y) = nat(y0) = nat(x).
– Für x = y1 erhalten wir die Induktionshypothese 2|y|−1 ≤ nat(y) < 2|y| . Dann gilt
2|x|−1 = 2|y| = 2 · 2|y|−1 ≤ 2nat(y) < 2nat(y) + 1 < 2 · 2|y| = 2|x| und wir schließen
mit 2nat(y) + 1 = nat(y1) = nat(x).
1
• Zuerst zeigen wir die dass x <gradlex y auch nat(x) < nat(y) impliziert. Laut Definition
von x <gradlex y gilt entweder |x| < |y| oder |x| = |y| und x <lex y.
– Wenn |x| < |y| dann 2|x| ≤ 2|y|−1 . Mit Hilfe des vorherigen Punktes erhalten wir
sowohl nat(x) < 2|x| als auch 2|y|−1 ≤ nat(y).
– Im Fall |x| = |y| wenden wir Induktion auf diese Länge an.
∗ Dass die Länge 1 ist kann nicht auftreten (da dann x = y gelten würde).
∗ Also gibt es sowohl u und v in B als auch Bits b und c, so dass x = ub und
y = vc gelten. Wenn u = v dann b = 0 und c = 1 und wir schließen mit
2nat(u) < 2nat(u) + 1 = 2nat(v) + 1. Wenn u <lex v, dann erhalten wir die
Induktionshypothese nat(u) < nat(v). Also gilt nat(x) = 2nat(u) + b < 2nat(v) +
c = nat(y).
Um die andere Richtung zu zeigen nehmen wir nat(x) < nat(y) an. Da ≤gradlex total und
wohl-fundiert ist muss eine der folgenden drei Fälle zutreffen.
– x = y. Aber dann wäre nat(x) = nat(y), was der Annahme nat(x) < nat(y) widerspricht.
– y <gradlex x. Wegen des vorigen Beweises würde dann nat(y) < nat(x) gelten, was
wiederum der Annahme nat(x) < nat(y) widerspricht.
– Also ist x <gradlex y der einzige Fall der übrig bleibt und er muss daher stets gelten.
2
Herunterladen