Rekursionsgleichungen Landau-Symbole Kapitel 8 Lösen von Rekursionsgleichungen Allgemeines Iterationsmethode Spezialfälle Erzeugende Funktionen Kapitel 8 Rekursionsgleichungen p./42
Landau-Symbole () Modellierung des Wachstumsverhaltens wichtiger Ressourcen: Laufzeit Speicherbedarf Ziel: Mathematische Modellierung; Unabhängigkeit von Stand der Technik; maschinenabhängige Konstanten sind unwichtig Wesentliche Sichtweise der Theorie algorithmischer Probleme (Komplexitätstheorie) und der Theorie konkreter algorithmischer Lösungen (Algorithmik) Eingeführt von Paul Bachmann (837 920) und popularisiert durch Edmund Landau (877 938). Kapitel 8 Rekursionsgleichungen p.2/42
Landau-Symbole (2) Die Gross-Oh-Notation: bringt zum Ausdruck, dass eine Funktion f(n) höchstens so schnell wächst wie eine andere Funktion g(n). Definition Funktion f(n) ist in der Menge O(g(n)), wenn es ein C > 0 und ein n 0 N gibt, so dass für alle n n 0 gilt: f(n) C g(n) Einfachheitshalber wird statt f(n) O(g(n)) die Notation f(n) = O(g(n)) verwendet. Man darf aber auf keinen Fall die linke und rechte Seite vertauschen; sonst könnte man aus den wahren Aussagen n = O(n 2 ) und n 2 = O(n 2 ) die absurde Gleichung n = n 2 folgern. Kapitel 8 Rekursionsgleichungen p.3/42
Landau-Symbole (3) Beispiel: Für ein Polynom f(n) = d a l n l mit a d 0 gilt l=0 f(n) = a d n d + a n n d + a n 2 n d 2 + + a 0 für alle n. Setzt man daher = n d a d + a d n + a d 2 n 2 + + a 0 n d n d ( a d + a d n + a d 2 n + + a 0 ) 2 n d n d ( a d + a d + a d 2 + + a 0 ) C = ( a d + a d + a d 2 + + a 0 ) so gilt f(n) C n k für alle n N und k d. Also f(n) = O(n k ) für alle k d. Kapitel 8 Rekursionsgleichungen p.4/42
Landau-Symbole (4) Die Gross-Omega-Notation: bringt zum Ausdruck, dass eine Funktion f(n) mindestens so schnell wächst wie eine andere Funktion g(n). Definition Funktion f(n) ist in der Menge Ω(g(n)), wenn es ein C > 0 und ein n 0 N gibt, so dass für alle n n 0 gilt: f(n) C g(n) Wie schon bei Gross-Oh-Notation wird statt f(n) Ω(g(n)) die Notation f(n) = Ω(g(n)) verwendet. Kapitel 8 Rekursionsgleichungen p.5/42
Landau-Symbole (5) Beispiel: Für ein Polynom f(n) = d a l n l mit a d 0 gilt l=0 f(n) = a d n d + a n n d + a n 2 n d 2 + + a 0 = a d n d + a d a d n + a d 2 a d n 2 + + a 0 a d n d Der Ausdruck des rechten Terms konvergiert für n gegen. Also gibt es ein n 0 N, so dass dieser Wert für alle n n 0 mindestens /2 ist. Daher gilt für C = 2 a d und n n 0 : f(n) 2 a d n d = C n d Für k d gilt somit f(n) C n k für alle n n 0, also f(n) = Ω(n k ). Kapitel 8 Rekursionsgleichungen p.6/42
Landau-Symbole (6) Die Gross-Theta-Notation: Wenn eine Funktion f(n) sowohl von oben als auch von unten durch g(n) beschränkt ist, so schreibt man f(n) = Θ(g(n)). Formal ist die Menge Θ(g(n)) defineirt durch Θ(g(n)) = O(g(n)) Ω(g(n)) Beispiel: Das Polynom f(n) = d a l n l mit a d 0 l=0 f(n) = O(n k ) für alle k d f(n) = Ω(n k ) für alle k d Also, f(n) = Θ(n d ). Kapitel 8 Rekursionsgleichungen p.7/42
Landau-Symbole (7) Beispiel: Θ(): konstanter Aufwand, unabhängig von n Θ(n): linearer Aufwand (z.b. Einlesen von n Zahlen) Θ(nln n): Aufwand guter Sortierverfahren (z.b. Quicksort) Θ(n 2 ): quadratischer Aufwand Θ(n k ): polynomialer Aufwand (bei festem k) Θ(2 n ): exponentieller Aufwand Θ(n!): Bestimmung aller Permutationen von n Elementen Konkreter Vergleich (Annahme: Schritt dauert µs = 0.00000 s) n = 0 20 30 40 50 60 n 0 µ 20 µs 30 µs 40 µs 50 µs 60 µs n 2 00 µs 400 µs 900 µs.6 ms 2.5 ms 3.6 ms n 3 ms 8 ms 27 ms 64 ms 25 ms 26 ms 2 n ms s 8 min 3 Tage 36 J 366 Jh 3 n 59 ms 58 min 6.5 J 3855 Jh 0 8 Jh 0 3 Jh n! 3.62 s 77 Jh 0 6 Jh 0 32 Jh 0 49 Jh 0 66 Jh Kapitel 8 Rekursionsgleichungen p.8/42
Landau-Symbole (8) Anwendung: Analyse von Laufzeit und Speicherbedarf in der Algorithmik Verschiedene Analysen sind von Interesse: bester Fall (best case) mittlerer Fall (average case) schlimmster Fall (worst case) Für den eigentlich interessantesten mittleren Fall wären auch noch Annahmen über die zu erwartende Eingabeverteilung sinnvoll. Meistens beschränkt man sich bei der Analyse auf den schlimmsten Fall. Beispiel: Lineare Suche im Array i = 0; while (i < n) && (a[i]!= x) i++; Bestenfalls Schritt Θ() Schlimmstenfalls n Schritte Θ(n) Im Mittel n 2 Schritte Θ(n). Annahme für den mittleren Fall: Es liegt (gleichwahrscheinliche) Permutation der Zahlen von bis n vor. Dann ist die mittlere Anzahl n n i= i n 2. Kapitel 8 Rekursionsgleichungen p.9/42
Lösen von Rekursionsgleichungen: Allgemeines () In einer Rekursionsgleichung für eine Funktion f wird zur Berechnung der Funktion für den Wert n die Funktion für andere, kleinere Werte verwendet. Allgemein hat eine Rekursionsgleichung die Form f(n) = G(f(); f(2);...; f(n )) Eine Rekursionsgleichung definiert eine Funktionenschar (alle Funktionen, die die Gleichung erfüllen). Aus der Funktionenschar wird eine Funktion durch Festlegen weiterer Parameter spezifiziert, z.b. durch Anfangswertbedingungen f() = a, f(2) = a 2,..., f(k) = a k. Beispiel: Betrachte die Rekursionsgleichung T(n) = a T(n ) und T(0) =. Offenbar gilt: T(n) = a n. Geschlossener Ausdruck: Ein Ausdruck für T(n), der zwar den Parameter n enthält, nicht aber die Funktion T selbst oder Summen- oder Produktzeichen bzw.. Den Prozess, eine Rekursionsgleichung für T(n) in einen geschlossenen Ausdruck umzuwandeln, nennt man Lösen der Rekursionsgleichung. Kapitel 8 Rekursionsgleichungen p.0/42
Lösen von Rekursionsgleichungen: Allgemeines (2) Anwendung: Komplexitätsanalyse von Algorithmen Input: n, ( k ) N 0 ; n Output: ; k BINOMIAL(n, k) (gemäss Pascal-Dreieck) if k = 0 then return else if n < k then return 0 else return BINOMIAL(n,k ) + BINOMIAL(n,k) ( ) n T(n, k): Anzahl Aufrufe von BINOMIAL, die zur Berechnung von k erforderlich sind. Es gilt: T(n, k) = + T(n, k ) + T(n, k). Kapitel 8 Rekursionsgleichungen p./42
Lösen von Rekursionsgleichungen: Allgemeines (3) Anwendung: Kombinatorisches Zählen Wir bestimmen die Anzahl Wörter a n der Länge n über dem Alphabet {a, b}, die keine zwei aufeinander folgenden a s enthalten. Es gilt: a = 2 und a 2 = 3. Für n 3 gilt: a n = a n + a n 2. Begründung: Wir unterscheiden die Wörter der Länge n nach ihrem letzten Buchstaben. }{{} n b oder } {{ } ba n 2 Ist dies ein b, so darf das vorangehende Teilwort ein beliebiges Wort der Länge n sein, das keine zwei aufeinander folgenden a s enthält (davon gibt es a n ). Ist das letzte Zeichen a, so muss unmittelbar davor ein b stehen. Das davor stehende Teilwort kann dann wiederum ein beliebiges Wort der Länge n 2 sein, das keine zwei aufeinander folgenden a s enthält (davon gibt es a n 2 ). Gesucht ist also ein geschlossener Ausdruck für a n. Kapitel 8 Rekursionsgleichungen p.2/42
Lösen von Rekursionsgleichungen: Allgemeines (4) Strategien zum Lösen von Rekursionsgleichungen: Iterationsmethode Hierbei wird die Funktion auf der rechten Seite immer wieder durch die Rekursionsgleichung ersetzt. Dann wird versucht, die rechte Seite in eine geschlossene Form zu bringen. Verwendung bekannter Lösungen für spezielle Klassen von Rekursionsgleichungen Erzeugende Funktionen Kapitel 8 Rekursionsgleichungen p.3/42
Lösen von Rekursionsgleichungen: Iterationsmethode Beispiel: Iterationsmethode für f(n) = n + 3f(n/4) Iteriertes Einsetzen und Ersetzen der Summe ergibt: f(n) = n + 3f(n/4) = n + 3(n/4 + 3f(n/6)) = n + 3n/4 + 9(n/6 + 3f(n/64)) n + 3n/4 + 9n/6 + = n (3/4) i = n = 4n i 0 = Θ(n) 3/4 Die Anfangswertbedingung f() = a wirkt sich nur auf die in der Θ-Notation verborgenen Konstanten aus. Kapitel 8 Rekursionsgleichungen p.4/42
Lösen von Rekursionsgleichungen: Spezialfälle () Bei Rekursionsgleichungen stellen die sog. linearen Rekursionsgleichungen einen wichtigen Spezialfall dar. Definition Eine Rekursionsgleichung der Form x n = a x n + + a k x n k + b k für alle n k mit den Anfangsbedingungen x i = b i für alle i = 0,,..., k, heisst lineare Rekursionsgleichung k-ter Ordnung. Gilt b k = 0, so sprechen wir von einer homogenen linearen Rekursionsgleichung. Ansonsten nennen wir die Rekursionsgleichung inhomogen. Beispiel: Die einfachsten Rekursionsgleichungen sind die linearen, homogenen Rekursionsgleichungen erster Ordnung: x n = ax n, für n und Anfangsbedingung x 0 = b 0 Die Lösung lautet: x n = b 0 a n. Kapitel 8 Rekursionsgleichungen p.5/42
Lösen von Rekursionsgleichungen: Spezialfälle (2) Satz Sei eine inhomogene, lineare Rekursion ersten Grades gegeben: x n = ax n + b, für n und x 0 = b 0 wobei a, b 0 und b beliebige Konstanten sind. Dann hat die Lösung der Rekursionsgleichung die Form: { b 0 a n a + b n x n = a, wenn a b 0 + nb, wenn a = Beweis: x n = ax n + b = a(ax n 2 + b ) + b = a 2 x n 2 + ab + b = a 2 (ax n 3 + b ) + ab + b = a 3 x n 3 + a 2 b + ab + b = = a n x 0 + a n b + + a 2 b + ab + b { b 0 a n a + b n = a, wenn a b 0 + nb, wenn a = Kapitel 8 Rekursionsgleichungen p.6/42
Lösen von Rekursionsgleichungen: Spezialfälle (3) Beispiel: Auf ein Bankkonto werden am Ersten eines jeden Monats 250e eingezahlt. Am Ende eines jeden Monats wird das vorhandene Geld mit 0.5% verzinst. Nach wievielen Jahren ist man Millionär? Mit a n bezeichnen wir den nach n Monaten vorhandenen Betrag. Es gilt: a 0 = 0 und a n = ( + 0.5 00 )(a n + 250) =.005a n + 25.25, für n Aus Satz der letzten Folie erhalten wir die explizite Darstellung von a n : a n = 25.25.005n 0.005 = 50250 (.005 n ) Millionär ist man, sobald a n 0 6, also.005 n 06 50250 + = 9.900498.... Wir ziehen auf beiden Seiten den Logarithmus und erhalten n 609.47.... Für die Million muss man also 50 Jahre und 0 Monate sparen. (Eine Erhöhung des Zinssatzes von 0.5% auf.0% verkürzt die Wartezeit auf 3 Jahre und einen Monat.) Kapitel 8 Rekursionsgleichungen p.7/42
Lösen von Rekursionsgleichungen: Spezialfälle (4) Satz Sei eine homogene, lineare Rekursion zweiten Grades gegeben: x n = a x n + a 2 x n 2, für n 2 und x = b, x 0 = b 0 Weiter seien α und β zwei Lösungen der Gleichung t 2 a t a 2 = 0 und A = { b b 0 β α β, wenn α β b b 0 α α, wenn α = β und B = { b b 0 α α β, b 0, wenn α β wenn α = β Dann gilt: x n = { Aα n Bβ n, (An + B)α n, wenn α β wenn α = β Kapitel 8 Rekursionsgleichungen p.8/42
Lösen von Rekursionsgleichungen: Spezialfälle (5) Beispiel: Die Fibonacci-Zahlen F n = F n + F n 2, für all n 2 und F =, F 0 = 0 bilden eine homogene, lineare Rekursion zweiten Grades. Um den Satz der letzten Folie anzuwenden, lösen wir die Gleichung t 2 t = 0 und erhalten α = + 5 2 und β = 5 2. Somit gilt: A = B = 5, woraus resultiert: F n = ( + 5 5 2 ) n ( 5 ) n 5 2 Beispiel: Das kombinatorische Zählen auf Folie 2 wird gelöst durch die Beobachtung a n = F n 2. Kapitel 8 Rekursionsgleichungen p.9/42
Exkus: Goldener Schnitt () Die Zahl + 5 2 ist auch als Goldener Schnitt bekannt. Betrachten wir ein Rechteck mit Seitenlängen s und r s. s r r r s r Schneiden wir von diesem Rechteck ein Quadrat ab, so verbleibt ein Rechteck mit Seitenlängen r und s r. Besimmt man nun die Werte für s und r so, dass die beiden Rechtecke genau dasselbe Seitenverhältnis haben, also s r = r s r so erhält man genau s r = + 5 2.68... Kapitel 8 Rekursionsgleichungen p.20/42
Exkus: Goldener Schnitt (2) Beim Parthenontempel in Athen bildet der Säuleneingang hierbei ein goldenes Rechteck, also ein Rechteck, dessen Seiten sich genau wie der goldene Schnitt verhalten. Auch verhält sich die Höhe bis zum Dach zur Höhe der Säulen wie der goldene Schnitt. Kapitel 8 Rekursionsgleichungen p.2/42
Erzeugende Funktionen () Einführendes Beispiel: Wieviele Möglichkeiten gibt es, 2 Orangen so auf drei Personen A, B, und C aufzuteilen, dass A mindestens 4, B und C mindestens 2, und C höchstens 5 Orangen bekommen? 4 Lösungen A 4 4 4 4 5 5 5 5 6 6 6 7 7 8 B 3 4 5 6 2 3 4 5 2 3 4 2 3 2 C 5 4 3 2 5 4 3 2 4 3 2 3 2 2 Formal: Ganzzahlige Lösungen für c + c 2 + c 3 = 2 unter Nebenbedingungen 4 c, 2 c 2, und 2 c 3 5. Kapitel 8 Rekursionsgleichungen p.22/42
Erzeugende Funktionen (2) Algebraische Betrachtung: Berechne das Produkt dreier Polynomialfunktionen f(x) = (x 4 + x 5 + x 6 + x 7 + x 8 )(x 2 + x 3 + x 4 + x 5 + x 6 )(x 2 + x 3 + x 4 + x 5 ) und der Koeffizient von x 2 ist die gesuchte Lösung. (x 4 + x 5 + x 6 + x 7 + x 8 ): A bekommt 4/5/6/7/8 Orangen (x 2 + x 3 + x 4 + x 5 + x 6 ): B bekommt 2/3/4/5/6 Orangen (x 2 + x 3 + x 4 + x 5 ): C bekommt 2/3/4/5 Orangen Jedes Tripel (i, j, k) mit i + j + k = 2 trägt durch das Produkt x i x j x k zum Koeffizienten von x 2 bei. Somit gibt der Koeffizient von x 2 die Anzahl von (i, j, k) mit i + j + k = 2 an. Die Nebenbedingungen werden indirekt durch die ausgewählten Terme der Polynome gewährleistet. Kapitel 8 Rekursionsgleichungen p.23/42
Erzeugende Funktionen (3) Beispiel: Wieviele ganzzahlige Lösungen gibt es für die Gleichung c + c 2 + c 3 + c 4 = 25 wenn c i 0 für i 4. Für jedes i 4 werden die potentiellen Werte von c i mit Polynom + x + x 2 + x 3 + + x 25 beschrieben. Somit liefert der Koeffizeint von x 25 des Polynoms: die gesuchte Lösung. f(x) = ( + x + x 2 + x 3 + + x 25 ) 4 Genauso gut erhalten wir dieselbe Lösung vom Polynom: f (x) = ( + x + x 2 + x 3 + + x 25 + x 26 + ) 4 Die Terme x k, k 26, haben keinerlei Beitrag zu x 25 des Produktpolynoms. Dennoch: Unendliche Reihen sind häufig einfacher zu handhaben als Polynome! Kapitel 8 Rekursionsgleichungen p.24/42
Erzeugende Funktionen (4) Aus einer unendlichen Folge (a n ) ergibt sich durch Multiplikation von a n mit x n die formale Potenzreihe: A(x) = a n x n = a 0 + a x + a 2 x 2 + + a k x k + Man nennt A(x) auch die erzeugende Funktion der Folge (a n ). Die geometrische Reihe: Die Folge a n =, n 0, und damit verbundene Pozenzreihe A(x) = x n = + x + x 2 + + x k + = x Achtung: Die obige Gleichung ist nur gültig für x <. Bei erzeugenden Funktionen sind wir primär an den Koeffizienten des Polynoms interessiert. Kapitel 8 Rekursionsgleichungen p.25/42
Erzeugende Funktionen (5) Ableitungen der geometrischen Reihe: Erste Ableitung: n nx n = + 2x + 3x 2 + 4x 3 + = (n + )x n = ( x) 2 Die erzeugende Funktion der Folge,2,3,... ist also ( x) 2. Zweite Ableitung: n(n )x n 2 = 2 + 3 2 x + 4 3 x 2 + 5 4 x 3 + n 2 ( ) n + 2 x n = 2 = (n + 2)(n + )x n = ( x) 3 Die erzeugende Funktion der Folge ( ) n+2 2 ist also ( x). 3 2 ( x) 3 Kapitel 8 Rekursionsgleichungen p.26/42
Erzeugende Funktionen (6) k-te Ableitung (k ): n(n ) (n k + )x n k = (n + k)(n + k ) (n + )x n n k ( ) n + k x n = k ( x) k+ = k! ( x) k+ Die erzeugende Funktion der Folge ( ) n+k k ist also. ( x) k+ Kapitel 8 Rekursionsgleichungen p.27/42
Erzeugende Funktionen (7) Weitere erzeugende Funktionen: Die Folge 0,, 2, 3,... nx n = x + 2x 2 + 3x 3 + + nx k + = (n + )x n x n = = ( x) 2 x x ( x) 2 Die erzeugende Funktion der Folge 0,, 2, 3,... ist also x ( x) 2. Kapitel 8 Rekursionsgleichungen p.28/42
Erzeugende Funktionen (8) Durch Ersetzen y = ax in der geometrischen Reihe: y n = + y + y 2 + + y k + = y erhalten wir a n x n = + ax + a 2 x 2 + + a k x k + = ax Die erzeugende Funktion der Folge, a, a 2, a 3,... ist also ax. Kapitel 8 Rekursionsgleichungen p.29/42
Erzeugende Funktionen (9) a n Folge Potenzreihe erzeugende Funktion,,,,... n +,2, 3,4,... ( n+k ) k x n x (n + )x n, k +, ( 2+k) ( k, 3+k ) ( n + k ) k,... k n 0,, 2,3,... nx n a n, a, a 2, a 3,... n 2 0,, 4,9,... 0,, n 2, 3,... n,, n! 2, 6,... H n 0,, 3 2, 6,... ( x) 2 x n ( x) k+ x ( x) 2 a n x n ax n 2 x n x(+x) ( x) 3 n xn ln x n! xn e x H n x n x ln x Kapitel 8 Rekursionsgleichungen p.30/42
Erzeugende Funktionen (0) Lösen von Rekursionen: Einführendes Beispiel a n = a n + für n und a 0 = A(x) = a n x n = a 0 + (a n + )x n n = + x a n x n + x n = x a n x n + + n n n x n = x A(x) + x n = x A(x) + x Lösen dieser Gleichung ergibt a n x n = A(x) = ( x) 2 = (n + )x n Durch Koeffizientenvergleich erhalten wir a n = n + für alle n. Kapitel 8 Rekursionsgleichungen p.3/42
Erzeugende Funktionen () Allgemeine Vorgehensweise:. Schritt: Aufstellen der erzeugenden Funktion A(x) = a n x n. 2. Schritt: Umformen der rechten Seite, so dass Anfangswerte und Rekursionsgleichung eingesetzt werden können. 3. Schritt: Weiter umformen, bis auf der rechten Seite die noch vorhandenen unendlichen Summen durch A(x) ersetzt werden können. 4. Schritt: Auflösen der erhaltenden Gleichung nach A(x). Dadurch erhält man eine Gleichung der Form A(x) = f(x), wobei f(x) eine, hoffentlich einfache, Funktion ist. 5. Schritt: Umschreiben der Funktion f(x) als formale Potenzreihe. Zum Beispiel durch Partialbruchzerlegung und/oder durch Nachschlagen in Tabellen bekannter erzeugender Funktionen. 6. Schritt: Ablesen der expliziten Darstellung für a n durch Koeffizientenvergleich. Kapitel 8 Rekursionsgleichungen p.32/42
Erzeugende Funktionen (2) Beispiel: a n = 2a n für n mit a 0 =. Schritt: Aufstellen der erzeugenden Funktion A(x) = a n x n 2./3. Schritt: Anwendung der Rekursionsgleichung und Umformungen A(x) = + 2x n a n x n = + 2x a n x n = + 2x A(x) 4./5. Schritt: Auflösen nach A(x) und Umschreiben von f(x) a n x n = A(x) = 2x = 2 n x n 6. Schritt: Koeffizientenvergleich liefert a n = 2 n Kapitel 8 Rekursionsgleichungen p.33/42
Erzeugende Funktionen (3) Beispiel: a n = 3a n + n für n mit a 0 =. Schritt: Aufstellen der erzeugenden Funktion A(x) = a n x n 2./3. Schritt: Anwendung der Rekursionsgleichung und Umformungen A(x) = + (3a n + n)x n = + 3x n n a n x n + nx n n = + 3x a n x n + nx n = + 3x A(x) + x ( x) 2 4. Schritt: Auflösen nach A(x) A(x) = ( x) 2 + x ( 3x)( x) 2 = x 2 x + ( 3x)( x) 2 Kapitel 8 Rekursionsgleichungen p.34/42
Erzeugende Funktionen (4) 5. Schritt: Umschreiben von f(x) durch Partialbruchzerlegung A(x) = x 2 x + ( 3x)( x) 2 = A 3x + B x + C ( x) 2 führt zum linearen Gleichungssystem: A + B + C = 2A + 4B + 3C = A + 3B = mit der Lösung: A = 7 4, B = 4, C = 2 Kapitel 8 Rekursionsgleichungen p.35/42
Erzeugende Funktionen (5) a n x n = A(x) = 7 4 3x 4 x 2 ( x) 2 = 7 4 3 n x n 4 x n 2 (n + )x n = ( 7 4 3n 4 n + )x n 2 = ( 7 4 3n 2 n 3 4 )xn 6. Schritt: Koeffizientenvergleich liefert a n = 7 4 3n 2 n 3 4 Kapitel 8 Rekursionsgleichungen p.36/42
Erzeugende Funktionen (6) Beispiel: Fibonacci-Zahlen F n = F n + F n 2 für n 2 mit F =, F 0 = 0. Schritt: Aufstellen der erzeugenden Funktion A(x) = F n x n 2./3. Schritt: Anwendung der Rekursionsgleichung und Umformungen A(x) = x + n 2 (F n + F n 2 )x n = x + x n 2 F n x n + x 2 n 2 F n 2 x n 2 = x + x F n x n + x 2 F n x n = x + x A(x) + x 2 A(x) 4. Schritt: Auflösen nach A(x) A(x) = x x x 2 Kapitel 8 Rekursionsgleichungen p.37/42
Erzeugende Funktionen (7) 5. Schritt: Umschreiben von f(x) durch Partialbruchzerlegung A(x) = x x x = A 2 αx + B βx führt zum Gleichungssystem: ( αx)( βx) = x x 2 A + B = 0 βa + αb = mit der Lösung: α = + 5 2, β = 5 2, A = 5, B = 5 Kapitel 8 Rekursionsgleichungen p.38/42
Erzeugende Funktionen (8) F n x n = A(x) = 5 = 5 αx 5 α n x n 5 = (α n β n )x n 5 β n x n βx 6. Schritt: Koeffizientenvergleich liefert F n = (α n β n ) = ( + 5 ) n ( 5 ) n 5 5 5 2 2 Der Satz auf Folie 8 kann auf ähnliche Art und Weise bewiesen werden. Kapitel 8 Rekursionsgleichungen p.39/42
Erzeugende Funktionen (9) Beispiel: System von Rekursionsgleichungen a n = 2a n + b n, b n = a n + b n, mit a 0 =, b 0 = 0. Schritt: Aufstellen der erzeugenden Funktionen A(x) = a n x n ; B(x) = b n x n 2./3. Schritt: Anwendung der Rekursionsgleichung und Umformungen A(x) = + n (2a n + b n )x n = + 2x n a n x n + x n b n x n = + 2x a n x n + x b n x n = + 2x A(x) + x B(x) B(x) = n (a n + b n )x n = x n a n x n + x n b n x n = x a n x n + x b n x n = x A(x) + x B(x) Kapitel 8 Rekursionsgleichungen p.40/42
Erzeugende Funktionen (20) 4. Schritt: Auflösen nach A(x) und B(x) Das lineare Gleichungssystem (2x ) A(x) + x B(x) = x A(x) + (x ) B(x) = 0 führt zur Lösung: A(x) = x x 2 3x +, B(x) = x x 2 3x + 5. Schritt: Umschreiben durch Partialbruchzerlegung A(x) = x x 2 3x + = A αx + B βx, B(x) = x x 2 3x + = A α x + B β x α = α = 3 5 2, β = β = 3 + 5 2 A = 5 + 5 0, B = 5 5 0, A = 5 5, B = 5 5 Kapitel 8 Rekursionsgleichungen p.4/42
Erzeugende Funktionen (2) A(x) = A αx + B βx = A α n x n + B β n x n = (Aα n + Bβ n )x n B(x) = A αx + B βx = A α n x n + B β n x n = (A α n + B β n )x n 6. Schritt: Koeffizientenvergleich liefert a n = Aα n + Bβ n, b n = A α n + B β n Kapitel 8 Rekursionsgleichungen p.42/42