Diskrete Mathematik

Werbung
Diskrete Mathematik
Anusch Taraz
15. Januar 2009
2
Inhaltsverzeichnis
I
Grundlagen
1
Mengen und Mengenoperationen . . . . . . . . . . . . . . . . . . .
2
Vollständige Induktion . . . . . . . . . . . . . . . . . . . . . . . . .
3
Relationen und Funktionen . . . . . . . . . . . . . . . . . . . . . .
5
5
7
9
II Zählen
4
Elementares Zählen . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
Teilmengen und Partitionen zählen . . . . . . . . . . . . . . . . . .
6
Erzeugende Funktionen . . . . . . . . . . . . . . . . . . . . . . . .
15
15
19
25
III Relationale Strukturen
7
Graphen . . . . . . . . . . . . . . .
8
Exkurs: Diskrete Optimierung . . .
9
Euler–Touren und Hamilton–Kreise
10 Matchings . . . . . . . . . . . . . .
11 Färbungen planarer Graphen . . .
12 Partielle Ordnungen . . . . . . . .
.
.
.
.
.
.
35
35
41
43
45
50
53
IV Konstruierte Regularität
13 Endliche projektive Ebenen . . . . . . . . . . . . . . . . . . . . . .
14 Codierungstheorie . . . . . . . . . . . . . . . . . . . . . . . . . . .
61
61
67
V Ramseytheorie
15 Satz von Ramsey . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16 Konvexe Polygone . . . . . . . . . . . . . . . . . . . . . . . . . . .
17 Arithmetische Progressionen . . . . . . . . . . . . . . . . . . . . . .
75
75
80
82
VI Probabilistische Methoden
18 Grundlagen und Ramseyzahlen . . . . . . . . . . . . . . . . . . . .
19 Graphen ohne kurze Kreise . . . . . . . . . . . . . . . . . . . . . .
20 Dreiecke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
89
90
92
94
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4
Inhaltsverzeichnis
VIIAlgebraische Methoden
21 Zyklenraum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22 Intersecting families . . . . . . . . . . . . . . . . . . . . . . . . . .
23 Färbungen des Rn . . . . . . . . . . . . . . . . . . . . . . . . . . .
97
97
97
98
Kapitel I
Grundlagen
Wir werden in diesem Kapitel die grundlegende Terminologie festlegen und an
einigen Beispielen veranschaulichen.
1
Mengen und Mengenoperationen
Wir gehen in dieser Vorlesung davon aus, dass Sie mit dem abstrakten Begriff einer
Menge bereits intuitiv vertraut sind. Wir beschreiben eine Menge M hier entweder
durch die explizite Angabe aller ihrer Elemente, also zum Beispiel M = {1, 4, 9},
oder in dem wir eine Bildungsvorschrift nennen, also zum Beispiel: M sei die Menge
der Quadratzahlen zwischen 1 und 10. Um solche Beschreibungen möglichst kurz
und trotzdem präzise zu halten, führen wir die Abkürzungen ∀ ( für alle“) und
”
∃ ( es existiert“) ein, sowie den Doppelpunkt :“ innerhalb einer Mengenklammer,
”
”
der für den Ausdruck für die gilt“ steht. Also, noch einmal zurück zu unserem
”
Beispiel:
M = {x : 1 ≤ x ≤ 10 und ∃ eine natürliche Zahl y mit x = y 2 }.
Die leere Menge bezeichnen wir mit ∅. Bei unendlichen Mengen greifen wir
auch manchmal auf die Pünktchenschreibweise zurück und vertrauen darauf, dass
damit die Bildungsvorschrift implizit klar ist. So wird beispielsweise die Menge
der natürlichen Zahlen ohne Null mit
N = {1, 2, 3, . . . }
bezeichnet, die Menge der natürlichen Zahlen mit Null mit N0 := N ∪ {0}. Weitere
wichtige Zahlenräume bezeichnen wir wie folgt:
• Z, die Menge der ganzen Zahlen,
• Q, die Menge der rationalen Zahlen,
6
Kapitel I. Grundlagen
• R, die Menge der reellen Zahlen.
Wenn n ∈ N, dann setzen wir [n] := {1, 2, . . . , n}. Unsere obige Menge M könnten
wir also noch knapper schreiben als M = {y 2 : y ∈ [3]}. Wenn x ∈ R, dann
definieren wir bxc als die größte ganze Zahl n mit n ≤ x; und analog dxe als die
kleinste ganze Zahl n mit n ≥ x. Unter der Kardinalität einer beliebigen Menge
M versteht man die Anzahl der Elemente von M . Sie wird mit |M | bezeichnet.
Zwei ebenfalls sehr geläufige Abkürzungen bezeichnen die Summe und das
Produkt von mehreren Termen. Zu a1 , . . . , an ∈ R bezeichnen wir mit
n
X
ai := a1 + . . . + an
i=1
bzw.
n
Y
ai := a1 · . . . · an
i=1
die Summe bzw. das Produkt dieser Zahlen.
Ausgehend von einer oder mehreren Mengen lassen sich weitere Mengen konstruieren. Sei k ∈ N. Das kartesische Produkt von Mengen M1 , . . . , Mk ist eine
Menge, deren Elemente aus sogenannten Tupeln der Elemente der einzelnen Mengen besteht:
M1 × · · · × Mk := {(x1 , . . . , xk ) : xi ∈ Mi ∀i ∈ [k]} .
Das geht natürlich auch, wenn die Mengen Mi untereinander gleich sind. In diesem
Spezialfall schreiben wir für eine Menge M :
M k := M × · · · × M = {(x1 , . . . , xk ) : xi ∈ M ∀i ∈ [k]} .
{z
}
|
k−mal
Im Gegensatz dazu bezeichnen wir mit M
k die Menge der k-elementigen Teilmengen von M :
M
:= {S : S ⊆ M, |S| = k}
k
Der Unterschied zwischen den beiden Konstruktionen besteht also darin, dass die
Elemente von M k Folgen von Elementen aus M sind, bei denen es auf die Reihenfolge ankommt und bei denen ein
Element aus M auch mehrfach auftreten kann,
während die Elemente von M
(ungeordnete) Mengen sind, die k verschiedene
k
Elemente aus M enthalten müssen.
Wenn man alle (also nicht nur die k-elementigen) Teilmengen von M in einer
Menge zusammenfassen möchte, dann spricht man von der Potenzmenge P(M ):
P(M ) := {S : S ⊆ M }
Man beachte, dass insbesondere die Menge ∅ und die Menge M Elemente von
P(M ) sind.
2. Vollständige Induktion
7
Beispiel.
R2 ist die Menge aller 2-Tupel (d.h. geordnete Paare) von reellen Zahlen,
R
2 besteht aus allen zweielementigen Mengen reeller Zahlen. Insbesondere gilt
beispielsweise: (7, 7) ∈ R2 und (7, 8) 6= (8, 7); hingegen ist {7, 7} = {7} 6∈ R2
und {7, 8} = {8, 7}. Ein Beispiel zur Potenzmenge: Wenn M = {0, 1}, dann ist
P(M ) = {∅, {0}, {1}, {0, 1}}.
Zwei weitere geläufige abkürzende Schreibweisen befassen sich mit der Vereinigung und der Schnittmenge von mehreren Mengen M1 , . . . , Mk . Wir setzen
k
[
Mi := M1 ∪ · · · ∪ Mk und
i=1
k
\
Mi := M1 ∩ · · · ∩ Mk .
i=1
Schließlich sagen wir, dass die Mengen M1 , . . . , Mk eine Partition von M bilden,
wenn
k
[
M=
Mi und Mi ∩ Mj = ∅ für alle i 6= j ∈ [k]
i=1
· k
·
·
S
gilt. In diesem Fall schreiben wir M = i=1 Mi = M1 ∪ . . . ∪ Mk . Offensichtlich
Pk
gilt dann |M | = i=1 |Mi |.
Beispiel. Es sei M eine Menge mit |M | = n Elementen. Wir können die Teilmengen von M , also die Mitglieder der Potenzmenge P(M ), nach der Anzahl ihrer
Elemente gruppieren: erst die Teilmengen mit null Elementen, dann die mit einem
Element, dann die mit zwei, zuletzt die mit n. Offensichtlich gehört jede Teilmenge
in genau eine dieser Kategorien und wir erhalten
· n
[
P(M ) =
i=0
2
M
k
Vollständige Induktion
Die Beweismethode der vollständigen Induktion ist ein wichtiges Werkzeug, um
Aussagen zu beweisen, die für alle natürlichen Zahlen n gelten sollen. Sei A(n)
eine solche Aussage. Dann überprüfen wir zunächst ob A(1), also die Aussage für
n = 1, stimmt (Induktionsanfang). Nun sei k ∈ N beliebig und wir nehmen an,
dass die Aussage A(k) wahr ist (Induktionsannahme). Wenn es uns dann gelingt,
daraus zu folgern, dass auch die Aussage A(k + 1) stimmt, haben wir die Aussage
A(n) für alle n ∈ N gezeigt (Induktionsschritt). Drei einfache Beispiele folgen.
Beispiel. Für jede natürliche Zahl n gilt die folgende Aussage:
A(n) :
Die Zahl 22n − 1 ist durch 3 teilbar.
(2.1)
Beweis. durch vollständige Induktion über n.
Induktionsanfang: Für n = 1 ist 22n − 1 = 22 − 1 = 3 durch 3 teilbar, also stimmt
8
Kapitel I. Grundlagen
die Aussage A(1).
Induktionsannahme: Sei k ∈ N beliebig. Wir nehmen an, dass die Aussage A(k)
wahr ist, dass also 22k − 1 durch 3 teilbar ist.
Induktionsschritt: Für n = k +1 lautet die Aussage A(k +1), dass 22(k+1) −1 durch
3 teilbar ist und das müssen wir jetzt zeigen. Dabei dürfen wir uns auf unser in
der Induktionsannahme formuliertes Wissen berufen, und daher formen wir den
Ausdruck 22(k+1) − 1 so lange um, bis wir, irgendwo in ihm versteckt, den alten
Ausdruck 22k − 1 wieder finden:
22(k+1) − 1 = 22k+2 − 1 = 4 · 22k − 1 = 4(22k − 1) + 3.
Dem letzten Ausdruck können wir nun ganz leicht ansehen, dass er durch 3 teilbar
ist: Nach Induktionsannahme ist (22k − 1) durch 3 teilbar, also ist auch 4(22k − 1)
durch 3 teilbar, und also ist auch 4(22k − 1) + 3 durch 3 teilbar. Damit ist unser
Induktionsbeweis abgeschlossen.
Unser nächstes Beispiel befasst sich mit einer Folge von natürlichen Zahlen,
die durch eine rekursive Definition gegeben ist, und für die wir eine explizite Formel
beweisen wollen.
Beispiel. Wir betrachten die Die Folge a0 , a1 , a2 , . . . sei gegeben durch den Startwert a0 := 2 und die Rekursion an := 3an−1 + 1 für alle n ∈ N. Dadurch folgt
beispielsweise, dass
a1 = 3a0 + 1 = 3 · 2 + 1 = 7,
a2 = 3a1 + 1 = 3 · 7 + 1 = 22, usw.
Behauptung: Für jede Zahl n ∈ N0 gilt die folgende Aussage:
A(n) :
an =
1
(5 · 3n − 1).
2
(2.2)
Beweis. durch vollständige Induktion über n.
Induktionsanfang: Für n = 0 ist a0 = 2 und 21 (5 · 30 − 1) = 12 (5 − 1) = 2, also
stimmt die Aussage A(0).
Induktionsannahme: Sei k ∈ N0 beliebig. Wir nehmen an, dass die Aussage A(k)
wahr ist.
Induktionsschritt: Für n = k + 1 müssen wir zeigen, dass ak+1 = 21 (5 · 3k+1 − 1).
Mit Hilfe der rekursiven Definition und der Induktionsannahme A(k) sehen wir,
dass
1
1
1
(5 · 3k − 1) + 1 = (5 · 3k+1 − 3) + 1 = (5 · 3k+1 − 1),
ak+1 = 3ak + 1 = 3
2
2
2
was zu zeigen war.
Nächstes Beispiel:
Beispiel. Sei M eine Menge mit n := |M | ∈ N0 . Dann gilt:
A(n) :
|P(M )| = 2n .
(2.3)
3. Relationen und Funktionen
9
Beweis. durch vollständige Induktion über n.
Induktionsanfang: liegt diesmal bereits bei n = 0. Die einzige Menge M mit
|M | = 0 ist M = ∅. Also ist P(M ) = {∅} und somit beträgt die linke Seite
in (2.3) genau 1. Die rechte Seite ist 20 = 1, also stimmt die Aussage A(0).
Induktionsannahme: Sei k ∈ N beliebig. Wir nehmen an, dass die Aussage A(k)
wahr ist.
Induktionsschritt: Sei M eine Menge mit |M | = n = k+1. Wir wählen ein Element
x aus M beliebig aus und betrachten die Menge M̃ := M \ {x}. Der Hintergedanke ist natürlich, dass jetzt |M̃ | = k ist und wir die Induktionsannahme auf M̃
anwenden können.
Wir partitionieren die Potenzmenge von M in zwei Teile:
P(M ) = {S : S ⊆ M }
n
o · n
o
= S : S ⊆ M̃ ∪ S : S 6⊆ M̃ , S ⊆ M
o
n
o · n
= S : S ⊆ M̃ ∪ S̃ ∪ {x} : S̃ ⊆ M̃ .
(2.4)
Nach A(k) gilt, dass |P(M̃ )| = 2k . Somit haben die beiden in (2.4) genannten
Mengen jeweils 2k Elemente, und insgesamt folgt |P(M )| = 2k + 2k = 2k+1 , was
mit der rechten Seite von (2.3) für den Fall n = k + 1 übereinstimmt.
Ein paar Bemerkungen noch:
1) Der Induktionsanfang muss immer die Aussage A(n) für die kleinste Zahl n
überprüfen, für die die Aussage geltend gemacht wird.
2) Es ist auch zulässig, wenn man im Induktionsschritt nicht nur auf die Korrektheit von A(k) alleine zurückgreift, sondern auf die von allen A(1), . . . , A(k).
3) Will man sich im Induktionsschritt immer auf beide vorangegangenen Aussagen A(k − 1) und A(k) berufen, dann müssen beim Induktionsanfang auch die
Aussagen A(n) für die ersten beiden Zahlen n (für die die Aussage gelten soll)
überprüft werden.
3
Relationen und Funktionen
Definition. Sei k ∈ N mit k ≥ 2. Eine k-stellige Relation über den Mengen
A1 , . . . , Ak ist eine Teilmenge R ⊆ A1 ×· · ·×Ak . In dem Spezialfall R ⊆ M ×· · ·×M
spricht man auch von einer Relation über der Menge M . Eine zweistellige Relation
nennt man auch binäre Relation, und im Folgenden werden wir uns fast nur mit
binären Relationen befassen.
Eine binäre Relation R ⊆ M × M heißt
• reflexiv, wenn für alle a ∈ M gilt: (a, a) ∈ R,
• irreflexiv, wenn für alle a ∈ M gilt: (a, a) 6∈ R,
• symmetrisch, wenn für alle a, b ∈ M gilt: wenn (a, b) ∈ R, dann (b, a) ∈ R,
10
Kapitel I. Grundlagen
• asymmetrisch, wenn für alle a, b ∈ M gilt: wenn (a, b) ∈ R, dann (b, a) 6∈ R,
• antisymmetrisch, wenn für alle a, b ∈ M gilt: wenn (a, b) ∈ R und (b, a) ∈ R,
dann a = b,
• transitiv, wenn für alle a, b, c ∈ M gilt: wenn (a, b) ∈ R und (b, c) ∈ R, dann
(a, c) ∈ R.
Man schreibt oft abkürzend aRb oder a ∼R b für (a, b) ∈ R und sagt, dass a und
b zu einander in Relation stehen.
Beispiel.
a) Die Relation Rteilt ⊆ N × N, die wir durch
Rteilt := {(a, b) : a ist Teiler von b}
definieren, ist reflexiv, antisymmetrisch, und transitiv.
b) Die Relation Rkleiner ⊆ R × R, die wir durch
Rkleiner := {(a, b) : a < b}
definieren, ist irreflexiv, asymmetrisch, und transitiv.
c) Die Relation Rnix ⊆ Z × Z, die wir durch
Rnix := {(1, 1), (1, 2), (2, 1)(1, 3)}
definieren, hat keine der gerade definierten Eigenschaften.
Relationen, die besondere Eigenschaften haben, haben sich besondere Bezeichnungen verdient. So wird beispielsweise eine irreflexive, symmetrische Relation als Graph bezeichnet, eine reflexive, antisymmetrische und transitive Relation
als partielle Ordnung, und eine Relation, die reflexiv, symmetrisch und transitiv
ist, nennt man auch Äquivalenzrelation.
Definition. Wenn R eine Äquivalenzrelation über M ist und (a, b) ∈ R ist, dann
sagt man auch, dass a und b äquivalent sind. Die Menge aller Elemente aus M ,
die zu a äquivalent sind, und heißt Äquivalenzklasse von a und wird mit
[a]R := {b ∈ M : (a, b) ∈ R}
bezeichnet. Die Menge der Äquivalenzklassen heißt Quotientenmenge und wird
mit
M/ ∼R := {[a]R : a ∈ M }
bezeichnet.
Für eine Quotientenmenge sind sozusagen einander äquivalente Elemente
gleich“ und bilden gemeinsam ein einziges Element.
”
3. Relationen und Funktionen
11
Beispiel. Wir definieren die folgende Relation R ⊆ Z × Z: für enthalte R genau
die Paare (a, b), bei denen a und b bei Division durch 5 den gleichen Rest lassen.
Etwas formaler sagen wir:
R = {(a, b) : ∃na , nb ∈ Z ∃r ∈ {0, 1, 2, 3, 4} mit a = 5na + r und b = 5nb + r}.
Beispielsweise ist (−4, 11) ∈ R, denn sowohl −4 = (−1) · 5 + 1 und 11 = 2 · 5 + 1
lassen sich als ganzzahliges Vielfaches von 5 plus 1 schreiben. Man überprüft leicht,
dass R eine Äquivalenzrelation ist. Die Äquivalenzklasse von 3, beispielswiese, ist
gegeben durch [3]R = {. . . , −7, −2, 3, 8, . . . }, und allgemeiner gilt für eine Zahl
k∈Z
[k]R = {k + 5n : n ∈ Z} = {. . . , k − 10, k − 5, k, k + 5, k + 10, . . . }
und damit
Z/ ∼R := {[0]R , [1]R , [2]R , [3]R , [4]R }
Natürlich hat nicht jede Relation nur endlich viele Äquivalenzklassen. Aber
es ist immer wahr, dass zwei Äquivalenzklassen entweder disjunkt oder identisch
sind:
Satz. Sei R eine Äquivalenzrelation über der Menge M . Dann bilden die Äquivalenzklassen eine Partition von M . Etwas genauer: Für zwei beliebige Elemente
a, b ∈ M gilt:
[a]R ∩ [b]R 6= ∅
⇔
[a]R = [b]R
⇔
(a, b) ∈ R.
Beweis. Wir bezeichnen die drei obigen Bedingungen mit (i), (ii) und (iii).
(i) ⇒ (iii): Sei c ∈ [a]R ∩[b]R . Dann ist (a, c) ∈ R und (b, c) ∈ R, wegen Symmetrie
also auch (c, b) ∈ R, und daher wegen Transitivität (a, b) ∈ R.
(iii) ⇒ (ii): Sei c ∈ M ein beliebiges Element mit c ∈ [a]R , d.h. (a, c) ∈ R.
Wegen (iii) und Symmetrie gilt, dass (b, a) ∈ R, also durch Transitivität auch
(b, c) ∈ R, also c ∈ [b]R . Damit ist [a]R ⊆ [b]R gezeigt, die umgekehrte Inklusion
geht komplett analog.
(ii) ⇒ (i): klar, denn wegen der Reflexivität gilt (a, a) ∈ R und somit a ∈ [a]R =
[b]R .
Mit Hilfe von Relationen können wir nun noch Funktionen einführen.
Definition. Sei f ⊆ A × B eine binäre Relation mit der Eigenschaft, dass jedem
Element a ∈ A durch f genau ein Element b ∈ B zugeordnet wird, d.h. dass
∀a ∈ A :
|{b ∈ B : (a, b) ∈ f }| = 1
gilt. In diesem Fall nennt man f eine Abbildung oder Funktion.
Sei f nun eine Funktion. Um den Zuordnungscharakter auszudrücken schreibt
man auch f : A → B und f : a 7→ b und nennt zu jedem a ∈ A das eindeutige
Element
f (a) := b ∈ B mit (a, b) ∈ f
12
Kapitel I. Grundlagen
das Bild von a unter f . Das Urbild von b ∈ B ist definiert als
f −1 (b) := {a ∈ A : f (a) = b} ⊆ A
und muss nicht notwendigerweise aus genau einem Element bestehen (kann übrigens auch leer sein). Analog definiert man auch Bild bzw. Urbild einer Menge
X ⊆ A bzw. Y ⊆ B durch
[
[
f (X) :=
{f (a)} ⊆ B
und
f −1 (Y ) :=
f −1 (b) ⊆ A.
a∈X
b∈Y
Eine Funktion f : A → B heißt
• injektiv, wenn für alle b ∈ B gilt: |f −1 (b)| ≤ 1,
• surjektiv, wenn für alle b ∈ B gilt: |f −1 (b)| ≥ 1,
• bijektiv, wenn für alle b ∈ B gilt: |f −1 (b)| = 1.
Beispiel. Sei R≥0 := {x ∈ R : x ≥ 0}. Die Funktion
f1 : R → R mit f1 : x 7→ x2 ist weder injektiv noch surjektiv,
f2 : R≥0 → R mit f2 : x 7→ x2 ist injektiv, aber nicht surjektiv,
f3 : R → R≥0 mit f3 : x 7→ x2 ist nicht injektiv, aber surjektiv,
f4 : R≥0 → R≥0 mit f4 : x 7→ x2 ist injektiv und surjektiv.
Lemma 3.1. Es seien A und B nicht-leere, endliche Mengen und f : A → B eine
Funktion. Dann gilt:
a) Wenn f bijektiv, dann |A| = |B|.
b) Wenn |A| = |B|, dann gilt:
f injektiv
⇔
f surjektiv
⇔
f bijektiv.
Beweis.
S
a) Es gilt immer, dass A = b∈B f −1 (b). Da für b 6= b0 die Mengen f −1 (b) und
f −1 (b0 ) disjunkt sind, haben wir
X
|A| =
|f −1 (b)|.
(3.5)
b∈B
−1
Wegen der Bijektivität ist |f (b)| = 1 für alle b ∈ B, und daraus folgt |A| = |B|.
b) Zu zeigen ist, dass unter der Voraussetzung |A| = |B| aus Injektivität oder aus
Surjektivität bereits Bijektivität folgt. Wir betrachten wieder die Gleichung (3.5):
X
|B| = |A| =
|f −1 (b)|,
(3.6)
b∈B
im Durchschnitt sind also die Summanden gleich 1. Wenn f injektiv ist, dann
sind nach Definition alle Summanden höchstens 1, und damit wegen (3.6) auch
genau 1, also ist f bijektiv. Und analog gilt: Wenn f surjektiv ist, dann sind nach
Definition alle Summanden mindestens 1, und damit wegen (3.6) auch genau 1,
also ist f wiederum bijektiv.
3. Relationen und Funktionen
13
Ausblick 1: Im nächsten Kapitel werden wir diese einfache Proposition manchmal benutzen und die Kardinalität einer Menge A dadurch bestimmen, dass wir
eine Bijektion in eine Menge B angeben, deren Kardinalität wir schon kennen oder
einfach berechnen können.
Ausblick 2: Im Unendlichen sehen die Dinge etwas anders aus. Es gibt beispielsweise Bijektionen f : N → Z (z. Bsp. n 7→ (−1)n bn/2c) oder f : N → Q.
Mengen M für die es eine surjektive Funktion f : N → M gilt, heißen abzählbar.
Gibt es eine Bijektion f : N → R?
Übungsaufgaben
1. Zeigen Sie: Wenn R eine asymmetrische binäre Relation auf M ist, dann ist
M auch antisymmetrisch.
2. Zeigen Sie: Sei R eine binäre Relation über M und (a, a) ∈ R. Dann kann R
nicht asymmetrisch sein.
Literaturhinweise zu Kapitel I
Weiteres Material zu Mengen, Mengenoperationen, Relationen und vollständiger
Induktion findet sich beispielsweise bei [MN] in Kapitel 1.2 bis 1.6 oder bei [S] in
Kapitel 0.1 bis 0.3.
14
Kapitel I. Grundlagen
Kapitel II
Zählen
4
Elementares Zählen
Wir versammeln (und benennen) hier fünf einfache Zählprinzipien, von denen die
meisten so offensichtlich sind, das sie keinen Beweis benötigen.
Summenregel. Wenn M1 , . . . , Mk endliche Mengen sind, und
·
·
wenn M = M1 ∪ . . . ∪ Mk , dann |M | = |M1 | + · · · + |Mk | =
k
X
|Mi |.
(4.1)
i=1
Hierbei ist es natürlich essentiell, dass die Mengen Mi paarweise disjunkt
sind, andernfalls würden gemeinsame Elemente mehrfach gezählt - ist das der Fall,
dann muss man die Formel für Inklusion-Exklusion (siehe Satz 4.1) benutzen. Die
Summenformel haben wir schon mehrfach (heimlich) benutzt, so zum Beispiel in
der Herleitung von (3.5).
Produktregel. Wenn M1 , . . . , Mk endliche Mengen sind, und
wenn M = M1 × · · · × Mk , dann |M | = |M1 | · · · · · |Mk | =
k
Y
|Mi |.
(4.2)
i=1
Anders als bei der Summenregel müssen die Mengen Mi hier nicht disjunkt
sein. Stattdessen ist es bei der Produktregel wichtig, dass die Entscheidungen
welches Element wähle ich aus Mi ?“ unabhängig voneinander sind: die Tatsache,
”
dass ich mich für xi ∈ Mi entschieden habe, darf mich nicht bei der Wahl des
xj ∈ Mj für j 6= i einschränken. Ein Beispiel:
Beispiel. Wir ermitteln die Kardinalität der Menge M von Autokennzeichen der
Form K−XY abcd“, wobei K fixiert ist, X, Y Buchstaben aus einem 26-elementigen
”
Alphabet und a, b, c, d Ziffern von 0 bis 9 sind, also
M = {K}×{A, . . . , Z}×{A, . . . , Z}×{0, . . . , 9}×{0, . . . , 9}×{0, . . . , 9}×{0, . . . , 9}.
16
Kapitel II. Zählen
Dementsprechend gibt es |M | = 1·262 ·104 = 6.760.000 verschiedene Kennzeichen.
Zählen durch Bijektion. Wenn A und B zwei endliche Mengen, und
wenn f : A → B eine Bijektion ist,
dann |A| = |B|.
(4.3)
Diese Aussage haben wir bereits in Lemma 3.1 a) bewiesen. Hier geben wir
ein kleines Anwendungsbeispiel:
Beispiel. Es sei M := {m1 , . . . , mn } eine Menge mit n ∈ N0 Elementen. Wir suchen nach einem Bijektionsbeweis dafür, dass |P(M )| = 2n ist (was wir ja auf
Seite ?? bereits durch Induktion bewiesen haben). Dazu betrachten wir die folgende Funktion f : P(M ) → {0, 1}n , die jeder Teilmenge S ⊆ M = {m1 , . . . , mn } ein
n-Tupel (x1 , . . . , xn ) wie folgt zuordnet:
(
0 wenn mi 6∈ S
f (S) := (x1 , . . . , xn ) mit xi :=
für alle i ∈ [n].
1 wenn mi ∈ S
Beispielsweise gilt für M := {2, 3, 5} und S := {2, 5}, dass f (S) = (1, 0, 1). Das
n-Tupel f (S) nennt man auch charakteristischen Vektor von S. Man überprüft
leicht, dass f eine Bijektion ist. Damit folgt
(4.3)
(4.2)
|P(M )| = |{0, 1}n | = |{0, 1}|n = 2n .
Die folgende Aussage betrachtet eine binäre Relation R ⊆ A × B und zählt
die Elemente in R einmal von A aus gesehen und einmal von B aus gesehen.
Doppeltes Abzählen. Es sei R ⊆ A × B eine binäre Relation. Dann gilt
X
X
|{b ∈ B : (a, b) ∈ R}| = |R| =
|{a ∈ A : (a, b) ∈ R}|.
a∈A
(4.4)
b∈B
Diese Regel ergibt sich natürlich sofort aus der Summenregel, wenn man sie
auf die Partition
·
[
a∈A
{(a, b) ∈ R : b ∈ B} = R =
·
[
b∈B
{(a, b) ∈ R : a ∈ A}.
anwendet. Trotzdem ist es nützlich, sie für spätere Anwendungen in Form von
(4.4) zu konservieren. Wir wollen dies gleich an den zwei folgenden Beispielen
ausprobieren.
Beispiel. Wir betrachten eine Menge G von Gartenzäunen, die eine Menge B
von Blumenbeeten erzeugt. Die Gartenzäune sind Strecken in der Ebene, die sich
nicht überkreuzen dürfen, und ein Blumenbeet ist ein Gebiet, das vollständig von
Gartenzäunen begrenzt ist - siehe Abbildung ??. Wir behaupten: 32 |G| ≥ |B|.
4. Elementares Zählen
17
Bild
Dazu betrachten wir die Relation R ⊆ G × B, die durch R := {(g, b) :
g begrenzt b} definiert ist. Offensichtlich kann jeder Gartenzaun höchstens zwei
Blumenbeete begrenzen, und jedes Blumenbeet braucht mindetens drei begrenzende Gartenzäune. Mit anderen Worten:
∀g ∈ G : |{b ∈ B : (g, b) ∈ R}| ≤ 2 und ∀b ∈ B : |{g ∈ G : (g, b) ∈ R}| ≥ 3.
Damit ergibt sich
X
(4.4) X
2|G| ≥
|{b ∈ B : (g, b) ∈ R}| =
|{g ∈ G : (g, b) ∈ R}| ≥ 3|B|,
g∈G
b∈B
was zu zeigen war.
Obige Abschätzung werden wir später in Abschnitt ?? noch benutzen. Hier
ist noch ein weiteres Bespiel für die Verwendung des doppelten Abzählens, das wir
[A] entliehen haben.
Beispiel. Wir definieren eine Relation R ⊆ [n] × [n] durch (i, j) ∈ R genau dann,
wenn i ein Teiler von j ist. Außerdem sei t(j) die Anzahl von Teilern von j, und
t̄(n) die durchschnittliche Anzahl von Teilern, also:
n
t(j) := |{i ∈ [n] : (i, j) ∈ R}|
und
t̄(n) :=
1X
t(j).
n j=1
Die Funktion t(j) scheint sehr ungleichmäßig zu sein, und entsprechend sieht es
nicht ganz leicht aus, t̄(n) zu bestimmen.
Setzen wir hingegen s(i) := |{j ∈ [n] : (i, j) ∈ R}|, dann zählen wir damit
zu gegebenem i die Zahlen aus [n], die i als Teiler enthalten, also die Vielfachen
von i, und davon gibt es genau bn/ic viele. Somit gilt:
t̄(n) =
=
n
n
n
n
n
1X
1X
(4.4) 1 X
t(j) =
|{i ∈ [n] : (i, j) ∈ R}| =
|{j ∈ [n] : (i, j) ∈ R}|
n j=1
n j=1
n i=1
1X
1X
s(i) =
bn/ic.
n i=1
n i=1
(4.5)
Wir versuchen jetzt, die Abrundungsklammern b.c los zu werden: es gilt, dass
(n/i) − 1 < bn/ic ≤ n/i, und daher folgt aus (4.5), dass
n
n
n
n
n
X
X
1X
1X
1X
(n/i) −1 =
((n/i)−1) < t̄(n) ≤
(n/i) =
(1/i)
(1/i) −1 =
n i=1
n i=1
n i=1
i=1
i=1
(4.6)
18
Kapitel II. Zählen
Pn
Die Summe i=1 (1/i) wird auch als n-te harmonische Zahl bezeichnet, und man
kann mit elementaren Mitteln zeigen, dass
ln(n) + 1 − ln(2) ≤
n
X
(1/i) ≤ ln(n) + 1.
(4.7)
i=1
Kombiniert man nun (4.6) und (4.7), dann ergibt sich
ln(n) − ln(2) ≤ t̄(n) ≤ ln(n) + 1
Inklusion–Exklusion. Wir haben bereits die Summenregel kennengelernt, deren
Anwendung aber voraussetzt, dass die beteiligten Mengen paarweise disjunkt sein
müssen. Ist diese Voraussetzung nicht gegeben, müssen wir genauer rechnen“. Für
”
den Spezialfall von zwei Mengen gilt beispielsweise offensichtlich, dass |M1 ∪M2 | =
|M1 |+|M2 |−|M1 ∩M2 |, weil wir die Elemente in der Schnittmenge doppelt gezählt
haben und daher wieder abziehen müssen. Für drei Mengen gilt
|M1 ∪ M2 ∪ M3 | =
|M1 | + |M2 | + |M3 |
−|M1 ∩ M2 | − |M1 ∩ M3 | − |M2 ∩ M3 |
+|M1 ∩ M2 ∩ M3 |,
(4.8)
weil wir die Elemente im Schnitt aller drei Mengen erst dreimal gezählt haben,
dann wieder dreimal abgezogen haben, also noch einmal hinzuzählen müssen.
Bild
Im Allgemeinen gilt die folgende Formel:
Satz 4.1. Für endliche Mengen M1 , . . . , Mn gilt:
|
n
[
i=1
Mi | =
n X
r=1
(−1)r−1
X
|
r
\
M ij | .
(4.9)
1≤i1 <···<ir ≤n j=1
Die innere Summe läuft dabei über alle r-Tupel (i1 , . . . , ir ) mit 1 ≤ i1 <
· · · < ir ≤ n und legt damit fest, über welche Mij die Schnittmenge gebildet
werden soll. Der Beweis lässt sich zum Beispiel durch vollständige Induktion über
n führen, ist wegen des involvierten Indexgeschachers aber etwas aufwändig (wenn
auch nicht schwierig) und wird daher zunächst vertagt. Statt dessen überprüfen
wir kurz, dass im Fall n = 3 die drei Summanden für r = 1, 2, 3 der rechten Seite
5. Teilmengen und Partitionen zählen
19
von (4.9) mit den Summanden aus (4.8) übereinstimmen
(−1)1−1
X
|
1
\
1≤i1 ≤3 j=1
(−1)2−1
X
|
2
\
1≤i1 <i2 ≤3 j=1
(−1)3−1
X
|
3
\
M ij | =
X
|Mi1 |
1≤i1 ≤3
X
M ij | = −
|Mi1 ∩ Mi2 |
1≤i1 <i2 ≤3
Mij | = |M1 ∩ M2 ∩ M3 |.
1≤i1 <i2 <i3 ≤3 j=1
5
Teilmengen und Partitionen zählen
Wir wollen in diesem Abschnitt zählen, auf wieviele verschiedene Weisen man
aus einer Menge eine Teilmenge auswählen kann. Ein einfaches Beispiel für diese Aufgabenstellung ist das Ziehen von k Lotto-Zahlen aus einer Menge von n
verschiedenen möglichen Zahlen ( 6 aus 49“). Dabei müssen wir festlegen, ob es
”
auf die Reihenfolge ankommt, und ob Zahlen, nachdem sie gezogen wurden, noch
einmal gezogen werden können (Auswahl mit oder ohne Zurücklegen). Alle diese
Fälle werden in den zwei folgenden Sätzen behandelt.
Satz 5.1. Seien n, k ∈ N0 und M eine Menge mit |M | = n.
a) Geordnet, mit Zurücklegen: Für die Menge
M k = {(c1 , . . . , ck ) : ci ∈ M ∀i ∈ [k]}
gilt, dass |M k | = nk .
b) Geordnet, ohne Zurücklegen: Für die Menge
M k := {(c1 , . . . , ck ) : ci ∈ M ∀i ∈ [k], ci 6= cj ∀i 6= j ∈ [k]}
gilt:
|M k | = n · (n − 1) · . . . · (n − k + 1) =: nk
Die Funktion x 7→ xk für x ∈ R und k ∈ N0 nennt man auch fallende Faktorielle.
Die Spezialfälle lauten: x0 = 1 für alle x ∈ R und nn = n · (n − 1) · · · · · 1 =: n!,
nennt man Fakultät. Insbesondere zählt n! die Anzahl von möglichen Reihenfolgen
von n verschiedenen Elementen.
c) Ungeordnet, ohne Zurücklegen: Für die Menge
M
= {{c1 , . . . , ck } : ci ∈ M ∀i ∈ [k], ci 6= cj ∀i 6= j ∈ [k]}
k
gilt:
k
M = n =: n .
k k!
k
20
Kapitel II. Zählen
Beweis. Die Aussage in a) folgt direkt aus der Produktregel. Auch die für b) behauptete Kardinalitätsaussage ist intuitiv einsichtig, denn für die Auswahl von
c1 haben wir n Möglichkeiten, für die von c2 dann n − 1 Möglichkeiten, usw.
Allerdings lässt sich dieser Ansatz nicht unmittelbar mit der Produktregel formalisieren, denn die Menge, aus der wir das Element c2 auswählen, ist eben abhängig
von dem Element c1 . Für einen formalen Beweis der Aussage in b) verweisen wir
daher auf Aufgabe 1.
Um die Formel in Aussage c) zu beweisen, wählen wir zunächst ein k-Tupel
aus M k und machen daraus eine k-elementige Teilmenge, im dem wir die Reihenfolge der
wir eine Funktion f :
k Elemente ”vergessen“. Formal betrachten
k
Mk → M
,
die
einem
k-Tupel
(c
,
.
.
.
,
c
)
∈
M
die
zugrundeliegende
Menge
1
k
k
M
{c1 , . . . , ck } ∈ k zuordnet. Es gilt:
X
k
M k
−1
k!
n = M =
|f (T )| = k
T ∈(M
k)
und daraus folgt die behauptete Formel.
Es fehlt nun noch der Fall, bei dem wir ungeordnete Elemente eventuell
mehrfach auswählen. Offensichtlich können wir das daher weder durch ein k-Tupel
noch durch eine Teilmenge modellieren, sondern wir benötigen einen neuen ObjektTyp, und zwar den der Muttimenge. Dazu zunächst ein kleines Beispiel: Sei M :=
{a, b, c, d, e}. Die Multimenge T := {c, a, b, a, c, c, e} soll beispielsweise mit der
Multimenge {a, a, b, c, c, c, e} identisch sein soll, weil die Reihenfolge der Elemente
irrelevant ist, sich aber von der Multimenge {a, b, c, e} unterscheiden, weil es darauf
ankommt, wie oft ein Element aus M in T enthalten ist. Formal definieren wir
eine Multimenge durch Angabe der Grundmenge M und eine Funktion ϕ, die zu
jedem Element aus M aussagt, wie oft es in der Multimenge enthalten sein soll,
also ϕ(a) = 2, ϕ(b) = 1, ϕ(c) = 3, ϕ(d) = 0 und ϕ(e) =
P1 in obigem Beispiel. Die
Kardinalität der Multimenge ist dann gegeben durch m∈M ϕ(m).
Satz 5.2 (Ungeordnet, mit Zurücklegen).
Seien n, k ∈ N0 und M eine Menge mit |M | = n. Für die Menge der k-elementigen
Multimengen über M , bezeichnet mit
(
)
X
M
:= (M, ϕ) : ϕ : M → N0 mit
ϕ(m) = k ,
k
m∈M
gilt, dass
M = n + k − 1 =: n .
k k
k
5. Teilmengen und Partitionen zählen
21
Beweis. Um die Kardinalität von M
k zu bestimmen, kodieren wir die Multimen
M gen in k wie folgt. Sei Y die Menge aller Folgen der Länge n + k − 1, die genau
k mal
Die Abbildung
das Zeichen ∗ und genau n − 1 mal das Zeichen |Mverwenden.
f: M
→
Y
ordnet
einer
Multimenge
T
=
(M,
φ)
∈
die
Folge
k
k
∗
. · · · ∗} | |∗ . . {z
. · · · ∗} | . . . . . . | |∗ . . {z
. · · · ∗}
| . . {z
ϕ(m1 )mal
ϕ(m2 )mal
ϕ(mn )mal
aus Y zu. Die Multimenge {a, a, b, c, c, c, e} beispielsweise wird also durch f auf
das Wort ∗ ∗ | ∗ | ∗ ∗ ∗ ||∗ abgebildet. Man kann leicht überprüfen, dass f eine
Bijektion ist.
Wir können uns also dank des Zählens durch Bijektion darauf zurückziehen,
die Anzahl der Elemente in Y zu bestimmen, und das ist einfach: wir wählen
(ungeordnet, ohne Zurücklegen) die k Positionen für die ∗ Zeichen aus den n+k−1
Positionen in der Folge aus. Dafür gibt es gemäß c) genau n+k−1
Möglichkeiten.
k
Somit gilt:
M (4.3)
= |Y | = n + k − 1 .
k k
Dazu noch ein paar Bemerkungen. Wenn
M eine
M Menge und n eine Zahl ist,
M
k
k
dann bezeichnen die Ausdrücke
M
,
M
,
und
k
k also Mengen, während die
Ausdrücke nk , nk , nk und nk Zahlen darstellen. In den Fällen b) und c) muss
zwingend k ≤ n sein, bei a) und d) ist das nicht notwendig. Wir listen einige
nützliche Eigenschaften dieser Zählfunktionen auf.
Lemma 5.3. Es seien m, n, k ∈ N0 mit k ≤ n und k ≤ m. Ferner seien x, y ∈ R.
Dann gelten:
n!
a) nk = k!(n−k)!
.
n
n
b) k = n−k .
n−1
c) n−1
= nk für n, k ≥ 1.
k−1 +
k
Pn
d) (x + y)n = i=0 ni xi y n−i .
Pn
e) 2n = i=0 ni .
f ) xn+k = xn (x − n)k .
Pn
g) (x + y)n = i=0 ni xi y n−i .
m
Pn
h) i=0 ni k−i
= n+m
.
k
Beweis. Die Aussagen a),b),c) und f) folgen unmittelbar aus den Definitionen.
Aussagen d) und f) kann man leicht mit Induktion über n beweisen. Aussage
e) folgt mit x := 1 und y := 1 aus d). Alternativ kann man hier auch wie folgt
argumentieren: Die linke Seite der Gleichung beschreibt die Anzahl der Teilmengen
22
Kapitel II. Zählen
einer n-elementigen Menge (siehe (2.3)). Und auch die rechte Seite der Gleichung
zählt die Anzahl dieser Teilmengen, allerdings sortiert nach der Größe (also i) der
Teilmengen. Ein solches Argument nennt man auch kombinatorischen Beweis für
eine numerische Formel.
Für die Aussage h) geben wir auch einen kombinatorischen Beweis an: Die
rechte Seite der Gleichung zählt (zum Beispiel) die k-elementigen Teilmengen einer
Menge, die sich aus n Frauen und m Männern zusammensetzt. Und die linke Seite
tut das auch, und zwar sortiert nach der Anzahl i von Frauen in der k-elementigen
Teilmenge. Formal aufschreiben könnte man das zum Beispiel so: es seien N und
M Mengen mit N ∩ M = ∅ und |N | = n und |M | = m. Dann ist
·
·
M
N ∪M
N
N
M
×
→
∪ ... ∪
f:
×
0
k
k
0
k
m
M
mit f : (S, T ) 7→ S ∪ T eine Bijektion, und da | Ni × k−i
| = ni k−i
ist, ergibt
sich mit der Summenregel die Formel in Aussage h).
Wir gehen nun dazu über, Partitionen zu zählen.
Definition. Es seien k, n ∈ N0 und M eine Menge mit |M | = n. Eine k-Partition
der Menge M ist eine Zerlegung von M in k disjunkte, nicht-leere Mengen: M =
·
·
M1 ∪ . . . ∪ Mk . Die Anzahl von k-Partitionen einer n-elementigen Menge wird
mit Sn,k bezeichnet (und heißt Stirling-Zahl zweiter Art1 ). Man setzt S0,0 := 1.
Ein Beispiel: Die Menge M = {1, 2, 3} hat drei 2-Partitionen, nämlich
·
·
·
M = {1, 2} ∪ {3} = {1, 3} ∪ {2} = {2, 3} ∪ {1}.
Satz 5.4. Es seien k, n ∈ N0 .
a) Für k > n gilt: Sn,k = 0.
b) Für n ≥ 1 gilt: Sn,0 = 0.
c) Für 1 ≤ k ≤ n gilt: Sn,k = Sn−1,k−1 + k · Sn−1,k .
Beweis. Die Aussagen a) und b) sind offensichtlich. Um c) zu beweisen, betrachten
wir eine Menge M = {m1 , . . . , mn } deren k-Partitionen wir zählen möchten.
Wir zählen zunächst nur diejenigen k-Partitionen, in denen eine Partitionsklasse aus genau dem Element mn besteht. Davon gibt es genau Sn−1,k−1 viele,
denn die Möglichkeiten erschöpfen sich jetzt darin, die Elemente m1 , . . . , mn−1 in
k − 1 Partitionsklassen zu gruppieren.
Für alle anderen Partitionen gilt, dass das Element mn nicht alleine in einer
Partitionsklasse liegt. Wir verteilen also zunächst alle Elemente m1 , . . . , mn−1 auf
k Partitionsklassen, und wählen dann aus, zu welcher Klasse wir das Element mn
dazu stecken. Dafür gibt es insgesamt k · Sn−1,k Möglichkeiten. Somit folgt die
Behauptung aus der Summenregel.
1 Stirling-Zahlen erster Art werden mit s
n,k bezeichnet und zählen Permutationen der Menge
[n] mit k Zyklen.
5. Teilmengen und Partitionen zählen
23
Mit Hilfe der obigen Rekursion lässt sich auch eine Formel für Sn,k beweisen:
Satz 5.5. Für 1 ≤ k ≤ n gilt:
Sn,k =
k
X
r=0
(−1)r
(k − r)n
.
r!(k − r)!
Beweis. Diese Aussage lässt sich entweder durch Induktion beweisen, oder alternativ auch durch einen kombinatorischen Beweis (siehe Aufgabe 2) herleiten. Eine Partition einer Menge induziert natürlich automatisch auch eine Zerlegung ihrer Kardinalität in positive Summanden – und auch hier wollen wir untersuchen, wieviele mögliche Kombinationen es gibt.
Definition. Es seien wieder k, n ∈ N0 . Eine k-Partition der Zahl n ist eine Zerlegung von n in k Summanden: n = n1 + · · · + nk mit ni ∈ N für alle i ∈ [k]. Bei
einer geordneten Partition kommt es auf die Reihenfolge der Summanden an, bei
einer ungeordneten nicht. Die Anzahl von ungeordneten k-Partitionen der Zahl n
wird mit Pn,k bezeichnet, man setzt P0,0 := 1.
Ein Beispiel: n = 4 und k = 2. Dann gibt es zwei ungeordnete 2-Partitionen
von 4, nämlich 4 = 1 + 3 = 2 + 2, aber drei geordnete 2-Partitionen, nämlich
4 = 1 + 3 = 3 + 1 = 2 + 2.
Satz 5.6. Es seien k, n ∈ N0 .
a) Für k > n gilt: Pn,k = 0.
b) Für n ≥ 1 gilt: Pn,0 = 0.
Pk−1
c) Für 1 ≤ k ≤ n gilt: Pn+k,k = i=0 Pn,k−1
.
d) Für 1 ≤ k ≤ n gilt: Es gibt genau n−1
k−1 geordnete k-Partitionen der Zahl n.
Beweis. Die Aussagen a) und b) sind wieder offensichtlich.
Um c) zu beweisen wollen wir jeden Summanden in einer Partition, der gleich
1 ist, einen Einser“ nennen. Eine k-Partition der Zahl n + k kann offensichtlich
”
zwischen 0 und k − 1 viele Einser haben.
Wir behaupten, dass die Anzahl der k-Partitionen der Zahl n + k mit genau i
Einsern Pn,k−i beträgt, woraus die Aussage c) folgen würde. Dazu geben wir eine
Bijektion von der Menge der k-Partitionen der Zahl n + k mit genau i Einsern in
die Menge der (k − i)-Partitionen der Zahl n wie folgt an: Schreibe zunächst
n + k = 1 + 1 + · · · + 1 + ni+1 + ni+2 + · · · + nk .
{z
} |
|
{z
}
i Einsen
k−i Summanden ≥ 2
Setze dann
n0i+1 := ni+1 − 1,
n0i+2 := ni+2 − 1,
...,
n0k := nk − 1.
Dann ist n0i+1 + · · · + n0k = n + k − i − (k − i) = n, und also stellen die n0i+1 , . . . , n0k
eine (k − i)-Partition der Zahl n dar. Diese Abbildung ist bijektiv, denn man
24
Kapitel II. Zählen
kommt umgekehrt von jeder (k − i)-Partition der Zahl n durch Addition von 1 zu
jedem Summanden und Hinzufügen von i Einsern wieder zurück zu genau einer
k-Partition der Zahl n + k mit genau i Einsern.
Der Beweis von d) ist noch einfacher. Wir schreiben n = 1 + 1 + 1 + · · · + 1
als Summe von n Einsen, und entsprechend mit genau n − 1 Pluszeichen. Eine
geordnete k-Partition der Zahl n entspricht jetzt einfach einer Auswahl
von k − 1
Pluszeichen (ungeordnet, ohne Zurücklegen – dafür gibt es n−1
Möglichkeiten),
k−1
und an diesen Pluszeichen beginnt“ dann der nächste Summand:
”
n = 1 + ··· + 1⊕1 + ··· + 1⊕··· ⊕ 1 + ··· + 1.
| {z }
| {z } | {z }
=n1
=n2
=nk
Anfang VL 28.11.07
Partitionen von Mengen und Zahlen kann man sich gut visualisieren, wenn
man sich vorstellt, dass eine Menge von Bällen auf Körbe zu verteilen sind.
Folgerung. Wir werfen n Bälle in k Körbe. Wieviele Verteilungsmöglichkeiten
gibt es? Jeder Ball wird genau einmal geworfen. Trotzdem müssen wir erstens
unterscheiden, ob die Bälle und die Körbe unterscheidbar sind. Außerdem wollen
wir noch spezifizieren, ob es weitere Bedingungen gibt, nämlich ob die Verteilung
der Bälle beliebig, oder injektiv (d.h. höchstens ein Ball pro Korb), oder surjektiv
(d.h. mindestens ein Ball pro Korb), oder bijektiv ist. Dann ist die Anzahl der
möglichen Verteilungen gegeben durch:
n Bälle, k Körbe
beliebig
a) Bälle unt.bar, Körbe unt.bar
b) Bälle nicht unt.bar, Körbe unt.bar
k
n
n+k−1
c) Bälle unt.bar, Körbe nicht unt.bar
d) Bälle nicht unt.bar, Körbe nicht unt.bar
Pk
i=1
i=1
k
n
k
surj.
bij.
k!Sn,k
n−1
n!
n
k−1
1
Sn,i
1
Sn,k
1
Pn,i
1
Pn,k
1
n
Pk
inj.
(Hierbei ist natürlich klar, dass für injektive Verteilungen notwendigerweise
n ≤ k gelten muss, für surjektive n ≥ k, und für bijektive n = k; andernfalls gibt
es überhaupt keine solche Verteilung.)
Beweis. a) In diesem Fall zählen wir eigentlich Funktionen f : [n] → [k]. Also gibt
es offensichtlich k n beliebige Funktionen, und k n injektive.
Um die surjektiven zu zählen, machen wir uns klar, dass die Urbilder f −1 (y) für
y = 1, . . . , k die Menge [n] in k Mengen partitionieren. Von diesen Partitionen
gibt es gemäß Definition 5 genau Sn,k viele. Nun können wir noch für jede Partitionsklasse aussuchen, auf welches y ∈ [k] sie abgebildet wird, dafür gibt es k!
Möglichkeiten.
Für bijektive Zuordnungen gibt es genau n! verschiedene Möglichkeiten.
6. Erzeugende Funktionen
25
b) Da die Bälle nicht unterscheidbar, die Körbe aber unterscheidbar sind,
zählen wir in diesem Fall eigentlich so etwas wie Wahlausgänge. Einen beliebige Ballverteilung können wir uns als Auflistung der getroffenen Korbnummern
vorstellen, also etwa
{1, . . . , 1, 2, . . . , 2, . . . , k, . . . , k}
und das ist dann genau eine n-elementige
Multimenge über der Menge [k], wovon
es gemäß Satz 5.2 genau n+k−1
gibt.
n
Wenn wir injektive Ballverteilungen zählen, dann wird jeder Korb entweder gar
nicht oder einmal getroffen, und daher besteht unsere Freiheit genau
darin, die n
Körbe auszuwählen, die getroffen werden sollen – dafür gibt es nk Möglichkeiten.
Eine surjektive Ballverteilung entspricht einer geordneten Zerlegung
der Zahl n in
k Summanden, und davon gibt es gemäß Satz 5.6d) genau n−1
k−1 viele.
Es gibt nur eine bijektive Zuordnung, nämlich in jeden Korb einen Ball.
c) Da jetzt die Körbe nicht mehr unterscheidbar sind, zählen wir in diesem
Fall die Partitionen der Menge der n Bälle. Gemäß Definition 5 zählt Sn,i genau
Pk
die Anzahl solcher Partitionen in i nicht–leere Körbe. Entsprechend ist i=1 Sn,i
die Gesamtanzahl der Partitionen.
Da die Körbe nicht unterscheidbar sind, gibt es nur eine injektive Verteilung,
nämlich je ein Ball in n (beliebige) der k Körbe. Die Anzahl der surjektiven Ballverteilungen beträgt Sn,k , wie schon aus unserer Diskussion im vorangegangenen
Absatz folgt. Bijektive Zuordnungen gibt es nur genau eine.
d) Im Unterschied zu c) sind jetzt auch die Bälle nicht mehr unterscheidbar, das heißt, wir zählen jetzt Partitionen der Zahl n der Bälle. Entsprechend
übertragen sich alle Ergebnisse von Fall c), wenn wir Sn,i durch Pn,i ersetzen.
6
Erzeugende Funktionen
Angenommen, wir kennen die ersten Werte einer Folge von Zahlen, und außerdem
eine Rekursionsvorschrift, die besagt, wie sich spätere Folgengliedern aus früheren
berechnen. Unser Ziel in diesem Abschnitt ist es, ein Verfahren kennenzulernen,
mit dem wir dann eine explizite Formel für das n-te Folgenglied herleiten können.
Wir wollen dies zunächst an einem einfachen Beispiel tun, ohne uns viele Gedanken darüber zu machen, was wir dort eigentlich machen, wieso wir es dürfen,
und warum es funktioniert. Anschließend werden wir dann den theoretischen Unterbau nachliefern, und ihn an weiteren Beispielen testen.
Beispiel. Die Folge a0 , a1 , a2 , . . . sei gegeben durch den Startwert a0 := 2 und die
Rekursion an := 3an−1 + 1 für alle n ∈ N. Wir suchen eine explizite Formel für
an . Dazu entwickeln wir eine Methode, die aus sechs Schritten besteht.
Schritt 1: Potenzreihe aufstellen.
P∞
Wir definieren A(x) := n=0 an xn .
26
Kapitel II. Zählen
Schritt 2: Setze Anfangswerte und Rekursion in die Potenzreihe ein.
A(x)
= a0 +
∞
X
an xn = 2 +
n=1
∞
X
(3an−1 + 1)xn
n=1
Schritt 3: Ersetze die auftretenden an unter Verwendung von A(x).
A(x)
=
1 + 3x
=
1 + 3x
∞
X
n=1
∞
X
an−1 xn−1 + 1 +
∞
X
xn
n=1
an xn +
n=0
∞
X
xn
n=0
1
.
1 + 3xA(x) +
1−x
=
Bei der letzten Umformung haben wir die Summenformel für die geometrische
Reihe benutzt:
∞
X
qn =
n=0
1
1−q
für alle q ∈ R mit 0 ≤ q < 1.
(6.10)
Schritt 4: Nach A(x) auflösen.
A(x) − 3xA(x)
⇒
A(x)
1
1−x
=
1+
=
1
1
+
.
1 − 3x (1 − x)(1 − 3x)
Schritt 5: Stelle die gebrochen rationale Funktion als Potenzreihe dar.
Dazu finden wir zunächst eine Partialbruchzerlegung für den zweiten Bruch:
1
(1 − x)(1 − 3x)
=
3
− 21
2
+
.
1 − x 1 − 3x
wie man durch Mulitiplikation beider Seiten mit (1 − x)(1 − 3x) schnell verifiziert.
Damit haben wir gezeigt, dass
A(x)
=
(6.10)
=
3
− 21
5
1
1 1
1
2
+
+
=
−
1 − 3x 1 − x 1 − 3x
2 1 − 3x 2 1 − x
∞
∞
∞ X
5X
1X n
5
1 n
n
n
(3x) −
x =
(3x) − x
2 n=0
2 n=0
2
2
n=0
Schritt 6: Koeffizientenvergleich.
Wir haben gezeigt, dass
∞
X
n=0
an x
n
∞
X
1
= A(x) =
(5 · 3n − 1)xn
2
n=0
6. Erzeugende Funktionen
27
für unendlich viele Werte von x ∈ R gilt, und damit ergibt sich (wir müssen
später noch thematisieren, warum), dass die Koeffizienten links und rechts alle
übereinstimmen müssen:
für alle n ∈ N0 gilt:
an =
1
(5 · 3n − 1),
2
womit die gewünschte Formel für an gefunden wäre. Nicht ganz überraschenderweise stimmt sie tatsächlich mit der Formel überein, die wir für genau dieses Beispiel
in Abschnitt 2 (siehe Gleichung (2.2)) erst geraten und dann durch vollständige
Induktion bewiesen haben. Das Bemerkenswerte an der hier vorgestellten Methode
ist, dass man mit ihrer Hilfe eine solche Formel, ohne sie zu raten, herleiten kann.
Mehrere Stellen in dem obigen Kochrezept“ bedürfen noch einer genaueren
”
Begründung, beispielsweise die Frage, ob unsere Potenzreihen überhaupt konvergieren, oder warum wir im letzten Schritt auf die Gleichheit der Koeffizienten
schließen dürfen. Dazu stellen wir jetztim Folgenden den formalen Rahmen bereit,
der sich an einigen Stellen auf Hilfsmittel aus der Analysis stützen wird.
Definition. Es sei (an )n∈N = a0 , a1 , a2 , . . . eine unendliche Folge von reellen Zahlen. Dann nennt man
∞
X
an xn ,
n=0
eine formale Potenzreihe. Wenn für eine Zahl x ∈ R die Summe
vergiert, dann ist die Funktion
A:R→R
mit A(x) :=
∞
X
P∞
n=0
an xn kon-
an xn
n=0
dort wohldefiniert.
Wir wollen für das Folgende vereinbaren, dass, wann immer wir A(x) schreiben, wir damit den Grenzwert der Potenzreihe meinen, unter der Voraussetzung,
dass sie konvergiert – auch wenn wir diese Voraussetzung nicht jedes Mal explizit nennen. Eine weitere Verabredung: Wann immer wir in der Zukunft bei einer
Summe
auf die Angabe des Laufindex n und seiner Grenzen verzichten und nur
P
schreiben,
meinen wir die Summe mit Laufindex n mit Grenzen 0 und ∞, also
P∞
.
n=0
Einer Folge (an ) wird also eine Funktion A(x) zugeordnet. Können zwei verschiedene Folgen die gleiche Funktion generieren? Der folgende Satz, den Sie in
der Analysis noch beweisen werden, sagt nein.
Satz 6.1. Seien (an )n∈N und (bn )n∈N zwei Folgen und
A(x) :=
X
an xn
und
B(x) :=
X
bn xn .
28
Kapitel II. Zählen
Wenn es ein ε > 0 gibt, so dass für alle x ∈ R mit 0 ≤ x ≤ ε gilt, dass
A(x) und B(x) sind wohldefiniert und es gilt A(x) = B(x),
dann folgt
∀n ∈ N0 :
an = bn .
Durch diesen Satz ist also klar, dass die Zuordnung Folge“ → Funktion“
”
”
im obigen Sinne injektiv ist und wir daher auch die Umkehrabbildung betrachten
können. Wir werden später (siehe 6.4) noch sehen, wie man aus P
einer gegebenen
Funktion A(x) die Folgenglieder an so berechnet, dass A(x) = n≥0 an xn gilt.
Man sagt dann auch, dass A(x) die erzeugende Funktion der Folge (an )n∈N ist.
Wir definieren nun die grundlegenden Operationen Addition, Multiplikation,
Inversion und Ableitung von formalen Potenzreihen.
P
P
Definition. Es seien an xn und bn xn zwei formale Potenzreihen.
P
P
n
n
a)
P Dien Summe von an x und bn x ist definiert als die formale Potenzreihe
cn x mit cn := an + bn für alle n ∈ N0 .
P
P
n
n
b)
P Dasn Produkt von
Pn an x und bn x ist definiert als die formale Potenzreihe
cn x mit cn := k=0 ak bn−k für alle n ∈ N0 .
P
P
c) Die Potenzreihe
bn xn heißt inverse Potenzreihe von an xn , wenn für ihr
P
Produkt cn xn (das wie in b) definiert ist) gilt: c0 = 1 und cn = 0 für alle n ∈ N.
P
d) Die Ableitung von an xn ist definiert als die formale Potenzreihe
∞
X
nan xn−1 =
n=1
∞
X
(n + 1)an+1 xn .
n=0
Betrachtet man formale Potenzreihen als Funktionen, dann leisten die obigen
Operationen das, was ihre Namen suggerieren.
P
P
Satz 6.2. Es seien A(x) = an xn und B(x) = bn xn für x ∈ R konvergent.
P
a) Wenn C(x) = cn xn mit cn = an + bn ist, dann gilt C(x) = A(x) + B(x).
P
Pn
b) Wenn C(x) = cn xn mit cn = k=0 ak bn−k ist, dann gilt C(x) = A(x) · B(x).
c) Wenn A(x) in xPdifferenzierbar ist und wir die Ableitung mit A0 (x) bezeichnen,
∞
dann gilt A0 (x) = n=0 (n + 1)an+1 xn .
Beweis. siehe Analysis.
P
P
Lemma 6.3. an xn hat genau dann eine inverse Potenzreihe bn xn , wenn a0 6= 0
ist. In diesem Fall gilt
b0 =
1
a0
und
bn = −
n
1 X
ak bn−k
a0
k=1
∀n ∈ N.
6. Erzeugende Funktionen
29
P
P
n
Beweis.
einePbeliebige Potenzreihe und cn xn das
P Sein bn xP zunächst
P Produkt
von an x und bn xn . Wenn bn xn die inverse Potenzreihe von an xn ist,
dann folgt aus 1 = c0 und 0 = cn und
n
X
cn =
für alle n ∈ N0 ,
aj bn−k
k=0
dass
1 = c0 = a0 b0
und
0 = cn =
n
X
ak bn−k
∀n ∈ N
k=0
⇔
⇔
1
= b0
a0
und
1
= b0
a0
und
n
X
ak bn−k
∀n ∈ N
n
1 X
ak bn−k = bn
a0
∀n ∈ N.
0 = a0 bn +
k=1
−
k=1
Wenn umgekehrt diese Gleichungen gegeben sind, dann ist
inverse Potenzreihe.
P
bn xn die zu
P
an xn
Beispiel.
P
a) Sei γ ∈ R beliebig und A(x) := n≥0 an xn mit an := γ n . A(x) ist also die
sogenannte geometrische Reihe. Wir wollen die zu A(x) inverse Potenzreihe B(x)
bestimmen
Pn und wenden dazu Proposition 6.3 an. Dann ist b0 = 1/a0 = 1 und
bn = − k=1 ak bn−k , also
b1 = −a1 b0 = −γ
und
b2 = −(a1 b1 + a2 b0 ) = −(−γ 2 + γ 2 ) = 0.
Auch für n ≥ 3 folgt dann, dass bn = 0 ist, wie man sich induktiv leicht klar
macht:
bn
= −(a1 bn−1 + a2 bn−2 + · · · + an−2 b2 +an−1 b1 + an b0 )
{z
}
|
=0 weil bn−1 = · · · = b2 = 0
= −(γ
n−1
(−γ) + γ n ) = 0.
Also
P ist B(x) = b0 + b1 x = 1 − γx die inverse Potenzreihe zu A(x), das heißt
n n
(1 − γx) = 1, also
n≥0 γ x
X
n≥0
γ n xn =
1
.
1 − γx
(6.11)
P
b) Nach a) gilt (mit γ = 1), dass n≥0 xn = (1 − x)−1 . Bildet man auf beiden
Seiten die k-fache Ableitung, dann erhält man
X
k!
n(n − 1) · · · · · (n − k + 1)xn−k =
(1 − x)k+1
n≥k
30
Kapitel II. Zählen
und daraus folgt
X n + k X n
1
n
x =
xn−k =
k
(1 − x)k+1
k
n≥0
(6.12)
n≥k
für alle k ∈ N, sofern die Summe konvergiert.
Der folgende Satz aus der Analysis – über die sogenannte Taylor–Entwicklung
– befasst sich nun mit der schon angerissenen Frage,
P wie man an einer Funktion
A(x) abliest, welche Folge (an )n∈N0 mit A(x) = n≥0 an xn sie erzeugt.
Satz 6.4. Sei A : R → R eine Funktion, die in 0 unendlich oft differenzierbar ist,
und bezeichne mit A(k) (x) die k-te Ableitung an der Stelle x. Dann gilt:
A(x) =
X A(n) (0)
xn ,
n!
n≥0
vorausgesetzt, die Summe konvergiert.
Mit anderen Worten: A(x) ist die erzeugende Funktion für die Folge (an )n∈N0
mit an := A(n) (0)/n!. Satz 6.4 werden Sie in der Analysis–Vorlesung beweisen.
Beispiel. Wir hatten in Proposition 5.3 d) bereits gesehen, dass für m ∈ N0 gilt:
m
(1 + y)
=
m X
m
n=0
n
yn .
Nun wollen wir eine ähnliche Formel für den Fall m ∈ R herleiten.
Sei also r ∈ R und setze A(y) := (1 + y)r . Dann gilt für die r-te Ableitung
an der Stelle 0:
A(n) (0) = r · (r − 1) · · · · · (r − n + 1) · (1 + 0)r−n = rn ,
also
6.4
(1 + y)r = A(y) =
X A(n) (0)
X rn
X r yn =
yn =
yn .
n!
n!
n
n≥0
n≥0
(6.13)
n≥0
Nach dieser kurzen Einführung in die Theorie der erzeugenden Funktionen
wollen wir die Methode jetzt noch einmal auf ein konkretes Beispiel anwenden.
Beispiel. Die Folge der Fibonacci-Zahlen ist gegeben durch die Startwerte F0 = 0
und F1 = 1 und die rekursive Vorschrift Fn+2 = Fn+1 + Fn , für alle n ∈ N0 . Wir
suchen eine explizite Formel für Fn .
6. Erzeugende Funktionen
31
Schritt 1: Potenzreihe aufstellen.
P
Wir definieren F (x) := n∈N0 Fn xn .
Schritt 2: Setze Anfangswerte und Rekursion in die Potenzreihe ein.
X
Fn xn
F (x) = F0 + F1 x +
n≥2
= x+
X
Fn+2 xn+2 = x +
n≥0
X
(Fn+1 + Fn )xn+2 .
n≥0
Schritt 3: Ersetze die auftretenden Fn unter Verwendung von F (x).
X
X
F (x) = x +
Fn+1 xn+2 +
Fn xn+2
n≥0
= x+x·
X
n≥0
Fn+1 x
n+1
+ x2 ·
n≥0
X
Fn xn
n≥0
= x + x(F (x) − F0 ) + x2 F (x) = x + xF (x) + x2 F (x).
Schritt 4: Nach F (x) auflösen.
F (x) − xF (x) − x2 F (x)
F (x)
= x
=
x
.
1 − x − x2
Schritt 5: Stelle die gebrochen rationale Funktion als Potenzreihe dar.
Dazu machen wir folgenden Ansatz. Bestimme α, β, γ, δ ∈ R, so dass für alle x ∈ R
gilt:
F (x)
=
x
α
β
α(1 − δx) + β(1 − γx)
=
+
=
2
1−x−x
1 − γx 1 − δx
(1 − γx)(1 − δx)
(6.14)
.
Wir versuchen, die vier Variablen so zu wählen, dass die beiden Zähler und die
beiden Nenner jeweils übereinstimmen und erhalten so die zwei Gleichungen:
x
1 − x − x2
= α(1 − δx) + β(1 − γx)
=
(1 − γx)(1 − δx) = γ(
(6.15)
1
1
− x)δ( − x)
γ
δ
(6.16)
Aus Gleichung (6.16) erkennen wir, dass 1/γ und 1/δ die Lösungen der Gleichung
1 − x − x2 = 0 sind. Mit Hilfe der Lösungsformel für quadratische Gleichungen
ergibt sich daraus
√
√
√
√
1
1+ 5
−2
−2
(1 − 5)
−2 + 2 5
1− 5
√ =
√
√ =
=
, also γ =
=
,
γ
−2
1−5
2
1+ 5
(1 + 5) (1 − 5)
und analog
√
√
1
1− 5
−2
1+ 5
√ =
=
, also δ =
.
δ
−2
2
1− 5
32
Kapitel II. Zählen
Um β zu berechnen, setzen wir in (6.15) x = 1/δ und erhalten
1
γ
1 δ
= β(1 − ), also β =
=
δ
δ
δδ−γ
1
√
√
1+ 5−1+ 5
2
1
=√ .
5
Um α zu berechnen, setzen wir in (6.15) x = 0 und erhalten
1
0 = α + β, also α = −β = − √ .
5
Man sollte sich allerdings klar machen, dass wir auf diesem Wege die Werte für
α und β nicht streng hergeleitet haben, weil wir x = 1/δ in Gleichung (6.15) gesetzt haben, letztere aber aus Gleichung (6.14) gewonnen hatten, die offensichtlich
für genau diesen Wert von x gar nicht gilt. Nichtsdestotrotz lässt sich natürlich
jetzt, da wir Werte für α, β, γ, δ geraten“ haben, leicht überprüfen, dass sie die
”
ursprüngliche Gleichung (6.14) für unendlich viele Werte von x erfüllen.
Wir haben also gezeigt, dass für diese Werte von α, β, γ, δ
F (x) =
x
α
β
=
+
2
1−x−x
1 − γx 1 − δx
(6.11)
= α
∞
X
γ n xn + β
n=0
∞
X
δ n xn .
n=0
Schritt 6: Koeffizientenvergleich.
Wir haben gezeigt, dass
X
Fn xn
= F (x) =
∞
X
(αγ n + βδ n ) xn .
n=0
n≥0
Nach Satz 6.1 folgt damit, dass
√ !n
1
1− 5
+√
2
5
1
Fn = αγ + βδ = − √
5
n
n
√ !n
1+ 5
.
2
womit die gewünschte Formel für Fn gefunden wäre. Sie darf sicher schon insofern
als Überraschung gelten, als dass beim ersten Anblick nicht einmal klar, dass sie
für jedes n ∈ N0 eine natürliche Zahl erzeugt.
Übungsaufgaben
1. Finden Sie einen formalen Beweis für die Aussage von Satz 5.1b):
k
|M | =
k−1
Y
(n − i)
i=0
6. Erzeugende Funktionen
33
Ein möglicher Ansatz dafür: Wählen Sie ein beliebiges Element x aus M aus,
finden Sie eine Bijektion
·
f : (M \ {x})k ∪
(M \ {x})k−1 × [k − 1] → M k
und beweisen Sie dann die gesuchte Formel durch Induktion über |M |.
2. Es sei Tn,k die Anzahl geordneter k-Partitionen einer n-elementigen Menge.
a) Welche Abbildungen von [n] nach [k] zählt Tn,k und in welchem Zusammenhang stehen Tn,k und Sn,k ?
b) Beweisen Sie, dass für 1 ≤ k ≤ n
Tn,k
k
X
r k
(−1)
(k − r)n
=
r
r=0
und leiten Sie daraus die Formel in Satz 5.5 her.
Literaturhinweise zu Kapitel II
Weiteres Material zu den Abschnitten 4 und 5 findet sich beispielsweise bei [A] in
Kapitel 1.1, 1.2 und 2.4; bei [MN] in Kapitel 3.1 bis 3.3 sowie 3.7; und bei [S] in
Kapitel 1.1 bis 1.3. Zusätzliche Informationen zu Abschnitt 6 finden sich bei [A]
in Kapitel 3.1 und 3.2, bei [MN] in Kapitel 12 und [S] in Kapitel 4.2.
34
Kapitel II. Zählen
Kapitel III
Relationale Strukturen
7
Graphen
Definition (Graph, Nachbar, Grad). Ein Graph G = (V, E) besteht aus einer
Knotenmenge V und einer Kantenmenge E ⊆ V2 . Wir wollen hier voraussetzen,
dass V endlich und nicht leer ist.
Zwei Knoten x, y ∈ V eines Graphen G = (V, E) heißen benachbart, wenn
{x, y} ∈ E. Alle zu x benachbarten Knoten bilden die Nachbarschaft von x, die
mit
N (x) := {y ∈ V : {x, y} ∈ E}
bezeichnet wird. Die Anzahl der Nachbarn von x heißt der Grad von x und wird
mit deg(x) := |N (x)| notiert. Einen Knoten mit Grad 0 nennt man isoliert, einen
Knoten mit Grad 1 ein Blatt. Der Minimalgrad ist der kleinste in G auftretende
Grad und wird mit δ(G) bezeichnet, der Maximalgrad ist der größte in G auftretende Grad und wird mit ∆(G) bezeichnet.
Graphen werden oft durch ein Diagramm angegeben (oder veranschaulicht),
bei dem man die Knoten als Knubbel malt und jede Kante dadurch kennzeichnet,
dass die beiden an ihr beteiligten Knoten durch eine Linie verbunden werden.
Dabei spielt die Lage der Knoten und der Kanten keine Rolle, es kommt nur
darauf an, welche Paare von Knoten eine Kante bilden:
Beispiel. Sei G = (V, E) mit
V = {a, b, c, d} und E = {{a, b}, {b, c}}.
Bild
36
Kapitel III. Relationale Strukturen
Hier sind ein paar einfachste Erkenntnisse über Graphen und Knotengrade.
Satz
P7.1. Sei G = (V, E) ein Graph. Dann gilt:
a) v∈V deg(v) = 2|E|.
b) G hat eine gerade Anzahl von Knoten ungeraden Grades.
c) Wenn |V | ≥ 2, dann hat G mindestens zwei Knoten gleichen Grades.
Beweis. a) Wenn wir die Summe der Grade betrachten, stellen wir fest, dass wir
jede Kante genau zweimal gezählt haben - je einmal von ihren beiden Endknoten.
b) Wir spalten die Summe der Grade wie folgt auf:
a)
2|E| =
X
deg(v) =
v inV
X
v∈V :deg(v) ist gerade
deg(v) +
X
deg(v).
v∈V :deg(v) ist ungerade
Offensichtlich ist 2|E| eine gerade Zahl, und da die erste Summe nur gerade Summanden enthält, ist auch sie eine gerade Zahl. Also muss auch die zweite Summe
eine gerade Zahl sein. Da sie aber nur ungerade Summanden enthält, folgt, dass
die Anzahl ihrer Summanden gerade sein muss. Das war zu zeigen.
Der Beweis von Teil c) verbleibt als einfache Übung.
Definition (isomorph, Subgraph). Zwei Graphen G1 = (V1 , E1 ) und G2 = (V2 , E2 )
heißen isomorph, in Zeichen G1 ∼
= G2 , falls es eine Bijektion f : V1 → V2 gibt, so
dass für alle Knoten u, v ∈ V1 gilt: {u, v} ∈ E1 ⇔ {f (u), f (v)} ∈ E2 . Die Funktion
f nennt man in diesem Fall einen (Graphen–) Isomorphismus.
Ein Graph H = (W, F ) ist ein Subgraph von G = (V, E), wenn W ⊆ V und F ⊆ E.
Wir schreiben dann H ⊆ G.
Ein Graph H = (W, F ) ist induzierter Subgraph von G = (V, E), wenn W ⊆ V
und F = E ∩ W
2 . Wir schreiben dann H = G[W ] und nennen H den durch W
induzierten Subgraphen von G.
Beispiel. Bild
Definition (spezielle Graphen). Die folgenden Graphen werden so oft benutzt, dass
sie sich eigene Namen verdient haben. Für n ∈ N0 definieren wir:
Pn := ({0, . . . , n}, E) mit E := {i − 1, i} : i ∈ [n] , für n ≥ 0,
Cn := ([n], E) mit E := {i, i + 1} : i ∈ [n − 1] ∪ {n, 1} , für n ≥ 3,
[n]
Kn :=
[n],
und
En := ([n], ∅) für n ≥ 1.
2
Ein Graph, der isomorph zu Pn ist, heißt Weg der Länge n. Wenn G = (V, E) ∼
= Pn
und f : V → [n] der entsprechende Isomorphismus ist, dann heißen die Knoten x
7. Graphen
37
mit f (x) = 0 und y mit f (y) = n Anfangs– und Endknoten von G und wir nennen
G einen x, y-Weg. Ein Graph, der isomorph zu Cn ist, heißt Kreis der Länge
n. Ein Graph, der isomorph zu Kn ist, heißt Clique auf n Knoten, oder kurz:
n-Clique. Ein Graph, der isomorph zu En ist, heißt stabile Menge auf n Knoten,
oder kurz: n-stabile Menge.1
Mit diesen und Subgraphen sind die beiden folgenden Graphenparamter verknüpft. Für einen Graphen G = (V, E) sind die Cliquenzahl ω(G) und die Stabilitätszahl α(G) definiert als die Kardinalität einer größtmöglichen Clique bzw. stabilen Menge in G:
ω(G)
α(G)
max{` ∈ N : ∃S ⊆ V mit G[S] ∼
= K` },
:= max{` ∈ N : ∃S ⊆ V mit G[S] ∼
= E` }.
:=
Beispiel. Wir berechnen die Cliquen– und die Stabilitätszahl von den oben eingeführten speziellen Graphen:
a) ω(Kn ) = n, α(Kn ) = 1 für alle n ∈ N,
b) ω(En ) = 1, α(En ) = n für alle n ∈ N,
c) ω(Pn ) = 2, α(P2n ) = α(P2n+1 ) = n + 1, für alle n ∈ N,
d) ω(C3 ) = 3 und ω(Cn ) = 2 wenn n ≥ 4, α(C2n ) = α(C2n+1 ) = n wenn n ≥ 2.
Mit Hilfe der Konzepte von Wegen und Kreisen können wir nun die Struktur
von Graphen genauer diskutieren.
Definition (kreisfrei, zusammenhängend, Baum). Sei G = (V, E) ein Graph.
a) G heißt kreisfrei (oder Wald ), wenn G keinen Kreis als Subgraphen enthält.
b) G heißt zusammenhängend, wenn es zu jedem Paar von Knoten x, y ∈ V einen
x, y-Weg als Subgraphen in G gibt.
c) Ein inklusionsmaximaler zusammenhängender Subgraph H von G heißt Zusammenhangskomponente von G.
d) Wenn G kreisfrei und zusammenhängend ist, dann nennt man G einen Baum.
Bild
Bevor wir ein paar einfache Eigenschaften von Bäumen kennenlernen werden,
treffen wir noch ein paar Vereinbarungen: Wenn G = (V, E) ein Graph ist, x ∈ V ,
S ⊆ V , e ∈ E und F ⊆ E, dann setzen wir
G − x := G[V \ {x}],
G − e := (V, E \ {e}),
G − S := G[V \ S],
G − F := (V, E \ F ).
Die folgenden Aussagen sind aus botanischer Sicht einleuchtend und mathematisch auch schnell zu beweisen.
1 Statt von einer Clique spricht man manchmal auch von einem vollständigen Graphen, und
eine stabile Menge kann auch als unabhängig bezeichnet werden.
38
Kapitel III. Relationale Strukturen
Lemma 7.2.
a) Die Zusammenhangskomponenten eines Waldes sind Bäume.
b) Jeder Baum G mit mindestens zwei Knoten hat mindestens zwei Blätter.
c) Wenn G ein Baum und b ein Blatt in G ist, dann ist G − b ein Baum.
Beweis. Aussage a) folgt unmittelbar aus der Definition.
Um b) zu beweisen, betrachten wir einen x, y-Weg als Subgraph in G, der nicht
verlängert werden kann. Wir behaupten, dass seine Anfangs– und Endknoten x 6=
y Blätter sein müssen: Offensichtlich haben sie (dank des Weges, auf dem sie
liegen) mindestens jeweils einen Nachbarn. Wenn sie noch einen weiteren Nachbarn
hätten, dann könnte der nicht auf dem Weg liegen (sonst hätte G einen Kreis) aber
auch nicht außerhalb des Weges liegen (sonst könnten wir den Weg ja verlängern).
Bild
Bei dem Beweis von Aussage c) ist klar, dass wenn G kreisfrei ist, auch G − b
kreisfrei sein muss. Um zu zeigen, dass G − b auch zusammenhängend ist, seien
zwei beliebige Knoten x und y in G − b gegeben. Da G zusammenhängend ist, gibt
es in G einen x, y-Weg. Dieser kann (weil x 6= b 6= y und deg(b) = 1 ist) aber b
nicht benutzt haben, folglich existiert er auch in G − b.
Mit diesen Hilfsmitteln können wir nun Bäume auf verschiedene Arten charakterisieren.
Satz 7.3. Für einen Graphen G = (V, E) mit n = |V | und m = |E| sind äquivalent:
a) G ist ein Baum,
b) G ist zusammenhängend und m = n − 1,
c) G ist kreisfrei und m = n − 1,
d) G ist Kanten-maximal kreisfrei,
e) G ist Kanten-minimal zusammenhängend,
f ) zu je zwei Knoten x, y aus V gibt es genau einen x, y-Weg in G.
Zur Erläuterung: Ein Graph heißt Kanten-maximal kreisfrei, wenn er kreisfrei ist
und das Hinzufügen jeder neuen Kante einen Kreis erzwingen würde. Er heißt
Kanten-minimal zusammenhängend, wenn er zusammenhängend ist und das Entfernen jeder Kante den Zusammenhang zerstören würde.
Beweis. Wir zeigen hier nur exemplarisch, dass a) ⇒ b) ⇒ c) ⇒ a). Den Nachweis
der restlichen Äquivalenzen verschieben wir in die Übungsaufgaben.
a) ⇒ b). Diese Aussage zeigen wir durch Induktion über n. Für n = 1 und n = 2
ist die Aussage offensichtlich. Sei also G = (V, E) ein Baum auf n ≥ 3 Knoten
und m Kanten. Zu zeigen ist, dass m = n − 1 ist. Nach Lemma 7.2b) existiert in
7. Graphen
39
G ein Blatt b, und nach Lemma 7.2c) ist G − b wiederum ein Baum. der offensichtlich n − 1 Knoten und m − 1 Kanten hat. Auf diesen Baum können wir die
Induktionsannahme anwenden, die besagt, dass m − 1 = (n − 1) − 1 ist, woraus
das gewünschte m = n − 1 folgt.
b) ⇒ c). Sei G ein zusammenhängender Graph mit n Knoten und m = n − 1
Kanten. Zu zeigen ist, dass G kreisfrei ist. Angenommen, G wäre nicht kreisfrei
und C = (VC , EC ) wäre ein Kreis als Subgraph von G. Unser Ziel ist es, zu zeigen,
dass G dann mindestens n Kanten haben muss. Wir wählen dazu zunächst einen
Knoten w ∈ VC . Da G zusammenhängend ist, existiert für jeden Knoten v ∈ V \VC
ein kürzester v, w-Weg. Sei ev die erste Kante (von v kommend) auf diesem Weg.
Diese Kante liegt nicht in EC und für zwei verschiedene Knoten v, v 0 ∈ V \ V 0 gilt,
dass ev 6= ev0 ist. Somit muss G mindestens
|V \ VC | + |EC | = |V \ VC | + |VC | = |V | = n
Kanten haben, im Widerspruch zur Voraussetzung m = n − 1.
c) ⇒ a). Sei G = (V, E) ein kreisfreier Graph mit n Knoten und m = n − 1 Kanten. Es ist zu zeigen, dass G dann auch zusammenhängend ist. Seien (V1 , F1 ), . . . ,
(Vk , Fk ) die Zusammenhangskomponenten von G. Für diese Zusammenhangskomponenten gilt, dass ihre Knotenmengen eine Partition von V und ihre Kantenmengen eine Partition von E bilden. Ferner sind sie nach Lemma 7.2a) Bäume und
daher gilt, wegen der schon gezeigten Implikation a) ⇒ b), dass |Fi | = |Vi | − 1.
Somit folgt
n − 1 = m = |E| =
k
X
i=1
|Fi | =
k
X
(|Vi | − 1) =
i=1
k
X
|Vi | − k = n − k.
i=1
Also muss k = 1 sein, und das bedeutet, dass G zusammenhängend ist.
Alle bisher eingeführten Parameter haben sich vorrangig mit der lokalen
Struktur eines Graphen befasst. Das im folgenden eingeführte Konzept der Graphenfärbung versucht stattdessen, seine globale Komplexität zu messen.
Definition (Graphenfärbung). Sei k ∈ N und G = (V, E) ein Graph. Eine kFärbung von G ist eine Funktion f : V → [k] mit der Eigenschaft, dass benachbarte
Knoten nicht die gleiche Farbe erhalten:
∀{x, y} ∈ E :
f (x) 6= f (y)}.
Die chromatische Zahl (oder Färbungszahl ) von G ist definiert als
χ(G) := min{k ∈ N : G hat k-Färbung }.
Wenn χ(G) = 2 ist, nennt man G auch bipartit.
40
Kapitel III. Relationale Strukturen
Beispiel. Bild
Zwei offensichtliche Beobachtungen: Ein Graph G hat genau dann eine kFärbung hat, wenn alle Subgraphen von G eine k-Färbung besitzen. Und: G hat
genau dann eine k-Färbung, wenn alle Zusammenhangskomponenten von G eine
k-Färbung haben.
Wenn ein Graph G eine k-Färbung f besitzt, dann induziert für jedes i ∈ [k] die
Menge f −1 (i) (also die Menge der Knoten, die durch f die Farbe i erhalten) eine
stabile Menge. Man nennt f −1 (i) auch die i-te Farbklasse von f in G.
Auf der Suche nach einfachen Graphen, die nicht bipartit sind, treffen wir
zuerst auf Kreise ungerader Länge: Cn ist genau dann bipartit, wenn n gerade
ist. Der folgende Satz besagt, dass Kreise ungerader Länge tatsächlich das einzige
Hindernis darstellen, das einen Graphen daran hindern kann, bipartit zu sein.
Satz 7.4 (König 1936). Sei G = (V, E) ein Graph. Dann gilt: G ist genau dann
bipartit, wenn G keinen Kreis ungerader Länge als Subgraphen enthält.
Beweis. Wenn G bipartit ist, dann sind alle seine Subgraphen bipartit, also kann
kein Subgraph ein Kreis ungerader Länge sein.
Für die umgekehrte Implikation nehmen wir ohne Beschränkung der Allgemeinheit an, dass G zusammenhängend ist, andernfalls betrachten wir die Zusammenhangskomponenten von G. Wir wählen weiterhin einen beliebigen Knoten
v ∈ V aus und partitionieren V wie folgt:
A
:= {w ∈ V : ein kürzester w, v-Weg hat gerade Länge},
B
:= {w ∈ V : ein kürzester w, v-Weg hat ungerade Länge}.
(7.1)
·
Damit ist klar: V = A ∪ B und insbesondere v ∈ A. Wenn wir zeigen können,
dass G[A] und G[B] stabile Mengen sind.
Angenommen, dies wäre nicht der Fall: dann existiert eine Kante {x, y} mit
x ∈ A, y ∈ A oder x ∈ B, y ∈ B. Wir betrachten einen kürzesten x, v-Weg Px ,
und einen kürzesten y, v-Weg Py . Sei z der erste gemeinsame Knoten von Px und
Py (eventuell gilt z = v). Dann muss das Wegstück in Px von z nach v die gleiche
Länge haben wie das Wegstück in Py von z nach v.
Bild
Somit folgt: Da Px und Py entweder beide gerade Länge (wenn x ∈ A, y ∈ A)
oder beide ungerade Länge (wenn x ∈ B, y ∈ B) haben, müssen auch die Teilstücke
in Px von x nach z bzw. in Py von y nach z beide gerade Länge oder beide ungerade
Länge haben. In jedem Fall bilden diese Teilstücke zusammen mit der Kante {x, y}
8. Exkurs: Diskrete Optimierung
41
einen Kreis ungerader Länge, im Widerspruch zur Annahme, dass G keine Kreise
ungerader Länge als Subgraphen enthält.
8
Exkurs: Diskrete Optimierung
Die grundlegenden Konzepte der Graphentheorie eignen sich bestens dafür, natürliche Optimierungsprobleme kurz und präzise zu modellieren und zu lösen. Wir
führen dazu die Definition eines gewichteten Graphen G = (V, E, `) ein, der durch
einen Graphen (V, E) und eine Gewichtsfunktion ` : E → R gegeben ist. Durch
diese Gwichtsfunktion
P erhält auch jeder Subgraph H = (W, F ) ⊆ G sein eigenes
Gewicht `(H) := e∈F `(e). Wir betrachten nun exemplarisch einige Aufgabenstellungen aus der diskreten Optimierung:
• Kürzeste Wege. Gegeben ein gewichteter Graph G = (V, E, `) und zwei ausgezeichnete Knoten s, t ∈ V . Finde einen s, t-Weg H als Subgraphen von G, der
`(H) minimiert.
Bild
Wenn man beispielsweise Verkehrsnetze durch gewichtete Graphen modelliert, bei denen die Kantengewichte für die Kosten oder Entfernungen zwischen
zwei Kreuzungen (Knoten) stehen, dann kann man mit Hilfe von Algorithmen zur
Lösung des Kürzeste-Wege-Problems optimale Routen in der Verkehrsnavigation
berechnen.
• Minimal aufspannende Bäume. Gegeben ein gewichteter Graph G = (V, E, `).
Finde einen Baum H = (V, F ) als Subgraphen von G, der `(H) minimiert.
Bild
Man beachte, dass hier von dem Baum H gefordert wird, dass er alle Knoten von G enthalten muss (daher der Begriff aufspannend“). Ein möglicher An”
wendungshintergrund für diese Aufgabensteellung ist beispielsweise ein zusammenhängendes Computernetzwerk, das als gewichteter Graph G modelliert wird,
der
• Kürzeste Rundreisen. Gegeben ein gewichteter Graph G = (V, E, `). Finde
einen Kreis H = (V, F ) als Subgraphen von G, der `(H) minimiert.
Bild
42
Kapitel III. Relationale Strukturen
Auch hier ist es natürlich wichtig, dass der Kreis H alle Knoten enthält. Ähnlich wie bei dem Kürzesten-Wege-Problem könnten die Knoten des Graphen hier
für verschiedene Städte stehen, die Kantengewichte für die dazwischenliegenden
Entfernungen, und gesucht ist eine sogenannte Tour des Handelsreisenden (engl.
Travelling Salesman), der jede Stadt genau einmal besucht und dabei möglichst
schnell wieder zu seinem Ausgangspunkt zurückkommen möchte.
• Optimale Färbungen. Gegeben ein Graph G = (V, E). Finde eine k-Färbung
von G, die k minimiert.
Hier könnten beispielsweise die Knoten Radiosender repräsentieren, die so mit
Frequenzen (Farben) ausgestattet werden sollen, dass benachbarte (also durch
eine Kante verbundene) Sender nicht die gleiche Frequenz erhalten, und dabei
insgesamt möglichst wenige verschiedene Frequenzen benutzt werden sollen.
Auch wenn diese Probleme sich auf den ersten Blick vielleicht sehr ähneln,
so unterscheiden sie sich in ihrem algorithmischen Schwierigkeitsgrad doch sehr.
Man zum Beispiel zeigen, dass ein sehr einfaches Verfahren immer einen minimalen aufspannenden Baum findet: Beginne mit einer leeren Kantenmenge, gehe die
Kanten, sortiert nach aufsteigendem Gewicht, durch und nimm jede Kante hinzu,
die keinen Kreis schließt. Auch für das Kürzeste-Wege-Problem existieren effiziente
Lösungsverfahren, während viele Argumente dafür sprechen, dass genau das für die
Probleme der kürzesten Rundreisen und der optimalen Färbung unmöglich ist.2
Allerdings gibt es auch zwischen den beiden zuletzt genannten Aufgaben wieder
einen deutlichen Unterschied – während es wiederum einen eleganten und schnellen Algorithmus gibt, der immer eine Rundreise findet, deren Länge höchstens um
einen Faktor 1, 5 oberhalb der Länge der optimalen Tour liegt, liegt ein derartiges
approximatives Verfahren für das Färbungsproblem außerhalb des Möglichen.
Die Grenze des effizient Machbaren verläuft mitunter auch mitten durch die
genannten Probleme. Wenn man beispielsweise den Beweis von Satz 7.4 noch einmal studiert, dann stellt man fest, dass man leicht herausfinden kann, ob ein Graph
bipartit ist (also eine 2-Färbung hat) oder nicht: man generiert nämlich die Parti·
tion V = A ∪ B wie in (7.1), und entweder dies induziert eine 2-Färbung oder es
gibt keine. Demgegenüber ist aber bereits die Frage, ob ein Graph eine 3-Färbung
besitzt, schon wieder sehr schwierig – könnte man sie im Allgmeinen beantworten,
dann könnte man auch stets die optimale Anzahl Farben ermitteln.
Die Untersuchung dieser algorithmischen Machbarkeitsgrenze gehört gleichermaßen in die Diskrete Mathematik wie in die Theoretische Informatik, aber ihre
Darstellung würde den Rahmen dieses einführenden Buches sprengen und wir werden sie daher nicht weiter vertiefen. (Wir haben hier ja noch nicht einmal genau
2 Das ist genau die berühmte P versus NP Frage: es gibt genau dann schnelle Verfahren für
diese Probleme, wenn P=NP ist.
9. Euler–Touren und Hamilton–Kreise
43
definiert, was wir unter einem schnellen Lösungsverfahren“ verstehen.) Wir wer”
den aber im Folgenden en passant den Finger auf diejenigen Strukturresultate
legen, die auch algorithmische Verwendbarkeit haben.
9
Euler–Touren und Hamilton–Kreise
In diesem kurzen Abschnitt untersuchen wir zwei verschiedene Arten und Weisen,
einen Graphen zu durchlaufen.
Definition. Sei G = (V, E) ein Graph. Ein Kantenzug in G ist eine Folge (v0 , . . . , vk )
von Knoten vi ∈ V , so dass {vi−1 , vi } ∈ E für alle i ∈ [k]; und man sagt, dass
der Kantenzug die Kante {vi−1 , vi } benutzt. (Man beachte: ein Kantenzug kann
Knoten mehrfach durchlaufen und Kanten mehrfach benutzen.) Ein Kantenzug
heißt geschlossen, wenn v0 = vk ist. Eine Euler–Tour von G ist ein geschlossener
Kantenzug in G, der jede Kante aus E genau einmal benutzt.
Die Frage, ob ein Graph G eine Euler–Tour besitzt ist populärwissenschaftlich
unter der Formulierung Kann man G zeichnen, ohne den Stift abzusetzen “ (und:
”
ohne Linien doppelt zu zeichnen und mit Anfangs- gleich Endpunkt) bekannt.
Wegen der letzten Forderung hat das sogenannte Haus des Nikolaus“ keine Euler–
”
Tour. Das Haus des Nikolaus mit Keller“ besitzt hingegen eine.
”
Bild
Der folgende Satz von Euler aus dem Jahr 1736 gilt als eine der ersten Arbeiten auf dem Gebiet der Graphentheorie.
Satz 9.1. Sei G = (V, E) ein zusammenhängender Graph. Dann sind äquivalent:
a) Es gibt eine Euler–Tour von G.
b) Alle Knoten von G haben geraden Grad.
c) Es gibt eine Partition von E in kantendisjunkte Kreise.
Beweis. Übungsaufgabe!
Wir ändern nun die Spielregeln. Während eine Euler–Tour einen geschlossenen Kantenzug beschreibt, der jede Kanten genau einmal besucht, muss ein
Hamilton–Kreis jeden Knoten genau einmal durchlaufen.
Definition. Sei G = (V, E) ein Graph. Ein Kreis der Länge |V | in G heißt Hamilton–
Kreis.
Im Gegensatz zu Euler–Touren bleiben Hamilton–Kreise natürlich bei Addition von Kanten erhalten, so dass man fragen könnte, ob sie ab einer gewissen
Kantenanzahl erzwungen sind. Offensichtlich reichen dafür aber Informationen
44
Kapitel III. Relationale Strukturen
über die Gesamtanzahl der Kanten nicht aus – da jeder Knoten an der gesuchten
Struktur beteiligt sein soll, brauchen wir auch Aussagen über den Grad eines jeden
Knotens. Das folgende Lemma mag auf den ersten Blick etwas technisch anmuten,
enthält aber genau den Kerngedanken für den Beweis des darauffolgenden Satzes.
Lemma 9.2. Seien x, y zwei Knoten in G = (V, E) mit deg(x) + deg(y) ≥ |V |
und {x, y} 6∈ E. Dann gilt: G hat genau dann einen Hamilton Kreis, wenn G0 :=
(V, E ∪ {x, y}) einen Hamilton Kreis hat.
Beweis. Wenn G einen Hamilton–Kreis hat, dann hat offensichtlich auch G0 einen.
Für die umgekehrte Implikation sei nun C = (V, F ) ein Hamilton–Kreis in
G0 und n := |V |. Wenn {x, y} 6∈ F , dann wäre C auch Subgraph von G, und
damit hätte auch G einen Hamilton–Kreis, also wären wir fertig. Wir können also
o.B.d.A. davon ausgehen, dass {x, y} ∈ F , und bezeichnen die Knoten von G0 mit
x, v1 , v2 , . . . , vn−2 , y in der Reihenfolge, in der sie auf C liegen.
Bild
Die grundlegende Idee unseres Beweises ist die folgende: wenn {y, vi } ∈ E
und {x, vi+1 } ∈ E, dann existiert in G ein Hamilton–Kreis
C 0 = (V, F \ ({x, y} ∪ {vi , vi+1 }) ∪ {y, vi } ∪ {x, vi+1 }
und wir wären wieder fertig.
Wir betrachten also diejenigen Nachbarn von y, die in der Menge {v1 , . . . , vn−3 }
liegen. Das sind deg(y) − 1 viele. Markiere für jeden solchen Nachbarn vi den
Nachfolger vi+1 rot. Damit sind deg(y) − 1 Knoten in der Menge {v2 , . . . , vn−2 }
rot markiert, und wir wären fertig, wenn x zu einem von ihnen verbunden wäre.
Andernfalls bleiben für die Nachbarn von x, die in der Menge {v2 , . . . , vn−2 }
liegen, nur n − 3 − (deg(y) − 1) = n − 2 − deg(y) Plätze frei. Da aber x noch
deg(x) − 1 Nachbarn in genau dieser Menge unterbringen muss, folgt
deg(x) − 1 ≤ n − 2 − deg(y),
was gleichbedeutend mit deg(x) + deg(y) ≤ n − 1 = |V | − 1 ist und damit einen
Widerspruch zur Voraussetzung darstellt.
Aus dem Lemma folgt nun unmittelbar die gewünschte Aussage über Hamilton–
Kreise in Graphen mit genügend hohem Minimalgrad.
Satz 9.3. Sei G = (V, E) ein Graph mit |V | ≥ 3.
a) Wenn für alle Paare x, y mit {x, y} 6∈ E gilt, dass deg(x) + deg(y) ≥ |V |, dann
hat G einen Hamilton Kreis.
b) Wenn für jeden Knoten x gilt, dass deg(x) ≥ |V |/2, dann hat G einen Hamilton–
Kreis.
10. Matchings
45
Beweis. a) Wende Lemma 9.2 wiederholt auf jedes Paar von nicht benachbarten
Knoten an und füge hier eine Kante ein. Am Ende ist der vollständige Graph
erreicht, und der hat natürlich (dank |V | ≥ 3) einen Hamilton–Kreis. Wegen Lemma 9.2 muss also auch G einen Hamilton–Kreis haben.
b) folgt aus a).
Die Aussage b) in Satz 9.3 ist die älteste der hier erwähnten und gehr auf
Dirac (1952) zurück, während Aussage a) von Ore (1960) bewiesen wurde. Chvátal
(1972) zeigte außerdem den folgenden Satz, den wir hier ohne Beweis angeben:
Satz 9.4. Sei G = (V, E) ein Graph und V = [n] mit n ≥ 3. Wir bezeichnen mit di
den Grad von Knoten i für alle i ∈ [n] un nehmen an, dass d1 ≤ · · · ≤ dn . Dann
gilt: Wenn für alle 1 ≤ i < n/2 gilt, dass di ≥ i + 1 oder dn−i ≥ n − i , dann hat
G einen Hamilton–Kreis.
Eine kurze Bemerkung zur Komplexität der hier beiden in diesem kurzen
Abschnitt betrachteten Aufgabenstellungen. Satz 9.1 enthält eine einfache Charakterisiung von Graphen, die eine Euler-Tour enthalten: wir müssen lediglich alle
im Graphen auftretenden Grade überprüfen. Und auch wenn wir nicht nur die Entscheidungsfrage beantworten wollen, sondern im Ja“–Fall die Tour eventuell noch
”
konstruieren wollen, so ist das effizient machbar, in dem wir beispielsweise wie im
Beweis von Satz 9.1 durch Ablaufen der Kanten zunächst eine Kreiszerlegung der
Kantenmenge bestimmen und diese dann zu einer Euler–Tour verkleben.
Anders verhält es sich mit Hamilton–Kreisen. Man kennt im Allgemeinen
eigentlich überhaupt keine Charakterisierung von Graphen, die einen Hamilton–
Kreis enthalten, und insbsondere recht keine, die sich schnell überprüfen ließe.
Es verwundert daher auch nicht, dass das entsprechende Entscheidungsproblem
NP-vollständig ist.
10
Matchings
Definition. Sei G = (V, E) ein Graph. Eine Menge M ⊆ E heißt Matching, falls
für alle e, e0 ∈ M mit e 6= e0 gilt, dass e ∩ e0 = ∅. Ein Knoten v heißt überdeckt
von M , wenn es eine Kante e ∈ M mit v ∈ e gibt. Wenn {x, y} ∈ M , dann heißt
x Matchingpartner von y (und umgekehrt).
Ein Matching M heißt maximales Matching, wenn für alle e ∈ E\M gilt, dass
M ∪ {e} kein Matching ist. M heißt größtes Matching, wenn für alle Matchings
M 0 gilt: |M | ≥ |M 0 |. M heißt perfektes Matching, wenn alle Knoten in V von M
überdeckt sind,, d.h. wenn 2|M | = |V | gilt. Die Matchingzahl ν(G) ist definiert
als die Kardinalität (d.h. die Anzahl der Kanten) eines größten Matchings von G.
Offensichtlich ist ein perfektes Matching auch ein größtes Matching, und ein
größtes Matching auch maximal, aber nicht umgekehrt, wie die folgenden Beispiele
zeigen.
46
Kapitel III. Relationale Strukturen
Bild
·
Satz 10.1. Sei G = (A ∪ B, E) bipartit. Dann besitzt G genau dann ein Matching,
das alle Knoten in A überdeckt, wenn
∀S ⊆ A : |S| ≤ |NG (S)|,
(10.2)
wobei NG (S) := {y ∈ B : ∃x ∈ S mit {x, y} ∈ E}, also die Menge der Nachbarn
von Knoten in S ist.
Beweis. Angenommen, G besitzt ein Matching M , das alle Knoten in A überdeckt.
Sei S ⊆ A eine beliebige Teilmenge. Dann bildet die Menge T der Matchingpartner
der Knoten in S eine Teilmenge von NG (S) und es gilt |S| = |T | ≤ |NG (S)|, wie
in (10.2) behauptet.
Die umgekehrte Implikation beiweisen wir durch Induktion über |A|. Der
Induktionsanfang ist für |A| = 0 oder |A| = 1 klar. Für den Induktionsschritt sei
nun |A| = k. Wir unterscheiden zwei Fälle:
Fall a) :
Es gibt eine Menge T mit ∅ =
6 T ⊆ A und |T | < |A|,
so dass |T | = |NG (T )|.
(10.3)
·
Wir betrachten dann den bipartiten Graphen G0 := G[T ∪ NG (T )]. Auch G0
erfüllt die Bedingung (10.2) (warum?) und es gilt |T | < |A| = k. Somit existiert
nach Induktionsannahme ein Matching M 0 in G0 , das alle Knoten in T überdeckt.
·
Betrachte jetzt den bipartiten Graphen G00 := G[(A \ T ) ∪ (B \ NG (T ))]. Wir
behaupten, dass auch der Graph G00 die Bedingung (10.2) erfüllt. Angenommen,
das wäre nicht der Fall, dann gäbe es eine Menge
S ⊆ A \ T mit |S| > |NG00 (S)|.
(10.4)
Aber dann wäre
|S ∪ T | = |S| + |T |
(10.3),(10.4)
>
|NG00 (S)| + |NG (T )| ≥ |NG (S ∪ T )|,
und damit würde die Menge S ∪ T ⊆ A die Bedingung (10.2) im Graphen G
verletzen.
Wegen |A \ T | < |A| = k existiert somit nach Induktionsannahme ein Matching
M 00 in G00 , das alle Knoten in A \ T überdeckt. Wir können nun beide Matchings
zu einem Matching M := M 0 ∪ M 00 von G kombinieren, das alle Knoten in A
überdeckt.
Fall b) :
Für alle Mengen T mit ∅ =
6 T ⊆ A und |T | < |A| gilt,
dass |T | + 1 ≤ |NG (T )|.
(10.5)
10. Matchings
47
(Man beachte, dass das tatsächlich die Kontraposition von Fall a) ist: alle Mengen
T ⊆ A erfüllen wegen (10.2), dass |NG (T )| ≥ |T |. Wenn also Fall a) nicht eintritt,
dann muss Fall b) eintreten.)
Wir wählen eine beliebige Kante {x, y} ∈ E mit x ∈ A und y ∈ B und betrachten
·
den Graphen G0 := G[(A \ {x}) ∪ (B \ {y})]. Wegen der Bedingung (10.5) erfüllt
G0 immer noch die Bedingung (10.2) (warum?), also existiert nach Induktionsannahme ein Matching M 0 in G0 , das alle Knoten in A \ {x} überdeckt. Wir können
nun wieder ein neues Matching M := M 0 ∪ {{x, y}} von G konstruieren, das alle
Knoten in A überdeckt.
Folgerung. Sei G = (A ∪ B, E) bipartit. Dann gilt: G besitzt genau dann ein
perfektes Matching, wenn |A| = |B| und für jede Menge S ⊆ A gilt: |N (S)| ≥ |S|.
Beweis. Wenn G ein perfektes Matching besitzt, dann sind insbsondere alle Knoten in A überdeckt. Nach Satz 10.1 gilt dann |NG (S)| ≥ |S|. Da auch alle Knoten in
B überdeckt sind, und die Kanten nur zwischen A und B verlaufen, muss |A| = |B|
sein.
Umgekehrt folgt aus der Bedingung |NG (S)| ≥ |S| nach Satz 10.1, dass es
ein Matching M gibt, das alle Knoten in A überdeckt. Da G bipartit ist und
|A| = |B| gilt, sind dann aber auch alle Knoten in B überdeckt, und damit ist M
perfekt.
Satz 10.1 und Korollar 10 sind zwar schöne Charakterisierungen, liefern aber
keine effizienten Verfahren, um festzustellen, ob Graphen ein großes Matching
besitzen. Hierfür ist das Konzept eines augmentierenden Pfades wichtig.
Definition. Sei M ein Matching in G = (V, E). Ein Weg in G heißt M -alternierend,
falls er abwechselnd Kanten aus M und E \ M benutzt. Ein M -alternierender Weg
in G der Länge ≥ 1 heißt M -augmentierend, falls Anfangs- und Endknoten nicht
von M überdeckt sind.
Warum heißen M -augmentierende Wege augmentierend? Ganz einfach: weil
man durch Vertauschen von Matching- und Nicht-Matching-Kanten entlang des
Weges ein neues Matching erhält, das eine Kante mehr enthält – und damit das
alte Matching augmentiert, d.h. erhöht.
Beispiel. In G1 ist M := {{2, 3}, {4, 5}} ein Matching, (6, 3, 2, 5, 4) sowie (1, 3, 2, 4)
sind M -alternierende, jedoch nicht M -augmentierende Wege und P := (6, 3, 2, 1)
ist ein M -augmentierender Weg. Wenn wir M entlang P “augmentieren”, d.h.
{6, 3} und {2, 1} zu M hinzufügen und {2, 3} entfernen, so erhalten wir ein neues
Matching M 0 := {{4, 5}, {6, 3}, {2, 1}}. Es gibt keine M 0 -augmentierenden Wege.
Bild
48
Kapitel III. Relationale Strukturen
Das Augmentieren durch Austausch lässt sich am besten durch die symmetrische Differenz zweier Mengen X und Y formalisieren. Sie ist definiert als
X∆Y := (X \ Y ) ∪ (Y \ X), also die Menge aller Elemente, die in genau einer der
beiden Mengen enthalten ist.
Lemma 10.2. Sei M ein Matching in G = (V, E) und P = (W, F ) ein M augmentierender Weg in G. Dann ist M 0 := M ∆F ein Matching in G mit |M 0 | =
|M | + 1.
Beweis. Wir setzen M1 := F ∩M und M2 := F \M = F \M1 mit |M2 | = |M1 |+1.
Da M ein Matching und P = (W, F ) ein M -augmentierender Weg ist, gilt dass
Kanten aus M , die nicht im Weg liegen, auch keinen seiner Knoten berühren, also
ist M3 := M \ F = {e ∈ M : e ∩ W = ∅}, insbesondere ist daher
·
·
M 0 := M ∆F = (M \ F ) ∪ (F \ M ) = M3 ∪ M2
wieder ein Matching und es gilt |M 0 | = |M3 | + |M2 | = |M3 | + |M1 | + 1 = |M | + 1,
wie gefordert.
Wir können also unser Matching sukzessive vergrößern, indem wir nach augmentierenden Wegen suchen und das jeweilig aktuelle Matching entlang des Weges
augmentieren. Die entscheidende Frage ist nun: Angenommen, es gibt keinen augmentierenden Weg mehr, haben wir dann wirklich immer ein größtes Matching
gefunden? Der folgende Satz garantiert genau dies.
Satz 10.3. Sei G = (V, E) ein Graph und M ein beliebiges Matching in G. Dann
gilt: Es gibt genau dann ein noch größeres Matching als M , wenn es einen M augmentierenden Weg in G gibt.
Beweis. Wenn es einen M -augmentierenden Weg gibt, dann wissen wir nach Proposition 10.2, dass es auch ein größeres Matching gibt. Umgekehrt nehmen wir
an, dass es ein Matching M ∗ mit |M ∗ | > |M | gibt. Betrachte dann den Subgraph
H = (V, M ∆M ∗ ) von G. Da in jedem Knoten aus V höchstens eine Kante aus M
und eine aus M ∗ anliegen kann, besteht H nur aus Kreisen und Wegen. In diesen
Kreisen und Wegen müssen die Kanten abwechselnd aus M und M ∗ kommen, also
müssen die Kreise gerade Länge haben und insbesondere gleich viele Kanten aus
M und aus M ∗ enthalten.
Bild
Da aber |M ∗ | > |M | gilt, muss es mindestens einen Pfad in H geben, der mehr
Kanten aus M ∗ als aus M enthält. Ein solcher Weg ist ein M -augmentierender
Weg in G.
Das zu einem Matching in gewisser Weise duale Konzept ist das einer Knotenüberdeckung, das wir hier zum Abschluss noch kurz studieren werden.
10. Matchings
49
Definition. Sei G = (V, E) ein Graph. Eine Knotenüberdeckung in G ist eine
Menge W ⊆ V , für die gilt, dass jede Kante e ∈ E mindestens einen ihrer beiden
Endpunkte in W liegen hat. Die Knotenüberdeckungszahl ist definiert als
τ (G) := min{` ∈ N : es gibt eine Knotenüberdeckung der Größe ` in G }.
Eine minimale Knotenüberdeckung ist also eine (möglichst kleine) Menge
von Knoten, die alle Kanten überdecken soll. Ein größtes Matching ist eine Menge von Kanten, die möglichst viele Knoten überdecken soll. Die beiden folgenden
Ungleichungen lassen sich schnell einsehen.
Lemma 10.4. Für jeden Graphen G gilt: ν(G) ≤ τ (G) ≤ 2ν(G).
Beweis. Die Ungleichung ν(G) ≤ τ (G) behauptet, dass jede Knotenüberdeckung
mindestens soviele Knoten enthalten muss, wie es Kanten in einem größten Matching gibt. Das ist allerdings klar, denn alle diese Kanten müssen ja von der Knotenüberdeckung überdeckt werden, und da sie sich gegenseitig nicht berühren,
kann das nur funktionieren, wenn man entsprechend viele Knoten bereitstellt.
Um die Ungleichung τ (G) ≤ 2ν(G) einzusehen, betrachten wir ein festes
größtes Matching M und die Menge W derjenigen Knoten von G, die in M enthalten sind. Offensichtlich ist |W | = 2ν(G) und wir behaupten, dass W eine Knotenüberdeckung ist. Das ist allerdings wieder klar, denn gäbe es eine von W noch
nicht überdeckte Kante, dann könnte man sie zu M hinzufügen und hätte ein
größeres Matching konstruiert. Also ist W eine Knotenüberdeckung der Größe
2ν(G) und somit folgt die gewünschte Ungleichung.
Auch wenn diese Ungleichungen trivial sind, so beschreiben sie dennoch ein
interessantes Phänomen: hier wird die Lösung einer Maximierungsaufgabe durch
die Lösung einer Minimierungsaufgabe von oben beschränkt. Wenn man also beispielsweise in einem Graphen ein Matching der Größe m gefunden hat, dann kann
man dadurch, dass man auf eine Knotenüberdeckung der Größe k und die Ungleichung ν(G) ≤ τ (G) verweist, klarstellen, dass es auf jeden Fall kein Matching mit
mehr als k Kanten geben wird.
Der folgende Satz ist in diesem Sinne eine Dualitätsaussage: er besagt, dass
(in bipartiten Graphen) die jeweiligen Optimallösungen übereinstimmen und man
den Nachweis der Optimalität lückenlos führen kann.
·
Satz 10.5. Für jeden bipartiten Graphen G = (A ∪ B, E) gilt: ν(G) = τ (G).
Beweis. Dank der Vorarbeit in Lemma 10.4 genügt es, ν(G) ≥ τ (G) zu zeigen.
Sei M ein größtes Matching von G. Unser Ziel ist es, eine Knotenüberdeckung W
mit |M | ≥ |W | zu konstruieren.
Sei U die Menge der Knoten in A, die nicht von M überdeckt sind. Setze
S := {v ∈ A : es gibt einen M -alternierenden Weg von U nach v},
T := {w ∈ B : es gibt einen M -alternierenden Weg von U nach w}.
50
Kapitel III. Relationale Strukturen
Bild
Offensichtlich gilt aufgrund von Wegen der Länge 0, dass U ⊆ S ist. Außerdem wissen wir bereits, dass die M -alternierenden Wege in den Definitionen
von S und T nicht M -augmentierend sein können (weil M ein größtes Matching
ist und es daher nach Satz 10.3 gar keine M -augmentierenden Wege in G gibt).
Daraus und aus der Tatsache, dass die Anfangsknoten dieser Wege in U liegen,
also von M unüberdeckt sind und die M -alternierenden Wege daher in U mit einer
Nicht-Matching-Kante beginnen, ergeben sich die drei folgenden Aussagen:
die Knoten aus T sind von M überdeckt,
(10.6)
wenn {x, y} ∈ E und x ∈ S, dann muss y ∈ T sein, und
(10.7)
wenn {x, y} ∈ M und y ∈ T , dann muss x ∈ S sein.
(10.8)
Wir betrachten nun die Menge W := (A \ S) ∪ T und behaupten zunächst,
dass W eine Knotenüberdeckung ist. Sei dazu {x, y} eine beliebige Kante aus E
mit x ∈ A und y ∈ B. Wenn x ∈ A \ S, dann ist {x, y} nach Definition von W
bereits von W überdeckt. Wenn x ∈ S, dann ist nach (10.7) y ∈ T und damit
{x, y} wieder von W überdeckt.
Nun wollen wir noch die Kardinalität von W abschätzen. Dazu beobachten
wir einerseits, dass wegen U ⊆ S alle Knoten in A \ S von M überdeckt sind, und
daher wegen (10.6) alle Knoten in W von M überdeckt sind. Andererseits kann
wegen (10.8) keine Kante aus M zwei Knoten aus W enthalten, und deswegen
muss es mindestens soviele Kanten in M wie Knoten in W geben, also folgt |M | ≥
|W |.
11
Färbungen planarer Graphen
In diesem Abschnitt greifen wir das zu Beginn des Buches erwähnte Vier–Farben–
Problem wieder auf. Die folgende Definition ist auf Grund ihrer umgangssprachlichen Formulierung eigentlich (für eine Definition) nicht präzise genug, soll aber
aber unseren Bedürfnissen hier genügen.
Definition (planarer Graph). Ein Graph G = (V, E) heißt planar, wenn man seine Knoten und Kanten so in die Ebene zeichnen kann“, dass sich Kanten nicht
”
schneiden und nur in gemeinsamen Endknoten berühren“. Ist eine solche Zeich”
nung gegeben, dann spricht man von einer Einbettung von G. Die durch sie entstehenden Zusammenhangskomponenten der Ebene bilden die Menge R der Gebiete
und wir nennen G = (V, E, R) einen ebenen Graphen.
Die Zahl der Knoten, die Zahl der Kanten und die Zahl der Gebiete in einem
ebenen Graphen stehen in einem frappierend einfachen Verhältnis zueinander.
11. Färbungen planarer Graphen
51
Bild
Abbildung 11.1: G1 ist ein ebener Graph mit den inneren“ Gebieten 1, 2, 3 und
”
dem äußeren“ Gebiet 4. Der Graph G2 ist isomorph zu G1 und daher planar,
”
auch wenn er hier nicht mit einer Einbettung in die Ebene gegeben ist. G3 ist
nicht planar, wie wir noch sehen werden.
Satz 11.1 (Polyederformel von Euler, 1750). Sei G = (V, E, R) ein ebener, zusammenhängender Graph. Dann gilt:
|V | − |E| + |R| = 2.
Beweis. durch vollständige Induktion über |E|.
Induktionsanfang: |E| = 0. Dann muss |V | = 1 sein (sonst ist G nicht zusammenhängend) und damit |R| = 1 und die Formel |V | − |E| + |R| = 2 stimmt
offensichtlich.
Für den Induktionsschritt sei G+ = (V + , E + , R+ ) ein ebener, zusammenhängender Graph mit |E + | ≥ 1. Wir unterscheiden zwei Fälle.
Fall 1: G+ habe keinen Kreis. Da G+ zusammenhängend ist, ist G+ ein Baum.
Also gilt, dass |E + | = |V + | − 1 und |R+ | = 1, und somit folgt wie gewünscht
|V + | − |E + | + |R+ | = |V + | − (|V + | − 1) + 1 = 2.
Fall 2: G+ habe einen Kreis. Sei e eine Kante des Kreises. Wir löschen nun
die Kante e (nicht aber die beiden zugehörigen Knoten) und erhalten dadurch
einen neuen, ebenen, zusammenhängenden Graphen G = (V, E, R) mit
|V | = |V + |,
|E| = |E + | − 1,
|R| = |R+ | − 1.
(11.9)
Wegen |E| < |E + | können wir aus der Induktionsannahme folgern, dass |V | −
|E| + |R| = 2. Durch Einsetzen der Resultate aus (11.11) erhalten wir wieder die
gewünschte Gleichung.
Folgerung. Sei G = (V, E, R) ein ebener, zusammenhängender Graph mit |V | ≥ 4.
Dann gilt:
a) |E| ≤ 3|V | − 6.
b) G hat mindestens einen Knoten vom Grad kleiner gleich 5.
Beweis. a) Jedes Gebiet braucht mindestens drei berandende Kanten, jede Kante
berandet höchstens zwei Gebiete. Daraus folgt, dass 3|R| ≤ 2|E|. Dies impliziert,
dass
2
(11.1)
|E| ≥ |R| = 2 − |V | + |E|,
3
52
Kapitel III. Relationale Strukturen
also |V | − 2 ≥ 13 |E|, was zu zeigen war.
b) Beweis durch Widerspruch: angenommen, alle Knoten v ∈ V würden
deg(v) ≥ 6 erfüllen. Dann wäre
7.1a)
2|E| =
X
deg(v) ≥ 6|V |,
v∈V
also |E| ≥ 3|V | was aber im Widerspruch zur Aussage a) steht.
Wie man leicht nachrechnet
folgt aus der Abschätzung in a) unmittelbar,
dass der Graph G3 := ([5], 52 ) in Abbildung 11.1 nicht planar ist.
Nun wenden wir uns der Färbungsproblematik zu.
Definition (Graphenfärbung). Sei k ∈ N. Ein Graph G = (V, E) heißt k-färbbar,
wenn es eine sogenannten k-Färbung von G gibt, nämlich eine Abbildung f : V →
[k] mit der Eigenschaft, dass benachbarte Knoten nicht die gleiche Farbe erhalten:
∀{x, y} ∈ E :
f (x) 6= f (y)}.
Die chromatische Zahl (oder Färbungszahl) von G ist definiert als
χ(G) := min{k ∈ N : G ist k-färbbar }.
Bemerkung. a) Der Graph in Abbildung 11.2 hat chromatische Zahl 3.
Bild
Abbildung 11.2: Eine 3-Färbung ist angegeben. Der Graph kann wegen der existierenden Dreiecke (bei denen jeder Knoten seine eigene“ Farbe braucht) nicht
”
mit weniger als drei Farben gefärbt werden.
b) Die 4-Farben-Vermutung ist äquivalent zu der Aussage: jeder planare
Graph ist 4-färbbar. Das macht man sich am leichtesten dadurch klar, dass man
in jedes Land einen Knoten, sozusagen als Hauptstadt, hinein malt, und dann die
Hauptstädte benachbarter Länder durch eine Kante verbindet.
Satz. Jeder planare Graph ist 5-färbbar.
Beweis. Wir können ohne Beschränkung der Allgemeinheit (o.B.d.A.) annehmen,
dass G zusammenhängend ist - andernfalls wenden wir die Behauptung auf die
einzelnen Zusammenhangskomponente an. Der Beweis wird durch vollständige
Induktion über |V | geführt.
Der Induktionsanfang ist klar für alle Graphen mit k := |V | ≤ 5, da diese
offensichtlich 5-färbbar sind. Sei also die Behauptung für alle planaren Graphen
12. Partielle Ordnungen
53
mit k Knoten bewiesen und sei G ein beliebiger planarer Graph mit k + 1 Knoten.
Nach Korollar 11b) existiert ein Knoten v mit deg(v) ≤ 5. Entferne v und alle
Kanten, die v enthalten und erhalte so den neuen Graphen G0 . Da G0 nur k
Knoten hat liefert die Induktionsannahme, dass G0 eine 5-Färbung f besitzt.
Falls in der Nachbarschaft von v durch f nicht alle Farben 1, 2, . . . , 5 vergeben
werden, sind wir fertig, denn dann färben wir v mit einer nicht verwendeten Farbe.
Also können wir uns auf den Fall beschränken, bei dem v fünf Nachbarn hat, die
wir zu einer gegebenen Einbettung im Uhrzeigersinn mit v1 , . . . , v5 bezeichnen und
die durch f jeweils mit den Farben 1, . . . , 5 gefärbt seien.
Sei G13 die Menge aller Knoten in G0 , die von f Farbe 1 oder 3 erhalten
haben und die mit v1 durch einen Pfad verbunden sind, der nur aus Knoten der
Farbe 1 oder 3 besteht. Innerhalb dieser Menge könnten wir die Farben 1 und 3
gegeneinander austauschen und behielten dabei trotzdem eine legale 5-Färbung.
Falls nur v1 und nicht auch v3 in G13 liegt, führen wir diesen Farbtausch durch
– jetzt ist v1 mit Farbe 3 gefärbt, alle anderen Nachbarn von v wie bisher, und
damit ist die Farbe 1 für den Knoten v frei geworden.
Also betrachten wir abschließend den Fall, bei dem sowohl v1 wie auch v3 in
G13 liegen. Hier schließt sich also ein Kreis C, der aus v sowie Knoten aus G13
besteht. Wenn wir jetzt in Analogie zu G13 die Menge G24 definieren, die aus allen
Knoten in G0 , die von f Farbe 2 oder 4 erhalten haben und die mit v2 durch einen
Pfad verbunden sind, der nur aus Knoten der Farbe 2 oder 4 besteht, dann sehen
wir, dass wegen der Planarität und des Kreises C nicht zusätzlich zu v2 auch v4 in
G24 liegen kann. Wir können also den Farbtausch innerhalb von G24 durchführen
und somit wird die Farbe 2 für den Knoten v frei.
12
Partielle Ordnungen
Wir haben bereits in Abschnitt 3 Relationen definiert und wichtige Eigenschaften
von ihnen beschrieben (siehe Definitionen 3 und ??). Zur Erinnerung: sei M eine
Menge und sei R ⊆ M × M eine binäre Relation. Wenn R irreflexiv und symmetrisch ist, dann ist R ein Graph. Wenn R reflexiv, symmetrisch und transitiv,
dann ist R eine Äquivalenzrelation. Und wenn R reflexiv, antisymmetrisch und
transitiv ist, dann nennen wir R eine partielle Ordnung. (Auf englisch spricht man
von partially ordered sets, oder auch kurz posets).
Beispiel. Sei M := N und (a, b) ∈ R genau dann, wenn a Teiler von b ist. Dann
ist R eine partielle Ordnung.
Für partielle Ordnungen hat sich die folgende Notation etabliert (neben den
in Abschnitt 3 bereits erwähnten Symbolen (a, b) ∈ R oder aRb oder a ∼R b),
nämlich a b, und wir schreiben dann R = (M, ).
Beispiel. Sei X eine Menge.Für A, B ⊆ X definieren wir die Relation A B
genau dann, wenn A ⊆ B. Dann ist (P(X), ) eine partielle Ordnung.
54
Kapitel III. Relationale Strukturen
Definition. Sei R = (M, ) eine partielle Ordnung.
a) Zwei Elemente a, b ∈ M heißen vergleichbar, wenn a b oder b a.
b) Wenn a und b nicht vergleichbar sind, heißen sie unvergleichbar.
c) R heißt vollständig oder linear, wenn alle a, b ∈ M vergleichbar sind.
d) R0 = (M, 0 ) heißt lineare Erweiterung von R = (M, ), wenn R ⊆ R0 und R0
linear ist.
e) Das Element a wird von b überdeckt, wenn a b und es kein c ∈ M mit c 6= a, b
gibt, so dass a c und c b.
f) Das Hasse-Diagramm von R ist ein Diagramm des Graphen
M, {{a, b} : a wird von b überdeckt } ,
bei dem für jedes Paar a b der Knoten a unterhalb des Knoten b gezeichnet
wird.
g) Eine Kette in R ist eine Menge K ⊆ M mit der Eigenschaft, dass alle a, b ∈ K
vergleichbar sind. Eine Antikette in R ist eine Menge L ⊆ M mit der Eigenschaft,
dass alle a, b ∈ L mit a 6= b unvergleichbar sind.
h) Ein Element a ∈ M heißt größtes Element, wenn es kein b ∈ M mit b 6= a und
a b gibt. Ein Element a ∈ M heißt kleinstes Element, wenn es kein b ∈ M mit
b 6= a und b a gibt.
Beispiel. Wir greifen die Beispiele 12 und 12 wieder auf.
a) Sei M = {2, 3, 4, 5, 6, 24, 25, 75} und a b genau dann, wenn a Teiler von b ist.
Dann sieht das Hasse-Diagramm von (M, ) wie folgt aus:
24
4
75
6
25
2
3
5
b) Sei M = P({1, 2, 3}) und A B genau dann, wenn A ⊆ B. Dann sieht das
Hasse-Diagramm von (P({1, 2, 3}), ) wie folgt aus:
{1, 2, 3}
{1, 2} {1, 3} {2, 3}
{1}
{2}
{3}
∅
Satz. Es sei M eine endliche, nicht-leere Menge und R = (M, ) eine partielle
Ordnung. Dann gilt:
12. Partielle Ordnungen
55
a) Die maximale Anzahl von Elementen in einer Antikette von R ist gleich der
minimalen Anzahl von Ketten aus R, mit denen man M partitionieren kann.
b) Die minimale Anzahl von Antiketten aus R, mit denen man M partitionieren
kann, ist gleich der maximalen Anzahl von Elementen in einer Kette von R.
Beweis. Aussage b) ist leichter zu beweisen, was angesichts der scheinbaren Symmetrie in den Aussagen vielleicht überrascht.
Zu b). Sei ` die minimale Anzahl von Antiketten aus R, mit denen man M
partitionieren kann, sei k die maximale Anzahl von Elementen in einer Kette von
R, und sei K eine Kette mit k Elementen.
Es ist klar, dass ` ≥ k ist, denn jede Antikette kann ja höchstens ein Element
von K enthalten. Wir müssen also nur ` ≤ k zeigen, d.h. eine Partition von M in
höchstens k Antiketten konstruieren. Setze dazu für i ∈ N
Ai := {x ∈ M : die längste Kette mit x als größtem Element hat genau i Elemente}.
Da die längste Kette in R genau k Elemente besitzt, muss Ai = ∅ für i > k
·
·
sein, und somit folgt M = A1 ∪ . . . ∪ Ak . Es bleibt zu zeigen, dass die Mengen
Ai für alle i ∈ [k] auch Antiketten sind. Angenommen, das wäre nicht der Fall,
dann gäbe es ein i ∈ [k] und x, y ∈ Ai mit x y. Da x ∈ Ai existiert eine
Kette x1 . . . xi−1 x, diese könnte jetzt verlängert werden zu einer Kette
x1 . . . xi−1 x y, und somit könnte y nicht in Ai sein. Damit ist b)
bewiesen.
Zu a). Sei ` die maximale Anzahl von Elementen in einer Antikette von R,
sei L eine Antikette mit ` Elementen, und sei k die minimale Anzahl von Ketten
aus R, mit denen man M partitionieren kann.
Es ist klar, dass ` ≤ k ist, denn jede Kette kann ja höchstens ein Element
von L enthalten. Wir zeigen mit vollständiger Induktion über |M |, dass ` ≥ k ist.
Für den Induktionsanfang |M | = 1 gilt ` ≥ k offensichtlich.
Sei nun |M | ≥ 2. Wähle ein größtes Element a in R (a existiert, da M
endlich ist), und sei R0 die partielle Ordnung, die man aus R erhält, wenn man a
entfernt. Sei `0 ≤ ` die maximale Anzahl von Elementen in einer Antikette von R0 .
Nach Induktionsannahme existiert in R0 eine Partition von M \ {a} in höchstens
`0 Ketten K1 , . . . , K`0 . Unser Ziel ist es, daraus nun eine Partition von M in `
Ketten zu generieren.
Eine Antikette in R0 mit `0 Elementen nennen wir eine gute Antikette. Jede
gute Antikette muss aus jeder der Ki für i ∈ [`0 ] genau ein Element enthalten. Die
entscheidende Definition ist diese: es sei ai das größte Element aus Ki , das zu einer
guten Antikette gehört. (Da L eine gute Antikette ist, sind die ai wohldefiniert.)
Wir zeigen zunächst, dass A := {a1 , . . . , a`0 } eine Antikette ist. Denn angenommen ai aj , dann betrachte man eine gute Antikette Lj , die aj enthält (eine
solche muss es ja nach Definition von aj geben). Lj muss, wie jede gute Antikette,
auch ein Element ã von Ki enthalten. Da Ki eine Kette ist, die ai enthält, sind ã
und ai vergleichbar. Wenn ã ai , dann wäre wegen ai aj und der Transitivität
auch ã aj , und damit wäre Lj keine Antikette mehr. Wenn aber ai ã und
56
Kapitel III. Relationale Strukturen
ai 6= ã, dann wäre ã größer als ai und trotzdem in einer guten Antikette enthalten,
im Widerspruch zur Definition von ai . Also ist A tatsächlich eine Antikette, und
wir unterscheiden nun zwei Fälle, je nachdem ob auch A ∪ {a} noch eine Antikette
ist.
Fall 1: A ∪ {a} ist eine Antikette in R.
Da |A ∪ {a}| ≥ `0 + 1 ist, gibt es also eine Antikette mit `0 + 1 Elementen in R,
daher muss ` ≥ `0 + 1 sein. In diesem Fall reicht also die Partition von M in die
`0 + 1 Ketten K1 , . . . , K`0 , {a} aus.
Fall 2: A ∪ {a} ist keine Antikette in R.
Dann gibt es ein ai mit i ∈ [`0 ], so dass ai und a vergleichbar sind, und da a als
größtes Element in R gewählt war, gilt ai a. Somit ist
K := {a} ∪ {x ∈ Ki : x ai }
eine Kette. Wir erinnern uns daran, dass in R0 jede Antikette der Kardinalität `0
ein Element aus Ki enthalten muss, und dass ai das größte Element aus Ki war,
welches in einer solchen Antikette enthalten ist. Somit muss in R jede Antikette
mit `0 Elementen ein Element aus K enthalten.
Daraus folgt wiederum, dass wenn wir nun mit R00 die partielle Ordnung bezeichnen, die man aus R erhält, wenn man die Elemente von K entfernt, dann kann R00
keine Antikette mit `0 Elementen enthalten. Also enthält die längste Antikette in
R00 höchstens `0 − 1 Elemente, und nach Induktionsannahme existiert daher eine
Partition von M \ K in höchstens `0 − 1 Ketten. Zusammen mit der Kette K liefert
das eine Partition von M in höchstens `0 ≤ ` Ketten.
Definition. Sei R = (M, ) eine partielle Ordnung und seien x, y ∈ M .
a) Ein Element a ∈ M heißt obere Schranke für x und y, wenn x a und
y a. Wenn zusätzlich gilt, dass für jede andere obere Schranke b gilt, dass a b,
dann heißt a kleinste obere Schranke, und wir schreiben a = x ∨ y.
b) Ein Element a ∈ M heißt untere Schranke für x und y, wenn a x und
a y. Wenn zusätzlich gilt, dass für jede andere untere Schranke b gilt, dass b a,
dann heißt a größte untere Schranke, und wir schreiben a = x ∧ y.
c) R heißt Verband, wenn es zu je zwei Elementen x, y ∈ M eine kleinste
untere und eine größte obere Schranke gibt.
Die partielle Ordnung R = (P(X), ⊆), die wir schon in Beispiel 12 kennengelernt haben, ist ein Verband: für zwei Elemente A, B ∈ P(X) ist A ∨ B = A ∪ B
und A ∧ B = A ∩ B. Man nennt diese partielle Ordnung auch Mengenverband.
Für diese partielle Ordnung sind natürlich speziellere Aussagen als für allgemeine Ordnungen möglich.
Satz (Sperner, 1928). Sei X eine Menge mit |X| = n und R = (P(X), ⊆), und sei
A eine Antikette in R. Dann ist
n
.
|A| ≤
b n2 c
12. Partielle Ordnungen
57
Es gilt darüberhinaus der etwas allgemeinere Satz
Satz (LYM–Ungleichung, 1954). Sei X eine Menge mit |X| = n und R = (P(X), ⊆
), und sei A eine Antikette in R. Dann ist
X n −1
≤1
|B|
B∈A
Offensichtlich folgt Satz 12 tatsächlich sofort aus Satz 12, denn
−1
X n −1
n
≤
≤ 1.
|A| n
|B|
b2c
B∈A
to do: Beweis von LYM
Übungsaufgaben
58
Kapitel III. Relationale Strukturen
12. Partielle Ordnungen
59
Literaturhinweise zu Kapitel ??
Weiteres Material zu Abschnitt ?? findet sich beispielsweise bei [MN] in Kapitel
4.1 und 4.2 und bei [S] in Kapitel 2.1 und 2.2. Zusätzliche Informationen zu Abschnitt ?? finden sich bei [A] in Kapitel 8.1 und 8.2 und bei [S] in Kapitel 2.4.4.
Zu Abschnitt ?? siehe auch [S], Kapitel 2.4.1; und zu Abschnitt 12 bei [MN] in
Kapiteln 2 und 7.2 sowie bei [S] in Kapitel 1.4.
Zusätzliche Informationen zu Abschnitt ?? (Planare?) finden sich bei [MN]
in Kapitel 6 und bei [S] in Kapitel 2.4.2 und 2.4.3.
60
Kapitel III. Relationale Strukturen
Kapitel IV
Konstruierte Regularität
In diesem Kapitel wollen wir diskrete Objekte studieren, die sehr regelmäßig sind
– und die absichtlich so kontruiert sind. Ihre Regelmäßigkeit hat dabei nicht nur
ästethischen, sondern in einigen Fällen auch praktischen Nutzen.
13
Endliche projektive Ebenen
Wenn man Punkte und Geraden im R2 betrachtet, dann fällt auf, dass zwei (nichtparallele) Geraden genau einen gemeinsamen Punkt haben, und dass durch zwei
Punkte genau eine Gerade führt. Diese beiden Eigenschaften bilden den Ausgangspunkt für unsere folgenden Überlegungen.
Definition (Endliche projektive Ebene). Eine endliche projektive Ebene besteht
aus einer endlichen Menge X, der sogenannten Punktmenge, und einer Familie L
von Teilmengen von X, den sogenannten Geraden. Das Paar (X, L) muss dabei
die folgenden drei Eigenschaften (Axiome) erfüllen:
A1) Für je zwei verschiedene Geraden L1 , L2 ∈ L existiert genau ein Punkt
x(L1 , L2 ) ∈ X mit x(L1 , L2 ) ∈ L1 ∩ L2 .
A2) Für je zwei verschiedene Punkte x1 , x2 ∈ X existiert genau eine Gerade
L(x1 , x2 ) ∈ L mit {x1 , x2 } ⊂ L(x1 , x2 ).
A3) Es gibt eine 4-elementige Menge F ⊂ X, so dass |L ∩ F | ≤ 2 für jede Gerade
L ∈ L.
Die Eigenschaften A1) und A2) sagen aus, dass eine endliche projektive Ebene eine sehr regelmäßige Struktur ist. Die Aussage A3) fordert in gewisserweise
die Existenz eines Vierecks“; sie dient eigentlich nur dazu, besonders einfache,
”
degenerierte Konstruktionen auszuschließen, wie die in Abbildung ??.
Bild
62
Kapitel IV. Konstruierte Regularität
Ein Beispiel einer endlichen projektiven Ebene ist die sogenannte FanoEbene. Sie ist gegeben durch
X := [7],
L := {{1, 2, 3}, {3, 4, 5}, {1, 5, 6}, {1, 4, 7}, {2, 5, 7}, {3, 6, 7}, {2, 4, 6}} ,
was man sich beispielsweise in der folgenden Abbildung veranschaulicht:
5
6
1
7
2
4
3
Eigenschaften
Wir zeigen zunächst, dass die wenigen Axiome einer projektiven Ebene bereits
weitere, starke Eigenschaften implizieren.
Lemma 13.1. Es sei (X, L) eine endliche projektive Ebene. Dann gelten:
a) Zu jedem Punkt x ∈ X gibt es eine Gerade L ∈ L mit x 6∈ L.
b) Zu je zwei Geraden L1 , L2 ∈ L gibt es einen Punkt x ∈ X mit x 6∈ L ∪ L0 .
Ferner existiert eine natürliche Zahl `, sodass
c) alle Geraden genau ` + 1 Punkte enthalten,
d) jeder Punkt in genau ` + 1 Geraden enthalten ist, und
e) |X| = `2 + ` + 1 und |L| = `2 + ` + 1.
Die Zahl ` nennt man auch die Ordnung von (X, L).
Beweis. Um die Aussagen des Lemmas zu beweisen, konstruieren wir einen bipartiten Hilfsgraphen A = (X ∪ L, E), indem ein Paar (x, L) mit x ∈ X und L ∈ L
genau dann eine Kante in E bilden, wenn x ∈ L. Dieser Hilfsgraph wird auch
Inzidenzgraph von (X, L) genannt. Übersetzt lauten die Aussagen A1) bis A3)
nun:
A1) je zwei Knoten aus L haben genau einen gemeinsamen Nachbarn in X,
A2) je zwei Knoten aus X haben genau einen gemeinsamen Nachbarn in L,
A3) es gibt eine Menge F ⊂ X von vier Knoten, so dass alle Knoten in L maximal
zwei Nachbarn in F haben.
Zu a). Es sei F = {a, b, c, d} ⊂ X die gemäß A3) existierende Teilmenge von
X. Betrachte drei von x verschiedene Punkte aus F , ohne Einschränkung seien
13. Endliche projektive Ebenen
63
dies a, b, c. Die Geraden L(a, b) und L(b, c) müssen verschieden sein, weil sonst eine
Gerade mehr als zwei Nachbarn in F hätte, im Widerspruch zu A3). Nun kann
der Punkt x aber nicht zu den beiden Geraden L(a, b) und L(b, c) benachbart
sein, denn andernfalls hätten diese Geraden x und b als gemeinsame Nachbarn, im
Widerspruch zu A1). Somit ist eine Gerade gefunden, zu der x nicht benachbart
ist.
Zu b). Es sei wieder F = {a, b, c, d} ⊂ X die gemäß A3) existierende Teilmenge. Da aufgrund von A3) die Geraden L1 und L2 jeweils nur höchstens zwei
Nachbarn in F haben, existiert entweder ein Punkt x in F , der weder zu L1 noch zu
L2 benachbart ist (womit wir fertig wären), oder wir können ohne Einschränkung
annehmen, dass L1 zu a und b sowie L2 zu c und d benachbart sind. Mit anderen
Worten: L(a, b) = L1 und L(c, d) = L2 .
Betrachte nun die Geraden L(a, c) und L(b, d). Wiederum wegen A3) haben sie außer a, c bzw. b, d keine weiteren Nachbarn in F , sind somit paarweise
verschieden und auch verschieden von L1 und L2 . Gemäß A1) existiert also ein
Punkt x = x(L(a, c), L(b, d)). Wir behaupten, dass x weder zu L1 noch zu L2
benachbart ist. Zunächst ist klar, dass x nicht in F liegen kann, weil sonst L(a, c)
oder L(b, d) ja noch einen dritten Nachbarn in F hätte. Wäre x zu L1 = L(a, b)
benachbart, dann hätten L1 = L(a, b) und L(a, c) ja sowohl a wie auch x als
gemeinsame Nachbarn, Widerspruch. Wäre x zu L2 = L(c, d) benachbart, dann
hätten L2 = L(c, d) und L(b, d) ja sowohl d wie auch x als gemeinsame Nachbarn,
ebenfalls Widerspruch.
Zu c). Wir beweisen zunächst, dass zwei nicht benachbarte Knoten aus X
und L im Hilfsgraphen A den gleichen Grad haben:
x ∈ X und L ∈ L und (x, L) 6∈ E
⇒
|N (x)| = |N (L)|.
(13.1)
Beweis: Es sei s = |N (L)| und t = |N (x)| und N (L) = {x1 , . . . , xs } die Nachbarschaft von L. Zu jedem i ∈ [s] existiert nach A2) genau ein gemeinsamer Nachbar
von xi und x, nennen wir ihn Li . Da x und L nicht benachbart sind, gilt xi 6= x
und Li 6= L. Ferner sind die Li paarweise verschieden, denn wäre Li = Lj für
i 6= j, dann hätten xi und xj die gemeinsamen Nachbarn L und Li = Lj , im
Widerspruch zu A2). Da die Li insbesondere Nachbarn von x sind, folgt, dass
s ≤ t. Das Argument lässt sich nun umdrehen und man erhält s = t und damit
den Beweis von (13.1).
Mit dieser Hilfsaussage beweisen wir nun, dass alle Geraden in L gleichen
Grad haben, was äquivalent zu Ausssage c) ist. Es seien L1 , L2 ∈ L. Nach b) gibt
es einen Punkt x ∈ X, der weder zu L1 noch zu L2 benachbart ist. Daraus folgt:
(13.1)
(13.1)
|N (L1 )| = |N (x)| = |N (L2 )|.
Zu d). Es sei x ∈ X beliebig. Nach a) existiert ein L ∈ L, das in A nicht zu
x benachbart ist. Damit folgt
(13.1)
c)
|N (x)| = |N (L)| = ` + 1.
64
Kapitel IV. Konstruierte Regularität
Zu e). In den Aussagen c) und d) haben wir gezeigt, dass alle Knoten in A
genau Grad ` + 1 haben. Somit folgt, dass |X|(` + 1) = |E| = |L|(` + 1), also
|X| = |L|.
Wir zählen nun noch geordnete Tripel der Form (x, L, y) mit x 6= y ∈ X,
L ∈ L, und (x, L), (y, L) ∈ E. Einerseits gibt es davon genauso viele wie geordnete
Paare (x, y) mit x 6= y ∈ X, also |X|(|X| − 1), da jedes solche Paar genau einen
gemeinsamen Nachbarn L ∈ L hat. Andererseits können wir zu jedem L ∈ L
ein geordnetes Paar aus N (L) wählen, um ein solches Tripel zu erzeugen. Wegen
|N (L)| = ` + 1 gibt es dafür genau |L|(` + 1)` Möglichkeiten. Wir erhalten also
|X|(|X| − 1) = |L|(` + 1)`.
Mit Hilfe von |X| = |L| ergibt sich daraus |X| − 1 = `2 + `, was zu beweisen
war.
Dank dieser Erkenntnisse können wir jede endliche projektive Ebene gut in
Form einer Matrix abspeichern.
Definition. Sei (X, L) eine endliche projektive Ebene der Ordnung `. Wir setzen
n := `2 + ` + 1 und benennen X = {x1 , . . . , xn } und L = {L1 , . . . , Ln }. Die n × n
Inzidenzmatrix M = (mi,j ) ist definiert durch
(
1 xi ∈ Lj ,
mi,j :=
0 xi 6∈ Lj .
Offensichtlich gilt auf Grund der bereits zusammengetragenen Definitionen
und Eigenschaften, dass jede Zeile und jede Spalte einer Inzidenzmatrix genau
` + 1 Einsen enthält. Weiterhin gilt:
Lemma 13.2. Sei (X, L) eine endliche projektive Ebene der Ordnung ` und M die
zugehörige Inzidenzmatrix. Dann gilt:
1
det(M ) = (` + 1)` 2 (`
2
+`)
Beweis. Seien vi , vj die zu den Punkten xi 6= xj ∈ X zugehörigen Zeilenvektoren
der Matrix M . Offensichtlich gilt, dass hvi , vi i = ` + 1. Da es außerdem genau
eine Gerade L gibt, die xi und xj enthält, haben wir hvi , vj i = 1. Also enthält die
Matrix M M T die Einträge `+1 auf der Diagonale und sonst überall den Eintrag 1.
Die Eigenwerte dieser Matrix lauten ` (mit Multiplizität `2 + `, betrachte dazu die
Eigenvektoren (0, . . . , 0, 1, −1, 0, . . . , 0)) und (` + 1)2 (mit Eigenvektor (1, . . . , 1)),
und somit ergibt sich
(` + 1)2 `(`
was zu zeigen war.
2
+`)
= det(M M T ) = det(M ) det(M T ) = (det(M ))2 ,
13. Endliche projektive Ebenen
65
Existenz
Wir wenden uns nun der Frage zu, ob endliche projektive Ebenen beliebiger Ordnung existieren. Mit der Fano-Ebene haben wir bereits ein Beispiel für eine Ebene
der Ordnung 2 kennengelernt (und, wie man zeigen kann, das einzige). Bevor wir
uns mit Ebenen höherer Ordnung beschäftigen, wiederholen wir zunächst einige
Begriffe und Resultate aus der (linearen) Algebra.
Satz (Endliche Körper). Es sei q eine natürliche Zahl.
a) Die Menge Zq := {0, . . . , q − 1} zusammen mit der Addition modulo q und der
Multiplikation modulo q bilden genau dann einen Körper, wenn q eine Primzahl
ist.
b) Es gibt genau dann einen Körper mit q Elementen, wenn q eine Primzahlpotenz
ist, also q = pk mit p Primzahl und k ∈ N. Dieser Körper ist dann (bis auf
Isomorphie) eindeutig und wird mit Fq bezeichnet.
Man beachte: Wenn q = pk mit k > 1 ist, dann braucht man für die KörperKonstruktion von Fq eine etwas kompliziertere Körper-Konstruktion (als die von
Zq mit Addition und Multiplikation modulo q). So ist F4 beispielsweise gegeben
durch die Verknüpfungstabellen
+
0
1
2
3
0
0
1
2
3
1
1
0
3
2
2
2
3
0
1
3
3
2
1
0
·
0
1
2
3
0
0
0
0
0
1
0
1
2
3
2
0
2
3
1
3
0
3
1
2.
Zu einem beliebigen (endlichen oder unendlichen) Körper K können wir einen
n-dimensionalen Vektorraum K n über K konstruieren, dessen Vektoren aus den
n-Tupeln mit Komponenten aus K bestehen. Die Addition zweier Vektoren und
die Multiplikation eines Körperelements mit einem Vektor ist hier wie üblich komponentenweise definiert. Wenn S eine Menge von Vektoren ist, dann bezeichnen
wir mit lin(S) die Menge aller Linearkombinationen von Vektoren aus S.
Wir können nun mit Hilfe von endlichen Körpern die Existenz von endlichen
projektiven Ebenen nachweisen.
Satz 13.3 (Existenz endlicher projektiver Ebene). Wenn q = pk eine Primzahlpotenz ist, dann gibt es eine endliche projektive Ebene der Ordnung q.
Beweis. Sei K = Fq und betrachte den 3-dimensionalen Vektorraum K 3 . Die
Menge X bestehe aus allen 1-dimensionalen Unterräumen, die Menge L aus allen
2-dimensionalen Unterräumen des K 3 , und ein x ∈ X sei in L ∈ L enthalten, wenn
x Unterraum von L ist.
Ein Beispiel: für Sei K = F2 . Betrachte die zwei Punkte x1 := lin((1, 0, 0))
und x2 := lin((0, 1, 0)). Dann ist L := lin((1, 0, 0), (0, 1, 0)) die einzige Gerade, die
x1 und x2 enthält.
66
Kapitel IV. Konstruierte Regularität
Wir überprüfen kurz, ob damit die Eigenschaften A1) bis A3) aus der Definition einer endlichen projektiven Ebene erfüllt sind. Dazu seien L1 und L2 zwei
2-dimensionale Unterräume des K 3 . Wegen
dim(L1 ∩ L2 ) = dim(L1 ) + dim(L2 ) − dim(lin(L1 ∪ L2 )) = 2 + 2 − 3 = 1
muss L1 ∩ L2 aus einem einzigen Punkt bestehen und damit ist Eigenschaft A1)
erfüllt. Desweiteren sind zwei 1-dimensionale Unterräume immer in genau einem 2dimensionalen Unterraum enthalten (Eigenschaft A2)). Die Eigenschaft A3) lässt
sich schließlich durch die Menge F der vier verschiedenen 1-dimensionalen Unterräume einsehen, die durch die Vektoren (1, 0, 0), (0, 1, 0), (0, 0, 1) und (1, 1, 1)
erzeugt werden.
Um nun die Ordnung dieser projektiven Ebene zu bestimmen, überlegen wir
uns, wieviele Punkte X enthält. Der Vektorraum K 3 enhält insgesamt q 3 − 1 von
(0, 0, 0) verschiendene Vektoren Ein beliebiger 1-dimensionaler Unterraum von K 3
ist von der Form
{αv : α ∈ K}
mit einem Vektor v ∈ K 3 \ {(0, 0, 0)} und enthält daher genau q − 1 Vektoren
6= (0, 0, 0). Je zwei 1-dimensionale Unterräume überschneiden sich in genau dem
Vektor (0, 0, 0). Es gibt daher (q 3 − 1)/(q − 1) = q 2 + q + 1 Unterräume der
Dimension 1, und das impliziert, dass die Ebene Ordnung q hat.
Die obige projektive Ebene wird üblicherweise mit P G(2, q) oder P G2 (q) bezeichnet. Gibt es projektive Ebenen der Ordnung q, wenn q keine Primzahlpotenz
ist? Anders als bei endlichen Körpern ist das noch nicht vollständig geklärt. Man
kann zwar zeigen, dass es keine projektiven Ebenen der Ordnung 6 oder 10 gibt,
doch bereits für q ≥ 12 ist die Frage noch offen.
Designs
Die Regularität, die in den definierenden Eigenschaften a) und b) einer projektiven
Ebene enthalten ist, lässt sich natürlich auch allgemeiner studieren. Wir geben hier
nur einen minimalen Ausblick.
Definition. Es seien t, v, k, λ ∈ N mit v ≥ k ≥ t ≥ 1 und λ ≥ 1. Ein t-Design mit
Parametern v, k, λ besteht aus einer endlichen Menge V und einer Familie B von
Teilmengen von V mit den folgenden Eigenschaften:
a) |V | = v.
b) Für jedes B ∈
B gilt, dass |B| = k.
c) Jedes T ∈ Vt ist in genau λ der Mengen in B enthalten.
Auf Grund von Lemma 13.1 ist eine projektive Ebene der Ordnung ` offensichtlich ein 2-Design mit Parametern v = `2 + ` + 1, k = ` + 1, λ = 1, denn
jedes Paar von Punkten ist ja nach Definition in genau einer Gerade enthalten.
Andererseits gilt (wiederum nach Lemma 13.1) auch, dass jeder Punkt in genau
14. Codierungstheorie
67
` + 1 Geraden enthalten ist, d.h. es handelt sich hier auch um ein 1-Design mit
Paramtern `2 + ` + 1, ` + 1, ` + 1. Die Tatsache, dass sich die Regularität von
Punkt-Paaren auf Punkte vererbt, lässt sich allgemeiner beobachten:
Lemma 13.4. Sei (V, B) ein t-Design mit Parametern v, k, λ. Dann gilt:
a) |B| = λ vt / kt .
b) Für
jedes
i ∈ [t] ist (V, B) auch ein i-Design mit Parametern v, k, λi :=
k−i
λ v−i
/
t−i
t−i .
Beweisskizze. Teil a) ergibt sich durch doppeltes Abzählen der Paare (T, B) mit
|T | = t, B ∈ B, T ⊂ B. Teil b) wird mit Induktion über i bewiesen. Für den
Induktionsanfang setze λ0 = |B|.
Auch hier lautet eine der wichtigsten (und noch nicht vollständig geklärten)
Fragen: Für welche Parameter t, v, k, λ gibt es überhaupt ein entsprechendes Design? Für t = 4 kennt man nur endlich viele, für t = 5 unendlich viele. Das erste
nicht-triviale Design mit t = 6 wurde erst 1982 konstruiert, und es galt als große
Überraschung, als Teirlinck 1987 bewies, dass es zu jedem t ∈ N entsprechende,
nicht-triviale Designs gibt.
14
Codierungstheorie
Im vorangegangenen Abschnitt haben wir sehr regelmäßie Strukturen konstruiert
und ihre Eigenschaften untersucht. Hier wollen wir jetzt zeigen, wie man diese
Objekte nutzen kann, um Informationen effizient zu kodieren.
Das Kernthema der Codierungstheorie befasst sich mit der folgenden Situation: Ein Sender verschickt Informationen, diese können durch unterwegs eventuell auftretende Störungen verändert werden, sollen aber dann trotzdem vom
Empfänger richtig verstanden werden. Der Grundansatz besteht darin, dass Sender und Empfänger vorher im Rahmen eines Kodierungsschemas vereinbaren, dass
versendete Informationen immer von einer bestimmten Form sein müssen. Falls das
empfangene Wort nicht von der vereinbarten Form ist, weiß der Empfänger, dass
eine Störung aufgetreten ist, und kann die Nachricht unter bestimmten Voraussetzungen auch wieder reparieren.
Ein einfaches Beispiel ist der sogenannte parity code. Hierbei werden 0–1Wörter verschickt, und an jedes Wort wird ein zusätzliches Bit angefügt, so dass
die Anzahl der Einsen insgesamt gerade ist. Unter der Annahme, dass höchstens
ein Zeichen unterwegs verändert wurde, kann der Empfänger also feststellen, ob
dies geschehen ist – auch wenn er natürlich keine Chance hat, herauszufinden,
welches Zeichen das war und den Fehler daher nicht reparieren kann.
Um Reparaturen zu ermöglichen, kann man beispielsweise den Wiederholungscode benutzen: hier verschickt der Sender einfach dreimal hintereinander das
eigentlich gemeinte 0–1-Wort. Wiederum unter der Annahme, dass höchstens ein
Zeichen unterwegs verändert wurde, kann der Empfänger den Fehler identifizieren
und reparieren.
68
Kapitel IV. Konstruierte Regularität
Definition. Sei A eine Menge der Kardinalität |A| = q ≥ 2 (das sogenannte Codierungsalphabet), und seien t, n ∈ N. Die Hammingdistanz zwischen a =
(a1 , . . . , an ) ∈ An und b = (b1 , . . . , bn ) ∈ An ist definiert durch
∆(a, b) := |{i ∈ [n] : ai 6= bi }.
Ein Code über dem Alphabet A ist eine Menge C ⊆ An , die Elemente von C
heißen Codewörter. C heißt t-fehlerentdeckend, wenn für alle a 6= b ∈ C gilt, dass
∆(a, b) ≥ t + 1. C heißt t-fehlerkorrigierend, wenn für alle a 6= b ∈ C gilt, dass
∆(a, b) ≥ 2t + 1. Die Distanz von C ist definiert durch d(C) := min{∆(a, b) :
a, b ∈ C}. Einen Code über dem Alphabet {0, 1} nennt man binär.
Angenommen, das Wort a ∈ C werde gesendet, das Wort b ∈ An werde
empfangen, und maximal t Zeichen sind unterwegs gestört worden, also ∆(a, b) ≤ t.
• Wenn C nun t-fehlerentdeckend ist, dann ist entweder b = a oder b 6∈ C.
Das heißt: wenn das empfangene Wort b in C liegt, dann ist es mit dem
gesendeten Wort a identisch; und wenn b 6∈ C, dann weiß der Empfänger,
dass ein Fehler aufgetreten ist.
• Wenn C nun t-fehlerkorrigierend ist, dann gibt es außer a kein Wort a0 ∈ C
mit ∆(b, a0 ) ≤ t, denn sonst würde aus ∆(a, b) ≤ t und ∆(b, a0 ) ≤ t ja folgen,
dass ∆(a, a0 ) ≤ 2t (im Widerspruch dazu, dass C t-fehlerkorrigierend ist).
Das heißt: der Empfänger kann das gesendete Wort a dadurch identifizieren,
dass es das einzige Wort in C ist, das Abstand höchstens t zum empfangenen
Wort b hat.
• Wir können also ein zentrales Ziel der Kodierungstheorie wie folgt formulieren: zu gegebenem Alphabet A und Wortlänge n suchen wir einen Code
C ⊆ An mit möglichst großem d(C) und möglichst großem |C|.
Schranken
Definition. Seien n, d, q ∈ N. Wir setzen
C(n, d, q)
:= {C ⊆ {0, . . . , q − 1}n : d(C) ≥ d} und
M (n, d, q)
:= max {|C| : C ∈ C(n, d, q)} .
Die Menge C(n, d, q) beschreibt also die Menge aller Codes mit Wörtern der
Länge n über einem q-elementigen Alphabet, die paarweise Abstand mindestens d
haben müssen, und M (n, d, q) ist die maximale Anzahl von Codewörtern in einem
solchen Code.
Die folgende Schranke ergibt sich unmittelbar aus der Definition.
Satz 14.1 (Hamming–Schranke). Seien n, t, q ∈ N und d = 2t + 1. Dann gilt
M (n, d, q) ≤ Pt
i=0
qn
.
n
i
i (q − 1)
14. Codierungstheorie
69
Beweis. Um die Notation zu vereinfachen, setzen wir A := {0, . . . , q − 1} und
bezeichnen mit
Bt (c) := {c0 ∈ An : ∆(c, c0 ) ≤ t}
für ein beliebiges c ∈ An .
die Hammingkugel um c mit Radius t. Um die Kardinalität von Bt (c) abzuschätzen
0
überlegen wir uns zuerst, wieviele
Wörter c es gibt, die sich an genau i Stellen
n
von c unterscheiden: es gibt i Möglichkeiten, diese i Stellen auszusuchen, und
dann für jede dieser Stellen q − 1 Möglichkeiten, ein anderes Zeichen (als das, das
in c an dieser Stelle steht) auszuwählen. Wenn wir dann noch über i summieren
erhalten wir
t X
n
(q − 1)i .
|Bt (c)| =
i
i=0
Sei nun C ein Code aus C(n, d, q). Da für alle a, b ∈ C gilt, dass ∆(a, b) ≥ d(C) ≥ d
ist, also Bt (a) ∩ Bt (b) = ∅, folgt
n
n
q = |A | ≥ |
[
Bt (a)| = |C| ·
t X
n
i=0
a∈C
i
(q − 1)i ,
und daraus die Behauptung.
Einen Code C ∈ C(n, 2t + 1, q), bei dem die obige Schranke mit Gleichheit
n
gilt, also |C| = Pt qn (q−1)i , nennt man t-perfekt.
(
i=0 i )
Im obigen Beweis haben wir argumentiert, dass die Kugeln Bt (c) mit Radius t um die Codewörter c sich nicht überlappen dürfen, und dadurch eine obere
Schranke für die Anzahl der Codewörter hergeleitet. Umgekehrt müssen aber in
einem maximalen Code die Bälle Bd−1 (c) mit Radius d − 1 = 2t um die Codewörter c den Raum {0, . . . , q − 1}n vollständig überdecken, denn sonst könnten
wir ein noch nicht überdecktes Wort zum Code hinzufügen, da es offensichtlich
den notwenidgen Mindestabstand von d zu allen Codewörtern besitzt. Auf diese
Weise lässt sich sofort die folgende untere Schranke für M (n, d, q) herleiten.
Satz 14.2 (Gilbert-Varshamov–Schranke). Es seien n, d, q ∈ N. Dann gilt
M (n, d, q) ≥ Pd−1
i=0
Beweis. klar.
qn
.
n
i
i (q − 1)
Lineare Codes
Es sei q eine Primzahlpotenz. In diesem Abschnitt benutzen wir wieder die Menge
{0, . . . , q−1} als unser Kodierungsalphabet, wollen dabei aber von der zusätzlichen
algebraischen Struktur des Körpers Fq Gebrauch machen werden. Dies schlägt sich
in der folgenden Definition nieder.
70
Kapitel IV. Konstruierte Regularität
Definition. Sei q eine Primzahlpotenz, K = Fq und K n der entsprechende Vektorraum über K. Eine Menge C ⊆ K n heißt linearer Code über Fq , wenn C einen
Untervektorraum von K n bildet, das heißt, wenn
a) 0 ∈ C,
b) ∀x, y ∈ C: x + y ∈ C, und
c) ∀α ∈ K und ∀x ∈ C: αx ∈ C.
Wenn k ∈ N die (Vektorraum-) Dimension von C ist, dann heißt C auch
(n, k)-Code über Fq , und für x ∈ C heißt w(x) := |{i ∈ [n] : xi 6= 0}| das Gewicht
von x.
Dank der starken Struktureigenschaften eines linearen Codes ist unmittelbar
klar, wieviele Codewörter er enthält. Außerden fallen hier zwei Parameter zusammen, nämlich die Distanz und das minimale (positive) Gewicht eines Codewortes.
Lemma 14.3. Sei C ein (n, k)-Code über . Dann gelten:
a) |C| = q k .
b)
d(C) = min ∆(a, b) = min w(c).
a,b∈C,a6=b
c∈C,c6=0
Beweis. a) Da C ein (n, k)-Code ist, hat der Unterraum C eine Basis mit k Basisvektoren. Jedes Element von C ist daher eineindeutig gegeben durch die Wahl
der k Koeffizienten aus Fq .
b) Einerseits gilt:
0∈C
min
a,b∈C,a6=b
∆(a, b) ≤
min ∆(0, c) = min w(c).
c∈C,c6=0
c∈C,c6=0
Andererseits gilt für alle a, b ∈ K n , dass ∆(a, b) = w(a − b), und damit
min
a,b∈C,a6=b
∆(a, b) =
min
a,b∈C,a6=b
w(a − b)
a−b∈C
≥
min w(c).
c∈C,c6=0
Die Dimension eines linearen Code macht also auch eine Angabe darüber,
wieviele Codewörter er hat. Dementsprechend wird das Verhältnis k/n eines (n, k)Codes auch Informationsrate genannt.
Oft ist es nützlich, zu einem linearen Code C auch den erweiterten Code C̄
und den dualen Code C ⊥ zu betrachten:
Definition. Es sei C ein (n, k)-Code.
a) Wir bezeichnen mit
(
C̄ :=
(c1 , . . . , cn+1 ) : (c1 , . . . , cn ) ∈ C,
n+1
X
i=1
)
ci = 0
14. Codierungstheorie
71
den erweiterten Code von C. Die Komponente cn+1 heißt parity check symbol.
b) Der zu C duale Code ist definiert durch
C ⊥ := {a ∈ K n : ha, ci = 0 ∀c ∈ C}.
Unmittelbar aus elementaren Ergebnissen der Linearen Algebra ergeben sich
die folgenden Eigenschaften von C̄ und C ⊥ .
Lemma 14.4. Wenn C ein (n, k)-Code ist, dann sind auch C̄ und C ⊥ lineare
Codes. Es gilt, dass dim(C ⊥ ) = n − k und (C ⊥ )⊥ = C ist.
Weiterhin wissen wir, dass es zwei Matrizen G ∈ K n×k und H ∈ K (n−k)×n
gibt, sodass C = im(G) = ker(H) und daher rang(H) = dim(im(H)) = n −
k ist. Die Matrizen G und H heißen Generator- und Kontrollmatrizen von C.
Ohne Einschränkung kann man ferner annehmen, dass H (nach Skalierung und
Permutationen) von der Form H = (In−k |H 0 ) ist, wobei In−k die (n − k) × (n − k)
Identitätsmatrix ist.
Beweis. Übung aus der Linearen Algebra.
Ein Code C 6= K n ist also eindeutig durch eine Kontrollmatrix festgelegt.
Wie sieht man der Kontrollmatrix die Distanz des Codes an?
Lemma 14.5. Sei C ⊆ K n ein (n, k)-Code mit Kontrollmatrix H. Dann gilt:
d(C) ≥ d ⇔ je d − 1 Spalten in H sind linear unabhängig.
Beweis. Seien u1 , . . . , un ∈ K n−k die Spalten von H. Dann gilt
14.4
c = (c1 , . . . , cn ) ∈ C ⇔ Hc = 0 ⇔ c1 u1 + · · · + cn un = 0.
Nehmen wir nun an, dass d(C) ≤ d − 1 ist. Dann existiert wegen Proposition 14.3 ein c ∈ C mit w(c) ≤ d − 1, und es seien ci1 , . . . , ci` mit ` ≤ d − 1 die
Nichtnullkomponenten von c. Dann ist ci1 ui1 + · · · + ci` ui` = 0, also existieren
` ≤ d − 1 linear abhängige Spalten in H.
Umgekehrt können wir analog argumentieren: wenn es cj1 , . . . , cjh ∈ K mit
h ≤ d−1 und cj1 uj1 +· · ·+cjh ujh = 0 gibt, dann bilden wir aus diesen Komponenten einen Vektor c ∈ K n , in dem wir alle anderen Komponenten auf Null setzen.
Somit erhalten wir einen Vektor c mit w(c) ≤ d − 1 und c1 u1 + · · · + cn un = 0,
also c ∈ C, womit d(C) ≤ d − 1 gezeigt ist.
Nach diesen Vorbereitungen wollen wir nun überlegen, wie wir mit Hilfe der
linearen Struktur effizient Decodieren können. Sei C ein (n, k)-Code über K mit
Kontrollmatrix H und Distanz d(C) = 2t+1. Wir betrachten die lineare Abbildung
s : K n → K n−k mit s(a) = Ha. Man nennt s(a) das Syndrom von a, weil durch
s(a) der Übertragungsfehler, der in dem empfangenen Wort a aufgetreten ist,
eindeutig beschrieben wird, solange dieser Fehler nicht zu groß ist:
72
Kapitel IV. Konstruierte Regularität
• Offensichtlich gilt für alle a, b ∈ K n :
s(a) = s(b) ⇔ Ha = Hb ⇔ H(b − a) = 0 ⇔ b − a ∈ C.
• Eine wichtige Eigenschaft der Abbildung s ist, dass sie, eingeschränkt auf
{a ∈ K n : w(a) ≤ t}, injektiv ist. Beweis: Es seien a, b ∈ K n mit a 6=
b und w(a) ≤ t und w(b) ≤ t. Wäre s(a) = s(b), dann müsste nach der
vorangegangenen Überlegung 0 6= b − a ∈ C, und damit w(b − a) ≥ 2t + 1.
Das steht aber im Widerspruch zu w(a) ≤ t und w(b) ≤ t.
• Wir nehmen an, das Wort x ∈ C werde gesendet und das Wort y = x+e ∈ K n
mit w(e) ≤ t werde empfangen. Der Empfänger berechnet dann
s(y) = s(x + e) = s(x) + s(e) = s(e)
und kann wegen der zuvor konstatierten Injektivität von s(e) auf e zurückschließen. Mit Hilfe von e kann er dann den Fehler korrigieren und das ursprünglich gesendete Wort x := y − e berechnen.
Dieses Decodierungsverfahren ist einfach und kann immer angewendet werden –
aber es ist nicht immer besonders schnell. Für spezielle Codes gibt es kompliziertere, aber schnellere Verfahren zur Decodierung. Beispielsweise werden Daten, die
auf CDs gebrannt werden, mit solch speziellen Codes aufbereitet; Lesefehler, die
durch kleine Kratzer oder Staub auf der Oberfläche der CD entstehen, können
dadurch mühelos und schnell berichtigt werden.
Zum Abschluss dieses Kapitels wollen wir nun noch einen Zusammenhang
zwischen endlichen projektiven Ebenen und linearen Codes herstellen.
Satz 14.6. Es sei ` ≡ 2( mod 4). Dann erzeugen die Zeilen der Inzidenzmatrix
einer projektiven Ebene (X, L) der Ordnung ` einen binären Code C der Dimension 21 (`2 + ` + 2).
Beweis. Es sei n := `2 + ` + 1 und M die Inzidenzmatrix von (X, L). Ihre Zeilenvektoren bezeichnen wir mit v 1 , . . . , v n ∈ {0, 1}n und setzen, wie gefordert, C :=
lin(v 1 , . . . , v n ). Im ersten Teil des Beweises zeigen wir, dass dim(C) ≤ 21 (`2 + ` + 2)
und im zweiten Teil die umgekehrte Ungleichung.
Teil 1: dim(C) ≤ 21 (`2 + ` + 2). Dazu betrachten wir den erweiterten Code
C̄ und behaupten, dass das Skalarprodukt zweier (nicht notwendig verschiedener)
Codewörter v, v 0 ∈ C̄ immer 0 ergibt.
Um das einzusehen, betrachten wir zunächst zwei Zeilenvektoren v i und v j
von M . Hier gilt h(v i ), v j i = 1, denn die Vektoren haben genau ` + 1 ≡ 1( mod 2)
viele 1-Komponenten, und stimmen entweder in allen ` + 1 1-Komponenten (wenn
i = j) oder in genau einer 1-Komponente (wenn i 6= j) überein. Es lässt sich leicht
14. Codierungstheorie
73
überprüfen, dass daraus für je zwei erweiterte Codewörter v, v 0 ∈ C̄ folgt, dass
hv, v 0 i = 0.
Aus der Behauptung folgt, dass C̄ ⊥ = C̄ und somit n + 1 = dim(C̄) +
dim(C̄ ⊥ ) = 2 dim(C̄), also dim(C) ≤ dim(C̄) = 21 (n + 1) = 21 (`2 + ` + 2).
Teil 2: dim(C) ≥ 21 (`2 + ` + 2). Setze k := dim(C) und betrachte die Kon(n−k)×n
trollmatrix H ∈ F2
von C, von der wir wieder annehmen wollen, dass sie in
der Form H = (In−k |H 0 ) gegeben sei. Definiere die Matrix N ∈ Fn×n
durch
2


