Mengentheoretische Grundbegriffe

Werbung
PD Dr.rer.nat.habil. Karl-Heinz Niggl
Technische Universität Ilmenau
Fakultät IA, Institut für Theoretische Informatik
Fachgebiet Komplexitätstheorie und Effiziente Algorithmen
1
Mengentheoretische Grundbegriffe
Die Mengenlehre geht auf Georg Cantor (1845-1918) zurück und fußt auf dem folgenden
naiven Mengenbegriff“:
”
Eine Menge ist eine Zusammenfassung M von bestimmten, wohlunterschie”
denen Objekten unserer Anschauung oder unseres Denkens zu einem Ganzen.“
Schreibweise
(A)
M := {x | ϕ(x)}
wobei ϕ(x) eine Eigenschaft von x“ ausdrückt, formuliert in der Sprache der
”
Mengenlehre (d.h. Prädikatenlogik). Für x ist ein Element von M“ schreibt
”
man x ∈ M .
(A) ist zu lesen als M sei die Menge derjenigen Objekte, die die Eigenschaft ϕ besitzen“.
”
Mittels ϕ sondert man also aus allen Objekten diejenigen heraus, die die Eigenschaft
ϕ besitzen und faßt diese zu einem Ganzen“ (M ) zusammen. (A) heißt daher auch
”
Aussonderungsprinzip.
Endliche Mengen definiert man üblicherweise durch explizite Angabe ihrer Elemente in der
Form M := {a1 , . . . , am }. Dies ist allerdings nur eine Kurzschreibweise für die Definition
M := {x | ϕ(x)} mit ϕ(x) :⇔ x = a1 ∨ x = a2 ∨ . . . ∨ x = am .
Der naive Gebrauch des Aussonderungsprinzips führte zu den bekannten Russellschen
”
Antinomien“, die zu Beginn dieses Jahrhunderts die Grundlagenkrise der Mathematik ausgelöst haben. Die Annahme, daß das Cantorsche Aussonderungsprinzip stets zu wohldefinierten Mengen führt, erzeugte einen logischen Widerspruch: Betrand Russell betrachtete
die Menge R aller Mengen, die sich nicht selbst enthalten, d.h.
R := {x | x ∈
/ x}.
Dies ist eine nach (A) korrekte Definition einer Menge“. Aus der Definition von R folgt
”
nun sofort, daß R ∈ R genau dann gilt, wenn R ∈
/ R gilt – ein logischer Widerspruch.
Die Lösung solcher Probleme suchte man durch Axiomatisierung“ der naiven Mengen”
”
lehre“. Danach sollen nur solche Objekte“ als Menge zugelassen werden, die aufgrund der
”
Axiome der Mengenlehre existieren. Dies führte auf die von Zermelo (1908) und Fraenkel
(1927) entwickelte, bis dato übliche Axiomatische Mengenlehre ZF . Sie beruht auf
einem vorsichtigeren Gebrauch des Aussonderungsprinzips. Wir können hier nicht weiter
darauf eingehen; es sei jedoch soviel erwähnt, daß die Konstruktion von neuen Mengen
M mittels Aussonderung“ unproblematisch ist, sofern eine Obermenge“ von M schon
”
”
bekannt ist. Dies begegnet der in (A) angelegten Problematik, daß man eine Menge unter
Bezugnahme auf alle Mengen definiert, also auch auf die, die man gerade definiert.
Die für die aktuelle Lehrveranstaltung zugrundeliegenden Mengenkonstruktionen sind alle
derart, daß dem vorsichtigen Gebrauch des Aussonderungsprinzips von ZF entsprochen
wird.
Mengenschreibweisen
Die die Elemente einer Menge charakterisierende Eigenschaft ϕ ist formal eine prädikatenlogische Formel ; sie wird aber oft natursprachlich formuliert, wie etwa
N := {x | x ist eine natürliche Zahl, deren Binärdarstellung die Länge 3 besitzt}.
Andere Schreibweisen für N sind etwa
N := {x | x ∈ und die Länge der Binärdarstellung von x ist 3}
:= {x | x ∈ , die Länge der Binärdarstellung von x ist 3}
:= {x ∈ | die Länge der Binärdarstellung von x ist 3}
Ziel der axiomatischen Mengenlehre“ ist es, einen einheitlichen Rahmen für sämtliche
”
in der Mathematik üblichen Begriffsbildungen zu schaffen, freilich ohne dabei erneut auf
Probleme wie die obigen Russellschen Antinomien zu stoßen. Wir wollen im folgenden
einige zentrale Begriffsbildungen, Schreibweisen und Operationen auf Mengen einführen.
Teilmenge, leere Menge, Vereinigung und natürliche Zahlen
Definition 1.1. Seien A, B Mengen.
• A heißt Teilmenge von B (oder B ist Obermenge von A), in Zeichen A ⊆ B, falls
jedes Element aus A auch Element aus B ist, in Zeichen ∀a ∈ A : a ∈ B.
• A, B heißen gleich, in Zeichen A = B, falls A ⊆ B und B ⊆ A gilt.
Eine besondere Rolle in der Mengenlehre spielt die leere Menge“.
”
Definition 1.2. Die leere Menge, in Zeichen ∅, ist die eindeutig bestimmte Menge mit
∅ ⊆ M für alle Mengen M,
(∗)
das heißt, sind ∅1 und ∅2 zwei Mengen, die (*) erfüllen, so folgt ∅1 = ∅2 .
In ZF sind alle Objekte“ selbst Mengen. Wie findet man dann in ZF die natürlichen
”
Zahlen 0, 1, 2, . . . wieder? Intuitiv stehen die natürlichen Zahlen für Vielfachheiten“ von
”
Einheiten (Äpfel, Birnen, Bäume), die wir gerne benennen und auf ihnen eine gewisse
Arithmetik“ (wie z.B. 5 Äpfel plus 3 Äpfel ist gleich 8 Äpfel) ausführen möchten. Da”
her wird eine natürliche Zahl n in ZF als eine Menge mit n Elementen eingeführt. Wir
benötigen dazu noch den Begriff der Vereinigung“ zweier Mengen.
”
Definition 1.3. Sind A, B Mengen, so heißt
A ∪ B := {x | x ∈ A oder x ∈ B}
die Vereinigung von A und B.
In ZF werden nun die natürlichen Zahlen 0, 1, 2, . . . induktiv“ eingeführt:
”
• 0 := ∅
• Ist n bereits definiert, so ist n + 1 := n ∪ {n}.
Sehen wir uns einige Anfangsfälle an:
1 = ∅ ∪ {∅} = {∅}
2 = {∅} ∪ {{∅}} = {∅, {∅}}
3 = {∅, {∅}} ∪ {{∅, {∅}}} = {∅, {∅}, {∅, {∅}}}
..
.
Wir sehen also: 1 ist eine Menge mit einem Element, 2 ist eine Menge mit zwei Elementen,
3 ist eine Menge mit drei Elementen, und so weiter.
Geordnete Paare und geordnete endliche Mengen
Für endliche Mengen, z.B. M := {3, 1, 5} = {1, 5, 3}, die wir uns in bestimmter Weise
geordnet denken, z.B. soll in M die 1 das erste Element, 3 das zweite Element, und 5 das
dritte Element sein, und wo wir diese Ordnung als Bestandteil dieser Mengen auffassen
wollen, bietet die Mengenlehre den Begriff des geordneten Paares“ an.
”
Definition 1.4. Sind a, b Mengen, so heißt
(a, b) := {{a}, {a, b}}.
das geordnete Paar aus a und b.
Mengen der Form (a, b) kann man als Mengen mit erstem Element a und zweitem Element
b auffassen. In der Tat gilt hierfür die folgende Aussage.
Proposition 1.5. Aus (a, b) = (c, d) folgt a = c und b = d.
Beweis. Gelte (a, b) = {{a}, {a, b}} = {{c}, {c, d}} = (c, d). Dann muß schon a = c
gelten. Denn wäre a 6= c, so folgte auch {a} 6= {c} und {a} 6= {c, d}, im Widerspruch
zu Voraussetzung {a} ∈ {{c}, {c, d}} = (c, d). Also gilt a = c. Nach Voraussetzung gilt
damit {{a, b}} = {{a, d}}. Dies impliziert {a, b} = {a, d} und somit {b} = {d}. Also gilt
b = d wie gewünscht.
Mittels geordneter Paare kann man nun geordnete Mengen aus n Elementen“, in Zeichen
”
(a1 , . . . , an ) einführen, das heißt Mengen mit n Elementen a1 , . . . , an , die wir uns wie folgt
geordnet denken: a1 ist erstes Element, a2 ist zweites Element, . . ., an ist n-tes Element
der Menge (a1 , . . . , an ).
Definition 1.6. Geordnete Mengen aus n Elementen a1 , . . . , an , in Zeichen (a1 , . . . , an ),
oft auch n-Tupel aus a1 , . . . , an genannt, werden wie folgt induktiv“ definiert:
”
∅ falls n = 0
(a1 , . . . , an ) :=
((a1 , . . . , an−1 ), an ) sonst.
Insbesondere haben also 1-Tupel (a1 ) die Form (a1 ) = (∅, a1 ) = {{∅}, {∅, a1}}, und das
0-Tupel () ist einfach die leere Menge ∅.
Diese Auffassung von geordneten endlichen Mengen“ werde im folgenden als Listen”
Auf fassung bezeichnet; diese liegt funktionalen Programmiersprachen wie z.B. dem LispDialekt Scheme zugrunde. Wir werden später eine dem Informatiker naheliegende zweite
Auffassung von geordneten endlichen Mengen“, die Array“-Auffassung, kennenlernen,
”
”
die z.B. Pascal oder C zugrunde liegt. Die Array“-Auffassung basiert ebenfalls auf dem
”
Begriff des geordneten Paares.
Vereinigung, Durchschnitt, Kartesisches Produkt, endliche Folgen und Komplement
Bevor wir nun weitere Operationen auf Mengen kennenlernen, führen wir zunächst weitere,
sehr häufig verwendete Schreibweisen für Definitionen von Mengen ein.
Definition 1.7. Sei t(x1 , . . . , xn ) ein Term in x1 , . . . , xn“ und ϕ(x1 , . . . , xn ) eine Eigen”
schaft von x1 , . . . , xn . Dann schreiben wir
M := {t(x1 , . . . , xn ) | ϕ(x1 , . . . , xn )}
:= {x | x ist von der Form t(x1 , . . . , xn ) mit ϕ(x1 , . . . , xn )}
:= {x | ∃x1 , . . . , xn : x = t(x1 , . . . , xn ) ∧ ϕ(x1 , . . . , xn )}
Beispiele. Seien X, Y Mengen.
M := {2i + 1 | i ∈ , i ist Primzahl}
= {x | ∃i ∈ : x = 2i + 1 ∧ i ist Primzahl}
M 0 := {(x, y) | x ∈ X, y ∈ Y }
= {z | ∃x ∈ X ∃y ∈ Y : z = (x, y)}.
Mit diesen wenigen Begriffen und Schreibweisen können schon eine Reihe von wichtigen
Operationen auf Mengen erklärt werden.
Definition 1.8. Seien M, N, I Mengen. Ferner sei für jedes i ∈ I eine Menge Mi gegeben
(I wird dann oft als Indexmenge bezeichnet).
•
S
Mi := {x | ∃i ∈ I : x ∈ Mi } bezeichne die Vereinigung der Mengen Mi .
i∈I
•
T
Mi := {x | ∀i ∈ I : x ∈ Mi } bezeichne den Durchschnitt der Mi , falls I 6= ∅.
i∈I
•
•
S
T
M := {x | ∃y ∈ M : x ∈ y} bezeichne die Vereinigung von M .
M := {x | ∀y ∈ M : x ∈ y} bezeichne den Durchschnitt von M , falls M 6= ∅.
• M1 × . . . × Mk := {(x1 , . . . , xk ) | x1 ∈ M1 , . . . , xk ∈ Mk } bezeichne das Kartesische
Produkt von M1 , . . . , Mk , für k ≥ 2.
• M n := {(a1 , . . . , an ) | a1 , . . . , an ∈ M }, n ≥ 0, bezeichne die Menge der n-Tupel
über M .
• Seq(M ) := {(a1 , . . . , an ) | n ∈ , a1 , . . . , an ∈ M } bezeichne die Menge aller endlichen Folgen über M . Ein besonderes Tupel ist (), das 0-Tupel oder auch die leere
Folge. Ist M eine endliche Menge, so werden die Elemente aus Seq(M ) oft auch in
der Form a0 . . . an−1 geschrieben.
• M \N := M −N := {x | x ∈ M und y ∈
/ N } bezeichne das Komplement von N in
M , oder auch die Differenz von M und N . Gilt N ⊆ M und ist M aus dem Kontext
heraus bekannt, so schreibt man für M \N oft einfach N .
• |M | bezeichne die Mächtigkeit der Menge M , d.h. die Anzahl der Elemente von M ,
falls M endlich ist, und andernfalls unendlich“ (in Zeichen ∞).
”
˙ bezeichne die disjunkte Vereinigung von M und N , falls M ∩ N = ∅.
• M ∪N
Bemerkung. Das Kartesische Produkt als Operation auf Mengen aufgefaßt ist nicht
assoziativ, d.h. es gilt nicht A × (B × C) = (A × B) × C. Wohl aber sind A × (B × C)
und (A × B) × C zueinander isomorph“ und somit gilt |A × (B × C)| = |(A × B) × C|.
”
Proposition 1.9. Seien M, N Mengen. Dann gilt:
(a) Seq(M ) =
S
M n.
n∈
(b) |M × N | = |M | · |N |, falls M, N endlich sind.
(c) |M n | = |M |n , falls M endlich ist (n ≥ 0).
˙ | = |M | + |N |, falls M, N endlich sind.
(d) |M ∪N
Beweis. (a), (d) gelten offensichtlich, (c) folgt durch endliche Anwendung von (b), denn:
M n+1 = M n × M.
Teil (b) wird in Abschnitt 2 durch vollständige Induktion nach n“ bewiesen.
”
Relationen, Abbildungen und partielle Funktionen
Der aus der Schule bekannte, naive Begriff der Abbildung von einer Menge A in eine
”
Menge B“ als eine Zuordnung“, die jedem a ∈ A ein Element f (a) := b ∈ B zuordnet“
”
”
wird in der Mengenlehre erstmals mathematisch sauber definiert. Denn, auch wenn wir
uns an solche “Zuordungen“ mit der Zeit gewöhnt haben, wie ist denn der Begriff Zuord”
nung“ eigentlich definiert und wie finden wir Zuordnungen“ als Objekte der Mengenlehre
”
wieder?
Wir werden Abbildungen von A nach B als bestimmte Teilmengen von A × B definieren.
Dies führt auf den Begriff der n-stelligen Relation“.
”
Definition 1.10. Sei n eine natürliche Zahl.
• Eine n-stellige Relation ist eine Teilmenge R ⊆ A1 × . . . × An , wobei A1 , . . . , An
irgendwelche Mengen sind1 .
• Eine n-stellige Relation über einer Menge M ist eine Teilmenge R von M n .
Beispiel: Die folgenden Mengen Ri sind i-stellige Relationen über
.
R1 := {2 · i | i ∈ }
R2 := {(i, j) ∈ 2 | j = 2 · i}
= {(i, 2 · i) | i ∈ }
R3 := {(i, j, k) ∈ 3 | i + j = k}
R4 := {(i, j, k, l) ∈ 4 | i · l = j · k}
R4 repräsentiert die Menge der äquivalenten Brüche
i
j
und kl .
Relationen R ⊆ A1 ×. . .×An sind die Extension“ von Eigenschaften zwischen Elementen
”
(a1 , . . . , an ) ∈ A1 × . . .× An . Zum Beispiel ist Relation R2 die Extension“ der Eigenschaft
”
ϕ(i, j) :⇔ j = 2 · i, d.h. R2 ist die Menge derjenigen Paare (i, j) ∈ 2 , die die Eigenschaft
ϕ besitzen, d.h. j = 2 · i.
Die Extension“ einer Eigenschaft wird oft mit der Eigenschaft identifiziert. Daher schreibt
”
man oft R(a1 , . . . , an ) anstelle von (a1 , . . . , an ) ∈ R, und man liest R(a1 , . . . , an ) als R
”
trifft auf (a1 , . . . , an ) zu“.
Definition 1.11. Seien A, B Mengen. Eine Abbildung (totale Funktion) von A nach B,
in Zeichen f : A → B, ist eine links-totale (i), rechtseindeutige (ii) Relation R ⊆ A × B,
d.h.
(i) ∀a ∈ A ∃b ∈ B : R(a, b),
(ii) ∀a ∈ A ∀b, b0 ∈ B : R(a, b) ∧ R(a, b0 ) ⇒ b = b0 .
Eine Abbildung f : A → B ist also eine Menge von Paaren (a, b) ∈ A × B mit (i), (ii),
wobei man (a, b) als b ist Bild von a unter f liest, oder – wer will – b ist a zugeordnet.
Die Eigenschaften (i), (ii) geben dann unsere Vorstellung von Abbildungen wieder: Jedes
a ∈ A besitzt genau ein Bild b ∈ B unter f , d.h. es gibt genau ein b ∈ B mit (a, b) ∈ R.
Daher schreibt man für b einfach f (a) und liest f (a) als das Bild von a unter f .
Funktionen f : A → B werden oft punktweise“ definiert, d.h. für a ∈ A gibt man das
”
Bild von a unter f in der Form f (a) := Ausdruck mit Wert in B“ an, oder man schreibt
”
a 7→ Ausdruck mit Wert in B“.
”
Beispiel. Die Relation R2 := {(i, j) ∈ 2 | j = 2 · i} ist die Abbildung f :
→
mit
f (i) := 2 · i. Die Relation R := {(i, j) ∈ 2 | j = 2 · i oder j = 3 · i} ist keine Abbildung,
denn R ist nicht rechtseindeutig.
Bemerkung. Da wir Abbildungen als bestimmte Mengen eingeführt haben, stimmen zwei
Abbildungen f, g : A → B überein, in Zeichen f = g, genau dann, wenn sie punktweise
1
Im Falle n = 0 definiert man A1 × . . . × An := {()}, und für n = 1 bedeutet R ⊆ A1 × . . . × An
einfach, daß R Teilmenge“ von A1 ist.
”
übereinstimmen, d.h. ∀a ∈ A : f (a) = g(a). Entsprechend sind zwei Funktionen f, g
verschieden, in Zeichen f 6= g, genau dann, wenn ∃a ∈ A : f (a) 6= g(a).
Manchmal interessieren uns an einer Abbildung f : A → B nur bestimmte“ Bilder von
”
A unter f , d.h. auf manchen Argumenten a können oder wollen wir kein Bild unter f
angeben. Dies führt auf den Begriff der partiellen Funktion“.
”
Definition 1.12. Eine partielle Funktion von A nach B, in Zeichen f : A * B, ist eine
rechtseindeutige Relation R ⊆ A × B. Für a ∈ A sagt man f ist auf a definiert, in
Zeichen f (a) ↓, falls es ein b ∈ B mit (a, b) ∈ R gibt. Entsprechend sagt man f ist auf a
undefiniert, in Zeichen f (a) ↑, falls es kein b ∈ B mit (a, b) ∈ R gibt.
Listenauf fassung von geordneten endlichen Mengen
Wir gehen nun kurz auf die zweite Auffassung von n-Tupel ein, die z.B. Pascal oder C
zugrunde liegt, und nennen diese die Array-Auffassung. Gemäß der Array-Auffassung ist
ein n-Tupel aus a1 , . . . , an , in Zeichen (a0 , . . . , an−1 ), einfach eine endliche“ Abbildung
”
f : {0, . . . , n − 1} → {a0 , . . . , an−1 } mit f (i) = ai für i < n, d.h. man definiert
(a0 , . . . , an−1 ) := {(0, a0 ), . . . , (n − 1, an−1 )}.
Insbesondere tritt hier das 0-Tupel () in der Gestalt der leeren Abbildung“ f : ∅ → ∅
”
auf. Basierend auf dieser zweiten Auffassung von n-Tupeln, gilt ebenso offensichtlich
[
M n.
M 0 = {()} und Seq(M ) =
n∈
Die Eigenschaft M n+1 = M n ×M geht jedoch verloren. Vielmehr paßt zu dieser Auffassung
von n-Tupeln als endliche Folgen“ eine andere Operation, nämlich die Konkatenation von
”
endlichen Folgen“, d.h. die Abbildung ◦ : Seq(M ) × Seq(M ) → Seq(M ) mit
”
(a0 , . . . , ak−1 ) ◦ (b0 , . . . , b`−1 ) := (a0 , . . . , ak−1 , b0 , . . . , b`−1 ).
Hierfür gilt dann offenbar M k ◦ M ` = M k+` für k, ` ∈
Soviel zur Array-Auffassung von n-Tupeln.
, und somit ist ◦ sogar assoziativ.
Surjektivität, Injektivität und Bijektivität, Abzählbarkeit
Definition 1.13. Sei f : A → B eine Abbildung.
• f heißt surjektiv, falls ∀b ∈ B ∃a ∈ A : b = f (a) gilt. Sprechweise: Jedes b ∈ B ist
Bild eines a ∈ A unter f .
• f heißt injektiv, falls ∀a, a0 ∈ A : f (a) = f (a0 ) ⇒ a = a0 gilt. Sprechweise: Gleiche
Bilder unter f haben gleiche Urbilder.
• f heißt bijektiv, falls f surjektiv und injektiv ist.
Beispiele: Für k ≥ 2 ist die Abbildung f :
→ , x 7→ x DIV k surjektiv, aber nicht
injektiv, und g :
→ , mP7→ 2m + 1 ist injektiv, aber nicht surjektiv. Die Abbildung
π : × → , (x, y) 7→ (
) + y ist bijektiv.
i≤x+y
Definition 1.14. Aus Abbildungen g : A → B und f : B → C kann man durch Hinter”
einanderausführung“ oder Komposition“ eine neue Abbildung f ◦ g : A → C gewinnen,
”
d.h. (f ◦ g)(a) := f (g(a)). Dementsprechend heißt f ◦ g Hintereinanderausführung von f
nach g oder auch Komposition von f mit g.
Der Begriff der Abbildung erlaubt u.a. elegante Definitionen der Begriffe Gleichmächtig”
keit“ zweier Mengen und Abzählbarkeit“ von Mengen.
”
Definition 1.15. Seien A, B Mengen.
• A, B heißen gleichmächtig, falls es eine Bijektion zwischen A und B gibt.
• A heißt abzählbar, falls es eine Bijektion f :
→ A gibt.
Bemerkung. Die abzählbaren oder endlichen nichtleeren Mengen kann man alternativ als
diejenigen Mengen M charakterisieren, zu denen es eine surjektive Abbildung f : → M
gibt, oder äquivalent dazu als diejenigen Mengen M , für die es eine injektive Abbildung
g : M → gibt.
Vorsicht: Aus gleicher Mächtigkeit“ zweier Mengen A, B im Sinne der Definition 1.8
”
folgt im allgemeinen nicht, daß A, B gleichmächtig im Sinne der Definition 1.15 sind. Der
Begriff der Gleichmächtigkeit“ erlaubt eine sehr viel feinere Differenzierung von unendli”
chen Mengen. Zum Beispiel haben sowohl als auch die Potenzmenge von (vergleiche
Definition 1.17) die gleiche Mächtigkeit, nämlich ∞, aber es gibt keine Bijektion zwischen
diesen beiden Mengen (vgl. Lemma 4.6).
Funktionenräume und Potenzmengen
Definition 1.16. Sind A, B Mengen, so bezeichnet man mit
B A := {f | f : A → B ist Abbildung}
die Menge der Funktionen von A nach B.
In Abschnitt 2 zeigen wir später die folgende nützliche Aussage.
Bemerkung. Sind A, B endliche Mengen, so gilt B A = |B||A| .
Definition 1.17. Ist X eine Menge, so heißt
P(X) := {M | M ⊆ X}
die Potenzmenge von X.
Beispiel: Ist X := {1, 4, 7}, so ist P(X) = {∅, {1}, {4}, {7}, {1, 4}, {1, 7}, {4, 7}, {1, 4, 7}}.
Satz 1.18. Zu jeder endlichen Menge X existiert eine Bijektion zwischen P(X) und
{0, 1}X . Insbesondere gilt also |P(X)| = 2|X| .
Beweis. Sei X eine beliebige endliche Menge. Zunächst definieren wir zu einer Menge A
die sogenannte charakteristische Funktion von A in X, in Zeichen cA : X → {0, 1}, durch
1 x∈A
cA (x) :=
0 sonst.
Die Abbildung P(X) → {0, 1}X , A 7→ cA ist bijektiv. Surjektivität Sei f : X → {0, 1}
ein beliebiges Element aus {0, 1}X . Dann gilt f = cA für A := {x ∈ X | f (x) = 1}.
Injektivität Seien A, B ∈ {0, 1}X beliebig und gelte cA = cB . Wir argumentieren indirekt
und nehmen A 6= B an. O.E.d.A. gibt es dann ein a ∈ A mit a 6∈ B und somit folgt
cA (a) = 1, aber cB (a) = 0, im Widerspruch zur Voraussetzung cA = cB .
Also sind P(X) und {0, 1}X gleichmächtige
Mengen, so daß mittels obiger Bemerkung
X
|X|
wie gewünscht folgt: |P(X)| = {0, 1} = 2 .
Für 0 ≤ k ≤ |X| sei Xk die Menge aller k-elementigen Teilmengen von X. Dann erhält
man P(X) aus der disjunkten Vereinigung
aller Xk . Wir werden in Abschnitt 3 zeigen,
m
daß jede m-elementige Menge genau k k-elementige Teilmengen besitzt. Es gilt also
|Xk | = |X|
. Aus Satz 1.18 erhält man damit die folgende Aussage:
k
X m
m
∀m ∈ : 2 =
k
k≤m
Denn ist X eine m-elementige Menge, so gilt nach Satz 1.18:
[
X
X m
m
2 = |P(X)| = Xk =
.
|Xk | =
k
k≤m
2
k≤m
k≤m
Beweise mittels Induktion
Viele Aussagen in der Mathematik und Informatik haben die Form ∀n ∈ : ϕ(n), wobei
man sich ϕ(n) als prädikatenlogische Formel vorstellen kann, die eine Eigenschaft“ für
”
natürliche Zahlen n beschreibt. Oft wird ϕ(n) nur natursprachlich formuliert, wie z.B.
ϕ(n) :≡ n besitzt eine eindeutig bestimmte Primzahldarstellung.
Zum Beweis von Aussagen der Form ∀n ∈ : ϕ(n) bietet sich oft das folgende
Schema der vollständigen Induktion an:
(ϕ(0) ∧ [∀n ∈
: ϕ(n) ⇒ ϕ(n + 1)]) ⇒ ∀n ∈
: ϕ(n).
Das heißt, um ∀n ∈ : ϕ(n) zu zeigen, genügt es, zwei Teilaussagen zu zeigen, den
sogenannten Induktionsanfang (I.A.) und Induktionsschritt (I.S.):
(I.A.) ϕ(0), d.h. ϕ gilt für n = 0, und
(I.S.) Für beliebiges n ∈
gilt: Aus der Annahme ϕ(n) folgt ϕ(n + 1).
Die Annahme ϕ(n) im Induktionsschritt wird oft Induktionsvoraussetzung (I.V.) genannt. Für I.A. und I.S. schreibt man oft auch n = 0 und n → n + 1 , wobei man dann
den Teil Sei n ∈ beliebig und gelte die I.V. ϕ(n)“ nicht mehr explizit erwähnt.
”
Formal gesehen ist das Prinzip der vollständigen Induktion einfach ein Axiom (der PeanoArithmetik) und schon deshalb gültig. Wenn man sich aber die natürlichen Zahlen durch 0
und Nachfolger“ aufgebaut denkt, d.h. 0 ist eine natürliche Zahl, und ist n eine natürli”
che Zahl, so auch sein Nachfolger n + 1, so kann man die Gültigkeit des Prinzips der
vollständigen Induktion wie folgt konstruktiv“ einsehen: Gelte I.A. und I.S.. Dann zeigen
”
wir ∀n ∈ : ϕ(n) durch Ausfaltung der Induktion“. Sei also n ∈
beliebig, aber fest
”
vorgegeben. Ist n = 0, so gilt ϕ(n) nach I.A.. Anderfalls verfahren wir wie folgt: Aus I.A.
und I.S. spezialisiert zu n = 0 erhält man ϕ(1); aus ϕ(1) und I.S. spezialisiert zu n = 1
erhält man ϕ(2), usw., bis man nach endlich vielen Schritten wie gewünscht ϕ(n) erhält.
Als Beispiel eines Beweises mittels vollständiger Induktion behandeln wir die folgende im
ersten Abschnitt angesprochene, einfache Tatsache.
Proposition 2.1. Sind M, N endliche Mengen, so gilt |M × N | = |M | · |N |.
Beweis. Wir beweisen dies durch vollständige Induktion nach |M |, d.h. formal beweisen
wir ∀m ∈ : ϕ(m) durch vollständige Induktion nach m, wobei
ϕ(m) :≡ ∀ endlichen Mengen M, N : m = |M | ⇒ |M × N | = m · |N | .
m = 0 Wir müssen ϕ(0) zeigen. Seien dazu M, N beliebige endliche Mengen und gelte
|M | = 0. Also gilt M = ∅ und somit |M × N | = 0, denn ∅ × N = ∅.
m → m + 1 Sei m ∈ beliebig und gelte die Induktionsvoraussetzung ϕ(m). Wir müssen
ϕ(m + 1) zeigen. Seien dazu M, N beliebige endliche Mengen und gelte m + 1 = |M |. Sei
a ∈ M ein beliebig, aber fest gewähltes Element von M . Dann ist M\{a} eine m-elementige
Menge, für die nach I.V. gilt |M \{a} × N | = m × |N |. Also gilt:
|M × N | = |(M \{a} × N ) ∪˙ ({a} × N )|
= |M \{a} × N | + |{a} × N |
= m · |N | + |N |
= (m + 1) · |N | .
Dies beweist ϕ(m + 1) aus der Annahme ϕ(m).
Im Alltag“ begegnet man häufig Aussagen der Form ∀n ≥ k : ϕ(n) für eine Konstante k,
”
die man mittels vollständiger Induktion beweisen möchte. Hierzu faltet man einfach die
Definition von ∀n ≥ k“ aus und erhält die äquivalente Aussage ∀n ∈ : n ≥ k ⇒ ϕ(n),
”
die nun zum Schema der vollständiger Induktion paßt. Einfacher ist die folgende Variante
der vollständigen Induktion: Um ∀n ≥ k : ϕ(n) zu zeigen, genügt es, die folgenden
zwei Teilaussagen zu zeigen:
n = k ϕ(k), d.h. ϕ gilt für n = k, und
n ≥ k → n + 1 Für beliebiges n ≥ k gilt: Aus der Annahme ϕ(n) folgt ϕ(n+1).
Dem Aufbau der natürlichen Zahlen folgend, kann man mittels vollständiger Induktion
eine Aussage ∀n ∈ : ϕ(n) dadurch beweisen, daß man ϕ(0) zeigt, und für beliebiges
n ∈ die Implikation: gilt ϕ(n), so auch ϕ(n + 1).
Im Alltag der Mathematik und Informatik treten oft Aussagen der Form ∀n ∈ : ϕ(n)
auf, für deren Nachweis das Prinzip der vollständigen Induktion nicht so richtig greift,
denn zum Nachweis von ϕ(n + 1) benötigt man nicht nur ϕ(n), sondern möglicherweise
alle ϕ(i) für i ≤ n. Dies führt uns zu folgender Variante der vollständigen Induktion,
genannt Wertverlaufs-Induktion“ (oder auch starke Induktion“).
”
”
Das Schema der Wertverlaufs-Induktion ist definiert als
[∀n ∈
Um ∀n ∈
(I.S.)
: (∀i < n : ϕ(i)) ⇒ ϕ(n)] ⇒ ∀n ∈
: ϕ(n).
: ϕ(n) zu beweisen, genügt es, den folgenden Induktionsschritt zu zeigen:
Für beliebiges n ∈
gilt: Aus der Annahme ∀i < n : ϕ(i) folgt ϕ(n).
Die Annahme ∀i < n : ϕ(i) wird wieder Induktionsvoraussetzung (I.V.) genannt.
Die Gültigkeit des Schemas der Wertverlaufs-Induktion kann man wie folgt auf die der
vollständigen Induktion zurückspielen: Gelte
(∗)
∀n ∈
Behauptung: Dann gilt ∀n ∈
: (∀i < n : ϕ(i)) ⇒ ϕ(n).
: ϕ(n).
Beweis. Es genügt, die folgende Aussage mittels vollständiger Induktion zu zeigen:
∀m ∈
: ∀i < m : ϕ(i)
{z
}
|
=:φ(m)
Denn aus φ(m + 1) folgt stets ϕ(m). m = 0 Offenbar gilt φ(0) ≡ ∀i < 0 : ϕ(i), denn:
Def
∀i < 0 : ϕ(i) ≡ ∀i ∈ : (i < 0 ⇒ ϕ(i))
⇔ ∀i ∈ : (¬(i < 0) ∨ ϕ(i))
| {z }
wahr
m → m + 1 Es gilt:
(a) φ(m) nach I.V.
(b) φ(m) ⇒ ϕ(m) nach Voraussetzung (∗) für n := m.
Aus (a) und (b) folgt ϕ(m). Also gilt wie gewünscht φ(m + 1) ≡ ∀i < m + 1 : ϕ(i).
Bemerkung: Aus der Kontraposition der Wertverlaufsinduktion, d.h.
∃n ∈
: ¬ϕ(n) ⇒ ∃n ∈
: (∀i < n : ϕ(i)) ∧ ¬ϕ(n)
erhält man das Minimumsprinzip , ersetzt man darin ϕ durch ¬ϕ:
∃n ∈
: ϕ(n) ⇒ ∃n0 ∈
: [∀i < n0 : ¬ϕ(i)] ∧ ϕ(n0 )
In Worten: Gibt es ein n ∈ mit ϕ(n), so gibt es auch ein kleinstes n0 ∈ mit ϕ(n0 )“.
”
Die Korrektheit der Wertverlaufs-Induktion läßt sich unter Verwendung des Minimumprinzips leicht so einsehen: Angenommen, es gilt (I.S.) ∀n ∈ : (∀i < n : ϕ(i)) ⇒ ϕ(n),
aber nicht ∀n ∈ : ϕ(n). Dann gibt es ein kleinstes n0 , so daß ϕ(n0 ) falsch ist. Aus der
Minimalität von n0 und (I.S.) für n = n0 folgt jedoch, daß ϕ(n0 ) gilt, ein Widerspruch.
Auch für die Wertverlaufsinduktion kann man eine praktische Variante formulieren, wenn
es um Aussagen der Form ∀n ≥ k : ϕ(n) für eine Konstante k ∈ geht. Um ∀n ≥ k : ϕ(n)
zu zeigen, genügt es, den folgenden Induktionsschritt zu zeigen:
Für beliebiges n ≥ k gilt: Aus der Annahme ϕ(i) für alle k ≤ i < n folgt ϕ(n).
Als einfaches Beispiel für eine Aussage, die man bequem mittels Wertverlaufsinduktion
beweist, zeigen wir, daß jede natürliche Zahl n ≥ 2 eine Primzahlzerlegung besitzt.
Proposition 2.2. Jede natürliche Zahl n ≥ 2 besitzt eine Primzahlzerlegung p0 , . . . , pl ,
d.h. p0 , . . . , pl sind Primzahlen und es gilt n = p0 · p1 · . . . · pl .
Beweis. Sei n ≥ 2 eine beliebige natürliche Zahl und gelte die Induktionsvoraussetzung:
Jedes 2 ≤ i < n besitzt eine Primzahlzerlegung. Falls nun n bereits eine Primzahl ist, so
ist nichts mehr zu zeigen. Andernfalls gilt n = r · s für zwei natürliche Zahlen r, s mit
2 ≤ r, s < n. In diesem Falle existieren daher nach Induktionsvoraussetzung Primzahlen
p0 , . . . , pk und q0 , . . . , ql mit r = p0 · p1 · . . . · pk und s = q0 · q1 · . . . · pl . Offenbar liefert
damit p0 , . . . , pk , q0 , . . . , ql eine Primzahlzerlegung von n.
Ein weiteres Beispiel für eine Aussage, die man mittels Wertverlaufs-Induktion beweist,
ist die folgende Tatsache über Binärbäume. Letztere sind aus der Vorlesung Algorithmen
”
und Datenstrukturen“ bekannt. Die Höhe“ eines Binärbaums T , in Zeichen h(T ), ist die
”
maximale Länge, d.h. die Kantenzahl eines Weges von der Wurzel zu einem Blatt.
Proposition 2.3. Jeder nichtleere Binärbaum der Höhe k ∈
Knoten.
hat höchstens 2k+1 − 1
Beweis. Wir beweisen dies durch Wertverlaufs-Induktion nach der Höhe von Binärbäumen, d.h. formal zeigen wir ∀k ∈ : ϕ(k) durch Wertverlaufs-Induktion nach k, wobei
ϕ(k) :≡ ∀ nichtleeren Binärbäume T : k = h(T ) ⇒ #Knoten(T ) ≤ 2k+1 − 1.
Sei also k ∈ beliebig und gelte die Induktionsvoraussetzung ∀i < k : ϕ(i). Wir müssen
ϕ(k) zeigen. Sei dazu T ein beliebiger, nichtleerer Binärbaum der Höhe k, d.h. h(T ) = k.
Besteht T nur aus einer Wurzel, d.h. k = 0, so hat T genau 21 −1 = 1 Knoten. Andernfalls
besteht T aus einer Wurzel und (ohne Einschränkung) zwei nichtleeren Binärbäumen
T1 , T2 mit Höhen k1 , k2 < k. Also gilt ki + 1 ≤ k und wir erhalten wie gewünscht:
#Knoten(T ) = 1 + #Knoten(T1 ) + #Knoten(T2 )
≤ 1 + (2k1 +1 − 1) + (2k2 +1 − 1)
nach I.V.
≤ 1 + 2 · (2k − 1)
= 2k+1 − 1.
Ein Beispiel für eine komplexere Aussage, die man mittels Wertverlaufs-Induktion beweist,
ist die Korrektheit des Sortieralgorithmus Quicksort. Sei dazu der Einfachheit halber l eine
Liste (endliche Folge) von natürlichen Zahlen. Mit Korrektheit von Quicksort“ meint man
”
dabei die folgende Aussage: Bei Eingabe l gibt der Algorithmus Quicksort eine aufsteigend
sortierte Liste Quicksort(l) zurück, die aus genau den Komponenten von l besteht. Bezeichnet [] die leere Liste und m@l eine Liste mit Kopf m und Endstück l, so ist Quicksort
durch folgende zwei rekursive Gleichungen“ definiert:
”
Quicksort([]) := []
Quicksort(m@l) := Quicksort(left(split(l, m))) ◦ (m) ◦ Quicksort(right(split(l, m)))
wobei split ein Algorithmus ist, der angesetzt auf eine Liste l und eine natürliche Zahl m
ein Paar (l1 , l2 ) von Listen l1 , l2 zurückgibt deart, daß l1 aus genau jenen Komponenten
k von l mit k ≤ m besteht, und l2 aus genau jenen Komponenten k 0 von l mit k 0 > m.
Ferner sind left, right Algorithmen mit left(a, b) = a und right(a, b) = b.
Wir setzen voraus, daß die Algorithmen left, right, split schon korrekt arbeiten, und wollen
nun zeigen, daß damit auch Quicksort korrekt arbeitet.
Da man i.a. nur weiß, daß left(split(l, m)) und right(split(l, m)) Listen mit einer Länge
≤ der Länge von l sind, zeigen wir die Korrektheit von Quicksort durch WertverlaufsInduktion nach der Länge n der zu sortierenden Liste l. Sei dazu n ∈
beliebig und
gelte die Induktionsvoraussetzung Auf allen Listen l mit einer Länge kleiner n arbeitet
”
Quicksort korrekt“. Dann müssen wir zeigen, daß Quicksort auch auf allen Listen der Länge
n korrekt arbeitet. Sei dazu l eine beliebige Liste der Länge n. Ist l die leere Liste [], so
ist nichts zu zeigen, da diese schon sortiert ist und Quicksort([]) = []. Andernfalls ist l
von der Form m@l0 . Da left(split(l0 , m)) und right(split(l0 , m)) Listen einer Länge ≤ n − 1
sind, kann man hier die Induktionsvoraussetzung anwenden, und erhält, daß Quicksort auf
beiden Listen korrekt arbeitet. Da die Komponenten der Liste Quicksort(left(split(l 0 , m)))
alle ≤ m sind, und die Komponenten der Liste Quicksort(right(split(l 0 , m))) alle > m sind,
liefert der oben beschriebene Algorithmus für l = m@l0 eine aufsteigend sortierte Liste, die
genau aus den Komponenten von l besteht, d.h. Quicksort arbeitet auch auf allen Listen
der Länge n korrekt.
Das obige Beispiel berührt auch eine weitere Variante der vollständigen Induktion, die
sogenannte strukturelle Induktion“ oder auch Induktion über den Aufbau“, die sich oft
”
”
für Aussagen über induktiv definierte Datentypen“ eignet. Diese allgemeine Form der
”
Induktion wird in der Vorlesung genauer behandelt.
An obigem Beispiel sei hier nur der Fall für den induktiven Datentyp LN der Listen von
natürlichen Zahlen aufgezeigt: Die Menge LN ist wie folgt definiert: Die leere Liste ist ein
Element von LN, und ist schon l ein Element von LN, und ist m eine natürliche Zahl, so
ist auch die Liste m@l mit Kopf m und Endstück l ein Element von LN. LN besitzt keine
weiteren Elemente.
Will man nun eine Eigenschaft ϕ(l) von Listen l für alle Listen l in LN beweisen, so genügt
es, dem induktiven Aufbau von LN folgend, die folgenden zwei Aussagen zu zeigen:
(I.A.) ϕ([]), d.h. ϕ gilt für die leere Liste, und
(I.S.) für beliebiges l in LN und m ∈
gilt: aus ϕ(l) folgt ϕ(m@l).
Bemerkung. Die Korrektheit von Quicksort kann man nicht mittels Induktion über den
Aufbau von LN zeigen, da z.B. left(split(l 0 , m)) i.a. kein Endstück von l = m@l0 sein muß.
3
Weitere Beispiele für Induktionsbeweise
Erinnerung: Für m, k ∈
sei
k
Y
m
m−i+1
m(m − 1) · · · (m − k + 1)
=
.
:=
i
k!
k
i=1
Insbesondere:
m
0
= 1,
m
1
= m,
m
2
=
m(m−1)
,
2
und
m
k
= 0 für k > m.
Satz
3.1. Die Anzahl der k-elementigen Teilmengen einer n-elementigen Menge M ist
n
.
k
Beweis. Wir zeigen dies durch vollständige Induktion nach |M |, d.h. formal zeigen wir
∀n ∈ : ϕ(n) durch vollständige Induktion nach n, wobei
ϕ(n) :≡ ∀ Mengen M ∀k ∈ : n = |M | ⇒ es gibt genau
Teilmengen von M .
n
k
k-elementige
n = 0 Sei M eine beliebige Menge, k eine beliebige natürliche Zahl und gelte |M | = 0,
d.h. M = ∅. Ist k = 0, so ist ∅ die einzige 0-elementige Teilmenge von ∅ und 00 = 1. Ist
k > 0, so gibt es keine k-elementigen Teilmengen von M und k0 = 0.
n → n + 1 Sei M eine beliebige Menge, k ∈ beliebig und gelte M = {a1 , . . . , an+1 }. Ist
k = 0, so ist ∅ die einzige 0-elementige Teilmenge von M und n+1
= 1. Ist k > n + 1, so
0
= 0. Gelte also 1 ≤ k ≤ n + 1.
gibt es keine k-elementigen Teilmengen von M und n+1
k
Die k-elementigen Teilmengen von M zerfallen in zwei Gruppen: Diejenigen, die an+1
enthalten, und diejenigen, die an+1 nicht enthalten. Letztere
sind jedoch Teilmengen von
N := M \{an+1 } und nach I.V. gibt es davon genau nk Stück. Eine k-elementige Teilmenge
von M , die an+1 enthält, wird gebildet
aus einer (k − 1)-elementigen Teilmenge von N .
n
Nach I.V. gibt es davon genau k−1 Stück. Also gibt es insgesamt
n
n
n+1
+
=
(1)
k−1
k
k
k-elementige Teilmengen von M . Dabei sieht man die Aussage (1) wie folgt ein:
n+1
n+1
n
=
·
k
k−1
k
n
k + (n − k + 1)
=
·
k
k−1
n
n
n−k+1
=
+
·
k
k−1
k−1
n
n
.
+
=
k
k−1
Satz 3.2. Sind A, B endliche Mengen, so gilt B A = |B||A| .
Beweis. Es war B A = {f | f : A → B ist Abbildung}. Wir zeigen die Behauptung durch
vollständige Induktion nach |A|, d.h. formal zeigen wir ∀n ∈ : ϕ(n) durch vollständige
Induktion nach n, wobei
ϕ(n) :≡ ∀ endliche Mengen A, B : n = |A| ⇒ B A = |B||A| .
n = 0 Seien A, B beliebige endliche Mengen und gelte |A| = 0, d.h. A = ∅. Die einzige
Abbildung von ∅ in eine Menge B ist die leere Abbildung; denn eine Abbildung von ∅ nach
B ist eine Relation R ⊆ ∅ × B = ∅ mit (i), (ii) aus Definition 1.11.
n → n + 1 Seien A, B beliebige Mengen und gelte |A| = n + 1. Sei a ∈ A beliebig, aber
fest. Für jedes f ∈ B A\{a} und b ∈ B erhält man ein F (f, b) ∈ B A , indem man definiert
f (a0 ) a0 6= a
0
F (f, b)(a ) :=
b
sonst.
Umgekehrt erhält man jedes g ∈ B A als ein F (f, b) für ein f ∈ B A\{a} und b ∈ B, nämlich
f (x) := g(x) für x ∈ A\{a} und b := g(a). Wegen F (f, b) 6= F (f 0 , b0 ) für (f, b) 6= (f 0 , b0 )
ist also die Abbildung
F : B A\{a} × B → B A , (f, b) 7→ F (f, b)
eine Bijektion. Also gilt B A = B A\{a} × B . Nach I.V. und Proposition 2.1 folgt damit:
A A\{a}
B = B
× B
= |B||A|−1 · |B|
= |B||A|
Folgerung 3.3. Es gibt genau 2k Binärstrings der Länge k.
Beweis. Ein Binärstring der Länge k kann als Abbildung f : {0, . . . , k − 1} → {0, 1}
aufgefaßt werden.
Satz 3.4. Sind A, B endliche Mengen mit |A| = |B|, so gibt es genau |A|! Bijektionen
von A nach B.
Beweis. Wir zeigen die Behauptung durch vollständige Induktion nach |A|, d.h. formal
zeigen wir ∀n ∈ : ϕ(n) durch vollständige Induktion nach n, wobei
ϕ(n) :≡ ∀ Mengen A, B : |A| = n = |B| ⇒ es gibt genau n! Bijektionen von A nach B.
n = 0 Seien A, B beliebige Mengen und gelte |A| = |B| = 0, d.h. A = B = ∅. Die einzige
Abbildung von ∅ nach ∅ ist die leere Abbildung. Diese ist (rein prädikatenlogisch) eine
Bijektion und es gilt 0! = 1.
n → n + 1 Seien A, B beliebige Mengen und gelte |A| = |B| = n + 1. Sei a ∈ A beliebig,
aber fest, und B := {b1 , . . . , bn+1 }. Die Menge der Bijektionen von A nach B zerfällt
in n + 1 Gruppen G1 , . . . , Gn+1 , wobei jedes Gi aus den Bijektionen f : A → B mit
f (a) = bi besteht. Nach I.V. gibt es genau n! Bijektionen von A\{a} nach B\{bi }. Für
jedes 1 ≤ i ≤ n + 1 gilt daher |Gi | = n!. Denn jede Bijektion g : A\{a} → B\{bi } kann
zu genau einer Bijektion f : A → B in Gi fortgesetzt werden, vermöge
g(a0 ) a0 6= a
0
f (a ) =
bi
sonst.
Also gibt es genau (n + 1) · n! = (n + 1)! Möglichkeiten für Bijektionen f : A → B.
Folgerung 3.5. Es gibt genau |A|! Permutationen einer endlichen Menge A.
Beweis. Eine Permutation einer endlichen Menge A ist eine Bijektion π : A → A.
Die b-äre und die b-adische Zahldarstellung
In diesem Abschnitt behandeln wir die mathematischen Grundlagen für die Verwendung
der Zahldarstellungen zu verschiedenen Basiszahlen. Allgemein üblich und vertraut ist
die Dezimaldarstellung, d.h. die Darstellung von natürlichen Zahlen mit Hilfe der Ziffern
0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Für die Informatik ist die Binärdarstellung von zentraler
Bedeutung, also die Darstellung von natürlichen Zahlen mittels der Ziffern 0, 1. Häufige
Verwendung findet auch die Oktaldarstellung mit Ziffern 0, 1, 2, 3, 4, 5, 6, 7 sowie die
Hexadezimaldarstellung mit Ziffern 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. All dies
sind Spezialfälle der sogenannten b-ären Darstellung.
3.1
Die b-äre Darstellung von natürlichen Zahlen
Definition 3.6. Sei b ∈ mit b ≥ 2. Für a`−1 . . . a0 ∈ {0, . . . , b − 1}∗ sei der b-äre Wert
von a`−1 . . . a0 , in Zeichen (a`−1 . . . a0 )b , wie folgt definiert:
X
(a`−1 . . . a0 )b :=
a i · bi
i<`
Ist n = (a`−1 . . . a0 )b , so heißt a`−1 . . . a0 eine b-äre Darstellung von n. Ist a`−1 6= 0 oder
(n = 0 und ` = 1 und a0 = 0, das heißt, die Zahl Null wird durch das Zeichen 0 dargestellt),
so heißt a`−1 . . . a0 die b-äre Darstellung von n; im Falle b = 2 spricht man auch von der
binären Darstellung von n, und man schreibt dafür bin(n).
Da führende Nullen“ in a`−1 . . . a0 den b-ären Wert nicht verändern, ist die b-äre Darstel”
lung nicht eindeutig. Dies ändert sich, falls man a`−1 6= 0 fordert. Für Wörter a`−1 . . . a0
der Form a . . . a mit a ∈ Σ schreiben wir abkürzend einfach a` .
Satz 3.7. Sei b ∈
mit b ≥ 2. Jede natürliche Zahl n > 0 besitzt genau eine b-äre
Darstellung a`−1 . . . a0 mit a`−1 6= 0.
Beweis. Sei Σ := {0, . . . , b − 1} das b-äre Alphabet. Wir beweisen zunächst die nachfolgenden Hilfsaussagen (a), (b), (c), unter Verwendung von
(∗)
∀j ∈
:
X
i<j
bj − 1
b =
b−1
i
(für b 6= 1)
wobei man (∗) durch eine einfache vollständige Induktion nach j beweist.
(a) Für ` ≥ j ≥ 0, w := a`−1 . . . aj+1 ∈ Σ∗ und a ∈ Σ\{b − 1} gilt:
(wa(b − 1)j )b + 1 = (w(a + 1)0j )b
(b) Für ` ≥ 0 gilt ((b − 1)` )b + 1 = (10` )b .
(c) Für ` ≥ 0 und a`−1 . . . a0 ∈ Σ∗ gilt (10` )b > (a`−1 . . . a0 )b .
Die Hilfsaussage (a) ergibt sich aus der Definition 3.6 mittels (∗) wie folgt:
(wa(b − 1)j )b + 1 = (
l−1
X
ai bi ) + a · bj + ((b − 1) ·
i=j+1
(∗)
|
{z
=:B
X
bi ) + 1
i<j
}
= B + a · bj + (b − 1) ·
bj − 1
+1
b−1
= B + (a + 1) · bj
= (w(a + 1)0j )b
Die Hilfsaussage (b) folgt aus (a) für w := ε (verschwindet nachfolgend) und a := 0, denn:
(a)
((b − 1)` )b + 1 = (0(b − 1)` )b + 1 = (10` )b
Die Hilfsaussage (c) folgt ebenfalls aus (∗), denn:
X
(a`−1 . . . a0 )b =
a i · bi
i<`
≤
X
(b − 1) · bi
i<`
(∗)
= (b − 1) ·
b` − 1
b−1
< b`
= (10` )b
Existenz Mittels (a), (b) folgt durch vollständige Induktion nach n, daß jedes n > 0 eine
b-äre Darstellung a`−1 . . . a0 mit a`−1 6= 0 besitzt. Denn 1 = (1)b und (a), (b) behandeln
gerade die Frage wie man aus einer b-ären Darstellung für n eine für n + 1 gewinnt.
Eindeutigkeit Gelte n = (a`−1 . . . a0 )b und n = (ck−1 . . . c0 )b mit a`−1 , ck−1 > 0. Zu zeigen
ist: (i) k = l und (ii) ai = ci für alle i < ` = k. Aus (c) folgt zunächst (i). Denn denn wäre
etwa ` > k, so folgte n = (a`−1 . . . a0 )b ≥ (10`−1 )b = b`−1 ≥ bk = (10k )b > (ck−1 . . . c0 )b = n.
Aus (i) und (c) folgt nun (ii). Denn wäre etwa ck−1 . . . c0 = ak−1 . . . aj+1 cj . . . c0 mit aj > cj ,
so folgte aus der Voraussetzung einerseits (aj . . . a0 )b = (cj . . . c0 )b und andererseits:
(aj . . . a0 )b = (aj − 1) · bj + bj + (aj−1 . . . a0 )b
≥ c j · bj + b j
= cj · bj + (10j )b
(c)
> cj · bj + (cj−1 . . . c0 )b
= (cj . . . c0 )b
im Widerspruch zu (aj . . . a0 )b = (cj . . . c0 )b .
Abschließend sei noch angemerkt, daß man die Länge der Binärdarstellung einer natürlichen Zahl n, bezeichnet mit ||n|| := |bin(n)|, für n > 0 wie folgt bestimmen kann:
(∗)
||n|| = dlog2 (n + 1)e = blog2 (n)c + 1
Dabei ist dxe für reelle Zahlen x als kleinstes k ∈ mit x ≤ k ( Aufrunden“), und bxc
”
als größtes k ∈ mit k ≤ x ( Abrunden“) definiert.
”
Wegen bin(0) = 0 erhält man für beliebige natürliche Zahlen n die folgende Darstellung:
||n|| = max{1, dlog2 (n + 1)e}
Von der Richtigkeit der Darstellung von ||n|| in (*) für n > 0 kann man sich an folgendem
vollständigen, unendlichen“ Binärbaum anschaulich überzeugen:
”
1
Schicht 1
1
2
1
0
1
10
1
0
0
11
1
0
1
12
1
0
0
13
1
Schicht 3
7
0
1
14
1
0
...
0
...
1
...
0
9
...
8
0
...
1
6
Schicht 4
15
1
0
1
...
5
...
4
1
...
0
0
Schicht 2
3
...
0
In diesem Baum werden systematisch alle Binärdarstellungen bin(n) für n ≥ 1 erzeugt:
bin(n) ist der Binärstring 1a`−2 . . . a0 , der sich aus den Kantenbeschriftungen a`−2 , . . . , a0
auf dem Weg von der Wurzel 1 bis zum Knoten n ergibt. Z. B. liest man bin(5) = 101 ab.
Insbesondere erfolgt die Beschriftung der Knoten nach dem in (a), (b) des vorangehenden
Beweises behandelten Übergang von bin(n) zu bin(n + 1).
Aus der Strukur dieses Binärbaumes kann man leicht ablesen, daß jede Schicht k ≥ 1 aus
den Knoten n mit 2k−1 ≤ n < 2k besteht, oder dazu äquivalent, 2k−1 < n + 1 ≤ 2k . Für
jeden solchen Knoten n gilt also:
k − 1 ≤ log2 (n) < k
bzw. k − 1 < log2 (n + 1) ≤ k
Nach Definition von bxc bzw. dxe folgt somit, daß jede Schicht k ≥ 1 aus den Knoten n
mit k − 1 = blog2 (n)c bzw. dlog2 (n + 1)e = k besteht. Die Knotenbeschriftungen n auf
Schicht k sind damit genau diejenigen n mit |bin(n)| = k = blog2 (n)c + 1 = dlog2 (n + 1)e.
Die b-adische Darstellung
Weitaus weniger gebräuchlich als die b-äre Darstellung, jedoch strukurell interessant und
elegant, ist die sogenannte b-adische Darstellung mit Ziffern 1, 2, . . . , b. Diese beseitigt
die Problematik der führenden Nullen“ und liefert so eine natürliche Bijektion zwischen
”
und Σ∗ für beliebige Alphabete Σ.
Definition 3.8. Sei b ∈ mit b ≥ 1. Für a`−1 . . . a0 ∈ {1, . . . , b}∗ sei der b-adische Wert
von a`−1 . . . a0 , in Zeichen [a`−1 . . . a0 ]b , wie folgt definiert:
X
[a`−1 . . . a0 ]b :=
a i · bi
i<`
Ist n = [a`−1 . . . a0 ]b , so heißt a`−1 . . . a0 die b-adische Darstellung von n. Im Falle b = 1
bzw. b = 2 spricht man auch von der unären bzw. dyadischen Darstellung von n.
Satz 3.9. Sei Σ := {1, . . . , b} das b-adische Alphabet für ein b ≥ 1. Zu jedem n ∈
es genau eine b-adische Darstellung a`−1 . . . a0 ∈ Σ∗ von n.
gibt
Beweis. Analog zur b-ären Darstellung zeigen wir zunächst die folgenden Hilfsaussagen:
(a) Für j ≥ 0, w := a`−1 . . . aj+1 ∈ Σ∗ und a ∈ Σ\{b} gilt [wabj ]b + 1 = [w(a + 1)1j ]b .
(b) Für ` ≥ 0 gilt [b` ]b + 1 = [1`+1 ]b .
(c) Für ` ≥ 0 und a`−1 . . . a0 ∈ Σ∗ gilt [1`+1 ]b > [a`−1 . . . a0 ]b .
Teil (a) ergibt sich aus folgender Indexverschiebung“ und geeignetem Umklammern“:
”
”
!
j−1
l−1
X
X
[wabj ]b + 1 = (
ai bi ) +a · bj +
b · bi + 1
i=j+1
|
{z
=:B
i=0
}
= B + a · bj +
j
X
bi
i=1
j
= B + (a + 1) · b +
!
X
+ b0
bi
i<j
j
= [w(a + 1)1 ]b
Ganz analog ergibt sich Teil (b). Teil (c) gewinnt man aus (b) wie folgt:
(b)
[1`+1 ]b = [b` ]b + 1
≥ [a`−1 . . . a0 ]b + 1, da b ≥ ai für i < `
> [a`−1 . . . a0 ]b
Existenz Wie in Satz 3.7 folgt die Existenz der b-adischen Darstellung mittels vollständiger Induktion nach n ∈ aus 0 = [ε]b und (a), (b).
Eindeutigkeit Gelte n = [a`−1 . . . a0 ]b und n = [ck−1 . . . c0 ]b . Aus (c) folgt k = `. Denn
wäre etwa ` > k, so folgte n = [a`−1 . . . a0 ]b ≥ [1` ]b ≥ [1k+1 ]b > [ck−1 . . . c0 ]b = n. Aus k = `
und (c) folgt ai = ci für jedes i < ` = k. Denn wäre etwa ck−1 . . . c0 = ak−1 . . . aj+1 cj . . . c0
mit aj > cj , so folgte einerseits [aj . . . a0 ]b = [cj . . . c0 ]b und andererseits:
[aj . . . a0 ]b = (aj − 1) · bj + [1aj−1 . . . a0 ]b
≥ cj · bj + [1j+1 ]b , da aj − 1 ≥ cj und ai ≥ 1 für i < j
(c)
> cj · bj + [cj−1 . . . c0 ]b
= [cj . . . c0 ]b
im Widerspruch zu [aj . . . a0 ]b = [cj . . . c0 ]b .
Wie eingangs erwähnt, liefert die b-adische Darstellung eine natürliche Bijektion zwischen
und ∆∗ für beliebige Alphabete ∆ := {a1 , . . . , an }, n ≥ 1. Sei dazu Σ := {1, . . . , n}.
Identifiziert man jeden Buchstaben ai mit i vermöge pai q := i für i = 1, . . . , n und setzt
dies auf ∆∗ fort, d.h. pc`−1 . . . c0 q := pc`−1 q . . . pc0 q, so erhält man offenbar eine Bijektion
p·q : ∆∗ → Σ∗ . Nach Satz 3.9 ist die Abbildung [·]n : Σ∗ → , d`−1 . . . d0 7→ [d`−1 . . . d0 ]n
eine Bijektion. Also liefert die Hintereinanderausführung von [·]n nach p·q eine Bijektion
zwischen ∆∗ und .
4
Abzählbarkeit
Definition 4.1. Sei M eine Menge.
• M heißt abzählbar (unendlich), falls es eine Bijektion f :
→ M gibt, d.h. eine
Aufzählung f (0), f (1), f (2), . . . der Elemente von M ohne Wiederholung.
• M heißt überabzählbar, falls M unendlich, aber nicht abzählbar ist.
Proposition 4.2. Für Mengen M 6= ∅ sind äquivalent:
(1) M ist abzählbar oder endlich.
→ M.
(2) Es gibt eine surjektive Abbildung f :
(3) Es gibt eine injektive Abbildung g : M →
.
Beweis. Offensichtlich gelten (1) ⇒ (2) und (1) ⇒ (3). (3) ⇒ (2) Sei g : M →
eine
injektive Abbildung. Für ein beliebiges, aber fest gewähltes m0 ∈ M definiert dann
m
∃ m ∈ M : g(m) = x
f (x) :=
m0
sonst
eine surjektive Abbildung f :
→ M . Man beachte, daß f wohldefiniert ist, denn wegen der Injektivität von g gibt es höchstens ein m mit g(m) = x. Es bleibt zu zeigen
(2) ⇒ (1) . Sei dazu f : → M eine beliebige surjektive Abbildung und o.B.d.A. sei M
unendlich. Wir haben also eine Aufzählung f (0), f (1), . . . der Elemente von M , eventuell
mit Wiederholungen. Intuitiv gesprochen, entsteht die gesuchte Bijektion g : → M aus
f , indem wir in der Aufzählung f (0), f (1), . . . alle Wiederholungen entfernen, d.h.
g(x) = der von f aufgezählte x-te neue Wert
= f (y) mit f (y) 6∈ {f (0), . . . , f (y − 1)} und |{f (0), . . . , f (y − 1)}| = x.
Sei dazu range(f<y ) := {f (0), . . . , f (y − 1)}. Dann definieren wir g :
→ M durch
g(x) := f (y) mit E(y, x), wobei
E(y, x) :⇔ y ist kleinstes y mit f (y) 6∈ range(f<y ) und |range(f<y )| = x.
Man beachte, daß g wohldefiniert ist, denn M = {f (0), f (1), . . .} ist unendlich, also findet
man stets einen ersten Bildwert f (y), der von allen Vorgängerwerten f (0), . . . , f (y − 1)
verschieden ist. Ferner gilt nach Definition stets g(0) = f (0). In der nachfolgenden Figur
ist die Wirkungsweise der Definition von g beispielhaft dargestellt.
f(y)
g(1)
g(0)
g(2)
0
1
2
3
4
5
6
7
8
9
10 11 12 13
y
Surjektivität Sei dazu m ∈ M beliebig. Da f surjektiv ist, gibt es ein kleinstes x0 ∈
mit f (x0 ) = m, d.h. f (x0 ) 6∈ range(f<x0 ). Für x := |range(f<x0 )| gilt g(x) = f (x0 ) = m.
Injektivität Es genügt zu zeigen:
(∗)
∀x∈
: g(x) ∈
/ range(g<x )
Angenommen, g(x) = g(x0 ) für ein x0 < x. Dann gilt:
g(x) = f (y) mit E(y, x)
k
0
g(x ) = f (y 0 ) mit E(y 0 , x0 )
Aus f (y) = f (y 0 ) und E(y, x), E(y 0 , x0 ) folgt y = y 0 . Denn wäre etwa y 0 < y, so folgte
f (y 0 ) = f (y) ∈
/ {f (0), . . . , f (y 0 ), . . . , f (y − 1)}), ein Widerspruch. Aus y = y 0 und E(y, x),
0
0
E(y , x ) folgte nun x = |range(f<y )| = |range(f<y0 )| = x0 , im Widerspruch zur Annahme.
Also gilt (∗).
Folgerung 4.3. Ist M endlich oder abzählbar, so auch jedes M 0 ⊆ M .
Beweis. Gelte M 0 ⊆ M für eine endliche oder abzählbare Menge M . O.B.d.A. sei M 0
nicht endlich. Sei daher m0 ∈ M 0 beliebig, aber fest gewählt. Nach Proposition 4.2 gibt es
eine surjektive Abbildung f : → M . Dann definiert
f (x)
f (x) ∈ M 0
0
f (x) :=
m0
sonst
eine surjektive Abbildung f 0 :
→ M 0 . Nach Proposition 4.2 ist daher M 0 abzählbar.
Satz 4.4. Sei I 6= ∅ eine endliche oder abzählbare Menge, undS(Mi )i∈I ein System von
endlichen oder abzählbaren Mengen Mi 6= ∅. Dann ist M :=
Mi eine endliche oder
i∈I
abzählbare Menge.
Beweis. Nach Proposition 4.2 gibt es eine surjektive Abbildung f :
eine Darstellung der Form I = {f (0), f (1), f (2), . . .} und somit gilt:
[
M=
Mf (i)
→ I. Also hat I
i∈
Nach Proposition 4.2 genügt es, eine surjektive Abbildung F :
→ M anzugeben, also
eine Aufzählung F (0), F (1), F (2), . . . der Elemente von M , eventuell mit Wiederholung.
Nach Proposition 4.2 hat jedes Mf (i) eine Darstellung der Form
Mf (i) = {ai0 , ai1 , ai2 , . . .}.
Die Definition der gesuchten Aufzählung F (0), F (1), F (2), . . . der Elemente von M erfolgt
nun nach dem Cantorschen Diagonalverfahren“, das wir hier nur im Bild darstellen:
”
ED
GF
ED
GF
=
Mf (1)
=
//
Mf (2)
=
//
Mf (3)
=
@A
Mf (0)
@A
a00
a01
a02
a03
>>
>>
>>
||
||
||
|
|
|
|
|
|
|
|
|
||
||
||
||
||
||
a10
a11
a12
a13
>>
>>
||
||
|
|
||
||
||
||
|
|
|
|
a20
a21
a22
a23
>>
|
|
||
||
|
||
a30
a31
a32
a33
···
···
···
···
.
..
Proposition 4.5. Sind A1 , . . . , An 6= ∅ endlich oder abzählbar, so auch A1 × . . . × An .
Beweis. Vollständige Induktion. n = 0 Offenbar ist A1 ×. . .×An = ∅ endlich. n → n + 1
Nach Induktionsvoraussetzung ist die Menge B := A1 × . . . × An endlich oder abzählbar.
Ferner hat die Menge An+1 nach Proposition 4.2 eine Darstellung An+1 = {a0 , a1 , a2 , . . .}.
Dann ist für jedes i ∈ auch die Menge
Bi := B × {ai }
endlich oder abzählbar. Denn ist f : → B eine surjektiv Abbildung, so auch fi :
fi (x) := (f (x), ai ). Nach Satz 4.4 folgt damit die Behauptung aus:
[
A1 × . . . × An+1 =
Bi
i∈
Proposition 4.6. Sei M eine Menge.
(a) Ist M endlich oder abzählbar, so auch Seq(M ).
(b) Ist M endlich oder abzählbar, so auch P<∞ (M ) := {X ⊆ M | X endlich}
(c) Ist M 6= ∅, so gibt es keine surjektive Abbildung f : M → P(M ).
(d) Ist M abzählbar, so ist P(M ) überabzählbar.
(e) Ist M abzählbar und A eine Menge mit |A| ≥ 2, so ist AM überabzählbar.
→ Bi ,
Beweis. Teil (a) folgt aus Seq(M ) =
S
M n mittels Proposition 4.5 und Satz 4.4.
n∈
Für (b) gelte o.B.d.A. M 6= ∅. Nach (a) ist Seq(M ) also abzählbar. Also existiert eine
Bijektion f : → Seq(M ). Sei nun g : Seq(M ) → P<∞ (M ) definiert durch
g(a0 , . . . , an−1 ) := {a0 , . . . , an−1 }.
Offenbar ist g surjektiv und somit auch g ◦ f :
nach Proposition 4.2.
→ P(M ). Also ist P<∞ (M ) abzählbar
Für (c) gelte M 6= ∅ und sei f : M → P(M ) irgendeine Abbildung. Dann definieren wir
eine Teilmenge D ⊆ M mit D 6= f (x) für alle x ∈ M . Also ist f nicht surjektiv. Die
Definition der Menge D folgt dem Cantorschen Diagonalisierungsverfahren“:
”
D := {x ∈ M | x ∈
/ f (x)}
Wäre D = f (x) für ein x ∈ M , so folgte x ∈ D ⇔ x ∈
/ f (x) = D, ein Widerspruch.
Teil (d) folgt aus (c), denn gäbe es Bijektionen f : → M und g :
g ◦ f −1 : M → P(M ) eine Bijektion, im Widerspruch zu (c).
→ P(M ), so wäre
Für (e) sei M abzählbar und A eine Menge mit mindestens zwei Elementen a0 6= a1 . Also
hat M eine Darstellung der Form M = {b0 , b1 , b2 , . . .} mit bi 6= bj für i 6= j. Angenommen,
AM = {f | f : M → A Abbildung } wäre abzählbar, etwa
AM = {f0 , f1 , f2 , . . .} mit fi 6= fj für i 6= j.
Dann könnten wir eine Abbildung fD : M → A mit fD 6= fi für alle i ∈ definieren, ein
Widerspruch! Die Definition von fD folgt dem Cantorschen Diagonalisierungsver”
fahren“:
a1
falls fi (bi ) = a0
fD (bi ) :=
a0
sonst
Da a0 6= a1 , gilt fD (bi ) 6= fi (bi ) für alle i ∈
. Also gilt fD 6= fi für alle i ∈
.
Herunterladen