Beruflich Dokumente
Kultur Dokumente
Vo r w o r t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2. Primzahlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Primzahlen und zusammengesetzte Zahlen . . . . . . . . . . . . . . . . . 28
Der Unendlichkeitssatz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Die Primfaktorzerlegung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Fragen über Primzahlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3. Der größte gemeinsame Teiler . . . . . . . . . . . . . . . . . . . . . . . . . . 45
ggT und kgV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Der Euklidische Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Kettenbrüche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Linearkombinationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Der Chinesische Restsatz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
2. Abschnitt Graphentheorie . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
1. Graphen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Der allgemeine Begriff eines Graphen . . . . . . . . . . . . . . . . . . . . . 102
Einfache Graphen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Darstellungen für Graphen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Grundbegriffe der Graphentheorie . . . . . . . . . . . . . . . . . . . . . . . . 108
Vollständige Graphen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Bipartite Graphen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Kreise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Teilgraphen und Untergraphen . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
5. Bäume . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Bäume und Wälder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
Aufspannende Bäume und Breitensuche . . . . . . . . . . . . . . . . . . . . 180
Anwendungen der Breitensuche . . . . . . . . . . . . . . . . . . . . . . . . . . 183
Die Tiefensuche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Optimale Grenzkanten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
A n h ä n g e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
1. Logik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
Logische Zeichen im Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . 243
Aussagenlogische Formeln und Tautologien . . . . . . . . . . . . . . . . . 244
Prädikatenlogische Formeln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
Quantorenregeln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Zur Bedeutung der Formalisierung . . . . . . . . . . . . . . . . . . . . . . . . 252
2. Mengen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
Teilmengen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
Komprehensionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
Boolesche Mengenoperationen . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
Allgemeine Mengenoperationen . . . . . . . . . . . . . . . . . . . . . . . . . . 258
3. Relationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
4. Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Abbildungseigenschaften von Funktionen . . . . . . . . . . . . . . . . . . 262
Monotonie-Eigenschaften . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
Bild und Urbild . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
Umkehrfunktion, Verknüpfung, Einschränkung . . . . . . . . . . . . . 264
Die Folgennotation einer Funktion . . . . . . . . . . . . . . . . . . . . . . . . 265
Transformationen und Operationen . . . . . . . . . . . . . . . . . . . . . . . 266
Mächtigkeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
6. Symbolverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
7. Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
Der vorliegende zweiteilige Band ist die Fortsetzung meiner Einführung in die
Wissenschaft der Mathematik für das Fach und das Lehramt an Gymnasien. Wie
im Vorwort des ersten Bandes beschrieben kann er parallel oder im Anschluss an
den ersten Band gelesen und in der Lehre verwendet werden.
In die Gestaltung der beiden Bände sind viele Erfahrungen von Studentinnen
und Studenten eingeflossen, die mit den ersten Versionen des Werks gearbeitet
haben. Damit wird der Text seinem Ziel, Brücken sowohl in Richtung Schule als
auch zum weiteren Studium der Mathematik zu schlagen, hoffentlich noch bes-
ser gerecht.
Erneut möchte ich mich bei allen Leserinnen und Lesern für ihre zahlreichen
Rückmeldungen herzlich bedanken.
Oliver Deiser
Elementare Zahlentheorie
Konvention
Im Folgenden bezeichnen a, b, c, d, …, n, m, … ganze Zahlen, wenn nichts
anderes gesagt wird.
Die ganzen Zahlen sind mit einer linearen Ordnung ausgestattet: Für je zwei
Zahlen a, b gilt a ≤ b oder b ≤ a. Es gelten die bekannten Regeln, etwa
a ≤ b und b ≤ c impliziert a ≤ c,
a ≤ b und b ≤ a genau dann, wenn a = b,
a ≤ b genau dann, wenn −b ≤ −a.
In der Zahlentheorie werden zwar auch Eigenschaften von speziellen Darstel-
lungen von Zahlen untersucht − etwa: n ist genau dann durch 3 teilbar, wenn die
Quersumme von n in Dezimaldarstellung durch 3 teilbar ist −, im Zentrum steht
aber ein darstellungsfreier Blick auf die Zahlen. Hierzu ist eine Zahlengerade
nützlich:
• • • • • • • • • • •
… −3 −2 −1 0 1 2 3 …
Die Dezimalzahlen − oder andere Systeme − fassen wir eher als Namen für die
Elemente der Zahlengeraden auf und nicht als die Elemente selbst. Die Ele-
mente, hier visualisiert durch Punkte, müssen wir gar nicht genau definieren, da
wir uns letztendlich nur auf arithmetische Eigenschaften stützen. Dies soll nicht
heißen, dass eine mengentheoretische oder algebraische Konstruktion der Zahl-
bereiche uninteressant oder unwichtig wäre; eine solche Konstruktion ist aber
für unsere Ziele nicht nötig.
Eine Zahlengerade aus Punkten eignet sich für viele Visualisierungen von
zahlentheoretischen Begriffsbildungen:
Beispiele
(1) Die ganzzahligen Vielfachen der 3 erhalten wir, indem wir die
Zahlengerade von dem ausgezeichneten Element 0 aus startend in
Dreiersprüngen nach links und rechts durchlaufen.
(2) Starten wir bei der 2 anstelle der 0 in Dreiersprüngen, so erhalten wir
alle ganzen Zahlen, die bei Division durch 3 den Rest 2 hinterlassen:
…, −7, −4, −1, 2, 5, 8, …
Damit ist anschaulich geworden, dass −1 bei Division durch 3 den Rest
2 besitzt und nicht etwa 1. Der Rest von a bei Division durch 3 ist
erklärt als nach links gemessener Abstand von a zu einem Vielfachen
der 3. Der Messpunkt von a = −1 ist −3.
Beispiel
Mit Hilfe von Zählsteinen lässt sich beispielsweise die Quadratzahl 4 und
die Rechteckszahl 12 so visualisieren:
• • • • • •
• • • • • •
• • • •
Natürlich könnte man die 12 als auch Rechteck mit den Seitenlängen 2 und
6 darstellen. Sieben Zählsteine lassen sich dagegen nicht als echtes
Rechteck anordnen, 7 ist eine Primzahl.
Beispiele
±2| ±10, ±2 | 10, 0 | 0, 1| 0, −1| 0, nicht(3 | 10), nicht(0| 1).
±
10
-5
-10
-10 -5 0 5 10
100
50
-50
-100
-100 -50 0 50 100
Definition (Linearkombination)
Eine Zahl c heißt eine Linearkombination (in Z) von a und b, falls n, m
existieren mit c = n a + mb.
Wir weisen nochmal darauf hin, dass n und m nach unserer Vereinbarung auch
negativ sein können. In Linearkombinationen sind ausdrücklich auch negative
Koeffizienten n und m zugelassen.
Die Eigenschaft (T7) besagt nun einfach: Ein Teiler zweier Zahlen ist auch ein
Teiler jeder Linearkombination der beiden Zahlen.
Beispiele
13 = 2 ⋅ 4 + 1 ⋅ 5, 12 = 3 ⋅ 4 + 0 ⋅ 5,
0 = 0 ⋅ 4 + 0 ⋅ 5, − 1 = 1 ⋅ 4 − 1 ⋅ 5 = 1 ⋅ 4 + (−1) ⋅ 5.
Beweis
zur Existenz:
Sei q die größte ganze Zahl mit q d ≤ a (bestmögliche Annäherung von
links an a mit Schrittweite d). Weiter sei r = a − qd. Dann gilt r ≥ 0 und
a = qd + a − qd = qd + r.
Nach maximaler Wahl von q ist (q + 1)d > a, sodass d > a − qd = r.
Damit sind q und r wie gewünscht.
zur Eindeutigkeit:
Seien q1 , q2 , r1 , r2 ganze Zahlen mit
a = q1 d + r1 = q2 d + r2 mit 0 ≤ r1 ≤ r2 < d.
Dann gilt
r2 − r1 = (q1 − q2 ) d,
sodass r2 − r1 ein Vielfaches von d ist. Wegen 0 ≤ r1 ≤ r2 < d gilt aber
0 ≤ r2 − r1 ≤ d − 1. Damit ist notwendig r2 − r1 = 0, da die 0 das einzige
Vielfache von d im Intervall von 0 bis d − 1 ist. Folglich ist r1 = r2 . Aus
0 = r2 − r1 = (q1 − q2 ) d
ergibt sich nun wegen d ≠ 0, dass q1 = q2 .
Beispiele
10 = 3 ⋅ 3 + 1, 10 = 2 ⋅ 5 + 0, 10 = 0 ⋅ 18 + 10,
4 = 0 ⋅ 5 + 4, −4 = (−1) ⋅ 5 + 1, 23 = 4 ⋅ 5 + 3, −23 = (−5) ⋅ 5 + 2.
-10 -9 -8 -7 -6 -5 -4 -3 -2 -1 1 2 3 4 5 6 7 8 9 10
Der Rest der Division durch 5 dargestellt als Funktion von Z nach { 0, …, 4 }
Die Kongruenzrelation
Wir betrachten nun Zahlen, die bei der Division durch einen Divisor d ≥ 1 den
gleichen Rest haben und in diesem Sinne „ähnlich“ oder „verwandt“ sind. Eine
wichtige Beobachtung hierzu ist:
Beweis
Seien a = q1 d + r1 , b = q2 d + r2 die Divisionen mit Rest von a und b
durch d. Dann gilt
a − b = (q1 − q2 ) d + r1 − r2 mit −d < r1 − r2 < d.
Aus dieser Darstellung lässt sich die Äquivalenz ablesen.
Die Eigenschaften „gleicher Rest bei Division durch d“ und „die Differenz ist
durch d teilbar“ sind nach dem Satz äquivalent, die zweite Eigenschaft erweist
sich aber als leichter zu handhaben. Wir bevorzugen sie deswegen in der folgen-
den Definition, die eine der wichtigsten Begriffsbildungen der Zahlentheorie
beinhaltet.
Statt d für „Divisor“ schreiben wir im Folgenden zumeist m für „Modul“. Der
Begriff geht auf das lateinische Wort „modulus“ für „Maß“ zurück. „Modulo“
bedeutet „mit dem Maß“. Die Relation a ; b mod(m) besagt also, dass a und b
kongruent/gleichwertig/äquivalent sind, wenn sie mit dem Maß m gemessen
werden. Die Verwendung des geometrischen Begriffs der Kongruenz (Überein-
stimmung in Sinne der Deckungsgleichheit) lässt sich so erklären: Zwei Zahlen
a und b sind genau dann kongruent, wenn sie durch Verschiebungen in der
Schrittweite m zur Deckung gebracht werden. Denn der Abstand der Zahlen ist
im Fall der Kongruenz (und nur dann) ein Vielfaches von m.
Wir führen noch alternative Notationen ein:
Notation
Wir schreiben statt a ; b mod(m) auch
a ; b (m) oder a ;m b.
Beispiele
(1) 4 ; 9 (5), 4 ; 4 (5), 4 ; −1 (5).
(2) 0 ; −20 (5), 1 ; −19 (5), 2 ; −18 (5), −1 ; −21 (5).
(3) Da jede ganze Zahl ein Vielfaches der 1 ist, sind je zwei Zahlen
kongruent modulo 1, d. h.:
Für alle a, b gilt a ; b (1).
Die Kongruenz modulo 1 sieht also alle ganzen Zahlen als gleichwer-
tig/äquivalent an.
Eine Relation , auf einer Menge M, die drei Eigenschaften des Satzes erfüllt
(mit a , b statt a ; b (m)), heißt eine Äquivalenzrelation auf M. Der Satz besagt
also, dass für jede Zahl m ≥ 1 die Relation ;m eine Äquivalenzrelation auf den
ganzen Zahlen ist.
Mit Blick auf die Transitivität führen wir noch eine nützliche Vereinfachung
der Notation ein.
Notation
a ; b ; c ; … (m) bedeutet a ; b (m) und b ; c (m) und …
Beispiel
4 ; −1 ; −11 ; −6 ; 4 (5).
Beispiel
Sei m = 10. Dann gilt
3122 ; (3 ⋅ 3)61 ; 961 ; (−1)61 ; −1 ; 9 (10).
Damit ist die 9 die letzte Ziffer der Potenz 3122 in Dezimaldarstellung.
Alternativ können wir auch so argumentieren: Die letzten Ziffern in den
Potenzen 31 , 32 , 33 , … im Dezimalsystem bilden die periodische Folge
3, 9, 7, 1, 3, 9, 7, 1, 3, 9, 7, 1, …
Weiter gilt 122 ; 2 (4), sodass an der Position 122 der periodischen Folge
die 9 steht.
In Oktaldarstellung (m = 8) gilt dagegen
3122 ; (9)61 ; 161 ; 1 (8),
sodass die letzte Ziffer bei dieser Darstellung die 1 ist.
10
-5
-10
-10 -5 0 5 10
40
20
-20
-40
-40 -20 0 20 40
Die zweite Visualisierung zeigt besonders schön, wie die ganzen Zahlen Z
durch eine Kongruenzrelation ;m in m unendliche Klassen untereinander kon-
gruenter Zahlen eingeteilt werden. Bei zeilenweiser Anordnung ergibt sich:
Nicht zuletzt können wir auch gleichmäßige Sprünge auf der Zahlengeraden
betrachten:
-10 -5 0 5 10
Teilbarkeitsregeln
Ist b fest gewählt, so schreiben wir auch kurz zk …z0 statt (zk … z0 )b . Für b = 10
entspricht dies der üblichen Dezimalschreibweise für natürliche Zahlen.
Die eindeutige b-adische Darstellung einer natürlichen Zahl n erhalten wir in-
duktiv durch Division mit Rest mit dem Divisor b. Ist
n = q b + r mit 0 ≤ r < b,
so ist n = (zk …z1 r)b , wobei zk …z1 die eindeutige b-adische Darstellung von q ist.
Beispiel
(10101)2 = 24 + 22 + 20 = 21, (10101)3 = 34 + 32 + 30 = 91,
75 − 1
(66666)7 = 6 ⋅ 74 + … + 6 ⋅ 70 = 6 = 75 − 1 = 16806,
7−1
Beweis
Es gilt 10m ; 1 (3) für alle m ≥ 1. Damit gilt nach den Kongruenzregeln
n = zk 10k + … + z0 100 ; zk 1 + … + z0 1 ; qs(n) (3).
Übungen
Übung 1
Beweisen Sie die Eigenschaften (T1) − (T7) der Teilbarkeitsrelation.
Übung 2
Erstellen Sie eine Tabelle mit Linearkombinationen der Zahlen 12 und 30.
Formulieren Sie eine Hypothese, welche Zahlen als Linearkombinationen
auftreten und welche nicht. Versuchen Sie, Ihre Hypothese zu beweisen.
Übung 3
Betrachten Sie die Tabelle der positiven Divisoren der ersten Zahlen.
Welche Eigenschaften fallen Ihnen auf? Formulieren Sie Hypothesen und
versuchen Sie, Ihre Hypothesen zu begründen oder zu beweisen.
Übung 4
Sei m ≥ 1. Beweisen Sie, dass die Kongruenzrelation ;m reflexiv, symme-
trisch und transitiv ist.
Übung 5
Sei a ≥ 1. Zeigen Sie, dass an ; 1 mod(a − 1) für alle n ≥ 0.
Übung 6
Beweisen Sie die Eigenschaften (K1) − (K5) der Kongruenz.
Übung 7
Visualisieren Sie die Division mit Rest an der Zahlengeraden Z.
Übung 8
(a) Visualisieren Sie die Kongruenzrelation ;m an der Zahlengeraden Z.
(b) Visualisieren Sie die Kongruenzrelation ;m mit Hilfe von Zählsteinen.
Wie ändern sich die Visualisierungen, wenn Sie m verändern? Erläutern Sie
einige Eigenschaften der Kongruenz anhand Ihrer Diagramme.
Übung 9
Die Eigenschaften (K1) und (K3) haben wir so interpretiert:
„Wir können in aus + und ⋅ aufgebauten Termen kongruent ersetzen.“
(a) Wie verhalten sich die Eigenschaften (K2) und (K4) zu dieser Regel?
(b) Kann auch im Exponenten kongruent ersetzt werden? Formulieren
Sie eine entsprechende Aussage und beweisen oder widerlegen Sie
sie.
Übung 10
Erstellen Sie per Hand für die Moduln m = 6 und m = 7 je eine Additions-
und eine Multiplikationstafel für die Kongruenz modulo m, d. h. Tabellen,
die für alle 0 ≤ a, b < m die Zahlen 0 ≤ c < m mit
a + b ; c (m) bzw. ab ; c (m)
enthält. Welche Eigenschaften der Tabellen sind bemerkenswert? Formu-
lieren Sie Hypothesen und versuchen Sie, diese zu begründen oder zu
beweisen. Überprüfen bzw. illustrieren Sie Ihre Hypothesen auch anhand
von weiteren (evtl. mit Hilfe von Computern erzeugten) Tabellen.
Übung 11
Bestimmen Sie in Form einer Tabelle für m = 13 und m = 15 alle Paare a, b
mit 0 ≤ a, b < m und
a b ; 1 (m).
Welche Eigenschaften fallen Ihnen auf? Versuchen Sie, Ihre Vermutungen
zu beweisen.
Übung 12
Seien m1 , m2 ≥ 1 und sei m das kleinste gemeinsame Vielfache von m1 und
m2 . Zeigen Sie, dass für alle a, b die folgenden Aussagen äquivalent sind:
(1) a ; b (m1 ) und a ; b (m2 ).
(2) a ; b (m).
Übung 13
Sei g ein Polynom mit ganzzahligen Koeffizienten. Zeigen Sie, dass für alle
a, b und m ≥ 1 gilt:
a ; b mod(m) impliziert g(a) ; g(b) mod(m).
Gilt auch die Umkehrung der Implikation? Begründen Sie Ihre Antwort.
Übung 14
Zeigen Sie:
(a) Jede Quadratzahl hat in Dezimaldarstellung eine der Zahlen
0,1,4,5,6,9 als Einerziffer.
(b) Jede vierte Potenz hat in Dezimaldarstellung eine der Zahlen 0, 1, 5, 6
als Einerziffer.
Übung 15
Zeigen Sie, dass das Produkt dreier aufeinanderfolgender Zahlen durch 6
teilbar ist, d. h., für alle ganzen Zahlen n gilt
6 | n (n + 1) (n + 2).
Übung 16
Sei b ≥ 2. Zeigen Sie, dass eine natürliche Zahl n = z1 … zk mit Ziffern zi in
b-adischer Darstellung genau dann durch b − 1 teilbar ist, wenn ihre
Quersumme z1 + … + zk durch b − 1 teilbar ist. Für welche weiteren Teiler
gilt diese Quersummenregel noch?
Übung 17
Sei b ≥ 2. Formulieren Sie ein Analogon der dezimalen Teilbarkeitsregel für
die 5 für die b-adische Darstellung.
Übung 18
Zeigen Sie, dass für alle n gilt
(i) 2 | (n2 − n),
(ii) 6 | (n3 − n),
(iii) 30 | (n5 − n).
Eine Primzahl ist eine natürliche Zahl größer oder gleich zwei, die außer der
Eins und sich selbst keinen positiven Teiler aufweist. Der Begriff der Primzahl,
der sich ganz natürlich aus der Untersuchung der Teilbarkeit ergibt, gehört zu
den magischen Elementen der Mathematik. Durch ihre geheimnisvolle Vertei-
lung besitzen die Primzahlen eine große Strahlkraft auch über die Mathematik
hinaus, und aufgrund der zahlreichen einfach zu formulierenden, oft aber sehr
schwer zu beantwortenden Fragen nehmen sie einen prominenten Platz in der
Geschichte der Mathematik ein. Primzahlen sind Prüfsteine des mathemati-
schen Gesamtwissens. Viele Fragen sind bis heute offen. Hinzu kommen die
modernen Anwendungen in der Kryptographie, durch die das mathematische
Ansehen der Primzahlen noch einmal gesteigert wurde.
In diesem Kapitel stellen wir Primzahlen samt einigen gelösten und ungelö-
sten Problemen vor. Wir beweisen den klassischen Satz von Euklid, der besagt,
dass es keine größte Primzahl gibt. Damit ist die Menge der Primzahlen un-
endlich. Ein weiteres wichtiges Ergebnis ist die Eindeutigkeit der Primfaktor-
zerlegung. Wir geben einen modernen Beweis dieses Fundamentalsatzes der
Zahlentheorie mit Hilfe starker Induktion.
Definition (Primzahl)
Eine natürliche Zahl p ≥ 2 heißt Primzahl, wenn es keinen Teiler d von p
gibt mit 1 < d < p. Andernfalls heißt p zusammengesetzt.
Wir führen das Verfahren zur Illustration für n = 40 durch. Zunächst wird die
2 markiert (hier symbolisiert durch #2), und alle echten Vielfachen 4, 6, 8, … der
2 werden gestrichen. Dies hinterlässt die ausgesiebte Folge
#2, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39.
Nun wird die 3 markiert und alle echten Vielfachen 6, 9, 12, … der 3 werden ge-
strichen. Dies hinterlässt die ausgesiebte Folge:
#2, #3, 5, 7, 11, 13, 17, 19, 23, 25, 29, 31, 35, 37.
Die nächste Siebung liefert:
#2, #3, #5, 7, 11, 13, 17, 19, 23, 29, 31, 37.
Nach nur drei Durchläufen sind wir fertig. Denn die erste noch nicht markierte
Zahl ist 7 und jedes Vielfache k ⋅ 7 = 7 ⋅ k mit 2 < k < 7 ist bereits gestrichen. Die
Zahl 72 = 49 wäre die erste zu streichende Zahl, sie liegt aber über unserer
Grenze n = 40. Die Überlegung zeigt: Es genügt, das Verfahren solange durchzu-
führen, bis die erste nicht markierte verbliebene Zahl größer ist als £n.
Das Siebverfahren terminiert also sehr schnell. Zudem ist es korrekt: Die er-
zeugte Folge listet genau die Primzahlen von 2 bis n auf. Dies ist anschaulich klar,
bedarf aber dennoch eines Beweises. Wir diskutieren dies und weitere Aspekte
der Siebmethode in den Übungen.
2, 3, 5, 7,
11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97,
101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191,
193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283,
293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401,
409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509,
521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631,
641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751,
757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877,
881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997,
1009, 1013, 1019, 1021, 1031, 1033, 1039, 1049, 1051, 1061, 1063, 1069, 1087, 1091,
1093, 1097, 1103, 1109, 1117, 1123, 1129, 1151, 1153, 1163, 1171, 1181, 1187, 1193,
1201, 1213, 1217, 1223, 1229, 1231, 1237, 1249, 1259, 1277, 1279, 1283, 1289, 1291,
1297, 1301, 1303, 1307, 1319, 1321, 1327, 1361, 1367, 1373, 1381, 1399, 1409, 1423,
1427, 1429, 1433, 1439, 1447, 1451, 1453, 1459, 1471, 1481, 1483, 1487, 1489, 1493,
1499, 1511, 1523, 1531, 1543, 1549, 1553, 1559, 1567, 1571, 1579, 1583, 1597, 1601,
1607, 1609, 1613, 1619, 1621, 1627, 1637, 1657, 1663, 1667, 1669, 1693, 1697, 1699,
1709, 1721, 1723, 1733, 1741, 1747, 1753, 1759, 1777, 1783, 1787, 1789, 1801, 1811,
1823, 1831, 1847, 1861, 1867, 1871, 1873, 1877, 1879, 1889, 1901, 1907, 1913, 1931,
1933, 1949, 1951, 1973, 1979, 1987, 1993, 1997, 1999, 2003, 2011, 2017, 2027, 2029,
2039, 2053, 2063, 2069, 2081, 2083, 2087, 2089, 2099, 2111, 2113, 2129, 2131, 2137,
2141, 2143, 2153, 2161, 2179, 2203, 2207, 2213, 2221, 2237, 2239, 2243, 2251, 2267,
2269, 2273, 2281, 2287, 2293, 2297, 2309, 2311, 2333, 2339, 2341, 2347, 2351, 2357,
2371, 2377, 2381, 2383, 2389, 2393, 2399, 2411, 2417, 2423, 2437, 2441, 2447, 2459,
2467, 2473, 2477, 2503, 2521, 2531, 2539, 2543, 2549, 2551, 2557, 2579, 2591, 2593,
2609, 2617, 2621, 2633, 2647, 2657, 2659, 2663, 2671, 2677, 2683, 2687, 2689, 2693,
2699, 2707, 2711, 2713, 2719, 2729, 2731, 2741, 2749, 2753, 2767, 2777, 2789, 2791,
2797, 2801, 2803, 2819, 2833, 2837, 2843, 2851, 2857, 2861, 2879, 2887, 2897, 2903,
2909, 2917, 2927, 2939, 2953, 2957, 2963, 2969, 2971, 2999, 3001, 3011, 3019, 3023,
3037, 3041, 3049, 3061, 3067, 3079, 3083, 3089, 3109, 3119, 3121, 3137, 3163, 3167,
3169, 3181, 3187, 3191, 3203, 3209, 3217, 3221, 3229, 3251, 3253, 3257, 3259, 3271,
3299, 3301, 3307, 3313, 3319, 3323, 3329, 3331, 3343, 3347, 3359, 3361, 3371, 3373,
3389, 3391, 3407, 3413, 3433, 3449, 3457, 3461, 3463, 3467, 3469, 3491, 3499, 3511,
3517, 3527, 3529, 3533, 3539, 3541, 3547, 3557, 3559, 3571, 3581, 3583, 3593, 3607,
3613, 3617, 3623, 3631, 3637, 3643, 3659, 3671, 3673, 3677, 3691, 3697, 3701, 3709,
3719, 3727, 3733, 3739, 3761, 3767, 3769, 3779, 3793, 3797, 3803, 3821, 3823, 3833,
3847, 3851, 3853, 3863, 3877, 3881, 3889, 3907, 3911, 3917, 3919, 3923, 3929, 3931,
3943, 3947, 3967, 3989, 4001, 4003, 4007, 4013, 4019, 4021, 4027, 4049, 4051, 4057,
4073, 4079, 4091, 4093, 4099, 4111, 4127, 4129, 4133, 4139, 4153, 4157, 4159, 4177,
4201, 4211, 4217, 4219, 4229, 4231, 4241, 4243, 4253, 4259, 4261, 4271, 4273, 4283,
4289, 4297, 4327, 4337, 4339, 4349, 4357, 4363, 4373, 4391, 4397, 4409, 4421, 4423,
4441, 4447, 4451, 4457, 4463, 4481, 4483, 4493, 4507, 4513, 4517, 4519, 4523, 4547,
4549, 4561, 4567, 4583, 4591, 4597, 4603, 4621, 4637, 4639, 4643, 4649, 4651, 4657,
4663, 4673, 4679, 4691, 4703, 4721, 4723, 4729, 4733, 4751, 4759, 4783, 4787, 4789,
4793, 4799, 4801, 4813, 4817, 4831, 4861, 4871, 4877, 4889, 4903, 4909, 4919, 4931,
4933, 4937, 4943, 4951, 4957, 4967, 4969, 4973, 4987, 4993, 4999.
Der Unendlichkeitssatz
Wir zeigen nun, dass es unendlich viele Primzahlen gibt. Zur Vorbereitung
noch eine fast selbstverständliche Definition:
Beweis
Sei n ≥ 1 beliebig, und seien p1 , …, pn Primzahlen. Wir zeigen, dass es eine
Primzahl p gibt, die von allen Zahlen p1 , …, pn verschieden ist. Hierzu
setzen wir
a = p1 … pn + 1.
Die Zahl a besitzt für jedes k den Rest 1 bei Division durch pk , d. h.
a ; 1 (pk ) für alle 1 ≤ k ≤ n.
Folglich gilt:
(+) Für alle 1 ≤ k ≤ n ist pk kein Teiler von a.
Sei nun p ein Primteiler von a. Nach (+) ist p von allen pk verschieden.
Damit ist p eine Primzahl wie gewünscht.
Es ist verführerisch, die Zahl a selbst als eine „neue Primzahl“ anzusehen. Dies
wird bestätigt durch
2 + 1 = 3
2⋅3 + 1 = 7
2 ⋅ 3 ⋅ 5 + 1 = 31
2 ⋅ 3 ⋅ 5 ⋅ 7 + 1 = 211
2 ⋅ 3 ⋅ 5 ⋅ 7 ⋅ 11 + 1 = 2311
Diese fünf Zahlen sind prim. Unser scheinbarer Primzahlgenerator wird aber
überführt durch
2 ⋅ 3 ⋅ 5 ⋅ 7 ⋅ 11 ⋅ 13 + 1 = 30031 = 59 ⋅ 509
2 ⋅ 3 ⋅ 5 ⋅ 7 ⋅ 11 ⋅ 13 ⋅ 17 + 1 = 510511 = 19 ⋅ 97 ⋅ 277
2 ⋅ 3 ⋅ 5 ⋅ 7 ⋅ 11 ⋅ 13 ⋅ 17 ⋅ 19 + 1 = 9699691 = 347 ⋅ 27953
2 ⋅ 3 ⋅ 5 ⋅ 7 ⋅ 11 ⋅ 13 ⋅ 17 ⋅ 19 ⋅ 23 + 1 = 223092871 = 317 ⋅ 703763
Eine Primzahl p der Form p = 2 ⋅ 3 ⋅ 5 ⋅ … ⋅ pn + 1 heißt eine Euklidische Primzahl.
Es ist ein offenes Problem, ob es unendlich viele Euklidische Primzahlen gibt.
Ein sehr alter und klassischer Beweis wirft damit eine schwierige Frage auf. Wir
stoßen auf sie fast zwangsläufig beim Durchdenken des Arguments und Experi-
mentieren mit der Konstruktion.
Als Nächstes zeigen wir − mit der gleichen Beweisidee − als Kontrast, dass es
beliebig große Sprünge in der Folge der Primzahlen gibt:
Beweis
Sei n ≥ 2 beliebig, und seien p1 , …, pn die ersten n Primzahlen. Wir setzen
q = p1 ⋅ … ⋅ pn .
Dann sind die pn − 1 Zahlen
q + 2, q + 3, q + 4, …, q + pn
zusammengesetzt. Denn sei a beliebig mit 2 ≤ a ≤ pn . Dann ist a durch ein
pk teilbar, da jeder Primfaktor von a wegen a ≤ pn eine der Primzahlen
p1 , …, pn ist. Da q nach Konstruktion durch pk teilbar ist, ist auch q + a
durch pk teilbar. Damit haben wir ein Intervall zusammengesetzter Zahlen
der Länge pn − 1 gefunden. Da pn aufgrund der Unendlichkeit der
Primzahlen beliebig groß gewählt werden kann, ist der Satz bewiesen.
Die beiden Beweise lassen sich so zusammenfassen: Multiplizieren wir die er-
sten Primzahlen auf, so besitzt die auf dieses Produkt folgende Zahl andere
Primfaktoren und danach folgt ein langes Intervall zusammengesetzter Zahlen.
Beispiel
Für n = 8 erhalten wir
p1 … p8 = 2 ⋅ 3 ⋅ 5 ⋅ 7 ⋅ 11 ⋅ 13 ⋅ 17 ⋅ 19 = 9699690.
Damit sind 18 aufeinanderfolgenden Zahlen
9699690 + 2, …, 9699690 + 19
zusammengesetzt. Die Primfaktorzerlegungen sind:
Die Primfaktorzerlegung
Definition (Primfaktorzerlegung)
Eine Primfaktorzerlegung (PFZ) einer natürlichen Zahl n ≥ 2 ist eine
Darstellung von n als Produkt von Primzahlen. Durch Anordnung der
Faktoren kann jede PFZ in die kanonische Form
n = p1 e1 ⋅ … ⋅ pk ek mit p1 < … < pk und e1 , …, ek ≥ 1
gebracht werden.
Beispiel
Die Zahl n = 40 besitzt beispielsweise die Primfaktorzerlegungen
2 ⋅ 2 ⋅ 2 ⋅ 5, 2 ⋅ 2 ⋅ 5 ⋅ 2, 5 ⋅ 2 ⋅ 2 ⋅ 2.
Die kanonische Form dieser Zerlegungen ist 23 ⋅ 5.
Es ist richtig, aber keineswegs klar, dass eine Primfaktorzerlegung einer Zahl
bis auf die Reihenfolge der Faktoren eindeutig bestimmt ist. Bevor wir dies zei-
gen, halten wir explizit fest:
Beweis
Wir zeigen die Aussage durch starke Induktion.
Induktionsschritt n ≥ 2:
Ist n prim, so ist n eine PFZ von n. Andernfalls gibt es einen Primteiler
p < n von n. Sei q = n/p. Dann gilt 2 ≤ q < n, sodass nach I. V. eine PFZ
von q existiert. Anfügen des Faktors p an eine PFZ von q liefert eine
PFZ von n.
Allgemeiner gilt: Ist d ≥ 2 ein Teiler von n, so kann eine PFZ von d zu einer
PFZ von n erweitert werden, indem eine PFZ von n/d an die betrachtete PFZ
von d angefügt wird.
Nach diesen Vorbereitungen können wir nun zeigen:
Ein Beweis des Satzes findet sich bereits bei Euklid. Wir geben einen kompak-
ten zu Beginn des 20. Jahrhunderts gefundenen Beweis mit Hilfe von starker In-
duktion. Die Argumentation geht zurück auf Ernst Zermelo, Ferdinand von
Lindemann und Helmut Hasse.
Beweis
Wir führen den Beweis durch starke Induktion.
Induktionsschritt n ≥ 2:
Ist n prim, so ist die Eindeutigkeit klar. Andernfalls sei, in kanonischen
Formen,
(+) n = p1 e1 … pk ek = q1 d1 … qk′ dk′ , mit p1 ≤ q1 .
Es genügt zu zeigen, dass p1 = q1 . Denn dann können wir in beiden PFZ
durch p1 dividieren und die I. V. auf n/p1 = n/q1 anwenden. Dies zeigt,
dass die beiden Darstellungen
p1 e1 − 1 … pk ek und q1 d1 − 1 … qk′ dk′
von n/p1 übereinstimmen. Hieraus folgt, dass die beiden Darstellungen
von n in (+) übereinstimmen.
Annahme, p1 < q1 . Dann ist p1 q1 < q1 2 ≤ n (da n nicht prim), sodass
m = n − p1 q1 > 0.
Wegen p1 | n ist p1 ein Teiler von m und analog ist q1 ein Teiler von m.
Wir wollen das Ergebnis noch etwas anders formulieren. Hierzu definieren
wir:
Beispiel
Für n = 4400 = 24 ⋅ 52 ⋅ 11 gilt
ex2 (n) = 4, ex5 (n) = 2, ex11 (n) = 1
und exp (n) = 0 für alle anderen Primzahlen p. Für alle p gilt zudem exp (1) = 0.
Beispiel
4400 = 24 ⋅ 30 ⋅ 52 ⋅ 70 ⋅ 111 ⋅ 130 ⋅ 170 ⋅ 190 ⋅ …
Über Primzahlen lassen sich zahlreiche sehr schwierige Fragen stellen. Einige
davon sind:
Die Unendlichkeit der Primzahlzwillinge ist ein offenes Problem. Man weiß
∑ p ist Komponente eines Primzahlzwillings 1/p < ∞, während ∑ p ist Primzahl 1/p = ∞.
Die Primzahlzwillinge sind also sehr dünn gesät. Aber aus der Endlichkeit der
Summe folgt noch nicht, dass es nur endlich viele Summanden gibt (der Leser
vergleiche die Summe über 1/2n ). Umgekehrt ergibt sich aus der Unendlichkeit
der zweiten Summe, dass es unendlich viele Summanden gibt. In dieser Weise
hat Euler einen Beweis der Unendlichkeit der Primzahlen geführt.
Die folgende Tabelle listet die ersten Primzahlzwillinge auf. Dabei geben wir
der Kürze halber nur die erste Komponente p und nicht das Paar (p, p + 2) an.
3, 5,
11, 17, 29, 41, 59, 71,
101, 107, 137, 149, 179, 191, 197, 227, 239, 269, 281, 311, 347, 419, 431, 461, 521, 569,
599, 617, 641, 659, 809, 821, 827, 857, 881,
1019, 1031, 1049, 1061, 1091, 1151, 1229, 1277, 1289, 1301, 1319, 1427, 1451, 1481,
1487, 1607, 1619, 1667, 1697, 1721, 1787, 1871, 1877, 1931, 1949, 1997, 2027, 2081,
2087, 2111, 2129, 2141, 2237, 2267, 2309, 2339, 2381, 2549, 2591, 2657, 2687, 2711,
2729, 2789, 2801, 2969, 2999, 3119, 3167, 3251, 3257, 3299, 3329, 3359, 3371, 3389,
3461, 3467, 3527, 3539, 3557, 3581, 3671, 3767, 3821, 3851, 3917, 3929, 4001, 4019,
4049, 4091, 4127, 4157, 4217, 4229, 4241, 4259, 4271, 4337, 4421, 4481, 4517, 4547,
4637, 4649, 4721, 4787, 4799, 4931, 4967, 5009, 5021, 5099, 5231, 5279, 5417, 5441,
5477, 5501, 5519, 5639, 5651, 5657, 5741, 5849, 5867, 5879, 6089, 6131, 6197, 6269,
6299, 6359, 6449, 6551, 6569, 6659, 6689, 6701, 6761, 6779, 6791, 6827, 6869, 6947,
6959, 7127, 7211, 7307, 7331, 7349, 7457, 7487, 7547, 7559, 7589, 7757, 7877, 7949,
8009, 8087, 8219, 8231, 8291, 8387, 8429, 8537, 8597, 8627, 8819, 8837, 8861, 8969,
8999, 9011, 9041, 9239, 9281, 9341, 9419, 9431, 9437, 9461, 9629, 9677, 9719, 9767,
9857, 9929
Die Frage nach den Primzahlzwillingen lässt sich vielfach variieren. Ein Prim-
zahldrilling der Form (p, p + 2, p + 4) ist bis auf den Einzelfall (3, 5, 7) unmöglich,
da eine der drei Zahlen durch 3 teilbar ist (Übung); der Leser vergleiche einen
Zwilling der Form (p, p + 1), der nur im Fall p = 2 aus Primzahlen bestehen kann.
Möglich sind dagegen Drillinge (p, p+2, p +6) wie (5, 7, 11) und (11, 13, 17) oder
Drillinge (p, p +4, p +6) wie etwa (7, 11, 13) und (13, 17, 19). Allgemein stellt sich
die Frage nach unendlich oft auftretenden Mustern in der Folge der Abstände
der Primzahlen. Die folgende Tabelle gibt einen Eindruck dieser Folge.
1, 2, 2, 4, 2, 4, 2, 4, 6, 2, 6, 4, 2, 4, 6, 6, 2, 6,
4, 2, 6, 4, 6, 8, 4, 2, 4, 2, 4, 14, 4, 6, 2, 10, 2, 6,
6, 4, 6, 6, 2, 10, 2, 4, 2, 12, 12, 4, 2, 4, 6, 2, 10, 6,
6, 6, 2, 6, 4, 2, 10, 14, 4, 2, 4, 14, 6, 10, 2, 4, 6, 8,
6, 6, 4, 6, 8, 4, 8, 10, 2, 10, 2, 6, 4, 6, 8, 4, 2, 4,
12, 8, 4, 8, 4, 6, 12, 2, 18, 6, 10, 6, 6, 2, 6, 10, 6, 6,
2, 6, 6, 4, 2, 12, 10, 2, 4, 6, 6, 2, 12, 4, 6, 8, 10, 8,
10, 8, 6, 6, 4, 8, 6, 4, 8, 4, 14, 10, 12, 2, 10, 2, 4, 2,
10, 14, 4, 2, 4, 14, 4, 2, 4, 20, 4, 8, 10, 8, 4, 6, 6, 14,
4, 6, 6, 8, 6, 12, 4, 6, 2, 10, 2, 6, 10, 2, 10, 2, 6, 18,
4, 2, 4, 6, 6, 8, 6, 6, 22, 2, 10, 8, 10, 6, 6, 8, 12, 4,
6, 6, 2, 6, 12, 10, 18, 2, 4, 6, 2, 6, 4, 2, 4, 12, 2, 6,
34, 6, 6, 8, 18, 10, 14, 4, 2, 4, 6, 8, 4, 2, 6, 12, 10, 2,
4, 2, 4, 6, 12, 12, 8, 12, 6, 4, 6, 8, 4, 8, 4, 14, 4, 6,
2, 4, 6, 2, 6, 10, 20, 6, 4, 2, 24, 4, 2, 10, 12, 2, 10, 8,
6, 6, 6, 18, 6, 4, 2, 12, 10, 12, 8, 16, 14, 6, 4, 2, 4, 2,
10, 12, 6, 6, 18, 2, 16, 2, 22, 6, 8, 6, 4, 2, 4, 8, 6, 10,
2, 10, 14, 10, 6, 12, 2, 4, 2, 10, 12, 2, 16, 2, 6, 4, 2, 10,
8, 18, 24, 4, 6, 8, 16, 2, 4, 8, 16, 2, 4, 8, 6, 6, 4, 12,
2, 22, 6, 2, 6, 4, 6, 14, 6, 4, 2, 6, 4, 6, 12, 6, 6, 14,
4, 6, 12, 8, 6, 4, 26, 18, 10, 8, 4, 6, 2, 6, 22, 12, 2, 16,
8, 4, 12, 14, 10, 2, 4, 8, 6, 6, 4, 2, 4, 6, 8, 4, 2, 6,
10, 2, 10, 8, 4, 14, 10, 12, 2, 6, 4, 2, 16, 14, 4, 6, 8, 6,
4, 18, 8, 10, 6, 6, 8, 10, 12, 14, 4, 6, 6, 2, 28, 2, 10, 8,
4, 14, 4, 8, 12, 6, 12, 4, 6, 20, 10, 2, 16, 26, 4, 2, 12, 6,
4, 12, 6, 8, 4, 8, 22, 2, 4, 2, 12, 28, 2, 6, 6, 6, 4, 6,
2, 12, 4, 12, 2, 10, 2, 16, 2, 16, 6, 20, 16, 8, 4, 2, 4, 2,
22, 8, 12, 6, 10, 2, 4, 6, 2, 6, 10, 2, 12, 10, 2, 10, 14, 6,
4, 6, 8, 6, 6, 16, 12, 2, 4, 14, 6, 4, 8, 10, 8, 6, 6, 22,
6, 2, 10, 14, 4, 6, 18, 2, 10, 14, 4, 2, 10, 14, 4, 8, 18, 4,
6, 2, 4, 6, 2, 12, 4, 20, 22, 12, 2, 4, 6, 6, 2, 6, 22, 2,
6, 16, 6, 12, 2, 6, 12, 16, 2, 4, 6, 14, 4, 2, 18, 24, 10, 6,
2, 10, 2, 10, 2, 10, 6, 2, 10, 2, 10, 6, 8, 30, 10, 2, 10, 8,
6, 10, 18, 6, 12, 12, 2, 18, 6, 4, 6, 6, 18, 2, 10, 14, 6, 4,
2, 4, 24, 2, 12, 6, 16, 8, 6, 6, 18, 16, 2, 4, 6, 2, 6, 6,
10, 6, 12, 12, 18, 2, 6, 4, 18, 8, 24, 4, 2, 4, 6, 2, 12, 4,
14, 30, 10, 6, 12, 14, 6, 10, 12, 2, 4, 6, 8, 6, 10, 2, 4, 14,
6, 6
Die zweite der obigen Fragen, ob jede gerade Zahl n ≥ 4 die Summe zweier
Primzahlen sei, ist die Goldbachsche Vermutung aus dem Jahr 1742. Sie wurde für
sehr viele gerade Zahlen bestätigt. In diesem empirischen Sinn ist sie „vermut-
lich richtig“, ein Beweis steht aber noch aus. Eine Widerlegung der Vermutung
durch ein sehr großes Gegenbeispiel (größer als 1018 ) ist damit nicht auszu-
schließen.
Die folgende Tabelle listet alle Möglichkeiten auf, die geraden Zahlen von 4
bis 40 als der Größe nach geordnete Summe zweier Primzahlen darzustellen.
4 = 2 + 2
6 = 3 + 3
8 = 3 + 5
10 = 3 + 7 = 5 + 5
12 = 5 + 7
14 = 3 + 11 = 7 + 7
16 = 3 + 13 = 5 + 11
18 = 5 + 13 = 7 + 11
20 = 3 + 17 = 7 + 13
22 = 3 + 19 = 5 + 17 = 11 + 11
24 = 5 + 19 = 7 + 17 = 11 + 13
26 = 3 + 23 = 7 + 19 = 13 + 13
28 = 5 + 23 = 11 + 17
30 = 7 + 23 = 11 + 19 = 13 + 17
32 = 3 + 29 = 13 + 19
34 = 3 + 31 = 5 + 29 = 11 + 23 = 17 + 17
36 = 5 + 31 = 7 + 29 = 13 + 23 = 17 + 19
38 = 7 + 31 = 19 + 19
40 = 3 + 37 = 11 + 29 = 17 + 23
Der Primzahlsatz
Das vielleicht wichtigste Ergebnis über die Verteilung der Primzahlen ist der
Primzahlsatz (vermutet von Gauß und Legendre Ende des 18. Jahrhunderts, be-
wiesen von Jacques Hadamard und Charles de la Vallée-Poussin im Jahr 1896).
Bezeichnet π(n) die Anzahl aller Primzahlen kleinergleich n, so gilt
π(n)
limn →∞ = 1 (Primzahlsatz)
n/log(n)
Wir sagen auch, dass die Größen π(n) und n/log(n) asymptotisch gleich sind und
schreiben
n
π(n) , .
log n
Anschaulich bedeutet dies, dass π(n) ungefähr gleich n/log(n) ist. Es gibt viele In-
terpretationen von „ungefähr gleich“, die Konvergenz des Quotienten der bei-
den betrachten Größen gegen 1 ist eine Variante, die in der Zahlentheorie häufig
verwendet wird.
10 4 4,34294 0,921034
100 25 21,7147 1,15129
1000 168 144,765 1,1605
10000 1229 1085,74 1,13195
100000 9592 8685,89 1,10432
6
10 78498 72382,4 1,08449
7
10 664579 620421 1,07117
8
10 5761455 5428681 1,06130
9
10 50847534 48254942 1,05373
10
10 455052511 434294482 1,04780
Tabelle zum Primzahlsatz mit gerundeten Einträgen in den beiden letzten Spalten
Der Primzahlsatz ist nicht nur ein bestechendes Ergebnis, sondern auch ein
Beispiel dafür, dass weitergehende Hilfsmittel eingesetzt werden, um Erkennt-
nisse über Primzahlen zu erzielen. Hier sind vor allem die komplexe Analysis
und die Algebra zu nennen, deren zahlentheoretische Kraft die Disziplinen
analytische Zahlentheorie und algebraische Zahlentheorie hervorbrachten. Das
Phänomen, über die natürlichen Zahlen hinauszugehen, um sie zu ergründen,
macht einen Teil der Magie der modernen Zahlentheorie aus. Der Anreiz,
möglichst elementare Beweise zu finden, bleibt dadurch unberührt.
150
100
(n)
n
log(n)
50
109
106
(n)
n
log(n)
1000
1.2
1.0
0.8
(n) log(n)
n
0.6
1
0.4
0.2
1.2
1.0
0.8
(n) log(n)
n
0.6
1
0.4
0.2
4 n
(n)
3 log(n)
20
15
n
(n)
10 log(n)
Ein andersartiges Ergebnis über die Verteilung der Primzahlen ist das Ber-
trandsche Postulat. Es besagt:
Für alle n ≥ 1 liegt zwischen n und 2n mindestens eine Primzahl.
(Bertrandsches Postulat)
Diese Dichteeigenschaft der Primzahlen wurde 1845 von dem französischen
Mathematiker Joseph Bertrand vermutet und 1850 von Pafnuty Chebyshev mit
analytischen Hilfsmitteln bewiesen. Ein elementarer (aber keineswegs trivialer)
Beweis, bei dem Eigenschaften von Binomialkoeffizienten im Zentrum stehen,
wurde von Paul Erdös 1932 veröffentlicht. Bis heute offen ist dagegen die ver-
wandte Frage:
Für alle n ≥ 1 liegt zwischen n2 und (n + 1)2 mindestens eine Primzahl.
(Legendre Vermutung)
Primzahlen: Eine unerschöpfliche Schatztruhe der Mathematik.
Übungen
Übung 1
(a) Welche der Zahlen 2n − 1 für n = 2, …, 11 sind prim und welche
nicht?
(b) Zeigen Sie: Ist n ≥ 2 und p = 2n − 1 prim, so ist n prim.
[ Hinweis: ak − 1 = (ak − 1 + ak − 2 + … + a1 + a0 ) (a − 1) ]
(c) Zeigen Sie: Sind a, n ≥ 2 und ist an − 1 prim, so ist a = 2 (und n prim).
Die Zahlen Mn = 2n − 1, n ≥ 1, heißen Mersenne-Zahlen. Ist eine Mersenne-
Zahl Mn prim, so heißt Mn eine Mersenne-Primzahl. Es ist ein offenes
Problem, ob es unendlich viele Mersenne-Primzahlen gibt. Der Leser
konsultiere auch www.mersenne.org.
Übung 2
(a) Erstellen Sie eine Tabelle, die alle Primzahlen kleiner als 100 in
Primzahlen p mit p ; 1 (4) und p ; 3 (4) unterteilt.
(b) Zeigen Sie, dass es unendlich viele Primzahlen p gibt mit p ; 3 (4).
[ Hinweis: Betrachten Sie a = 2 ⋅ 2 ⋅ p1 ⋅ … ⋅ pn − 1 und orientieren Sie
sich am Beweis der Unendlichkeit der Menge der Primzahlen von
Euklid. Dass es unendlich viele Primzahlen p mit p ; 1 mod(4) gibt,
ist schwieriger zu zeigen. Wir geben später einen Beweis mit Hilfe
des Satzes von Fermat. ]
Übung 3
Zeigen Sie, dass für alle a, d mit d ≠ 0 gilt:
d | a genau dann, wenn ∀p prim exp (d) ≤ exp (a)
Übung 4
Geben Sie eine Formel für die Anzahl τ(n) der Teiler d ≥ 1 einer natürli-
chen Zahl n ≥ 1 an und beweisen Sie diese Formel.
Übung 5
(a) Berechnen Sie für einige m, k ≥ 1 Summen der Form
m + (m + 1) + … + (m + k).
(b) Formulieren Sie eine Hypothese, welche Zahlen n ≥ 1 sich als Summen
wie in (a) darstellen lassen (mit mindestens zwei Summanden).
(c) Beweisen Sie Ihre Hypothese.
Übung 6
Berechnen Sie für einige Primzahlen p dasjenige r P { 0, …, p − 1 } mit
(p − 1)! ; r (p).
Stellen Sie eine allgemeine Hypothese auf und versuchen Sie diese zu
beweisen.
[ Hinweis: Paarbildung mit Zahlen a, b mit a b ; 1 (p). ]
Übung 7
Sei n ≥ 6 eine zusammengesetzte Zahl. Zeigen Sie, dass
(n − 1)! ; 0 (n).
Übung 8
Sei p eine Primzahl mit p ; 1 (3). Zeigen Sie, dass p ; 1 (6).
Übung 9
Sei n ≥ 1. Zeigen Sie, dass eine drei Zahlen n, n + 2, n + 4 durch 3 teilbar ist,
sodass es mit Ausnahme von (3, 5, 7) keinen Primzahldrilling der Form
(p, p + 2, p + 4) geben kann.
Übung 10
Ein alternativer Beweis der Unendlichkeit der Menge der Primzahlen:
n
Für jedes n ≥ 0 sei Fn = 22 + 1 die n-te Fermat-Zahl.
(a) Seien 0 ≤ m < n. Zeigen Sie, dass Fm | (Fn − 2).
(b) Seien 0 ≤ m < n. Zeigen Sie mit Hilfe von (a), dass Fm und Fn keine
gemeinsamen Teiler d ≥ 2 besitzen.
(c) Folgern Sie aus (b), dass es unendlich viele Primzahlen gibt.
[ Hinweis zu (a): Verwenden Sie, dass (Fn − 2)/Fm = (ak − 1)/(a + 1) P N für
gewisse a ≥ 1 und k ≥ 2, k gerade. Alternativ: Zeigen Sie durch Induktion,
dass Fn = F0 … Fn − 1 + 2 für alle n ≥ 1. ]
Je zwei von Null verschiedene ganze Zahlen besitzen jeweils nur endlich viele
Teiler, sodass es einen größten gemeinsamen Teiler gibt. Genauer definieren wir:
Die Notation (a, b) ist nicht ganz ungefährlich, da auch geordnete Paare so be-
zeichnet werden. Solange keine Verwechslungsgefahr besteht, ist die Klammer-
notation aber oftmals deutlich übersichtlicher.
Eine bekannte Anwendung des ggT ist das Kürzen von Brüchen: Ist a/b P Q
mit a, b ≠ 0 und d = (a, b), so ist a′/b′ mit a′ = a/d und b′ = b/d der gekürzte Bruch.
Es gilt a/b = a′/b′ und die Zahlen a′ und b′ sind relativ prim.
Der ggT lässt sich geometrisch mit Hilfe von Rechtecksflächen visualisieren:
Beispiele
(1) (6, −15) = 3, (4, 0) = 4, (2, 5) = 1, 2 und 5 sind relativ prim,
(2) (4, 8, 10) = 2, (3, 7, 9, 0) = 1,
(3) [ 3, 5 ] = 15, [ 4, 12 ] = 12, [ 0, 1 ] = [ 1, 0 ] = [ 0, 0 ] = 0,
(4) [ 2, 3, 15 ] = 30, [ 10, 8, 0 ] = 0.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2
3 1 1 3 1 1 3 1 1 3 1 1 3 1 1 3 1 1 3 1 1
4 1 2 1 4 1 2 1 4 1 2 1 4 1 2 1 4 1 2 1 4
5 1 1 1 1 5 1 1 1 1 5 1 1 1 1 5 1 1 1 1 5
6 1 2 3 2 1 6 1 2 3 2 1 6 1 2 3 2 1 6 1 2
7 1 1 1 1 1 1 7 1 1 1 1 1 1 7 1 1 1 1 1 1
8 1 2 1 4 1 2 1 8 1 2 1 4 1 2 1 8 1 2 1 4
9 1 1 3 1 1 3 1 1 9 1 1 3 1 1 3 1 1 9 1 1
10 1 2 1 2 5 2 1 2 1 10 1 2 1 2 5 2 1 2 1 10
11 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1
12 1 2 3 4 1 6 1 4 3 2 1 12 1 2 3 4 1 6 1 4
13 1 1 1 1 1 1 1 1 1 1 1 1 13 1 1 1 1 1 1 1
14 1 2 1 2 1 2 7 2 1 2 1 2 1 14 1 2 1 2 1 2
15 1 1 3 1 5 3 1 1 3 5 1 3 1 1 15 1 1 3 1 5
16 1 2 1 4 1 2 1 8 1 2 1 4 1 2 1 16 1 2 1 4
17 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 17 1 1 1
18 1 2 3 2 1 6 1 2 9 2 1 6 1 2 3 2 1 18 1 2
19 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 19 1
20 1 2 1 4 5 2 1 4 1 10 1 4 1 2 5 4 1 2 1 20
Für alle a, b P Z gilt (a, b) | a, (a, b) | b, (a, b) ≤ max(| a |, | b |). Für a ≠ 0 gilt
(a, b) ≤ |a|. Analoges gilt für b, sodass (a, b) ≤ min(|a|, |b|) für a,b ≠ 0. Weitere
Eigenschaften des ggT sind:
Beweis
Die ersten fünf Eigenschaften folgen aus der Definition und den elementa-
ren Eigenschaften der Teilbarkeitsrelation. Die anderen Eigenschaften
lassen sich mit Hilfe der Eindeutigkeit der Primfaktorzerlegung leicht
einsehen. Exemplarisch beweisen wir die Eigenschaft (G8) für a, b, d ≥ 1:
Sei d ein Teiler von ab. Dann gilt
exp (d) ≤ exp (ab) = exp (a) + exp (b) für alle Primzahlen p.
Ist nun (d, a) = 1, so gilt exp (a) = 0 für alle Primteiler p von d. Hieraus folgt
exp (d) ≤ 0 + exp (b) = exp (b) für alle Primteiler p von d.
Dies zeigt, dass d | b.
Anschaulicher formuliert lautet der Beweis von (G8) einfach: Ist d ein Teiler
des Produkts ab und teilerfremd zu a, so ist die PFZ von d in der PFZ von b ent-
halten, sodass d ein Teiler von b ist.
Die folgende Aussage ist ein Spezialfall von (G8):
Ist p prim und p | ab, so gilt p | a oder p | b. (Teilbarkeitssatz von Euklid)
Teilt eine Primzahl also ein Produkt zweier Zahlen, so teilt sie einen Faktor.
Diese keineswegs triviale Aussage spielt beim klassischen Beweis der Eindeutig-
keit der Primfaktorzerlegung eine Schlüsselrolle, denn aus der Verallgemeine-
rung des Teilbarkeitssatzes auf mehr als zwei Faktoren lässt sich die Eindeutig-
keit der Primfaktorzerlegung leicht gewinnen. Der Teilbarkeitssatz selbst muss
direkt bewiesen werden. Wir diskutieren dies in den Übungen.
Für das kgV gelten analoge Eigenschaften. Wir verzichten hier auf eine Liste,
notieren aber exemplarisch die zur Eigenschaft (G6) analoge Eigenschaft:
Für alle a, b, c gilt: a | c und b | c impliziert kgV(a, b) | c.
Das kgV ist also die minimale multiplikative Verschmelzung zweier Zahlen.
Liegen Primfaktorzerlegungen der beteiligten Zahlen vor, so lassen sich die
beiden Größen ggT und kgV leicht ablesen:
Beispiele
Für a = 171500 und b = 907500 gilt:
a = 23 ⋅ 54 ⋅ 73 = 23 ⋅ 30 ⋅ 54 ⋅ 73 ⋅ 110
b = 22 ⋅ 31 ⋅ 54 ⋅ 112 = 22 ⋅ 31 ⋅ 54 ⋅ 70 ⋅ 112
Kurz:
Bilde Minima bzw. Maxima in den Exponenten.
Die formale Fassung dieser Überlegung lautet:
(a, b) = ∏ p prim pmin(exp (a), exp (b)) , [ a, b ] = ∏ p prim pmax(exp (a), exp (b)) .
Korollar (Produktsatz)
Für alle a, b gilt |a b| = (a, b) [ a, b ].
Beweis
Es genügt, die Aussage für a, b ≥ 1 zu beweisen. Für a, b ≥ 1 gilt aber
= (a, b) [ a, b ].
Beispiel
Für 48 und 15 liefert das Verfahren die Folge von Zahlenpaaren:
3, 12 3, 9 3, 6 3, 3
Wie bei jedem Algorithmus müssen wir uns überlegen, ob und gegebenenfalls
für welche Startwerte das Verfahren terminiert, d. h. ein Ergebnis erzeugt. Für
den Euklidischen Algorithmus ist dies einfach: In jedem Schritt wird eine der
beiden Zahlen kleiner. Da es in den natürlichen Zahlen keine unendlichen strikt
absteigenden Folgen gibt, muss das Verfahren für beliebig große Startwerte nach
endlich vielen Schritten abbrechen.
Weiter müssen wir zeigen, dass das Verfahren leistet, was wir von ihm erwar-
ten. Wir formulieren und beweisen:
Beweis
Seien a, b > 0. Nach der Eigenschaft (G5) bleibt der größte gemeinsame
Teiler beim Übergang von
a, b zu a, b − a bzw. a, b zu a − b, b
erhalten. Induktiv folgt, dass alle durch die Berechnung erzeugten
Zahlenpaare denselben ggT besitzen. Damit gilt insbesondere
(a, b) = (g, g) = g.
Der Leser wird bei der Betrachtung des obigen Beispiels festgestellt haben,
dass die 15 dreimal in die 48 und die 3 fünfmal in die 15 hineinpasst. Er wird sich
vielleicht gefragt haben, warum wir wiederholten Subtraktionen nicht zusam-
mengefasst haben. Die Antwort ist: „Ziehe die kleinere von der größeren Größe
ab.“ ist die einfachste Formulierung des Verfahrens bringt seine Idee vielleicht
am besten zur Geltung. Natürlich lassen sich wiederholte Wegnahmen auf der
gleichen Seite bündeln. Dieses Vorgehen entspricht einer wiederholten Division
mit Rest und führt zu folgender Version des Verfahrens:
Der Leser beachte, dass in jedem Schritt der letzte Quotient zur neuen zu divi-
dierenden Zahl und der letzte Rest zum neuen Quotienten wird.
Die zweite Version unterscheidet sich von der ersten im Wesentlichen da-
durch, dass mehrere Schritte zu einem Schritt zusammengefasst werden. Damit
ist das Ergebnis der Berechnung erneut der ggT der beiden Anfangszahlen, d. h.
es gilt an + 1 = ggT(a, b).
Beispiel
Angewendet auf a = a0 = 129 und b = a1 = 33 erhalten wir:
129 = 3 ⋅ 33 + 30 q0 = 3 a2 = 30
33 = 1 ⋅ 30 + 3 q1 = 1 a3 = 3
30 = 10 ⋅ 3 q2 = 10
Damit ist (a, b) = (129, 33) = a3 = 3.
Der Euklidischen Algorithmus lässt sich mit Hilfe von Rechtecksflächen visu-
alisieren: Von einem Rechteck werden solange Quadrate abgetrennt, bis ein
Quadrat entsteht. Die Seitenlänge dieses Quadrats ist der größte gemeinsame
Teiler der Rechtsecksseiten. In den folgenden Diagrammen ändern wir die Farbe
der entfernten Quadrate bei jedem kleiner-größer-Wechsel der Seitenlängen,
sodass die Folge der Vielfachheitsquotienten sichtbar wird.
Kettenbrüche
a0 a2 a1 a3 an
= q0 + , = q1 + , …, = qn .
a1 a1 a2 a2 an + 1
Dann gilt
a a0 a2 1 1
= = q0 + = q0 + = q0 + = …
b a1 a1 a1 /a2 q1 + a3 /a2
Definition (Kettenbruch)
Der Kettenbruch [ q0 , …, qn ] P Q wird für n ≥ 0 und q0 , …, qn ≥ 1 rekursiv
definiert durch
1
[ q0 ] = q0 , [ q0 , , …, qn ] = q0 + für n ≥ 1.
[ q1 , …, qn ]
Die Kettenbruchnotation mit eckigen Klammern hat mit dem gleich bezeich-
neten kgV der Zahlen q0 , …, qn nichts zu tun.
Beispiele
(1) Kettenbrüche werden „von hinten nach vorne“ berechnet:
[ 3 ] = 3,
[ 2, 3 ] = 2 + 1/[ 3 ] = 2 + 1/3 = 7/3,
[ 1, 2, 3 ] = 1 + 1/[ 2, 3] = 1 + 3/7 = 10/7.
(2) Bereits die formal einfachsten Kettenbrüche, die nur aus Einsen
bestehen, besitzen bemerkenswerte Eigenschaften. Wir berechnen:
[ 1 ] = 1,
[ 1, 1 ] = 1 + 1/1 = 2 = 2/1,
[ 1, 1, 1 ] = 1 + 1/2 = 3/2,
[ 1, 1, 1, 1 ] = 1 + 2/3 = 5/3,
[ 1, 1, 1, 1, 1 ] = 1 + 3/5 = 8/5.
Ein induktiver Beweis zeigt, dass für alle n ≥ 1 gilt:
[ 1, …, 1 ] = fn /fn − 1 (mit n Einsen im Kettenbruch),
wobei f0 , f1 , f2 , … = 1, 1, 2, 3, 5, 8, … die Folge der Fibonacci-Zahlen
ist, d. h. f0 = f1 = 1 und fn = fn − 2 + fn − 1 für alle n ≥ 2.
Unendliche Kettenbrüche
Der Euklidische Algorithmus lässt sich allgemein für beliebige reelle Größen
x,y > 0 erklären. Wir stellen einige Ergebnisse dieser Verallgemeinerung vor und
verweisen den Leser für eine ausführlichere Darstellung auf die Literatur.
Sind x > y > 0 gegeben, so können wir wie bisher wiederholt die kleinere von
der größeren Zahl abziehen; diese Reduktion lässt sich erneut in Form von Ein-
zelschritten oder in Form einer wiederholten Division mit Rest notieren. Das
Verfahren bricht genau dann nach endlich vielen Schritten ab, wenn der Quoti-
ent der beiden Größen rational ist, d. h. wenn x/y P Q. Andernfalls ergibt sich
eine unendliche Quotientenfolge q0 , q1 , …, qn , …, die zur Definition
[ q0 , q1 , …, qn , … ] = limn → ∞ [ q0 , …, qn ] (unendlicher Kettenbruch)
Anlass gibt. Gilt x/y = [q0 , q1 , q2 , …], so erzeugt der Euklidische Algorithmus für
x, y die Quotientenfolge q0 , q1 , … Speziell gilt dies für x = [ q0 , q1 , … ] und y = 1.
Jeder unendliche Kettenbruch ist eine irrationale Zahl und jede irrationale
Zahl größer als 1 lässt sich eindeutig als unendlicher Kettenbruch darstellen. Das
berühmteste Beispiel ist
1 + £5
[ 1, 1, 1, … ] = . (goldener Schnitt)
2
Zum Beweis setzen wir xn = [ 1, …, 1 ] (n Einsen) für alle n ≥ 1 und
x = [ 1, 1, 1, … ].
Nach Definition eines Kettenbruchs gilt xn + 1 = 1 + 1/xn . Damit erhalten wir
1 1
x = limn xn = limn xn + 1 = limn 1 + ( xn
)=1+ x
.
Linearkombinationen
Der Euklidische Algorithmus liefert mehr als eine effiziente Berechnung des
größten gemeinsamen Teilers zweier Zahlen. Durch Rückwärtsrechnen können
wir eine Darstellung des größten gemeinsamen Teilers als Linearkombination
der beiden Zahlen finden:
Beweis
Wir dürfen a > b > 0 annehmen. Wir führen den Euklidischen Algorithmus
in der Variante II mit Ergebnis an + 1 durch und zeigen für alle k = 0, …, n + 1:
ak ist eine Linearkombination von a = a0 und b = a1 .
Die Aussage ist klar für k = 0 und k = 1. Für k = 2, …, n + 1 gilt:
ak = ak − 2 − qk − 2 ak − 1 .
Dies zeigt, dass ak eine Linearkombination von ak − 2 und ak − 1 ist. Damit
folgt die Behauptung durch eine endliche starke Induktion, denn eine
Linearkombination von Linearkombinationen ist wieder eine Linearkombi-
nation.
Mit anderen Worten: Die Linearkombinationen zweier Zahlen sind genau die
ganzzahligen Vielfachen des größten gemeinsamen Teilers der beiden Zahlen.
Beweis
zu ⊆ : Sei c = na + mb eine Linearkombination von a und b. Dann ist
(a, b) ein Teiler von c nach unserer Teilbarkeitseigenschaft (T7) (ein
gemeinsamer Teiler von a und b ist auch ein Teiler einer Linearkombi-
nation von a und b). Folglich gibt es ein d mit d (a, b) = c. Dies zeigt,
dass die Menge auf der linken Seite eine Teilmenge der Menge auf der
rechten Seite ist.
zu ⊇ : Wir wissen, dass (a, b) eine Linearkombination von a und b ist. Da
ein ganzzahliges Vielfaches einer Linearkombination zweier Zahlen
wieder eine solche ist, ist d (a, b) für alle ganzen Zahlen d eine Linear-
kombination von a und b. Damit ist die Menge auf der rechten Seite
eine Teilmenge der Menge auf der linken Seite.
Beispiel
Die Linearkombinationen der Zahlen 15 und 6 sind nach dem Satz genau
die ganzzahligen Vielfachen von 3 = (15, 6). Mit Hilfe einer Tabelle können
wir die Struktur dieser Linearkombinationen veranschaulichen:
−18 −12 −6 0 6 12 18
0 −18 −12 −6 0 6 12 18
15 −3 3 9 15 21 27 33
30 12 18 24 30 36 42 48
45 27 33 39 45 51 57 63
Als Anwendung der Ergebnisse zeigen wir einen klassischen Satz über das simul-
tane Lösen von Kongruenzen. Zur Motivation betrachten wir die Kongruenzen
x ; 2 mod(3) und x ; 4 mod(5).
Die erste Kongruenz hat die Lösungen
…, −1, 2, 5, 8, 11, 14 , …,
die zweite die Lösungen
…, −1, 4 , 9 , 14, 19, 24, …
Wir sehen, dass genau die ganzen Zahlen
…, −1, 14, 29, …
beide Kongruenzen simultan lösen. Es stellen sich die Fragen, ob und wann eine
simultane Lösung zweier Kongruenzen immer existiert, und wie wir im Fall der
Existenz eine Lösung effektiv berechnen können. Die Existenzfrage ist im Allge-
meinen zu verneinen. Zum Beispiel haben die Kongruenzen
x ; 0 mod(2) und x ; 1 mod(6)
keine gemeinsame Lösung. Der folgende Satz besagt, dass für teilerfremde Mo-
duln stets eine Lösung existiert, und dass diese Lösung modulo dem Produkt der
Moduln eindeutig ist:
Beweis
zur Existenz:
Mit Hilfe des Euklidischen Algorithmus können wir 1 = (m1 , m2 ) als
Linearkombination von m1 und m2 darstellen. Seien also n1 , n2 P Z mit
1 = n1 m1 + n2 m2 .
Nun setzen wir
x = a1 n2 m2 + a2 n1 m1 .
Dann ist x wie gewünscht, da
x ; a1 n2 m2 ; a1 (1 − n1 m1 ) ; a1 mod(m1 ),
x ; a2 n1 m1 ; a2 (1 − n2 m2 ) ; a2 mod(m2 ).
zur Eindeutigkeit:
Sind x und x′ wie in (+), so gilt x ; x′ mod(m1 ) und x ; x′ mod(m2 ).
Dann gilt m1 |(x − x′) und m2 |(x − x′). Wegen (m1 , m2 ) = 1 gilt also
m1 m2 |(x − x′). Damit ist x ; x′ mod(m1 m2 ).
Der konstruktive Beweis zeigt, wie sich die modulo m eindeutige Lösung be-
rechnen lässt. Das Verfahren ist auch für große Moduln sehr effizient.
Beispiel
Wir lösen die obigen Kongruenzen
2 ; x mod(3) und 4 ; x mod(5)
mit dem Verfahren des Beweises. Der Euklidische Algorithmus liefert
1 = 2 ⋅ 3 − 1 ⋅ 5.
Damit ist
x = a1 n2 m2 + a2 n1 m1 = 2 ⋅ (−1) ⋅ 5 + 4 ⋅ 2 ⋅ 3 = −10 + 24 = 14
die modulo 15 eindeutige Lösung der Kongruenzen, in Übereinstimmung
mit der oben durch Auflisten gefundenen Lösung.
Das Ergebnis lässt sich auf mehr als zwei Kongruenzen verallgemeinern:
Um eine Lösung von (+) effektiv zu bestimmen, können wir die beiden ersten
Kongruenzen zu
x ; a12 mod(m1 m2 )
zusammenfassen, wobei a12 die modulo m1 m2 eindeutige Lösung der beiden
Kongruenzen ist. Damit haben wir ein äquivalentes System mit r − 1 Kongruen-
zen erzeugt. Die Wiederholung dieser Reduktion liefert schließlich die modulo
m eindeutige Lösung des Systems.
Für den nicht teilerfremden Fall gilt (Übung):
Übungen
Übung 1
Beweisen Sie die Eigenschaften (G1) − (G5) des größten gemeinsamen
Teilers mit Hilfe der Eigenschaften der Teilbarkeitsrelation.
Übung 2
Beweisen Sie die Eigenschaft (G6) − (G10) des größten gemeinsamen
Teilers mit Hilfe der Eigenschaften der Teilbarkeitsrelation und der
Eindeutigkeit der Primfaktorzerlegung.
Übung 3
Sei n ≥ 2, und seien a1 , …, an + 1 P Z. Zeigen Sie:
(a1 , …, an + 1 ) = ((a1 , …, an ), an + 1 ).
Übung 4
Seien a, b, c P Z. Zeigen Sie, dass die folgenden Distributivgesetze gelten:
(a) (a, [ b, c ]) = [ (a, b), (a, c) ],
(b) [ a, (b, c) ] = ([ a, b ], [ a, c ]).
Übung 5
Führen Sie den Euklidischen Algorithmus für a = 132 und b = 84 in beiden
Versionen durch und stellen Sie (a, b) als Linearkombination von a und b dar.
Übung 6
Zeigen Sie mit Hilfe der Teilbarkeitseigenschaften (T1) − (T7) und der
Division mit Rest (ohne Verwendung der Eindeutigkeit der Primfaktorzer-
legung), dass für alle a, b, c, d, p gilt:
(a) a | c und b | c impliziert [ a, b ] | c,
(b) d | a und d | b impliziert d | (a, b),
(c) (ca, cb) = | c | (a, b),
(d) p prim und p | a b impliziert p | a oder p | b.
(Teilbarkeitssatz von Euklid)
[ zu (a): Verwenden Sie Division mit Rest.
zu (b): Sei v = [ d, (a, b) ]. Zeigen Sie v = (a, b) mit Hilfe von (a).
zu (c): Ohne Einschränkung seien a, b ≠ 0 und c > 0. Wir setzen d = (a, b)
und d′ = (ca, cb). Zeigen Sie cd ≤ d′ und weiter d′ ≤ cd mit Hilfe von (b).
zu (d): Verwenden Sie (c). ]
Übung 7
Zeigen Sie den Teilbarkeitssatz von Euklid mit Hilfe des Ergebnisses, dass
der größte gemeinsame Teiler zweier Zahlen eine Linearkombination der
beiden Zahlen ist.
Übung 8
Zeigen Sie die Eindeutigkeit der Primfaktorzerlegung mit Hilfe des
Teilbarkeitssatzes von Euklid.
Übung 9
Sei A eine unendliche Menge ganzer Zahlen, und sei d ≥ 1 die größte Zahl,
die alle Elemente von A teilt. Zeigen Sie, dass a1 , …, an P A existieren mit
d = (a1 , …, an ).
Übung 10
Sei n ≥ 2, und seien a1 , …, an P Z. Zeigen Sie, dass
{ k1 a1 + … + kn an | k1 , …, kn P Z } = { d (a1 , …, an ) | d P Z }.
Übung 11
Zeigen Sie, dass für alle q0 , …, qn ≥ 1 gilt: [ q0 , …, qn , 1 ] = [ q0 , …, qn + 1 ].
Übung 12
Seien q0 , …, qn ≥ 1 mit qn ≠ 1. Weiter seien a > b ≥ 1 mit a/b = [ q0 , …, qn ].
Zeigen Sie, dass q0 , …, qn die Folge der Quotienten ist, die der Euklidische
Algorithmus für a, b erzeugt.
Übung 13
Berechnen Sie die Kettenbrüche
[ 2 ], [ 2, 2 ], [ 2, 2, 2 ], [ 2, 2, 2, 2 ], [ 2, 2, 2, 2, 2 ]
in Form gekürzter Brüche. Bestimmen Sie zudem den Wert der unendli-
chen Kettenbrüche [ 2, 2, 2, … ] und [ 1, 2, 2, 2, … ].
Übung 14
Seien A, B, C, D, E die Ecken eines regelmäßigen Fünfecks mit Seiten-
länge AB = 1 und Diagonale d = AC. Zeigen Sie durch geometrische
Argumentation, dass der Euklidische Algorithmus für d und 1 die
unendliche Quotientenfolge 1, 1, 1, … erzeugt, sodass d der goldene
Schnitt ist.
Übung 15
Sei d die Länge der Diagonale des Einheitsquadrats. Zeigen Sie durch
geometrische Argumentation, dass der Euklidische Algorithmus für d und 1
die unendliche Quotientenfolge 2, 1, 1, 1, … erzeugt. Dies liefert einen
weiteren Beweis für die Irrationalität der Quadratwurzel aus 2.
Übung 16
Bestimmen Sie die kleinste natürliche Zahl x ≥ 1, die bei Division durch 2,
3, 5 und 7 die Reste 0, 2, 3 bzw. 4 besitzt.
Übung 17
Lösen Sie die Kongruenz 17x ; 1 mod(60), indem die Kongruenzen
17x ; 1 mod(4), 17x ; 1 mod(3), 17x ; 1 mod(5)
durch Probieren lösen und den Chinesischen Restsatz anwenden.
Übung 18
Sei r ≥ 2, und seien m1 , …, mr ≥ 1 und a1 , …, ar ≥ 1 beliebig. Zeigen Sie,
dass die folgenden Aussagen äquivalent sind:
(a) Es gibt ein x mit x ; ai mod(mi ) für alle 1 ≤ i ≤ r.
(b) (mi , mj )|(ai − aj ) für alle 1 ≤ i < j < r.
Zeigen Sie weiter, dass im Fall der Existenz eine Lösung x modulo dem kgV
m = [ m1 , …, mr ] der Moduln eindeutig bestimmt ist.
Die Eulersche ϕ-Funktion gibt für jede positive Zahl m an, wie viele zu m teiler-
fremde Zahlen im Intervall zwischen 1 und m liegen. Diese zahlentheoretische
Funktion spielt eine Schlüsselrolle in der Theorie der Kongruenzen. Sie ist ein
Paradebeispiel für eine multiplikative Funktion, also eine Funktion f : N* → N*
mit der Eigenschaft
f(m1 m2 ) = f(m1 ) f(m2 ) für alle teilerfremden m1 , m2 ≥ 1.
Wir beginnen mit einer sehr nützlichen Regel über das Kürzen von Faktoren
in Kongruenzen.
Beweis
Die zweite Äquivalenz ergibt sich aus der ersten für den Spezialfall (m, c) = 1.
Es genügt also, die erste Äquivalenz zu zeigen. Zur Vereinfachung der
Notation setzen wir
m c
m′ = und c′ = .
(c, m) (c, m)
Beispiele
(1) Es gilt 4 ; 28 (3). Wegen (2, 3) = (4, 3) = 1 können wir durch 2 und 4
Kürzen. Es gilt 2 ; 14 (3) und 1 ; 7 (3).
(2) Es gilt 4 ; 8 (4). Wegen non(2 ; 4 (4)) ist das Kürzen durch 2 ohne
Veränderung des Moduls nicht möglich. Die Kürzungsregel liefert
wegen 4/(2, 4) = 2 die korrekte Aussage 2 ; 4 (2).
(3) Es gilt 4 ; 12 (4). Weiter ist 2 ; 6 (4) korrekt, aber durch die
Kürzungsregel nicht abgedeckt, da (2, 4) = 2. Die Kürzungsregel liefert
lediglich 2 ; 6 (2).
Die ϕ-Funktion
Hier und im Folgenden bezeichnet |A| die Anzahl der Elemente einer endli-
chen Menge A. Nach Definition gilt ϕ(1) = 1. Für alle m ≥ 2 ist ϕ(m) die Anzahl
der zu m teilerfremden Zahlen r mit 1 ≤ r < m. Wir erläutern die Definition durch
einige Beispiele.
Die Zahlen in der mittleren Spalte nennen wir auch die teilerfremden Reste mo-
dulo m, und wir zählen sie in der Form
1 = r1 < … < rϕ(m) ≤ m
auf. (Diese Sprechweise ist für m = 1 streng genommen nicht korrekt, da die 1
kein Rest einer Division durch 1 ist.) Für m = 10 sind also zum Beispiel
r1 = 1, r2 = 3, r3 = 7, r4 = 9
die teilerfremden Reste.
Weitere Werte der ϕ-Funktion bis einschließlich 100 können der folgenden
Tabelle entnommen werden. So ist zum Beispiel ϕ(36) = 12.
1 2 3 4 5 6 7 8 9 10
0+ 1 1 2 2 4 2 6 4 6 4
10 + 10 4 12 6 8 8 16 6 18 8
20 + 12 10 22 8 20 12 18 12 28 8
30 + 30 16 20 16 24 12 36 18 24 16
40 + 40 12 42 20 24 22 46 16 42 20
50 + 32 24 52 18 40 24 36 28 58 16
60 + 60 30 36 32 48 20 66 32 44 24
70 + 70 24 72 36 40 36 60 24 78 32
80 + 54 40 82 24 64 42 56 40 88 24
90 + 72 44 60 46 72 32 96 42 60 40
100
80
60
40
20
20 40 60 80 100
500
400
300
200
100
5000
4000
3000
2000
1000
Aus obiger Tabelle ist keine einfache Formel zur allgemeinen Berechnung von
ϕ(m) ersichtlich. Überraschenderweise gibt es eine derartige Formel. Sie beruht
auf weitergehenden Eigenschaften der ϕ-Funktion. Um diese zu ergründen, be-
trachten wir die Reste modulo m noch etwas genauer. Wir definieren:
Beispiele
(1) Für m = 1 und a beliebig ist { a } ein vollständiges und zudem auch ein
reduziertes Restsystem modulo 1.
(2) Sei m ≥ 1. Dann ist { 0, …, m − 1 } ein Restsystem und { r1 , …, rϕ(m) } ein
reduziertes Restsystem modulo m.
(3) Modulo 10 ist { 4, 5, 6, …, 13 } ein Restsystem. Weiter sind { 1, 3, 7, 9 }
und { 3, 9, 21, 27 } reduzierte Restsysteme, nicht aber { 2, 6, 14, 18 }.
Der Beweis sei dem Leser zur Übung überlassen. Nützlich hierbei ist:
(+) Für alle m ≥ 1 und alle a, b gilt: a ; b (m) impliziert (a, m) = (b, m).
Kurz: Kongruentes Ersetzen ändert den ggT mit dem Modul nicht. Speziell
bleibt die Teilerfremdheit von a und m erhalten, wenn wir a durch ein kongruen-
tes b ersetzen.
Zusammenfassend halten wir folgende anschauliche Beschreibung fest:
Dieses Prinzip können wir visualisieren, indem wir kongruente Zahlen zeilen-
weise anordnen. Für den Modul m = 9 ergibt sich (mit rot = teilerfremd):
Ein vollständiges Restsystem modulo 9 erhalten wir, indem wir aus jeder Zeile
genau ein Element auswählen (dargestellt durch grüne Kreise). Die natürliche
(oder wie man in der Mathematik sagt „kanonische“) Wahl ist 0, …, 8, aber auch
9, −17, 2, 39, 40, −4, 6, 25, −10
ist möglich. Das kanonische reduzierte Restsystem modulo 9 ist
r1 = 1, r2 = 2, r3 = 4, r4 = 5, r5 = 7, r6 = rϕ(9) = 8,
aber auch
−17, 2, 40, −4, 25, −10
ist ein reduziertes Restsystem. Allgemein erhalten wir aus einem beliebigen voll-
ständigen Restsystem ein reduziertes System, indem wir alle Elemente streichen,
die nicht zu teilerfremden Zeilen gehören. Dieses Vorgehen motiviert die Be-
zeichnung „reduziert“.
Unser erstes Ergebnis ist, dass Restsysteme bei der Multiplikation mit einer
zum Modul teilerfremden Zahl erhalten bleiben. Aus dieser Beobachtung wird
sich später der Satz von Euler in wenigen Zeilen ergeben.
Beweis
zu (a):
Die m Zahlen c 0, …, c (m − 1) sind nach der Kürzungsregel für
Kongruenzen wegen (c, m) = 1 paarweise inkongruent modulo m.
Damit bilden sie ein Restsystem modulo m.
zu (b):
Die ϕ(m) Zahlen c r1 , … c rϕ(m) sind nach der Kürzungsregel paarweise
inkongruent und wegen (m, c) = 1 teilerfremd zu m. Damit bilden sie
ein reduziertes Restsystem modulo m.
Beispiele
(1) Sei m = 10. Für c = 3 ergibt sich:
a 0 1 2 3 4 5 6 7 8 9
ca 0 3 6 9 12 15 18 21 24 27
f(a) 0 3 6 9 2 5 8 1 4 7
a 1 3 7 9
ca 3 9 21 27
f(a) 3 9 1 7
(2) Sei m = 12. Die folgende Tabelle listet alle Werte f(c1), …, f(c11) für
c = 0, …, 11 (c senkrecht). Es ergeben sich genau dann vollständige
Restsysteme (grüne Zeilen) modulo 12, wenn (c, 12) = 1. Reduzierte
Systeme sind durch rote Kreise markiert.
0 1 2 3 4 5 6 7 8 9 10 11
0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 2 3 4 5 6 7 8 9 10 11
2 0 2 4 6 8 10 0 2 4 6 8 10
3 0 3 6 9 0 3 6 9 0 3 6 9
4 0 4 8 0 4 8 0 4 8 0 4 8
5 0 5 10 3 8 1 6 11 4 9 2 7
6 0 6 0 6 0 6 0 6 0 6 0 6
7 0 7 2 9 4 11 6 1 8 3 10 5
8 0 8 4 0 8 4 0 8 4 0 8 4
9 0 9 6 3 0 9 6 3 0 9 6 3
10 0 10 8 6 4 2 0 10 8 6 4 2
11 0 11 10 9 8 7 6 5 4 3 2 1
Dieses Motiv spielt auch für die folgende weitere Untersuchung der ϕ-Funktion
eine Schlüsselrolle.
Mit Hilfe von Restsystemen können wir nun eine nicht offensichtliche Ei-
genschaft der Eulerschen ϕ-Funktion beweisen:
Beweis
Aus (m1 , m2 ) = 1 erhalten wir, dass für alle r, r′, s, s′ gilt (Übung):
(a) rm2 + sm1 ; r′m2 + s′m1 (m) genau dann, wenn r ; r′ (m1 ), s ; s′ (m2 ).
(b) (r m2 + s m1 , m) = 1 genau dann, wenn (r, m1 ) = (s, m2 ) = 1.
Speziell gilt |A| = m und |B| = ϕ(m1 )ϕ(m2 ). Nach (a) ist A ein Restsystem
modulo m, und nach (b) gilt
B = { a P A | (a, m) = 1 }.
Damit ist B ein reduziertes Restsystem modulo m.
Der Beweis erlaubt es, die teilerfremden Reste modulo m aus den teilerfrem-
den Resten der Faktoren m1 und m2 zu generieren:
Beispiele
(1) Seien m1 = 3 und m2 = 10. Dann gilt m = 30, ϕ(m1 ) = 2, ϕ(m2 ) = 4,
r1 = 1, r2 = 2, s1 = 1, s2 = 3, s3 = 7, s4 = 9,
B = { 1⋅10 + 1⋅3, …, 2⋅10 + 9⋅3 } = { 13, 19, 31, 37, 23, 29, 41, 47 }.
Übergang zu kongruenten Zahlen im Intervall 1, …, 30 liefert
C = { 13, 19, 1, 7, 23, 29, 11, 17 } = { 1, 7, 11, 13, 17, 19, 23, 29 }.
Die acht Elemente von C sind die teilerfremden Reste modulo 30.
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Die Multiplikativität von ϕ lässt sich auch elegant mit Hilfe des Chinesischen
Restsatzes beweisen:
Ohne weitere Schwierigkeiten erhalten wir nun eine Formel, die eine einfache
Berechnung von ϕ(m) erlaubt, wenn die Primteiler von m bekannt sind:
Beweis
Für alle Primzahlen p und alle e ≥ 1 gilt ϕ(pe ) = pe − pe − 1 , da im Intervall
von 1 bis pe genau die pe − 1 Zahlen
p, 2p, 3p, …, pe − 1 p
nicht teilerfremd zu p sind. Damit folgt die erste Formel aus der Multipli-
kativität von ϕ (da pi ei und pj ej für i ≠ j teilerfremd sind). Die zweite Formel
erhalten wir durch Ausklammern der Faktoren pk ek aus der ersten.
Beispiele
(1) Es gilt 4400 = 24 ⋅ 52 ⋅ 11. Damit erhalten wir
1 ⋅ 4 ⋅ 10
ϕ(4400) = 4400 (1 − 1/2)(1 − 1/5)(1 − 1/11) = 4400 = 1600.
2 ⋅ 5 ⋅ 11
(2) Für p prim und k ≥ 1 gilt ϕ(pk ) = pk (1 − 1/p) = (p − 1) pk − 1 . Speziell ist
ϕ(2k ) = 2k − 1 , ϕ(3k ) = 2 ⋅ 3k − 1 , ϕ(5k ) = 4 ⋅ 5k − 1 .
(3) Sind p ≠ q Primzahlen, so gilt ϕ(pq) = (p − 1) (q − 1).
2000
1500
1000
500
Die Multiplikativität erklärt die Muster der ϕ-Funktion. Für p ≥ 5 prim gilt:
ϕ(p) = p − 1 , p (gelb), ϕ(2p) = ϕ(p) , (2p)/2 (grün), ϕ(3p) = 2ϕ(p) , 3/2(3p) (rot)
Definition (Multiplikativität)
Eine zahlentheoretische Funktion f heißt multiplikativ, falls f von der
Nullfunktion verschieden ist und
f(n m) = f(n) f(m) für alle teilerfremden n, m ≥ 1.
Eine multiplikative Funktion f ist durch ihre Werte auf den Primzahlpotenzen pe
eindeutig bestimmt, da
f(p1 e1 … pk ek ) = f(p1 e1 ) … f(pk ek )
für alle paarweise verschiedenen Primzahlen p1 , …, pk und alle Exponenten
e1 , …, ek ≥ 1. Weiter gilt f(1) = 1 (Übung).
Viele wichtige zahlentheoretische Funktionen sind multiplikativ. Prominente
Beispiele neben der ϕ-Funktion sind die Teilerzahlfunktion τ : N* → N* und die
Teilersummenfunktion σ : N* → N*, die für alle n ≥ 1 definiert sind durch
τ(n) = |{ d | 1 ≤ d ≤ n, d|n }|,
σ(n) = ∑ d|n d, wobei hier und im Folgenden d ≥ 1 in derartigen Summen.
Die Multiplikativität dieser Funktionen kann mit folgendem allgemeinen Satz
bewiesen werden, dessen Beweis wir in den Übungen diskutieren:
τ(n) = ∑ d | n 1, σ(n) = ∑ d | n d,
pexp (n) + 1 − 1
τ(n) = ∏ p prim, p|n (exp (n) + 1), σ(n) = ∏ p prim, p|n .
p−1
30
25
20
15
10
3000
2500
2000
1500
1000
500
Übungen
Übung 1
Sei m ≥ 1. Zeigen Sie, dass für alle a, b gilt:
(+) a ; b (m) impliziert (a, m) = (b, m).
Übung 2
Sei m ≥ 1. Zeigen Sie:
(a) Zahlen a1 , …, am bilden genau dann ein vollständiges Restsystem
modulo m, wenn sie paarweise inkongruent modulo m sind.
(b) Zahlen b1 , …, bϕ(m) bilden genau dann ein reduziertes Restsystem
modulo m, wenn sie paarweise inkongruent und teilerfremd zu m sind.
(c) Ist A ein Restsystem modulo m, so ist B = { a P A | (a, m) = 1 } ein
reduziertes Restsystem modulo m.
Übung 3
Seien m, n ≥ mit (n, m) = 1. Zeigen Sie, dass alle r, r′, s, s′ P Z gilt:
(a) rm + sn ; r′m + s′n (nm) genau dann, wenn r ; r′ (n) und s ; s′ (m).
(b) (r m + s n, n m) = 1 genau dann, wenn (r, n) = 1 und (s, m) = 1.
Übung 4
Für die Produkte p1 ⋅ … ⋅ pn der ersten Primzahlen gilt
ϕ(2) = 1
ϕ(2 ⋅ 3) = 2 = 21
ϕ(2 ⋅ 3 ⋅ 5) = ϕ(30) = 8 = 23
ϕ(2 ⋅ 3 ⋅ 5 ⋅ 7) = ϕ(210) = 48 = 24 ⋅ 31
ϕ(2 ⋅ 3 ⋅ 5 ⋅ 7 ⋅ 11) = ϕ(2310) = 480 = 25 ⋅ 31 ⋅ 51
ϕ(2 ⋅ 3 ⋅ … ⋅ 13) = ϕ(30030) = 5760 = 27 ⋅ 32 ⋅ 51
ϕ(2 ⋅ 3 ⋅ … ⋅ 17) = ϕ(510510) = 92160 = 211 ⋅ 32 ⋅ 51
ϕ(2 ⋅ 3 ⋅ … ⋅ 19) = ϕ(9699690) = 1658880 = 212 ⋅ 34 ⋅ 51
…
ϕ(2 ⋅ 3 ⋅ … ⋅ 71) = 230 ⋅ 310 ⋅ 55 ⋅ 73 ⋅ 112 ⋅ 131 ⋅ 231 ⋅ 291
Übung 5
Zeigen Sie:
(a) ϕ(1) + ϕ(p) + … + ϕ(pe ) = pe für alle Primzahlen p und e ≥ 0.
(b) ∑ 1 ≤ d ≤ m, d|m ϕ(d) = m für alle m ≥ 1.
[ Hinweis zu (b): Betrachten Sie die Primfaktorzerlegung von m. Schreiben
Sie die Summe mit Hilfe der Multiplikativität der ϕ-Funktion als Summe
von Produkten und wenden Sie das Distributivgesetz an, um ein Produkt
von Summen wie in (a) zu erhalten. ]
Übung 6
Sei f : N* → N* multiplikativ. Zeigen Sie:
(a) f(1) = 1.
(b) Für alle Primzahlen p1 < … < pk und alle e1 , …, ek ≥ 1 gilt
f(p1 e1 … pk ek ) = f(p1 e1 ) … f(pk ek ).
Übung 7
Sei f : N* → C multiplikativ. Weiter sei g : N* → C definiert durch
[ Seien n, m ≥ 1 teilerfremd. Zu zeigen ist, dass g(nm) = g(n) g(m). Der Fall
n = 1 oder m = 1 ist klar. Seien also n, m > 1. Betrachten Sie die kanonischen
Primfaktorzerlegungen von n, m und nm und zeigen Sie, dass
Übung 8
Sei n ≥ 2, und sei p1 e1 … pk ek die Primfaktorzerlegung von n. Zeigen Sie:
(a) τ(n) = ∏ 1 ≤ i ≤ k ( ei + 1 ) ,
pi ei + 1 − 1
(b) σ(n) = ∏ 1 ≤ i ≤ k .
pi − 1
Übung 9
Für welche n ≥ 1 ist τ(n) ungerade? Für welche n ≥ 1 ist σ(n) ungerade?
Finden Sie einfache Charakterisierungen und beweisen Sie Ihre Behaup-
tungen.
Übung 10
Für eine natürliche Zahl n ≥ 1 sei k(n) die Anzahl der (mehrfach gezählten)
Primfaktoren von n. Zum Beispiel gilt
k(1) = 0, k(2) = k(3) = k(5) = k(7) = 1, k(4) = k(6) = 2, k(8) = 3.
Wir definieren nun f : N* → Z durch
f(n) = (−1)k(n) für alle n ≥ 1.
Zeigen Sie, dass für alle n, m ≥ 1 gilt:
Übung 11
Wir definieren die Möbius-Funktion µ : N* → C durch die folgenden
Setzungen:
(1) µ(1) = 1.
(2) µ(n) = 0, falls es ein a > 1 gibt mit a2 |n.
(3) µ(n) = (−1)k , falls es Primzahlen p1 < … < pk gibt mit n = p1 … pk .
Zeigen Sie:
(a) µ ist multiplikativ.
(b) ∑ d | n µ(d) = 0 für alle n > 1.
Übung 12
Seien f, F : N* → C (nicht notwendig multiplikative) Funktionen. Zeigen
Sie, dass die folgenden Aussagen äquivalent sind:
(a) F(n) = ∑ d | n f(d) für alle n ≥ 1.
(b) f(n) = ∑ d | n µ(d) F(n/d) für alle n ≥ 1.
Wir zeigen die klassischen zahlentheoretischen Sätze von Euler und Fermat und
gewinnen mit ihrer Hilfe eine Lösungsformel für Kongruenzen ersten Grades.
Eine effektive Lösungsmethode ergibt sich weiter aus dem Euklidischen Algo-
rithmus.
Wir können nun die ersten „großen Sätze“ über Kongruenzen zeigen. Wir be-
ginnen mit:
Beweis
Seien wieder 1 = r1 < … < rϕ(m) ≤ m die zu m teilerfremden Zahlen zwischen
1 und m. Nach dem Umordnungssatz für Reste gilt
r1 ⋅ r2 ⋅ … ⋅ rϕ(m) ; ar1 ⋅ ar2 ⋅ … ⋅ arϕ(m) (m).
Die Zusammenfassung der a-Faktoren auf der rechten Seite liefert
r1 ⋅ r2 ⋅ … ⋅ rϕ(m) ; aϕ(m) r1 ⋅ r2 ⋅ … ⋅ rϕ(m) (m).
Da alle Zahlen r1 , …, rϕ(m) teilerfremd zu m sind, können wir sie nach der
Kürzungsregel alle kürzen, sodass
1 ; aϕ(m) (m).
Beweis
Da a kein Vielfaches von p und p eine Primzahl ist, sind a und p teilerfremd.
Wegen ϕ(p) = p − 1 ergibt sich die Aussage aus dem Satz von Euler.
Der Satz von Fermat ist also der Spezialfall des Satzes von Euler für einen
Primzahlmodul.
Bemerkung
Oft wird der Satz von Fermat auch so formuliert:
Für alle Primzahlen p und alle ganzen Zahlen a ist ap ; a (p).
Diese Formulierung ist äquivalent zur Formulierung des Korollars: Denn
ist a ein Vielfaches von p, so ist ap ; 0 ; a (p). Sei also a kein Vielfaches von
p. Dann gehen die Kongruenzen der beiden Versionen durch Multiplika-
tion mit a bzw. Kürzen von a ineinander über.
0 1 2 3 4 5 6 7 8 9
0 1 0 0 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1 1 1 1
2 1 2 4 8 6 2 4 8 6 2
3 1 3 9 7 1 3 9 7 1 3
4 1 4 6 4 6 4 6 4 6 4
5 1 5 5 5 5 5 5 5 5 5
6 1 6 6 6 6 6 6 6 6 6
7 1 7 9 3 1 7 9 3 1 7
8 1 8 4 2 6 8 4 2 6 8
9 1 9 1 9 1 9 1 9 1 9
0 1 2 3 4 5 6 7 8 9 10
0 1 0 0 0 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1 1 1 1 1
2 1 2 4 8 5 10 9 7 3 6 1
3 1 3 9 5 4 1 3 9 5 4 1
4 1 4 5 9 3 1 4 5 9 3 1
5 1 5 3 4 9 1 5 3 4 9 1
6 1 6 3 7 9 10 5 8 4 2 1
7 1 7 5 2 3 10 4 6 9 8 1
8 1 8 9 6 4 10 3 2 5 7 1
9 1 9 4 3 5 1 9 4 3 5 1
10 1 10 1 10 1 10 1 10 1 10 1
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
2 1 2 4 8 16 10 20 18 14 6 12 2 4 8 16 10 20 18 14 6 12 2
3 1 3 9 5 15 1 3 9 5 15 1 3 9 5 15 1 3 9 5 15 1 3
4 1 4 16 20 14 12 4 16 20 14 12 4 16 20 14 12 4 16 20 14 12 4
5 1 5 3 15 9 1 5 3 15 9 1 5 3 15 9 1 5 3 15 9 1 5
6 1 6 14 18 20 10 16 8 4 2 12 6 14 18 20 10 16 8 4 2 12 6
7 1 7 5 13 3 21 15 17 9 19 1 7 5 13 3 21 15 17 9 19 1 7
8 1 8 20 6 4 10 14 2 16 18 12 8 20 6 4 10 14 2 16 18 12 8
9 1 9 15 3 5 1 9 15 3 5 1 9 15 3 5 1 9 15 3 5 1 9
10 1 10 12 10 12 10 12 10 12 10 12 10 12 10 12 10 12 10 12 10 12 10
11 1 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11
12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12
13 1 13 15 19 5 21 9 7 3 17 1 13 15 19 5 21 9 7 3 17 1 13
14 1 14 20 16 4 12 14 20 16 4 12 14 20 16 4 12 14 20 16 4 12 14
15 1 15 5 9 3 1 15 5 9 3 1 15 5 9 3 1 15 5 9 3 1 15
16 1 16 14 4 20 12 16 14 4 20 12 16 14 4 20 12 16 14 4 20 12 16
17 1 17 3 7 9 21 5 19 15 13 1 17 3 7 9 21 5 19 15 13 1 17
18 1 18 16 2 14 10 4 6 20 8 12 18 16 2 14 10 4 6 20 8 12 18
19 1 19 9 17 15 21 3 13 5 7 1 19 9 17 15 21 3 13 5 7 1 19
20 1 20 4 14 16 12 20 4 14 16 12 20 4 14 16 12 20 4 14 16 12 20
21 1 21 1 21 1 21 1 21 1 21 1 21 1 21 1 21 1 21 1 21 1 21
Es ist ein offenes Problem, ob es unendlich viele Primzahlen p mit der Eigen-
schaft f(p) = p − 1 gibt. Die ersten p mit ultralangen Perioden sind
7, 17, 19, 23, 29, 47, 59, 61, 97, 109, 113, 131, 149, 167, 179, 181, 193
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
2 1 2 4 8 16 9 18 13 3 6 12 1 2 4 8 16 9 18 13 3 6 12 1
3 1 3 9 4 12 13 16 2 6 18 8 1 3 9 4 12 13 16 2 6 18 8 1
4 1 4 16 18 3 12 2 8 9 13 6 1 4 16 18 3 12 2 8 9 13 6 1
5 1 5 2 10 4 20 8 17 16 11 9 22 18 21 13 19 3 15 6 7 12 14 1
6 1 6 13 9 8 2 12 3 18 16 4 1 6 13 9 8 2 12 3 18 16 4 1
7 1 7 3 21 9 17 4 5 12 15 13 22 16 20 2 14 6 19 18 11 8 10 1
8 1 8 18 6 2 16 13 12 4 9 3 1 8 18 6 2 16 13 12 4 9 3 1
9 1 9 12 16 6 8 3 4 13 2 18 1 9 12 16 6 8 3 4 13 2 18 1
10 1 10 8 11 18 19 6 14 2 20 16 22 13 15 12 5 4 17 9 21 3 7 1
11 1 11 6 20 13 5 9 7 8 19 2 22 12 17 3 10 18 14 16 15 4 21 1
12 1 12 6 3 13 18 9 16 8 4 2 1 12 6 3 13 18 9 16 8 4 2 1
13 1 13 8 12 18 4 6 9 2 3 16 1 13 8 12 18 4 6 9 2 3 16 1
14 1 14 12 7 6 15 3 19 13 21 18 22 9 11 16 17 8 20 4 10 2 5 1
15 1 15 18 17 2 7 13 11 4 14 3 22 8 5 6 21 16 10 12 19 9 20 1
16 1 16 3 2 9 6 4 18 12 8 13 1 16 3 2 9 6 4 18 12 8 13 1
17 1 17 13 14 8 21 12 20 18 7 4 22 6 10 9 15 2 11 3 5 16 19 1
18 1 18 2 13 4 3 8 6 16 12 9 1 18 2 13 4 3 8 6 16 12 9 1
19 1 19 16 5 3 11 2 15 9 10 6 22 4 7 18 20 12 21 8 14 13 17 1
20 1 20 9 19 12 10 16 21 6 5 8 22 3 14 4 11 13 7 2 17 18 15 1
21 1 21 4 15 16 14 18 10 3 17 12 22 2 19 8 7 9 5 13 20 6 11 1
22 1 22 1 22 1 22 1 22 1 22 1 22 1 22 1 22 1 22 1 22 1 22 1
500
400
300
200
100
20 40 60 80 100
Werte der Funktion g mit g(n) = mink ≥ 1 (10k ; 1 (pn )) mit der n-ten Primzahl pn ≠ 2, 5.
Stellen n mit g(n) = pn − 1 sind rot markiert.
Aus dem Satz von Euler erhalten wir eine Lösungsformel für Kongruenzen:
Beweis
zur Existenz:
Wir setzen x = aϕ(m) − 1 b. Dann gilt nach dem Satz von Euler:
a x ; a aϕ(m) − 1 b ; aϕ(m) b ; 1 b ; b (m).
zur Eindeutigkeit modulo m:
Seien x1 , x2 Zahlen mit ax1 ; b (m) und ax2 ; b (m). Dann gilt
ax1 ; ax2 (m).
Wegen (a, m) = 1 gilt x1 ; x2 (m) nach der Kürzungsregel.
Beispiel
Wir lösen die Kongruenz
3x ; 5 (11).
Natürlich können wir alle Möglichkeiten x = 0, …, 10 durchprobieren. Da
aber a = 3 und m = 11 teilerfremd sind, ist die Lösungsformel anwendbar.
Es gilt ϕ(11) = 10. Wir setzen also
x = 3ϕ(m) − 1 b = 39 5.
Um eine Lösung im Intervall 0, …, 10 zu erhalten, ist es nicht nötig, 39 5
auszurechnen. Wir können x mit Hilfe der Kongruenzregeln schrittweise
verkleinern, ohne große Zahlen berechnen zu müssen:
1 2 3 4 5 6
1 1 2 3 4 5 6
2 4 1 5 2 6 3
3 5 3 1 6 4 2
4 2 4 6 1 3 5
5 3 6 2 5 1 4
6 6 5 4 3 2 1
1 2 3 4 5 6 7 8 9 10 11 12
1 1 2 3 4 5 6 7 8 9 10 11 12
2 7 1 8 2 9 3 10 4 11 5 12 6
3 9 5 1 10 6 2 11 7 3 12 8 4
4 10 7 4 1 11 8 5 2 12 9 6 3
5 8 3 11 6 1 9 4 12 7 2 10 5
6 11 9 7 5 3 1 12 10 8 6 4 2
7 2 4 6 8 10 12 1 3 5 7 9 11
8 5 10 2 7 12 4 9 1 6 11 3 8
9 3 6 9 12 2 5 8 11 1 4 7 10
10 4 8 12 3 7 11 2 6 10 1 5 9
11 6 12 5 11 4 10 3 9 2 8 1 7
12 12 11 10 9 8 7 6 5 4 3 2 1
Ist die Bedingung (a, m) = 1 für eine Kongruenz ax ; b (m) verletzt, ist die Lö-
sungstheorie komplizierter. Hierzu ein Beispiel:
x 0 1 2 3 4 5 6 7 8 9
4x 0 4 8 12 16 20 24 28 32 36
mod (10) 0 4 8 2 6 0 4 8 2 6
Modul Modul
Abstand zweier Lösungen = =
Anzahl der Lösungen (a, m)
Diese Zusammenhänge sind kein Zufall. Allgemein gilt folgender Satz, dessen
Beweis wir dem Leser als Übung überlassen:
In den folgenden Diagrammen notieren wir die Lösungen im Fall (b) in der
kompakten Form x1 + cm*. Zum Beispiel hat die Kongruenz 4x ; 8 (12) in dieser
Notation die Lösung 2 + 3c. Mit g = (4, 12) = 4 ergeben sich die vier Lösungen
2, 5, 8, 11 im Intervall 0, …, 11.
1 2 3 4 5
1 1 2 3 4 5
2 - 1 + c3 - 2 + c3 -
3 - - 1 + c2 - -
4 - 2 + c3 - 1 + c3 -
5 5 4 3 2 1
1 2 3 4 5 6 7 8 9 10 11
1 1 2 3 4 5 6 7 8 9 10 11
2 - 1 + c6 - 2 + c6 - 3 + c6 - 4 + c6 - 5 + c6 -
3 - - 1 + c4 - - 2 + c4 - - 3 + c4 - -
4 - - - 1 + c3 - - - 2 + c3 - - -
5 5 10 3 8 1 6 11 4 9 2 7
6 - - - - - 1 + c2 - - - - -
7 7 2 9 4 11 6 1 8 3 10 5
8 - - - 2 + c3 - - - 1 + c3 - - -
9 - - 3 + c4 - - 2 + c4 - - 1 + c4 - -
10 - 5 + c6 - 4 + c6 - 3 + c6 - 2 + c6 - 1 + c6 -
11 11 10 9 8 7 6 5 4 3 2 1
Beispiel
Wir lösen noch einmal die Kongruenz 3x ; 5 (11) mit Hilfe des Euklidi-
schen Algorithmus. Mit a0 = 11 und a1 = 3 gilt:
11 = 3 ⋅ 3 + 2 q0 = 3 a2 = 2
3 = 1⋅2 + 1 q1 = 1 a3 = 1
2 = 2⋅1 q2 = 2
Damit können wir die 1 als Linearkombination von 3 und 11 darstellen:
1 = (11, 3) = 3 − 1 ⋅ 2
= 3 − 1 ⋅ (11 − 3 ⋅ 3) = 4 ⋅ 3 − 1 ⋅ 11.
Damit ist c = 4 und
x = 4b = 4 ⋅ 5 = 20 ; 9 (11)
eine Lösung der Kongruenz, in Übereinstimmung mit der mit Hilfe der
ϕ-Funktion berechneten Lösung.
Die Sätze von Euler und Fermat haben zahlreiche weitere Anwendungen, und
wir wollen eine davon hier noch vorstellen. Eine Variation des Beweises der Un-
endlichkeit der Primzahlen zeigte, dass es unendlich viele Primzahlen p gibt mit
p ; 3 mod(4). Mit Hilfe des Satzes von Fermat können wir nun zeigen:
Beweis
Sei n ≥ 1 beliebig, und seien p1 , …, pn Primzahlen mit pi ; 1 (4) für alle
i ≤ n. Wir zeigen, dass es eine Primzahl p mit p ; 1 (4) gibt, die von allen
Zahlen p1 , …, pn verschieden ist. Hierzu setzen wir
a = 2p1 … pn und b = a2 + 1 = 4p1 2 …pn 2 + 1.
Dann ist b ; 1 (4). Ist b prim, so sind wir fertig. Andernfalls sei p ein
Primteiler von b. Wegen b ; 0 (p) und b ; 1 (pi ) für alle i ≤ n ist p von allen
p1 , …, pn verschieden. Wir zeigen, dass p ; 1 (4). Hierzu rechnen wir
modulo p:
Da p ein Teiler von a2 + 1 ist, gilt a2 ; −1 (p). Hieraus folgt:
Die Zahl a ist kein Vielfaches von p, da sonst b ; 1 (p) gelten würde. Nach
dem Satz von Fermat ist also ap − 1 ; 1 (p). Eine Division durch 4 mit Rest
liefert ganze Zahlen q und r mit
p − 1 = q 4 + r und 0 ≤ r < 3.
Wegen a4 ; 1 (p) ist
1 ; ap − 1 ; aq4 + r ; aq4 ar ; (a4 )q ar ; ar (p).
Da a, a2 und a3 nicht kongruent 1 modulo p sind, ist r = 0 und damit p − 1
durch 4 teilbar. Dies zeigt, dass p ; 1 (4).
Der Satz kann mit Methoden der analytischen Zahlentheorie bewiesen wer-
den.
Übungen
Übung 1
Sei p eine von 2 und 5 verschiedene Primzahl.
(a) Zeigen Sie, dass es unendlich viele n ≥ 1 gibt mit p | 999…999
(mit n Neunen). Geben Sie einige Beispiele für p = 7.
(b) Zeigen Sie, dass es unendlich viele n ≥ 1 gibt mit p | 111…111
(mit n Einsen)
Übung 2
Zeigen Sie den Satz von Euler für den Spezialfall m = 11 und c = 4, indem
Sie sich an der allgemeinen Beweisführung orientieren, die Berechnungen
aber konkret durchführen.
Übung 3
Sei m ≥ 1, und sei a derart, dass aϕ(m) ; 1 mod(m). Zeigen Sie, dass a
teilerfremd zu m ist.
Übung 4
Lösen Sie die Kongruenzen
(a) 5x ; 7 (16)
(b) 5x ; 7 (17)
(c) 5x ; 7 (18)
sowohl mit Hilfe der Lösungsformel als auch mit Hilfe des Euklidischen
Algorithmus.
Übung 5
Beweisen Sie den allgemeinen Satz über die Lösung von Kongruenzen
ersten Grades.
Übung 6
Bestimmen Sie mit Hilfe des allgemeines Satzes über die Lösung von
Kongruenzen ersten Grades die Lösungen der folgenden Kongruenzen:
(a) 6x ; 7 (15)
(b) 15x ; 9 (18)
(c) 2x ; 8 (20)
Übung 7
Zeigen oder widerlegen Sie:
(a) Es gibt ein x P Z mit x18 ; 8 (17).
(b) Es gibt ein x P Z mit x8 ; 8 (17).
Übung 8
Zeigen Sie mit Hilfe des Satzes von Fermat, dass 299 + 1 durch 57 teilbar ist.
Übung 9
Sei p prim, und sei x P Z derart, dass x2 ; −1 (p). Zeigen Sie, dass p = 2
oder p ; 1 (4).
[ Hinweis: Der Satz von Fermat ist hier hilfreich. ]
Übung 10
Sei p prim mit p ≠ und p ; 1 (4). Zeigen Sie, dass es ein x P Z gibt mit
x2 ; −1 (p).
[ Hinweis: Für jede Primzahl p gilt (vgl. die Übungen zum Abschnitt über
Primzahlen):
(p − 1)! ; −1 (p) (Satz von Wilson)
Ist also p > 2, so gilt für q = (p − 1)/2, dass
∏ 1 ≤ i ≤ q i (p − i) ; −1 (p).
Verwenden Sie dieses Ergebnis, um die Aussage zu beweisen. ]
Übung 11
Wir hatten gesehen, dass der Satz von Fermat äquivalent ist zur folgenden
Aussage:
Sei p prim. Dann gilt ap ; a (p) für alle a.
Es stellt sich die Frage, ob wir den Satz von Euler ebenfalls ohne die
Voraussetzung der Teilerfremdheit formulieren können. Wir betrachten
also die folgende Aussage:
(+) Sei m ≥ 1. Dann gilt aϕ(m) + 1 ; a (m) für alle a.
(a) Zeigen Sie, dass die Aussage (+) im Allgemeinen nicht gültig ist.
(b) Zeigen Sie, dass die Aussage (+) gültig ist, wenn m quadratfrei ist,
d. h., wenn Primzahlen p1 < … < pk existieren mit m = p1 … pk . (Die
Zahl 1 gilt dabei als quadratfrei.)
Als eine weitere Anwendung des Satzes von Euler und der ϕ-Funktion skizzieren
wir das RSA-Verfahren der Kryptographie, benannt nach Rivest, Shamir und
Adleman (1977/78). Die Besonderheit dieses Verfahrens besteht darin, dass der
Schlüssel, der zur Kodierung von Daten verwendet wird, öffentlich zugänglich
ist. Die Sicherheit des Verfahrens wird dadurch ermöglicht, dass es rechnerisch
sehr schwierig ist, ein Produkt zweier sehr großer Primzahlen in seine beiden
Primfaktoren zu zerlegen.
Zielsetzung
Ziel des Verfahrens ist: Verschiedene Sender senden eine verschlüsselte Nach-
richt an einen Empfänger. Dabei sind sowohl die Verschlüsselungsmethode als
auch die verschlüsselt versendeten Nachrichten öffentlich lesbar. Ein räumlich
weit entfernter Sender kann also seine Nachricht mit Hilfe des öffentlichen
Schlüssels verschlüsseln und dann den verschlüsselten Text öffentlich lesbar ma-
chen, zum Beispiel auf einer allgemein zugänglichen Internetseite. Lediglich der
Empfänger ist aber rechnerisch in der Lage, den verschlüsselten Text zu dekodie-
ren, d. h., ihn wieder in seine ursprüngliche Form zu überführen. Der Zusatz
„rechnerisch“ ist hier wichtig: Theoretisch kann die verschlüsselte Nachricht
von jedem entschlüsselt werden, praktisch jedoch nicht oder nur sehr schwer
bzw. mit äußerst unwahrscheinlichem Rateglück.
An dieser Stelle lässt sich bereits die Bedeutung der rechnerischen Komplexi-
tät des Verfahrens beschreiben: Theoretisch kann jeder, der m kennt, auch die
Primzahlen p1 und p2 bestimmen. Mathematisch würde man einfach schreiben:
„Sei p1 p2 die Primfaktorzerlegung von m.“
Rechnerisch ist die Situation ganz anders: Für sehr große Primzahlen p1 und p2
ist es leicht, das Produkt m = p1 p2 auszurechnen, umgekehrt aber sehr schwer bis
aus praktischer Sicht unmöglich, aus dem Produkt m wieder die Primzahlen p1
und p2 zu erhalten. Gleiches gilt für die Zahlen ϕ(m) und d.
Die Bezeichnungen sind durch „e“ für „encryption“ und „d“ für „decryption“
motiviert.
Die Berechnung von y kann (mit Hilfe eines Computers) sehr effektiv ge-
schehen. Wir haben ja bereits gesehen, wie gut sich y für Zahlen wie 3123 und
einen Modul m = 10 per Hand berechnen lässt.
Dem Leser wird vielleicht aufgefallen sein, dass die Eulersche ϕ-Funktion
beim Ver- und Entschlüsseln keine Rolle mehr spielt. Sie wird aber zur Bestim-
mung der Zahlen e und d wesentlich gebraucht. Für e muss (ϕ(m), e) = 1 und
für d muss ed ; 1 (ϕ(m)) gelten. Dies sichert, dass die Entschlüsselung funktio-
niert, d. h. dass z = x ist. Entscheidend wird hierzu verwendet:
(+) (xe )d ; x (m).
Weiß man dies, so ist
x ; (xe )d ; yd ; z (m),
und damit x = z, da x und z im Intervall von 0 bis m − 1 liegen.
Um (+) einzusehen, nehmen wir zunächst an, dass x und m relativ prim zuein-
ander sind. Wegen
e d ; 1 (ϕ(m))
existiert ein k mit
e d = k ϕ(m) + 1.
Nach dem Satz von Euler gilt wegen (x, m) = 1, dass
xϕ(m) ; 1 (m).
Damit erhalten wir nun:
Für den Fall (x, m) ≠ 1 ist die Kongruenz (+) ebenfalls gültig. Um dies zu bewei-
sen, ist etwas mehr Theorie nötig als wir hier entwickelt haben. Wir verweisen
den interessierten Leser auf die Literatur.
Wie sicher ist das Verfahren? Rivest, Shamir und Adleman haben im Jahr 1977
eine Zahl m mit 129 Stellen angegeben und öffentlich dazu aufgerufen, diese
Zahl in ihre Primfaktoren p1 und p2 zu zerlegen. Dies gelang 1994 durch eine Be-
rechnung mit über 1000 Computern. Heute werden noch größere Primzahlen
mit etwa 100 Stellen verwendet, um die Verschlüsselung praktisch sicher zu ma-
chen. Dennoch gilt: (1) Die Programme, die große Primzahlen erzeugen, kön-
nen Gefahren in sich bergen. (2) Die Primzahlen p1 , p2 können dem Empfänger
„gestohlen“ werden. (3) Durch die Entwicklung besserer Computer kann eine
im Jahr 2017 erfolgte Verschlüsselung im Jahr 2027 möglicherweise durch an-
dere Personen als den Empfänger entschlüsselt werden. Die Verschlüsselung ist
also nur kurzzeitig als „sicher“ einzustufen.
Das RSA-Verfahren ist nur zur Kodierung kleiner Zahlen bzw. kurzer Texte
geeignet. Umfangreichere Informationen werden mit anderen Methoden ver-
schlüsselt, wobei hierzu ein mit Hilfe des RSA-Verfahrens erzeugter Kode ver-
wendet wird.
Übungen
Übung 1
Führen Sie das RSA-Verfahren durch für p1 = 41, p2 = 47, e = 3 und die
Nachricht x = 42. Berechnen Sie hierzu (mit Hilfe eines Computers) d und
y und überprüfen Sie, dass y = z.
Graphentheorie
Anschaulich ist ein mathematischer Graph eine Menge von Punkten zusam-
men mit gewissen Linien oder Pfeilen, die zwei Punkte miteinander verbinden.
Die Punkte nennen wir auch Ecken oder Knoten, die Verbindungslinien Kanten.
Die Verbindungslinien oder Pfeile können gerade oder auch gebogen sein, sich
schneiden und auch von einer Ecke zu sich selbst führen (sog. Schlingen). Weiter
können wir Kantengewichte betrachten und jede Kante mit einer Zahl − ihrem
Gewicht − versehen. Schließlich sind auch mehrfache Kanten denkbar, die zwei
Punkte auf verschiedene Arten und mit verschiedenen Gewichten miteinander
verbinden.
Der dargestellte Graph hat fünf Ecken, die mit den Zahlen 1, 2, 3, 4, 5 durchge-
zählt sind (die Namen der Ecken sind prinzipiell beliebig). Einige Eckenpaare
sind durch gerichtete Kanten (Pfeile) miteinander verbunden, etwa die Paare
(4, 1), (5, 3), (4, 4) vorhandene Kanten
Andere Paare sind nicht miteinander verbunden, etwa
(1, 4), (1, 3), (3, 3) fehlende Kanten
Insgesamt besitzt der Graph neun Kanten. Eine Besonderheit sind die Ecken
1, 2, die in beiden Richtungen verbunden sind, sowie die Ecke 4, die durch eine
Schlinge mit sich selbst verbunden ist.
Alle Kanten sind mit Gewichten versehen. So hat die Kante (2, 3) das Gewicht
3, was wir mit w(2, 3) = 3 zum Ausdruck bringen (mit „w“ für „weight“). Analog
ist w(1, 2) =1, w(2, 1) = 2 und w (4, 4) = 9. In Modellierungen kann ein „Gewicht“
zum Beispiel eine Länge oder Zeiteinheit bezeichnen.
Einfache Graphen
Definition (Graph)
Ein (endlicher, ungerichteter, einfacher) Graph ist ein Paar G = (E, K) mit:
(a) E ist eine endliche nichtleere Menge.
(b) K ist eine Menge von ungeordneten Paaren { a, b } mit a, b P E und
a ≠ b.
Die Elemente von E heißen die Ecken, die Elemente von K die Kanten des
Graphen G.
Gilt { a, b } P K, so sagen wir, dass die Ecken a und b in G durch eine
Kante verbunden sind oder dass in G eine Kante von a nach b führt.
Weiter heißen a und b die an der Kante beteiligten oder die die Kante
definierenden Ecken.
Die Menge der Kanten ist also eine Teilmenge der Menge der zweielementi-
gen Teilmengen der Eckenmenge E:
K ⊆ { { a, b } | a, b P E, a ≠ b }.
Dass wir mit Mengen { a, b } statt mit geordneten Paaren (a, b) arbeiten entspricht
unserem Wunsch nach ungerichteten Kanten. Führt eine Kante von a nach b, so
führt immer auch eine Kante von b nach a. Anschaulich können unsere Kanten in
beiden Richtungen durchlaufen werden. Dass wir zudem a ≠ b fordern sichert die
Schlingenfreiheit des Graphen: Es führt keine Kante von einer Ecke a nach a. Ex-
plizit erlaubt ist die Existenz von Ecken, die an keiner Kante beteiligt sind. Wenn
wir möchten, können wir diese Ecken aus dem Graphen durch Verkleinerung
der Eckenmenge unter Beibehaltung der Kantenmenge K entfernen.
Beispiele
(1) Sei G = (E, K) mit
E = { 1, 2, 3 }, K = { { 1, 2 }, { 1, 3 }, { 2, 3 } }.
Der Graph G hat drei Ecken und drei Kanten. Jede Ecke ist mit den
beiden anderen Ecken durch eine Kante verbunden. In graphischer
Darstellung hat der Graph die Form eines Dreiecks:
Die graphische Darstellung ist keineswegs eindeutig. Wie ein Graph im Hin-
blick auf bestimmte Ziele am besten zu zeichnen ist, ist eine Kunst für sich!
ai j =
{ 1
0
falls { ei , ej } P K,
sonst.
bi j =
{ 1
0
falls ei Pkj ,
sonst.
In jeder Spalte von B stehen genau zwei Einsen. Die Zeilenindizes der
beiden Einsen entsprechen einer Kante. Da wir auch eine leere Kanten-
menge zulassen, ist die Inzidenz-Matrix möglicherweise nullspaltig.
Beispiel
Sei G = (E, K) mit
E = { 1, 2, 3, 4 }, K = { { 1, 2 }, { 1, 3 }, { 1, 4, }, { 2, 3 }, { 3, 4 } }.
Dann hat G die folgenden Darstellungen:
(1) Ecken-Kanten-Diagramm
(2) Adjazenz-Matrix
0 1 1 1
1 0 1 0
A =
1 1 0 1
1 0 1 0
(3) Inzidenz-Matrix
1 1 1 0 0
1 0 0 1 0
B =
0 1 0 1 1
0 0 1 0 1
(4) Adjazenz-Liste
Beispiel
Sei G = (E, K) der Graph mit der Adjazenz-Matrix
0 1 0 1 0 1 0 1
1 0 1 0 1 0 1 0
0 1 0 1 0 1 0 1
1 0 1 0 1 0 1 0
A = .
0 1 0 1 0 1 0 1
1 0 1 0 1 0 1 0
0 1 0 1 0 1 0 1
1 0 1 0 1 0 1 0
Beispiel
Den Graphen des obigen Beispiels können wir nun in der besser lesbaren
Form G = (E, K) mit E = { 1, 2, 3, 4 }, K = { 12, 13, 14, 23, 34 } angeben.
Sobald die Ecken zweistellig sind, können Klammern oder die Notation a-b
verwendet werden, um zum Beispiel die Kante 11-2 = { 2, 11 } von der
Kante 1-12 = { 1, 12 } zu unterscheiden.
Dass die Größe über die Kantenmenge und nicht über die Eckenmenge er-
klärt wird, hat seine Gründe in der Komplexitätstheorie für graphentheoreti-
sche Algorithmen: In der Regel ist |K| das Maß, das über die Laufzeit eines
Algorithmus entscheidet und nicht |E|.
Beispiele
(1) Der Graph G = ({ 1, 2, 3 }, ∅) hat die Ordnung 3 und die Größe 0.
(2) Der Graph G = ({ 1, 2, 3, 4, 5 }, { 12, 24 } } hat die Ordnung 5 und die
Größe 2. Streichen der an keinen Kanten beteiligten Ecken 3 und 5
liefert den Graphen G′ = ({ 1, 2, 4 }, { 12, 24 } } der Ordnung 3 mit
unveränderter Größe 2.
Aus der Ordnung ergibt sich eine Schranke für die Größe:
Satz (Größenabschätzung)
Sei G = (E, K) ein Graph der Ordnung n. Dann gilt 2|K| ≤ n (n − 1).
Beweis
Sei M = { { a, b } | a, b P E, a ≠ b } die Menge aller Teilmengen von E mit
genau zwei Elementen. Dann gilt
{
n n (n − 1)
|M| = 2 = .
2
Wegen K ⊆ M folgt die Abschätzung.
Nachbarschaftsverhältnisse
Die Nachbarschafts- und Gradbildung können wir als Funktionen auf der
Eckenmenge auffassen. Es gilt
N : E → P(E) mit P(E) = { A | A ⊆ E }, d : E → N.
Beispiel
Sei G = (E, K) mit E = { 1, 2, 3, 4, 5, 6, 7 } und
K = { 13, 14, 16, 17, 34, 35, 45, 47, 56 }).
Dann gilt
N(1) = { 3, 4, 6, 7 } N(2) = { } N(3) = { 1, 4, 5 }
N(4) = { 1, 3, 5, 7 } N(5) = { 3, 4, 6 } N(6) = { 1, 5 }
N(7) = { 1, 4 }
Damit ergibt sich für die Gradfunktion
d(1) = 4, d(2) = 0, d(3) = 3, d(4) = 4, d(5) = 3, d(6) = 2, d(7) = 2.
Die Gradfolge von G ist 0, 2, 2, 3, 3, 4, 4.
Satz (Gradsumme)
Sei G = (E, K) ein Graph der Größe k = |K|. Dann gilt
∑ a P E d(a) = 2 k.
Beweis
Jede Kante hat genau zwei Nachbarn und trägt damit genau 2 zur Grad-
summe bei. Genauer zeigt man die Behauptung durch Induktion nach der
Größe k ≥ 0 (Übung).
Vollständige Graphen
Definition (vollständig)
Ein Graph G = (E, K) heißt vollständig, falls je zwei verschiedene Ecken von
E durch eine Kante verbunden sind.
Die vollständigen Graphen der Ordnung n sind genau die Graphen mit maxima-
ler Größe |K| = n (n − 1)/2 und maximaler Gradfolge n − 1, …, n − 1.
Bipartite Graphen
Wir betrachten nun Graphen, die sich durch eine Zerlegung ihrer Ecken in
zwei Teile übersichtlich darstellen lassen:
Definition (bipartit)
Ein Graph G = (E, K) heißt bipartit, falls Teilmengen E1 und E2 von E
existieren mit
(a) E1 ∩ E2 = ∅,
(b) E1 ∪ E2 = E,
(c) Jede Kante von G verbindet eine Ecke in E1 mit einer Ecke in E2 .
Wir sagen dann auch, dass G bipartit durch die Zerlegung oder Bipartition
E1 , E2 der Eckenmenge E ist.
Anschaulich formuliert ist ein Graph G bipartit, wenn es eine Färbung seiner
Eckenmenge E mit zwei Farben gibt derart, dass jede Kante zwei verschieden-
farbige Ecken miteinander verbindet. Ist ein Graph bipartit durch E1 und E2 ,
so erhalten wir eine sehr übersichtliche Darstellung des Graphen als Ecken-
Kanten-Diagramm, indem wir die Ecken aus E1 links (alternativ: unten) und
die Ecken aus E2 rechts (alternativ: oben) linear anordnen.
Beispiel
Sei G = (E, K) mit E = { 1, …, 9 } und
K = { 12, 13, 17, 24, 29, 35, 39, 47, 48, 58, 67, 68, 89 }.
Dass G bipartit ist, ist aus dieser graphischen Darstellung nicht unmittelbar
ersichtlich. Dies ändert sich, wenn wir die Zerlegung
E1 = { 1, 4, 5, 6, 9 }, E2 = { 2, 3, 7, 8 }
von E betrachten und den Graphen neu darstellen:
Es gibt keine Kanten innerhalb von E1 und keine Kanten innerhalb von E2 .
Der Graph ist bipartit durch E1 und E2 .
Jeder vollständig bipartite Graph ist nach Definition bipartit. Wird zu einem
vollständig bipartiten Graphen eine neue Kante hinzugefügt, so ist der entste-
hende Graph nicht mehr bipartit. Ist G dagegen bipartit, aber nicht vollständig
bipartit, so kann eine geeignete neue Kante zu G hinzugefügt werden, ohne eine
Bipartition von G zu zerstören. In diesem Sinne sind vollständig bipartite Gra-
phen maximal unter den bipartiten Graphen.
Für alle n, m ≥ 1 ist der Graph Kn, m vollständig bipartit mit der Zerlegung
E1 = { 1, …, n } und E2 = { n + 1, …, n + m }.
Die Graphen Kn,m und Km, n unterscheiden sich nicht wesentlich voneinander.
In der Standard-Visualisierung gehen sie durch Spiegelung an der Mittelachse
und Neunummerierung der Ecken ineinander über. Wir untersuchen die struk-
turelle Gleichheit zweier Graphen im nächsten Kapitel in allgemeiner Form.
Der Begriff eines bipartiten Graphen lässt sich in natürlicher Weise verallge-
meinern: Ein Graph G = (E, K) heißt tripartit, wenn es eine Zerlegung E1 , E2 ,E3
seiner Eckenmenge E gibt derart, dass jede Kante Ecken in unterschiedlichen
Teilen der Zerlegung verbindet. Allgemeiner sind k-partite Graphen für alle k ≥ 2
definiert, wobei k die Anzahl der Mengen der Zerlegung bezeichnet (sodass also
bipartit = 2-partit, tripartit = 3-partit). Analog zu den Graphen Kn,m sind die voll-
ständig tripartiten Graphen Kn, m, k definiert und allgemeiner die vollständig
k-partiten Graphen Kn1, …, nk . Wir begnügen uns an dieser Stelle mit einem visu-
ellen Eindruck:
Kreise
In der Graphentheorie kann man also singen: „Mein Kreis, der hat drei Ecken.
Mein Dreieck ist ein Kreis.“
Aus der Definition lesen wir ab: Ist G = (E, K) ein Kreis, so ist die Ordnung von
G gleich der Größe von G, d. h. |E| = |K|. Damit kann zum Beispiel ein Graph
mit 10 Ecken und 12 Kanten kein Kreis sein. Weiter hat ein Kreis die konstante
Gradfolge 2, …, 2.
Beispiele
(1) Ist G ein Graph der Ordnung 3, so ist G genau ein Kreis (und damit
ein Dreieck), wenn G vollständig ist.
(2) Ist G = (E, K) ein Graph der Ordnung 4, so ist G genau dann ein
Kreis, wenn |K| = 4 und G kein Dreieck enthält, d. h. es gibt keine
Ecken a, b, c mit ab, bc, ca P K.
(3) Der Graph G = (E, K) mit E = { 1, …, 6 } und
K = { 12, 13, 23, 45, 46, 56 }
hat die konstante Gradfolge 2, …, 2, ist aber kein Kreis.
Definition (Teilgraph)
Seien G = (E, K) und G′ = (E′, K′) Graphen. Dann heißt G′ ein Teilgraph
von G, falls E′ ⊆ E und K′ ⊆ K.
Ein Teilgraph eines Graphen entsteht, indem wir gewisse Ecken und Kanten
des Graphen streichen. Damit durch diese Reduktion ein Graph entsteht, müs-
sen wir, wenn wir eine Ecke entfernen, auch alle Kanten entfernen, die diese
Ecke enthalten. Eine Kante können wir dagegen ohne Einschränkung hinaus-
werfen (dadurch entstehen möglicherweise isolierte Ecken, was nicht stört).
Eine Verstärkung des Begriffs eines Teilgraphen ist:
Definition (Untergraph)
Sei G′ = (E′, K′) ein Teilgraph von G = (E, K). Dann heißt G′ ein Unter-
graph von G, falls gilt:
K′ = { ab P K | a, b P E′ }.
Beispiele
(1) Jeder Graph ist ein Untergraph von sich selbst.
(2) Sei n ≥ 1. Dann ist jeder Graph mit der Eckenmenge { 1, …, n } ein
Teilgraph des vollständigen Graphen Kn . Allgemeiner gilt dies für
jeden Graphen, dessen Eckenmenge eine Teilmenge von { 1, …, n }
ist.
(3) Ist m ≤ n, so ist der Graph Km ein Untergraph des Graphen Kn .
(4) Sei n ≥ 3. Dann ist der Kreis Cn ein Teilgraph des Graphen Kn . Er ist
genau dann ein Untergraph des Kn , wenn n = 3.
Der Graph G und zwei Teilgraphen, die keine Untergraphen von G sind
Natürlich könnten wir auch direkt definieren: G enthält einen Kreis der Länge
n ≥ 3, falls es paarweise verschiedene Ecken e1 , …, en in E gibt mit ei ei + 1 P K für
i = 1, …, n − 2 und en e1 P K. Die Definition über Teilgraphen ist aber kompakter
und für jeden Graphentyp einsetzbar. So sind zum Beispiel analog definiert:
G enthält einen vollständigen Graphen mit 5 Ecken.
G enthält einen bipartiten Graphen mit einer Bipartition des Typs 3−7.
Übungen
Übung 1
Wie wirken sich die Eigenschaften ungerichtet, schlingenfrei, ungewichtet auf
die Adjazenz-Matrix eines Graphen aus?
Übung 2
(a) Definieren Sie den Begriff der Adjazenz-Matrix für allgemeinere
Graphen mit gerichteten Kanten, Schlingen und reell- oder
komplexwertigen Kantengewichten.
(b) Geben Sie die Adjazenz-Matrix des am Anfang des Kapitels
dargestellten gerichteten und gewichteten Graphen an.
(c) Argumentieren Sie, dass sich jede quadratische Matrix mit reellen
oder komplexen Einträgen als Graph interpretieren lässt und
umgekehrt.
Übung 3
Wie lassen sich Graphen mit (gerichteten und gewichteten) Mehrfachkan-
ten mit Hilfe von Matrizen darstellen? Bei diesem Graphentyp können zwei
Ecken durch eine beliebige endliche Anzahl von Kanten miteinander
verbunden sein.
Übung 4
Skizzieren Sie alle Graphen mit der Eckenmenge E = { 1, 2, 3 } und geben
Sie die zugehörigen Adjazenz- und Inzidenz-Matrizen an.
Übung 5
Sei n ≥ 1. Wie viele Graphen mit der Eckenmenge E = { 1, …, n } gibt es?
Wie viele Graphen mit dieser Eckenmenge gibt es, wenn gerichtete Kanten
zugelassen werden? Begründen Sie Ihre Antworten.
Übung 6
Sei G = (E, K) ein Graph und sei
U = { a P E | d(a) ist ungerade }
die Menge der Ecken mit ungeradem Grad. Zeigen Sie, dass |U| gerade
ist.
Übung 7
Geben Sie einen Graphen G = (E, K) mit E = { 1, …, 10 } an, der die
konstante Gradfolge 3, …, 3 besitzt.
Übung 8
(a) Welche der folgenden sechs Folgen sind Gradfolgen eines Graphen?
Begründen Sie Ihre Antworten.
(1, 1, 2, 3, 4), (2, 2, 2, 3, 5), (2, 3, 3, 4, 4),
(0, 0, 0, 0, 0), (1, 1, 1, 1, 1), (1, 2, 3, 3, 3).
(b) Recherchieren Sie nach einem Satz, der die Folgen (d1 , …, dn ), die
Gradfolgen eines Graphen mit n Ecken sind, charakterisiert.
Übung 9
Welche vollständigen Graphen sind bipartit bzw. vollständig bipartit?
Übung 10
Wie viele Kanten hat der vollständig bipartite Graph Kn, m in Abhängigkeit
von n und m?
Übung 11
Wir betrachten die Graphen
G1 = ({ 1, 2, 3, 4 }, { 12, 23, 34 }) und
G2 = ({ 1, 2, 3, 4, 5 }, { 14, 23, 24, 25, 34 }).
Sind G1 bzw. G2 bipartit? Begründen Sie Ihre Antworten.
Übung 12
Untersuchen Sie die Kreise C3 , C4 , C5 und C6 auf die Eigenschaft
„bipartit“. Stellen Sie eine Hypothese darüber auf, wann ein allgemeiner
Kreis bipartit ist und wann nicht. Beweisen Sie Ihre Hypothese.
Übung 13
Auf einer Party sind ein Gastgeberpaar und vier weitere Paare. Am Ende
fragt die Gastgeberin jede der neun anderen Personen, wie oft sie Hände
geschüttelt hat. Sie erhält neun verschiedene Antworten. Finden Sie mit
Hilfe eines Graphen heraus, mit wie vielen Personen die Gastgeberin
Hände geschüttelt hat. Dabei gilt: Man schüttelt weder sich selbst noch
seinem Partner die Hand, und man schüttelt auch niemandem zweimal die
Hand.
Übung 14
Zeigen Sie, dass jeder Teilgraph eines bipartiten Graphen bipartit ist.
Übung 15
Zeigen Sie: Enthält G einen Kreis ungerader Länge, so ist G nicht bipartit.
Formulieren Sie zudem die kontrapositive Form dieser Implikation (d. h.
die logisch äquivalente Implikation ¬ B → ¬ A der Implikation A → B).
Übung 16
Sei G = (E, K) ein Graph, und sei G′ der Untergraph von G, der aus G
durch Streichen einer gewissen Ecke a P E hervorgeht. Diskutieren Sie den
Zusammenhang zwischen den Gradfolgen von G und G′.
Übung 17
(a) Zeigen Sie: Ist G3 ein Teilgraph von G2 und weiter G2 ein Teilgraph
von G1 , so ist G3 ein Teilgraph von G1 .
(b) Formulieren und beweisen Sie eine analoge Aussage für Untergra-
phen.
In einem Graphen können wir uns entlang einer Kante von einer Ecke zur
nächsten bewegen. Wiederholte derartige Bewegungen ergeben einen Kanten-
zug. Es gibt verschiedene Möglichkeiten, Kantenzüge zu notieren. Wir bevorzu-
gen im Folgenden die Angabe der besuchten Ecken in Form einer Folge. Genau-
eres regeln die Definitionen.
Definition (Weg)
Sei G = (E, K) ein Graph. Ein Kantenzug in G heißt ein Weg, falls jede
besuchte Ecke nur einmal besucht wird.
Jeder Weg ist ein einfacher Kantenzug, die Umkehrung ist, wie die folgenden
Beispiel zeigen, im Allgemeinen nicht gültig.
Beispiele
(1) Für jede Ecke a ist a ein Kantenzug der Länge 0 (von a nach a). Der
Kantenzug a besucht keine Kante. Er ist geschlossen und ein Weg. Ein
geschlossener Kantenzug positiver Länge kann dagegen kein Weg sein,
da er die Startecke zweimal besucht.
(2) In einem Kantenzug a0 , …, an wird die Startecke a0 zum Zeitpunkt 0
besucht, die Kante a0 a1 ist die erste besuchte Kante (der Besuchszeit-
punkt ist 1).
(3) Kantenzüge mit ai = ai + 1 existieren nicht, da unsere Graphen schlin-
genfrei sind. Dagegen sind Abschnitte der Form a, b, a möglich. In
diesem Fall bewegen wir uns von a nach b und dann von b gleich
wieder zurück nach a. Dabei wird die Kante ab zweimal besucht.
Mit Hilfe von Kantenzügen können wir eine bedeutsame Relation auf den Ek-
ken eines Graphen definieren:
Definition (erreichbar)
Sei G = (E, K) ein Graph, und seien a, b P E. Dann heißt die Ecke b
erreichbar von der Ecke a in G, falls es einen Kantenzug von a nach b in G
gibt. Andernfalls heißt b unerreichbar von a in G. Ist b erreichbar von a in G,
so schreiben wir
a ,G b oder kurz a , b.
Beispiele
(1) Jede Ecke a ist von sich selbst aus erreichbar, denn der Kantenzug a
(der Länge 0) ist ein Kantenzug von a nach a.
(2) Ist G vollständig, so ist jede Ecke von jeder anderen aus erreichbar.
Denn sind a, b verschiedene Ecken des Graphen, so ist a, b ein
Kantenzug (der Länge 1) von a nach b in G.
(3) Ist a eine isolierte Ecke von G (d. h. d(a) = 0), so ist a nur von sich selbst
aus erreichbar. In diesem Fall gilt also non(a , b) für alle b ≠ a.
(4) Im Graphen des letzten der obigen Beispiele ist jede Ecke von jeder
Ecke aus erreichbar.
Ein wichtiger Fall liegt vor, wenn sich je zwei Ecken durch einen Kantenzug
verbinden lassen:
Definition (zusammenhängend)
Sei G = (E, K) ein Graph. Dann heißt G zusammenhängend, falls jede Ecke
von jeder Ecke erreichbar ist, d. h. falls a , b für alle a, b P E gilt.
Allgemein können wir für jede Ecke die Menge der von dieser Ecke aus er-
reichbaren Ecken betrachten:
Definition (Zusammenhangskomponente)
Sei G = (E, K) ein Graph, und sei a P E. Dann heißt die Menge
[ a ] = a/, = { b P E | a , b }
die Zusammenhangskomponente der Ecke a in G.
Beispiel
Wir betrachten den folgenden Graphen:
Der Graph hat, wie wir mit etwas Mühe erkennen können, die beiden
Zusammenhangskomponenten
E1 = { 1, 2, 3, 5, 6, 11 } und E2 = { 4, 7, 8, 9, 10, 12 }.
Sind die Zusammenhangskomponenten bekannt, so können wir ein Ecken-
Kanten-Diagramm des Graphen zeichnen, bei dem diese Komponenten
offensichtlich sind:
Wie bei den bipartiten oder allgemein k-partiten Graphen liegt in den Zusam-
menhangskomponenten eine Zerlegung der Eckenmenge E in Teile E1 , …, Ek
vor. Im starken Kontrast zu den k-Partitionen sind nun aber die Teile in sich ver-
netzt, während es keine Kanten zwischen den Teilen gibt.
Brücken
Definition (Brücke)
Sei G = (E, K) ein Graph, und sei ab P K. Dann heißt die Kante ab eine
Brücke von G, falls die Ecke b im Teilgraphen G′ = (E, K − { ab }) nicht von
a aus erreichbar ist.
Eine Kante ist genau dann eine Brücke, wenn das Streichen dieser Kante die
Zahl der Zusammenhangskomponenten erhöht. Insbesondere ist eine Kante ei-
nes zusammenhängenden Graphen genau dann eine Brücke, wenn der durch das
Streichen der Kante entstehende Graph nicht mehr zusammenhängend ist.
Beispiele
(1) Sei G = (E, K) mit E = { 1, …, 6 } und
K = { 12, 13, 14, 23, 45, 46, 56 }.
Mit Ausnahme der Brücke 6-11 sind die Brücken nicht gut erkennbar.
Dies ändert sich bei folgender Darstellung:
Die Brücken des Graphen sind genau die Kanten 27, 47 und 6-11.
Als Anwendung des Begriffs einer Brücke beweisen wir eine bemerkenswerte
Charakterisierung der bipartiten Graphen mit Hilfe von Kreisen:
Beweis
(a) impliziert (b):
Sei G bipartit durch E1 und E2 . Weiter sei a1 , a2 , …, an , a1 ein Kreis der
Länge n in G. Wir dürfen a1 P E1 annehmen (sonst tauschen wir E1 und
E2 aus). Da jede Kante von G eine Ecke in E1 mit einer Ecke in E2
verbindet, gilt
a1 P E1 , a2 P E2 , a3 P E1 , a4 P E2 , …,
d. h. ak P E1 für ungerade k und ak P E2 für gerade k (Induktion nach
k ≤ n). Wegen a1 an P K und a1 P E1 ist an P E2 . Folglich ist n gerade.
(b) impliziert (a):
Wir zeigen die Implikation durch Induktion nach der Größe m = |K|.
Induktionsanfang m = 0:
Ist m = 0, so ist G bipartit (durch jede Zerlegung der Ecken).
Induktionsschritt von m nach m + 1:
Sei G ein Graph mit genau m + 1 Kanten derart, dass jeder Kreis in G
eine gerade Länge besitzt. Sei a*b* eine beliebige Kante von G, und
sei G′ der Teilgraph von G, der durch Streichen von a*b* aus G
entsteht. Da jeder Kreis in G′ ein Kreis in G ist, existiert nach I. V.
eine Bipartition E1 , E2 von G′.
1. Fall: a*b* ist eine Brücke in G.
Ohne Einschränkung sei a* P E1 . Ist b* P E2 , so ist G bipartit
durch E1 , E2 . Ist b* P E1 , so tauschen wir in der Zusammen-
hangskomponente von b* in G′ die Zugehörigkeit der Ecken zu
E1 und E2 aus („Wechsel der Farbe“). Dadurch entsteht eine
Bipartition E1 *, E2 * von G′, die eine Bipartition von G ist.
2. Fall: a*b* ist keine Brücke in G.
Dann gibt es einen Weg a1 , … , an von a* = a1 nach b* = an in G′.
Da a1 , …, an , a1 ein Kreis in G der Länge n ist, ist n gerade. Wie
oben liegen also a1 = a* und an = b* in verschiedenen Teilen der
Partition. Dies zeigt, dass G bipartit durch E1 und E2 ist.
Wir illustrieren das Argument der zweiten Implikation durch einige Dia-
gramme. Hierzu betrachten wir den folgenden Graphen G = (E, K):
Der Graph hat Kreise der Länge 4 und 6. Die Kante 45 ist die einzige Brücke
von G. Entfernen wir die Brücke a*b* = 45, so ist der entstehende Teilgraph G′
nach Induktionsvoraussetzung bipartit. Wir visualisieren dies durch eine rot-
grün-Färbung der Ecken, wobei die Ecke 4 ohne Einschränkung rot sei. Dann
sind folgende Färbungen möglich:
Im ersten Fall können wir die Färbung unverändert übernehmen, wenn wir die
Brücke a*b* wieder hinzufügen. Im zweiten Fall führen wir einen Farbwechsel
im rechten Teil des Graphen (der Zusammenhangskomponente von b* = 5)
durch, um den ersten Fall zu erzeugen. Die so modifizierte Färbung von G′ ist er-
neut für G geeignet.
Entfernen wir eine andere Kante als die Brücke, etwa a*b* = 7-10, so können
wir eine Färbung des Teilgraphen G′ unverändert übernehmen, da durch die
Voraussetzung „alle Kreise in G haben gerade Länge“ sichergestellt wird, dass
die beiden Ecken der Kante verschieden gefärbt sind. Nehmen wir wieder an,
dass die 4 rot gefärbt ist, so ergibt sich notwendig die folgende Färbung von G′:
Definition (Abstand)
Sei G = (E, K) ein Graph. Für alle a, b P E mit a , b setzen wir
d(a, b) = „die Länge eines kürzesten Kantenzugs von a nach b in G“.
Für a, b P E mit non(a , b) setzen wir d(a, b) = ∞. Wir nennen d(a, b) den
Abstand von a und b in G.
Das „d“ steht für „Distanz“ oder „distance“. Genauer schreiben wir dG statt d,
wenn wir die Abhängigkeit der Abstandsfunktion vom betrachteten Graphen
hervorheben möchten. Eine Verwechslung mit dem Grad d(a) einer Ecke ist in
der Regel nicht zu befürchten.
Es gilt d : E × E → N ∪ { ∞ }. Ist der Graph G zusammenhängend, so sind
alle Abstände endlich, sodass d : E × E → N. Weiter gilt für alle Ecken a P E:
N(a) = { b P E | d(a, b) = 1 }, [ a ] = { b P E | d(a, b) < ∞ }.
Die Nachbarecken einer Ecke sind also genau die Ecken mit Abstand 1 von der
Ecke, und die Zusammenhangskomponente einer Ecke besteht genau aus den
Ecken mit endlichem Abstand von der Ecke.
Bemerkung
(1) Statt „Kantenzug“ können wir in der Definition des Abstands d(a, b)
auch „Weg“ einsetzen. Denn ein kürzester Kantenzug von a nach b ist
automatisch ein Weg.
(2) Da ein kürzester Kantenzug zwischen zwei Ecken in der Regel nicht
eindeutig bestimmt ist, wäre es ungenau, von der Länge des kürzesten
Kantenzugs statt der Länge eines kürzesten Kantenzugs zu sprechen.
Ist etwa G = (E, K) mit E = { 1, 2, 3, 4 } und K = { 12, 13, 24, 34 } so
sind 1, 2, 4 und 1, 3, 4 zwei verschiedene kürzeste Kantenzüge von 1
nach 4 in G. Es gilt d(1, 4) = 2.
Beispiel
Wir betrachten den folgenden Graphen mit drei Zusammenhangskompo-
nenten { 1, …, 9 }, { 10, 11 } und { 12 }:
Die Abstände d(a, b) zwischen den Ecken lassen sich aufgrund der einfachen
Struktur des Graphen ablesen. Wir können sie in Form einer Tabelle
angeben. Wegen d(a, b) = d(b, a) genügt es, die Tabelle halb zu füllen.
1 2 3 4 5 6 7 8 9 10 11 12
1 0 1 2 4 2 3 3 1 3 ∞ ∞ ∞
2 - 0 1 3 1 2 2 2 2 ∞ ∞ ∞
3 - - 0 2 2 2 1 3 2 ∞ ∞ ∞
4 - - - 0 3 2 1 4 2 ∞ ∞ ∞
5 - - - - 0 1 2 1 1 ∞ ∞ ∞
6 - - - - - 0 1 2 2 ∞ ∞ ∞
7 - - - - - - 0 3 1 ∞ ∞ ∞
8 - - - - - - - 0 2 ∞ ∞ ∞
9 - - - - - - - - 0 ∞ ∞ ∞
10 - - - - - - - - - 0 1 ∞
11 - - - - - - - - - - 0 ∞
12 - - - - - - - - - - - 0
Übungen
Übung 1
Sei G = (E, K) ein Graph, und seien a, b P E. Es gebe einen Kantenzug von a
nach b in G. Zeigen Sie, dass es einen Weg von a nach b in G gibt.
Übung 2
Zeigen Sie, dass jeder Weg in einem Graphen ein einfacher Kantenzug ist.
Übung 3
Sei G = (E, K) ein Graph. Zeigen Sie, dass die Erreichbarkeitsrelation von
G reflexiv, symmetrisch und transitiv ist.
Übung 4
Sei G = (E, K) ein Graph mit genau n Zusammenhangskomponenten und
sei ab eine Brücke in G. Zeigen Sie, dass der Graph G′, der aus G durch
Streichen der Kante ab hervorgeht, genau n + 1 Zusammenhangskompo-
nenten besitzt.
Übung 5
Sei G = (E, K) ein Graph, und sei ab P K. Zeigen Sie, dass die folgenden
Aussagen äquivalent sind:
(1) Die Kante ab ist eine Kreiskante, d. h. es gibt einen Kreis in G, der ab
als Kante enthält.
(2) Die Kante ab ist keine Brücke von G.
Übung 6
Sei G = (E, K ) ein zusammenhängender Graph mit mindestens zwei Ecken.
Zeigen Sie: Es gibt zwei verschiedene Ecken a, b derart, dass die Graphen
G − a und G − b zusammenhängend sind. Dabei sei G − e für eine Ecke e
der Untergraph von G, der durch Streichen der Ecke e entsteht (Entfernen
von e und aller Kanten mit e als Ecke).
[ Hinweis: Starke Induktion nach |E|. ]
Übung 7
Sei G = (E, K) ein Graph. Zeigen Sie die drei grundlegenden Eigenschaften
(Nullbedingung, Symmetrie, Dreiecksungleichung) für die Abstandsfunk-
tion d des Graphen.
Übung 8
Sei G = (E, K) ein Graph. Zeigen Sie, dass G genau dann zusammenhän-
gend ist, wenn es eine Ecke a gibt mit d(a, b) < ∞ für alle Ecken b.
Übung 9
Sei G = (E, K) bipartit und zusammenhängend. Weiter sei a P E beliebig.
Wir setzen
E1 = { b P E | d(a, b) ist gerade }, E2 = { b P E | d(a, b) ist ungerade }.
Zeigen Sie, dass G bipartit durch E1 , E2 ist.
Übung 10
Sei G = (E, K1 , K2 ) ein gerichteter Graph mit E = { 0, …, 6 } und zwei
Kantenmengen
K1 = { 01, 12, 23, 34, 45, 56, 60 },
K2 = { 00, 13, 26, 32, 45, 51, 64 }.
Der Graph hat eine Schlinge bei 0 und eine Doppelkante zwischen 4 und 5.
Wir zeichnen die Kanten in K1 als grüne Pfeile und die Kanten in K2 als
blaue Pfeile.
Übung 11
Das Problem der Flussüberquerung lautet in einer von zahlreichen
Varianten:
Ein Bauer will mit einem Wolf, einer Ziege und einem Kohlkopf einen
Fluss mit Hilfe eines Floßes überqueren. Nur der Bauer kann das Floß
steuern, und er kann immer nur entweder den Wolf oder die Ziege oder
den Kohlkopf mitnehmen. Zudem dürfen auf einer Flussseite niemals Ziege
und Kohlkopf ohne Bauer und auch niemals Wolf und Ziege ohne Bauer
sein. Wie überquert der Bauer den Fluss?
Modellieren Sie das Problem mit Hilfe eines Graphen. Zeichnen Sie Ihren
Graphen möglichst übersichtlich, sodass Sie alle möglichen Lösungen
ablesen können.
Wir untersuchen nun die Frage nach der strukturellen Gleichheit zweier Gra-
phen, ihrer sogenannten Isomorphie. Anschaulich bedeutet die Isomorphie
zweier Graphen, dass sich die Graphen lediglich in den Namen ihrer Ecken un-
terscheiden. Präzisieren können wir diese Anschauung mit Hilfe von Funktio-
nen, die die Ecken des einen Graphen bijektiv auf die Ecken des anderen Gra-
phen abbilden und dabei in beiden Richtungen Kanten in Kanten übersetzen.
Die Idee der Begriffsbildung ist für die Mathematik von großer Bedeutung, alle
mathematischen Strukturen lassen sich aus der Perspektive der Isomorphie be-
trachten. Die Graphen bilden ein instruktives Beispiel mit überraschend schwie-
rigen Fragestellungen.
Motivation
Die beiden Graphen lassen sich, wenn wir von den Namen ihrer Ecken abse-
hen, jeweils als Dreieck mit einer an einer Ecke des Dreiecks angefügten Kante
beschreiben. Sie sind aus graphentheoretischer Sicht strukturgleich. Der visuelle
Unterschied, der sich durch die sich kreuzenden Kanten im Diagramm rechts er-
gibt, betrifft lediglich die Darstellung, nicht die Struktur der Graphen. Die Um-
benennung (oder aus der Sicht eines Ecken-Kanten-Diagramms: Verschiebung)
a @ 2, b @ 1, c @ 3, d @ 4
der Ecken führt den Graphen G1 in den Graphen G2 über. Diese Umbenennung
können wir visualisieren, indem wir die zugeordneten Ecken gleich einfärben:
Dagegen wäre eine Umbenennung, die die Ecke c der Ecke 2 zuordnet, nicht ge-
eignet, denn die Ecken c und 2 haben unterschiedliche Eigenschaften in den bei-
den Graphen. Beispielsweise hat die Ecke c in G1 zwei Nachbarn, die Ecke 2 in
G2 dagegen drei.
Kurz und anschaulich können wir die Situation so zusammenfassen:
Die Graphen G1 und G2 unterscheiden sich nur durch die Namen ihrer Ecken.
Nachdem die Namen der Ecken im Hinblick auf die Struktur des Graphen
keine Rolle spielen, können wir die Graphen auch zeichnen, ohne den Ecken
Namen zu geben. Die folgenden Diagramme sind in diesem Sinne gleichwertig
und repräsentieren jeweils sowohl G1 als auch G2 . Anschaulich können sie durch
eine geeignete Verschiebung der Ecken ineinander übergeführt werden.
Der Isomorphiebegriff
Beispiele
(1) Haben G1 und G2 jeweils genau eine Ecke, so gilt G1 > G2 .
(2) Haben G1 und G2 jeweils genau zwei Ecken, so sind G1 und G2 genau
dann isomorph, wenn sie beide die einzig mögliche Kante enthalten
oder beide diese Kante nicht enthalten.
(3) Die vollständig bipartiten Graphen K3, 2 und K2, 3 sind isomorph. Ein
Isomorphismus ist gegeben durch f : { 1, …, 5 } → { 1, …, 5 } mit
f(1) = 3, f(2) = 4, f(3) = 5, f(4) = 1, f(5) = 2.
(4) Die beiden folgenden Graphen sind isomorph, und f : E1 → E2 ist ein
Isomorphismus:
Das letzte Beispiel zeigt, dass die Kantenbedingung nicht nur besagt, dass f
Kanten erhält. Sie besagt stärker, dass sowohl Kanten und als auch Nichtkanten
erhalten bleiben. Etwas salopp können wir sie so formulieren:
Ein Isomorphismus übersetzt Kanten (in beiden Richtungen).
Die Isomorphie zwischen Graphen besitzt, wie zum Beispiel die Kongruenz-
relation modulo m der Zahlentheorie, die drei charakteristischen Eigenschaften
der Gleichheit:
Beweis
zu (1) : Die Identität id : E1 → E1 ist bijektiv. Für alle a, b P E1 gilt wegen
id(a) = a und id(b) = b:
ab P K1 genau dann, wenn id(a)id(b) P K1 .
Also gilt id : G1 > G1 .
zu (2) : Sei f : G1 > G2 . Da f bijektiv ist, ist die Umkehrabbildung g = f − 1
eine Bijektion von E2 nach E1 . Seien c, d P E2 beliebig. Da f bijektiv ist,
gibt es a, b P E1 mit f(a) = c und f(b) = d. Mit g(c) = a und g(d) = b
erhalten wir die Äquivalenzenkette
cdPK2 genau dann, wenn f(a)f(b)PK2
genau dann, wenn ab P K1
genau dann, wenn g(c)g(d) P K1
Also gilt g : G2 > G1 .
zu (3) : Seien f : G1 > G2 und g : G2 > G3 . Dann ist die Verknüpfung
h = g + f eine Bijektion von E1 nach E3 . Für alle a, b P E1 gilt:
ab P K1 genau dann, wenn f(a)f(b) P K2
genau dann, wenn g(f(a)) g(f(b)) P K3
genau dann, wenn h(a)h(b) P K3
Also gilt h : G1 > G3 .
Nach unserer Motivation ist zu erwarten, dass zwei isomorphe Graphen in al-
len graphentheoretischen Eigenschaften übereinstimmen. Dass dies so ist, kann
schrittweise aus der Definition der Isomorphie gefolgert werden, denn diese Ei-
genschaften lassen sich auf Ecken und Kanten zurückführen. So bedeutet etwa
„Die Ecke a ist Ecke eines Dreiecks in G1 .“
dass es zwei Ecken b ≠ c in E1 gibt mit ab, bc, caPK1 . Dann sind f(a), f(b) und f(c)
drei verschiedene Ecken von E2 mit f(a)f(b), f(b)f(c), f(c)f(a) P K2 . Folglich gilt:
„Die Ecke f(a) ist die Ecke eines Dreiecks in G2 .“
Satz (Gradfolgenbedingung)
Zwei isomorphe Graphen haben die gleiche Gradfolge.
Beispiele
(1) Ein Isomorphismus zwischen zwei Graphen übersetzt Kantenzüge in
Kantenzüge, Wege in Wege, Kreise in Kreise. Offenheit und Einfach-
heit bleiben dabei wechselseitig erhalten.
(2) Sind G1 und G2 isomorph, so ist G1 genau dann zusammenhängend,
wenn G2 dies ist. Allgemeiner entspricht die Anzahl der Zusammen-
hangskomponenten von G1 denen von G2 .
(3) Ist f : G1 > G2 ein Isomorphismus von G1 nach G2 , so ist eine Kante
ab von G1 genau dann eine Brücke in G1 , wenn die Kante f(a)f(b) von
G2 eine Brücke in G2 ist. Damit haben G1 und G2 die gleiche Anzahl
an Brücken.
(4) Ein Isomorphismus f : G1 > G2 erhält den Abstand, d. h. es gilt
dG1 (a, b) = dG2 (f(a), f(b)) für alle Ecken a, b von G1 .
Weiter gilt: Gibt es in G1 genau einen Weg der Länge 3 von a nach b,
so gibt es in G2 genau einen Weg der Länge 3 von f(a) nach f(b), usw.
(5) Sind G1 = (E1 , K1 ) und G2 = (E2 , K2 ) isomorph, so ist G1 genau dann
bipartit, wenn G2 dies ist. Denn ein Isomorphismus übersetzt eine
bipartite Zerlegung von E1 in eine bipartite Zerlegung von E2 .
Allgemeiner ist G1 für jedes k ≥ 2 genau dann k-partit, wenn G2 dies ist.
(6) Isomorphe Graphen enthalten die gleiche Anzahl an Dreiecken und
allgemeiner Kreisen der Länge 4, 5, 6, …
Beispiel
Seien G1 und G2 die Graphen mit der gemeinsamen Eckenmenge
E1 = E2 = { 1, …, 7 }
und den Kantenmengen
K1 = { 12, 24, 25, 34, 36, 45, 46, 67 },
K2 = { 12, 13, 14, 24, 36, 45, 47, 67 }.
Die beiden Graphen stimmen in Ordnung und Größe überein. Die
Gradfolgen lauten:
1, 1, 2, 2, 3, 3, 4 für G1 ,
1, 2, 2, 2, 2, 3, 4 für G2 .
Da sich die Gradfolgen unterscheiden, sind G1 und G2 nicht isomorph.
Anhand eines Ecken-Kanten-Diagramms fällt der Unterschied relativ gut
ins Auge (dies ist keineswegs immer der Fall):
Der linke Graph hat zwei Ecken mit Grad eins, der rechte nur eine
Es ist kein Kriterium bekannt, mit dem effizient entschieden werden könnte,
ob zwei Graphen G1 und G2 isomorph sind oder nicht. Natürlich können wir
alle Bijektionen von E1 nach E2 auflisten und die Kantenbedingung für jede Bi-
jektion überprüfen. Haben G1 und G2 genau n Ecken, so gibt es n! Bijektionen
von E1 nach E2 , sodass dieser Weg aus praktischer Sicht ineffizient und für große
Graphen unmöglich ist. Für zwei Graphen mit je 20 Ecken wären zum Beispiel
20! = 2432902008176640000
Bijektionen zu überprüfen. Durch die in „Widerlegung der Isomorphie“ ge-
nannten Kriterien kann eine Anwort „nein“ manchmal schnell gefunden werden.
Wenn aber alle Standard-Kriterien sowohl auf den ersten als auch auf den zwei-
ten Graphen zutreffen, heißt dies noch nicht, dass die beiden Graphen isomorph
sind.
Einteilung in Isomorphieklassen
Für alle n ≥ 1 lassen sich alle Graphen mit der Eckenmenge { 1, …, n } in Iso-
morphieklassen einteilen. Instruktiv ist der Fall n = 3:
Beispiel
Sei E = { 1, 2, 3 }. Dann gibt es genau acht Graphen G1 , …, G8 mit der
Eckenmenge E. Sie sind definiert durch die Kantenmengen
K1 = { }, K2 = { 12 }, K3 = { 13 }, K4 = { 23 },
K5 = { 12, 13 }, K6 = { 12, 23 }, K7 = { 13, 23 }, K8 = { 12, 13, 23 }.
Die Graphen G2 , G3 und G4 sind paarweise zueinander isomorph, ebenso
wie die Graphen G5 , G6 und G7 . Ansonsten bestehen nur noch die trivialen
Isomorphien Gk > Gk für k = 1, …, 8.
Für G2 und G3 gilt zum Beispiel: Die isolierte Ecke 3 von G2 muss durch je-
den Isomorphismus auf die isolierte Ecke 2 von G3 abgebildet werden. Bei
den durch eine Kante verbundenen Ecken ist ein Tausch möglich, die beiden
Ecken sind strukturell nicht unterscheidbar. Insgesamt gibt es zwischen G2
und G3 genau zwei Isomorphismen, nämlich die Bijektionen
f, g : { 1, 2, 3 } → { 1, 2, 3 } mit
f(1) = 1, f(2) = 3, f(3) = 2,
g(1) = 3, g(2) = 1, g(3) = 2.
Analoges gilt für die anderen zueinander isomorphen Graphen. Für die Gra-
phen G6 , G7 und G8 beachte der Leser, dass die eindeutig bestimmten Ecken
vom Grad 2 (die gemeinsame Ecke der beiden Kanten) durch einen Isomor-
phismus einander zugeordnet werden müssen, die beiden anderen Ecken
können wieder ausgetauscht werden.
Insgesamt erhalten wir also die vier Isomorphieklassen (Mengen zueinander
isomorpher Graphen):
{ G1 }, { G2 , G3 , G4 }, { G5 , G6 , G7 }, { G8 }.
Wir können diese Klassen visuell darstellen, indem wir aus jeder Klasse einen
beliebigen Graphen auswählen und die Namen der Ecken weglassen:
In analoger Weise lassen sich die Graphen mit 4, 5, 6, … Ecken bis auf Iso-
morphie klassifizieren. Eine Klassifikation der 64 Graphen mit der Ecken-
menge { 1, 2, 3, 4 } können wir noch relativ gut per Hand durchführen (Übung).
Allgemein wird das Vorhaben aber schnell sehr aufwendig: Ist n ≥ 1 beliebig, so
gibt es genau 2m Graphen mit der Eckenmenge { 1, …, n }, wobei
m = n(n − 1)/2.
Es ist keine allgemeine Formel für die Anzahl der Isomorphieklassen in Abhän-
gigkeit von n bekannt. Mit Hilfe von Computern lässt sich diese Anzahl für
kleine n berechnen:
Übungen
Übung 1
Erstellen Sie Diagramme, die die Reflexivität, Symmetrie und Transitivität
der Isomorphie erläutern.
Übung 2
Sei f : G1 > G2 ein Isomorphismus zwischen zwei Graphen. Zeigen Sie,
dass für alle a, b1 , …, bn P E1 gilt:
(1) N(a) = { b1 , …, bn } genau dann, wenn N(f(a)) = { f(b1 ), …, f(bn ) }.
(2) d(a) = d(f(a)).
Übung 3
Zeigen oder widerlegen Sie, dass die folgenden Graphen isomorph sind.
(1)
(2)
Übung 4
Geben Sie zwei Graphen mit möglichst kleiner Ordnung an, die die gleiche
Gradfolge besitzen, aber nicht isomorph sind.
Übung 5
Geben Sie eine übersichtliche Darstellung aller Graphen mit der Ecken-
menge { 1, 2, 3, 4 }, die folgende Informationen enthält:
Isomorphieklassen, Größe der Klassen, Größe der Graphen in einer Klasse,
anschauliche Beschreibung der Klassen.
Übung 6
Für einen Graphen G = (E, K) ist der Komplementärgraph Gc = (E, Kc ) von
G definiert durch
Kc = { ab | a, b P E, a ≠ b, ab ¸ K }.
Anschaulich entsteht Gc aus G, indem wir alle vorhandenen Kanten
streichen und alle fehlenden Kanten hinzufügen.
Wir beginnen nun mit der Untersuchung algorithmischer Fragen der Graphen-
theorie. Den Anfang bildet eine klassische Problemstellung:
Kann ein gegebener Graph so durchlaufen werden, dass jede Kante des Graphen
genau einmal besucht wird und wir am Ende wieder bei der Startecke ankom-
men?
Seine historischen Wurzeln hat diese Frage im Königsberger Brückenproblem
(1736): Damals wurde die Frage gestellt, ob es eine Stadtbesichtigung gibt, die
jede der sieben Königsberger Brücken genau einmal überquert. Euler zeigte mit
graphentheoretischen Methoden, dass dies nicht möglich ist. Die Mathematik,
die sich aus der Frage ergibt, ist erstaunlich reichhaltig und wir werden im Ver-
lauf der Untersuchung auch offene Fragen kennenlernen. Als überraschend
schwierig erweist sich das analoge Problem, einen Graphen so in einem ge-
schlossenen Kantenzug zu durchlaufen, dass alle Ecken genau einmal besucht
werden. Die Frage nach der Existenz derartiger Hamilton-Kreise führt uns zum
P ≠ NP-Problem der Komplexitätstheorie.
Eulersche Graphen
Für die genaue Formulierung des Problems brauchen wir einige Definitionen.
Definition (Euler-Zug)
Sei G = (E, K) ein Graph. Ein geschlossener Kantenzug heißt ein (geschlosse-
ner) Euler-Zug in G, falls er jede Kante des Graphen genau einmal besucht.
Der Graph G heißt Eulersch, wenn ein Euler-Zug in G existiert.
Beispiele
(1) Wir betrachten den folgenden Graphen G = (E, K):
Bis auf die Zusatzbedingung „keine isolierten Ecken“ (die leicht vergessen
wird) ist also „zusammenhängend“ eine notwendige Bedingung für „Eulersch“.
Das ist noch nicht besonders aufregend. Interessanter ist:
Beweis
Sei Z = a0 , …, an , a0 ein Euler-Zug in G. Wir betrachten zunächst eine von
a0 verschiedene Ecke a. Wird die Ecke a auf Z entlang einer Kante ba
besucht, so wird die Ecke a unmittelbar danach entlang einer anderen
Kante ac wieder verlassen, sodass der Besuch von a die Form
… b, a, c … mit b ≠ c
besitzt. Damit können jedem Besuch von a genau zwei Kanten mit der Ecke
a zugeordnet werden. Da auf Z jede Kante mit der Ecke a genau einmal
besucht wird, taucht jede Kante mit der Ecke a in genau einer dieser
Zuordnungen auf. Wird also a genau k mal auf Z besucht, so gilt d(a) = 2k.
Damit ist d(a) gerade.
Für die Startecke a0 argumentieren wir analog, indem wir das Besuchspaar
a0 a1 und an a0 mit einbeziehen. Alternativ können wir auch den verschobe-
nen Euler−Zug a1 , …, an , a0 , a1 betrachten, bei dem a0 nicht mehr die
Startecke ist. Obiges Argument zeigt, dass d(a0 ) gerade ist.
Der Beweis lässt sich anschaulich so zusammenfassen: Laufen wir in eine Ecke
a hinein, so müssen wir aus der Ecke a auf einer anderen Kante wieder herauslau-
fen. Bei jedem Rein-Raus-Laufen werden zwei der d(a) Kanten verbraucht. Da
am Ende alle Kanten verbraucht sind, muss d(a) gerade sein. Die Ecke a selbst
wird d(a)/2-oft besucht.
Beispiel
Wir betrachten noch einmal obigen Graphen G und den Euler-Zug Z. Die
Ecke 3 hat den Grad 4. Beim ersten Besuch der Ecke 3 werden die Kanten
43 und 37 verbraucht, beim zweiten Besuch die Kanten 13 und 35. Die
Ecke 1 besitzt das Besuchspaar 81 und 13, und zudem das besondere Paar
12 und 41, das der Sonderrolle der 1 als Start- und End-Ecke entspricht.
Überraschenderweise ist die Geradheit aller Grade auch für eine hinreichende
Bedingung nützlich. Um die Sprechweise zu vereinfachen, definieren wir:
Satz (Rückkehrlemma)
Sei G = (E, K) ein gerader Graph. Weiter sei a eine Ecke mit positivem
Grad. Dann gibt es einen einfachen geschlossenen Kantenzug von a nach a
positiver Länge.
Beweis
Wir starten bei a und durchlaufen solange neue, d. h. bislang unbesuchte
Kanten, bis wir wieder bei a ankommen. Der so erzeugte Kantenzug endet
bei der Ecke a, da wir jede besuchte Ecke b ≠ a wegen d(b) gerade auf einer
bislang unbesuchten Kante wieder verlassen können (und da die Anzahl der
Kanten des Graphen endlich ist).
Beispiel
Wir betrachten noch einmal obigen Graphen. Startend in der Ecke 6 laufen
wir entlang unbesuchter Kanten von jeder Ecke zur kleinsten Nachbarecke,
bis wir wieder bei der Startecke ankommen. Auf dieser Weise ergibt sich
der Kantenzug
6, 4, 1, 2, 4, 3, 5, 6
Diesen Kantenzug können wir visualisieren, indem wir die aktuell besuchte
Ecke besonders einfärben und nach jedem Schritt die durchlaufene Kante
entfernen:
Befinden wir uns also in einem Ausgangsraum eines Labyrinths und wissen
wir, dass von jedem Raum des Labyrinths eine gerade Zahl von Gängen abführt,
so müssen wir nur stets neue Gänge durchlaufen, um irgendwann wieder im Aus-
gangsraum anzukommen. Es reicht, die durchlaufenen Gänge zu markieren, den
genauen Verlauf dieser Erkundung müssen wir gar nicht protokollieren.
Nach diesen Vorbereitungen können wir nun relativ leicht zeigen:
Beweis
Es genügt, folgende Aussage zu beweisen:
(+) Sei Z ein einfacher geschlossener Kantenzug in G, der kein Euler-Zug
ist. Dann können wir Z zu einem geschlossenen einfachen Kantenzug
Z′ erweitern, der mehr Kanten als Z besucht.
Zum Beweis von (+) sei Z ein einfacher geschlossener Kantenzug in G, der
kein Euler-Zug ist. Wir wählen eine auf Z nicht besuchte Kante bc derart,
dass die Ecke b auf Z besucht wird.
Beweis der Existenz einer solchen Kante
Da Z kein Euler-Zug ist, gibt es eine auf Z nicht besuchte Kante a*b*.
Da G zusammenhängend ist, gibt es in G einen Kantenzug der Form
a*, b*, …, a0 , mit der Startecke a0 von Z.
Die erste Kante dieses Kantenzugs, die zu einer besuchten Ecke von Z
führt, ist eine Kante wie gewünscht.
Wir streichen nun alle Kanten von Z aus G und erhalten so den Teilgra-
phen G′. Der Graph G′ ist immer noch gerade, da wir den Grad jeder Ecke
um eine gerade Zahl vermindert haben. (Der Graph G′ ist nicht mehr
notwendig zusammenhängend, was wir nicht brauchen.) Nach dem
Rückkehrlemma existiert in G′ ein einfacher geschlossener Kantenzug
W = b, c, …, b.
Wir fügen nun W an der ersten Stelle i eines Besuchs von b in Z ein, und
erhalten dadurch einen Kantenzug, den wir Z + W nennen:
Z = a0 , …, ai = b, ai + 1 , …, an , a0
Z + W = a0 , …, ai = b, c, …, b, ai + 1 , … an , a0
Der Kantenzug Z′ = Z + W ist einfach, geschlossen und länger als Z.
Aus dem Beweis der hinreichenden Bedingung von Euler und Hierholzer lässt
sich folgender Algorithmus zur Konstruktion eines Euler-Zugs gewinnen.
Bemerkung
(1) Nach dem obigen Beweis ist der Algorithmus korrekt, d. h., es wird ein
Euler-Zug gefunden. Das Verfahren ist zudem sehr effizient. Die
Laufzeit ist linear in der Größe |K| des Graphen.
(2) Die Wahl der kleinstmöglichen Ecke in der Definition von Wi stellt
sicher, dass das Verfahren deterministisch verläuft: Jeder Anwender
erzeugt denselben Euler-Zug, wenn er dem Algorithmus mit der
gleichen Startecke folgt. Prinzipiell ist jeder Kantenzug Wi , der nur
unbesuchte Kanten durchläuft, geeignet.
(3) Wir können den Algorithmus auch mit einem beliebigen Graphen mit
der Eckenmenge { 1, …, n } durchführen (ohne Forderung des
Zusammenhangs und gerader Grade). Ist Z0 = a, so versucht der
Algorithmus, einen Euler-Zug für die Zusammenhangskomponente
von a zu finden. Dies gelingt genau dann, wenn alle Ecken in dieser
Zusammenhangskomponente einen geraden Grad besitzen. Andern-
falls laufen wir irgendwann in eine Ecke hinein, von der keine
unbesuchte Kante mehr wegführt.
Beispiel
Sei G = (E, K) mit E = { 1, …, 7 } und
K = { 12, 13, 14, 16, 23, 24, 26, 34, 35, 45, 46, 47, 56, 57 }
Der Graph ist zusammenhängend und gerade:
a 1 2 3 4 5 6 7
d(a) 4 4 4 6 4 4 2
Kreiszerlegungen
Wir wollen nun die Eigenschaft „Alle Ecken haben einen geraden Grad“ noch
etwas weiter analysieren. Hierzu beweisen wir zunächst einen allgemeinen Satz
über die Zerlegung von einfachen geschlossenen Kantenzügen:
Beweis
Sei Z = a0 , a1 , …, an , a0 . Wird keine Ecke außer der Startecke a0 zweimal
besucht, so ist Z bereits ein Kreis (da Z einfach ist, ist n ≥ 2). Andernfalls sei
j < n minimal derart, dass der verkürzte Kantenzug
a0 , …, aj
die Ecke aj zweimal besucht. Nach minimaler Wahl von j gibt es ein
eindeutiges 0 ≤ i < j mit ai = aj . Wir setzen nun
C = ai , …, aj
Z′ = a0 , …, ai , aj + 1 , …, an , a0
Dann ist Z′ ein einfacher geschlossener Kantenzug positiver Länge. Nach
Konstruktion ist C ein Kreis und die Mengen der von Z′ und C besuchten
Kanten sind disjunkt, da Z einfach ist. Weiter gilt Z = Z′ + C. Eine endliche
Wiederholung dieses Verfahrens liefert die gewünschte Zerlegung.
Beispiel
Wir betrachten den folgenden Graphen und den einfachen geschlossenen
Kantenzug Z mit
Z = 1, 2, 3, 4, 5, 6, 7, 8, 5, 9, 3, 10, 1
Beweis
(1) impliziert (2): Der Graph G besitze gerade Grade. Der Satz von Euler-
Hierholzer liefert Euler-Züge für jede Zusammenhangskomponente
von G. Obiger Satz über die Kreiszerlegung von Kantenzügen beschert
uns mit einer Kreiszerlegung für jede Zusammenhangskomponente.
Zusammengenommen bilden diese Zerlegungen eine Kreiszerlegung
von G wie gewünscht.
(2) impliziert (1): Sei C1 , …, Cm eine Kreiszerlegung von G. Weiter sei
a P E beliebig. Kommt die Ecke a in genau r der Kreise C1 , …, Cm vor,
so gilt d(a) = 2r. Denn jeder der r Kreise besucht genau zwei Kanten mit
a als Ecke, und diese Kantenpaare sind nach Voraussetzung disjunkt.
Dies zeigt, dass d(a) gerade ist. Damit hat G gerade Grade.
Weitere Ergebnisse
Die Analyse des Problems „Durchlaufe alle Kanten“ ist mit den obigen Ergeb-
nissen keineswegs abgeschlossen. Eine Frage ist zum Beispiel:
Was gilt, wenn auf die Forderung „geschlossen“ verzichtet wird?
Wir definieren hierzu:
Beispiel
Sei G = (E, K) mit E = { 1, …, 5 } und K = { 12, 13, 14, 23, 24, 34, 35, 45 }.
Der Kantenzug
Z = 1, 2, 3, 4, 1, 3, 5, 4, 2
ist ein offener Euler-Zug von 1 nach 2 in G.
Beweis
Wir führen eine neue Ecke e und zwei neue Kanten ae* und be* ein. Der so
entstehende Graph G′ ist gerade und weiterhin zusammenhängend. Nun
folgt die Äquivalenz der beiden Bedingungen aus den bisherigen Resulta-
ten, denn ein geschlossener Euler-Zug in G′ führt zu einem offenen Euler-
Zug von a nach b in G und umgekehrt.
Der Beweis zeigt, dass ein offener Euler-Zug mit Hilfe des Algorithmus von
Hierholzer gefunden werden kann, falls die Grad-Bedingung (2) des Satzes er-
füllt ist. Alternativ können wir den Algorithmus modifizieren, sodass der Über-
gang zu G′ unnötig wird: Starten wir bei a und durchlaufen wir solange möglich
unbesuchte Kanten, so endet der entstehende einfache Kantenzug irgendwann
bei b (Rein-Rauslaufen-Argument). Der Rest ist wie zuvor.
Mehrfacher Kantenbesuch
Brücken spielen bei der Kreisbildung in einem Graphen eine wichtige Rolle:
Ist ab eine Brücke von G, so gibt es gar keinen Kreis in G, der ab besucht. Damit
ist die Brückenfreiheit notwendig für jede Form der Kreisüberdeckung. Die Ver-
mutung besagt, dass bei Brückenfreiheit eine relativ einfache Überdeckung von
G durch Kreise möglich ist. Für eine einfache Kreiszerlegung reicht diese Vor-
aussetzung nicht, wie der Satz von Veblen zeigt: Die Existenz einer einzigen
Ecke mit einem ungeraden Grad schließt eine einfache Kreiszerlegung aus.
Beispiele
(1) Sei G = (E, K) mit E = { 1, …, 8 } und
K = { 12, 14, 23, 34, 35, 56, 58, 67, 78 }.
Die Brücke 35 verhindert die Zerlegung von G in Kreise.
Hamilton-Kreise
Bislang haben wir beim Durchlaufen eines Graphen nur die Kanten betrach-
tet. Ein Durchlauf-Problem lässt sich auch für die Ecken formulieren:
Definition (Hamilton-Kreis)
Sei G = (E, K) ein Graph. Ein Kreis in G heißt ein Hamilton-Kreis in G,
wenn er alle Ecken von G besucht. Der Graph G heißt Hamiltonsch, falls ein
Hamilton-Kreis in G existiert.
Beispiele
Die Graphen der Platonischen Körper sind Hamiltonsch. Der Dodekaeder-
Graph besitzt zum Beispiel den folgenden rot markierten Hamilton-Kreis:
Die geforderte Reichhaltigkeitsbedingung (+) ist sehr stark, und sie wird in der
Regel von Hamiltonschen Graphen nicht erfüllt. Als triviales Beispiel betrachte
der Leser einen Kreis mit 100 Ecken. Wie jeder Kreis ist dieser Graph Hamil-
tonsch. Es gilt aber d(a) = 2 < 50 für alle Ecken a. Auch der Dodekaeder-Graph
hat mit 20 Ecken und der konstanten Gradfolge 3 relativ kleine Grade.
Im Gegensatz zu Euler-Zügen scheint es kein einfaches allgemeines Kriterium
und auch keinen effizienten Algorithmus zu geben, mit dem wir entscheiden
könnten, ob ein Graph Hamiltonsch ist oder nicht. Hierzu diskutieren wir allge-
mein:
Für ein Entscheidungsproblem D : I → { 0, 1 } stellt sich die Frage nach der al-
gorithmischen Berechenbarkeit: Gibt es ein Computer-Programm, das für jeden
Input iPI den Wert D(i) in endlich vielen Schritten korrekt berechnet? Wenn ja:
Welche Komplexität (Anzahl der Rechenschritte in Abhängigkeit des Inputs) hat
eine solche Berechnung? Ein berechenbares Entscheidungsproblem nennen wir
(algorithmisch) lösbar. Viele Probleme können durch ein brute force Verfahren ge-
löst werden. Wir können zum Beispiel alle möglichen Kantenzüge der Länge
|E| + 1 eines Graphen G = (E, K) auflisten und jeden Kantenzug überprüfen, ob
er ein Hamilton-Kreis ist oder nicht. Finden wir einen Hamilton-Kreis, so geben
wir 1 aus, andernfalls 0. Derartige Verfahren sind theoretisch uninteressant und
aufgrund ihres Rechenaufwands in der Praxis zumeist gar nicht durchführbar. Es
stellt sich also die Frage nach der Existenz von Algorithmen einer in einem be-
stimmten Sinne „guten“ Komplexität. Drei prominente Klassen von Entschei-
dungsproblemen mit einer guten Komplexität sind die Komplexitätsklassen P,
NP und co-NP:
Die Klasse P besteht aus allen Entscheidungsproblemen, die sich, gemessen an
der Länge , des Inputs, in polynomieller Laufzeit lösen lassen. Für ein Problem
D : I → { 0, 1 } mit einem Graphen G = (E, K) als Input ist zum Beispiel die natür-
liche Zahl ,(G) = |E| + |K| ein gutes Maß für die Länge eines Inputs. Das Pro-
blem D liegt nun in der Klasse P, wenn es einen Algorithmus und ein Polynom
p : N → N gibt, sodass der Algorithmus für alle Inputs G P I die korrekte Ant-
wort D(G) P { 0, 1 } in höchstens p(,(G)) vielen Rechenschritten findet. Je gerin-
ger der Grad des Polynoms p ist, desto effizienter ist der Algorithmus. Hat p den
Grad k, so sagen wir auch, dass der Algorithmus die Laufzeit O(nk ) besitzt. So hat
zum Beispiel der Algorithmus von Hierholzer bei geeigneter Implementierung
eine lineare Laufzeit (Grad 1). Die Klasse P ist damit unterteilt in lineare Pro-
bleme, quadratische Probleme, Probleme in O(n3 ) usw. Darüber hinaus sind
auch noch Laufzeiten wie O(nlog(n)) von Interesse, die zwischen O(n) und O(n2 )
liegen: Für jeden Input i wird hier das Ergebnis in höchstens c nlog(n) + c0 vielen
Schritten gefunden, mit gewissen Konstanten c und c0 . Für die Frage, ob ein
Problem in P liegt, spielen diese für die Praxis sehr wichtigen Unterteilungen
keine Rolle. Es genügt, wenn irgendein polynomieller Algorithmus existiert.
Die Klasse NP besteht aus all denjenigen Entscheidungsproblemen, für die im
Fall der Existenz eine Lösung in polynomieller Zeit auf ihre Richtigkeit hin
überprüft werden kann. Griffiger formuliert:
Geratene Lösungen können polynomiell verifiziert werden.
Formaler liegt ein Problem D : I → { 0, 1 } genau dann in der Klasse NP, wenn es
ein Problem D′ : I × J → { 0, 1 } gibt mit:
(a) D′ ist polynomiell lösbar.
(b) Für alle i P I gilt:
D(i) = 1 genau dann, wenn es gibt ein j P J mit D′(i, j) = 1.
Das Hamilton-Problem − die Frage, ob ein gegebener Graph G Hamiltonsch
ist oder nicht − gehört zum Beispiel der Klasse NP an. Denn ist der Graph G
P ungleich NP-Problem
Sind die Klassen P und NP verschieden?
NP ungleich co-NP-Problem
Sind die Klassen NP und co-NP verschieden?
Das Isomorphie-Problem
Eine besondere Stellung nimmt das Isomorphie-Problem ein, das die Frage
stellt, ob zwei gegebene Graphen isomorph sind oder nicht. Dieses Problem liegt
in NP, denn für zwei isomorphe Graphen G1 und G2 können wir einen Isomor-
phismus f : E1 → E2 in polynomieller Zeit als solchen erkennen. Im Gegensatz
zum Hamilton-Problem und vielen anderen NP-Problemen, für die kein poly-
nomieller Algorithmus gefunden werden konnte, ist es nicht gelungen zu zeigen,
dass das Isomorphie-Problem NP-vollständig ist. Zudem hat die Hypothese,
dass das Isomorphie-Problem in P liegt, ungewöhnliche komplexitätstheoreti-
sche Konsequenzen. Vermutlich ist das Isomorphie-Problem also ein Problem in
NP, das weder in P liegt noch NP-vollständig ist.
Das Halte-Problem
Halte-Problem
Gibt es ein Computerprogramm P, das beliebige andere Computerpro-
gramme Q und zugehörige Inputs q daraufhin überprüft, ob Q bei Input q
terminiert oder nicht?
NP-schwer co-NP-schwer
NP- co-NP-
vollständig vollständig
NP co-NP
P
Übungen
Übung 1
Wir betrachten den folgenden Graphen:
Konstruieren Sie mit Hilfe des Algorithmus von Hierholzer einen Euler-
Zug für diesen Graphen.
Übung 2
Wir betrachten die 21 Steine eines Dominospiels, die jeweils zwei verschie-
dene Werte 0, …, 6 besitzen. Das Dominoproblem lautet : Lassen sich die
Steine in einer geschlossenen Kette anordnen, sodass Berührungen nur bei
gleicher Zahl erlaubt sind? Modellieren und untersuchen Sie dieses
Problem graphentheoretisch. Geben Sie im Falle der Existenz eine
konkrete Lösung an. Für welche n gibt es eine Lösung, wenn allgemeiner
die Werte 0, 1, …, n statt 0, …, 6 zugelassen sind?
Übung 3
Konstruieren Sie einen Graphen G = (E, K) und einen geschlossenen
einfachen Kantenzug Z = a0 , …, an , a0 in G derart, dass für alle i, j der
Kantenzug aj , …, an , a0 , …, ai kein Kreis ist. (Dieser Graph zeigt, dass aus
einem geschlossenen einfachen Kantenzug im Allgemeinen kein Kreis in
einem Schritt herausgeschnitten werden kann, der eine gegebene Ecke
besucht.)
Übung 4
Wie ändern sich die Ergebnisse und Algorithmen über Euler-Züge, wenn
wir Mehrfach-Verbindungen zwischen den Ecken zulassen?
Übung 5
Wir betrachten nun gerichtete Graphen, bei denen eine Kante ab von ba zu
unterscheiden ist (in Diagrammen durch einen Pfeil dargestellt). Alle
graphentheoretischen Grundbegriffe sind in natürlicher Weise definiert.
Beim Grad einer Ecke unterschieden wir nun den Ausgangsgrad d+ (a) und
den Eingangsgrad d − (a) einer Ecke a:
d+ (a) = | { b P E | ab P K } |, d− (a) = | { b P E | ba P K } |.
Sei nun G = (E, K) ein zusammenhängender gerichteter Graph, d. h. für alle
Ecken a, b gibt es einen gerichten Kantenzug von a nach b und einen
gerichteten Kantenzug von b nach a. Zudem gelte d+ (a) = d− (a) für alle
Ecken a (Eingangsgrad gleich Ausgangsgrad). Zeigen Sie, dass der für
gerichtete Graphen angepasste Algorithmus von Hierholzer einen Euler-
Zug produziert.
Übung 6
Beweisen Sie den Satz über den zweifachen Kantenbesuch mit Hilfe der
vorangehenden Übung durch Übergang zu einem gerichteten Graphen.
Übung 7
Beweisen Sie den Satz über den zweifachen Kantenbesuch, indem Sie
zeigen, dass der folgende Labyrinth-Algorithmus einen geschlossenen
Kantenzug produziert, der jede Kante genau zweimal in unterschiedlichen
Richtungen durchläuft.
Vorbemerkung: Bei der Durchführung des Verfahrens sind Kanten ab
entweder gar nicht oder mit einem gelben oder mit einem roten Pfeil von a
nach b markiert (sodass für die Markierung ab von ba zu unterscheiden ist).
Rot bedeutet: Die Kante darf in Pfeilrichtung nicht durchlaufen werden.
Gelb bedeutet: Durchlaufe die Kante in Pfeilrichtung erst dann, wenn es
keine unmarkierten Optionen mehr gibt.
Wir starten mit einer beliebigen Kante a0 a1 und dem Kantenzug a0 , a1 .
Weiter markieren wir die Kante a0 a1 rot. Ist ein Kantenzug a0 , …, an
konstruiert und wird dabei an zum ersten Mal besucht, so markieren wir die
Kante an an − 1 gelb. Gibt es eine unmarkierte Kante mit an als Ausgangsecke,
so gehen wir eine solche Kante. Andernfalls gehen wir von an entlang der
gelb markierten Kante. Dieser Schritt liefert die nächste Ecke an + 1 .
Schließlich markieren wir wir an an + 1 nun rot. Wir wiederholen nun das
Verfahren solange, bis alle Kanten rot markiert sind.
Übung 8
Überprüfen Sie die Vermutung von Szekeres und Seymour an einigen
selbstgewählten Beispielen. Informieren Sie sich in der Fachliteratur oder
im Internet über den Stand der Vermutung (engl. cycle double cover
conjecture).
Übung 9
Beweisen Sie den Satz von Dirac wie folgt:
Betrachten Sie einen nach links und rechts nicht mehr verlängerbaren Weg
W = a0 , …, an in G. Zeigen Sie, dass es ein i < n gibt derart, dass
C = a0 , …, ai , an , an − 1 , …, ai + 1 , a0
ein Kreis in G ist. Zeigen Sie nun mit Hilfe der Reichhaltigkeitsbedingung:
Ist a P E eine auf C nicht besuchte Ecke, so gibt es ein j derart, dass aaj eine
Kante von G ist. Gewinnen Sie hieraus einen Weg, der länger ist als W und
vollständigen Sie den Beweis durch Wiederholung des Verfahrens.
Ein Baum ist also ein zusammenhängender kreisfreier Graph. Jeder Baum lässt
sich „baumartig“ organisieren, indem wir eine Ecke als Wurzel auszeichnen und
dann die Nachbarecken stufenweise anordnen:
Beispiel
Sei G = (E, K) mit E = { 1, …, 14 } und
K = { 12, 13, 16, 17, 18, 19, 34, 35, 9-10, 10-11, 11-12, 11-13, 11-14 }.
Der Graph ist ein Baum. Wir wählen die Ecke 9 als Wurzel und erhalten:
Stufe 0 {9}
Stufe 1 { 1, 10 }
Stufe 2 { 2, 3, 6, 7, 8, 11 }
Stufe 3 { 4, 5, 12, 13, 14 }
Wählen wir dagegen die 1 als Wurzel, so erhalten wir eine Stufe mehr:
Ein graphentheoretischer Baum hat keine feste Wurzel. Wir können jede
Ecke als Wurzel auszeichnen und den Baum entsprechend anordnen und zeich-
nen, wahlweise nach unten, oben, links oder rechts wachsend. Die Auszeichnung
einer Wurzel führt zu einer eindeutigen Stufung des Baumes.
Ein Wald ist eine Ansammlung von Bäumen, und diese Bäume sind genau die
Zusammenhangskomponenten des Waldes. Zeichnen wir in jeder Komponente
eine Wurzel aus, so ergibt sich eine Stufung des Waldes.
Beispiel
Durch Entfernen der Kante 9-10 aus obigem Baum entsteht ein Wald mit
zwei Teilbäumen. Mit den Wurzeln 1 und 11 ergibt sich die Darstellung:
Wir betrachten noch weitere Beispiele für Bäume, wobei wir die Ecken unbe-
nannt lassen.
Charakterisierungen
Satz (Wegkriterium)
Sei G = (E, K) ein Graph. Dann sind äquivalent:
(1) G ist ein Baum.
(2) Für alle a, b P E gibt es genau einen Weg von a nach b in G.
Beweis
(1) impliziert (2):
Sei G ein Baum, und seien a, b P E. Da G zusammenhängend ist, gibt es
mindestens einen Weg von a nach b. Zum Beweis der Eindeutigkeit
seien
W1 = a0 , …, an , W2 = b0 , …, bm
zwei Wege von a0 = b0 = a nach an = bm = b. Annahme W1 ≠ W2 . Dann
existiert eine Stelle i, an der sich die beiden Wege trennen, d. h.
ai = bi und ai + 1 ≠ bi + 1 . Weiter gibt es eine erste Stelle j > i auf W1 , an
der sich die Wege wieder treffen, sodass also aj = bk für ein eindeutig
bestimmtes k > i. Dann ist aber
C = ai , …, aj , bk − 1 , …, bi
ein Kreis in G, im Widerspruch zu G Baum.
(2) impliziert (1):
Sei G derart, dass es für alle Ecken a, b P E genau einen Weg von a nach
b gibt. Dann ist G zusammenhängend. Weiter kann G keinen Kreis
besitzen, denn ist C = a0 , …, an , a0 ein Kreis, so sind a0 , …, an und a0 , an
zwei verschiedene Wege von a0 nach an in G.
Satz (Kantenkriterium)
Sei G = (E, K) ein zusammenhängender Graph. Dann sind äquivalent:
(1) G ist ein Baum.
(2) Es gilt |K| = |E| − 1.
Allgemeiner ist ein Graph mit genau c Komponenten genau dann ein Wald,
wenn
|K| = |E| − c.
Der Beweis dieser Äquivalenzen sei dem Leser zur Übung überlassen.
Bäume sind äußerst nützliche Hilfsmittel zur algorithmischen Analyse von be-
liebigen Graphen. Entscheidend hierzu ist folgender Begriff:
Ein aufspannender Baum G′ eines Graphen G besitzt also alle Ecken und ge-
wisse (möglicherweise alle) Kanten von G. Als Baum ist G′ wie G zusammenhän-
gend. Wir können einen aufspannenden Baum als eine so weit wie möglich redu-
zierte Version des ursprünglichen Graphen ansehen. Diese Sicht verwenden wir
im Beweis des folgenden Existenzsatzes:
Beweis
Wir entfernen aus G solange wie möglich Kanten, die auf einem Kreis
liegen. Da der Zusammenhang durch das Streichen einer Kreiskante
gewahrt bleibt, erreichen wir nach endlich vielen Schritten einen zusam-
menhängenden kreisfreien Graphen G′ der Form (E, K′) mit K′ ⊆ K.
Dieser Graph ist ein aufspannender Baum von G.
Beispiel
Der rot markierte Teilgraph des folgenden Graphen ist ein aufspannender
Baum. Er entsteht durch wiederholtes Entfernen von Kreiskanten.
Die Breitensuche
Breitensuche (BFS)
Sei G = (E, K) ein Graph, und sei a P E eine Startecke. Wir konstruieren
Bäume Gi = (Ei , Ki ) wie folgt.
Zunächst sei G0 = ({ a }, ∅) der Graph, der nur aus der Startecke besteht.
Ist Gi konstruiert, so seien e1 , … ek die unbesuchten Nachbarn der bereits
besuchten Ecken, d. h. die Ecken in E − Ei , die mit mindestens einer Ecke
in Ei benachbart sind (sog. angrenzende Ecken). Wir stoppen mit Ergebnis
Gi , falls es keine solchen Ecken gibt. Andernfalls setzen wir
Ei + 1 = Ei ∪ { e1 , …, ek }.
Nun fügen wir für jede Ecke e1 , …, ek eine Kante zu Ki hinzu, die ei mit
einer Ecke in Ei verbindet. Dies definiert Ki + 1 und damit den Graphen
Gi + 1 = (Ei + 1 , Ki + 1 ).
Bemerkung
Einen deterministischen Verlauf erhalten wir, indem wir
(a) die Ecken in der Form 1, …, n durchzählen,
(b) die neuen Ecken in der Form e1 < … < ek anordnen,
(c) neue Kanten bei stets mit der kleinstmöglichen Ecke b P Ei zu Ki
hinzufügen.
Beispiel
Sei G = (E, K) mit E = { 1, …, 10 } und
K = { 12, 13, 14, 23, 24, 34, 35, 36, 3-10, 46, 56, 67, 78, 79, 89, 9-10 }.
Die deterministische Version der Breitensuche liefert für die Startecke 1
den Baum G′ = (E, K′) mit
K′ = { 12, 13, 14, 35, 36, 3-10, 67, 9-10, 78 }.
G mit dem BFS-Suchbaum für die Startecke 1, von links nach rechts gestuft
Beweis
Die Aussage (a) ergibt sich für einen kürzesten Weg W = a0 , …, an von a
nach b durch Induktion nach i ≤ n. Die restlichen Aussagen folgen aus (a)
und der Konstruktion des Suchbaums.
Die Breitensuche ist sehr effizient, die Laufzeit ist linear in |E| + |K|. Das
Verfahren hat zahlreiche Anwendungen. Wir besprechen einige davon.
Eine einzige Durchführung von BFS reicht in der Regel nicht. Aus dem Such-
baum für die Startecke a lassen sich Wege zwischen zwei beliebigen Ecken b und
c des Suchbaums ablesen, aber diese Wege sind nicht unbedingt kürzeste Wege
in G, falls b und c von der Startecke verschieden sind.
Beispiel
Seien G und der BFS-Suchbaum G′ wie im vorangehenden Beispiel. Der
Suchbaum berechnet die Abstände d(1, b) für alle b P E. Für die Ecken 7
und 9 liefert der Suchbaum den Weg 7, 6, 3, 10, 9 der Länge 4 in G′. In G
gilt aber d(7, 9) = 1, da die beiden Ecken dort benachbart sind.
Jeder Suchbaum liefert aber obere Schranken für die Abstandsfunktion (im
Beispiel d(7, 9) ≤ 4). Zudem gilt d(b, c) = ∞ für alle Ecken b eines Suchbaums mit
Start bei a, falls c nicht gefunden wird.
Beispiel
Sei G = (E, K) mit E = { 1, …, 6 } und K = { 12, 23, 24, 25, 36, 56 }.
Wir betrachten die Kante 23, entfernen sie aus G und führen die Breitensu-
che im reduzierten Graphen für die Startecke 2 durch. Dies liefert die
Stufen
Stufe 0 S0 = { 2 }
Stufe 1 S1 = { 1, 4, 5 }
Stufe 2 S2 = { 6 }
Stufe 3 S3 = { 3 }
Da die Ecke 3 gefunden wird, ist 23 eine Kreiskante von G. Der Suchbaum
liefert den Kreis 2, 5, 6, 3, 2.
Beispiel
Sei G = (E, K) mit E = { 1, …, 7 } und
K = { 12, 16, 23, 27, 36, 34, 45, 47, 56 }.
Die von BFS besuchten Kanten (im Diagramm wieder rot gezeichnet)
verbinden nach Konstruktion verschiedenfarbige Ecken. Aber auch die
nicht besuchten Kanten 36, 45 und 47 (blau gezeichnet) verbinden
verschiedenfarbige Ecken. Damit ist der Graph bipartit durch die Färbung,
d. h. durch
E1 = { 1, 3, 5, 7 }, E2 = { 2, 4, 6 }.
Mit dem BFS-Verfahren sind alle algorithmischen Fragen, die wir zu Beginn
des Kapitels formuliert haben, beantwortet. Darüber hinaus haben wir einen ef-
fizienten Bipartitionstest gefunden, der im positiven Fall auch eine Zerlegung
der Eckenmenge in zwei Teile liefert. Als Kontrast erwähnen wir, dass ein Test
auf 3-partit bereits NP-vollständig ist.
Die Tiefensuche
Eine Variante der Breitensuche ist die Tiefensuche DFS (depth first search),
die wir noch kurz diskutieren wollen. Bei dieser Form der Suche eines aufspan-
nenden Baumes bilden wir den Suchbaum nicht stufenweise, sondern wir verfol-
gen einen Suchpfad so weit wie möglich. Ist ein solcher Pfad zu Ende, weil wir
keinen neuen Nachbarn mehr finden, fallen wir auf dem Pfad einen Schritt zu-
rück und starten die Pfadsuche neu. Genauer lautet das Verfahren:
Tiefensuche (DFS)
Sei G = (E, K) ein Graph, und sei e0 P E eine Startecke. Wir konstruieren
rekursiv Ecken e1 , e2 , … und Kanten k1 , k2 , … des Graphen wie folgt:
Sei m ≥ 0, und seien Ecken e0 , …, em und Kanten k1 , …, km konstruiert
(eine Kante k0 existiert nicht). Im Fall der Existenz sei em + 1 eine bislang
unbesuchte Nachbarecke von em und km = em em + 1 (Fortsetzung des
aktuellen Suchpfades). Gibt es keine solche Ecke, so führen wir die Suche
nach einer neuen Nachbarecke schrittweise für die Ecken durch, die im
konstruierten Baum auf dem Weg von em nach e0 liegen (Zurückgehen auf
dem Suchpfad). Finden wir dabei einen neuen Nachbarn e einer Ecke ei , so
setzen wir em + 1 = e und km = ei e. Andernfalls stoppen wir mit
G′ = (E′, K′) = ({ e0 , …, em }, { k1 , …, km }).
Wir können das Verfahren wieder deterministisch gestalten, indem wir dem
Prinzip der kleinsten Wahl folgen.
Die Tiefensuche produziert wie die Breitensuche einen aufspannenden Baum
der Zusammenhangskomponente der Startecke, und sie kann für einen Kreis-
kanten-Brücken-Test verwendet werden. Für eine Abstandsmessung und einen
Bipartitionstest ist DFS dagegen nicht geeignet. Die Laufzeit entspricht der
Laufzeit der Breitensuche.
Beispiele
(1) Sei wie oben G = (E, K) mit E = { 1, …, 10 } und
K = { 12, 13, 14, 23, 24, 34, 35, 36, 3-10, 46, 56, 67, 78, 79, 89, 9-10 }.
Optimale Grenzkanten
Wir können die Breitensuche und die Tiefensuche als zwei Versionen einer
allgemeinen Konstruktionsmethode für Bäume auffassen. Hierzu definieren wir:
Definition (Grenzkante)
Sei G = (E, K) ein Graph, und sei G′ = (E′, K′) ein Teilgraph von G. Weiter sei
ab P K mit a P E′ und b ¸ E′. Dann heißt ab eine Grenzkante von G′ in G.
Nun betrachten wir alle Grenzkanten des Baumes, d. h. alle Kanten des
Graphen, die eine Ecke des Baumes mit einer unbesuchten Ecke verbinden:
Jeder Algorithmus dieser Bauart findet einen aufspannenden Baum der Zu-
sammenhangskomponente der Startecke. Ist G zusammenhängend und n = |E|,
so endet das Verfahren nach genau n besuchten Ecken mit einem aufspannenden
Baum Gn − 1 von G.
Im nächsten Kapitel werden wir mit den Algorithmus von Dijkstra einen wei-
teren Algorithmus kennenlernen, der dieser Klasse zuzuordnen ist.
Übungen
Übung 1
Sei G = (E, K) ein Baum. Eine Ecke e P E heißt ein Blatt von G, falls
d(e) = 1. Sei nun a P E beliebig. Zeigen Sie, dass G mindestens d(a) viele
Blätter besitzt. Zeichnen Sie ein Diagramm zur Illustration Ihres Beweises.
Übung 2
Sei G = (E, K) ein zusammenhängender Graph. Zeigen Sie, dass die
folgenden Aussagen äquivalent sind:
(1) G ist ein Baum.
(2) |K| = |E| − 1.
Übung 3
Sei G = (E, K) ein Graph. Zeigen Sie, dass die folgenden Aussagen
äquivalent sind:
(1) G ist ein Wald.
(2) Jede Kante von G ist eine Brücke.
Übung 4
Sei G = (E, K) ein Graph. Zeigen Sie, dass die folgenden Aussagen
äquivalent sind:
(1) G ist ein Baum.
(2) G ist zusammenhängend und für alle ab P K ist der Teilgraph
G′ = (E, K − { ab }) unzusammenhängend.
Übung 5
Zeigen Sie, dass je zwei aufspannende Bäume eines Graphen dieselbe
Größe (Anzahl an Kanten) besitzen.
Übung 6
Sei G = (E, K) ein Wald. Zeigen Sie, dass G bipartit ist.
Übung 7
Führen Sie sowohl BFS als auch DFS für die folgenden Graphen durch
(deterministisch mit der jeweils kleinstmöglichen Startecke):
(a) K6 , K3, 4 ,
(b) G = (E, K) mit E = { 2, …, 16 } und
K = { ab | a, b P E, a ≠ b, a ist ein Teiler von b }
Übung 8
Für welche zusammenhängenden Graphen liefern BFS und DFS den
gleichen aufspannenden Baum?
Übung 9
Sei G = (E, K) ein zusammenhängender Graph. Zeigen Sie, dass jeder
aufspannende Baum von G alle Brücken von G enthält.
Übung 10
Führen Sie die Induktion im Beweis des Satzes über die Korrektheit von
BFS aus.
Übung 11
Sei G = (E, K) ein Graph und sei G′ ein BFS-Suchbaum für G. Weiter sei
bc P K. Zeigen Sie: Wird b auf der Stufe i und c auf der Stufe j im Such-
baum gefunden, so gilt |i − j| ≤ 1.
Kantengewichte
∞ 1 ∞ 2 3 ∞
1 ∞ 4 ∞ ∞ ∞
∞ 4 ∞ 5 4 2
A =
2 ∞ 5 ∞ 8 9
3 ∞ 4 8 ∞ ∞
∞ ∞ 2 9 ∞ ∞
Lassen wir Schlingen zu, so können auch reelle Zahlen (einschließlich der 0)
auf der Hauptdiagonalen stehen. Setzen wir alle ∞-Einträge gleich 0 und alle an-
deren Einträge gleich 1, so ergibt sich die Adjazenz-Matrix von G.
Für einen gewichteten Graphen sind Begriffe wie Kantenzug, Weg, Kreis, er-
reichbar, Zusammenhangskomponente, zusammenhängend und viele weitere
genau wie früher erklärt. Die Gewichtsfunktion spielt für diese Begriffe keine
Rolle. Mit Hilfe einer solchen Funktion können wir aber eine gewichtete Länge
für Kantenzüge und damit einen gewichteten Abstand einführen:
Beispiel
Im obigen Graphen hat der Kantenzug Z = 1, 2, 3, 6, 3 das Gewicht
,w (Z) = 1 + 4 + 2 + 2 = 9.
Für die Ecken 1 und 6 gilt
d(1, 6) = 2, dw (1, 6) = 7.
Der Weg 1, 4, 6 ist ein kürzester Weg von 1 nach 6, aber kein leichtester
Weg von 1 nach 6. Die Länge dieses Weges ist 2, sein Gewicht 11. Dagegen
ist 1, 2, 3, 6 ein Weg von 1 nach 6 mit minimalem Gewicht. Seine unge-
wichtete Länge ist 3, seine gewichtete Länge 7.
Beweis
Andernfalls könnten wir das Gewicht von Z durch Verändern eines
Teilstücks noch verbessern.
Bevor wir uns der Frage der Berechnung gewichteter Abstände zuwenden,
noch einige Bemerkungen zum Wertebereich unserer Gewichtsfunktionen.
Bemerkung
(1) Sind alle Gewichte rationale Zahlen, so können wir sie mit ihrem
Hauptnenner m skalieren. Dadurch werden alle Gewichte positive
natürliche Zahlen, und die neue gewichtete Abstandsfunktion ist das
m-fache der alten. In den folgenden Beispielen sind die Gewichte der
Einfachheit und Übersichtlichkeit halber durchweg natürliche Zahlen.
(2) Auch negative Kantengewichte sind sinnvoll, aber im Hinblick auf
Abstandsmessungen problematisch, da wir eine Kante ab mit einem
negativen Gewicht beliebig oft in unterschiedlichen Richtungen
durchlaufen können, um das Gewicht eines Kantenzugs von a nach b
immer weiter zu verringern. Man untersucht deswegen oft nur
gerichtete Graphen mit Gewichten in R. Aber auch mit gerichteten
Kanten müssen Kreise mit negativem Gewicht beachtet werden, um
ein mehrfaches Durchlaufen derartiger Kreise zu vermeiden. Im
Zentrum stehen dann insgesamt gerichtete kreisfreie Graphen mit
einer Gewichtsfunktion w : K → R, sog. DAGs für „directed acyclic
graphs“. Wir verweisen den Leser hierzu auf die Literatur.
Die Konstruktion liefert einen aufspannenden Baum von G, dessen Ecken mit
Abstandswerten versehen sind. Dieser Suchbaum wird ausgehend von der Start-
ecke durch schrittweises Anfügen von optimalen Grenzkanten konstruiert. Die
Optimalität ist durch die Gewichtsfunktion und die berechneten Abstandswerte
erklärt. Nach Konstruktion gilt
d(e0 ) ≤ d(e1 ) ≤ … ≤ d(en − 1 ).
Weiter zeigen wir:
Beweis
Wir zeigen die Aussage (a) durch Induktion nach m. Hieraus folgt (b), da
der Weg von e0 zu em im Suchbaum nach Konstruktion das Gewicht d(em )
besitzt. Aufgrund der Existenz dieses Weges genügt es, dw (e0 , em ) ≥ d(em )
zu zeigen.
Induktionsanfang m = 0:
Es gilt d(e0 ) = 0 = dw (e0 , e0 ).
Induktionsschritt von m nach m + 1:
Sei a0 , a1 , …, ar − 1 , ar ein Weg von e0 nach em + 1 mit minimalem Gewicht.
Weiter sei j maximal in der Menge { 0, …, r − 1 } mit der Eigenschaft
aj P { e1 , …, em }.
Dann gibt es genau ein i P { 1, …, m } mit aj = ei . Unter Verwendung
der Optimalität von Teilstücken und der Induktionsvoraussetzung
erhalten wir:
dw (e0 , em+1 ) = ,w (a0 , …, ar )
= ,w (a0 , …, aj ) + w(aj aj + 1 ) + ,w (aj + 1 , …, ar )
≥ ,w (a0 , …, aj ) + w(aj aj + 1 )
= dw (e0 , aj ) + w(aj aj + 1 )
= dw (e0 , ei ) + w(ei aj + 1 )
= d(ei ) + w(ei aj + 1 )
≥ d(em + 1 ).
Bei der letzten Ungleichung verwenden wir, dass bei der Definition von
em + 1 über einen minimalen g-Wert die Kante k = ei aj + 1 zu den betrach-
teten Kanten gehört (da aj + 1 ¸ { e1 , …, em }).
Beispiel
Sei G = (E, K, w) mit E = { 1, 2, 3, 4 } und
K = { 12, 13, 24, 34 }, w(12) = 1, w(13) = 3, w(24) = 6, w(34) = 1.
Mit der Startecke 1 ist e0 = 1 und d(1) = 0. Nun berechnen wir den
Suchbaum und die gewichteten Abstände zur Startecke:
(1) Die unbesuchten Nachbarn der besuchten Ecke 1 sind 2 und 3.
Die Kante 12 ist g-minimal, sodass
e1 = 2, k1 = 12, d(2) = d(1) + w(12) = 0 + 1 = 1.
(2) Die unbesuchten Nachbarn der besuchten Ecken 1, 2 sind 3 und 4.
Die Kante 13 ist g-minimal, da d(1) + 3 = 3 < 7 = d(2) + 6. Also ist
e2 = 3, k2 = 13, d(3) = d(1) + w(13) = 0 + 3 = 3.
(3) Einziger unbesuchter Nachbar der besuchten Ecken 1, 2, 3 ist 4.
Die Kante 34 ist g-minimal, da d(3) + 1 = 4 < 7 = d(2) + 6. Es gilt
e3 = 4, k3 = 34, d(4) = d(3) + w(34) = 3 + 1 = 4.
Es ist nützlich (vor allem für größere Graphen), den Verlauf des Algorith-
mus tabellarisch zu protokollieren. Eine Möglichkeit hierzu zeigt folgende
Tabelle:
Schritt 0 1 2 3
Ecke 1 0 − − −
Ecke 2 0+1=1 − −
Ecke 3 0+3=3 3 −
Ecke 4 1+6=7 3+1=4
Abstand d(e) 0 1 3 4
Besuchte Ecke 1 2 3 4
Verwendete Kante 12 13 34
Mit Hilfe der Tabelle lässt sich der Algorithmus durchführen, ohne den Gra-
phen zu zeichnen. Sie eignet sich für eine Implementierung des Algorithmus.
Auch die Approximationswerte sind von Interesse: Der Eintrag einer Ecke e in
der Spalte des Schritts m gibt das minimale Gewicht eines Weges von der Start-
ecke nach e an, der höchstens m+1 Ecken besucht. Ein leerer Eintrag ist dabei als
„Abstand ∞“ oder „nicht erreichbar“ zu lesen.
Zur weiteren Illustration betrachten wir noch ein etwas komplizierteres Bei-
spiel.
Beispiel
Sei G = (E, K, w) mit E = { 1, 2, 3, 4, 5, 6, 7 } und
K = { 12, 13, 14, 23, 25, 34, 35, 36, 37, 47, 56, 67 },
Schritt 0 1 2 3 4 5 6
Ecke 1 0 − − − − − −
Ecke 2 0+3=3 − − − − −
Ecke 3 0+10=10 3+6=9 5+2=7 7 − −
Ecke 4 0+9=9 9 9 9 9 7+1=8
Ecke 5 3+2=5 − − − −
Ecke 6 5+1=6 − − −
Ecke 7 6+1=7 7 −
Abstand d(e) 0 3 5 6 7 7 8
Besuchte Ecke 1 2 5 6 3 7 4
Verw. Kante 12 25 56 35 67 47
Wollen wir die gesamte gewichtete Abstandsfunktion dw mit Hilfe des Algo-
rithmus von Dijkstra berechnen, so müssen wir das Verfahren wie geschildert für
jede Startecke durchführen. Alternativ können wir den Algorithmus von Floyd
(1962) verwenden, der alle Abstandspaare simultan berechnet. Er gehört zu den
sogenannten all-pairs-Algorithmen.
Die Idee ist, die Ecken 1, …, n nacheinander ins Spiel zu bringen, um die Ab-
stände aller Eckenpaare schrittweise zu verbessern. Zunächst betrachten wir nur
Wege der Form a, b mit einer Kante ab. Mit Hilfe der Ecke 1 können wir durch
Wege der Form a, 1, b manchmal geringere Gewichte erreichen, danach durch
Wege der Form a, 1, 2, b oder a, 2, 1, b usw. Es ist natürlich, Matrizen zur Formu-
lierung des Algorithmus zu verwenden.
Wir zeigen:
Beweis
Wir zeigen (+) durch Induktion nach k. Hieraus folgt der Zusatz, da im Fall
k = n alle Ecken von G in (+) zugelassen sind.
Induktionsanfang k = 0: Im Fall k = 0 betrachten wir in (+) nur Wege der
Form i, j. Damit folgt die Behauptung aus der Definition von A0 .
Induktionsschritt von k − 1 nach k: Seien i, j P { 1, …, n }, und sei
Z = i, a1 , …, am , j
ein Weg minimalen Gewichts, der außer i, j nur Ecken in { 1, …, k }
besucht. Wir zeigen, dass Ak (i, j) = ,w (Z). Nach I. V. und der Dreiecks-
ungleichung gilt zunächst
Ak (i, j) = min(Ak − 1 (i, j), Ak − 1 (i, k) + Ak − 1 (k, j)) ≥ ,w (Z).
Ist k ¸ { a1 , …, am }, so gilt Ak − 1 (i, j) ≤ ,w (Z) nach I. V. Andernfalls sei
as = k für ein s. Nach Optimalität von Teilstücken und I. V. gilt
,w (Z) = ,w (i, a1 , …, as − 1 , as ) + ,w (as , as + 1 , …, am , j)
= ,w (i, a1 , …, as − 1 , k) + ,w (k, as + 1 , …, am , j)
= Ak − 1 (i, k) + Ak − 1 (k, j) ≥ Ak (i, j).
Beispiele
(1) Wir betrachten den folgenden gewichteten Graphen:
0 1 2 ∞ 4 0 1 2 ∞ 4
1 0 2 ∞ 1 1 0 2 ∞ 1
A0 = 2 2 0 3 ∞ A1 = 2 2 0 3 6
∞ ∞ 3 0 1 ∞ ∞ 3 0 1
4 1 ∞ 1 0 4 1 6 1 0
0 1 2 ∞ 2 0 1 2 5 2
1 0 2 ∞ 1 1 0 2 5 1
A2 = 2 2 0 3 3 A3 = 2 2 0 3 3
∞ ∞ 3 0 1 5 5 3 0 1
2 1 3 1 0 2 1 3 1 0
0 1 2 5 2 0 1 2 3 2
1 0 2 5 1 1 0 2 2 1
A4 = 2 2 0 3 3 A5 = 2 2 0 3 3
5 5 3 0 1 3 2 3 0 1
2 1 3 1 0 2 1 3 1 0
Damit ist etwa dw (1, 4) = A5 (1, 4) = 3. Das Beispiel zeigt, dass kein
kontinuierlicher Fortschritt erzielt werden muss: Es gilt A3 = A4 ≠ A5 .
(2) Für den bei der Diskussion des Algorithmus von Dijkstra betrachteten
Graphen mit E = { 1, …, 7 } zeigt eine Computer-Berechnung, dass
0 3 7 8 5 6 7
3 0 4 5 2 3 4
7 4 0 3 2 3 4
A7 = 8 5 3 0 3 2 1 .
5 2 2 3 0 1 2
6 3 3 2 1 0 1
7 4 4 1 2 1 0
Die erste Zeile stimmt, wie es sein muss, mit den durch Dijkstra
berechneten Abständen für die Startecke 1 überein.
Die Laufzeit des Algorithmus von Floyd ist kubisch in |E|. Die Laufzeit des
Algorithmus von Dijkstra ist für jede Startecke quadratisch in |E| und damit für
alle Startecken durchgeführt ebenfalls kubisch in |E|.
Sind wir nur an dw interessiert, so können wir die Matrix A0 in jedem Schritt
überschreiben, um Speicherplatz zu sparen.
In obiger Formulierung berechnet der Algorithmus von Floyd nur die Ab-
stände dw (a, b) zwischen Ecken a, b, aber keine zugehörigen Wege mit minima-
lem Gewicht. Wir reichern deswegen den Algorithmus noch etwas an und defi-
nieren zusätzlich Wegweisermatrizen B0 , …, Bn .
Die Ecke Bk (i, j) zeigt für alle i, j einen aktuell bestmöglichen ersten Schritt
an, um die Ecke j von i aus so schnell (im Sinne von w) wie möglich zu errei-
chen. Die Matrix Bn ist geeignet, bestmögliche Wege zu bestimmen (Übung):
Beispiel
Wir betrachten noch einmal den obigen Graphen mit E = { 1, …, 7 }:
0 2 2 2 2 2 2
1 0 5 5 5 5 5
5 5 0 4 5 6 4
B7 = 7 7 3 0 7 7 7 .
2 2 3 6 0 6 6
5 5 3 7 5 0 7
6 6 4 4 6 6 0
Der Algorithmus von Floyd bringt die Ecken 1, …, n nacheinander ins Spiel.
Ein Weg von i nach j minimalen Gewichts, der die Ecke n als Zwischenecke be-
nutzt, wird damit erst im letzten Schritt gefunden. Eine natürliche Variante ist es,
die Minimumsbildung nicht nur über eine, sondern über alle Ecken simultan
durchzuführen. Dies braucht mehr Rechenzeit, liefert aber auch neue Informa-
tion.
Min-Plus-Algorithmus
Wir definieren in obiger Situation Matrizen C1 , …, Cn − 1 :
Rekursionsanfang r = 1: C1 sei wie A0 bei Floyd definiert.
Rekursionsschritt von r nach r + 1: Wir setzen für alle i, j P { 1, …, n }:
Cr + 1 (i, j) = min1 ≤ k ≤ n ( Ck (i, k) + C1 (k, j) ).
Die beiden ersten Kanten k1 und k2 werden immer aufgenommen, da sie kei-
nen Kreis bilden können. Allgemein wird eine Kante ki + 1 genau dann zu Ki hin-
zugefügt, wenn sie zwei verschiedene Bäume im Wald Gi = (E, Ki ) zusammen-
führt. Diese Bäume können aus einzelnen Ecken bestehen, was zum Beispiel für
die erste hinzugefügte Kante k1 immer der Fall ist.
Es gilt:
Beweis
Die Aussage (a) folgt durch Induktion nach 0 ≤ i ≤ m aus obiger Beobach-
tung, dass eine neu hinzugefügte Kante zwei Wälder in Ki miteinander
verbindet, wodurch die Zahl der Komponenten des Waldes um eins
reduziert wird. Nach Konstruktion ist Gm ein Wald, dem keine Kante von
G unter Erhalt der Kreisfreiheit mehr hinzugefügt werden kann. Damit hat
Gm genau eine Komponente, sodass Gm ein Baum ist.
Zum Beweis der Minimalität zeigen wir durch Induktion nach 0 ≤ i ≤ m,
dass jeder Wald Gi zu einem minimalen aufspannenden Baum erweitert
werden kann (Übung):
(+) Es gibt einen minimalen aufspannenden Baum G′ = (E, K′) mit Ki ⊆ K′.
Da Gm bereits ein Baum ist, folgt aus (+) für i = m, dass Gm ein minimaler
aufspannender Baum ist.
Beispiel
Wir betrachten den folgenden gewichteten Graphen:
Nach ihrem Gewicht aufsteigend geordnet hat der Graph die 11 Kanten:
16, 34, 47, 26, 37, 28, 56, 67, 78, 35, 57
Akzeptiert werden die Kanten
16, 34, 47, 26, 28, 56, 67.
Verworfen wird zum Beispiel die Kante 37 aufgrund des Kreises 3, 4, 7, 3.
Die aufgenommenen Kanten bilden einen aufspannenden Baum mit dem
Gewicht
1 + 1 + 1 + 2 + 3 + 3 + 3 = 14.
Greedy-Algorithmen
Im Gegensatz zu BFS, DFS und dem Algorithmus von Dijkstra sind die Teil-
graphen, die der Algorithmus von Kruskal berechnet, keine Bäume mehr. Der
aufspannende Baum wird nicht durch schrittweises Hinzufügen einer optimalen
Kante zu einem Baum konstruiert, sondern durch schrittweises Hinzufügen ei-
ner optimalen Kante zu einem Wald. Damit wachsen während der Durchfüh-
rung mehrere Bäume parallel, die sich am Ende zu einem aufspannenden Teil-
baum vereinigen. Alle Algorithmen gehören aber einen bestimmten Klasse an,
den sogenannten Greedy-Algorithmen. Diese Algorithmen führen „gierig“ ent-
sprechend dem Stand der Berechnungen optimierte Einzelschritte durch, um
ein optimales Gesamtergebnis zu erzielen. Eine spätere Korrektur eines Schritts
ist nicht notwendig. Was jetzt gut ist, ist später auch gut.
Beispiel
Wir betrachten den vollständigen Graphen K4 mit folgenden Kantenge-
wichten:
Übungen
Übung 1
Beweisen Sie die Eigenschaften (1) − (6) eines gewichteten Abstands dw .
Übung 2
Wir betrachten einen gewichteten Graphen G = (E, K, w) mit w : K → R,
d. h. negative Gewichte sind zugelassen. Nun definieren wir eine Funktion
gw : E2 → R ∪ { ∞ } durch
gw (a, b) = „das minimale Gewicht eines Weges von a nach b in G“,
falls a , b, und gw (a, b) = ∞ sonst. (Durch die Beschränkung auf Wege in
der Definition wird ein Hin-und-her-Laufen entlang Kanten mit negativem
Gewicht ausgeschlossen.)
Zeigen oder widerlegen Sie die schwache Nullbedingung, Symmetrie und
Dreiecksungleichung für gw .
Übung 3
Führen Sie den Algorithmus von Dijkstra (einschl. einer Tabelle) für den
folgenden Graphen und die Startecke 1 durch:
Übung 4
Sei G = (E, K, w) ein gewichteter Graph mit w(k) = 1 für alle k P K. Wie
verläuft der Algorithmus von Dijkstra in diesem einem ungewichteten
Graphen entsprechenden Spezialfall? Welche besonderen Eigenschaften
besitzt die Tabelle, die bei der Durchführung entsteht? Welche Unter-
schiede bestehen zu BFS und DFS?
Übung 5
Ist der Algorithmus von Dijkstra mit entsprechenden Anpassungen auch
geeignet, kürzeste Wege in gerichteten und gewichteten Graphen zu
finden? Begründen Sie Ihre Antwort.
Übung 6
Zeigen Sie, dass der Algorithmus von Dijkstra im Allgemeinen keinen
kürzesten Weg mehr findet, wenn negative Kantengewichte zugelassen
werden. Geben Sie hierzu konkret einen gewichteten Graphen mit minde-
stens einem negativen Kantengewicht an, für den die Durchführung des
Algorithmus von Dijkstra einen Abstand falsch berechnet.
Übung 7
Sei G = (E, K, w) ein gewichteter Graph. Wir interpretieren w(k) als Weite
der Kante k und definieren die Weite w(K) eines Kantenzugs K von a nach
b als das Minimum der Weiten der besuchten Kanten (nach dem Motto:
Eine Kette ist so stark wie ihr schwächstes Glied). Ziel ist es nun, Wege der
größtmöglichen Weite zu finden. Passen Sie den Algorithmus von Dijkstra
so an, dass für eine Startecke a für jede Ecke b ein Weg mit größtmöglicher
Weite gefunden wird.
Übung 8
Sei G = (E, K) ein Graph, und sei G′ = (E, K′) ein Wald in G, d. h. ein
Teilgraph von G, der ein Wald ist. Zeigen Sie, dass die folgenden Aussagen
äquivalent sind:
(a) G′ ist ein Baum.
(b) G′ ist ein maximaler Wald in G, d. h. es gibt keine Kante k P K − K′
derart, dass G″ = (E, K′ ∪ { k }) ein Wald ist.
Übung 9
Beweisen Sie die Korrektheit des Algorithmus von Floyd in der Version II.
Übung 10
Beweisen Sie die Korrektheit des Min-Plus-Algorithmus.
Übung 11
Führen Sie die Induktion zum Beweis von (+) im Beweis der Korrektheit
des Algorithmus von Kruskal aus.
Übung 12
Beweisen oder widerlegen Sie, dass der Algorithmus von Dijkstra stets
einen minimal aufspannenden Baum eines zusammenhängenden Graphen
erzeugt.
Für jeden Graphen stellt sich die Frage nach einer „guten“ Darstellung durch ein
Ecken-Kanten-Diagramm. Die „Güte“ ist, wie wir bereits gesehen haben, ab-
hängig davon, welche Struktureigenschaften wir betonen und anschaulich dar-
stellen möchten: Kreise werden wir in der Regel als Kreise zeichnen, bipartite
Graphen mit gegenüberliegenden Eckenmengen, Bäume oft in gestufter Form.
Eine aus geometrischer Sicht besonders ausgezeichnete Qualität ist die Über-
schneidungsfreiheit der Kanten, und in diesem Kapitel stehen die Graphen, die
sich überschneidungsfrei zeichnen lassen, im Mittelpunkt. Viele wichtige Bei-
spiele für solche Graphen entstehen dabei durch räumliche Polyeder.
Wir definieren:
Definition (planar)
Ein Graph G = (E, K) heißt planar, falls es ein Ecken-Kanten-Diagramm
von G in der Ebene gibt, in dem sich die Kanten nicht schneiden. Ein
solches Diagramm nennen wir auch eine planare Darstellung von G.
Beispiele
(1) Die Darstellung des vollständigen Graphen K4 mit einem Quadrat
oder Rechteck als Ecken ist nicht planar. Es gibt aber eine Möglichkeit
den K4 überschneidungsfrei zu zeichnen, sodass der K4 planar ist:
(3) Der vollständige Graph K5 und der vollständig bipartite Graph K3, 3
sind nicht planar. Wir geben unten einen Beweis hierfür mit Hilfe der
Eulerschen Polyederformel.
(4) Streichen wir aus dem K5 oder K3, 3 eine beliebige Kante, so sind die
entstehenden Graphen planar. Für das Streichen von 45 aus K5 und 36
aus K3, 3 erhalten wir zum Beispiel die planaren Darstellungen:
(5) Jeder Teilgraph G′ eines planaren Graphen G ist planar. Denn aus
einer planaren Darstellung von G ergibt sich eine planare Darstellung
von G′ durch Entfernen von gewissen Ecken und Kanten.
Dem Leser ist vielleicht aufgefallen, dass wir alle planaren Graphen mit gera-
den Kanten gezeichnet haben. Überraschenderweise ist dies immer möglich: Ist
ein Graph planar, so gibt es eine planare Darstellung, die nur gerade Kanten ver-
wendet (Satz von Wagner und Fáry).
Die Graphen K5 und K3,3 sind die wichtigsten Beispiele für nicht planare Gra-
phen, da sie sich nach einem Satz von Kuratowski in jedem nicht planaren Gra-
phen wiederfinden lassen. Um dies zu präzisieren, definieren wir:
Definition (Unterteilungsgraph)
Sei G = (E, K) ein Graph. Ein Graph G′ = (E′, K′) heißt eine 1-Schritt
Erweiterung von G, falls es ein c ¸ E gibt mit E′ = E ∪ { c } und
K′ = (K − { ab }) ∪ { ac, cb }.
Weiter heißt ein Graph H ein Unterteilungsgraph von G, falls es Graphen
G1 , …, Gn mit G1 = G und Gn = H gibt derart, dass für alle 1 ≤ i < n gilt:
Gi + 1 ist eine 1-Schritt-Erweiterung von Gi .
Wir verweisen den Leser auf die Literatur für einen Beweis. Hier begnügen
wir uns mit einem Beispiel zur Illustration dieses Ergebnisses.
Beispiel
Wir betrachten den folgenden Graphen G:
Dass G nicht planar ist, ist keineswegs klar. Folgende Darstellung hat nur
eine Überschneidung:
Der Nachweis der Nichtplanarität ist erbracht, indem wir einen vollständig
bipartiten Unterteilungsgraphen des Typs 3-3 isolieren. Der rot gezeich-
nete Graph ist ein Unterteilungsgraph (mit eingefügten Ecken 5, 6, 8) des
durch { 1, 4, 9 }, { 2, 3, 10 } vollständig bipartiten Graphen:
Viele interessante Beispiele für planare Graphen erhalten wir, indem wir kon-
vexe Polyeder betrachten. Dabei heißt eine Teilmenge P des R3 konvex, falls für
alle Punkte p und q von P auch die Strecke von p nach q ganz zu P gehört. An-
schaulich entspricht dies der Wölbung von P nach außen. Die berühmtesten
konvexen Polyeder sind die fünf Platonischen Körper:
Netze
Ganz andere Graphen erhalten wir, wenn wir die Platonischen Körper oder
andere Polyeder entlang ihrer Kanten geeignet aufschneiden und zu einem zu-
sammenhängenden Gebilde der Ebene aufklappen. Die entstehenden Graphen
− sog. Netze − stimmen mit den Polyedern nicht mehr in der Anzahl der Ecken
und Kanten überein, da die Schnitte Ecken und Kanten vervielfachen. Sie sind
damit keine graphentheoretischen Darstellungen der Polyeder. Aber sie unter-
stützen die räumliche Vorstellung und eignen sich zum Basteln der Körper.
Tetraeder 4 6 4
Kubus 8 12 6
Oktaeder 6 12 8
Dodekaeder 20 30 12
Ikosaeder 12 30 20
Diese Eulersche Polyederformel gilt nicht nur für die Platonischen Körper, sondern
für alle Polyeder, die sich durch einen planaren Graphen darstellen lassen. Sie er-
scheint letztendlich sogar als eine Eigenschaft planarer Graphen, sodass wir sie
auch Eulersche Graphenformel nennen könnten. Hierzu müssen wir einen Flä-
chenbegriff für planare Graphen einführen.
Eine planare Darstellung eines Graphen unterteilt die Ebene in Flächen oder
Gebiete. Dabei zählen wir stets die äußere unbeschränkte Fläche mit. Somit hat
zum Beispiel ein Dreieck und allgemeiner jeder planar dargestellte graphen-
theoretische Kreis genau zwei Flächen. Jeder Fläche können wir die Kanten und
Ecken des Graphen zuordnen, die an diese Fläche grenzen. Diese Zuordnung
hängt von der planaren Darstellung ab. Für jede planare Darstellung gilt aber:
Der gezeigte Graph hat 10 Ecken, 13 Kanten und 5 Flächen (vier innere, eine äußere).
Die Brücke 28 grenzt wie jede Brücke nur an die äußere Fläche. Die Kreiskante 45 grenzt
an zwei innere Flächen, die Kreiskante 57 an eine innere sowie die äußere Fläche.
Die angrenzenden Ecken einer inneren Fläche gehören stets einer gemeinsa-
men Komponente an. Die äußere Fläche besitzt dagegen mindestens eine an-
grenzende Ecke in jeder Komponente des Graphen.
Nach diesen Vorbereitungen können wir formulieren und beweisen:
Beweis
Wir zeigen die Aussage durch Induktion nach k ≥ 0.
Induktionsanfang k = 0:
In diesem Fall ist e = c und f = 1, sodass
e − k + f = c + 1.
Induktionsschritt von k nach k + 1:
Sei G ein planarer Graph mit k + 1 Kanten. Wir betrachten eine
beliebige planare Darstellung von G. Sei nun a*b* eine beliebige Kante
von G, und sei G′ der Teilgraph von G, der durch Streichen von a*b*
entsteht. Nach Induktionsvoraussetzung gilt
e − k + f ′ = c′ + 1
in der durch das Streichen von a*b* entstehenden planaren Darstellung
von G′, wobei f ′ die Zahl der Flächen dieser Darstellung und c′ die Zahl
der Zusammenhangskomponenten von G′ bezeichnet.
1. Fall: a*b* ist eine Brücke in G
In diesem Fall grenzt die Kante a*b* an genau eine Fläche von G.
Das Entfernen von a*b* lässt die Zahl der Flächen unverändert,
erhöht aber die Zahl der Zusammenhangskomponenten um 1.
Damit ist f ′ = f und c′ = c + 1. Hieraus ergibt sich
e − (k + 1) + f = e − k + f ′ − 1 = c′ + 1 − 1 = c′ = c + 1.
2. Fall: a*b* ist keine Brücke in G
In diesem Fall grenzt die Kante a*b* als Kreiskante von G an genau
zwei Flächen, die durch das Entfernen von a*b* zu einer Fläche von
G′ werden. Da a*b* keine Brücke ist, gilt c′ = c. Folglich ist
e − (k + 1) + f = e − k + f − 1 = e − k + f′ = c′ + 1 = c + 1.
Damit ist die Polyederformel für eine beliebige planare Darstellung von
G bewiesen. Da die Größen e, k, c unabhängig von der Darstellung
sind, ist f = c + 1 − e + k die Zahl der Flächen jeder planaren Darstellung.
Beweis
Wir betrachten eine planare Darstellung von G und ordnen jeder Fläche
drei Kanten zu, die an diese Fläche grenzen. Da jede Kante höchstens an
zwei Flächen grenzt, wird jede Kante höchstens zweimal verwendet. Damit
ist 3f ≤ 2k. Aus der Eulerschen Polyederformel ergibt sich
k = f + e − c − 1 ≤ f + e − 2 ≤ 2/3 k + e − 2,
sodass k ≤ 3(e − 2). Die zweite Aussage ergibt sich analog mit m statt 3 an
jede Fläche angrenzenden Kanten.
Die verallgemeinerte Abschätzung gilt für ein m > 3, falls k ≥ m und G keine
Kreise mit weniger als m Ecken enthält. Insbesondere ist 2k ≤ 4(e − 2), falls k ≥ 4
und G keine Dreiecke enthält.
Mit Hilfe der Größenabschätzungen lässt sich manchmal nachweisen, dass ein
bestimmter Graphen nicht planar ist. Die Graphen K5 und K3, 3 sind geeignet:
Beweis
Der K5 ist nicht planar, da sonst 15 = k ≤ 3(e − 2) = 9.
Für den K3, 3 gilt die Abschätzung mit m = 4, da K3, 3 keine Dreiecke enthält.
Damit ist der K3, 3 nicht planar, da sonst 18 = 2k ≤ 4(e − 2) = 16.
Beweis
Nach der Gradformel und der Größenabschätzung gilt
(+) ∑ a P E d(a) = 2k = 6(e − 2) < 6e.
Damit muss es mindestens eine Ecke geben, deren Grad kleiner als 6 ist.
Das Ergebnis ist optimal in dem Sinne, dass es einen planaren Graphen gibt,
dessen Grade alle gleich 5 sind: Der Ikosaedergraph ist ein Beispiel. Genauer
zeigt die Abschätzung (+), dass der Durchschnittsgrad (∑ a P E d(a))/n eines plana-
ren Graphen kleiner als 6 ist. Ecken mit einem großen Grad werden in einem
planaren Graphen durch Ecken mit einem kleinen Grad ausgeglichen.
Mit Hilfe der Polyederformel können wir zeigen, dass es außer den fünf Plato-
nischen Körpern keine weiteren regelmäßigen konvexen Polyeder gibt. Das
wunderschöne Argument ist ein Klassiker der Mathematik.
Beweis
Jede Kante ist an genau zwei Flächen beteiligt, sodass nf = 2k. Ebenso ist
jede Kante an genau zwei Ecken beteiligt, sodass de = 2k (vgl. die Gradfor-
mel). Nach der Polyederformel gilt f + e = k + 2, sodass
2k 2k
+ = k + 2.
n d
Division durch 2k zeigt (b). Seien nun n, d, k natürliche Zahlen mit n, d ≥ 3
derart, dass (b) erfüllt ist. Dann gilt n = 3 oder d = 3, da andernfalls
1 1 1 1 1 1
+ ≤ + < + .
n d 4 4 2 k
Ist n = 3, so ist d ≤ 5, da andernfalls
1 1 1 1 1 1
+ ≤ + < + .
n d 3 6 2 k
Analog folgt aus d = 3, dass n ≤ 5. Damit ergeben sich für (n, d) die fünf
Möglichkeiten (3, 3), (3, 4), (3, 5), (4, 3), (5, 3). Da k durch die beiden
Werte n und d eindeutig bestimmt ist, gibt es also höchstens fünf Lösun-
gen. Einsetzen zeigt, dass die fünf Tripel tatsächlich Lösungen sind.
Der Vierfarbensatz
Formal ist eine Färbung eines Graphen G = (E, K) eine Funktion f der Form
f : E → { 1, …, m }. Die Elemente von { 1, …, m } werden anschaulich als Farben
bezeichnet, und für jede Ecke a des Graphen heißt f(a) die Farbe von a unter der
Färbung f. Eine Färbung f : E → { 1, …, m } von G mit m Farben heißt eine (gute)
m-Färbung von G, falls je zwei benachbarte Ecken verschieden gefärbt sind, d. h.
falls gilt
f(a) ≠ f(b) für alle ab P K.
Der Vierfarbensatz besagt also, dass jeder planare Graph eine 4-Färbung be-
sitzt. Überraschenderweise lassen sich etwas schwächere Ergebnisse relativ
leicht beweisen. Ein bestechendes Beispiel für die Kraft der mathematischen In-
duktion ist der Beweis von:
Satz (Sechsfarbensatz)
Sei G = (E, K) ein planarer Graph. Dann gibt es eine 6-Färbung von G.
Beweis
Wir zeigen die Aussage durch Induktion nach e = | E | ≥ 1. Der Induktions-
anfang ist klar, denn für e = 1 genügt eine Farbe. Im Induktionsschritt von e
nach e + 1 betrachten wir einen planaren Graphen mit e + 1 Ecken. Nach
obigem Satz gibt es ein a* P E mit d(a) ≤ 5. Wir streichen a* und erhalten
so einen planaren Untergraphen G′ mit e Ecken. Nach Induktionsvoraus-
setzung gibt es eine 6-Färbung f von G′. Da a* höchstens fünf Nachbarn in
G besitzt, gibt es eine Farbe c*, die von den Farben aller Nachbarn von a*
verschieden ist. Wir setzen f auf E durch f(a*) = c* fort und erhalten so eine
6-Färbung von G.
Satz (Fünffarbensatz)
Sei G = (E, K) ein planarer Graph. Dann gibt es eine 5-Färbung von G.
Beweis
Wir argumentieren wie im Sechsfarbensatz induktiv:
Seien a* und G′ wie im Induktionsschritt oben, und sei f eine 5-Färbung
von G′. Wir nehmen an, dass a* genau fünf Nachbarn besitzt, die in den
fünf verfügbaren Farben gefärbt sind (denn andernfalls haben wir eine
Farbe zur Färbung von a* frei und sind fertig). Nun betrachten wir eine
planare Darstellung von G, in der die Nachbarn a1 , …, a5 von a* zyklisch
(im Uhrzeigersinn) angeordnet sind und mit den Farben 1, …, 5 gefärbt
sind (dies können wir durch eine Umnummerierung der Farben erreichen).
Für alle 1 ≤ i < j ≤ 5 sei Hij der Untergraph von G′, der genau die Ecken der
Farben i und j enthält. Wir betrachten nun Wege in einem Untergraphen
Hij . Dies sind genau die Wege in G′, auf denen sich die Farben i und j
abwechseln. Wir zeigen:
(+) Ist a3 erreichbar von a1 in H13 , so ist a4 nicht erreichbar von a2 in H24 .
Beweis von (+)
Sei Z ein Weg in H13 von a1 nach a3 . Der Weg Z wird in G durch
Verlängerung um a3 , a, a1 zu einem Kreis. Dann liegt a2 oder a4
aufgrund der Anordnung der Ecken a1 , …, a5 im Inneren dieses Kreises.
Liegt a2 im Inneren, so liegt jeder in a2 beginnende Weg in H24
aufgrund der Planarität der Darstellung und der Entfernung von a* ganz
im Inneren des Kreises. Damit kann es keinen Weg in H24 von a2 nach
a4 geben. Analoges gilt, wenn a4 im Inneren des Kreises liegt.
Wir betrachten nun die Zusammenhangskomponente A von a1 in H13
und die Zusammenhangskomponente B von a2 in H24 . Nach (+) gilt
a3 ¸ A oder a4 ¸ B. Ist a3 ¸ A, so tauschen wir die Farben 1 und 3 in A
aus. Die entstehende Färbung ist nach wie vor eine 5-Färbung von G′.
Wegen a3 ¸ A bleibt die Farbe 3 von a3 erhalten, während a1 nun die
Farbe 3 besitzt. Damit ist die Farbe 1 zur Färbung von a* frei, sodass wir
eine 5-Färbung von G erhalten. Analog verfahren wir, wenn a4 ¸ B.
Das Hauptargument im Beweis von (+) lässt sich sehr anschaulich formulieren.
Wir betrachten einen 5-Stern mit Zentrum a* und zyklisch angeordneten Ecken
a1 , …, a5 in einer planaren Darstellung eines Graphen. Nun seien zwei Kreise ge-
geben, die durch a1 , a*, a3 bzw. a2 , a*, a4 verlaufen, also den Stern kreuzen. Dann
besitzen die beiden Kreise neben a* eine weitere gemeinsame Ecke b*, da sie sich
aufgrund der Kreuzung noch einmal schneiden und dieses Schneiden in der pla-
naren Darstellung nur über eine Ecke und nicht wie sonst auch über eine Kante
erreicht werden kann. Damit können die beiden Kreise ohne die Ecke a* nicht
mit zwei disjunkten Farbmengen eingefärbt werden, da sonst die Ecke b eine
Farbe aus beiden Farbmengen erhalten würde.
Illustration des Beweises von (+) mit einer noch ungefärbten Ecke a*: Gibt es einen
rot-grün-Weg von a1 nach a3 , so gibt es keinen blau-lila-Weg von a2 nach a4
Wir haben mit Hilfe der Eulerschen Polyederformel bewiesen, dass es nur
fünf regelmäßige konvexe Polyeder gibt. Lassen wir zu, dass ein Polyeder mit re-
gelmäßigen Polygonen unterschiedlicher Eckenzahl aufgebaut wird, so erhalten
wir zahlreiche weitere Polyeder. Wir halten aber an der Forderung fest, dass die
Ecken eines Polyeders im folgenden Sinne gleich aussehen: Für je zwei Ecken a
und b des Körpers ist es möglich, das Polyeder durch Drehung und Spiegelung
so in sich selbst überzuführen, dass dadurch die Ecke b auf die Ecke a abgebildet
wird. Unter dieser Symmetrieforderung gibt es neben den fünf Platonischen
Körpern genau noch
(a) die regelmäßigen Prismen und Antiprismen (je unendlich viele),
(b) die Archimedischen Körper (genau 13).
Regelmäßige Prismen bestehen aus zwei regelmäßigen Polygonen beliebiger
Eckenzahl und quadratischen Seitenflächen. Bei den regelmäßigen Antiprismen
sind die beiden Polygone so versetzt, dass sich regelmäßige Dreiecke als Seiten-
flächen ergeben.
Drei Prismen mit regelmäßigen Drei-, Fünf- und Siebenecken als Grundflächen, sowie
drei Antiprimen mit regelmäßigen Vier-, Sechs- und Achtecken als Grundflächen
Das Prisma mit einem Quadrat als Grundfläche fällt mit dem Kubus zusam-
men, das Antiprisma mit einem Dreieck als Grundfläche mit dem Oktaeder.
Die zugehörigen planaren Graphen und Netze sehen so aus:
Die folgende Tabelle gibt einen Überblick über die Namen und die Bauart der
Archimedischen Körper. Die Reihenfolge entspricht den obigen Abbildungen.
Bei den Flächen schreiben wir die Eckenzahl der Polygone in den Index. So ist
zum Beispiel ein Tetraederstumpf aus vier Dreiecken und vier Sechsecken zu-
sammengesetzt, sodass sich 8 = 43 + 46 Flächen ergeben.
Tetraederstumpf 12 18 8 = 43 + 46
Kuboktaeder 12 24 14 = 83 + 64
Hexaederstumpf 24 36 14 = 83 + 68
Oktaederstumpf 24 36 14 = 64 + 86
Kleines Rhombenkuboktaeder 24 48 26 = 83 + 184
Großes Rhombenkuboktaeder, 48 72 26 = 124 + 86 + 68
Kuboktaederstumpf
Abgeschrägtes Hexaeder 24 60 38 = 323 + 64
Ikosidodekaeder 30 60 32 = 203 + 125
Dodekaederstumpf 60 90 32 = 203 + 1210
Ikosaederstumpf, Fußball 60 90 32 = 125 + 206
Kleines Rhombenikosi- 60 120 62 = 203 + 304 + 125
dodekaeder
Großes Rhombenikosidodeka- 120 180 62 = 304 + 206 + 1210
eder, Ikosidodekaederstumpf
Abgeschrägtes Dodekaeder 60 150 92 = 803 + 125
Die Polyederformel gilt auch für zahlreiche nicht konvexe Körper, etwa für
Archimedische Körper mit eingedrückten Flächen. Es gibt aber auch viele (not-
wendig nicht konvexe) Körper, für die Formel verletzt ist. Ein Beispiel erhalten
wir, wenn wir aus dem Inneren eines Tetraeders ein kleines Tetraeder heraus-
schneiden. Der entstehende Körper hat 8 Ecken, 12 Kanten und 8 Flächen, so-
dass e − k + f = 4. Der zugeordnete Graph besteht aus zwei Kopien des Tetra-
edergraphen. Zeichnen wir die beiden Kopien planar neben- oder ineinander, so
teilen sie sich eine Fläche. Für den Graphen gilt
e − k + f = 8 − 12 + 7 = 3,
in Übereinstimmung mit der Eulerschen Polyederformel e − k + f = 1 + c, wobei
c = 2. Der planare Graph entspricht in der Zahl der Flächen nicht mehr dem
dreidimensionalen Körper.
Interessante Gegenbeispiele zur Eulerschen Formel bilden Polyeder wie das
Tetrahemihexaeder oder das Oktahemioktaeder. Das Tetrahemihexaeder ent-
steht, indem wir von einem Oktaeder vier der acht Dreiecksflächen entfernen
und statt dessen im Inneren des Körpers drei ineinander gesteckte Quadrate
einfügen. Der so entstehende Körper besitzt 6 Ecken, 12 Kanten und 7 Flächen
(4 Dreiecke und 3 Quadrate), sodass
e − k + f = 1.
Die Schnitte der Quadrate zählen nicht als Ecken und Kanten. Der innere
Schnittpunkt würde unsere Symmetrieforderung verletzten, dass jede Ecke
gleich aussieht.
Analog entsteht ein Oktahemioktaeder, indem wir die sechs Quadrate eines
Kuboktaeders entfernen und stattdessen vier ineinander gesteckte Sechsecke
einfügen. Optisch entstehen nach innen gerichtete Pyramiden, die sich an der
Spitze berühren. Das Oktahemioktaeder hat 12 Ecken, 24 Kanten und 12 Flä-
chen (8 Dreiecke und 4 Sechsecke), sodass e − k + f = 0.
Als ein weiteres Beispiel betrachten wir einen durch ein Koordinatengitter
definierten Toruskörper:
Ein Toruskörper
Übungen
Übung 1
Sei n ≥ 1. Geben Sie eine planare Darstellung des vollständig bipartiten
Graphen K2, n an, die nur gerade Kanten verwendet.
Übung 2
Sei G = (E, K) ein planar dargestellter Graph mit den Flächen f1 , …, fm .
Für jede Fläche fi sei g(fi ) die Anzahl der Kanten von G, die die Fläche fi
begrenzen. Weiter sei k b die Anzahl der Brücken von G. Zeigen Sie:
∑ 1 ≤ i ≤ m g(fi ) = 2|K| − k b .
Übung 3
Zeigen Sie (durch anschauliche geometrische Argumentation):
(a) Jede planare Darstellung des K4 hat die Form eines Dreiecks mit
einer Ecke innerhalb des Dreiecks.
(b) Zeigen Sie mit Hilfe von (a), dass der Graph K5 nicht planar ist.
(c) Zeigen Sie in ähnlicher Weise, dass der Graph K3, 3 nicht planar ist.
Übung 4
(a) Beweisen Sie die Eulersche Polyederformel für zusammenhängende
Graphen durch Induktion über die Anzahl der Flächen.
(b) Beweisen Sie die allgemeine Eulersche Polyederformel mit Hilfe der
Aussage (a) durch Induktion über die Anzahl der Zusammenhangs-
komponenten.
Übung 5
Zeigen Sie:
(a) Es gibt einen planaren Graphen der Ordnung 12, der die konstante
Gradfolge 5, …, 5 besitzt.
(b) Es gibt keinen planaren Graphen der Ordnung n < 12, der die
konstante Gradfolge 5, …, 5 besitzt.
Übung 6
Wo scheitert der Beweis, wenn wir versuchen, das Argument des Fünffar-
bensatzes zu verwenden, um den Vierfarbensatz zu zeigen?
Übung 7
Nach dem Vierfarbensatz ist jeder planare Graph 4-färbbar. Gilt auch die
Umkehrung, d. h. ist jeder 4-färbbare Graph planar?
Übung 8
Sei G = (E, K) ein planar dargestellter Graph. Wir ordnen der Darstellung
den dualen Graphen G* = (E*, K*), einen Graphen mit möglichen Mehrfach-
kanten und Schlingen, zu, indem wir Flächen als Ecken und Kanten als
Kanten zwischen angrenzenden Flächen auffassen. Genauer gilt:
(i) E* ist die Menge der Flächen der Darstellung von G.
(ii) Jede Kante ab von K entspricht genau einer Kante F1 F2 von G* und
umgekehrt, wobei F1 und F2 die Flächen links und rechts der Kante
ab sind.
Es gilt also |K| = |K*|. Die Brücken von G entsprechen genau den
Schlingen von G*.
(a) Geben Sie instruktive Beispiele für duale Graphen.
(b) Welche Struktureigenschaften von G führen zu Mehrfachkanten?
(c) Welche allgemeinen Eigenschaften können Sie für duale Graphen
feststellen?
(d) Bestimmen Sie die dualen Graphen der Graphen der Platonischen
Körper.
(e) Zeigen Sie, dass es einen zusammenhängenden planaren Graphen G
und zwei Darstellungen von G gibt, deren duale Graphen nicht
isomorph zueinander sind.
A impliziert B,
→ Implikation
aus A folgt B, wenn A so B,
↔ Äquivalenz A→B A ist hinreichend für B,
B ist notwendig für A,
⊥ Falsum A zieht B nach sich
⊥
Verum A genau dann, wenn B,
A↔B
A ist äquivalent zu B
= Identität
∀x A(x) für alle/jedes x gilt A(x)
x, y, z, … Variablensymbole
es gibt/existiert
∃x A(x)
(mindestens) ein x mit A(x)
f, g, h, … Funktionssymbole
es gibt/existiert
R, S, T, … Relationssymbole ∃!x A(x)
genau ein x mit A(x)
c, d, e, … Konstantensymbole
∀ Allquantor
∃ Existenzquantor
eindeutiger Exi-
∃!
stenzquantor
( linke Klammer
) rechte Klammer
Beispiele
Für alle Aussagenvariablen A, B sind
A, (A ∧ B), ¬ (A ∧ B), ((A ∧ B) → ⊥), ¬(⊥ ↔ (A → A))
Formeln. Allgemeiner sind diese Ausdrücke Formeln, wenn A und B
Formeln sind. Keine Formeln sind dagegen
A B, A →→ B, A ¬ B, ((A ∧ B)).
Beispiele
¬A → B ist (¬ A) → B,
A∧B ∨ C ist (A ∧ B) ∨ C,
A→B↔C ist (A → B) ↔ C,
A → B ↔ ¬B → ¬A ist (A → B) ↔ (¬ B → ¬ A).
Mit Hilfe unserer Junktoren lassen sich neue Junktoren definieren, etwa ein
„weder noch“ A ↓ B als ¬ A ∧ ¬ B. Umgekehrt können wir uns zum Beispiel mit
¬ und ∧ begnügen und A ∨ B als ¬ (¬ A ∨ ¬ B), A → B als ¬ A ∨ B, A ↔ B als
(A → B) ∧ (B → A), A ∨˙ B als ¬ (A ↔ B) definieren.
Wahrheitstafeln
¬ A A ∧ B A ∨ B
f w w w w w w w
w f w f f w w f
f f w f w w
f f f f f f
A ∨˙ B A → B A ↔ B
w f w w w w w w w
w w f w f f w f f
f w w f w w f f w
f f f f w f f w f
Beispiele
¬ ¬ A ↔ A ¬ A ↔ A → ⊥
w f w w w f w w w f f
f w f w f w f w f w f
2 1 4 3 1 3 2
A → B ↔ B → A
w w w w w w w
w f f f f w w
f w w f w f f
f w f w f w f
1 3 2
A → (B → C) ↔ A ∧ B → C
w w w w w w w w w w w
w f w f f w w w w f f
w w f w w w w f f w w
f w w w w w f f w w w
w w f w f w w f f w f
f w w f f w f f w w f
f w f w w w f f f w w
f w f w f w f f f w f
2 1 5 3 4
Die Zahlen in den untersten Zeilen der Tafeln geben die Reihenfolge der
Auswertung an. Ist die letzte Spalte der Auswertung durchgehend mit dem
Wert „w“ gefüllt, so nennen wir die Formel eine (aussagenlogische) Tautologie.
Weiter heißen zwei Formeln A und B logisch äquivalent, in Zeichen A ; B, wenn
die Formel A ↔ B eine Tautologie ist. Ist A eine Formel derart, dass ¬ A eine
Tautologie ist, so heißt A eine Kontradiktion.
Tautologie Name
⊥ ↔ A ∧ ¬A
⊥ → A ex falso quodlibet
(A → B) ∧ (B → C) → (A → C) Kettenschluss
(A → B) ↔ (¬ B → ¬ A) Kontrapositionsgesetz
(B → A) ∧ (¬ B → A) ↔ A Fallunterscheidung
¬ (A → B) ↔ A ∧ ¬ B
¬A → B ↔ A ∨ B
¬ (A ∧ B) ↔ ¬ A ∨ ¬ B
de Morgansche Regeln
¬ (A ∨ B) ↔ ¬ A ∧ ¬ B
A ∨ (B ∧ C) ↔ (A ∨ B) ∧ (A ∨ C)
Distributivgesetze
A ∧ (B ∨ C) ↔ (A ∧ B) ∨ (A ∧ C)
(A ↔ B) ↔ (¬ A ↔ ¬ B)
A → (B → C) ↔ A ∧ B → C
Implikationsketten
A → (B → C) ↔ B → (A → C)
(A → C) ∧ (B → C) ↔ (A ∨ B) → C
(A → C) ∨ (B → C) ↔ (A ∧ B) → C
(A → B) ∧ (A → C) ↔ A → B ∧ C
(A → B) ∨ (A → C) ↔ A → B ∨ C
Prädikatenlogische Formeln
Der Aussagenlogik besitzt eine lange philosophische Tradition und zudem in-
teressante Anwendungen innerhalb der Mathematik und Informatik, reicht aber
als Sprache für die Mathematik nicht aus. Die Mathematik wird heute in der aus-
drucksstärkeren Prädikatenlogik erster Stufe formuliert. Ihr Formelbegriff be-
nötigt keine Aussagenvariablen, sondern beruht auf folgenden Zeichen:
Variablensymbole x, y, z, …,
Identität =,
Funktionssymbole f, g, h, … mit bestimmten Stellenzahlen,
Relationssymbole R, S, T, … mit bestimmten Stellenzahlen,
Konstantensymbole c, d, e, …,
Junktoren ¬, ∧, ∨, ∨˙ , →, ↔,
⊥
Falsum und Verum ⊥, ,
Quantoren ∀, ∃, ∃!,
Klammern (, ).
Der Vorrat an Funktions-, Relations- und Konstantensymbolen − die soge-
nannte Signatur der Sprache − ist abhängig von der zu formulierenden mathemati-
schen Theorie. In der axiomatischen Mengenlehre wird nur ein zweistelliges Re-
lationssymbol P für die Elementbeziehung benötigt. Die Sprache mit der leeren
Signatur (nur mit Identität) ist die reine Logik.
Mit Hilfe der Zeichen werden der Reihe nach Terme, Primformeln und Formeln
durch folgende Schemata definiert:
(1) Jede Variable und jede Konstante ist ein Term.
(2) Sind t1 , …, tn Terme, und ist f ein n stelliges Funktionssymbol, so ist
f(t1 , …, tn ) ein Term.
⊥
(3) ⊥ und sind Primformeln.
(4) Sind t und s Terme, so ist t = s eine Primformel.
(5) Sind t1 , …, tn Terme und ist R ein n-stelliges Relationssymbol, so ist
R(t1 , …, tn ) eine Primformel.
(6) Jede Primformel ist eine Formel.
(7) Sind ϕ und ψ Formeln, so sind auch ¬ ϕ, (ϕ ∧ ψ), (ϕ ∨ ψ), (ϕ ∨˙ ψ),
(ϕ → ψ) und (ϕ ↔ ψ) Formeln.
(8) Ist ϕ eine Formel und x eine Variable, so sind auch ∀x ϕ, ∃x ϕ, ∃!x ϕ
Formeln.
Beispiele
Wir betrachten die Sprache mit einem einstelligen Funktionssymbol S,
zwei zweistelligen Funktionssymbolen +, ⋅, zwei Konstantensymbolen 0, 1
und einer zweistelligen Relation <. Variablen notieren wir als n, m, k usw.
Statt +(n, m), ⋅(n, m) und <(n, m) schreiben wir n + m, n ⋅ m und n < m.
Um die eindeutige Lesbarkeit zu erhalten, verwenden wir Klammern,
wobei ⋅ stärker binden soll als +.
Terme
n, m, k, 0, 1,
S(n), n + m, n + 0, 1 + m,
n + (n + m), n ⋅ m + k, n ⋅ (m + k),
S(S(n)), S(n + m), n + S(m), S(n) ⋅ (S(S(m)) + (k + k)).
Primformeln
n = m, n < n, m < k, 0 < 1, 1 < 0,
n < S(n), S(k + m) = S(S(k + m)), n ⋅ m < m + S(n),
Formeln
S(n) = 1 ∨ ∃m S(m) = 1, freie Variable: n
n < m ∨ n = m ∨ m < n, freie Variable: n, m
∃n ∀n ∀n n = k ∨ ∃m 0 = 0, freie Variable: k
∃n n = 0 ∧ ∃m k ⋅ n = 1, freie Variable: k, n
Aussagen
∀n, m (S(n) = S(m) → n = m),
∀n, m (S(n) = S(m) → n = 0),
∀n n + m = S(n), ∀n S(n) ≠ 0,
∀n ∃k n < k ∧ ∀n (n ≠ 0 → ∃m m < n).
Beispiele
In der Signatur des obigen Beispiels können wir setzen:
2 wird definiert als S(1),
quad(n) wird definiert als n ⋅ n,
n≤m wird definiert als n < m ∨ n = m,
d|n wird definiert als ∃k d ⋅ k = n,
prim(n) wird definiert als 1 < n ∧ ∀d (d | n → d = 1 ∨ d = n).
2 ist ein Konstantensymbol, quad ein zweistelliges Funktionssymbol,
≤, | und prim sind zwei- bzw. einstellige Relationssymbole.
Quantorenregeln
Die folgenden Regeln sind beim Umgang mit Quantoren nützlich. Die Ver-
neinungsregeln werden vor allem in der Analysis oft verwendet, da dort viele
Konvergenzbegriffe mit abwechselnden Quantoren formuliert werden.
Regel Name
∀x A(x) ↔ ¬ ∃x ¬ A(x)
∃x A(x) ↔ ¬ ∀x ¬ A(x)
¬ ∀x A(x) ↔ ∃x ¬ A(x)
¬ ∃x A(x) ↔ ∀x ¬ A(x)
Verneinungsregeln
¬ ∀x ∃y A(x, y) ↔ ∃x ∀y ¬ A(x, y)
¬ ∃x ∀y A(x, y) ↔ ∀x ∃y ¬ A(x, y)
¬ ∀x ∃y ∀z A(x, y, z) ↔ ∃x ∀y ∃z ¬ A(x, y, z)
¬ ∃x ∀y ∃z A(x, y, z) ↔ ∀x ∃y ∀z ¬ A(x, y, z)
∀x ∀y A(x, y) ↔ ∀y ∀x A(x, y)
∃x ∃y A(x, y) ↔ ∃y ∃x A(x, y) Vertauschungsregeln
∃x ∀y A(x, y) → ∀y ∃x A(x, y)
Georg Cantor, der Begründer der modernen Mengenlehre, hat den Mengenbe-
griff so beschrieben:
Extensionalitätsprinzip
Zwei Mengen sind genau dann gleich, wenn sie dieselben Elemente
besitzen.
Anders formuliert:
Eine Menge ist durch ihre Elemente vollständig bestimmt.
Mengen werden oft mit großen Buchstaben notiert, ihre Elemente mit klei-
nen. Prinzipiell können aber beliebige Zeichen verwendet werden und kleine
Buchstaben sehr große Mengen bezeichnen. Dies ist alleine schon deswegen
nötig, weil die Element von Mengen wieder Mengen sein können (und deren
Elemente wieder Mengen usw.). Ist jedes Element einer Menge wieder eine
Menge, so nennt man die Menge auch ein Mengensystem. In der axiomatischen
Mengenlehre ist jedes Objekt eine Menge, sodass es zwischen „Menge“ und
„Mengensystem“ keinen Unterschied gibt.
Teilmengen
Mit Hilfe der Elementbeziehung können wir eine sehr bedeutsame Beziehung
zwischen beliebigen Mengen A und B definieren: Die Inklusion. Die vier Varian-
ten sind:
Teilmengenrelation,
A⊆B ∀a (a P A → a P B) A Teilmenge B
Inklusion
Obermengenrela-
A⊇B ∀a (a P B → a P A) tion, umgekehrte A Obermenge B
Inklusion
A echte Teilmenge
A⊂B A⊆B ∧ A≠B echte Inklusion
B
A⊂B → A⊆B
A ⊆ A, A ⊆ B ∧ B ⊆ A ↔ A = B, A ⊆ B ∧ B ⊆ C → A ⊆ C
¬(A ⊂ A) , A ⊂ B ∧ B ⊆ C → A ⊂ C, A ⊆ B ∧ B ⊂ C → A ⊂ C
Komprehensionen
(ungeordnete) Paar-
{ a, b } {x|x=a∨x=b} Paarmenge a,b
menge
geordnetes Paar,
(geordnetes)
(a, b) { { a }, { a, b } } Kuratowski-Paar,
Paar a, b
2-Tupel
Boolesche Mengenoperationen
relatives
Ac {aPM|a¸A} A Komplement
Komplement
symmetrische
A∆B { a P M | a P A ∨˙ a P B } A Delta B
Differenz
A ∪ Ac = M, A ∩ Ac = ∅ Komplementzerlegung
(A ∩ B)c = Ac ∪ Bc
de Morgansche Regeln
(A ∪ B)c = Ac ∩ Bc
A ∩ (B ∩ C) = (A ∩ B) ∩ C
Assoziativgesetze
A ∪ (B ∪ C) = (A ∪ B) ∪ C
A ∩ B = B ∩ A, A ∪ B = B ∪ A Kommutativgesetze
A ∪ (B ∩ C) = (A ∪ B) ∩ (A ∪ C)
Distributivgesetze
A ∩ (B ∪ C) = (A ∩ B) ∪ (A ∩ C)
A − B = A − (B ∩ A) = A ∩ Bc
A − (B − C) = (A − B) ∪ (A ∩ C) Differenzenregeln
(A − B) − C = A − (B ∪ C)
A ∆ (B ∆ C) = (A ∆ B) ∆ C
A∆B = B∆A ∆-Regeln
(A ∆ B) ∩ C = (A ∩ C) ∆ (B ∩ C)
Zudem kann der leeren Menge das Falsum ⊥ und der Grundmenge M das
Verum ¬ ⊥ zugeordnet werden.
Auf der Ebene einer Aussage über Mengen hat die Inklusion A ⊆ B die Ent-
sprechung A → B und die Gleichheit A = B die Entsprechung A ↔ B. Die Aus-
sage A = ∅ für Mengen entspricht ¬ A für Aussagen, und ebenso entsprechen
A = M und A einander. Damit lassen sich Identitäten für Mengen in Tautolo-
gien übersetzen und umgekehrt. Beispiele sind:
Identität Tautologie
A ⊆ A, Ac ∪ A = M A → A
A = A, (A ∆ A)c = M A ↔ A
c c
(A ) = A ¬¬A ↔ A
Ac = Ac ∪ ∅ ¬A ↔ A → ⊥
A ∪ Ac = M A ∨ ¬A
A ∩ Ac = ∅ A ∧ ¬ A ↔ ⊥, ¬ (A ∧ ¬ A)
∅ ⊆ A ⊥ → A
A∩B ⊆ A A∧B → A
Ac ∪ B = (Bc )c ∪ Ac (A → B) ↔ (¬ B → ¬ A)
c c c
(A ∪ B) = A ∩ B ¬ (A ∨ B) ↔ ¬ A ∧ ¬ B
Allgemeine Mengenoperationen
Durchschnitt
>A { a | ∀B P A a P B } Durchschnitt
von A
Vereinigung
ÍA { a | ∃B P A a P B } Vereinigung
von A
Kreuzprodukt,
A×B { (a, b) | a P A ∧ b P B } kartesisches A Kreuz B
Produkt
A1 × … × An { (a1 , …, an ) | ∀i ai P Ai }
A2 , A3 , … A × A, A × A × A, … A hoch 2, 3, …
A Funktionen von
B {f|f:A →B} A nach B
A nach B
Potenzmenge
P(A) {B|B⊆A} Potenzmenge
von A
Die Operation > A ist für jedes nichtleere Mengensystem definiert, Í A für
jedes Mengensystem. (Formal wäre > ∅ = { a | ∀A P ∅ a P A } = { a | a = a }.) Ist
eine Grundmenge M gegeben, wo wird oft > ∅ = M festgesetzt. Speziell gilt
> { A, B } = A ∩ B, Í { A, B } = A ∪ B.
Die anderen Operationen sind für beliebige Mengen erklärt. Für das Kreuz-
produkt gilt zum Beispiel
A2 × A3 = { ((a1 , a2 ), (b1 , b2 , b3 )) | a1 , a2 , b1 , b2 , b3 P A }.
Es ist in der Regel ungefährlich, An × Am mit An + m zu identifizieren.
Statt A B wird in der Literatur auch oft BA geschrieben. Die Notation A B hat
den Vorteil, dass der Definitionsbereich auf der richtigen Seite steht. Zudem
schließt sie Verwechslungen mit Potenzen nm aus. Spezialfälle sind
∅ A
B = { ∅ } für alle B (einschließlich B = ∅), ∅ = ∅ für alle A ≠ ∅.
Für die Potenzmenge gilt
P(∅) = { ∅ }, P({ a }) = { ∅, { a } },
P({ a, b }) = { ∅, { a }, { b }, { a, b } }.
Für alle Mengen A gilt ∅ P P(A) und A P P(A).
Definition (Relation)
Eine Menge R heißt eine (zweistellige) Relation auf einer Menge A, falls
R ⊆ A × A. Allgemeiner heißt R eine n-stelllige Relation auf A, falls R ⊆ An .
a steht in Rela-
aRb (a, b) P R Relationsnotation tion R zu b,
aRb
dom(R), Definitionsbe-
{ a | ∃b a R b } Domain von R
Def(R) reich, Domain
Wertebereich,
rng(R) { b | ∃a a R b } Range von R
Range
(relationale)
R+S { (a, c) | ∃b (a R b ∧ b R c) } Verknüpfung, R Kringel S
Komposition
R2 , R3 , … R + R, R + R + R, … R hoch 2, 3, …
Für jede (im Folgenden immer zweistellige) Relation können wir folgende Ei-
genschaften betrachten:
Eigenschaft Definition
R ist irreflexiv ¬ ∃a a R a
< ist eine lineare oder totale Ordnung < ist eine semikonnexe partielle Ordnung
(vom strikten Typ) vom strikten Typ
≤ ist eine lineare oder totale Ordnung ≤ ist eine konnexe partielle Ordnung
(vom strikten Typ) vom nichtstrikten Typ
Definition (Funktion)
Eine Menge f heißt eine Funktion oder Abbildung, falls f eine rechtseindeu-
tige Relation ist.
f ist Funktion
f ist Funktion mit von … nach von A nach B
f:A →B
dom(f) = A, rng(f) ⊆ B Notation (oder in den
Wertevorrat B)
f von a ist
gleich b,
Notation für
f(a) = b (a, b) P f b ist der Wert
Funktionswerte
von f an der
Stelle a
Wir folgen dem Vorgehen der Logik und Mengenlehre, eine Funktion mit ih-
rem Graphen zu identifizieren. Alternativ wird eine Funktion f : A → B auch oft
als Tripel (Graph(f ), A, B) oder Paar (Graph(f ), B) definiert. Hier gehört ein
Wertevorrat B fest zu einer Funktion mit dazu. In unserer Definition ist ein Wer-
tevorrat nicht eindeutig, aber in der üblichen Notation f : A → B spezifiziert.
Die leere Menge ist eine Funktion der Form ∅ : ∅ → ∅. Diese auf den ersten
Blick vielleicht etwas skurrile Eigenschaft ist zum Beispiel in der Kombinatorik
nützlich. Sind A und B Mengen mit genau n bzw. genau m Elementen, so gibt es
genau mn viele Funktionen f : A → B. Diese Formel ist auch für die Spezialfälle
A = ∅ oder B = ∅ gültig.
Eigenschaft Definition
f : A → B ist surjektiv,
rng(f ) = B
f ist surjektiv auf B
f : A → B ist bijektiv,
f : A → B ist injektiv und surjektiv
f ist bijektiv auf B
Eine Funktion ist genau dann injektiv, wenn sie als Relation linkseindeutig ist.
Die Injektivität ist eine Eigenschaft von f, die Surjektivität und Bijektivität benö-
tigt dagegen immer die Spezifikation eines Wertevorrats B.
Monotonie-Eigenschaften
Ist f : A → B eine Funktion und sind auf den Mengen A und B Ordnungen ge-
geben, so sind die folgenden Monotoniebegriffe definiert:
Eigenschaft Definition
f ist streng monoton steigend ∀a, b P dom(f ) (a < b → f(a) < f(b))
f ist streng monoton fallend ∀a, b P dom(f ) (a < b → f(a) > f(b))
Bei der Formung des Bildes einer Menge C unter eine Funktion sammeln wir
alle Funktionswerte für Stellen in der gegebenen Menge. Bei der Formung des
Urbildes sammeln wir dagegen alle Stellen, die durch f auf ein Element der
Menge abgebildet werden. Ist f : A → B, so ist f [A] der Wertebereich und f − 1 [B]
der Definitionsbereich von f.
Urbilder sind immer definiert, es wird nicht vorausgesetzt, dass f injektiv ist.
f [ f − 1[ C ] ] ⊆ C
f [ f − 1 [ C ] ] = C, falls C ⊆ rng(f )
f −1 [ f [ C ] ] ⊇ C
f − 1 [ f [ C ] ] = C, falls f injektiv
f [ C ∩ D ] = f [ C ] ∩ f [ D ], falls f injektiv
f [ C − D ] = f [ C ] − f [ D ], falls f injektiv
f − 1[ C ∩ D ] = f − 1[ C ] ∩ f − 1[ D ]
f − 1[ C ∪ D ] = f − 1[ C ] ∪ f − 1[ D ]
f − 1[ C − D ] = f − 1[ C ] − f − 1[ D ]
(funktionale)
g nach f,
g+f { (a, c) | g(f(a)) = c } Verknüpfung,
g Kringel f
Komposition
f eingeschränkt
f |C { (a, b) P f | a P C } Einschränkung
auf C
Da jede Funktion eine Relation ist, ist f − 1 als Umkehrrelation von f immer de-
finiert. Diese Relation ist genau dann wieder eine Funktion, wenn f injektiv ist:
Die Bildung der Umkehrfunktion setzt die Injektivität von f voraus.
Die Verknüpfung für Funktionen unterscheidet sich von der Verknüpfung für
Relationen durch die umgekehrte Reihenfolge. Zuerst wird die Funktion f ange-
wendet, dann die Funktion g:
Ist f : A → B und g : B → C, so ist g + f : A → C.
Dies motiviert auch die Lesart „g nach f “. Es ist üblich, die Verknüpfung nur
dann zu betrachten, wenn der Wertebereich von f eine Teilmenge des Definiti-
onsbereichs von g ist. Allgemein kann aber
g + f = { (a, c) | g(f(a)) = c } = { (a, c) | a P A, f(a) P dom(g), c = g(f(a)) }
immer gebildet werden.
Die Einschränkung ist eine hinsichtlich des Definitionsbereichs zurechtge-
stutzte Funktion. Ist f : A → B und C ⊆ A, so gilt f|C : C → B.
Bemerkung zu „g nach f “
Gilt a R b S c für Relationen R und S, so gilt a T c für die relationale
Verknüpfung T = R + S. Ist dagegen f(a) = b und g(b) = c, d. h. a f b g c, so
gilt c = h(a) für die funktionale Verknüpfung h = g + f. Um eine Überein-
stimmung mit der relationalen Verknüpfung zu erreichen, müsste die
Komposition für Funktionen als f + g notiert werden, was ja auch der Lesart
„g nach f“ viel besser entsprechen würde. Dies wird vermieden, da sonst
(f + g)(x) = g(f(x)) und nicht (f + g)(x) = f(g(x)) gelten würde. Kurz: Man
nimmt in der Definition von g + f die falsche Reihenfolge in Kauf, weil man
die nach rechts notierte Funktionsanwendung bewahren möchte. Eine
Lösung wäre, die Funktionsanwendung in der Form (x)f („Wert von x unter
der Funktion f “) statt f(x) („f angewendet auf x“) zu schreiben, was der seit
Euler üblichen Notation zuwiderläuft. Dann wäre (x)(f + g) = ((x)f )g.
Vielfach nützlich ist eine zweite Art, Funktionen zu notieren. Anstelle von f(i)
wird der Funktionswert in der Form ai angegeben.
Durchschnitt
>i P I Ai { a | ∀i P I a P Ai } Durchschnitt
von (Ai )i P I
Vereinigung
Íi P I Ai { a | ∃i P I a P Ai } Vereinigung
von (Ai )i P I
Ist K eine Menge, (Ik )k P K eine K-Folge und (Ai )i P Ik eine Ik -Folge von Mengen
für alle k P K, so gelten:
Allgemeine Distributivgesetze
> k P K Íi P I k
A k, i = Íf P × k P K Ik
>k P K A k, f(k)
Í k P K >i P I k
A k, i = >f P × k P K Ik
Ík P K A k,f(k)
× k P K Íi P I k
A k, i = Íf P × k P K Ik
× k P K A k, f(k)
× k P K >i P I k
A k, i = >f P × k P K Ik
× k P K A k, f(k)
Begriff Definition
f 0, f 1, f 2, f 3, … idA , f, f + f , f + f + f , …
Begriff Definition
c = a + b (Verknüpfungsnotation) + (a, b) = c
Mächtigkeiten
Injektionen und Bijektion eignen sich für den Größenvergleich von beliebigen
Mengen:
Der Vergleich einer Menge mit der Menge N der natürlichen Zahlen führt zu
folgenden Begriffen:
Begriff Definition
Ergebnis Name
Gleichmächtigkeit
|R| = |Rn |
verschiedendimensionaler Kontinua
Wir diskutieren das Prinzip der vollständigen Induktion und verwandte äquiva-
lente Prinzipien.
Genauer formuliert:
Wer lieber mit Mengen als mit Eigenschaften argumentiert, wird folgende
Version bevorzugen:
Die Induktion ist als Satz bzw. Axiom kein rein logisches Beweisprinzip wie
etwa der indirekte Beweis oder der Widerspruchsbeweis. Aufgrund ihres sche-
matischen Charakters wird sie aber als solches erlebt:
Üblich sind in diesem Schema die folgenden Abkürzungen: I.A. für Induktions-
anfang, I. S. für Induktionsschritt und I. V. für Induktionsvoraussetzung.
Im Induktionsschritt ist die schlichte Formulierung „Es gelte %(n).“ als In-
duktionsvoraussetzung korrekter als „Sei %(n) bereits bewiesen.“ Letzteres
suggeriert einen unendlich langen Beweis. Der Induktionsschritt ist einfach ein
Beweis einer für alle natürlichen Zahlen gültigen Implikation. Dies wird in der
formalen Version besonders deutlich: Wir zeigen
∀n (%(n) → %(n + 1)).
Dies geschieht wie üblich:
„Sei n beliebig. Es gelte %(n) (I. V.). Wir zeigen, dass %(n + 1) (Beweisziel).“
Der Induktionsanfang und der Induktionsschritt zusammengenommen be-
weisen die durch ∧ verbundene Aussage auf der linken Seite des Implikations-
pfeils in (+):
%(0) ∧ ∀n (%(n) → %(n + 1)).
Der Satz über Induktion liefert nun
∀n %(n).
Varianten
(1) Ist n0 eine natürliche Zahl und wollen wir zeigen, dass jede natürliche
Zahl n ≥ n0 die Eigenschaft %(n) besitzt, so zeigen wir %(n0 ) (Indukti-
onsanfang n = n0 ). Der Induktionsschritt von n nach n + 1 bleibt
gleich, wobei nun n eine beliebige natürliche Zahl größergleich n0 ist.
(2) Den Induktionsschritt können wir auch von n − 1 nach n durchführen:
Wir zeigen %(n) mit Hilfe der Induktionsvoraussetzung %(n − 1). Hier
ist n eine beliebige Zahl größergleich 1.
(3) Um zu zeigen, dass alle geraden Zahlen die Eigenschaft %(n) besitzen,
zeigen wir %(0) und führen den Induktionsschritt von n nach n + 2 für
gerade n durch. Wir zeigen im Induktionsschritt also %(n + 2) unter
der I. V. %(n). Hierbei ist n eine beliebige gerade natürliche Zahl.
(4) Viele weitere Varianten sind möglich.
Wir betrachten nun eine neue Form der Induktion, bei der wir eine stärkere
Induktionsvoraussetzung geschenkt bekommen. Dies kann die Argumentation
erleichtern. Wir formulieren diese Form wieder in drei äquivalenten Versionen.
Wir können die starke Induktion mit Hilfe der üblichen Induktion beweisen:
Beweis
Wir zeigen die Version für Eigenschaften. Es gelte also
(1) ∀n (∀k < n %(k) → %(n)).
Unser Beweisziel ist:
(2) ∀n %(n).
Dieses Ziel erreichen wir durch einen logischen Trick. Wir zeigen nämlich:
(3) ∀n ∀k < n %(k)
Dies genügt. Zum Beweis von (3) verwenden wir die übliche Induktion, und
zwar für die neue Eigenschaft
%′(n) = „∀k < n %(k)“.
Diese Eigenschaft besagt anschaulich, dass % „unterhalb von n“ gilt.
Induktionsanfang n = 0:
Hier ist nichts zu zeigen, da es kein k < 0 gibt.
Induktionsschritt von n nach n + 1:
Sei n beliebig und es gelte %′(n), d. h.
∀k < n %(k) (I. V.)
Nun wenden wir unsere Voraussetzung (1) an und schließen auf %(n).
Dann gilt also
∀k < n %(k) ∧ %(n),
sodass
∀k < n + 1 %(k).
Ein Induktionsanfang entfällt bei der starken Induktion. Für n = 0 ist die In-
duktionsvoraussetzung leer, da es keine natürliche Zahl k kleiner als 0 gibt. Der
Fall n = 0 wird also im allgemeinen Induktionsschritt n automatisch mit erfasst.
Dennoch kann es bei der Durchführung der starken Induktion hilfreich sein,
vorab %(0) zu zeigen (oder auch mehrere Einzelfälle %(0), …, %(n0 )). Wir können
dann für den Induktionsschritt n ≥ 1 (bzw. n > n0 ) annehmen. Alternativ ist im In-
duktionsschritt wie in jedem Beweis natürlich auch eine Fallunterscheidung
möglich.
Wie für die einfache Induktion lässt sich die starke Induktion auch ab einer
Stelle oder für eine gewisse (endliche oder unendliche) Menge von natürlichen
Zahlen durchführen.
Als Nächstes betrachten wir, erneut in drei Formulierungen, ein auf den ersten
Blick ganz andersartiges Prinzip.
Dabei ist der Ausdruck n* = min(B) (n* ist das Minimum von B) definiert durch
n* P B ∧ ∀n P B n* ≤ n.
Als Kontrast betrachte der Leser die ganzen und die rationalen Zahlen. Die
Mengen
{ −1, −2, −3, … } ⊆ Z,
{ 1, 1/2, 1/3, 1/4, … } ⊆ Q
sind nichtleer, besitzen aber kein kleinstes Element. Die erste Menge ist unbe-
schränkt, die zweite dagegen beschränkt.
Exemplarisch diskutieren wir die Anwendung der negativen Form des Prin-
zips. Diese Form wird oft als „Prinzip vom kleinsten Gegenbeispiel“ oder „Prin-
zip vom kleinsten Verbrecher“ bezeichnet.
Verlauf eines Beweises mit Hilfe des Prinzips vom kleinsten Element
Um zu zeigen, dass jede natürliche Zahl n die Eigenschaft % besitzt, können
durch einen Widerspruchsbeweis so vorgehen:
Annahme nicht. Dann gibt es ein kleinstes Gegenbeispiel n* für diese Eigen-
schaft, sodass also %(n*) nicht gilt, aber %(n) für alle n < n* erfüllt ist. Nun
erzeugen wir einen Widerspruch unter Verwendung dieser Verhältnisse.
Typischerweise wird dabei eine Zahl m < n* gefunden, die die Eigenschaft %
nicht besitzt. Dies ist ein Widerspruch zur minimalen Wahl von n*.
Der Leser mag sich fragen, ob er, in Theorie und Anwendung, die einfache In-
duktion, die starke Induktion oder das Prinzip vom kleinsten Element einleuch-
tender oder einfacher findet. Mathematisch sind diese Prinzipien rein logisch
äquivalent. Dass die einfache Induktion verwendet werden kann, um die starke
Form zu beweisen, haben wir oben schon gesehen, und natürlich ergibt sich die
einfache Induktion auch leicht aus der starken Version. Bemerkenswert ist, dass
für die Äquivalenz der starken Induktion und des Prinzips vom kleinsten Ele-
ment kein „eigentlicher Beweis“ geführt werden muss. Es genügt, das Kontrapo-
sitionsgesetz der Aussagenlogik und die Regeln für die Verneinung von Quanto-
ren zu bemühen. Sind A und B Aussagen, so gilt:
A → B ↔ ¬ B → ¬ A. (Kontrapositionsgesetz)
Wenden wir dies auf die starke Induktion
∀n (∀k < n %(k) → %(n)) → ∀n %(n)
an, so erhalten wir die äquivalente Aussage
¬ ∀n %(n) → ¬ ∀n (∀k < n %(k) → %(n)).
Die Verneinungsregeln für Quantoren und die Tautologie ¬(C → D) ↔ C ∧ ¬D
ergeben die äquivalente Aussage
∃n ¬ %(n) → ∃n (∀k < n %(k) ∧ ¬ %(n)).
Dies ist aber genau das Prinzip vom kleinsten Element in der negativen Form
(dass auf der rechten Seite der Implikation n statt n* ist, ist vielleicht unschön
aber logisch untadelig).
Das Prinzip vom kleinsten Element wird oft stillschweigend eingesetzt:
Zum Abschluss der Diskussion besprechen wir noch eine (eher psychologi-
sche) Umformulierung des Prinzips vom kleinsten Element.
Der Beweis der Äquivalenz des Prinzips zu einem (und damit allen) der obigen
Prinzipien sei dem Leser überlassen. Wir notieren noch:
Verlauf eines Beweises mit Hilfe des Prinzips vom unendlichen Abstieg
Um zu zeigen, dass jede natürliche Zahl n die Eigenschaft %(n) besitzt,
können wir so vorgehen:
Wir nehmen an, es gilt ¬%(n) für eine natürliche Zahl n. Unter Verwen-
dung dieser Annahme zeigen wir nun, dass ein m < n existiert mit ¬%(m).
Nach dem Prinzip vom unendlichen Abstieg (angewendet auf die Eigen-
schaft ¬ %(n)) ist dann gezeigt, dass %(n) für alle natürlichen Zahlen n gilt.
Schließlich können wir das Prinzip vom unendlichen Abstieg äquivalent auch
in der Sprache der Folgen formulieren:
Rekursives Definieren
Dem Beweisen von Aussagen durch vollständige Induktion entspricht das fol-
gende Verfahren der rekursiven (rückbezüglichen) Definition von Funktionen:
Rekursive Definition
Eine Funktion f mit Definitionsbereich N kann eindeutig definiert werden,
indem
(1) der Funktionswert f(0) erklärt wird (Rekursionsanfang),
(2) für jedes n P N der Funktionswert f(n + 1) unter Verwendung des
Funktionswerts f(n) definiert wird (Rekursionsschritt).
Beispiel
Die Fakultätsfunktion fac : N → N ist rekursiv definiert durch
fac(0) = 1, (Rekursionsanfang)
fac(n + 1) = fac(n) (n + 1) für alle n P N. (Rekursionsschritt)
Wir schreiben auch n! statt fac(n).
Diese Definition lässt sich als die genauere Version der Pünktchenform
n! = 1 ⋅ … ⋅ n
auffassen (mit der Konvention, dass ein leeres Produkt gleich 1 ist, sodass 0! = 1).
Der starken Induktion entspricht auf der definitorischen Seite ebenfalls ein
Rekursionsverfahren:
Wertverlaufsrekursion
Eine Funktion f mit Definitionsbereich N kann eindeutig definiert werden,
indem für jedes n P N der Funktionswert f(n) unter Verwendung der Werte
f(0), …, f(n − 1) definiert wird.
Satz (Rekursionssatz)
Sei g eine auf einer hinreichend umfassenden Menge definierte Funktion.
Dann gibt es genau eine Funktion f auf N mit der Eigenschaft:
f(n) = g(f(0), …, f(n − 1)) für alle n P N.
Die Funktion g heißt die Rekursionsfunktion der Definition von f. Sie gibt an,
wie der Wert f(n) aus den Werten f(0), …, f(n − 1) hervorgeht. Dieser Übergang
hat funktionalen Charakter und wird deswegen durch eine Funktion beschrie-
ben. „Hinreichend umfassender Definitionsbereich“ bedeutet, dass die Rekur-
sionsfunktion g für alle n auf die endliche Folge (f(0), …, f(n − 1)) angewendet
werden kann. Für n = 0 ist diese Folge die leere Folge ( ), sodass f(0) = g(( )). Sind
alle Werte der Funktion f natürliche Zahlen, so genügt es, dass g auf allen end-
lichen Folgen natürlicher Zahlen definiert ist.
Beispiel
Die Fibonacci-Zahlen f(0), f(1), …, f(n), … sind rekursiv definiert durch
f(0) = f(1) = 1,
f(n) = f(n − 2) + f(n − 1) für alle n ≥ 2.
Die ersten Fibonacci Zahlen sind
1, 1, 3, 4, 7, 11, 18, 29, …
Es liegt eine einfache Form der Wertverlaufsrekursion vor, in der lediglich
auf zwei Vorgänger zurückgegriffen wird. Als zugehörige Rekursionsfunk-
tion ist die auf allen endlichen Folgen definierte Funktion g geeignet mit
g(( )) = g(n) = 1 für alle n P N (mit der leeren Folge ( )),
g(n1 , …, nk ) = nk − 1 + nk für alle k ≥ 2 und alle n1 , …, nk P N.
Übung 1
Beweisen Sie das Prinzip der vollständigen Induktion
(a) mit Hilfe des Prinzips der starken Induktion,
(b) mit Hilfe des Prinzips vom kleinsten Element.
Übung 2
Wir beweisen das Prinzip vom kleinsten Element mit Hilfe einfacher
Induktion auf neue Art und Weise. Hierzu betrachten wir das folgende
Prinzip:
(E) Jede endliche nichtleere Teilmenge von N besitzt ein kleinstes Element.
Im Gegensatz zum Prinzip vom kleinsten Element werden hier also nur
endliche Mengen betrachtet.
(1) Zeigen Sie, dass aus (E) das Prinzip vom kleinsten Element folgt.
(2) Zeigen Sie (E) durch Induktion über die Anzahl n der Elemente einer
nichtleeren endlichen Teilmenge von N.
Übung 3
Beweisen Sie das Prinzip monoton fallender Folgen mit Hilfe des Prinzips
vom unendlichen Abstieg.
Übung 4
Zeigen Sie, dass jede nach unten beschränkte Teilmenge von Z ein kleinstes
Element besitzt. (Dabei heißt ein A ⊆ Z nach unten beschränkt, wenn ein s P Z
existiert mit s ≤ a für alle a P A.)
Übung 5
Sei %(n) eine Eigenschaft natürlicher Zahlen. Es gelte:
(a) %(0),
(b) ∀n (%(n) → %(n + 2)),
(c) ∀n %(2n) → %(1).
Zeigen Sie, dass %(n) für alle natürlichen Zahlen n gilt.
Übung 6
Sei %(n, m) eine Eigenschaft natürlicher Zahlen. Es gelte:
(a) %(0, 0),
(b) ∀n, m %(n, m) → %(n + 1, m),
(c) ∀n, m %(n, m) → %(n, m + 1).
Zeigen Sie, dass %(n, m) für alle natürlichen Zahlen n, m gilt.
Übung 7
Sei %(n) eine Eigenschaft natürlicher Zahlen. Es gelte:
(a) %(p) für jede Primzahl p,
(b) ∀n, m (%(n) ∧ %(m) → %(nm)).
Zeigen Sie, dass %(n) für alle n gilt.
Übung 8
Sei %(a) eine Eigenschaft ganzer Zahlen. Es gelte:
(a) ∃a P Z %(a),
(b) ∀a P Z (%(a) → %(a + 1) ∧ %(a − 1)).
Zeigen Sie, dass %(a) für alle a P Z gilt.
Übung 9
Wir betrachten eine rechteckige Tafel Schokolade der Länge n und Breite
m (also mit n m Stückchen). Wie oft muss man die Schokolade brechen, um
nm einzelne Stückchen zu erhalten? Auf welche Weise geschieht dies am
Besten? Was hat diese Frage mit Induktion zu tun? Für das Brechen der
Tafel oder eines Teils der Tafel ist dabei nur das übliche waagrechte oder
senkrechte Abbrechen eines Teilstücks entlang der vorgegebenen Rillen
erlaubt; es sind keine Tricks wie zum Beispiel das Übereinanderlegen von
Stücken zulässig.
Übung 10
„Wer reich ist und einen Cent verliert ist immer noch reich.“ Beweisen Sie
unter dieser Voraussetzung, dass man auch dann noch reich ist, wenn man
gar kein Geld hat. (Der interessierte Leser möge sich zudem über das
Sorites-Paradoxon der Philosophie informieren.)
Übung 11
In einigen Schulbüchern wird der Beweis durch vollständige Induktion als
dreiteiliges Prinzip, bestehend aus Induktionsanfang, Induktionsvorausset-
zung und Induktionsschritt eingeführt. Bewerten Sie dieses Vorgehen aus
mathematischer Sicht.
U
überabzählbar 267
Umkehrrelation 259
unendlich 267
unendlicher Kettenbruch 55
Unendlichkeit der Primzahlen 91
ungerichtet 103
ungewichtet 103
Untergraph 117
Unterteilungsgraph 216
V
verbunden 103