0
0
I
In−k H 0
H
n−k

=
, also N T =
=  HT
N=
0
Ik
0
Ik
H 0T Ik
Ik
Alle folgenden Operationen wollen wir über dem Körper Q (und nicht über F2 )
ausführen. Dann gilt einerseits, dass
det(M N T ) = det(M ) det(N T ) = det(M )
Lemma 13.2
=
1
2
(` + 1)` 2 (`
+`)
.
(14.2)
T
Andererseits betrachten wir die ersten n − k Spalten der Matrix M N . Wenn
v ∈ Fn2 ein Zeilenvektor von M (und damit ein Codewort von C) ist, und w ∈ Fn2
ein Spaltenvektor von H T , also ein Zeilenvektor der Kontrollmatrix H, ist, dann
gilt über F2 , dass hv, w, =i0. Über dem Körper Q muss dann das Ergebnis eine
gerade natürliche Zahl sein. Wenn wir aus all diesen n − k Spalten den Faktor 2
aus der Matrix nach vorne ziehen, ist klar, dass det(M N T ) und damit det(M N )
ein Vielfaches von 2n−k sein muss. Da ` von der Form ` = 4p + 2 = 2(2p + 1) und
` + 1 ungerade ist, folgt aus (14.2), dass 12 (`2 + `) ≥ n − k. Somit muss
1
1
1
k ≥ n − (`2 + `) = (`2 + ` + 1) − (`2 + `) = (`2 + ` + 2),
2
2
2
was zu zeigen war.
Man kann darüber hinaus noch zeigen, dass fuer den im obigen Satz konstruierten Code d(C) = ` + 1 gilt, und dass jedes Codewort mit Gewicht ` + 1 einer
Gerade in der projektiven Ebene entspricht. Damit hat der Code eigentlich recht
gute Eigenschaften, nämlich eine Informationsrate von
dim(C)
1/2(`2 + ` + 2)
1
=
∼ ,
2
n
` +`+1
2
und gleichzeitig eine Distanz von
√
d(C) = ` + 1 ∼ n.
Andererseits basiert seine Konstruktion auf einer projektiven Ebene der Ordnung
` ≡ 2( mod 4) und die einzige derartige bekannte Ebene ist die Fano-Ebene.
Tatsächlich hat man beispielsweise für den Fall ` = 10 die abgeleiteten Code–
Eigenschaften benutzt, um zu zeigen, dass es keine projektive Ebene der Ordnung
10 geben kann.
Zum Abschluss nun noch ein Beispiel als Übungsaufgabe: betrachten Sie den
Code, der von der Fano-Ebene erzeugt wird. Ist er perfekt?
74
Kapitel IV. Konstruierte Regularität
Übungsaufgaben
1. Beweisen Sie Lemma 14.4
2. Sei (X, L) eine projektive Ebene der Ordnung ` mit ` ungerade. Betrachten
Sie den Code C, den man erhält, wenn man basierend auf einer solchen Ebene
die gleiche Konstruktion wie in Satz 14.6 durchführt. Was kann man über C
aussagen?
Literaturhinweise zu Kapitel 14
Weiteres Material findet sich beispielsweise bei [A] in Kapitel 13 und bei [S] in
Kapitel 5.4.
Kapitel V
Ramseytheorie
Im vorangegangenen Kapitel haben wir uns angestrengt, um Objekte mit einer
besonders ausgeprägten Struktur zu konstruieren, oder wenigstens ihre Existenz
nachzuweisen. Im Folgenden untersuchen wir ein Phänomen, das dem in gewisser
Weise entgegen gesetzt zu sein scheint: wenn ein Objekt genügend groß ist, dann
muss es wohl strukturierte Teilobjekte enthalten. Dieses Leitmotiv der Ramseytheorie lässt sich gut mit den Worten von Theodore Motzkin zusammenfassen:
complete disorder is impossible.
15
Satz von Ramsey
Ein Beispiel für die eben genannte Philosophie ist das sogenannte Schubfachprinzip, das sofort einsichtig ist. In der endlichen Version besagt es: Seien N und M
zwei endliche Mengen mit Kardinalität n = |N | und m = |M |, und sei f : N → M
n
eine beliebige Funktion. Dann existiert eine Menge S ⊂ N mit |S| ≥ d m
e und ein
Element c0 ∈ M , so dass die Funktion f alle Elemente von S auf c0 abbildet.1
Die unendliche Variante des Schubfachprinzip lässt sich noch eleganter formulieren: Wenn die Elemente einer unendlichen Menge mit einer endlichen Anzahl von
Farben gefärbt werden, dann existert eine unendliche einfarbige Teilmenge – also
eine Teilmenge, deren Elemente alle die gleiche Farbe erhalten.
Das Schubfachprinzip ist deswegen so einfach, weil hier die gleichen Objekte,
nämlich die Elemente der Menge N , sowohl gefärbt wie auch zu Teilmengen zusammengefasst werden sollen. Die Situation wird ungleich interessanter, wenn wir
zwar nachwievor nach Teilmengen von N suchen, aber nun 2−, 3−, oder r-Tupel
färben.
1 Klar: wenn wir n Tauben in einem Taubeschlag mit m Löchern verteilen, dann müssen in
n
einem Loch mindestens d m
e hocken – irgendwo müssen sie ja hin. Aus diesem Grund heißt das
Schubfachprinzip auf Englisch auch pigeonhole principle.
76
Kapitel V. Ramseytheorie
Eine kleine Anmerkung: Es hat sich eingebürgert, innerhalb der Ramseytheorie von Färbungen zu sprechen – damit ist aber nichts weiter als eine Partition
der betreffenden Familie in eine (endliche oder unendliche) Anzahl von (Farb)Klassen gemeint. In keinem Fall sind damit Färbungen gemeint, die per se bestimmte Eigenschaften haben müssen, wie beispielsweise die Graphenfärbungen in
Abschnitt 11, bei denen benachbarte Knoten unterschiedliche Farben brauchen.
Als nächstes färben wir nun Paare von Knoten und stellen uns diese als die
Kantenmenge eines (vollständigen) Graphen vor.
Definition (Ramseyzahl). Sei k ∈ N. Die Ramseyzahl R(k) bezeichnet die kleinste natürliche Zahl n mit der Eigenschaft, dass jede Färbung der Kanten des
vollständigen Graphen Kn mit zwei Farben einen einfarbigen Kk erzwingt.
Um mit dieser Definition vertraut zu werden, betrachten wir zunächst einige
einfache Beispiele. Es gilt, dass 5 < R(3), denn wie die folgende Abbildung zeigt,
existiert eine 2-Kantenfärbung des K5 ohne einen einfarbigen K3 .
Um sich andererseits davon zu überzeugen, dass R(3) ≤ 6, müssen wir zeigen,
dass jede 2-Kantenfärbung des K6 einen einfarbigen K3 erzwingt. Sei also eine
beliebige rot-blau Färbung der Kanten des K6 gegeben. Wir betrachten einen
beliebigen Knoten x. Wegen des Schubfachprinzips muss x zu mindestens drei
der fünf verbleibenden Knoten mittels Kanten der gleichen Farbe verbunden sein
(denn 3 = d5/2e), sagen wir (oBdA) dies seien die Knoten u, v, w und die Kanten
haben alle drei die Farbe rot. Jetzt sind wir aber fertig, denn
– entweder ist mindestens eine der Kanten {u, v}, {v, w} oder {w, u} auch rot,
dann schließt sich mit Hilfe der roten Kanten zu x ein roter K3 ,
– oder alle Kanten {u, v}, {v, w} oder {w, u} sind blau, dann haben wir einen
blauen K3 gefunden.
Insgesamt haben wir also gezeigt, dass 5 < R(3) ≤ 6, somit folgt R(3) = 6.
Nach dieser Aufwärmübung stellt sich die Frage, warum eine solche kleinste
natürliche Zahl n wie in der obigen Definition überhaupt existieren muss. Könnte
es nicht sein, dass beispielsweise für k = 17 für jedes noch so große n ∈ N eine
2-Kantenfärbung des Kn existiert, die keinen einfarbigen K17 enthält?
Der folgende Satz zeigt, dass das nicht sein kann, und gibt zugleich Schranken
für R(k) an.
15. Satz von Ramsey
77
Satz 15.1. Für k ∈ N gilt:
2k/2 ≤ R(k) ≤ 22k−2 .
Beweis. Die untere Schranke werden wir später in Abschnitt ?? mit Hilfe von
probabilistischen Methoden beweisen.
Zum Beweis der oberen Schranke führen wir Induktion über k. Für k = 1
gilt die Aussage offensichtlich. Sei also k ≥ 2 und eine beliebige rot-blau Färbung
der Kanten des Kn auf n = 22k−2 Knoten gegeben. Wir müssen zeigen, dass sie
einen einfarbigen Kk enthält.
Setze V0 := [n] und wähle v0 ∈ V0 beliebig. Wir definieren eine Folge von
Knoten v0 , v1 . . . und Teilmengen V0 , V1 . . . wie folgt. Wenn vi ∈ Vi gewählt, dann
betrachte rote und blaue Nachbarn von vi innerhalb von Vi . Bezeichne die größere
der beiden Mengen mit Vi+1 und wähle beliebiges vi+1 ∈ Vi+1 . Daraus folgt, dass
|Vi+1 | ≥ |Vi |/2, und wegen n = 22k−2 folgt damit, dass wir somit eine Folge
v0 , . . . , v2k−2 konstruieren können. Wenn mindestens die Hälfte der Knoten vi
mehr rote als blaue Nachbarn in Vi hat, dann haben wir einen roten Kk gefunden,
andernfalls einen blauen.
Diese obere Schranke garantiert uns insbesondere, dass die Ramseyzahl R(k)
wohldefiniert ist. Tatsächlich kennt man die exakten Werte nur von sehr wenigen
Ramseyzahlen – man weiß beispielsweise, dass R(4) = 18, aber schon für k = 5
sind lediglich die Schranken 43 ≤ R(5) ≤ 49 bekannt. Man beachte, dass hier auch
43
ein Probieren mit dem Computer nicht viel hilft, weil man ja 2( 2 ) verschiedene
2-Kantenfärbungen des K43 durchgehen müsste.
Für allgemeine k ist die derzeit beste bekannte obere Schranke von der
2k
Größenordnung 2√k (und damit nur wenig geringer als die Schranke aus dem obigen Satz).
Wir betrachten nun zwei Varianten des obigen Satzes. In der ersten werden
nicht nur Paare mit zwei Farben, sondern allgemeiner r-Tupel mit c verschiedenen
Farben gefärbt. Die zweite beschreibt eine unendliche Version.
Satz 15.2 (Satz von Ramsey). Für beliebige natürliche Zahlen k, ` und r existiert eine kleinste natürliche Zahl R(k, `, r), so dass für jede Menge N mit |N | ≥
R(k, `, r) und jede Färbung
N
f:
→ [r]
`
eine Menge K ∈ N
k und eine Farbe r0 ∈ [r], so dass
K
f (L) = r0
∀L ∈
.
`
Mit anderen Worten: jede Färbung der `-elementigen Teilmengen aus der
Menge N erzwingt eine Menge K ⊂ [n] der Größe k, deren `-Mengen alle die
gleiche Farbe haben.
78
Kapitel V. Ramseytheorie
Beweis. Wir beweisen den Satz durch Induktion über `. Für den Induktionsanfang
` = 1 folgt die Aussage aus dem zu Beginn des Kapitels erwähnten Schubfachprinzip, und für ` = 2 aus Satz 15.1.
Nach Induktionsannahme gilt die Aussage für k, ` − 1 und r und wir setzen
t := R(k, ` − 1, r).
(15.1)
Ferner wählen wir n ∈ N so groß, dass die Folge u`−2 ≥ u`−1 ≥ · · · ≥ ut , die durch
u`−2 := n − (` − 2) und die Rekursion
i+1
ui+1 := (ui − 1)r−(`−1)
(15.2)
noch ut ≥ 1 erfüllt. Wir behaupten, dass das so gewählte n die gewünschten
Ramsey–Eigenschaften besitzt. Etwas
genauer: Wenn N eine Menge der Kardi
nalität mindestens n und f : N` → [r] eine beliebige Färbung ist, dann können
K
wir eine Menge K ∈ N
k finden, so dass alle L ∈ ` von f auf die gleiche Farbe
abgebildet werden. Mit dieser Aussage hätten wir dann die Existenz von R(k, `, r)
nachgewiesen (und mehr müssen wir ja auch gar nicht zeigen).
Unser Zwischenziel ist es, eine Folge S`−2 , St von Teilmengen Si ⊆ [n] und
eine Folge a1 , . . . , at von Zahlen ai ∈ N mit
ai+1 ∈ Si und Si+1 ⊆ Si \ {ai+1 }
und der folgenden Eigenschaft zu konstruieren:
Für beliebige i1 < · · · < i`−1
f ({ai1 , . . . , ai`−1 , as })
und
=
s, s0 ∈ [t] mit i`−1 + 1 ≤ s, s0 gilt:
f ({ai1 , . . . , ai`−1 , as0 }).
(15.3)
Mit anderen Worten: Die durch f an die `-Menge vergebene Farbe ist unabhängig
von der letzten Zahl.
Um das zu erreichen wählen wir die ersten Elemente a1 , . . . , a`−2 beliebig aus
der Menge [n] und setzen S`−2 := [n] − {a1 , . . . , a`−2 }. Angenommen i ≥ ` − 2
und die Folgen a1 , . . . , ai und Si ⊆ · · · ⊆ S`−2 seien konstruiert. Wir wählen dann
ai+1 aus Si beliebig und nummerieren die Teilmengen durch
{a1 , . . . , ai+1 }
=: {T1 , . . . , T(i+1) }.
`−1
`−1
i+1
Jetzt weisen wir jedem x ∈ Si \ {ai+1 } einen Vektor xf ∈ [r](`−1) zu, der aus den
Farben aller `-Mengen, die x enthalten, besteht:
xf := f (T1 ∪ {x}), . . . , f (T(i+1) ∪ {x}) .
`−1
Bild
15. Satz von Ramsey
79
Wir nennen zwei Zahlen x, y aus Si \ {ai+1 } äquivalent, wenn xf = yf . Dadurch definieren wir eine Äquivalenzrelation und bezeichnen mit Si+1 eine größte
der so entstehenden Äquivalenzklassen. Für zwei x, y ∈ Si+1 gilt nun, dass
{a1 , . . . , ai+1 }
xf = yf und damit f (T ∪ {x}) = f (T ∪ {y}) für alle T ∈
.
`−1
i+1
Wie groß ist Si+1 ? Da es höchstens r(`−1) verschiedene Vektoren gibt, kann
es auch nur höchstens soviele Äquivalenzklassen geben, also muss Si+1 als eine
i+1
größte von ihnen mindestens (|Si | − 1)/r(`−1) Elemente enthalten. Nach Definition
von n und der Rekursion in (15.2) folgt, dass wir die Folgen bis at ∈ [n] und St 6= ∅
fortsetzen können.
Damit haben wir nun unser in (15.3) formuliertes Zwischenziel erreicht: Zu
gegebenem i1 < · · · < i`−1 und i`−1 + 1 ≤ s, s0 wählen wir den Index i so, dass
i + 1 = i`−1 und damit auch i + 1 ≤ s − 1, s0 − 1. Somit folgt
{ai1 , . . . , ai`−1 } ⊆ {a1 , . . . , ai+1 } sowie as ∈ Ss−1 ⊆ Si+1 und as0 ∈ Ss0 −1 ⊆ Si+1 .
Nach Konstruktion ist dann wegen (as )f = (as0 )f
f ({ai1 , . . . , ai`−1 , as }) = f ({ai1 , . . . , ai`−1 , as0 }),
wie in (15.3) gefordert.
Jetzt definieren wir eine Färbung fˆ :
{a1 ,...,at }
`−1
→ [r] durch
fˆ({ai1 , . . . , ai`−1 }) := f ({ai1 , . . . , ai`−1 , as })
für ein beliebiges as mit i`−1 + 1 ≤ s ≤ t. Nach (15.3) spielt die Wahl von as
dabei keine Rolle. (Falls i`−1 = t und deswegen kein Platz mehr für s sein sollte,
wählen wir eine beliebige Farbe aus [r].) Nach Wahl von t in (15.1) existiert nun
t}
eine Menge K̂ ∈ {a1 ,...,a
und eine Farbe r̂0 ∈ [r], so dass
k
fˆ(L̂) = r̂0
∀L̂ ∈
K̂
.
`−1
Wenn wir nun K := K̂ und r := r̂0 setzen, sind wir schon am Ziel unserer Träume:
Für jede beliebige Menge L = {ai1 , . . . , ai`−1 , ai` } ∈ K` mit i1 < · · · < i`−1 < i`
gilt jetzt
f (L) = fˆ({ai1 , . . . , ai`−1 }) = r̂0 = r0 ,
was zu beweisen war.
Hier noch, wie versprochen, die unendliche Variante des Satzes von Ramsey,
wenn auch ohne Beweis.
80
Kapitel V. Ramseytheorie
Satz 15.3. Für beliebige natürliche
Zahlen r und c, eine unendliche Menge N und
eine beliebige Färbung f : N` → [r] existiert eine unendliche Menge K und eine
Farbe r0 ∈ [r], so dass
K
f (L) = r0
∀L ∈
.
`
16
Konvexe Polygone
In diesem Abschnitt wollen wir eine weitere Situation studieren, in der sich das
Leitmotiv Complete disorder is imposssible schön manifestiert. Hier betrachten
wir – statt Färbungen – eine beliebige Menge von Punkten in der Ebene. Wir
sagen, dass sich k Punkte in allgemeiner Lage befinden, wenn keine drei von ihnen
gemeinsam auf einer Gerade liegen. Sie bilden darüber hinaus ein konvexes Polygon, wenn sie die Eckpunkte eines k-Ecks sind und alle ihre Verbindungsstrecken
ganz im Inneren des k-Ecks verlaufen. Wir werden nun zeigen, dass sich für jede
vorgegebene natürliche Zahl k in einer genügend großen Punktmenge immer eine
solche Struktur finden lässt.
Bild
Satz 16.1. Für jede natürliche Zahl k existiert eine kleinste natürliche Zahl ES(k),
so dass jede Menge auf mindestens ES(k) Punkten in allgemeiner Lage in der
Ebene k Punkte enthält, die ein konvexes Polygon bilden.
Wir geben zwei Beweise für diesen Satz. Der erste Beweis beruht auf dem
Satz von Ramsey und zeigt auf diese Weise, wie die unterschiedlichen Teile der
Ramseytheorie miteinander verknüpft sind.
Erster Beweis. Wir führen zunächst die folgende Notation ein. Sei N eine Menge
von Punkten in allgemeiner Lage, und seien x, y, z ∈ N . Dann bezeichnen wir mit
|xyz| die Anzahl der Punkte aus N , die innerhalb des Dreiecks mit den Eckpunkten
x, y und z liegen.
Es sei nun k ∈ N wie vorgegeben, wir setzen ` := 3 und r := 2, wenden
den Satz von Ramsey (Satz 15.2) an und erhalten eine Zahl ES(k) := R(k, `, r).
Wir betrachten eine beliebige Menge N von ES(k) Punkten in allgemeiner Lage
und definieren wie folgt eine Färbung f der Punkte-Tripel mit zwei Farben. Wenn
|xyz| ungerade ist, setzen wir f ({x, y, z}) := 1, andernfalls f ({x, y, z}) := 2.
Die Wahl von ES(k) garantiert uns nun eine Menge K von k Punkten, so
dass alle Teilmengen von K der Größe 3 durch f die gleiche Farbe erhalten. Wir
würden nun gerne zeigen, dass K ein konvexes Polygon bildet und nehmen dazu
das Gegenteil an. In diesem Fall muss es in K vier Punkte x, y, z, w geben, so
16. Konvexe Polygone
81
dass w im Inneren des Dreiecks x, y, z liegt (warum?). Da die Punkte von N in
allgemeiner Lage waren, gilt jetzt:
|xyz| = |xyw| + |yzw| + |xzw| + 1.
Alle vier in der obigen Gleichung auftretenden Tripel haben von f die gleiche Farbe
bekommen, und entsprechend sind die vier Größen |xyz|,. . . ,|xzw| alle gerade oder
alle ungerade. Jeder der beiden Fälle führt, wegen der +1, zum Widerspruch. Durch die Verwendung des Satzes von Ramsey erhält man zwar einen eleganten Beweis, verliert aber die geometrische Sicht auf die Dinge. Dieses Manko wird
in dem folgenden zweiten Beweis behoben, und er liefert auch eine obere Schranke
für die Zahl der Punkte.
Zweiter Beweis. We view finite sets {a0 , . . . , ak−1 } of vertices ai = (ai,x , ai,y ) ∈ R2
in the plane as enumerated monotonously with respect to the lexicographic order,
i.e., ai,x < ai+1,x or ai,x = ai+1,x and ai,y < ai+1,y .
The set {a0 , . . . , ak−1 } is convex if
ai+2,y − ai+1,y
ai+2,x − ai+1,x
<
ai+1,y − ai,y
ai+1,x − ai,x
for every i < k − 2,
i.e., the slopes of the lines through a0 , a1 , through a1 , a2 , etc. decrease monotonously. The set is concave if these slopes increase monotonously. Clearly, if
{a0 , . . . , ak−1 } is either convex or concave then this set forms a convex polygon.
Let f (k, l) be the minimal number n such that every set {a0 , . . . , an−1 } of
points in the plane, no three of which are collinear, contains a convex k-element
subset or contains a concave l-element subset. Observe that f (3, m) = f (m, 3) = m
for every m ≥ 3. We claim that
f (k, l)
≤
f (k − 1, l) + f (k, l − 1) − 1,
which would prove the theorem. Let N be a set of f (k −1, l)+f (k, l −1)−1 points,
no three of which are collinear. Consider the first f (k − 1, l) points of N. Without
loss of generality we may assume that this set contains a convex set {a0 , . . . , ak−2 }
of size k − 1. Otherwise we are done. Now replace the largest point ak−2 by the
next point of N, i.e., consider the set consisting of the first f (k − 1, l) + 1 points
of N without the point ak−2 .
Again, we can assume that the resulting set contains a convex set of size
k − 1. We go on replacing the last points until we have constructed f (k, l − 1) last
points.
Without loss of generality, this set of last points contains a concave set
{c0 , . . . , cl−2 } of size l − 1. Now consider the convex set {b0 , . . . , bk−3 , bk−2 } which
has c0 as its last point, i.e., bk−2 = c0 . Then either the slope of the line through
c0 , c1 is smaller than the slope of the line through bk−3 , c0 , then {b0 , . . . , bk−3 , c0 , c1 }
form a convex set of size k and we are done. Or the converse is true, then
{bk−2 , c0 , c1 , . . . , cl−2 } form a concave set of size l and we are also done.
82
Kapitel V. Ramseytheorie
Es ist nicht schwer, mit Hilfe der Rekursion für die Funktion f (k, l) zu zeigen,
dass ES(k) ≤ 22k ist (siehe Aufgabe 3). Andereseits gibt es direkte Konstruktionen, die beweisen, dass ES(k) ≥ 2k−2 + 1, und es wird vermutet, dass diese untere
Schranke bestmöglich ist.
17
Arithmetische Progressionen
Nach den einfarbigen Cliquen und den konvexen Polygonen in den beiden vorangegangenen Abschnitten wollen wir uns nun Objekten mit einer auffälligen arithmetischen Substruktur zuwenden. Hierbei werden wir die natürlichen Zahlen mit
einer beliebigen, aber festen Anzahl von Farben färben, und dann nach einfarbi”
gen Lösungen“ von bestimmten Gleichungen suchen.
Satz 17.1 (Satz von Schur). Für jede natürliche Zahl r existiert eine natürliche
Zahl n, so dass für jede Färbung f : [n] → [r] drei Zahlen x, y, z ∈ [n] existieren,
für die
x=y+z
und
f (x) = f (y) = f (z)
gelten.
Beweis. Es sei ` ∈ N vorgegeben, wir setzen k := 3 und ` := 2, wenden wieder den
Satz von Ramsey (Satz 15.2) an und erhalten eine Zahl n := R(k, `, r). Sei nun
eine beliebige Färbung f : [n] → [r] gegeben. Wir benutzen sie, um unsererseits
ˆ
eine Färbung fˆ : [n]
2 → [r] zu definieren, in dem wir f ({i, j}) := f (|j − i|) setzen.
Die Wahl von n garantiert uns nun eine Farbe r0 ∈ [r] und eine Menge
K = {a, b, c} ⊂ [n] , deren zweielementige Teilmengen unter fˆ alle die gleiche
Farbe r0 bekommen. Ohne Einschränkung nehmen wir an, dass a < b < c gilt und
definieren die natürlichen Zahlen
y := b − a,
z := c − b,
x := c − a,
die alle in [n] liegen. Somit gelten x = c − a = (b − a) + (c − b) = y + z, und
r0
= fˆ({a, b}) = f (b − a) = f (y),
= fˆ({b, c}) = f (c − b) = f (z),
r0
= fˆ({a, c}) = f (c − a) = f (x),
r0
was zu zeigen war.
Ein wichtiges Thema der Ramseytheorie ist die Frage, ob eine Aussage wie
die obige auch für andere Gleichungen als x = y + z gilt. Wir beschränken uns an
dieser Stelle auf zwei Beispiele dazu.
Bemerkung.
a) Man kann zeigen, dass in der Tat eine analoge Aussage für die Gleichung 2x =
y +z gilt, und wir werden dies in Kürze aus einem stärkeren Resultat folgern (siehe
17. Arithmetische Progressionen
83
Satz 17.2).
b) Für die Gleichung 3x = y + z gilt hingegen keine analoge Aussage. Um das
einzusehen kann man für jedes noch so große n beispielsweise die folgende Färbung
f : [n] → [4] betrachten. Um f (m) zu definieren, ermitteln wir zunächst die
eindeutigen Parameter i, p ∈ N0 und q ∈ [4] in der Darstellung m = 5i (5p + q)
und setzen dann f (m) = q, Wir überlassen es den Lesenden zu zeigen, dass die
Gleichung 3x = y + z unter dieser Färbung keine einfarbige Lösung hat.
Wir wollen nun größere einfarbige Objekte mit einer besonderen arithmetischen Struktur suchen, nämlich arithmetische Progressionen. Wir sagen, dass eine
Färbung f : [n] → [r] eine einfarbige arithmetische Progression der Länge k ∈ N
enthält, wenn es eine Farbe r0 und eine Folge der Form (a, a + d, a + 2d, ..., a +
(k − 1) · d) ⊂ [n] mit a, d ∈ N gibt, so dass f (a + id) = r0 für alle i ∈ [0, k − 1].
Satz 17.2 (Satz von van der Waerden, 1927). Für beliebige natürliche Zahlen k
und r existiert eine kleinste natürliche Zahl W (k, r), so dass für jedes n ≥ W (k, r)
jede Färbung f : [n] → [r] eine einfarbige arithmetische Progression der Länge k
enthält.
Wir folgen dem Beweis in [GRS] und führen dazu den Begriff der Äquivalenz
zweier Vektoren ein: Seien x = (x1 , . . . , xm ), x0 = (x1 , . . . , x0m ) ∈ [0, k]m zwei
Vektoren. Wir nennen sie k-äquivalent und schreiben x ∼k x0 , wenn für alle s ∈ [m]
gilt:
(xs 6= x0s ) ⇒ (∀t ≥ s xt 6= k 6= x0t ),
das heißt, wenn x und x0 mindestens bis einschließlich zum letzten Auftreten der
Zahl k übereinstimmen. Insbesondere bedeutet das im Fall m = 1: für zwei beliebige Zahlen 0 ≤ x, x0 ≤ k − 1 gilt x ∼k x0 .
Mit Hilfe dieses Begriffs formulieren wir nun den folgenden
Satz 17.3. Für alle k, m, r ∈ N gibt es eine kleinste Zahl n = W (k, m, r), so daß
für jede Abbildung f : [n] → [r] gilt: es gibt a, d1 , . . . , dm ∈ N, so daß
m
∀x ∈ [0, k]
: 1≤a+
m
X
xi di ≤ n,
(17.4)
i=1
∀x, x0 ∈ [0, k]m mit x ∼k x0 : f (a +
m
X
xi di ) = f (a +
i=1
m
X
x0i di ).
(17.5)
i=1
Offensichtlich folgt Satz 17.2 aus dem Spezialfall m = 1 des letzten Satzes.
Beweis von Satz 17.3. Wir werden die folgenden beiden Aussagen zeigen:
W (k, m + 1, r) ≤ W (k, m, r) · W (k, 1, rW (k,m,r) )
W (k + 1, 1, r) ≤ 2W (k, r, r).
(17.6)
(17.7)
84
Kapitel V. Ramseytheorie
Um (17.6) zu zeigen, setzen wir M := W (k, m, r) und N := W (k, 1, rM ) und
betrachten eine beliebige Abbildung f : [M N ] → [r]. Sei fN definiert durch
fN : [N ] → [r]M , fN (x) := f (x − 1)M + 1 , . . . , f (x − 1)M + M .
Dadurch gilt: fN (x) = fN (x0 ) ⇔ ∀j ∈ [M ] : f ((x − 1)M + j) = f ((x0 − 1)M + j).
Nach Wahl von N gibt es a0 und d0 , so daß
∀x ∈ [0, k] : 1 ≤ a0 + xd0 ≤ N,
(17.8)
∀x, x0 ∈ [0, k] mit x ∼k x0 : fN (a0 + xd0 ) = fN (a0 + x0 d0 ).
was wir zurück in die Funktion f übersetzen als
∀i, i0 ∈ [0, k−1] : f ((a0 +id0 −1)M +j) = f ((a0 +i0 d0 −1)M +j) ∀j ∈ [M ]. (17.9)
Sei fM definiert durch
fM : [M ] → [r], fM (j) := f ((a0 − 1)M + j).
Nach Wahl von M existieren a, d1 , . . . , dm ∈ N so dass
∀x ∈ [0, k]m : 1 ≤ a +
m
X
xi di ≤ M,
i=1
∀x, x0 ∈ [0, k]m mit x ∼k x0 : fM (a +
m
X
xi di ) = fM (a +
i=1
m
X
x0i di ).
i=1
Wir setzen â := a + (a0 − 1)M , betrachten die letzen beiden Aussagen wieder in
die Sprache der Funktion f und erhalten
∀x ∈ [0, k]m : (a0 − 1)M + 1 ≤ â +
m
X
xi di ≤ (a0 − 1)M + M = a0 M,
(17.10)
i=1
∀x, x0 ∈ [0, k]m mit x ∼k x0 : f (â +
m
X
i=1
xi di ) = f (â +
m
X
x0i di ).
(17.11)
i=1
Nun setzen wir dm+1 := d0 M und behaupten, dass die so gewählten â, d1 , . . . , dm+1
das Geforderte leisten. Um (17.4) zu überprüfen stellen wir fest, dass für x ∈
[0, k]m+1
1 ≤ (a0 −1)M +1
(17.10)
≤
â+
m+1
X
(17.10)
xi di
≤
a0 M +xm+1 dm+1 ≤ (a0 +kd0 )M
(17.8)
≤ N M.
i=1
Um (17.5) zu überprüfen betrachten wir x, x0 ∈ [0, k]m+1 mit x ∼k x0 . Falls
xm+1 = k oder x0m+1 = k, dann müsste x = x0 sein und wir müssen nichts mehr
zeigen. Also können wir ohne Einschränkung annehmen, dass xm+1 , x0m+1 < k.
17. Arithmetische Progressionen
85
Weiterhin wissen wir bereits nach (17.11), dass
f (â +
m
X
xi di ) = f (â +
i=1
m
X
x0i di ),
i=1
und es genügt daher zu zeigen, dass
f (â +
m
X
xi di ) = f (â +
i=1
m+1
X
xi di )
(17.12)
x0i di ).
(17.13)
i=1
und
f (â +
m
X
x0i di )
= f (â +
m+1
X
i=1
i=1
Nach (17.10) existiert ein j ∈ [M ], so dass
â +
m
X
xi di = (a0 − 1)M + j,
i=1
und damit ist auch
â +
m+1
X
xi di = (a0 − 1)M + j + xm+1 d0 M = (a0 + xm+1 d0 − 1)M + j.
i=1
Nun können wir aber (17.9) mit i := 0 und i0 := xm+1 ∈ [0, k − 1] anwenden und
erhalten
f ((a0 − 1)M + j) = f ((a0 + xm+1 d0 − 1)M + j),
was genau (17.12) entspricht. In analoger Manier zeigt man dann (17.13) für x0
anstelle von x, und damit ist (17.6) bewiesen.
Um (17.7) zu zeigen, setzen wir N := W (k, r, r). Sei eine beliebige Abbildung
f : [2N
P]r → [r] gegeben. Nach Wahl vonPNr gibt es a, d1 , . . . , dr , so dass erstens
a + k i=1 di ≤ N und zweitens f (a + i=1 xi di ) konstant auf jeder k-Äquivalenzklasse ist. Wir betrachten die folgenden Vektoren xµ ∈ [0, k]r für 0 ≤ µ ≤ r:
x0 := (0, . . . , 0), x1 := (k, 0, . . . , 0), . . . , xr := (k, . . . , k).
Nach dem
gibt
zwei Vektoren xµ , xν , µ < ν, so dass
Pres nun
Pr Schubfachprinzip
ν
µ
f (a + i=1 (x )i di ) = f (a + i=1 (x )i di ) gilt. Da aber jeder Vektor x mit
ν
}|
{
z
x = (k, . . . , k , j, . . . , j, 0, . . . , 0) mit j ∈ [0, k] entweder k-äquivalent zu xµ (wenn
| {z }
µ
86
Kapitel V. Ramseytheorie
j < k) oder k-äquivalent zu xν (wenn j = k) ist, folgt, dass es eine Farbe r0 ∈ [r]
gibt, so dass für alle j ∈ [0, k] gilt
f (a +
µ
X
i=0
kdi +
ν
X
jdi ) = r0 .
i=µ+1
Pµ
Pν
Mit a0 := a + i=1 kdi und d0 :=
i=µ+1 di sind dann aber die beiden
Zahlen für W (k + 1, 1, r) gefunden, denn schließlich ist jetzt f (a0 + jd0 ) = r0 für
alle j ∈ [0, k] und a0 + (k + 1)d0 ≤ 2N . Damit ist nun auch (17.7) bewiesen.
Mit Hilfe von (17.6) und (17.7) kommen wir nun induktiv zu dem Schluß,
daß die Behauptung für alle k, m, r ∈ N gilt: Die Behauptung ist trivial für den
Fall k = m = 1, r beliebig. Wenn die Behauptung für k, m und alle r gilt, dann
nach (17.6) auch für für k, m + 1 und alle r. Gilt die Behauptung für k und alle
m, r, dann nach (17.7) auch für k + 1, m = 1 und alle r. Und dann wiederum nach
(17.6) für k + 1, m + 1 und alle r.
Mit Hilfe des Spezialfalls k = 3 im Satz von van der Waerden können wir nun
auch die Bemerkung a) nach dem Beweis von Satz 17.1 beweisen: eine einfarbige
arithmetische Progression a, a+d, a+2d liefert via x := a+d, y := a und z := a+2d
sofort die Lösung der Gleichung 2x = y + z.
Die besten derzeit bekannten Schranken für W (k, r) lauten
k+9
2
r2
crk
≤ W (k, r) ≤ 22
rk
.
Alle Sätze, die wir bislang in den Abschnitten 15 und 17 kennengelernt haben,
sind Partitionsresultate. Sie besagen, dass wir, egal wie die Kanten des vollständigen Graphen oder die natürlichen Zahlen in Farbklassen partitioniert sind, in einer
der Klassen eine wohlgeordnete Struktur (Clique oder arithmetische Progression)
auftauchen muss. Wir wissen aber nicht, in welcher.
Es erscheint durchaus naheliegend, die gewünschte Struktur immer in derjenigen Farbklasse zu vermuten, die den höchsten Anteil an den zu färbenden Objekten
besitzt. Im Falle der einfarbigen Cliquen ist das aber falsch, siehe Aufgabe 1. Im
Falle der einfarbigen arithmetischen Progressionen ist es hingegen wahr:
Satz 17.4 (Szemerédi, 1974). Für jede natürliche Zahl k und jede reelle Zahl ε > 0
existiert eine kleinste natürliche Zahl n(k, ε), so dass jede Teilmenge A ⊂ [n] mit
|A| ≥ εn eine einfarbige arithmetische Progression der Länge k enthält.
Tatsächlich gilt die Aussage hier bereits dann, wenn die Partitionsklasse (hier
die Menge A) lediglich einen festen ε-Anteil der natürlichen Zahlen enthält. Offensichtlich impliziert dieser Satz den Satz von van der Waerden, denn mindestens
eine der r Farbklassen muss ja einen Anteil von ε := 1/r bekommen. Er reicht
aber nicht, um eine berühmte alte Vermutung zu beweisen, derzufolge bereits die
17. Arithmetische Progressionen
87
Menge der Primzahlen beliebig lange arithmetische Folgen enthält. Dies gelang
Green und Tao im Jahr 2004, und mit ihrem Satz beenden wir dann auch dieses
Kapitel.
Satz 17.5 (Green und Tao, 2004). Für jede natürliche Zahl k enthält die Menge
aller Primzahlen eine arithmetische progression der Länge k.
Übungsaufgaben
1. a) Finden Sie für jedes n ∈ N eine 2-Färbung der Kanten des Kn , so dass die
Farbklasse mit den meisten Kanten keinen einfarbigen K3 enthält.
b) Finden Sie für jedes n ∈ N und jede reelle Zahl ε > 0 eine 2-Färbung
der Kanten
des Kn und eine Zahl k ∈ N, so dass eine Farbklasse mindestens
(1 − ε) n2 Kanten aber trotzdem keinen einfarbigen Kk enthält.
2. Zeigen Sie, dass die Menge aller Primzahlen keine unendlich lange arithmetische Progression enthalten kann.
3. Zeigen Sie, dass ES(k) ≤ 22k .
88
Kapitel V. Ramseytheorie
Kapitel VI
Probabilistische Methoden
In Kapitel IV haben wir uns explizit um die Konstruktion von regelmäßigen diskreten Strukturen gekümmert. Auch in Kapitel V war die – gerade noch vermiedene
oder bereits erzwungene – Existenz von lokalen Regionen mit hohem Ordnungsgrad das Leitmotiv.
Nehmen wir zum Beispiel die (noch zu beweisende!) untere Schranke aus
dem Satz 15.1, also 2k/2 < R(k). Diese Ungleichung ist gleichbedeutend damit,
nachzuweisen, dass es eine rot-blau–Färbung der Kanten des vollständigen Graphen auf 2k/2 Knoten gibt, die weder eine rote noch eine blaue Clique der Größe
k enthält. Mit anderen Worten: die beiden Farben rot und blau müssen relativ
gleichmäßig auf die Kantenmenge verteilt werden, so dass es nirgendwo zu massiven Häufungen kommt. Überraschenderweise besteht die einzige derzeit bekannte
Methode um dieses Ziel zu erreichen, darin, die Kanten zufällig rot-blau zu färben
- siehe Abschnitt 18.
Dies ist bereits der Kerngedanke der sogenannten probabilistischen Methode: Um die Existenz eines diskreten Objekts mit einer gewünschten Eigenschaft
nachzuweisen, führen wir ein geeignetes Zufallsexperiment durch. Anschließend
zeigen wir, dass unser zufällig erzeugtes Objekt mit positiver Wahrscheinlichkeit
die gewünschte Eigenschaft hat. Daraus folgt dann, dass es ein solches Objekt auch
geben muss – denn andernfalls wäre die Wahrscheinlichkeit ja gleich 0 gewesen.
Im folgenden Abschnitt führen wir zunächst in die elementaren Grundlagen
der diskreten Wahrscheinlichkeitsrechnung ein, und erläutern diese unter anderem
an der bereits erwähnten unteren Schranke für die Ramseyzahl. Anschließend studieren wir ein klassisches Problem aus der Graphentheorie und zeigen wiederum
mit Hilfe der probabilistischen Methode, dass es Graphen ohne kurze Kreise“ gibt,
”
die aber trotzdem eine beliebig hohe chromatische Zahl haben. Wir beschließen
das Kapitel mit Anwendungen der probabilistischen Methode in der Geometrie.
90
18
Kapitel VI. Probabilistische Methoden
Grundlagen und Ramseyzahlen
Wir stellen im Folgenden zunächst die notwendigen Grundkonzepte vor.
Definition (Wahrscheinlichkeitsraum und Erwartungswert). Ein diskreter Wahrscheinlichkeitsraum
P ist eine endliche Menge Ω zusammen mit einer Funktion p :
Ω → [0, 1] die ω∈Ω p(ω) = 1 erfüllt. Ein Ereignis ist eine Teilmenge A ⊆ Ω, die
Wahrscheinlichkeit von A wird bezeichnet mit
X
P [A] :=
p(ω).
ω∈Ω
Eine Zufallsvariable ist eine Funktion X : Ω → R, ihr Erwartungswert ist definiert
als
X
E [X] :=
X(ω)p(ω).
ω∈Ω
Für die Wahrscheinlichkeit des Ereignisses A := {ω : X(ω) = `} schreiben
wir auch abkürzend
X
P [X = `] =
p(ω).
ω : X(ω)=`
Hier sind einige elementare Aussagen über den Erwartungswert einer Zufallsvariable.
Satz 18.1 (Linearität des Erwartungswerts und Markov’sche Ungleichung).
Pk
a) Seien X1 , . . . , XP
k Zufallsvariablen und λ1 , . . . , λk ∈ R. Setze X :=
i=1 λi Xi .
Dann gilt E [X] = i λi E [Xi ].
b) Sei X eine Zufallsvariable, die nur die Werte 0 und 1 annimmt. Dann ist
X
X
E [X] =
X(ω)p(ω) =
p(ω) = P [X = 1].
ω∈Ω
ω∈Ω:X(ω)=1
c) Sei X eine Zufallsvariable, die nur nicht-negative Werte annimmt, und sei
t > 0. Dann ist
E [X]
.
P [X ≥ t] ≤
t
d) Insbesondere gilt
P [X ≥ 1] ≤ E [X].
Als eine erste Aufwärmübung beweisen wir den folgenden einfachen Satz.
·
Satz. Jeder Graph G = (V, E) besitzt eine Bipartition V = A ∪ B, so dass mindestens die Hälfte der Kanten aus E zwischen A und B verläuft.
Beweis. Wir führen das folgende Zufallsexperiment durch: jeden Knoten aus V
weisen wir zufällig und unabhängig von den anderen Knoten mit Wahrscheinlichkeit 1/2 der Menge A und mit Wahrscheinlichkeit 1/2 der Menge B zu.
18. Grundlagen und Ramseyzahlen
91
Für eine Kante e = {x, y} setzen wir die Zufallsvariable Xe auf 1, wenn einer
ihrer beiden Endknoten in A und der andere in B landet. Dann gilt, dass
P [Xe = 1]
= P [x ∈ A und y ∈ B] + P [x ∈ B und y ∈ A] =
1 1
1
+ =
4 4
2
und damit
P lässt sich die erwartete Anzahl von Kanten zwischen A und B, also
X := e∈E Xe , im Erwartungswert durch
X
X
E [X] =
E [Xe ] =
P [Xe = 1] = |E|/2
e∈E
e∈E
berechnen. Also muss es aber eine Aufteilung der Knoten in Mengen A und B
geben, bei der X ≥ |E|/2 ist, denn wäre bei jeder Aufteilung X < |E|/2, dann
könnte im Erwartungswert X = |E|/2 nicht erreicht werden.
Nun wie versprochen zum Beweis der unteren Schranke für die Ramseyzahl
aus Satz 15.1:
Für jede natürliche Zahl k ≥ 3 gilt R(k) > 2k/2 .
Beweis. Um die behauptete Ungleichung zu beweisen, müssen wir zeigen, dass
es eine 2-Färbung der Kanten des vollständigen Graphen auf n = 2k/2 Knoten
gibt, die keinen einfarbigen Kk enthält.
Dazu machen wir das folgende Zufalls
experiment: wir färben jede der n2 zufällig und unabhängig voneinander mit
Wahrscheinlichkeit 1/2 rot und mit Wahrscheinlichkeit 1/2 blau.
Unser Ziel ist es nun, zu zeigen, dass mit positiver Wahrscheinlichkeit diese
zufällige Färbung die gewünschte Eigenschaft hat. Für eine Teilmenge S ⊆ [n]
der Größe k setzen wir die Zufallsvariable XS auf 1, wenn alle Kanten in G[S]
einfarbig sind, und andernfalls auf 0. Offensichtlich gilt für jedes solche S, dass
P [XS = 1]
= P [alle Kanten in G[S] rot] + P [alle Kanten in G[S] blau]
k
k
1 (2)
= 2·
= 21−(2) .
2
Betrachte nun die Zufallsvariable
X :=
X
XS ,
S∈([n]
k )
also die Anzahl aller einfarbigen Kk . Wir schätzen ihren Erwartungswert wie folgt
ab:
X
X
n 1−(k2)
P [X ≥ 1] ≤ E [X] =
E [XS ] =
P [XS = 1] =
2
k
S
S
2
<
nk 1−k2 /2+k/2
2k /2 1−k2 /2+k/2
21+k/2 k≥3
2
=
2
=
≤ 1.
k!
k!
k!
92
Kapitel VI. Probabilistische Methoden
Damit gilt nun umgekehrt für das Gegenereignis P [X = 0] > 0, und das bedeutet,
dass mit positiver Wahrscheinlichkeit kein einfarbiger Kk vorliegt. Somit muss also
eine entsprechende Färbung existieren, und dies war zu zeigen.
Bemerkung. Durch etwas genauere Rechnung folgt: R(k) ≥
19
k
√
e 2
k
· 22 .
Graphen ohne kurze Kreise
Wir hatten bereits die triviale Ungleichung ω(G) ≤ χ(G) kennengelernt: Cliquen
stellen eine einfache, lokale Struktur dar, die die chromatische Zahl eines Graphen
in die Höhe treibt. In diesem Abschnitt befassen wir uns mit der Frage, ob es auch
noch andere Gründe gibt, und ob es Graphen gibt, die lokal einfach strukturiert
sind aber global eine (im Sinne der chromatischen Zahl) hohe Komplexität haben.
In einem ersten Schritt werden wir dazu eine deterministische Konstruktion
von Graphen angeben, die keine Dreiecke enthalten (also ω(G) = 2 erfüllen), aber
beliebig hohe chromatische Zahl besitzen. Dazu vorweg ein kleines Lemma:
Lemma 19.1. Sei G = (V, E) ein Graph mit χ(G) = k und f : V → [k] eine kFärbung von G. Dann gibt es für jede Farbe c ∈ [k] einen Knoten v ∈ V , so dass
f (v) = c und in der Nachbarschaft von v die Färbung f jede Farbe aus [k] \ {c}
benutzen muss.
Beweis. Sei Vc die Teilmenge aller Knoten mit f (v) = c. Angenommen, die Behauptung wäre falsch. Dann gäbe es eine Farbe c ∈ [k], so dass f für jeden Knoten
v ∈ Vc noch eine Farbe cv ∈ [k] \ {c} vorrätig hätte, die an keinen der Nachbarn
von v vergeben ist. In diesem Fall würden wir alle Knoten v ∈ Vc statt mit c lieber
mit cv färben. Die neue Färbung wäre wieder eine zulässige Färbung, weil zwei
Knoten aus Vc nicht benachbart sind (sonst wäre f keine zulässige Färbung gewesen) und Konflikte zwischen Knoten aus Vc und ihren Nachbarn per Konstruktion
vermieden wurden. Da die neue Färbung die Farbe c nicht mehr benutzt, hätten
wir einen Widerspruch zur Voraussetzung χ(G) = k.
Satz 19.2. Mycielski–Konstruktion Zu jeder natürlichen Zahl k ∈ N existiert ein
Graph Gk mit ω(Gk ) = 2 und χ(Gk ) ≥ k.
Beweis. Die Konstruktion von Gk (und der Nachweis ihrer Korrektheit) verläuft
rekursiv über k. Für k ≤ 3 setzen wir Gk := C5 . Offensichtlich gilt ω(C5 ) = 2 und
χ(C5 ) = 3.
Sei nun Gk = (Vk , Ek ) konstruiert. Seine Knoten seien mit {v1 , . . . , vn } := Vk
bezeichnet. Wir setzen Gk+1 := (Vk+1 , Ek+1 ), wobei die neue Knotenmenge aus
Vk+1 := {v1 , . . . , vn , w1 , . . . , wn , z} bestehe und die neue Kantenmenge durch
Ek+1 := Ek ∪ {{vi , wj } : i 6= j ∈ [n] und {vi , vj } ∈ Ek } ∪ {{wi , z} : i ∈ [n]}
definiert sei.
19. Graphen ohne kurze Kreise
93
Wir überprüfen zunächst, dass Gk+1 kein Dreieck enthält. Da Gk dreiecksfrei
ist und es in Gk+1 keine Kanten der Form {wi , wj } oder {vi , z} oder {vi , wi }
mit i, j ∈ [n] gibt, könnte ein Dreieck in Gk+1 nur von der Form vi , vj , w` mit
i 6= j 6= ` 6= i sein. Aber dann erfordern die Kanten {vi , w` } bzw. {vj , w` } die
Existenz der Kanten {vi , v` } bzw. {vj , v` } in Gk , die dann mit der Kante {vi , vj }
ein Dreieck in Gk schließen würde, im Widerspruch zur Dreiecksfreiheit von Gk .
Nun zur chromatischen Zahl von Gk+1 . Wir nehmen im Widerspruch zur Behauptung an, dass es eine k-Färbung f von Gk+1 gäbe. Da Gk+1 nach Konstruktion Gk als Subgraphen enthält, ist nach Induktion klar, dass k ≤ χ(Gk ) ≤ χ(Gk+1 ).
Mit Lemma 19.1 folgt dann, dass es für jede Farbe c ∈ [k] einen Knoten vi ∈ Vk
gibt, bei dem die Farbe c erzwungen ist, weil in der Nachbarschaft NGk (vi ) bereits
alle anderen Farben c0 ∈ [k] \ {c} durch f vergeben sind. Da nach Konstruktion
NGk+1 (wi )∩Vk = NGk (vi ) muss daher f (vi ) = f (wi ) gelten. Da f alle k Farben aus
[k] in der Menge Vk benutzt, tauchen diese somit auch in der Menge {w1 , . . . , wn }
auf. Nun ist aber der Knoten z zu allen Knoten aus {w1 , . . . , wn }, und daraus
folgt, dass z nicht mit einer Farbe aus [k] gefärbt werden kann, im Widerspruch
zur Annahme, dass f eine k-Färbung von Gk+1 ist.
Wir gehen nun noch einen Schritt weiter und zeigen die Existenz von Graphen, die erstens eine beliebig hohe chromatische Zahl haben, obwohl sie zweitens
keine Kreise kurzer Länge haben. Mit anderen Worten: sie sehen lokal so einfach
aus wie ein Baum, haben aber global eine hohe Komplexität.
Satz. Zu jedem fest gewählten k, l ∈ N existiert ein Graph G∗ mit χ(G∗ ) ≥ k, der
keine Kreise der Länge ≤ l enthält.
Beweis. Im Folgenden nennen wir einen Kreis der Länge höchstens l einen “kurzen
Kreis”. Wähle γ ∈ R so, dass 0 < γ < 1/l, und setze p := nγ−1 . Sei
G ein
zufälliger Graph mit Knotenmenge [n], bei dem jede der möglichen n2 Kanten
mit Wahrscheinlichkeit p existiere. Sei X die Anzahl kurzer Kreise in G. Es gilt:
E [X] ≤
l
X
ni p i =
X
i = 3l (nγ )i ≤ lnγl = o(n),
i=3
und daraus folgt mit Hilfe der Markov Ungleichung (siehe Satz 18.1 c)), dass
P [X ≥ n/2] ≤ E [X]/(n/2) = o(1).
(19.1)
G hat also eventuell kurze Kreise, aber nicht viele. Wie ist es um die chromatische
Zahl bestellt? Setze x := d p3 ln ne. Es gilt
P [α(G) ≥ x] ≤
x
n
(1 − p)(2) ≤ nx e−px(x−1)/2 = (ne−p(x−1)/2 )x = o(1), (19.2)
x
wegen p(x − 1)/2 > (ln n).
94
Kapitel VI. Probabilistische Methoden
Sei n nun so groß, dass die Wahrscheinlichkeiten in (19.1) und (19.2) beide
kleiner als 1/2 sind. Somit existiert ein Graph G mit weniger als n/2 kurzen
Kreisen und α(G) < x. Entferne aus jedem kurzen Kreis in G einen Knoten und
erhalte den neuen Graphen G∗ . Dieser hat noch mindestens n/2 Knoten, keine
kurzen Kreise und seine chromatische Zahl erfüllt:
χ(G∗ ) ≥
|G∗ |
n/2
n
np
nγ
≥
≥
=
=
≥ k,
∗
α(G )
α(G)
2x
6 ln n
6 ln n
für n groß genug.
20
Dreiecke
Wir betrachten das Einheitsquadrat U in der Euklidischen Ebene. Gesucht sind
Punktkonfigurationen, so dass jedes aufgespannte Dreieck einen möglichst großen
Flächeninhalt hat.
Satz. Es gibt n Punkte P1 , . . . , Pn in U , so dass der Flächeninhalt jedes Dreiecks
Pi Pj Pk mindestens 1/(100n2 ) beträgt.
Beweis. Wir wollen hier erst eine deterministische Konstruktion kennenlernen.
Betrachte statt U zunächst das Gitter [0, n − 1]2 ⊆ Zn 2 für n prim und die n
Punkte Pi = (i, i2 mod n) mit i = 0, 1, 2, . . . , n − 1. Man kann einsehen, dass
keine drei Punkte Pi , Pj , Pk auf einer Geraden y = xm + b liegen (weil sonst
die Parabel x2 − xm − b = 0 drei Nullstellen hätte), somit haben alle Dreiecke
positiven Flächeninhalt. Da die Punkte alle auf Gitterpunkten liegen, müssen die
Flächeninhalte von der Form k/2 mit k ∈ N+ sein (das folgt entweder als Korollar
aus dem Satz von Pick oder ganz elementar durch Ergänzen des Dreiecks zu einem
Rechteck), und haben damit mindestens Flächeninhalt 1/2. Nach Reskalierung um
den Faktor n − 1 ergibt sich dadurch ein Mindestflächeninhalt von 1/(2(n − 1)2 ).
Nun zu dem probabilisitischen Ansatz. Als Vorüberlegung werfen wir zunächst
nacheinander drei Punkte P, Q, R in das Einheitsquadrat U , zufällig gleichverteilt.
Angenommen, P sei bereits positioniert, werfe nun Q hinterher. Die Zufallsvariable
x bezeichne den Abstand von Q zu P . Es gilt
P [b ≤ x ≤ b + ∆b] ≤ π(b + ∆b)2 − πb2 = 2πb∆b + π(∆b)2
Für db = ∆b → 0 wollen wir das durch P [b ≤ x ≤ b + ∆b] ≤ 2πbdb abschätzen.
Sei nun also auch Q positioniert, mit Abstand b zu P , und wir werfen R hinterher.
Sei A die Zufallsvariable, die den Flächeninhalt des Dreiecks P QR bezeichnet und
h der Abstand von R zur Gerade durch P und Q. Dann ist A = hb/2 und daher
√
√
4ε 2
.
P [A ≤ ε|dist(P, Q) = b] ≤ 2h 2 ≤
b
Somit ist
Z √2 √
4ε 2
P [A ≤ ε] ≤
2πbdb = 16πε.
b
0
20. Dreiecke
95
Wir werfen nun zufällig gleichverteilt 2n Punkte P1 , . . . , P2n nach U . Ein Dreieck
Pi Pj Pk mit Fläch A ≤ 1/(100n2 ) =: ε wird als klein bezeichnet. Sei X die Anzahl
kleiner Dreiecke, dann ist
2n
(2n)3 16π
< n.
E [X] ≤
16πε ≤
3
6 100n2
Es gibt also 2n Punkte mit weniger als n kleinen Dreiecken. Entferne nun als jedem
kleinen Dreieck einen Punkt, und wir sind fertig.
Die zuletzt angegebene probabilistische Konstruktion ist zwar schlechter (um
einen konstanten Faktor) als die zuerst angegebene determinsistische, lässt sich
aber mit einigem Aufwand verbessern, so dass man die Existenz von Punktmengen
mit minimalem Dreiecksflächeninhalt Ω(ln n/n2 ) zeigen kann. Das ist zur Zeit der
Rekord, die beste bekannte obere Schranke ist O(1/n8/7 ).
Wir bleiben bei Dreiecken, betrachten aber statt des Flächeninhalts die Winkel und wechseln aus dem R2 in den Rn . Ein Dreieck, dessen Innenwinkel alle kleiner als π/2 sind, bezeichnen wir als spitzwinklig. Unser Ziel ist es, möglichst viele
Punkte im Rn unterzubringen, so dass alle aufgespannten Dreiecke spitzwinklig
sind.
n
Satz 20.1. Zu jedem n ∈ N existiert eine Menge {a1 , . . . , am } mit m = b 12 √23 c
und ai ∈ Rn für alle i ∈ [m], so dass alle Dreiecke, die durch diese Punkte aufgespannt werden, spitzwinklig sind.
Beweis. Für die Konstruktion dieser Punkte beschränken wir uns (freiwillig!) auf
Punkte, deren Komponenten nur aus 0 oder 1 bestehen. Das hat den Vorteil, dass
die von ihnen aufgespannten Dreiecke keinen Winkel enthalten, der größer als π/2
ist – was sich wie folgt leicht verifizieren lässt: Wenn x, y, z ∈ {0, 1}n ist, dann ist
der Winkel θ = ∠(xzy) gegeben durch
cos θ =
hx − z, y − zi
.
||x − z|| · ||y − z||
Somit ist θ > π/2 genau dann, wenn hx − z, y − zi < 0, was wegen der 0/1Komponenten von x, y und z aber nicht geht, da x` − z` = −1 impliziert, dass
y` − z` ≤ 0.
Darüberhinaus folgt, dass
θ = π/2
⇔
hx − z, y − zi = 0
⇔
∀` ∈ [n] : x` = z` oder y` = z`
⇔
∀` ∈ [n] : ¬(x` = y` = 1 ∧ z` = 0) und ¬(x` = y` = 0 ∧ z` = 1).
(20.3)
Damit ist unser Ziel klar: wir wollen Punkte a1 , . . . , am ∈ Rn konstruieren,
bei denen für kein Tripel ai aj ak von Punkten die Bedingung (20.3) erfüllt ist.
96
Kapitel VI. Probabilistische Methoden
Dazu erzeugen wir zunächt wie folgt eine Familie {a1 , . . . , a2m } mit ai ∈
{0, 1}n : jedes ai wird dadurch erzeugt, dass wir jede Komponente (ai )` mit Wahrscheinlichkeit 1/2 auf 0 und mit Wahrscheinlichkeit 1/2 auf 1 setzen, und das in
2m voneinander unabhängigen Durchläufen.
Für ` ∈ [n] und {i, j, k} ∈ [2m]
definieren wir zwei Ereignisse
3
Eijk (`) := (ai )` = (aj )` = 1∧(ak )` = 0 und Fijk (`) := (ai )` = (aj )` = 0∧(ak )` = 1.
Offensichtlich gilt für ein fest gewähltes ` ∈ [n]:
P [Eijk (`)] = P [Fijk (`)] = (1/2)3 = 1/8
und, da die Ereignisse disjunkt sind,
P [Eijk (`) ∨ Fijk (`)] = 1/4.
Daraus folgt, dass
P [¬Eijk (`) ∧ ¬Fijk (`)] = 3/4.
Da für ` 6= `0 die Ereignisse Eijk (`) und Eijk (`0 ) unabhängig voneinander sind,
erhalten wir insgesamt, dass


