Datenstrukturen Exkurs: Beweisprinzip der vollständigen Induktion Mariano Zelke Sommersemester 2012 Grundidee der vollständigen Induktion Für n ∈ N sei A(n) eine Aussage über die Zahl n Ziel: Zeige, dass für jedes n ∈ N die Aussage A(n) wahr ist. Dazu nutzen wir das Induktionsprinzip. Mariano Zelke Datenstrukturen Exkurs: Beweisprinzip der vollständigen Induktion 2/7 Induktionsprinzip Wir zeigen, dass die Aussage A(n) für alle n ∈ N wahr ist, indem wir wie folgt vorgehen: 1. Zuerst zeigen wir, dass die Aussage A(n) für die Zahl n = 0 gilt. Dieser Schritt heißt Induktionsanfang. 2. Danach zeigen wir, dass für jede beliebige natürliche Zahl n ∈ N gilt: Falls Aussage A(n) wahr ist, so ist auch die Aussage A(n + 1) wahr. Dieser Schritt heißt Induktionsschritt. Mariano Zelke Datenstrukturen Exkurs: Beweisprinzip der vollständigen Induktion 3/7 Zwei nützliche Varianten des Induktionsprinzips Um zu zeigen, dass eine Aussage A(n) für alle n ∈ N mit n ≥ n0 wahr ist (wobei n0 eine geeignete natürliche Zahl ist), kann man nach einem der beiden Schemata vorgehen: Variante 1: Variante 2: Induktionsanfang: n = n0 Induktionsanfang: n = n0 Behauptung: Aussage A(n0 ) ist wahr. Beweis: . . . Behauptung: Aussage A(n0 ) ist wahr. Beweis: . . . Induktionsschritt: n → n + 1 Induktionsschritt: n → n + 1 Sei n ∈ N mit n ≥ n0 beliebig. Sei n ∈ N mit n ≥ n0 beliebig. Induktionsannahme: Induktionsannahme: Aussage A(n) ist wahr. Die Aussagen A(n0 ), A(n0 + 1), A(n0 + 2), . . . , A(n) sind wahr Behauptung: Aussage A(n + 1) ist wahr. Behauptung: Aussage A(n + 1) ist wahr. Beweis: . . . Beweis: . . . Mariano Zelke Datenstrukturen Exkurs: Beweisprinzip der vollständigen Induktion 4/7 Komprimierung von Induktionsbeweisen Oft wird ein Beweis mittels vollständiger Induktion verdichtet aufgeschrieben. Diese Schreibweise verlangt vom Leser die Kenntnis des generellen Beweisprinzips. Beispiel: Die Summe der ersten n Zahlen (kleiner Gauß) n X n · (n + 1) Für alle n ∈ N gilt: i = 0 + 1 + 2 + ... + n = 2 i=0 Beweis: vollständige Induktion nach n 0 P Induktionsanfang: n = 0 : i =0= i=0 Induktionsschritt: n → n + 1 n P Induktionsannahme: i= i=0 n+1 P i= i=0 = Mariano Zelke n P i + (n + 1) = i=0 n·(n+1)+2(n+1) 2 = 0·(0+1) 2 X n·(n+1) 2 n·(n+1) 2 + (n + 1) wegen Ind.-Annahme (n+1)·(n+2) 2 Datenstrukturen Exkurs: Beweisprinzip der vollständigen Induktion t u 5/7 Expansion und Vermutung Die Rekursionsgleichung T (1) = 1, T (n) = 2 · T n2 + 2n − 1 ist zu lösen. Sei n eine Potenz von 2, also n = 2` für ein ` ∈ N. Wir expandieren die Rekursionsgleichung durch wiederholtes Einsetzen: n + 2n − 1 T (n) = 2 · T 2 n 1. Expansion: T (n) = 22 · T + 2 · 2n − 1 − 2 2 2n + 3 · 2n − 20 − 21 − 22 2. Expansion: T (n) = 23 · T 3 2 n 3. Expansion: T (n) = 24 · T + 4 · 2n − 20 − 21 − 22 − 23 24 Wir vermuten für die k. Expansion: T (n) = 2k+1 · T k n X + (k + 1) · 2n − 2i 2k+1 i=0 Mariano Zelke Datenstrukturen Exkurs: Beweisprinzip der vollständigen Induktion 6/7 Beweis der Vermutung Zeige, dass für alle k ∈ N gilt: Die k. Expansion ist k n X + (k + 1) · 2n − 2i T (n) = 2k+1 · T 2k+1 i=0 Beweis: vollständige Induktion nach k Induktionsanfang: k = 0: T (n) = 21 · T n2 + 1 · 2n − 20 X 0. Expansion ist die ursprüngliche Rekursionsgleichung Induktionsschritt: k → k + 1 Induktionsannahme: k P n + (k + 1) · 2n − 2i k. Expansion: T (n) = 2k+1 · T 2k+1 i=0 Expandiere ein weiteres Mal zur (k +1)-ten Expansion: k P n n T (n) = 2k+1 2 · T 2k+2 + 2 2k+1 − 1 + (k + 1) · 2n − 2i i=0 = 2k+2 · T Mariano Zelke n 2k+2 + (k + 2) · 2n − k+1 P 2i t u i=0 Datenstrukturen Exkurs: Beweisprinzip der vollständigen Induktion 7/7