4. Erzeugende Funktionen und Polynome Definition 4.1. Sei a = (a 0

Werbung
4. Erzeugende Funktionen und Polynome
Definition 4.1. Sei a = (a0 , a1 ,P
. . .) eine Folge von natürlichen Zahlen, dann heißt
die formale Potenzreihe fa (t) := i≥0 ai ti die erzeugende Funktion von a. Gilt ai =
Pj
0 für i > j, so heißt fa (t) = i=0 ai ti das erzeugende Polynome von (a0 , . . . , aj ).
Bevor wir uns mir speziellen erzeugenden Funktionen beschäftigen, wollen wir
zuerst klären, wie wir mit formalen Potenzreihen umgehen wollen.
Definition 4.2. Die Menge
C[[x]] := {
X
an xn | an ∈ C}
n≥0
heißt Menge der formalen Potenzreihen (in einer Variablen) über C. Auf C[[x]]
sind Addition + und Multiplikation · definiert durch:
(
X
an xn ) + (
n≥0
X
bn xn ) =
n≥0
X
(an + bn )xn
n≥0
und
(
X
an xn ) · (
n≥0
X
bn xn ) =
n
X X
ai bn−i )xn .
(
n≥0 i=0
n≥0
Die folgende Aussage ist nun leicht nazurechnen.
Lemma 4.3. Die Menge C[[x]] ist mit der Addtition und Multiplikation ein kommutativer Ring mit 1.
Beschäftigen wir uns nun mit
in diesemP
Ring. Klat gilt für zwei
P Identitäten
n
n
formale Potenzreihen f (x) =
a
x
und
g(x)
=
n
n≥0
n≥0 bn x die Gleichheit
f (x) = g(x) genau dann, wenn an = bn für alle n ≥ 0.
m
Beispiel 4.4. Aus Kapitel
2 kennen wir folgenden Identität. Sei a = ( m
0 , . . . , m ).
Pm m n
Dann gilt n=0 n x = (1 + x)m .
Etwas komplizierte ist schon:
Beispiel 4.5. Sei a = (1, 1, 1, 1, . . .) die konstante Folge 1. Dann gilt
1/(1 − x).
P
i≥0
1 · xi =
Wir betrachten hier diese Art von Identitäten vollkommen formal, d.h. es werden
keine
angestellt.
Die Identität aus Beispiel 4.5
nur
P Konvergenzüberlegungen
P
P besagt
i
−1
i
i
x
=
(1
−
x)
,
also
(1
−
t)
x
=
1,
d.h.
(1
−
x)
und
x
sind
i≥0
i≥0
i≥0
multiplikativ invers zueinander. Letzteres ist leicht nachzurechnen. Allgemeiner
gilt für Potenzreiche f (x), g(x), h(x) die Identität f (x) = g(x)/h(x) genau dann
wenn f (x)h(x) = g(x). Im folgenden geben wir noch ein zwei Beispiele in dieser
Richtung.
Beispiel 4.6. Sei an die Anzahl der Wörter der Länge n über einem Alphabet mit
m Buchstaben, also an = mn , dann gilt
X
X
an xn =
mn xn = 1/(1 − mx).
n≥0
n≥0
1
2
Beispiel 4.7. Sei am,n die Anzahl der Permutation in der Sm mit n Inversionen.
Dann wissen wir aus Kapitel 1
(m2 )
X
am,n xn = (1 + x + · · · + xm−1 ) · · · (1 + x + x2 ) · (1 + x) · 1.
n=0
Das folgenden Beispiele aus den Übungsaufgaben zeigt, daß diese Überlegungen
noch nicht genügen, um alle unserer Identitäten korrekt zu lesen.
Beispiel 4.8.
(i) Aus eine Übungsaufgabe kennen wir die Bell-Zahlen B(n),
die die Anzahl der Mengenpartitionen von [n] zählen. Wir haben bewiesen:
X
x
B(n)xn = ee −1 .
n≥0
(ii) Sei p(n) die Anzahl der Zahl-Partitition der Zahl n ≥ 1. Wir setzen p(0) :=
1. Dann haben wir durch Koeeffizientenvergleich gesehen:
X
p(n)xn =
n≥0
∞
Y
1
.
1
−
xn
n=0
Die Identität aus Beispiel 4.8 (ii) ist nun mit den bisherigen Methoden nicht
vollständig zu erklären. Dort würde sie heißen:
∞
Y
(1 − xn )
n=0
X
p(n)xn = 1.
n≥0
Q∞
Wenn wir aber in jedem Faktor des Produkte n=0 (1−xn ) den Summanden −xn
selektieren und diese Summanden aufmultiplizieren wächst der Exponent gegen
unendlich. Wir verlassen also im Prinzip unsere Menge C[[x]].
Die Identität aus Beispiel 4.8 (i) ist in ähnlcher Weise nicht klar definiert. Betrachten wir die rechte Seite
X
(
xm /m!)n
x
n
X
X
x
(e − 1)
m≥1
=
.
ee −1 =
n!
n!
n≥0
n≥0
Die rechte Seite ist klar als Reihe
X
fn (x)
n≥0
von Elementen aus C[[x]] identifierbar. Wiederum besteht potentiel die Möglichkeit
unsere Menge C[[x]] zu verlassen.
Um diese Indentitäten daher korrekt verstehen zu können, müssen wir definieren,
was wir unter eine kongergenten Folge von formalen Potenzreihen verstehen. Dazu
benötigen wir erst den Begriff einer Norm auf der Menge der Potenzreihen.
P
Definition 4.9. Für eine formale Potenzreiche f (x) := n≥0 an xn definieren wir
den Grad ||f (x)|| := 0, falls an = 0 für alle n ≥ 0 und, ||f (x)|| = 1/2d , für
d = min{n | an 6= o} sonst.
Man rechnet leicht nach.
Lemma 4.10. Für formale Potenzreihen f (x), g(x) gelten:
3
(i) ||f (x)|| = 0 ⇔ f (x) = 0.
(ii) ||f (x)|| ≥ 0.
(iii) ||f (x) + g(x)|| ≤ ||f (x)|| + ||g(x)||.
Insbesondere ist || · || eine Norma auf dem Ring C[[x]].
Nun kommen wir zum Konvergenzbegriff.
Definition 4.11. Sei (fm (x))m≥0 eine Folge von formalen Potenzreihen in C[[x]].
Wir sagen (fm (x))m≥0 konvergiert gegen die formale Potenzreihe f (x) ∈ C[[x]],
falls für alle > 0 ein M ≥ 0 existiert, so daß
||f( x) − fm (x)|| < für alle m ≥ M . Wir schreiben limm→∞ fm (x) = f (x).
Nun sind wir in der Lage unendliche Summen und Produkte von formalen Potenzreihen zu definieren.
Definition 4.12.
Pn Sei (fm (x))m≥0 eine Folge
Qnvon formalen Potenzreihen in C[[x]].
Sei gn (x) :=
f
(x)
und
h
(x)
:=
n
m=0 m
m=0 fm (x). Konvergiert gn (x) gegen
eine formale Potenzreiehe g(x), so schreiben wir
∞
X
fm (x) = lim gn (x) = g(x).
n→∞
m=0
Konvergiert hn (x) gegen eine formale Potenzreiehe h(x), so schreiben wir
∞
Y
fm (x) = lim hn (x) = h(x).
n→∞
m=0
Qm
1
Im Beispiel 4.8 betrachten wir dann die Folge fn (x) := m=1 1−x
m . Mit den
gleichen Argumenten, wie beim Koeffizientenvergleich zeigt man nun
Y
X
1
=
lim
f
(x)
=
p(n)xn .
n
n→∞
1 − xn
m≥1
n≥0
Nun sind wir soweit formale Potenzreieh so zu manipulieren, daß wir interessante
Beispiel rechnen können.
Beispiel 4.13. Sie Wn die Anzahl der Möglichkeiten eine Mauer der Länge n und
Höhe 2 mit Dominosteinen, die senkrecht und wagrecht gelegt werden können zu
bauen. Wir setzen w0 = 1 und w1 = 1 ergibt sich. Sei nun n ≥ 2. Beginnt
die Mauer links mit einem senkrechten Domino-Stein, so ist der Rest der Mauer
eine Mauer der Länge n − 1 und der Höhe 2. Begint die Mauer links mit einem
waagrechten Domino-Stein, so liegen dort 2 waagrechte Domino-Steine aufeinander.
Der Rest der Mauer ist eine Mauer der Länge n − 2 und der Höhe 2. Damit ergibt
sich für wn die
PFormel wn = wn−1 + wn−2 . Betrachten wir nun die erzeugende
Reihe w(x) = n≥0 wn xn der Folge w = (w0 , w1 , . . .). Es gilt:
X
X
X
w(x) =
wn xn = 1 + x +
wn xn = 1 + x +
(wn−1 + wn−2 )xn =
n≥0
n≥2
1+x+x
X
n≥2
wn−1 xn−1 + x2
n≥2
X
n≥2
wn−2 xn−2 =
4
1+x+x
X
wn xn + x2
X
wn xn =
n≥0
n≥1
1 + x + x(w(x) − 1) + x2 w(x) = 1 + xw(x) + x2 w(x).
Also ergibt sich:
1
.
1 − x − x2
Wie erhalten wir daraus eine Formel für wn ???
w(x) =
Im weiteren werden wir den allgemeinen Binomialsatz verwenden:
Satz 4.14 (Binomialsatz). Sei α ∈ Q, dann gilt:
X α α
(1 + x) =
xn .
n
n≥0
Nun sind wir noch einmal an einem Punkt, an wir klären müssen, wie wir
die Identität aus Satz 4.14 zu verstehen haben. Ist α = p/q rine rationale Zahl
dargestellt als Bruch von ganzen Zahlen p, q mit q 6= 0, so kann Satz 4.14 auch
glesen werden als:
(1 + x)p = (
X α n≥0
n
xn )q .
Satz 4.15. Für eine Folge a = (a0 , a1 , . . .) von komplexen Zahlen und ein d-Tupel
(α1 , . . . , αd ) ∈ Cd mit αd 6= 0 sind äquivalent.
(i)
X
P (x)
fa (x) =
an xn =
Q(x)
n≥0
mit Q(x) = 1 + α1 t + · · · + αd td und einem Polynom P (x) vom Grad < d.
(ii)
an+d + α1 an+d−1 + · · · + αd an = 0 für n ≥ 0.
(iii) Für n ≥ 0 gilt
an =
k
X
Pi (n)γin
i=
mit 1 + α1 x + · · · + αd xd =
k
Y
(1 − γi x)di , so daß γi 6= γj , 1 ≤ i < j ≤ k
i=1
und Pi (t) ein Polynom vom Grad < di .
Proof. Wir setzen Q(x) = 1 + α1 x + · · · + αd xd und definieren die vier Mengen.
Dabei sind V1 , V2 , V3 genau die Mengen der Folgen, die (i) , (ii) und (iii) erfüllen.
Die Aussage des Satzes ist also äquivalent mit V1 = V2 = V3 .
P
n
(1) V1 = {a = (a0 , a1 , . . .) |
n≥0 an x = P (x)/Q(x) für ein Polynom P (x)
vom Grad d }.
(2) V2 = {a = (a0 , a1 , . . .) | an+d + α1 an+d−1 + · · · + αd an = 0 für n ≥ 0 }.
5
Pk
(3) V3 = {a = (a0 , a1 , . . .) | für n ≥ 0 gilt an = i= Pi (n)γin mit Q(x) =
Qk
di
i=1 (1 − γi x) , so daß γi 6= γj , 1 ≤ i < j ≤ k und Pi (n) Polynome in n
vom Grad < di }.
P
Pk
n
−di
(4) V4 = {a = (a0 , a1 , . . .) |
mit Polyn≥0 an x =
i=1 Gi (x)(1 − γi x)
nomen Gi (x) vom Grad < di und γi , di wie in V3 }.
Mna zeigt nun:
(1) V1 , V2 , V3 , V4 sind C-Vektorräume.
(2) dim(V1 ) = dim(V2 ) = dim(V3 ) = dim(V4 ) = d.
Beweis von (1): Die Menge aller Folgen (an )n≥0 von komplexen Zahlen bildet mit
der Addition (an )n≥0 + (bn )n≥0 := (an + bn )n≥0 und der Skalarmultiplikation
λ(an )n≥0 := (λan )n≥0 einen C-Vektorraum. Man rechnet nun für V1 , V2 , V3 , V4
nach, daß (a) die Nullfolge (0)n≥0 enthalten ist und (b) mit (an (n≥0 , (bn )n≥0 und
komplexen λ, µ auch λ(sn )n≥0 + µ(bn )n≥0 .
Beweis von (2): Da in V1 die d Koeffizienten von P (x) frei gewählt werden können,
in V2 die d Anfangswerte a0 , . . . , ad−1 , in V3 die d Koeffizienten der Pi (x) und in
V4 die d Koeffizienten der Gi (x).
In einem dritten Schritt zeigen wir nun:
(3) Es gelten die Inklusionen: V1 ⊆ V2 , V4 ⊆ V1 und V4 ⊆ V3 .
indent Beweis von (3):
P
V1 ⊆ V2 : Sei a = (a0 , a1 , . . .) ∈ V1 . Das Produkt Q(y) n≥0 an tn ist gleich P (t). Da
P (x) einen Grad < d hat, gilt an+d + α1 an+d−1 + · · · + αd an = 0 für n ≥ 0 }
und damit a ∈ V2 . Also V1 ⊆ V2 und wegen dim V1 = dim V2 = d gilt dann
schon V1 = V2 .
V4 ⊆ V1 : Sei a = (a0 , a1 , . . .) ∈ V4 . Dann gilt
X
n
an x =
k
X
−di
Gi (x)(1 − γi x)
i=1
n≥0
Pk
k
X
Y
=(
Gi (x) (1 − γj x)dj )/Q(x),
i=1
j6=i
Da i=1 Gi (x) j6=i (1 − γj x)dj einen Grad < d hat folgt a ∈ V1 und damit
V4 ⊆ V1 . Wiederum wegen dim V1 = dim V4 = d gilt dann V1 = V4 .
Pk
−di
V4 ⊆ V3 : Sei a = (a0 , a1 , . . .) ∈ V4 . Die Summe
ist eine
i=1 Gi (x)(1 − γi x)
j
c
endliche Linearkombination von Termen der Form x /(1−γx) für geeignete
Paramter 0 ≤ j < c. Es gilt nun:
Q
X −c
X
tj
t
n
n n −j c + n − 1 − j
=
x
(−γx)
=
x
γ
γ
.
(1 − γx)c
n
c−1
n≥0
n≥j
Wir benutzen hier
n −c
(−1)
= (−1)n (−c) · · · (−c − n + 1)/n!
n
c+n−1
c+n−1
= c(c + 1) · · · (c + n − 1)/n! =
=
.
n
c−1
Nun ist γ −j c+n−1−j
ein Polynom vom Grad c − 1 in n. Dies impliziert
c−1
a ∈ V3 und V4 ⊆ V3 . Die Gleichheit der Dimensionen zeigt wiederum
V3 = V4 .
6
Da zwichen Vektorräumen der gleichen Dimension keine echten Inklusionen gelten können folgt aus (2) und (3), daß V1 = V2 = V3 = V4 . Damit folgt die
Behauptung.
Bemerkung 4.16.
heißt
• Sind P (x), Q(x) ∈ C[x] Polynome und Q(x) 6= 0, so
P (x)
Q(x)
eine rationale Funktion.
• Ist a = (an )n≥0 eine Folge komplexer Zahlen, so daß für feste (α1 , . . . , αd ) ∈
Cd mit αd 6= 0 gilt:
an+d + α1 an+d−1 + · · · + αd an = 0 für n ≥ 0,
so sagen wir a genügt einer linearen Rekursion vom Grad d.
Beispiel 4.17. Sei an die Anzahl der Worte der Länge n über dem Alphabet Σ =
{a, b, c} so daß ab und aa nicht als Teilworte vorkommen. Dann gilt an = 2an−1 +
an−2 . Also an+2 − 2an+1 − an = 0, n ≥ 0. Sei
√
√
Q(x) = 1 − 2t − t2 = (1 − (1 − 2)t)(1 − (1 + 2)t).
√
√
Damit ist an = P1 (n)(1 − 2)n + P2 (n)(1 + 2)n . Mit Polynomen P1 und P2
vom Grad 0. Also sind P1 (t) = A und P2 (t) = B nur Konstanten. Betrachten wir
die ersten
Folgenglieder a0 = 1 und a1 = 3. Wir√erhalten: A + B =√1 und
√ beiden √
A(1− 2)+B(1+ 2) = 3. Wir erhalten dann A = (1+ 2)/2 und B = (1− 2)/2.
Beispiel 4.18 (Merge Sort:). Aufgabe ist es eine Liste a mit n Einträgen zu
sortieren.
if (n = 1)
Return(a);
a[1..bn/2c] = M erge Sort(a[1..bn/2c]);
a[bn/2c] + 1..n] = M erge Sort(a[bn/2c] + 1..n]);
i = 1;
i1 = 1;
i2 = bn/2c] + 1;
while ((i1 <= bn/2c) or (i2 <= n)) do
if ((i1 <= bn/2c)and(a[i1 ] < a[i2 ])) {
b[i] = a[i1 ];
i1 + +;
}
else{
b[i] = a[i2 ];
i2 + +;
}
i + +;
}
Return(b);
Sei nun an die Anzahl der Schritte beim Merge Sort einer Liste mit n Einträgen.
Es gilt:
an = abn/2c + an−bn/2c + C · n + D
7
für natürliche Zahlen C und D. Um die Analyse zu vereinfachen interessieren
wir uns für n = 2m , die 2er-Potenzen sind und betrachten die erzeugende Reihe
der Folge b = (b0 , b1 , . . .) = (a1 , a2 , a4 , a8 , . . .). Die ist gerechtfertigt, da man bei
einem Algorithmus of nur an dem asymtotischen Verhalten der Laufzeit für große
n interessiert ist. Allgemeiner als benötigt untersuchen wir die Rekursion:
bn = Bbm−1 + Cm + D, m ≥ 0. b0 = 1
fb (x) =
X
bm xm = b0 +
m≥0
1 + Bx
X
(Bbm−1 + Cm + D)xm =
m≥1
X
bm xm + C
m≥0
X
2m xm + D
m≥1
X
xm =
m≥1
1 + Bxfb (x) + C(1/(1 − 2x) − 1) + D(1/(1 − x) − 1) =
1 + Bxfb (x) + C(2x/(1 − 2x)) + D(x/(1 − x))
Also:
fb (x) = 1/(1 − Bx) · (1 + 2Cx/(1 − 2x) + D(x/(1 − x)) =
2(C + D − 1)x2 + (−2 ∗ C − D + 3)x − 1
.
(1 − Bx)(1 − 2x)(1 − x)
Für B = 2 folgt dann dann:
bm = a2m = 2m P1 (m) + 1m P2 (m)
mit Polynomen P1 (m) vom Grad ≤ 1 und P2 (m) vom Grad ≤ 2. Assymptotisch
ergibt sich also a2m ' 2m · m. Für die Folge an ergibt sich also ein Verhalten von
n · log(n).
Betrachten wir nun ein Beispiel einer Folge mit einer erzeugenden Funktion, die
nicht rational ist:
Beispiel 4.19. Sei An die Menge der Permutationen in der Sn , die 231 vermeiden.
Wir beszeichnen mit An,i die Menge der Permutation w = w1 · · · wn in An mit
wi = n. Dann gilt wj < wl für alle 1 ≤ j < i < l ≤ n. Da sonst wj wi wl das
Muster 231 erfüllen würde. Somit ist w1 · · · wi−1 eine 231 vermeidente Permutation
von [i − 1] und wi+1 · · · wn eine 231 vermeidente Permutation von [n − 1] \ [i − 1].
Es gilt also #An,i = #Ai−1 #An−i . Damit haben wir gezeigt, daß für an := #An
gilt:
n
X
a0 = 0 und an =
ai−1 an−i , n ≥ 1.
i=1
Betrachten wir nun die erzeugende Reihe von a := (a0 , a1 , . . .).
X
X
fa (x) =
an xn = a0 +
an xn =
n≥0
=1+
n
XX
n≥1 i=1
n≥1
ai−1 an−i xn = 1 + x
n
XX
n≥0 i=0
ai an−i xn =
8
=1+(
X
an xn )2 = 1 + xfa (x)2 .
n≥0
Damit erfüllt fa (x) die quadratische Gleichung:
xfa (x)2 − fa (x) + 1 = 0.
Lösen wir nun diese quadratische Gleichung nach fa (x) auf, so erhalten wir:
fa (x) =
p
1
· (1 ± 1 − 4x).
2x
Da fa (0) = a0 = 1 folgt damit
p
1
fa (x) =
· (1 − 1 − 4x).
2x
1
2 (−4x)n folgt für n ≥ 1:
n
P
Da (1 − 4x)1/2 = n≥0
1
1
1
1 1
(−4)n · 2 = (−4)n · · ( − 1) · ( − 2) · · · ( − n + 1)/n! =
2 2
2
2
n
(−1)n · (−1)n−1 · 2n · 1(2 − 1)(4 − 1) · · · (2n − 2 − 1)/n! =
−2n · (2n − 2)!/(2n−1 (n − 1)!n!) = −
2 2n − 2
.
n n−1
erhalten wir
X 2 2n − 2
1
1
1/2)
(1 − (1 − 4x)
=
(1 − 1 −
xn ) =
2x
2x
n n−1
n≥1
1 X 2 2n − 2 n X 1
2n n
x =
x .
2x
n n−1
n+1 n
n≥1
n≥0
2n
1
Ein Koeffizientenvergleich ergibt also an = n+1
.
n
2n
1
Die Zahl Cn := n+1 n heißt auch n-te Catalan Zahl.
Herunterladen