^
i j k
P a , a , a erfüllen (20.3) = P 
(¬Eijk (`) ∧ ¬Fijk (`)) = (3/4)n .
`∈[n]
Es sei nun X die Anzahl der Tripel {i, j, k} ∈ [2m]
3 , die (20.3) erfüllen. Dann gilt
2m
1
E [X] = 3
(3/4)n = m(2m−1)(2m−2)(3/4)n < m·4m2 (3/4)n ≤ m4( 4n /3n )(3/4)n = m.
4
3
Insbesondere gibt es also eine Familie {a1 , . . . , a2m }, bei der höchstens m Tripel
ai , aj , ak die Bedingung (20.3) erfüllen. Für jedes solche Tripel löschen wir einen
beliebigen der drei Punkte ai , aj , ak , reduzieren die Punkte anschließend (falls
notwendig) noch bis wir genau m Punkte übrig behalten und erhalten auf diese
Weise eine Punktfamilie m mit der gewünschten Eigenschaft.
Kapitel VII
Algebraische Methoden
Die Philosophie hier ...
grundidee 1: In einem VR mit Dim n gibt es höchstens n lin unabh Vektoren.
21
Zyklenraum
22
Intersecting families
Dieses Kapitel diskutiert die folgende Frage: wieviele verschiedene Teilmengen
einer Grundmenge kann es geben, wenn alle bestimmte Eigenschaften erfüllen
müssen?
Satz 22.1 (Ungleichung von Fisher). Sei n ∈ N und k ∈ [n] beliebig. Wenn
A1 , . . . , Am paarweise verschiedene Teilmengen der Menge [n] sind, für die |Ai ∩
Aj | = k für alle 1 ≤ i 6= j ≤ m gilt, dann folgt m ≤ n.
Beweis. Inzidenzvektoren plus grundidee 1
Jetzt von Inzidenzvektoren zu Polynomen.
Lemma. Sei m ∈ N, M eine Menge, K ein Körper und M K der Vektorraum aller
Funktionen f : M → K.
Angenommen, es gebe Funktionen fi ∈ M k und Elemente vi ∈ M mit i ∈ [m],
so dass
a) fi (vi ) 6= 0 für alle i ∈ [m],
b) fi (vj ) = 0 für alle 1 ≤ j < i ≤ m.
Dann bildet {f1 , . . . , fm } eine Familie linear unabhängiger Vektoren in M K .
Beweis. durch Widerspruch, 3 Zeilen
Jetzt drei Verallgemeinerungen von Satz 22.1.
98
Kapitel VII. Algebraische Methoden
Sei L ⊆ N0 eine endliche Menge und F eine Familie von Teilmengen der
Menge [n]. Wir nennen F eine F-Schnittfamilie, wenn für alle A, B ∈ L mit
A 6= B gilt, dass |A ∩ B| ∈ L ist.
Satz 22.2. Sei L ⊆ N0 eine endliche Menge, A eine Menge mit |A| = n und
F = {A1 , . . . , Am } eine L-Schnittfamilie mit Ai ⊆ A für alle i ∈ [m]. Dann gilt:
|L| X
n
m≤
.
i
i=0
Wir benötigen noch die folgende Restklassen–Variante des letzten Satzes, für
die wir die Notation r ∈ L (mod p) einführen, wenn es ein ` ∈ L gibt, so dass
r = ` (mod p) gilt.
Satz 22.3. Sei L ⊆ Z und p eine Primzahl, A eine Menge mit |A| = n und
F = {A1 , . . . , Am } eine Familie mit Ai ⊆ A für alle i ∈ [m], so dass
a) |Ai | 6∈ L (mod p) für alle i ∈ [m],
b) |Ai ∩ Aj | ∈ L (mod p) für alle i, j mit 1 ≤ j < i ≤ m.
Dann gilt:
|L| X
n
.
m≤
i
i=0
Folgerung. Sei p eine Primzahl, A eine Menge mit |A| = 4p − 1 und F =
{A1 , . . . , Am } eine Familie mit Ai ⊆ A und |Ai | = 2p − 1 für alle i ∈ [m], so
dass
|Ai ∩ Aj | =
6 p−1
für alle i, j ∈ [m],
dann gilt:
4p − 1
m≤2·
< 1, 75484p−1 .
p−1
Anwendungen folgen in den folgenden Abschnitten.
23
Färbungen des Rn
Bisher haben wir uns hauptsächlich mit Partitionen von endlichen Mengen beschäftigt.
Unsere Methoden sind aber hinreichend stark, um auch darüberhinaus zu funktionieren. Wir betrachten hier den Raum Rn mit der euklidischen Metrik
p
d(x, y) := xT y
für alle x, y ∈ Rn .
Kann man Rn so in Mengen M1 , . . . , Mk partitionieren, dass zwei Punkte
x, y ∈ Rn mit d(x, y) = 1 nie in der gleichen Klasse Mi liegen? Und, wenn ja, wie
groß muss die Anzahl k der Klassen dafür sein?
23. Färbungen des Rn
99
Wir können diese Frage auch als Graphen–Färbungsproblem formulieren.
Dazu definieren wir den sogenannten n-dimensionalen unit distance Graphen Un ,
dessen (unendliche) Knotenmenge aus der Menge Rn besteht und zwei Knoten
x, y ∈ Rn genau dann eine Kante bilden, wenn d(x, y) = 1, und möchten nun seine
chromatische Zahl χ(Un ) bestimmen.
Der Fall n = 1 ist noch einfach, denn hier gilt offensichtlich χ(Un ) = 2 (siehe
Übungsaufgabe ??). Bereits für die Ebene ist die genaue Antwort nicht bekannt,
man weiß derzeit lediglich, dass
4 ≤ χ(U2 ) ≤ 7.
Dies lässt sich wie folgt einsehen: Für die untere Schranke genügt es, den Graphen
in Abbildung ?? zu betrachten, der offensichtlich ein Subgraph von U2 ist und
chromatische Zahl 4 hat.
Bild
Um die obere Schranke zu beweisen, partitioniert man die Ebene in reguläre
Sechsecke, die einen Duchmesser von 1 − ε haben, und färbt dann die Punkte wie
in Abbildung ?? angegeben.
Bild
Das Ziel dieses Abschnitts ist es, untere und obere Schranken für χ(Un ) für
allgemeine n anzugeben. Die beste derzeit bekannte obere Schranke ist χ(Un ) ≤
(3+ε)n und stammt von [?], wir beschränken uns hier auf den Beweis der folgenden
Abschätzung:
Satz 23.1.
χ(Un ) ≤ 9n .
Beweis. ...
Satz 23.2. Es gibt ein n0 ∈ N, so dass für alle n ≥ n0 gilt:
χ(Un ) ≥ 1, 1n .
Beweis. Sei δ > 0 und Unδ der Graph mit Knotenmenge Rn bei dem zwei Knoten
x, y ∈ Rn genau dann eine Kante bilden, wenn d(x, y) = δ ist. Mittels ι : Rn → Rn ,
das durch ι(x) := δx definiert ist, haben wir einen Isomorphismus von Un nach
Unδ , und damit gilt χ(Un ) = χ(Unδ ), und das funktioniert auch dann noch, wenn
δ = δ(n) eine Funktion von n ist.
Wir
100
Kapitel VII. Algebraische Methoden
Literaturverzeichnis
[A]
M. Aigner, Diskrete Mathematik, 6. Auflage, Vieweg, 2006.
[GRS] R.L. Graham, B.L. Rothschild, J.H. Spencer, Ramsey Theory, 2nd edition,
Wiley, 1989.
[MN] J. Matousek und J. Nesetril, Diskrete Mathematik, 2. Auflage, Springer,
2007.
[S]
A. Steger, Diskrete Strukturen, Band 1. 1. Auflage, Springer, 2001.
Herunterladen