Einführung in die Diskrete Mathematik Ulrich Faigle Skriptum zur Vorlesung Wintersemester 2006/07 Universität zu Köln Universität zu Köln Mathematisches Institut Zentrum für Angewandte Informatik Weyertal 80 [email protected] www.zaik.uni-koeln.de/AFS Inhaltsverzeichnis Teil 1. Zähltheorie 3 Kapitel 1. Zahlen und Rechenstrukturen 1. Die natürlichen Zahlen 2. Allgemeinere Zahlen, Gruppen, Ringe und Körper 3. Der Binomialsatz 4. Boolesche Algebra und Funktionenräume 5. Polynomfunktionen 6. Doppeltes Zählen und das Schubfachprinzip Kapitel 2. 1. 2. 3. 4. Formale Potenzreihen, Rekursionen und erzeugende Funktionen Der Ring der formalen Potenzreihen Lineare Rekursionen Erzeugende Funktionen Konvergente Potenzreihen 5 5 10 13 14 18 19 23 24 30 32 35 Kapitel 3. Euklidische Ringe 1. Der grösste gemeinsame Teiler 2. Kongruenzklassen und endliche Körper 39 40 42 Kapitel 4. Geordnete Mengen 1. Darstellung von Ordnungen 2. Inzidenzalgebra 3. Verbände 4. Valuationen 55 56 63 72 76 Kapitel 5. Kombinatorische Geometrien 1. Hüllensysteme und Abschlussoperatoren 2. Unahhängigkeitssysteme und geometrische Rangfunktionen 3. Kombinatorische Geometrien und Matroide 4. Projektive Geometrien 85 85 89 91 93 Kapitel 6. Graphen und Matroide 1. Gerichtete und ungerichtete Graphen 2. Potentiale, Flüsse und Spannungen auf Graphen 1 97 97 104 2 INHALTSVERZEICHNIS 3. 4. Graphische Matroide Dualität 106 111 Teil 1 Zähltheorie KAPITEL 1 Zahlen und Rechenstrukturen Eine klassische Aufgabe der diskreten Mathematik (Kombinatorik) besteht darin zu ermitteln, wieviele Konfigurationen“ (d.h. diskrete Objekte von ” einem gewissen Typ) es gibt. Zu diesem Zweck wurden die Zahlen“ ent” wickelt. Wir gehen hier (aus Gründen praktischer Zweckmässigkeit) den umgekehrten Weg und diskutieren zuerst kurz die Zahlen, bevor wir untersuchen, wie man damit zählen kann. Wir gehen von den natürlichen Zahlen als gegeben aus. Alle anderen Zah” len“ sind mathematische Konzepte, die einem das logische Verständnis von mathematischen Strukturen erleichtern können. Praktisches Rechnen wird aber immer auf das Rechnen mit natürlichen Zahlen zurückgeführt! 1. Die natürlichen Zahlen Die natürlichen Zahlen bilden die Menge N = {0, 1, 2, . . . , n, n + 1, . . .}. Charakteristisch für sie ist, dass sie mit einem Element 0 beginnen und dann jedes Element n ∈ N genau einen Nachfolger n + 1 ∈ N besitzt. Dadurch kann man Elemente m einer Menge M der Reihe nach“ abzählen: ” m 0 , m1 , m2 , . . . Dies ist ein algorithmischer Prozess, den man so präzisieren kann: (0) Setze n := 0. (i) Ist M = ∅, stop mit der Ausgabe M hat n Elemente“. ” Ist M 6= ∅, wähle m ∈ M und setze n := n + 1 und M := M \ {m} und iteriere. Endliche und unendliche Mengen. Wenn dieser Zählalgorithmus nach endlich vielen Schritten stoppt, dann ist M endlich und hat |M | = n Elemente. Ansonsten heisst M unendlich, was mit |M | = ∞ ausgedrückt wird. 5 6 1. ZAHLEN UND RECHENSTRUKTUREN 1.1. Induktion und rekursive Definition. Die Konstruierbarkeit jeder natürlichen Zahl n als Nachfolger von Nachfolger von .... von Nachfol” ger von 0“ führt auf das fundamentale Beweis- und Definitionsprinzip der mathematischen Induktion. Man geht von einer Reihe von Aussagen“ An aus, die jeweils von einem ” Parameter n ∈ N abhängen. Das Schlussprinzip ist nun: A0 ist wahr wenn An wahr ist, dann auch An+1 =⇒ An ist für alle n ∈ N wahr. Nach diesem Prinzip kann man algebraische Operationen auf N definieren. Die Addition erhält man z.B. so: (0) m + 0 := m (n) m + n := (m + (n − 1)) + 1. Die Multiplikation ist so definiert: (0) m · 0 := 0 (n) m · n := m · (n − 1) + m. Es ist dann Routine, die Gültigkeit der folgenden Rechenregeln (per Induktion!) zu beweisen: a + (b + c) a+b a · (b · c) a·b a · (b + c) = = = = = (a + b) + c b+a (a · b) · c b·a (a · b) + (a · c) Nach dem gleichen Prinzip lassen sich auch mathematische Ausdrücke definieren. Zum Beispiel kann man n! so definieren: (0) 0! := 1 (n) n! := n · (n − 1)!. Eine solche Definition (per Induktion) heisst auch rekursiv. M AN BEACHTE : Eine Definition per Rekursion beinhaltet immer einen Algorithmus zur praktischen Berechnung des Ausdrucks! 1.2. Die fundamentalen Zählprinzipien. Das Abzählprinzip der natürlichen Zahlen ergibt das grundsätzlichste aller Zählprinzipen. Sind M und N endliche Mengen, dann gilt die Summenregel: |M ∪ N | = |M | + |N | wenn M ∩ N = ∅ 1. DIE NATÜRLICHEN ZAHLEN 7 Daraus folgt per Induktion“ sofort für die paarweise disjunkten Mengen ” M1 , . . . , M n : n X |M1 ∪ . . . ∪ Mn | = |Mi | (wenn Mi ∩ Mj = ∅ für alle i 6= j.) i=1 Daraus wieder folgt die allgemeine Formel |M | + |N | = |M ∪ N | + |M ∩ N |, wie man durch Zerlegung in paarweise disjunkte Mengen sofort sieht: M = (M \ N ) ∪ (M ∩ N ) N = (N \ M ) ∪ (M ∩ N ) M ∪ N = (M \ N ) ∪ (M ∩ N ) ∪ (N \ M ). PARTITIONEN . Eine Partition der Menge M ist eine Zerlegung von M in paarweise disjunkte Teilmengen M1 , . . . , Mk (den sog. Blöcken der Partition): k [ M= Mi mit Mi ∩ Mj = ∅ für alle i 6= j. i=1 Das zweite fundamentale Zählprinzip leitet sich aus dem ersten ab. Wir betrachten die Menge M × N aller Paare (m, n) von Elementen m ∈ M und n ∈ N . Dann gilt die Produktregel |M × N | = |M | · |N | Um die Produktregel einzusehen, nehmen wir M = {m1 , . . . , mk } und N = {n1 , . . . , n` } an. M × N lässt sich dann partitionieren in die k Blöcke M1 = {(m1 , n1 ), (m1 , n2 ), . . . , (m1 , n` )} M2 = {(m2 , n1 ), (m2 , n2 ), . . . , (m2 , n` )} .. . Mk = {(mk , n1 ), (mk , n2 ), . . . , (mk , n` )} Jeder Block Mi umfasst ` Elmente. Also ist |M × N | = k · `. 1.3. Kombinationen und Permutationen. Sei M eine Menge mit |M | = m Elementen und k eine natürliche Zahl. Eine (m, k)-Kombination ist eine Anordnung von k verschiedenen Elementen von M : (m1 , m2 , . . . , mk ) (mi ∈ M \ {m1 , . . . , mi−1 }, i = 2, . . . , k.} Sei C(m, k) die Anzahl aller möglichen (m, k)-Kombinationen. Dann gilt offenbar 8 1. ZAHLEN UND RECHENSTRUKTUREN (0) C(m, k) = 0, wenn m 6≥ k. (i) C(m, 1) = m, wenn m ≥ 1. (ii) C(m, k) = m · C(m − 1, k − 1), wenn m ≥ k ≥ 2. Die Rekursion (ii) folgt aus der Summenregel, wenn wir die Kombinationen nach dem ersten Element geordnet in m Blöcke partitionieren. Induktion ergibt somit für m ≥ k ≥ 1: (1) C(m, k) = m(m − 1) · · · (m − (k − 1)) = m! (m − k)! Definieren wir zusätzlich C(0, 0) := 1, dann gilt die Formel (1) für alle natürlichen Zahlen m ≥ k ≥ 0. Im Fall m = k heisst eine (m, k) − Kombination auch Permutation von M . Also ist die Anzahl der Permutationen von M : C(m, m) = m! (m ∈ N) 1.4. Teilmengen. Sei M wieder eine Menge mit |M | = m Elementen und k ∈ N. Wir bezeichnen die Anzahl aller k-elementigen Teilmengen von M mit dem Symbol m . Dieser Parameter heisst auch Binomialkoeffizient. k (Woher diese Bezeichnung kommt, wird später aus dem sog. Binomial” satz“ klar werden.) Um eine Formel für diese Anzahl zu bekommen, überlegt man sich: aus jeder k-Teilmenge von M lassen sich k! Kombinationen bilden. Ausserdem führen verschiedene k-Teilmengen zu verschiedenen Kombinationen. Die Summenregel ergibt deshalb: m m m! (2) C(m, k) = k! bzw. = (m ≥ k ≥ 0) k k k!(m − k)! 1.4.1. Das Pascalsche Dreieck. Auch für die Binomialkoeffizienten lässt sich über die Summenregel leicht eine Rekursion aufstellen. Dazu überlegt man sich zunächst: m m m = 0 (m 6≥ k) und = = 1 (m ∈ N), k 0 m wobei die zweite Formel die Wahl der leeren Menge als einziger Teilmenge mit 0 Elementen bzw. der Wahl von M als Teilmenge mit m Elementen entspricht. Im Fall m ≥ k ≥ 1 beobachten wir die Relation m m−1 m−1 (3) = + , k k−1 k 1. DIE NATÜRLICHEN ZAHLEN 9 wenn wir die k-Teilmengen von M danach unterteilen, ob sie ein fest gewähltes Element a ∈ M enthalten oder nicht enthalten. Diese Relation, aus der man die Binomialkoeffizienten nach einem rekursiven Schema berechnen kann, ist als Pascalsches Dreieck bekannt. Sei P ot(M ) die Potenzmenge von M . Der gleiche rekursive Ansatz zeigt |P ot(∅)| = 1 und |P ot(M )| = 2 · |P ot(M \ {a})|. Also schliessen wir: |P ot(M )| = 2|M | bzw. m m m + + ... + = 2m 0 1 m 1.5. Beschreibung durch Funktionen. Die oben eingeführten kombinatorischen Grundstrukturen können auch in der Sprache von Abbildungen verstanden werden. Zum Beispiel kann man sich eine Teilmenge S ⊆ M als durch eine Funktion fS : M → {0, 1} gegeben“ vorstellen, wobei ” S = {m ∈ M | fS (m) = 1}. Mit diesem Verständnis wäre fS etwa als eine Messapparatur“ aufzufassen, ” in die Elemente m ∈ M eingegeben werden können. Genau im Fall m ∈ S wird der Wert 1“ angezeigt: ” m ∈ S −→ fS −→ 1 , m ∈ / S −→ fS −→ 0 . Eine (m, k)-Kombination wäre in diesem Rahmen einfach eine injektive(!) Abbildung f : {1, . . . , k} → M, die wir durch ihre Wertetafel angeben: 1 2 ... k f m1 m2 . . . mk ←→ (m1 , m2 , . . . , mk ). Um Partitionen zu beschreiben, definieren wir zuerst eine geordnete Partition von M in k nichtleere Blöcke als eine surjektive Abbildung f : M → {1, . . . , k}. Die zugehörigen k Blöcke M1 = f −1 (1), . . . , Mk = f −1 (k) bilden dann eine ungeordnete Partition von M . B EMERKUNG. Der Unterschied zwischen ungeordneten“ und geordneten“ Par- ” ” titionen ist wie der Unterschied zwischen Teilmengen“ und Kombinationen“. ” ” 10 1. ZAHLEN UND RECHENSTRUKTUREN 2. Allgemeinere Zahlen, Gruppen, Ringe und Körper In der algebraischen Struktur (N, +) kann man eine Gleichung vom Typ a+x=0 (a ∈ N \ {0}) nicht lösen. Deshalb definiert man neue Zahlen xa als ideelle Grössen vom Typ xa = −a (a ∈ N \ {0}) und rechnet mit diesen neuen wie mit natürlichen Zahlen unter Beachtung der Zusatzregel a + (−a) = 0 (a ∈ N). Mit Z = {. . . , −n, . . . , −1, 0, . . . , n, . . .} kommt man damit zu der Rechenstruktur (Z, +, ·) der ganzen Zahlen mit der eindeutigen Lösbarkeitseigenschaft a + x = 0 =⇒ x = −a (a ∈ Z). In (Z, +, ·) kann man jedoch keine Gleichungen der Form a·x=1 (a 6= 0, 1) lösen. Also erweitert man Z mit wieder neuen Zahlen vom Typ xa = a−1 (wenn a 6= 0) und rechnet wie in (Z, +, ·) mit der Zusatzregel a · a−1 = 1 (a 6= 0). Damit kommen wir zur Menge der rationalen Zahlen Q = {b · a−1 | a, b ∈ Z, a 6= 0} mit den üblichen Rechenregeln. In Q sind nun beliebige Gleichungen der Form p · x = q (p, q ∈ Q) lösbar. B EMERKUNG. Sind a, b, c ∈ Z beliebige ganze Zahlen 6= 0, so sind die rationalen Zahlen b · a−1 und (b · c)(a · c)−1 äquivalent. Man schreibt dies kurz als Gleichung b b·c = a a·c und interpretiert diese als Kürzungsregel. Streng genommen ist eine rationale ” Zahl“ also eine Äquivalenzklasse von Ausdrücken der Form b · a−1 . Für den Ma” thematiker“ erscheint dies als selbstverständlich. Im richtigen Leben“ macht es ” jedoch einen gewaltigen Unterschied aus, ob man z.B. 1 ganzes Ei oder 2 halbe Eier hat! 2. ALLGEMEINERE ZAHLEN, GRUPPEN, RINGE UND KÖRPER 11 2.1. Reelle und komplexe Zahlen. Anschaulich gesprochen ist eine reelle Zahl ein Ausdruck der Form ∞ X ai r =a+ mit a ∈ Z, ai ∈ {0, 1, 2, 3, 4, 5, 6, 7, 9}. i 10 i=1 Genauer aber ist r eine Folge (rn ) von rationalen Zahlen der speziellen Form n X ai rn = a + , i 10 i=1 als deren Limes man sich r denkt. Auch hier muss man eigentlich noch präziser sein und sich r als eine Äquivalenzklasse von Folgen (rn0 ) rationaler Zahlen rn0 denken, mit der Eigenschaft lim (rn − rn0 ) = 0. n→∞ E X . 1.1. Jede rationale Zahl q ist eine reelle Zahl. Um das einzusehen, nehmen wir 0 ≤ q < 1 an und definieren an rekursiv als die grösste ganze Zahl mit der Eigenschaft n−1 X ai an + ≤ q. 10n i=1 10i Dann gilt n X ai . q = lim i n→∞ 10 i=1 Man kann sich also Q als Teilmenge der Menge R aller reellen Zahlen vorstellen. In diesem Sinn gilt: N ⊆ Z ⊆ Q ⊆ R. In R kann man nicht nur Gleichungen der Form a · x = b sondern auch der Form ax = b (a, b > 0) lösen, deren Lösung man als x = loga b notiert. Ausserdem kann man Wurzeln (aus nichtnegativen) reellen Zahlen ziehen. D.h. die Gleichung xn − r = 0 ist für alle r ≥ 0 lösbar. Allerdings existieren schon keine Quadratwurzeln negativer Zahlen. Z.B. ist die folgende Gleichung in R unlösbar: x2 + 1 = 0. 12 1. ZAHLEN UND RECHENSTRUKTUREN Man nimmt sich deshalb eine fiktive ( imaginäre“) neue Zahl“ i zur Hand, ” ” die man sich als Lösung der obigen Gleichung vorstellt, i2 = −1, bildet die Menge C aller Ausdrücke z der Form z = a + ib (a, b ∈ R) und rechnet mit diesen nach den üblichen Rechenregeln. Es stellt sich nun heraus, dass in der Rechenstruktur (C, +, ·) die Gleichung a0 + a1 x + . . . + an−1 xn−1 = 0 (a0 , . . . , an−1 ∈ C) immer lösbar ist, sofern ai 6= 0 für mindestens ein i ≥ 1 gilt. Diese Feststellung ist als der sog. Fundamentalsatz der Algebra bekannt. B EMERKUNG. Die obigen Konstruktionen“ von Zahlen haben bislang zu keinem ” erkennbaren Widerspruch im Rahmen unseres menschlichen Verständnisses von logisch“ geführt. Daraus folgern manche Leute, dass es tatsächlich ein irgendwie ” absolutes“ Universum gibt, in dem es rein logisch zugeht und in dem diese fiktiven ” gedanklichen Einheiten echt existieren. (Bei solchen Überlegungen bewegt man sich aber schon im Bereich von Philosophie und Religion.) 2.2. Gruppen, Ringe und Körper. In Verallgemeinerung der algebraischen Rechenstruktur von (N, +, ·) verstehen wir unter einer kommutativen Halbgruppe eine algebraische Rechenstruktur (H, ⊕) mit binärer Verknüpfung ⊕ und Neutralelement e ∈ H derart, dass für alle a, b, c ∈ H gilt: a ⊕ (b ⊕ c) = (a ⊕ b) ⊕ c a⊕e = e⊕a = a Der Halbring (H, ⊕) heisst kommutativ (oder abelsch), wenn die Reihenfolge bei der Summenbildung keine Rolle spielt, d.h. a⊕b=b⊕a für alle a, b ∈ H. So ist (N, +) eine (abelsche) Halbgruppe mit Neutralelement e = 0. Ebenso ist aber auch (N \ {0}, ·) eine (ablesche) Halbgruppe mit Neutralelement e = 1. T ERMINOLOGIE . Schreibt man die Halbgruppe mit Additionszeichen, so heisst das Neutralelement meist Nullelement und wird mit 0“ notiert. Bei multiplikati” ver Notation, heisst das Neutralelement entsprechend Einselement und wird mit 1“ bezeichnet. ” Unter einem Halbring versteht man eine algebraische Struktur (H, ⊕, ) derart, dass (HR1) (H, ⊕) ist eine kommutative additive Halbgruppe. 3. DER BINOMIALSATZ 13 (HR2) (H \ {0}, ) ist eine multiplikative Halbgruppe. (HR3) Für alle a, b, c ∈ H gilt a0 = 0a = 0 a (b ⊕ c) = (a b) ⊕ (a c) (a ⊕ b) c = (a c) ⊕ (b c). Der Halbring (H, ⊕, ) heisst kommutativ, wenn auch die Multiplikation in H kommutativ ist. Die Halbgruppe (G, ⊕) mit Neutralelement e heisst Gruppe, wenn die Gleichung a⊕x=e immer lösbar ist. Die Lösung xa ∈ G heisst Inverses von a. Im additiven Fall schreibt man xa = −a und im multiplikativen Fall xa = a−1 . Der Halbring (R, ⊕, ) heisst Ring, wenn (R, ⊕) eine Gruppe ist. Ein Körper ist ein Ring (K, ⊕, ), bei dem auch (K\{0}, ) eine kommutative Gruppe ist. So ist (Z, +, ·) ein kommutativer Ring (aber kein Körper). Q, R, C sind (unter den üblichen Rechenregeln mit +“ und ·“) Körper. ” ” Ganz allgemein können wir die Elemente jeder algebraischen Struktur als Zahlen“ interpretieren (weil wir mit diesen in einem vernünftigen Sinn ” rechnen“ können). Für die Zwecke dieser Vorlesung werden wir uns dabei ” aber auf Halbringe beschränken. 3. Der Binomialsatz Sei R = (R, +, ·) ein beliebiger kommutativer Halbring und N = {1, . . . , n} eine n-elementige Menge. Wir betrachten beliebige Elemente x1 , . . . , xn , y1 . . . , yn ∈ R und setzen für jede Teilmenge S ⊆ N abkürzend Y x∅ := 1 ∈ R und xS := xs (S 6= ∅). s∈S (yS ist natürlich analog definiert.) Dann ergeben die Rechenregeln in R: S ATZ 1.1 (Binomialsatz). n Y X (xi + yi ) = xS · yN \S i=1 S⊆N Beweis. Wir argumentieren (natürlich) per Induktion. Im Fall n = 1 haben wir x1 + y1 = x∅ y1 + x1 y∅ , 14 1. ZAHLEN UND RECHENSTRUKTUREN wie behauptet. Für n ≥ 2 schliessen wir deshalb n n−1 Y Y (xi + yi ) = (xn + yn ) (xi + yi ) i=1 i=1 X = xn S⊆N \{n} = X X xS y(N \{n}\S) S⊆N \{n} xS yN \S + X xS yN \S S63n S3n = X xS y(N \{n}\S) + yn xS yN \S . S 3.1. Ein paar klassische Formeln für Binomialkoeffizienten. Durch spezielle Wahl der xi und yi erhält man nun sofort neue Formeln. Nimmt man z.B. x1 = . . . = xn = x und y1 = . . . = yn = y, dann erhält man X n (x + y) = |S| n−|S| x y = S⊆N Im Fall R = N haben wir X n X X xk y n−k . k=0 |S|=k k n−k x y |S|=k n k n−k = x y k und erhalten somit die Identität n (x + y) = n X n k=0 k xk y n−k Daraus wiederum folgen die Summenformeln der Binomialkoeffizienten n X n−k n 0 = (x = 1, y = −1) (−1) k k=0 n X n n 2 = (x = y = 1) k k=0 4. Boolesche Algebra und Funktionenräume Auf der zweielementigen Menge B = {0, 1} betrachten wir die Operationen ∨ 0 1 0 0 1 1 1 1 ∧ 0 1 0 0 0 1 0 1 − 0 1 1 0 4. BOOLESCHE ALGEBRA UND FUNKTIONENRÄUME 15 Mit diesen Operationen ist B ein Halbring. Insbesondere haben wir z.B. a ∨ b = a ∧ b. Sei nun M eine beliebige Menge. Wir betrachten die Menge aller Funktionen B M = {χ : M → B} Jedem χ ∈ B M entspricht eine eindeutige Teilmenge tr χ = {m ∈ M | χ(m) 6= 0}. Im Fall tr χ = A benutzen wir deshalb auch die Notation χA (statt nur χ). Die oben eingeführte algebraische Struktur auf B macht B M selber zu einem Halbring und es gelten die Regeln χA ∨ χB χA ∧ χB χA χA ∨ (χB ∧ χC ) χA ∨ χB = = = = = χA∪B χA∩B χM \A (χA ∨ χB ) ∧ (χA ∨ χC ) χA ∧ χB . Die Rechenregeln des Halbrings B M übersetzen sich in die Sprache der Teilmengen von M als die sog. de Morganschen Gesetze: A ∩ (B ∪ C) = (A ∩ B) ∪ (A ∩ C) M \ (A ∪ B) = (M \ A) ∩ (M \ B) (B M , ∨, ∧,− ) ist eine sog. boolesche Algebra. Im Fall M = {1, . . . , n} benutzt man auch die Notation Bn = B {1,2,...,n} = B n . 4.1. Boolesche Funktionen. Eine Funktion ϕ : {0, 1}n → {0, 1} ist eine sog. boolesche Funktion. Mit M = {0, 1}n bildet die Menge aller booleschen Funktionen die boolesche Algebra B M . Sei ϕ eine feste boolesche Funktion. Wir setzen C = tr ϕ = {x ∈ {0, 1}n | ϕ(x) = 1} und erhalten dann die Darstellung _ ϕ(x) = ϕc (x) mit c∈C 1 (x = c) ϕc (x) = 0 (x = 6 c) 16 1. ZAHLEN UND RECHENSTRUKTUREN Betrachten wir weiterhin die Trägermengen tr c = {i | ci = 1}, so können wir ϕc als Produkt von booleschen Variablen xi und xj (mit Werten in B) ausdrücken: ^ ^ ϕc (x) = ( xi ) ∧ ( xj ) i∈tr c j∈ / tr c In dieser Form ausgedrückt ist ϕc (x) eine sog. Klausel. Insgesamt erhalten wir ϕ(x) als boolesche Summe von Klauseln, die selber nur Produkte von (möglicherweise negierten) booleschen Variablen sind: _ ^ ^ (4) ϕ(x) = [ xi ) ∧ xj ] c∈C i∈tr c j∈ / tr c Diese Darstellung ist die sog. disjunktive Normalform der booleschen Funktion ϕ. Analog erhält man die konjuktive Normalform, nämlich ein boolesches Produkt von Klauseln, die jeweils nur boolesche Summen von booleschen Variablen sind: ^ (5) ϕ(x) = ϕc (x). c∈C / Denn wir haben nach den booleschen Rechenregeln: _ _ xj . ϕc (x) = xi ∨ i∈tr c j∈ / tr c 4.2. Binäre Vektorräume. Man kann auf der zweielementigen Menge Z2 = {0, 1} auch die folgende Rechenstruktur definieren: + 0 1 0 0 1 1 1 0 · 0 1 0 0 0 1 0 1 Damit ist Z2 ein Körper und die Funktionenmenge ZM 2 (die aus den gleichen M Funktionen besteht wie B ) ist ein Vektorraum. Hier sind die Rechenregeln χA + χB = χA∆B χA · χB = χA∩B , wobei die sog. symmetrische Differenz von Teilmengen definiert ist als A∆B = (A ∪ B) \ (A ∩ B). 4.3. Funktionenräume. Sei (R, ⊕, ) ein beliebiger Halbring. Dann ist RM = {f : M → R} ein Halbring unter den Operationen f ⊕ g ←→ (f ⊕ g)(m) = f (m) ⊕ g(m) f g ←→ (f g)(m) = f (m) g(m) 4. BOOLESCHE ALGEBRA UND FUNKTIONENRÄUME 17 Im speziellen Fall einer konstanten Funktion χm (x) = m können wir m ∈ M mit χm (x) ∈ RM identifizieren. In diesem Sinn gilt M ⊆ RM . Ist R ein Körper, dann ist RM ein Vektorraum mit der Skalarmultiplikation mf = χm f ←→ (mf )(x) = m f (x), die sich als Spezialfall einer allgemeineren Multiplikation von Vektoren(!) erweist. 4.4. Matrizen. Matrizen A = [aij ] mit Koeffizienten aij in einem Halbring (R, ⊕, ) können nach den üblichen Regeln des Matrixkalküls addiert und multipliziert werden. Damit wird beispielsweise die Menge Rn×n aller (n × n)-Matrizen über R zu einem (bzgl. der Multiplikation nichtkommutativen!) Halbring. 4.4.1. Kürzeste Wege. Als Beispiel betrachen wir R = R ∪ {∞} mit den Operationen a ⊕ b = min{a, b} ab = a+b (R, ⊕, ) ist ein Halbring mit Nullelement(!) ∞ und Einselement(!) 0: a⊕∞=a und a 0 = a. n×n Sei D = [dij ] ∈ R eine Matrix, wobei wir dij als die (kürzeste) Distanz von i nach j interpretieren, wenn wir j von i in einem Schritt erreichen wollen. Die kürzeste Distanz mit genau einem Zwischenschritt ist M (2) (dik dkj ) dij = min{dik + dkj } = k k Also finden wir (2) [dij ] = D D = D2 . (m) Allgemeiner erhalten wir die kürzesten Distanzen dij Zwischenschritten aus der Matrixpotenz: mit genau m − 1 (m) [dij ] = Dm−1 · D = Dm . F OLGERUNG : Kürzeste Abstände können also mit simplen Matrixmultiplikationen ermittelt werden. B EMERKUNG. Im Fall dii = 0 für alle i, ist d(m) ij natürlich die kürzeste Distanz von i nach j mit höchstens m − 1 Zwischenschritten. 18 1. ZAHLEN UND RECHENSTRUKTUREN 5. Polynomfunktionen Eine Funktion p : R → R heisst Polynomfunktion, wenn p die folgende Darstellung erlaubt: p(x) = a0 + a1 x + . . . + an−1 xn (ai ∈ R). (Der Einfachheit halber schreiben wir hier +“ statt des allgemeinen ⊕“ usw.) ” ” PR bezeichnet die Menge aller Polynomfunktionen. Ist q mit der Darstellung q(x) = b0 + b1 x + . . . + bm−1 xm eine weitere Polynomfunktion, so ist das Produkt h = p · q eine Polynomfunktion, wobei n+m X X ai b j , ck xk mit ck = (6) h(x) = i+j=k k=0 wie man durch Ausmultiplizieren von p(x)q(x) und Zusammenfassen nach Potenzen xk sofort sieht. Ist R ein Ring, Pdann ist auch PR ein Ring. Denn die Polynomfunktion −p mit −p(x) = ni=0 (−ai )xi löst die Gleichung p + X = 0. Im Fall R = C sieht man leicht n X sup | ak x k | = ∞ x∈N wenn an 6= 0 und n ≥ 1. k=0 Daraus folgt, dass das Nullpolynom p0 ≡ 0 in PC nur die Darstellung p(x) = 0 gestattet. Damit findet man L EMMA 1.1 (Eindeutigkeitslemma). Seien a0 , . . . , an , b0 , . . . , bn ∈ C derart, dass n n X X k ak x = bk xk für alle x ∈ N. k=0 k=0 Dann gilt ak = bk für alle k = 0, . . . , n. Beweis. Sei n ≥ 1. Wir betrachten die Polynomfunktion p(x) = n X (ak − bk )xk . k=0 Nach Voraussetzung haben wir supx∈N |p(x)| = 0 und folglich ak − bk = 0 für alle k. Wegen Z ⊆ Q ⊆ R ⊆ C finden wir, dass auch z.B. für jede Polynomfunktion p ∈ PZ gilt: 6. DOPPELTES ZÄHLEN UND DAS SCHUBFACHPRINZIP 19 • entweder ist p ≡ 0 oder es gibt eindeutig bestimmte Koeffizienten a0 , . . . , an mit an 6= 0 und der Eigenschaft p(x) = a0 + a1 x + a2 x2 + . . . + an xn . E X . 1.2 (Vandermondsche Identität). Wir wählen R = N und substituieren xi = x und y = 1 in der binomischen Formel. Sind nun a, b ∈ N beliebige natürliche Zahlen, so erhalten wir a+b X a+b k x = (x + 1)a+b = (x + 1)a (x + 1)b k k=0 a b X a i X b j = x · x i j i=0 j=0 Polynommultiplikation und Koeffizientenvergleich liefert k X ab X a+b a b (7) = = . k i j i k−i i=0 i+j=k 6. Doppeltes Zählen und das Schubfachprinzip Das Prinzip des doppelten Zählens (in Bezug auf eine kommutative Halbgruppe H) beruht auf der Tatsache, dass man die Koeffezientensumme einer Matrix a11 a12 a13 . . . a1n a21 a22 a23 . . . a2n A = .. .. .. ... . . . am1 am2 am3 . . . amn auf zwei Weisen berechnen kann: • Addition der Spaltensummen von A oder Addition der Zeilensummen von A: n X m m X n X X aij = aij . j=1 i=1 i=1 j=1 Die Reihenfolge der Summanden in einer endlichen Summe in H ist nämlich für den Summationswert irrelevant. E X . 1.3 (Harmonische Zahlen). Relativ zu H = N definieren wir für alle 1 ≤ i, j ≤ n die Koeffizienten ( 1 i teilt j, aij = 0 i teilt j nicht. 20 1. ZAHLEN UND RECHENSTRUKTUREN Damit erhalten wir n X tj = aij = Anzahl der Teiler von j vi = i=1 n X aij = Anzahl der Vielfachen ≤ n von i, d.h. vi = bn/ic , j=1 wobei bac die grösste ganze Zahl ≤ a bezeichne. Wir interessieren uns für den Durchschnittswert t(n) der Teileranzahlen tj : n n t1 + t2 + . . . + tn 1 XX t(n) := = aij . n n i=1 j=1 Das Prinzip des doppelten Zählens führt auf v1 + v2 + . . . vn 1 t(n) = = (bn/1c + bn/2c + . . . + bn/nc) . n n Wegen bn/ic ≤ n/i ≤ bn/ic + 1 finden wir t(n) ∼ Hn bzw. |t(n) − Hn | ≤ 1 , wobei Hn = 1 + 1/2 + 1/3 + . . . + 1/n die sog. n-te harmonische Zahl ist. B EMERKUNG. Aus der Annäherung des Integrals durch Riemannsche Summen gewinnt man in der vorliegenden Situation die Approximation: Z n 1 Hn ∼ dx = log n . 1 x In diesem Sinn könnte man deshalb sagen: Im Durchschnitt“ hat eine ” natürliche Zahl n etwa log n viele Teiler. Das Schubfachprinzip ist die Formulierung der folgenden trivialen Beobachtung: • Wenn n Gegenstände auf r > 0 Schubfächer verteilt werden, so enthält mindestens ein Fach n/r (oder mehr) der Gegenstände. Mit dem Schubfachprinzip kann man keine genauen Anzahlen von Konfigurationen ableiten. Aber es liefert oft überraschend einfache Beweise der Existenz bestimmter Konfigurationen. Wir illustrieren dies am Beispiel des Satzes von Ramsey für Graphen Kn (s.u.). Der (sog. vollständige) Graph Kn hat als Knoten die Elemente der Menge N = {1, 2, . . . , n} und als Kanten alle 2-elementigen Teilmengen e ⊆ N . Wir schreiben abkürzend N En = := {e ⊆ N | e ist 2-elementig} . 2 6. DOPPELTES ZÄHLEN UND DAS SCHUBFACHPRINZIP 21 Die Knoten u und v heissen die Endpunkte der Kante e = {u, v}. Unter einer (rot/blau)-Färbung von En verstehen wir eine Abbildung N c: → {r, b} 2 und nennen die Kante e ∈ En rot“ bzw. blau“ je nach dem, ob c(e) = r ” ” oder c(e) = b gilt. E X . 1.4 (Satz von Ramsey). Man sagt, Kn habe die Ramseyeigenschaft R(p, q), falls folgende Aussage richtig ist: R(p, q): Zu jeder Färbung c : En → {r, b} existiert entweder ein U ⊆ N mit |U | = p derart, dass c(e) = r für alle e ∈ U2 , oder es existiert ein V ⊆ N mit |V | = q derart, dass c(e) = b für alle e ∈ V2 . Wir wollen nun für alle p, q ≥ 2 beweisen: Es gibt eine kleinste Zahl r(p, q) mit der Eigenschaft n ≥ r(p, q) =⇒ Kn besitzt die Eigenschaft R(p, q). Man überzeugt sich leicht (wenn p, q ≥ 2): r(p, 2) = p und r(2, q) = q . Für den allgemeinen Fall nehmen wir nun an, dass r(p−1, q) und r(p, q−1) existieren und betrachten n ≥ 2 · max{r(p − 1, q), r(p, q − 1)} und einen festen Knoten a ∈ N = {1, 2, . . . , n}. Nach dem Schubfachprinzip sind mindestens n/2 der Kanten mit Endpunkt a z.B. rot“ gefärbt (bei ” blau“ würden wir völlig analog argumentieren). Sei ” N 0 = {u ∈ N \ {a} | c({a, u}) = r} . Wegen |N 0 | ≥ r(p − 1, q) gibt es entweder eine Teilmenge V ⊆ N 0 von q Knoten mit ausschliesslich blauen Kanten oder es gibt eine Teilmenge U 0 ⊆ N 0 von p−1 Knoten mit ausschliesslich roten Kanten (sodass U = U 0 ∪{a} eine p-Teilmenge von N mit ausschliesslich roten Kanten ist). Auf jeden Fall haben wir somit erkannt: r(p, q) ≤ 2 · max{r(p − 1, q), r(p, q − 1)} . 22 1. ZAHLEN UND RECHENSTRUKTUREN B EMERKUNG. Man sieht leicht ein: r(3, 3) = 6. Im allgemeinen sind die exakten Werte der Ramseyzahlen“ r(p, q) nur in ganz wenigen Fällen bekannt. ” KAPITEL 2 Formale Potenzreihen, Rekursionen und erzeugende Funktionen Wir gehen von folgender abstrakten Situation aus. Gegeben ist eine Klasse O kombinatorischer Objekte und eine Klassifikationsabbildung t : O → N. Wir nennen den Parameter t(O) ∈ N den Typ des Objektes O ∈ O und setzen On = {O ∈ O | t(O) = n}. Wir nehmen an, die Mengen On der Objekte vom Typ n sind jeweils endlich und interessieren uns für die Parameter fn = |On | (n ∈ N). Der Klasse O ordnen wir somit den (unendlichen) Vektor f = (f0 , f1 , . . . , fn , . . .) ∈ RN zu und suchen eine geschlossene Form“ von f , aus der die fn zurückge” wonnen werden können. E X . 2.1. Sei M eine n-elementige Menge und O = P ot(M ) deren Potenzmenge. Mit t(O) = |O| erhalten wir n n n f =( , ,..., , 0, 0, . . .) 0 1 n Eine geschlossene Form“ wäre gegeben z.B. durch die Funktion ” n ∞ X n k X n f (x) = (1 + x) = x = fk xk , k k=0 k=0 wo man die fk aus den Ableitungen gewinnen kann: fk = f (k) (0) . k! Wir untersuchen nun allgemein das Rechnen mit solchen unendlichen Vektoren f . 23 24 2. FORMALE POTENZREIHEN, REKURSIONEN UND ERZEUGENDE FUNKTIONEN 1. Der Ring der formalen Potenzreihen Sei (R, +, ·) ein beliebiger Ring. Wir betrachten RN , wobei es sich als intuitiv geschickt erweist, ein Element f = (f0 , f1 , . . .) ∈ RN in der Form einer Potenzreihe zu notieren: f ←→ f (x) = ∞ X fn xn n=0 Wir nennen deshalb f (bzw. f (x)) eine formale Potenzreihe. N OTA B ENE : f (x) bedeutet hier keine(!) Funktion in der Variablen x sondern ist einfach eine andere Notation für die Funktion f : N → R mit f (n) = fn . Potenzreihen addiert man – wie bei Vektoren üblich – komponentenweise: ∞ X n f (x) = fn x ∞ X n=0 (fn + gn )xn . =⇒ (f + g)(x) = ∞ X n=0 g(x) = gn xn n=0 Es erweist sich als vorteilhaft, als Multiplikation die sog. Faltung (auch bekannt als Konvolution oder Cauchy-Produkt) zu wählen: (8) ∞ ∞ ∞ X X X n n ( fn x ) ∗ ( gn x ) = hn xn n=0 n=0 n=0 mit hn = X fi gj . i+j=n B EMERKUNG. Die Faltung ist dadurch motiviert, dass man einfach formal aus- ” multipliziert“ und dann wieder nach Potenzen ordnet, wie man es von endlichen Summen kennt: (f0 + f1 x + f2 x2 + . . .) ∗ (g0 + g1 x + g2 x2 + . . .) = f0 g0 + (f0 g1 + f1 g0 )x + (f0 g2 + f1 g1 + f2 g0 )x2 + . . . Es ist nun einfach nachzurechnen, dass P[x] = (RN , +, ∗) ein Ring ist. Wir nennen P[x] den Ring der formalen Potenzreihen (über R). Null- und Einselement sind: f (x) = 0 ↔ 0 = (0, 0, 0, . . .) bzw. g(x) = 1 ↔ 1 = (1, 0, 0, . . .) 1. DER RING DER FORMALEN POTENZREIHEN 25 B EMERKUNG. Ist R ein Körper, dann ist RN natürlich ein Vektorraum. Für unsere Zwecke entscheidend ist die zusätzliche multiplikative Struktur, die die Faltung bietet. 1.1. Invertierbarkeit. Wir nennen f ∈ P[x] invertierbar, wenn es ein g ∈ P[x] gibt mit der Eigenschaft f ∗ g = 1. Bezüglich der einzelnen Komponenten bedeutet dies: f0 g0 = 1 X fi gj = 0 für alle n ≥ 1. i+j=n P n L EMMA 2.1. Die formale Potenzreihe f (x) = ∞ n=0 fn x ist invertierbar genau dann, wenn der Koeffizient P∞ f0 ∈n R invertierbar ist. In diesem Fall ist die Potenzreihe g(x) = n=0 gn x durch die Eigenschaft f ∗ g = 1 eindeutig festgelegt. Beweis. Die Invertierbarkeit von f impliziert die Invertierbarkeit von f0 . Wir berechnen nun die Koeffizienten gn einer Potenzreihe g sukzessive: g0 = f0−1 g1 = −f0−1 (f1 g0 ) .. . gn = −f0−1 (f1 gn−1 + f2 gn−2 + . . . + fn g0 ) .. . Dann gilt offenbar f ∗ g = 1 und g ist durch diese Eigenschaft eindeutig festgelegt. N OTATION . Die (eindeutig bestimmte) Inverse von f wird oft mit f −1 oder 1/f notiert. E X . 2.2. Sei f (x) = 1 − x. Dann berechnet man die Koeffizienten gn von g(x) = f −1 (x) sukzessive als g0 = 1 g1 = 1 .. . gn = 1 .. . 26 2. FORMALE POTENZREIHEN, REKURSIONEN UND ERZEUGENDE FUNKTIONEN und erhält somit ∞ X 1 1 = = xn . f (x) 1 − x n=0 E X . 2.3 (Geometrische Summe). Sei f (x) = 1 + x + . . . + xn . Dann finden wir f (x) ∗ (1 − x) = 1 − xn+1 und deshalb n X 1 − xn+1 xk = f (x) = (1 − xn+1 ) ∗ (1 − x)−1 = . 1 − x k=0 1.1.1. Substitution. Ersetzen wir die Unbestimmte x durch ein Ringelement ξ ∈ R, so ergibt sich aus einer formalen Potenzreihe eine (möglicherweise unendliche) Summe: ∞ X 2 n fn ξ n . f (ξ) = f0 + f1 ξ + f2 ξ + . . . + fn ξ + . . . = n=0 Sind höchstens endlich viele der Koeffizienten fn 6= 0, so ist der Summenwert f (ξ) ein wohldefiniertes Element im Ring R. In diesem Fall kann man f als Funktion f : R → R auffassen. Zum Beispiel bei R = C kann die Summe auch bei unendlich vielen nichttrivialen Summanden wohldefiniert sein (d.h. die Summe ist konvergent). Wie man aus der Infinitesimalrechnung weiss, ist im Fall von Konvergenz die Substitution ξ → x in Produkte von Reihen mit der Multiplikation der Summenwerte verträglich: (f ∗ g)(ξ) = f (ξ)g(ξ). Im Fall von Konvergenz übersetzt sich somit jede Formel für formale Potenzreihen automatisch in eine Formel für den substituierten Wert. (Z.B. die Formel der geometrischen Summe.) 1.2. Der Ring der formalen Polynome.PMit R[x] bezeichnen wir den k Teilring aller formalen Potenzreihen f (x) = ∞ k=0 fk x , bei denen höchstens endlich viele Koeffizienten fk von Null verschieden sind. Jedes p ∈ R[x] kann folglich als endliche Summe notiert werden: p(x) = p0 + p1 x + . . . + pn xn ←→ p = (p0 , p1 , . . . , pn , 0, 0, . . .). Der Teilring R[x] ⊆ P[x] ist der Ring der (formalen) Polynome über R. R[x] ist unter (Faltungs-)Produktbildung abgeschlossen. In der Regel ist 1. DER RING DER FORMALEN POTENZREIHEN 27 die Inverse eines (formalen) Polynoms aber kein Polynom, wie das Beispiel p(x) = 1 − x im vorigen Abschnitt zeigt. B EMERKUNG. Jedes formale Polynom p(x) = nomfunktion fp : R → R durch die Vorschrift fp (ξ) = p0 + p1 ξ + . . . + pn ξ n Pn k k=0 pk x definiert eine Poly- für alle ξ ∈ R. Es ist im allgemeinen jedoch möglich, dass verschiedene (formale) Polynome dieselbe Polynomfunktion definieren. Ist R ein Körper mit unendlich vielen Elementen, so kann man zeigen, dass die Zuordnung zwischen Polynomen und Polynomfunktionen eindeutig ist. (Wir kommen darauf noch später zurück.) P 1.2.1. Euklidische Division. Sei p(x) = nk=0 pk xk ∈ R[x] mit n ≥ 1 und ξ ∈PR beliebig. Wir suchen einen Rest“ r ∈ R und ein Polynom ” j h(x) = n−1 j=0 hj x derart, dass n X k pk x = p(x) = (ξ − x) ∗ h(x) + r = ξ n−1 X hj x − j=0 k=0 j n−1 X hj xj+1 + r. j=0 Koeffizientenvergleich führt zu dem Ansatz pn = pn−1 = .. . p1 = p0 = −hn−1 ξhn−1 − hn−2 ξh1 − h0 ξh0 + r Daraus ergeben sich geeignete hj und r durch rekursives Rechnen: hn−1 = −pn hn−2 = ξhn−1 − pn−1 .. . h0 = ξh1 − p1 r = p0 − ξh0 . L EMMA 2.2 (Euklidischer Algorithmus). Zu jedem Polynom p(x) = und ξ ∈ R existieren r, h0 , . . . , hn−1 ∈ R derart, dass p(x) = (ξ − x) ∗ n−1 X Pn k=0 hj xj + r. j=0 pk xk 28 2. FORMALE POTENZREIHEN, REKURSIONEN UND ERZEUGENDE FUNKTIONEN 1.2.2. Nullstellen und Faktorisierung. Sei p(x) = (ξ − x) ∗ h(x) + r. ξ heisst Nullstelle des Polynoms p(x), wenn die Substitution x = ξ den Wert p(ξ) = 0 ergibt. In diesem Fall haben wir natürlich r = p(ξ) − (ξ − ξ)h(ξ) = 0 d.h. p(x) = (ξ − x) ∗ h(x). Im Fall R = C garantiert der Fundamentalsatz der Algebra und euklidische Division folglich eine Nullstelle ξ mit entsprechender Faktorisierung p(x) = n X k pk x = (ξ − x) ∗ h(x) = (ξ − x) ∗ n−1 X hj xj . j=0 k=0 Iterieren wir dieses Argument, so erschliessen wir die Existenz von Nullstellen ξ1 , . . . ξn derart, dass p(x) = (−1)n pn (ξn − x) ∗ (ξn−1 − x) ∗ . . . ∗ (ξ1 − x) 1.3. Rationale Potenzreihen. Eine Potenzreihe f (x) ∈ P[x] heisst rational, wenn sie eine Darstellung der Form p(x) f (x) = = p(x) ∗ q(x)−1 mit p(x), q(x) ∈ R[x] q(x) P gestattet. Wir nehmen R = C und q(x) = kj=0 qj xj an. Die Invertierbarkeit von q(x) bedeutet q0 6= 0. OBdA sei weiterhin qk 6= 0. Dann dürfen wir oBdA auch qk = 1 annehmen (sonst dividieren wir Zähler und Nenner in der Darstellung von f (x) durch qn ). Also gibt es komplexe Zahlen ξ1 , . . . , ξk derart, dass k k Y X q(x) = (ξj − x) = qj x j . j=1 j=0 Wir betrachten zunächst den Fall, wo die ξ1 , . . . , ξk ∈ C alle verschieden sind und suchen eine sog. Partialbruchzerlegung von q(x)−1 , d.h. eine Darstellung der Form k X 1 cj = q(x) ξ −x j=1 j mit geeigneten Koeffizienten cj ∈ C. Wegen ∞ ∞ 1 1 1 1 X xn X 1 n = · = = x n+1 ξ−x ξ 1 − x/ξ ξ n=0 ξ n ξ n=0 erhalten wir dann ∞ ∞ X X 1 c1 ck n = + . . . + n+1 x = q n xn . q(x) n=0 ξ1n+1 ξk n=0 1. DER RING DER FORMALEN POTENZREIHEN E X . 2.4. Im Fall ξ1 6= ξ2 haben wir z.B. 1 c c = − (ξ1 − x)(ξ2 − x) ξ1 − x ξ2 − x c= mit 29 1 ξ2 − ξ1 und folglich ∞ 1 1 X 1 1 n = n+1 − n+1 x . (ξ1 − x)(ξ2 − x) ξ2 − ξ1 n=0 ξ1 ξ2 Sei p(x) = ∞ X Pm i=0 pi xi . Dann finden wir für ∞ ∞ ∞ X X X p(x) n n+1 fn x = = p0 q n x + p1 qnx + . . . + pm q n xn+m . q(x) n=0 n=0 n=0 n=0 n Koeffizientenvergleich führt somit auf die Darstellung fn = p0 q n + p1 q n−1 + . . . + pm q n−m (n ≥ m) . E X . 2.5. Sei q(x) = x2 + x − 1 = (τ1 − x) ∗ (τ2 − x), wobei √ √ 1 1 τ1 = − (1 + 5) und τ2 = − (1 − 5). 2 2 Wegen τ1 τ2 = −1 findet man ∞ X ∞ 1 1 X fn x = 2 = [(−τ2 )n+1 − (−τ1 )n+1 ]xn x + x − 1 τ − τ 2 1 n=0 n=0 n ∞ 1 X [(−τ2 )n+1 − (−τ1 )n+1 ]xn = √ 5 n=0 Koeffizientenvergleich zeigt 1 fn = √ 5 √ !n+1 1− 5 1 −√ 2 5 √ !n+1 1+ 5 2 1.3.1. Urnenbelegungen. Wir untersuchen nun die Situation ∞ X ∞ ∞ X X 1 1 1 n n fn x = = ∗ . . . ∗ = x ∗ . . . ∗ x . (1 − x)k 1−x 1−x n=0 n=0 n=0 n Nach der Definition des Faltungsprodukts haben wir X fn = 1 i1 +i2 +...+ik =n 30 2. FORMALE POTENZREIHEN, REKURSIONEN UND ERZEUGENDE FUNKTIONEN In einer anschaulichen Interpretation zählt folglich fn , auf wieviel verschiedene Arten man n gleiche Kugeln“ über k Urnen“ verteilen kann (die erste ” ” Urne erhält i1 Kugeln, die zweite i2 usw.). Um eine andere Form der Anzahlen fn zu erhalten, überlegen wir uns erst die Anzahl fn∗ von Möglichkeiten, n Kugeln so zu verteilen, dass jede der k Urnen mindestens eine Kugel enthält. Dazu legen wir die n Kugeln in eine Reihe und müssen auf den n−1 Zwischenräumen k−1 Trennlinien wählen: i1 | i 2 | i3 | . . . | i k . Also: n−1 = . k−1 Wenn nun Urnen auch leer bleiben dürfen, nehmen wir einfach in Gedanken k weitere Kugeln dazu, wobei nun jede Urne eine erhält. Also finden wir n+k−1 ∗ fn = fn+k = k−1 fn∗ und folglich ∞ X n+k−1 n 1 = x . k − 1 (1 − x)k n=0 Ebenso sieht man ∞ ∞ X X n−1 n xk ∗ n fn x = x . = k−1 (1 − x)k n=0 n=0 2. Lineare Rekursionen Wir betrachten eine Folge (fn ) von Parametern fn , die eine lineare Gleichung fn = ak fn−1 + ak−1 fn−2 + . . . + a1 fn−k . erfüllen. Dabei nehmen wir an, dass a1 , . . . , ak feste Elemente eines Rings R sind. Sind f0 , . . . , fk−1 ∈ R festgelegt, so bestimmt die lineare Gleichung sämtliche übrigen fn rekursiv. Wir suchen eine geschlossene Form der formalen Potenzreihe ∞ X f (x) = fn xn . n=0 Dabei benutzen wir, dass die folgende Gleichung für n ≥ k gilt: fn xn = ak xfn−1 xn−1 + ak−1 x2 fn−2 xn−2 + . . . + a1 xk fn−k xn−k 2. LINEARE REKURSIONEN 31 und folglich ∞ X fn x n = ak x n=k ∞ X fn−1 x n−1 + . . . + a1 x n=k k ∞ X fn−k xn−k n=k bzw. f (x) − k−1 X fn x n ak x ∗ f (x) − ak x ∗ = n=0 k−2 X fn xn n=0 2 2 + ak−1 x ∗ f (x) − ak−1 x ∗ .. . + a2 xk−1 ∗ f (x) − a2 xk−1 f0 + a1 xk ∗ f (x). k−3 X fn xn n=0 Damit erhält man eine Gleichung, die man (im Ring der formalen Potenzreihen) nach f (x) auflösen kann. Setzen wir nämlich p(x) = k−1 X n=0 fn xn − ak k−2 X fn xn+1 − ak−1 k−3 X fn xn+2 − . . . − a2 f0 xk−1 , n=0 n=0 so finden wir f (x) ∗ (1 − ak x − . . . − a1 xk ) = p(x) und damit f (x) als rationale Potenzreihe f (x) = p(x) p(x) = k 1 − ak x − . . . − a1 x q(x) mit q(x) = 1 − ak x − . . . − a1 xk als dem sog. charakteristischen Polynom der linearen Rekursion. Man kann nun mit einem Partialbruchansatz nach einer expliziten Formel für die fn suchen. E X . 2.6 (Fibonaccizahlen). Bzgl. R = C sind die Fibonaccizahlen Fn definiert durch F0 = F1 = 1 und Fn = Fn−1 + Fn−2 (n ≥ 2). 32 2. FORMALE POTENZREIHEN, REKURSIONEN UND ERZEUGENDE FUNKTIONEN Sei F (x) = ∞ X Fn xn . Dann rechnen wir n=0 F (x) − 1 − x = ∞ X Fn xn = n=2 ∞ X = x ∞ X Fn−1 xn + n=2 Fn−1 xn−1 + x2 ∞ X Fn−2 xn n=2 X Fn−2 xn−2 n=2 n=2 2 = x[F (x) − 1] + x F (x) = xF (x) − x + x2 F (x). Daraus folgt F (x) ∗ (1 − x − x2 ) = 1 bzw. F (x) = −1 . x2 + x − 1 q(x) = 1−x−x2 ist das charakteristische Polynom der Fibonacci-Rekursion. Von Ex. 2.5 wissen wir deshalb √ !n+1 √ !n+1 1 1 1+ 5 1− 5 −√ Fn = √ 2 2 5 5 √ √ Wegen |1 − 5|n+1 /(2n+1 5) < 1/2 ist Fn also immer diejenige ganze Zahl, die der reellen Zahl √ !n+1 1 1+ 5 √ 2 5 am nächsten liegt. 3. Erzeugende Funktionen Sei a0 , a1 , . . . eine Folge von Koeffizienten. Dann verstehen wir unter einer erzeugenden Funktion vom Standardtyp für die an eine Potenzreihendarstellung ∞ X f (x) = an x n . n=0 Oft sind die an Zählkoeffizienten einer kombinatorischen Struktur, die eine Rekursion erfüllen. Dann kann man f (x) mit der Methodik des vergangenen Abschnitts zu ermitteln versuchen. Kennt man f (x), dann kann man daraus die an bestimmen. 3. ERZEUGENDE FUNKTIONEN 33 E X . 2.7. Wieviele verschiedene ganzzahlige Lösungen hat x1 + x2 + x3 + x4 + x5 + x6 + x7 = n 2 ≤ x 1 , x2 , x3 , x 4 , x5 , x 6 , x7 ≤ 6 ? P n Sei an diese Anzahl und f (x) = ∞ n=0 an x . Dann haben wir f (x) = (x2 + x3 + x4 + x5 + x6 )7 = x14 ∗ (1 + x + x2 + x3 + x4 )7 = x14 ∗ 1 − x 5 7 1−x 1 (1 − x)7 7 ∞ X X k+6 k 14 i 7 5i = x ∗ (−1) x ∗ x . i 6 i=0 k=0 = x14 ∗ (1 − x5 )7 ∗ Daraus erhalten wir zum Beispiel für n = 25: 11 + 6 6+6 1+6 0 7 1 7 2 7 a25 = (−1) + (−1) + (−1) 0 6 1 6 2 6 17 12 7 = −7 + · 7 = 6055 . 6 6 2 3.1. Erzeugende Funktionen vom exponentiellen Typ. Man kann die Folge a0 , a1 , . . . auch durch eine Potenzreihe vom exponentiellen Typ, d.h. in der Form ∞ X xn f (x) = an n! n=0 repräsentieren. Die Normierung der Koeffizienten mit n! modifiziert die Konvolution ∞ ∞ ∞ X X cn n an n X b n n x = x · x , n! n! n! n=0 n=0 n=0 wobei nun cn = n! n X ak k=0 n X bn−k n · = ak bn−k . k! (n − k)! k=0 k E RINNERUNG . Bei der Konvolution von erzeugenden Funktionen vom Standardtyp ergeben sich die neuen Koeffizienten des Produkts als cn = n X k=0 ak bn−k 34 2. FORMALE POTENZREIHEN, REKURSIONEN UND ERZEUGENDE FUNKTIONEN E X . 2.8 (Exponentialfunktion). Im Fall a0 = a1 = . . . = a schreiben wir die erzeugende Funktion vom exponentiellen Typ als ax e = ∞ X an x n n=0 Wegen (a + b)n = Identität Pn n k k=0 n! ak bn−k ergibt die Konvolution die bekannte eax ∗ ebx = e(a+b)x Wir betrachten nun folgende Situation: Wir haben Strukturtypen A und B, die auf Mengen gegeben sein können. Mit an bzw. bn bezeichnen wir die Anzahl aller Konfigurationen vom Typ A bzw. vom Typ B auf einer nMenge. Dann ist n ak bn−k k die Anzahl aller zusammengesetzten Konfigurationen auf einer n-Menge derart, dass eine k-elementige Teilmenge eine Konfiguration vom Typ A und deren Komplement eine Konfiguration vom Typ B darstellt. Die Anzahl aller zusammengesetzten Konfigurationen ist folglich n n X X n ak bn−k cn = ak bn−k = n! · . k k! (n − k)! k=0 k=0 E X . 2.9 (Dérangements). Ein Element i heisst Fixpunkt der Permutation π, wenn i = π(i). Hat π genau k Fixpunkte, so bewirkt π auf den übrigen n − k Elementen ein sog. Dérangement, d.h. eine fixpunktfreie Permutation. Sei dn die Anzahl aller Dérangements einer n-Menge und D(x) die entsprechende erzeugende Funktion vom exponentiellen Typ. Dann ist offenbar n n X X n 1 dn−k dn−k = n! bzw. n! = n!. k k! (n − k)! k=0 k=0 Für die entsprechenden Potenzreihen bedeutet dies: ∞ ∞ ∞ X X X 1 xn xk xj = n! = ∗ dj = ex ∗ D(x) . 1 − x n=0 n! k! j! j=0 k=0 Nun können wir nach D(x) auflösen und erhalten D(x) = ∞ X dn xn n=0 n! −x =e ∞ ∞ X X 1 (−1)k k ∗ = x ∗ xj 1−x k! j=0 k=0 4. KONVERGENTE POTENZREIHEN 35 und somit eine explizite Formel für die dn : n X dn (−1)k = n! k! k=0 d.h. 1 dn − n! ≤ . e (n + 1) 4. Konvergente Potenzreihen Beim Rechnen mit formalen Potenzreihen ist die Frage, ob die Potenzreihe konvergiert oder nicht, irrelevant. Aber natürlich gelten Resultate über konvergente Potenzreihen auch, wenn wir die Reihen nur formal betrachten. Insbesondere dürfen wir aus der Analysis bekannte Reihenentwicklungen usw. auch beim Rechnen mit erzeugenden Funktionen benutzen. E X . 2.10 (Binomialreihe). Für die Funktion f (x) = (1 + x)a (mit a ∈ C) berechnen wir f 0 (x) = a(1 + x)a−1 f 00 (x) = a(a − 1)(1 + x)a−2 .. . (k) f (x) = [a]k (1 + x)a−k , wobei [a]n = a(a − 1) . . . (a − n + 1) die sog. fallenden Faktoriellen notiert. Also erhalten wir die (Taylor-)Reihenentwicklung ∞ ∞ ∞ X X X [a]k k a k f (k) (0) k a x . x = x = (1 + x) = k k! k! k=0 k=0 k=0 Beispielsweise ergibt sich im Fall a = −1/2 1 1 1 (−1)k [−1/2]k = − (− − 1) . . . (− − (k − 1)) = 1 · 3 · . . . · (2k − 1) 2 2 2 2k (−1)k (2k)! = · 4k k! und deshalb ∞ ∞ X 1 (−1)k (2k)! k X (−1)k 2k k √ x . = x = 4k k 1 + x k=0 4k k!k! k=0 E X . 2.11 (Catalanzahlen). Wir betrachten ein Wort w = g1 g2 . . . gn , das aus n Elementen gi einer (nicht assoziativen) Halbgruppe gebildet sei. Auf wieviel verschiedene Weisen kann man w (durch Klammernsetzen) ausrechnen? Die Catalanzahl Cn ist per Definition diese Anzahl. 36 2. FORMALE POTENZREIHEN, REKURSIONEN UND ERZEUGENDE FUNKTIONEN (Wie man aus der unten abgeleiteten Rekursion für Cn leicht sieht, lässt sich derselbe Ansatz verwenden, um z.B. alle binären Wurzelbäume“ (d.h. ” Bäume, bei denen ein Knoten als Wurzel“ ausgezeichnet ist mit Knoten” grad 0 (der triviale Fall) oder 2 und alle übrigen Knoten den Grad 1 oder 3 besitzen) mit n Blättern zu zählen. Analog lässt sich berechnen, wieviele Möglichkeiten es gibt, ein konvexes n-Eck mit nichtüberschneidenden Diagonalen in Dreiecke zu zerlegen.) Wir haben offenbar C1 = 1. Um Cn rekursiv zu bestimmen, beobachten wir, dass im letzten Rechenschritt nur ein Produkt von 2 Wörtern übrigbleibt, wobei das erste k und das zweite n − k Buchstaben habe, die beide unabhängig voneinander geklammert werden können. Also gilt für n ≥ 2: Cn = C1 Cn−1 + C2 Cn−2 + . . . + Cn−1 C1 = n−1 X Ck Cn−k . k=1 Eine explizite Formel für Cn kann man über die erzeugende Funktion C(x) = ∞ X Cn x n bzw. C(x) − x = ∞ X Cn xn n=2 n=1 gewinnen. Aus der Rekursion sehen wir sofort C(x) = x + ∞ n−1 X X n=2 Ck Cn−k xn = x + C 2 (x) k=1 d.h C 2 (x) − C(x) + x = 0 und folglich √ 1 ± 1 − 4x C(x) = . 2 Wegen C(0) = 0 ist klar, dass hier das Minuszeichen gelten muss. Aus der Ableitung berechnen wir nun ∞ ∞ ∞ X X X 1 2n n 2n − 2 n−1 n−1 0 nCn x = C (x) = √ = x = x n n − 1 1 − 4x n=1 n=0 n=1 und erhalten durch Koeffizientenvergleich 1 2n − 2 Cn = n n−1 4. KONVERGENTE POTENZREIHEN 37 4.1. Summationsformeln. Wir betrachten eine Folge a0 , a1 , . . . , an , . . . von Zahlen und die Teilsummen sn = a0 + a1 + . . . + an (n ≥ 0). In der Sprache der formalen Potenzreihen erhalten wir dann ∞ ∞ ∞ X X X S(x) = sn x n = xk ∗ ak xk = (1 − x)−1 ∗ A(x) . n=0 k=0 k=0 Aus der erzeugenden Funktion A(x) der Koeffizienten ak kann man also (per Multiplikation von Potenzreihen) explizite Formeln für die Teilsummen sn ableiten. E X . 2.12. Wir suchen eine explizite Formel für n X (1) k. sn := k=0 Dazu beobachten wir für die Funktion f (x) = (1 − x)−1 : ∞ X −2 0 (k + 1)xk (1 − x) = f (x) = 2(1 − x)−3 = f 00 (x) = 6(1 − x)−4 = f 000 (x) = k=0 ∞ X k=0 ∞ X (k + 2)(k + 1)xk (k + 3)(k + 2)(k + 1)xk k=0 (1) Also ist sn genau der Koeffizient von xn−1 der Funktion S (1) (x) = (1 − x)−1 · f 0 (x) = (1 − x)−3 (1) sn = d.h. (n + 1)n 2 Völlig analog findet man eine Formel für n n X X (2) sn := (k + 1)k = k 2 + s(1) n . k=0 (2) sn ist der Koeffizient von x S (2) k=0 n−1 der Funktion −1 (x) = (1 − x) (2) sn = · f 00 (x) = 2(1 − x)−4 (n + 2)(n + 1)n 3 d.h. 38 2. FORMALE POTENZREIHEN, REKURSIONEN UND ERZEUGENDE FUNKTIONEN usw. KAPITEL 3 Euklidische Ringe Wir wollen im (als kommutativ vorausgesetzten) Ring R allgemein eine Division eines Elements p ∈ R durch ein Element q ∈ R so durchführen können, dass der verbleibende Rest r in einem durch eine Funktion G : R → N ∪ {−∞} spezifizierbaren Sinn kleiner“ ist als q. D.h. wir suchen ” ein h ∈ R mit der Eigenschaft p = hq + r und G(r) < G(q). Der Ring R heisst euklidisch, wenn eine Bewertung G existiert derart, dass für alle a, b ∈ R mit G(b) ≥ 1 gilt: (ER.1) G(ab) ≥ G(a); (ER.2) es gibt Elemente h, r ∈ R mit a = hb + r und G(r) < G(b). Die Menge Z der ganzen Zahlen bildet bekanntlich einen euklidischen Ring mit der Bewertung G(a) = |a| für alle a ∈ Z. Ein weiterer wichtiger Typ eines euklidischen Ringes ist der Ring R = K[x] aller Polynome mit Koeffizienten in einem (fest gewählten aber ansonsten beliebigen) Körper K unter der Wahl des (Polynom-)Grades als Bewertung: ( −∞ wenn p(x) Nullpolynom P G(p(x)) = max{i | ai 6= 0} wenn p(x) = i ai xi 6= 0. L EMMA 3.1. Der Ring R = K[x] ist mit der Grad-Bewertung euklidisch. P P j Beweis. Seien p(x) = ni=0 ai xi und q(x) = m j=0 bj x zwei beliebige Polynome. Wir nehmen oBdA n = G(p(x)) ≥ 0 und m = G(q(x)) ≥ 1 an. Da K ein Körper ist, haben wir an bm 6= 0 und deshalb G(p(x)q(x)) = n + m ≥ n d.h. (ER.1) gilt. Eigenschaft (ER.2) ergibt sich leicht per Induktion über n = G(p(x)). Im Fall n = 0 oder n < m wählen wir h(x) = 0 und r(x) = p(x). Im Fall n > m setzen wir c = an /bm und p0 (x) = p(x) − cxn−m q(x). 39 40 3. EUKLIDISCHE RINGE Wegen G(p0 (x)) ≤ n − 1 schliessen wir auf die Existenz von Polynomen h0 (x) und r(x) mit der Eigenschaft p0 (x) = h0 (x)q(x) + r(x) mit h(x) = cxn−m + h0 (x) G(r(x)) < m. ergibt somit: p(x) = cxn−m q(x) + p0 (x) = h(x)q(x) + r(x). B EMERKUNG. Man beachte, dass der Beweis von Lemma 3.1 konstruktiv algorithmisch ist. Die Polynome h(x) und r(x) lassen sich zu gegebenem p(x) und q(x) leicht rechnerisch ermitteln! Der Algorithmus entspricht im Spezialfall q(x) = ξ − x genau der schon früher angesprochenen euklidischen Division. Eine wichtige Beobachtung ist die Tatsache, dass Division in Polynomringen über Körpern eindeutig ist: L EMMA 3.2. Sei K ein Körper und R = K[x] der dazugehörige Polynomring. Seien q(x), h1 (x), h2 (x), r1 (x), r2 (x) ∈ R ferner so, dass h1 (x)q(x) + r1 (x) = h2 (x)q(x) + r2 (x) und G(rj (x)) < G(q(x)) für j = 1, 2. Dann ist h1 (x) = h2 (x) und r1 (x) = r2 (x). Beweis. Wir setzen h(x) = h2 (x) − h1 (x) und r(x) = r1 (x) − r2 (x). Nach Voraussetzung haben wir G(r(x)) < G(q(x)) und r(x) = h(x)q(x). Also schliessen wir h(x) = 0 und folglich auch r(x) = 0. Annahme: In diesem Kapitel wird R immer als euklidischer Ring mit Bewertung G angenommen. 1. Der grösste gemeinsame Teiler Wir nennen q ∈ R einen Teiler des Ringelements a 6= 0, wenn es ein h ∈ R gibt mit der Eigenschaft a = hq (d.h. wenn die (euklidische) Division von a durch q keinen Rest lässt). Sei nun q ein Teiler von sowohl a wie b. Es gibt also h1 , h2 ∈ R so, dass a = h1 q und b = h2 q. Dann finden wir a = hb + r =⇒ (h1 − hh2 )q = r. Im Fall r = 0 ist b ein Teiler von a. Im Fall r 6= 0 ist q auch ein Teiler von r. Umgekehrt ist natürlich jeder gemeinsame Teiler von b und r auch ein Teiler von a. Also finden wir: • Im Fall a = hb + r mit r 6= 0 sind die gemeinsamen Teiler von a und b identisch mit den gemeinsamen Teilern von b und r. 1. DER GRÖSSTE GEMEINSAME TEILER 41 Ein grösster (bzgl. der Bewertung G) gemeinsamer Teiler der Ringelemente a0 und a1 ist also einfach zu ermitteln: Wir dividieren einfach solange, bis die Division ohne Rest aufgeht: a0 a1 .. . = = .. . h1 a1 + a2 , h2 a2 + a3 , .. . G(a2 ) < G(a1 ) G(a3 ) < G(a2 ) .. . as−2 = hs−1 as−1 + as , G(as ) < G(as−1 ) as−1 = hs as . Das Verfahren endet nach höchstens G(a1 ) Schritten und funktioniert, denn jeder Teiler von a0 und a1 ist auch einer von a2 und deshalb auch von a3 usw. Also muss as ein Teiler mit maximalem Wert G(as ) sein. Wir bezeichnen deshalb as auch mit ggT (a0 , a1 ). S ATZ 3.1. Sei as der mit dem euklidischen Divisionsverfahren ermittelte grösste gemeinsame Teiler der Elemente a0 , a1 ∈ R \ {0}. Dann gibt es u, v ∈ R derart, dass as = ua0 + va1 . Beweis. Wir rechnen den Divisionsalgorithmus zurück. Beginnend mit us−1 = 1 und vs−1 = −hs−1 erhalten wir: as = = = .. . = us−1 as−2 + vs−1 as−1 = us−1 as−2 + vs−1 (as−3 − hs−2 as−2 ) us−2 as−3 + vs−2 as−2 = us−2 as−3 + vs−2 (as−4 − hs−3 as−3 ) us−3 as−4 + vs−3 as−3 = . . . ua0 + va1 . E X . 3.1 (Diophantische Gleichungen). Es sei zu gegebenen a, b, n ∈ Z mit n ≥ 2 die Gleichung ax = b + yn bzw. ax ≡ b mod n im (euklidischen) Ring Z zu lösen. Offenbar existiert eine Lösung nur dann, wenn q = ggT (a, n) auch b teilt. Diese Eigenschaft garantiert aber auch die Existenz einer Lösung. Denn wir haben nach Satz 3.1: b = hq = h(ua + vn) bzw. a(hu) ≡ b Beispiel: 68x ≡ 85 mod 187 . mod n. 42 3. EUKLIDISCHE RINGE Zuerst wird ggT (68, 187) = 17 berechnet über den Divisionsalgorithmus: 187 = 2 · 68 + 51 68 = 1 · 51 + 17 51 = 3 · 17 Wegen 85 = 5 · 17 erweist sich die Aufgabe als lösbar. Rückwärtsrechnen ergibt 17 = 68 − 1 · 51 = 68 − (187 − 2 · 68) = 3 · 68 − 187 und somit x = 5 · 3 = 15 als die gesuchte Lösung. Ex. 3.1 zeigt insbesondere für jede Primzahl p und jedes a 6= kp (k ∈ Z), dass die Gleichung ax ≡ 1 mod p immer lösbar ist. 2. Kongruenzklassen und endliche Körper Wir konzentrieren uns nun auf die Fälle R = Z und R = K[x] und zeigen, wie der euklidische Algorithmus zu algebraischen Strukuren führt, in denen sich leicht rechnen lässt. 2.1. Kongruenzklassen. Sei zunächst R = Z und n ≥ 2 eine feste natürliche Zahl. Die Zahlen a, b ∈ Z nennen wir kongruent modulo n und schreiben a ≡ b mod n, wenn sie sich nur um ein Vielfaches von n unterscheiden. D.h. a≡b mod n ⇐⇒ n teilt a − b. Wir definieren die zu a gehörige Kongruenzklasse als [a] = {b ∈ Z | a ≡ b mod n} und bezeichnen mit Zn die Menge aller Kongruenzklassen modulo n. Man rechnet leicht nach, dass verschiedene Kongruenzklassen disjunkt sind und Zn endlich ist: Zn = {[0], [1], . . . , [n − 1]}. Ausserdem sind die folgenden Operationen auf Zn wohldefiniert (d.h. unabhängig von der Wahl von speziellen Repräsentanten der Kongruenzklassen) und legen Zn eine Ringstruktur auf: [a1 ] + [a2 ] = [a1 + a2 ] [a1 ] · [a2 ] = [a1 · a2 ] 2. KONGRUENZKLASSEN UND ENDLICHE KÖRPER 43 Der sog. Restklassenring Zn ist kein Körper, wenn n keine Primzahl ist. Im Fall n = n1 n2 mit 2 ≤ n1 , n2 ≤ n − 1 haben wir nämlich die Nullteilerei” genschaft“ [n1 ] 6= [0] 6= [n2 ] und [n1 ] · [n2 ] = [n1 n2 ] = [0], die in einem Körper nicht gegeben ist. Ist n ≥ 2 jedoch eine Primzahl, dann ist jedes [a] 6= [0] invertierbar. Wenn wir nämlich den euklidischen Divisionsalgorithmus bzgl. a und n so ausführen, dass die Reste r immer nichtnegativ sind, erhalten wir ggT (a, n) = 1. Also existieren u, v ∈ Z mit ua + vn = 1 d.h. ua ≡ 1 bzw. [u] · [a] = [1]. S ATZ 3.2. Der Restklassenring Zn ist genau dann ein Körper, wenn n eine Primzahl ist. Als Folgerung ergibt sich KOROLLAR 3.1 ( Kleiner Satz von Fermat“). Für jede Primzahl p und be” liebige natürliche Zahl 1 ≤ a ≤ p − 1 gilt: ap−1 ≡ 1 mod p . Beweis. Wir betrachten die Kongruenzklasse a = [a]. Da Zp \ [0] p − 1 (d.h. insbesondere: endlich viele) Elemente hat, gibt es nur endlich viele verschiedene Potenzen a0 , a1 , a2 , . . . ak−1 . Sei k deren Anzahl und U = {a0 , a1 , . . . ak−1 }. Für jedes b ∈ Zp \ 0 definieren wir U b = {ub | u ∈ U } = {aj b | j = 0, . . . , k − 1}. Da Zp ein Körper ist, rechnet man leicht nach, dass die verschiedenen Klassen U b paarweise disjunkt sind. Sei m deren Anzahl. Wegen [ Zp \ 0 = Ub b6=0 schliessen wir p − 1 = |Zp \ 0| = m · |U | = mk und folglich ap−1 = (ak )m = 1m = 1 ∈ Zp . B EMERKUNG. Unser Beweis des kleinen Satzes von Fermat folgt dem Standardargument für die Feststellung, dass die Ordnung“ eines Elements a einer endli” chen Gruppe“ G ein Teiler der Mächtigkeit |G| der Gruppe ist. ” 44 3. EUKLIDISCHE RINGE 2.1.1. Kryptographie mit öffentlichem Schlüssel. Das zentrale Problem der Kryptographie ist, eine Zahl m ∈ N sicher“ von einem Sender“ zu ei” ” nem Empfänger“ zu übermitteln. Dazu geht man nach folgendem Schema ” vor: m −→ C ! x ! D −→ m . Der Sender kodiert m zu x = C(m) und versendet x. Der Empfänger dekodiert das empfangene x zu m = D(x). Wir müssen befürchten, dass x von Unbefugten abgehört“ werden kann. ” Also sollte man aus der Kenntnis von x möglichst keine Rückschlüsse auf m ziehen können. Aus praktischen Gründen sollte aber andererseits gelten: (KC) x = C(m) ist vom Sender leicht zu berechnen. (KD) m = D(x) ist vom Empfänger leicht zu berechnen. B EMERKUNG. Sollen andere Nachrichten“ als Zahlen übermittelt werden, so ” muss man diese zuerst selber in Zahlen kodieren. Wie das gemacht wird, soll uns hier nicht interessieren. (Dazu gibt es vielfältige (einfache) Methoden.) Das RSA-Verfahren. Das von R IVEST, S HAMIR und A DLEMAN vorgeschlagene sog. RSA-Verfahren geht so vor: (1) Der Empfänger wählt zwei Primzahlen p und q sowie eine Zahl k, die zu p − 1 und zu q − 1 teilerfremd ist (d.h. mod (p − 1)(q − 1) invertierbar ist!). Er gibt die Zahlen k und das Produkt n = pq (aber NICHT die einzelnen Faktoren p und q) bekannt. (2) Der Sender kodiert: x ≡ mk mod n (3) Der Empfänger dekodiert: m0 ≡ xg mod n , wobei g so gewählt ist, dass kg ≡ 1 mod(p − 1)(q − 1). Im Fall 1 ≤ m ≤ n ist leicht einzusehen, dass der Empfänger die versandte Nachricht x korrekt entschlüsselt. Nach Wahl von g gibt es ein t mit der Eigenschaft kg = 1 + t(p − 1)(q − 1) . Also berechnet man xg ≡ (mk )g ≡ m1+t(p−1)(q−1) ≡ m · mt(p−1)(q−1) mod n . Nach dem kleinen Fermatschen Satz gibt es ganze Zahlen p1 und q1 derart, dass [mt(q−1) ](p−1) = 1 + p1 p und [mt(p−1) ](q−1) = 1 + q1 q . Also ist mt(p−1)(q−1) − 1 durch p und durch q (und folglich durch n = pq) teilbar. Das bedeutet mt(p−1)(q−1) ≡ 1 mod n und folglich xg ≡ m · mt(p−1)(q−1) ≡ m · 1 ≡ m mod n . 2. KONGRUENZKLASSEN UND ENDLICHE KÖRPER 45 Das RSA-Verfahren ist praktisch durchführbar, da ein zu der Zahl n0 := (p − 1)(q − 1) teilerfremdes k leicht zu finden ist1. Auch die zur Kodierung und Dekodierung erforderliche Potenzierung ist effizient möglich, wenn man (wie bei Matrixpotenzen) nach der Methode der sukzessiven Quadrierung vorgeht: m, m2 , m4 ≡ (m2 )(m2 ), m8 ≡ (m4 )(m4 ), . . . (mod n) und in jedem Schritt mod n reduziert (um die Zahlen in der Rechnung klein zu halten). B EMERKUNG (FAKTORISIERUNG GANZER Z AHLEN ). Natürlich kann jeder unbefugte Mithörer die Botschaft x ebensogut wie der befugte Empfänger entschlüsseln, wenn er die Faktoren p und q der öffentlich bekannten Zahl n kennt. Es ist gegenwärtig jedoch kein praktisches Verfahren bekannt, das in der Lage wäre, n mit Garantie zu faktorisieren (wenn p und q genügend gross gewählt sind) oder die kte Wurzel zu ziehen. Die Entdeckung eines solchen Verfahrens wäre sensationell! Tatsächlich würde schon ein effizienter Algorithmus genügen, der das folgende Quadratwurzelproblem löst: x2 ≡ 1 mod n (2 ≤ x ≤ n − 2) , falls eine solche Quadratwurzel x überhaupt existiert. (Deren Existenz wird im Fall n = pq, wobei p und q verschiedene ungerade Primzahlen sind, in den Übungen gezeigt.) Aus der Darstellung x2 − 1 = (x − 1)(x + 1) = k · n sieht man dann nämlich, dass x − 1 oder x + 1 mit n einen nichttrivialen gemeinsamen Faktor besitzt, den man mit dem euklidischen Divisionsverfahren schnell berechnen könnte. 2.2. Endliche Körper. Wir haben schon K = Zp (mit p Primzahl) als endlichen Körper kennengelernt. Es soll nun eine Konstruktionsmethode angegeben werden, wie man aus Zp weitere endliche Körper gewinnt. B EMERKUNG. Man kann zeigen, dass nach dieser Methode (bis auf Isomorphie) alle endlichen Körper konstruiert werden können. Aber diese Aussage ist für das Weitere nicht so wichtig. 1 z.B. so: Man nimmt irgendein k ≥ 2 und berechnet t = ggT (k, n0 ). Ist t = 1, so ist k geeignet. Ist 1 < t < k, so ist k/t ≥ 2 teilerfremd zu n0 (und damit geeignet). Ist k = t, so probiert man k + 1 auf die gleiche Weise. Das entsprechende g erhält man dabei gleichzeitig aus dem euklidischen Divisionsverfahren. 46 3. EUKLIDISCHE RINGE Wir betrachten den euklidischen Ring R = Zp [x] aller (formalen) Polynome mit Koeffizienten aus Zp und darin ein festes Polynom p(x) = a0 + a1 x + . . . + an xn (ai ∈ Zp ) vom Grad n = G(p(x)) ≥ 1. p(x) heisst reduzibel (oder faktorisierbar), wenn es Polynome p1 (x), p2 (x) gibt mit der Eigenschaft p(x) = p1 (x)p2 (x) und G(pj (x)) < G(p(x)) (j = 1, 2). Ansonsten ist p(x) irreduzibel. Die irreduziblen Polynome spielen in Zp [x] die gleiche Rolle wie die Primzahlen in Z. Sei also p(x) irreduzibel. Wir nennen die Polynome q1 (x), q2 (x) ∈ R kongruent modulo p(x), wenn sie sich nur um ein Vielfaches von p(x) unterscheiden, d.h. q1 (x) = q2 (x) + h(x)p(x) (h(x) ∈ R). Aus der Eindeutigkeit der Polynomdivision (Lemma 3.2) ersehen wir: L EMMA 3.3. Die Polynome q1 (x), q2 (x) ∈ Zp [x] sind genau dann kongruent modulo p(x), wenn sie nach Division durch p(x) den gleichen Rest r(x) ergeben. Wir definieren nun die entsprechende Kongruenzklassen [q1 (x)] = {q1 (x) + h(x)p(x) | h(x) ∈ Zp [x]} und verifizieren (völlig analog zum Rechnen mit Kongruenzklassen ganzer Zahlen), dass die folgenden Operationen auf der Menge der Kongruenzklassen (modulo p(x)) wohldefiniert sind: [q1 (x)] + [q2 (x)] = [q1 (x) + q2 (x)] [q1 (x)] · [q2 (x)] = [q1 (x) · q2 (x)] Darüberhinaus ist jede Kongruenzklasse [q(x)] 6= [0] invertierbar (da p(x) irreduzibel ist). S ATZ 3.3. Ist p eine Primzahl und p(x) ∈ Zp [x] ein irreduzibles Polynom vom Grad n = G(p(x)) ≥ 1. Dann bildet die Menge GF (pn ) aller Kongruenzklassen von Polynomen modulo p(x) einen Körper mit pn Elementen. Beweis. Wir haben schon festgestellt, dass GF (pn ) ein Körper ist. Wir wählen nun als Repräsentanten der Kongruenzklassen die jeweiligen Reste r(x) = r0 + r1 x + . . . + rn−1 xn−1 der euklidischen Division. Da es pn = |Zp |n verschiedene solche Reste gibt, schliessen wir |GF (pn )| = pn . 2. KONGRUENZKLASSEN UND ENDLICHE KÖRPER 47 Wir illustrieren die Konstruktion im Fall der Primzahl p = 2. E X . 3.2 (GF (4)). Sei K = Z2 der zweielementige Körper. Die beiden Polynome vom Grad 1 sind x und x + 1. Das Polynom p(x) = x2 + x + 1 ist irreduzibel in Z2 [x], denn weder x noch x + 1 teilen p(x). Der Körper GF (22 ) hat 4 Elemente, als deren Repräsentanten wir die Polynome 0, 1, x, x + 1 nehmen. Addition und Multiplikation mod p(x) ergibt die algebraische Struktur von GF (22 ): + 0 1 x x+1 0 0 1 x x+1 1 1 0 x+1 x x x+1 0 1 x x+1 x+1 x 1 0 · 1 x x+1 1 1 x x+1 , x x x+1 1 x+1 x+1 1 x denn es gilt z.B. (x + 1)2 = x2 + x + x + 1 = x + p(x) d.h. (x + 1)2 ≡ x mod p(x) . Wir können natürlich auch neue Symbole einführen und z.B. y = x + 1 setzen. Dann ist GF (4) = {0, 1, x, y} mit der Additions- und Multiplikationstafel + 0 1 x y · 1 x y 0 0 1 x y 1 1 x y 1 1 0 y x x x y 1 x x y 0 1 y y 1 x y y x 1 0 N OTA B ENE : Der vierelementige Körper GF (4) ist nicht zu verwechseln mit dem vierelementigen Ring Z4 ! B EMERKUNG. Es gibt Tabellen, in denen man irreduzible Polyonome (bzgl. dem für die Praxis besonders interessanten Körper Z2 ) für alle praktischen Zwecke nachschlagen kann. Beispiele: p5 (x) = x5 + x3 + 1 oder p9689 (x) = x9689 + x84 + 1 ∈ Z2 [x] . B EMERKUNG. Man kann leicht einsehen, dass die Mächtigkeit |K| eines endlichen Körpers eine Primzahlpotenz sein muss. Dazu addieren wir das Einselement 1 ∈ K so oft, bis wir 0 erhalten: 1 + 1 + . . . + 1 = 0. 48 3. EUKLIDISCHE RINGE Ist das nach p − 1 Additionen der Fall, so muss p eine Primzahl sein (sonst hätte K Nullteiler!). Man verifziert nun, dass Kp = {i · 1 | i = 1, . . . , p} ein Unterkörper von K und K ein Vektorraum endlicher Dimension k = dim K über Kp ist. Also folgt |K| = |Kp |k = pk . 2.2.1. Lateinische Quadrate. Ein lateinisches Quadrat über der Menge M ist eine Matrix L mit n = |M | Zeilen und n = |M | Spalten derart, dass jeder Zeilen- und jeder Spaltenvektor von L eine Permutation der Elemente von M ist. Die Zahl n ist die sog. Ordnung von L. Lateinische Quadrate kann man zu jeder Ordnung n leicht konstruieren: 1 2 3 ... n − 1 n 2 3 4 ... n 1 3 4 5 ... 1 2 .. .. .. .. .. . . . . . n 1 2 ... n − 2 n − 1 Interessanter ist die Frage, zu welcher Ordnung sog. orthogonale lateinische Quadrate existieren. Dabei nennt man die lateinischen Quadrate L1 , L2 orthogonal2, wenn man sie so erhalten kann: Man ordnet die n2 verschiedenen Elemente der Menge M 2 so in einer quadratische Matrix L an, dass L1 genau aus den ersten Komponenten und L2 aus den zweiten Komponenten der Elemente von L erwächst. Zum Beispiel: (0, 0) (1, 2) (2, 4) (3, 1) (4, 3) (1, 1) (2, 3) (3, 0) (4, 2) (0, 4) (2, 2) (3, 4) (4, 1) (0, 3) (1, 0) (3, 3) (4, 0) (0, 2) (1, 4) (2, 1) (4, 4) (0, 1) (1, 3) (2, 0) (3, 2) A LLGEMEINE KONSTRUKTION. Ist K = (M, +, ·) ein (endlicher) Körper mit M = {a0 = 0, a1 , . . . , an−1 }. Zu jedem h ∈ {1, . . . , n − 1} definieren wir ein lateinisches Quadrat: Lh (i, j) := ah · ai + aj (i, j = 0, . . . , n − 1) Man überprüft, dass Lh tatsächlich ein lateinisches Quadrat ist und dass je zwei dieser n − 1 so konstruierten lateinischen Quadrate orthogonal sind. 2 auch oft graeco-lateinische Quadrate, weil man die Elemente von M gerne einmal mit griechischen und einmal lateinischen Buchstaben notiert 2. KONGRUENZKLASSEN UND ENDLICHE KÖRPER 49 Es bezeichne N (n) die maximale Anzahl paarweise orthogonaler lateinischer Quadrate der Ordnung n. Da man zu jeder Primzahlpotenz n = pk einen Körper mit n Elementen konstruieren kann, finden wir N (n) ≥ n − 1 , falls n Primzahlpotenz ist. Andererseits gilt allgemein die obere Schranke: S ATZ 3.4. N (n) ≤ n − 1. Beweis. Es seien L1 , L2 , . . . , Lt t paarweise orthogonale lateinische Quadrate. Wir beobachten zuerst, dass die Orthogonalität erhalten bleibt, wenn wir die Spalten in jedem Quadrat so permutieren, dass in der ersten Zeile die Elemente in der Reihenfolge 123 . . . n stehen. Wir betrachten nun die Elemente an der Position (2, 1) in Lk , k = 1, . . . , t. Keines darf 1 sein, da 1 ja schon in der ersten Spalte an Position (1, 1) vorkommt. Ausserdem müssen alle verschieden sein (sonst würde z.B. das Paar (i, i) beim Übereinanderlegen der entsprechenden Quadrate sowohl in der ersten wie in der zweiten Zeile auftreten, was der Orthogonalität der Quadrate widerspräche). Also gilt t ≤ n − 1. S ATZ 3.5. N (n1 n2 ) ≥ min{N (n1 ), N (n2 )}. Beweis. Sei t = N (n1 ) ≤ N (n2 ). Wir betrachten die Menge aller n1 n2 geordneten Paare M = {ii0 | 1 ≤ i ≤ n1 , 1 ≤ i0 ≤ n2 } . (1) (2) Nach Annahme gibt es jeweils t lateinische Quadrate Lk bzw. Lk auf den Mengen M1 = {1, 2, . . . , n1 } bzw. M2 = {1, 2, . . . , n2 }. Wir bilden daraus t lateinische Quadrate Lk auf M : (1) (2) Lk (ii0 , jj 0 ) := (Lk (i, j), Lk (i0 , j 0 )) , k = 1, . . . , t . Man verifiziert nun, dass die Lk tatsächlich lateinische Quadrate und paarweise orthogonal sind. Wir haben oben festgestellt, dass für Primzahlpotenzen n = pk gilt: N (pk ) = pk − 1 . Ist n eine allgemeine ungerade natürliche Zahl, so folgern wir aus Satz 3.5: N (n) ≥ N (3) = 2 . Da der 4-elementige Körper GF (4) existiert, finden wir allgemeiner N (n) ≥ 2 für alle n 6≡ 2 mod 4 , 50 3. EUKLIDISCHE RINGE da in diesen Fällen n ungerade ist oder 4 als Teiler besitzt. (Für den Fall n ≡ 2 mod 4 beachte man die folgende Bemerkung.) B EMERKUNG (E XISTENZ ORTHOGONALER LATEINISCHER Q UADRATE ). Aus der Relation 6 ≡ 2 mod 4 ergibt sich das kleinste (interessante) lateinische Quadrat mit n = 6. Hier hatte schon E ULER vermutet, dass kein Paar orthogonaler lateinischer Quadrate existiert, was durch TARRY um 1900 (durch vollständiges Enumerieren aller potentiellen Kandidaten) bestätigt wurde. E ULER hatte allerdings ebenso die Nichtexistenz auch in allen andern Fällen n = 10, 14, 18, ... usw. vermutet. B OSE , S HRIKHANDE und PARKER konnten jedoch 1960 für alle diese Ordnungen paarweise orthogonale Quadrate konstruieren! Die meisten übrigen konkreten Fragen um orthogonale lateinische Quadrate sind offen. Zum Beispiel konnten bisher noch keine 3 paarweise orthogonalen lateinischen Quadrate der Ordnung n = 10 konstruiert werden. Magische Quadrate. Eine mit n2 verschiedenen Zahlen gefüllte (n×n)-Matrix M ist ein sog. magisches Quadrat, wenn alle Zeilen, Spalten und Diagonalen dieselbe Summe ergeben (das Quadrat ist halbmagisch, wenn diese Eigenschaft nur für die Zeilen und Spalten gefordert wird). Zum Beispiel3: 16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1 Wie L. E ULER entdeckt hat, kann man halbmagische Quadrate M einfach konstruieren, wenn man von zwei orthogonalen Quadraten L1 und L2 mit den jeweiligen Einträgen 0, 1, . . . , n − 1 ausgeht: Man setzt M (i, j) := 1 + L1 (ij) + n · L2 (ij) (i, j, = 1, . . . n) . M ist ein magisches Quadrat, wenn L1 und L2 die lateinische“ Bedingung (alle ” Elemente sind paarweise verschieden) auch auf den Diagonalen erfüllen. 2.2.2. Projektive Ebenen. Wir betrachten eine Menge P von Punkten und eine Menge L von Teilmengen L ⊆ P mit |L| ≥ 2, die wir Geraden nennen. Inzidenzgeometrien. Das Paar G = (P, L) ist eine Inzidenzgeometrie, wenn für alle L, L0 ∈ L und p 6= p0 ∈ P gilt (IG.0) L 6= P. (IG.1) Es gibt (mindestens) eine Gerade L(p, p0 ) ∈ L derart, dass {p, p0 } ⊆ L(p, p0 ). (IG.2) |L ∩ L0 | ≥ 2 =⇒ L = L0 . 3 von A. Dürer auf seinem Stich M ELENCOLIA im Jahr 1514 festgehalten und z.B. im Kölner Wallraff-Richartz-Museum zu besichtigen! 2. KONGRUENZKLASSEN UND ENDLICHE KÖRPER 51 Wegen (IG.2) ist die Gerade L(p, p0 ) in (IG.1) durch die Punkte p, p0 eindeutig bestimmt. Im Fall {q} = L ∩ L0 wird der Punkt q der Schnittpunkt der Geraden L und L0 genannt. Zu jedem p ∈ P induziert die Menge {L ∈ L | p ∈ L} aller Geraden durch p offensichtlich eine Partition der Menge P\{p}. (IG.0) besagt, dass diese Partition nicht trivial (d.h. hier: nur aus einem Block bestehend) ist. Projektive Ebenen. Die Inzidenzgeometrie Π = (P, L) ist eine sog. projektive Ebene, wenn zusätzlich gilt: (PG.3) Es gibt 4 Punkte, von denen keine 3 auf einer gemeinsamen Geraden liegen. (PG.4) L ∩ L0 6= ∅ für alle L, L0 ∈ L. B EMERKUNG. (PG.3) ist das sog. Reichhaltigkeitsaxiom, das triviale Konfigurationen als projektive Ebenen“ ausschliessen soll. ” E X . 3.3 (Vektorräume). Der Prototyp einer projektiven Ebene Π(K) entsteht aus einem 3-dimensionalen Vektorraum V über einem Körper K: Als Punktemenge P nimmt man sämtliche 1-dimensionalen und als Geradenmenge L alle 2-dimensionalen Teilräume. Dass Π(K) die Eigenschaften einer projektiven Ebene besitzt, sieht man am leichtesten mit der Dimensionsformel. Zum Beispiel hat man für L 6= L0 ∈ L: 4 = dim L + dim L0 = dim(L ∪ L0 ) + dim(L ∩ L0 ) = 3 + dim(L ∩ L0 ) und deshalb dim(L ∩ L0 ) = 1, d.h. L ∩ L0 ∈ P. E X . 3.4 (Fano-Ebene). Die projektive Ebene Π(Z2 ) heisst Fano-Ebene. L EMMA 3.4. Sei Π = (P, L) eine endliche projektive Ebene. Dann gilt |P| = |L| und |L| = |L0 | für alle L, L0 ∈ L. Beweis. Seien L und L0 beliebige Geraden. Wegen (PG.3) gibt es einen Punkt p∗ ∈ / 0 ∗ L ∪ L . Ist nun p ∈ L ein beliebiger Punkt auf L, so hat die Gerade L(p , p) einen Schnittpunkt p0 mit L0 . Wegen L(p∗ , p) = L(p∗ , p0 ) ist die Zuordnung eindeutig und umkehrbar: p∈L ←→ p0 ∈ L0 d.h. |L| = |L0 | . 52 3. EUKLIDISCHE RINGE Ist n + 1 = |L|, so zeigt dieses Argument, dass durch p∗ genau n + 1 Geraden verlaufen. Jede dieser Geraden hat (ausser p∗ ) n weitere Punkte. Also erhalten wir ingesamt |P| = (n + 1)n + 1 = n2 + n + 1 . Ebenso verlaufen durch jeden Punkt p ∈ L (ausser L) n Geraden. Folglich ergibt sich gleichermassen |L| = n2 + n + 1 . Man sagt, die projektive Ebene Π = (P, L) hat Ordnung n, wenn auf jeder Geraden von G genau n + 1 Punkte liegen. O RTHOGONALE LATEINISCHE Q UADRATE VON PROJEKTIVEN E BENEN . Aus der projektiven Ebene Π = (P, L) der Ordnung n ≥ 3 kann man n − 1 paarweise orthogonale lateinische Quadrate konstruieren. Wir betrachten eine feste Gerade L = {p1 , . . . , pn+1 }. Zu jedem Punkt pj numerieren wir die n Geraden (ausser L) durch pj mit den Zahlen 1, 2, . . . , n (irgendwie). Damit hat jede Gerade (ausser L) eine Nummer erhalten. Wir numerieren nun die n2 Punkte qi ∈ / L mit den Zahlen 1, 2, . . . , n2 und 2 definieren die (n × (n + 1))-Matrix A = (aij ) wobei aij := Nummer der Geraden L(qi , pj ) . Wir behaupten, dass die ersten zwei Spalten von A alle n2 Paare (i, j), 1 ≤ i, j ≤ n enthalten. Denn wäre dem nicht so, dann gäbe es Paare (ai1 , ai2 ) = (ak1 , ak2 ) mit i 6= k , d.h qi und qk liegen auf der Geraden L0 , die p1 und auf einer Geraden L00 , die p2 enthält. Da eine Gerade durch zwei Punkte festgelegt ist, müsste L0 = L00 = L gelten, was aber qi , qk ∈ / L widerspräche! Jede der n − 1 Spalten j = 3, . . . , n + 1 ergibt nun ein lateinisches Quadrat Lj vermöge Lj (ai1 , ai2 ) := aij . Wie bei den ersten beiden Spalten verifiziert man ohne Schwierigkeiten, dass je zwei dieser lateinischen Quadrate orthogonal sind. B EMERKUNG (E XISTENZ PROJEKTIVER E BENEN ). Ist K ein endlicher Körper mit |K| = n Elementen, so erkennt man n leicht als genau die Ordnung der projektiven Ebene, die man aus dem 3-dimensionalen Koordinatenraum über K konstruieren kann. Man weiss nicht, ob es endliche projektive Ebenen gibt, deren Ordnung n keine Primzahlpotenz ist. Der kleinste Kandidat n = 6 scheidet aus, weil es in diesem Fall ja nicht einmal ein Paar orthogonaler lateinischer Quadrate gibt. Beim nächsten Kandidaten, n = 10, konnte schliesslich 1989 (mit Computerbeistand 2. KONGRUENZKLASSEN UND ENDLICHE KÖRPER 53 bei der extrem aufwendigen Suche nach speziellen Teilkonfigurationen) gezeigt werden, dass keine projektive Ebene dieser Ordnung existieren kann. Alle anderen Fälle sind offen. KAPITEL 4 Geordnete Mengen Während bisher algebraische Beschreibungen von kombinatorischen Konfigurationen untersucht wurden, konzentrieren wir uns nun auf ordnungstheoretische Aspekte. (Über die Inzidenzalgebra kann diese Betrachtungsweise allerdings oft vorteilhaft wieder in einen algebraischen Rahmen gebracht werden (s. Abschnitt 2).) Die Menge M heisst bzgl. der (binären) Relation ≤“ (teilweise oder halb-) ” geordnet, falls für alle x, y, z ∈ M gilt: (O.1) x ≤ x (O.2) x ≤ y und y ≤ x ⇐⇒ x = y. (O.3) x ≤ y und y ≤ z =⇒ x ≤ z. In diesem Fall nennen wir P = (M, ≤) eine Halbordnung1 (oder einfach eine Ordnung). Man notiert abkürzend x<y ⇐⇒ x ≤ y und x 6= y . Gilt zusätzlich zu (O.1)-(O.3) für alle x, y ∈ M : (O.4) x ≤ y oder y ≤ x, so ist M (bzgl. P ) linear (oder total bzw.vollständig) geordnet. P wird dann auch Kette (oder Turm) genannt. E X . 4.1. Die Menge N der natürlichen Zahlen ist z.B. (total) geordnet durch die übliche Grössenbeziehung m≤n :⇐⇒ n − m ist positiv . Eine andere wichtige Ordnungrelation auf N ist durch die Teilbarkeit gegeben: m ≤ n :⇐⇒ m teilt n (symbolisch: m|n). In Bezug auf die Teilbarkeitsordnung sind z.B. die Zahlen 3 und 5 nicht vergleichbar, da keine die jeweils andere teilt. Diese Relation erfüllt also (O.4) nicht. 1 fortschrittliche Zeitgenossen benutzen auch gerne die im Englischen übliche Abkürzung poset“ (= partially ordered set), die sich im Deutschen aber recht merkwürdig ” ausnimmt. 55 56 4. GEORDNETE MENGEN E X . 4.2. Ist M ein System von Teilmengen einer Menge M , so trägt M eine natürliche Ordnung durch die Enhaltenseinsrelation: S≤T :⇐⇒ S⊆T . Auch hier ist (O.4) im allgemeinen nicht erfüllt. E X . 4.3. Sei M ⊆ Qn eine Menge von n-dimensionalen Koordinatenvektoren. Dann kann man M als durch Komponentenvergleich geordnet auffassen: (x1 , . . . , xn ) ≤ (y1 , . . . , yn ) :⇐⇒ xi ≤ yi (i = 1, . . . , n) . Wiederum gilt typischerweise (O.4) nicht (wie man z.B. anhand von x = (10, 2) und y = (−1, 3) in Q2 sofort sieht) . Gilt für die Elemente x, y ∈ P weder x ≤ y noch y ≤ x, so heissen sie unvergleichbar. Eine Menge, die nur aus paarweise unvergleichbaren Elementen besteht, ist eine sog. Antikette. Offenbar kann man jede Menge zu einer Halbordnung machen, indem man einfach jedes Paar von Elementen als unvergleichbar“ erkärt (d.h. trivial ordnet“). ” ” 1. Darstellung von Ordnungen Als Beispiele von Ordnungen haben wir oben Mengensysteme bzgl. der Enthaltenseinsrelation gegeben. In einem gewissen Sinn sind diese typisch“, ” da man jede Ordnung P = (M, ≤) so darstellen kann: Zu jedem x ∈ M definieren wir das von x erzeugte Ideal als Id(x) = {y ∈ M | y ≤ x} und betrachten M = {Id(x) | x ∈ M }. Dann ist klar: y ≤ x in (M, ≤) ⇐⇒ Id(y) ⊆ Id(x) in (M, ⊆) . Ist die P zugrunde liegende Menge M endlich, so bieten sich auch andere Darstellungmöglichkeiten an. Inzidenzmatrix. Man repräsentiert P = (M, ≤) durch die Inzidenzmatrix AP = (aij ) ∈ QM ×M , wobei ( 1 falls i ≤ j in P , aij = 0 sonst. Hassediagramm. Wir sagen x ∈ P ist ein oberer Nachbar von y ∈ P , falls y ≤ x gilt, es aber kein Element z gibt mit der Eigenschaft y<z<x. 1. DARSTELLUNG VON ORDNUNGEN 57 Das Hassediagramm von P = (M, ≤) ist nun die Matrix HP = (aij ) ∈ QM ×M , wobei ( 1 falls j oberer Nachbar von i in P , aij := 0 sonst. Wir beobachten im endlichen Fall: x < y gilt in P genau dann, wenn es Elemente x = z0 < z1 < . . . < zk = y gibt derart, dass zi+1 oberer Nachbar von zi ist. (Im unendlichen Fall gilt dies nicht unbedingt, wie das Beispiel P = (Q, ≤) sofort zeigt.) B EMERKUNG. Das Hassediagramm einer endlichen Ordnung wird oft bildlich dargestellt, indem man die Elemente als Punkte zeichnet und Paare von Nachbarn mit (gerichteten) Pfeilen verbindet. Zeichnet man so geschickt, dass ein oberer Nachbar“ auch bildlich immer über“ sei” ” nen unteren Nachbarn angesiedelt ist, so kann man im Hassediagramm statt Pfeilen einfach Liniensegmente nehmen. Beispiel (Kette): o | o .. . o | o 1.1. Lineare Erweiterungen. Sei wieder M eine endliche Menge mit |M | = n Elementen. Eine Permutation π der Elemente von M können wir uns einfach als gewisse lineare“ Anordnung ( Liste“ ) der Elemente von ” ” M bzw. eine bijektive Abbildung π : M → {1, 2, . . . , n} vorstellen, bei der π(x) angibt, an welcher Stelle der Liste x auftritt. Haben wir nun k solcher Listen π1 , . . . , πk , so ordnen wir jedem x ∈ M den Vektor x = (π1 (x), . . . , πk (x)) ∈ Qk zu. Durch die komponentenweise genommene Ordnung dieser Vektoren wird eine Halbordnung P = (M, ≤) auf M induziert: y≤x :⇐⇒ πi (y) ≤ πi (x) (i = 1, . . . , k) . In diesem Sinn ergibt sich P als der sog. Durchschnitt der linearen Ordnungen π1 , . . . , πk auf M . 58 4. GEORDNETE MENGEN B EMERKUNG. Der Durchschnitt von Ordnungen hat durchaus eine mengentheoretische Interpretation: Die Ordnungen P1 = (M, ≤1 ) und P2 = (M, ≤2 ) repräsentieren wir durch die Mengen der jeweils vergleichbaren Paare Pi = {(x, y) | x ≤i y} (i = 1, 2) und definieren x≤y ⇐⇒ (x, y) ∈ P1 ∩ P2 (d.h.: x ≤1 y und x ≤2 y) . Man sieht leicht: P = (M, ≤) ist eine Ordnung mit P = {(x, y) | x ≤ y} = P1 ∩ P2 . Wir wollen nun zeigen: Jede endliche Ordnung P = (M, ≤) ist ein Durchschnitt von endlich vielen linearen Ordnungen. Dazu betrachten wir sog. lineare Erweiterungen von P , nämlich Bijektionen π : M → {1, 2, . . . , n} mit der Eigenschaft x ≤ y in P =⇒ π(x) ≤ π(y) in Q . Ist π eine lineare Erweiterung von P und erfüllt x ∈ M die Bedingung π(x) = 1, so muss x notwendigerweise ein minimales Element von P sein (d.h. es gibt kein y mit y < x in P ). Damit ist klar, wie man lineare Erweiterungen π konstruiert: • Man beginnt mit irgendeinem minimalen Element x von P und setzt π(x) := 1 • Dann wählt man irgendein minimales Element y der von P auf M \ {x} induzierten Teilordnung und setzt π(y) := 2 usw. bis alle Elemente zugewiesen sind. L EMMA 4.1. P = (M, ≤) ist der Durchschnitt aller linearen Erweiterungen π von P . Beweis. Von der Definition her ist klar, dass P im Durchschnitt aller linearen Erweiterungen liegt. Wäre nun P ungleich dem Durchschnitt, so gäbe es Elemente x 6= y ∈ M , die in P zwar unvergleichbar sind aber dennoch die Eigenschaft haben π(x) < π(y) für alle linearen Erweiterungen π. Das ist jedoch unmöglich, wie man leicht per Induktion einsieht. Ist nämlich x das einzige minimale Element von P , so gilt x < y. Gibt es ein minimales Element z 6= x, so gibt es auch eine lineare Erweiterung, die mit z beginnt. Insbesondere ist z 6= y. Also folgt die Behauptung schon aus der Induktionsannahme bzgl. P \ {z}. 1. DARSTELLUNG VON ORDNUNGEN 59 Ordnungsdimension. Wir definieren nun als die (Ordnungs-)Dimension der Ordnung P = (M, ≤) die Zahl dim P = min {k | P ist Durchschnitt von k linearen Erweiterungen} . dim P = 1 bedeutet also gerade, dass P eine Kette ist. Eine Antikette A mit n ≥ 2 Elementen hat immer Ordnungsdimension dim A = 2, denn A ist offenbar ein Durchschnitt von π1 = (x1 , x2 , . . . , xn−1 , xn ) und π2 = (xn , xn−1 , . . . , x2 , x1 ) . B EMERKUNG. Ist P ⊆ Qk eine endliche Teilmenge mit der komponentenweisen Ordnung, so gilt dim P ≤ k , wie man durch die Projektionen von P auf die k Koordinatenachsen von Qk erkennen kann. Folglich ist allgemein dim P auch die kleinste (Vektorraum-) Dimension k, die eine ordnungserhaltende Einbettung einer Ordnung P = (M ≤) in Qk gestattet (Details in den Übungen). Das Stanley-Polyeder. Wir fassen nun die endliche Grundmenge M = {1, 2, . . . , n} als Indexmenge des Vektorraums Rn auf. Dann ist das sog. Stanley-Polyeder der Ordnung P = (M, ≤P ) Π(P ) = {(x1 , . . . , xn ) ∈ Rn | i ≤P j =⇒ 0 ≤ xi ≤ xj ≤ 1} . Π(P ) ist also die Lösungsmenge des linearen Ungleichungssystems xi − xj ≤ 0 wennimmer i ≤P j xi ≤ 1 xi ≥ 0 und damit eine Teilmenge des n-dimensionalen Würfels [0, 1]n der Seitenlänge 1 und des Volumens 1. Zu einer beliebigen Permutation π von M betrachten wir Π(π) = {(x1 , . . . , xn ) ∈ Rn | π(i) ≤ π(j) =⇒ 0 ≤ xi ≤ xj ≤ 1} . Da eine Permutation der Koordinaten die Volumina unverändert lässt, zerlegen die Polyeder Π(π) den Würfel [0, 1]n in n! Teile gleichen Volumens. Also gilt 1 vol Π(π) = . n! B EMERKUNG. Sind π 6= π 0 verschiedene Permutationen der Elemente von M , so existieren i, j ∈ M mit π(i) < π(j) aber π 0 (i) > π 0 (j). Also gilt für alle Vektoren x = (x1 , . . . , xn ) ∈ Π(π) ∩ Π(π 0 ): xi = xj . 60 4. GEORDNETE MENGEN D.h.: Π(π) ∩ Π(π 0 ) liegt in der Hyperebene {x ∈ Rn |xi = xj } und hat deshalb vol (Π(π) ∩ Π(π 0 )) = 0. Insbesondere erhalten wir [ Π(P ) = {Π(π) | π lineare Erweiterung von P } und damit die Darstellung von Stanley: (9) Anzahl der linearen Erweiterungen von P = n! vol Π(P ) B EMERKUNG. Die Stanleybeziehung (9) führt die Bestimmung der Anzahl der linearen Erweiterungen einer endlichen Ordnung auf die Berechnung des Volumens eines scheinbar einfachen Polyeders zurück. Allerdings ist gegenwärtig kein allgemeines algorithmisches Verfahren bekannt, mit dem die Anzahl der linearen Erweiterungen einer Ordnung effizient berechnet werden könnte. Daraus folgt: Es ist kein allgemeines Verfahren zur effizienten Berechnung von Volumina von Polyedern bekannt. (Es gibt natürlich viele spezielle Polyeder (Würfel, Quader, Parallelepipede, Dreiecke, . . .), deren Volumen effizient ermittelt werden kann.) Ein paar Beispiele von interessanten Ordnungen mit kleiner Ordnungsdimension folgen. 1.1.1. Serienparallele Ordnungen. Für die Ordnungen P1 = (M1 , ≤1 ) und P2 = (M2 , ≤2 ) auf den disjunkten Mengen M1 und M2 definieren wir auf M = M1 ∪M2 die sog. Serienverknüpfung P1 ⊕P2 durch die Festlegung x, y ∈ M1 und x ≤1 y, x ≤ y :⇐⇒ x, y ∈ M2 und x ≤2 y, x ∈ M und y ∈ M . 1 2 Die Parallelverknüpfung P1 kP2 ist auf M1 ∪ M2 definiert durch ( x, y ∈ M1 und x ≤1 y, x ≤ y :⇐⇒ x, y ∈ M2 und x ≤2 y. Bei der Parallelverknüpfung bleiben also Elemente aus M1 und M2 unvergleichbar. Bei der Serienverknüpfungen sind alle Elemente aus M2 grösser als die Elemente aus M1 . Ansonsten werden die Ordnungsrelationen von P1 und P2 beibehalten. Per Definition ist eine 1-elementige Ordnung (die man sowohl als Ket” te“ als auch als Antikette“ auffassen könnte) serien-parallel. Rekursiv de” finieren wir nun P als serien-parallel, falls es serien-parallele Ordnungen 1. DARSTELLUNG VON ORDNUNGEN 61 P1 und P2 gibt mit der Eigenschaft P = P1 ⊕ P2 oder P = P1 kP2 . Per Induktion ist nun bei endlichen Ordnungen P leicht einzusehen (Details in den Übungen): P serienparallel =⇒ dim P ≤ 2 . B EMERKUNG ( N“). Nicht jede 2-dimensionale Ordnung ist serien-parallel, wie ” das sog. N , d.h. die folgende Ordnung auf 4 Elementen zeigt: c d ↑ - ↑ a b (d.h. a < c, b < c, b < d) Jede serienparallele Ordnung ist N -frei, d.h. kann kein N als induzierte Teilordnung besitzen, da weder die Serien- noch die Parallelverknüpfung von N -freien Ordnungen ein N erzeugen kann. Tatsächlich stellt sich heraus, dass N -frei“ und serienparallel“ dasselbe ” ” bedeutet, dass also serienparallele Ordnungen durch verbotene Unterstrukturen charakterisiert werden können. P ROPOSITION 4.1. Die endliche Ordnung P ist N -frei genau dann, wenn P serienparallel ist. Beweis. Wir haben schon gesehen, dass eine serienparalle Ordnung N -frei ist. Sei also P N -frei. Wir argumentieren per Induktion und betrachten zu jedem x ∈ P die Menge aller Nachfolger N (x) := {y | x < y} . Sind nun a und b zwei minimale (und damit inbesondere unvergleichbare) Elemente von P , so muss gelten N (a) ∩ N (b) = ∅ oder N (a) = N (b) . Denn gäbe es ein c ∈ N (a) ∩ N (b) und etwa ein d ∈ N (b) \ N (a), dann hätten wir ja ein N als Teilordnung vorliegen. Hat nun P genau ein einziges minimales Element a, so ist P offensichtlich eine Serienverknüpfung von a und P 0 = P \ {a}. Da auch P 0 N -frei ist, folgt die Behauptung per Induktion über die Anzahl der Elemente von P . Gibt es zwei minimale Elemente a und b mit N (a) = N (b), so können wir a und b zu einem Element a0 = {a, b} verschmelzen, um eine Ordnung P 0 zu erhalten, die wieder N -frei ist. Per Induktionsvoraussetzung kann P 0 entweder in eine Serienoder eine Parallelverknüpfung zerlegt werden. Diese Zerlegung liefert offenbar eine entsprechende Zerlegung von P . 62 4. GEORDNETE MENGEN Im letzten verbleibenden Fall gibt es minimale Elemente a1 , . . . , ak mit k ≥ 2 und N (ai ) ∩ N (aj ) = ∅ für alle i 6= j. Folglich zerfällt P parallel in: P = {a1 } ∪ N (a1 ) k {a2 } ∪ N (a2 ) k . . . k {ak } ∪ N (ak ) . 1.1.2. Intervallordnungen. Die Ordnung P = (M, ≤P ) heisst Intervallordnung, wenn wir jedem x ∈ M ein Intervall (ax , bx ) von rationalen Zahlen zuordnen können derart, dass gilt x <P y ⇐⇒ bx < ay , wenn also das x zugeordnete Intervall ganz vor“ dem y-Intervall liegt. ” B EMERKUNG. Intervallordnungen treten typisch in der Messtheorie auf: Jedem Element x einer Menge M sei ein Parameterwert f (x) ∈ Q zugeordnet. Wir wollen die Elemente von M nach ihren Parameterwerten ordnen. Wenn f (x) im Rahmen der Messgenauigkeit nur durch eine Untergrenze ax und eine Obergrenze bx präzisiert werden kann, so kann x < y nur dann mit Sicherheit behauptet werden, wenn bx < ay gilt. D.h.: Auf M wird durch die Messungenauigkeit bzgl. der f -Parameter eine Intervallordnung induziert. Betrachten wir die Nachfolgermengen N (x) = {y | x < y} der Intervallordnung P , so beobachten wir nun für alle x, y: (10) N (x) ⊆ N (y) oder N (y) ⊆ N (x) , je nach dem, ob by ≤ bx oder bx ≤ by gilt. Wir können uns also die Elemente der endlichen Grundmenge M = {x1 , . . . , xn } so numeriert vorstellen, dass gilt N (x1 ) ⊇ N (x2 ) ⊇ . . . ⊇ N (xn ) . Die Eigenschaft (10) ist äquivalent mit der Forderung, dass P nicht die folgende (4-elementige) Ordnung als Teilordnung enthält: (11) c | a d | b (a < c, b < d) . Damit lassen sich auch Intervallordnungen durch verbotene Unterstrukturen charakterisieren. P ROPOSITION 4.2. Die endliche Ordnung P = (M, ≤) ist eine Intervallordnung genau dann, wenn P nicht (11) als induzierte Teilordnung besitzt (bzw. wenn Eigenschaft (10) vorliegt). 2. INZIDENZALGEBRA 63 Beweis. Es habe P die Eigenschaft (10). Wir zeigen (per Induktion über |P |, dass P eine Intervallordnung ist. Im 1-elementigen Fall |P | = 1 ist das klar. Sei also |P | ≥ 2. Wir betrachten ein minimales Element x1 und P 0 = P \{x1 }. Nach Induktionsvoraussetzung ist P 0 eine Intervallordnung. Sicherlich können wir bei der Intervalldarstellung von P 0 annehmen, dass die den minimalen Elementen zugeordneten Intervalle alle denselben Anfangspunkt, sagen wir 0“, haben. ” Wir weisen nun x1 das Intervall (ax1 , bx1 ) = (−3, −1) zu. Das entspräche der Serienverknüpfung von x1 und P 0 . Gibt es minimale Elemente y in P 0 , die in P nicht mit x1 vergleichbar sind, so modifizieren wir deshalb die Anfangspunkte der Intervalle (ay , by ) von ay = 0 in ay = −2 (und belassen by jeweils wie es war). Wegen N (x1 ) ⊇ N (x2 ) ⊇ . . . haben wir nach dieser Modifikation eine Intervalldarstellung von P erreicht. B EMERKUNG. Der obige Beweis zeigt, dass eine Intervallordnung immer mit Intervallen, deren Endpunkte ganzzahlig sind, dargestellt werden kann. Semiordnungen. Eine Intervallordnung P heisst Semiordnung, wenn eine Intervalldarstellung existiert, bei der alle Intervalle dieselbe Länge haben. Man kann zeigen, dass die Dimension einer Semiordnung P höchstens 3 ist (Details als Übung). (Ohne Beweis: Es ist bekannt, dass die Dimension von Intervallordnungen schlechthin nicht durch eine allgemeine Konstante beschränkt werden kann.) 2. Inzidenzalgebra Das Modell geordneter Mengen erlaubt eine direkte Verallgemeinerung des Ringes der formalen Potenzreihen. Dazu betrachten wir eine Ordnung P = (M, ≤), wobei wir annehmen: Jedes Intervall bzgl. P [x, y] := {z ∈ M | x ≤ z ≤ y} ist immer eine endliche Teilmenge . E X . 4.4. Ist M endlich, so natürlich auch jedes Intervall [x, y] bzgl. P . Sei nun speziell M = N \ {0}. Ist P = (N, ≤) die gewöhnliche Ordnungsrelation, so besteht [x, y] gerade aus den Zahlen, die zwischen x und y liegen. Ist P = (M, |) die Teilbarkeitsordnung, so umfasst [x, y] genau die natürlichen Zahlen , die Vielfache von x und gleichzeitig Teiler von y sind. Sei nun K ein Körper (z.B. K = Q oder allgemeiner K = C). Die Inzidenzalgebra I(P ) besteht per Definition aus allen Funktionen ϕ : M ×M → K mit der Eigenschaft ϕ(x, y) = 0 falls x 6≤ y . 64 4. GEORDNETE MENGEN Sind ϕ, ψ ∈ I(P ) und λ ∈ K, so natürlich auch ϕ + ψ und λϕ. Wir definieren das Produkt ρ = ϕ ∗ ψ durch die folgende naheliegende Verallgemeinerung der Konvolution X ρ(x, y) = ϕ(x, z) · ψ(z, y) , x≤z≤y die wegen der obigen Endlichkeitsannahme über die Intervalle bzgl. P wohldefiniert ist. Damit ist I(P ) ein Ring mit Einselement δ, wobei ( 1 falls x = y, δ(x, y) = 0 sonst. B EMERKUNG. I(P ) verallgemeinert die formalen Potenzreihen z.B. im folgenden Sinn. Wir betrachten P = (N, ≤) mit der gewöhnlichen Ordnungsrelation. Der Potenzreihe ∞ X f (x) = ak xk (ak ∈ K) k=0 ordnen wir die Funktion ϕf ∈ I(N, ≤) zu, die so definiert ist ( an−m falls m ≤ n, ϕf (m, n) = 0 sonst. P∞ k Es gilt immer ϕf (m, n) = ϕf (0, n − m). Ist g(x) = k=0 bk x eine weitere Potenzreihe, so ergibt die Konvolution X X ϕf ∗ ϕg (0, n) = ϕf (0, k)ϕg (k, n) = ak bn−k 0≤k≤n 0≤k≤n und stimmt mit der entsprechenden Konvolution der Potenzreihen überein. ζ-Funktion und Möbiusfunktion. Fundamental in I(P ) ist die Zeta-Funktion ζ (die einfach die Idee der Inzidenzmatrix von P verallgemeinert): ( 1 falls x ≤ y, ζ(x, y) = 0 sonst. Die Funktion ζ ist in I(P ) invertierbar. Das heisst: Es gibt eine Funktion µ ∈ I(P ) mit der Eigenschaft µ∗ζ =δ . Die Existenz von µ ersieht man aus der Eigenschaft, die µ haben müsste: X µ(x, z) = δ(x, y) . x≤z≤y 2. INZIDENZALGEBRA 65 Wir definieren nun einfach µ(x, x) = 1 für alle x ∈ P und erhalten im Fall x < y wegen δ(x, y) = 0 die rekursive Beziehung X µ(x, y) = − µ(x, z) , x≤z<y die den Wert µ(x, y) eindeutig festlegt. Ist z.B. y ein oberer Nachbar von x in P , so ist [x, y] = {x, y} und wir erhalten µ(x, y) = −µ(x, x) = −1 . (12) Ist [x, y] = {x = x0 < x1 < . . . < xk = y} eine Kette mit k ≥ 2, so finden wir allgemeiner rekursiv: µ(x0 , x0 ) = 1 µ(x0 , x1 ) = −1 µ(x0 , x2 ) = 0 .. . µ(x0 , xk ) = 0 Die zu ζ inverse Funktion µ ∈ I(P ) ist als Möbiusfunktion bekannt. Produkte von Ordnungen. Nehmen wir an, wir haben zwei Ordnungen P1 = (M1 , ≤1 ) und P2 = (M2 , ≤2 ) und definieren auf dem direkten Produkt M = M1 × M2 die Ordnung P = P1 × P2 = (M1 × M2 , ≤) (komponentenweise) über (x1 , x2 ) ≤ (y1 , y2 ) ⇐⇒ x1 ≤1 y1 und x2 ≤2 y2 . Dann erhalten wir die Möbiusfunktion µ ∈ I(P1 × P2 ) als das Produkt der Möbiusfunktionen µ1 ∈ I(P1 ) und µ2 ∈ I(P2 ): µ[(x1 , x2 ), (y1 , y2 )] = µ1 (x1 , y1 ) · µ2 (x2 , y2 ) . (13) Im Fall (x1 , x2 ) = (y1 , y2 ) hat das Produkt ja den Wert 1. Im Fall (x1 , x2 ) < (y1 , y2 ) rechenen wir einfach nach: X µ1 (x1 , z1 )µ2 (z2 , y2 ) (x1 ,x2 )≤(z1 ,z2 )≤(y1 ,y2 ) = = X X µ1 (x1 , z1 )µ2 (z2 , y2 ) X µ1 (x1 , z1 ) µ2 (z2 , y2 ) = 0 . x1 ≤X 1 z 1 ≤ 1 y 1 x2 ≤ 2 z 2 ≤ 2 y 2 x1 ≤ 1 z 1 ≤ 1 y 1 x2 ≤ 2 z 2 ≤ 2 y 2 66 4. GEORDNETE MENGEN wie es die rekursive Eigenschaft der Möbiusfunktion verlangt. Aus der multiplikativen Eigenschaft (13) kann man in vielen Fällen die Möbiusfunktion explizit berechnen. Wir betrachten zwei Beispiele. E X . 4.5 (Potenzmenge). Sei M eine Menge mit |M | = n Elementen und der Potenzmenge P ot(M ). Wir betrachten die Ordnung P = (P ot(M ), ⊆) der Enthaltenseinsrelation auf der Menge aller Teilmengen von M . Die Darstellung der Teilmengen durch ihre charakteristischen Vektoren, d.h. die Identifizierung P ot(M ) ←→ {0, 1}n = {0, 1} × {0, 1} × . . . × {0, 1} zeigt sofort: µ(∅, M ) = µ(0, 1)n = (−1)|M | . Sind allgemeiner S ⊆ T Teilmengen von M , so entspricht das Intervall [S, T ] in P im wesentlichen der Potenzmenge der Differenzmenge T \ S. Wir schliessen deshalb: (14) µ(S, T ) = µ(∅, T \ S) = (−1)|T |−|S| E X . 4.6 (Multimengen). Das vorangehende Beispiel können wir sofort verallgemeinern mit der Ordnung P = (Nn , ≤), d.h. Nn = N × N × . . . × N mit der komponentenweisen Ordnung der Vektoren x = (x1 , . . . , xn ) ∈ Nn . Ein solcher Vektor x kann als Multimenge über einer n-elementigen Grundmenge aufgefasst werden, wobei das erste Element x1 mal, das zweite Element x2 mal usw. ausgewählt wird. Jedes Intervall bzgl. P ist ein Produkt von Ketten (nämlich Intervallen in N): [x, y] = [x1 , y1 ] × [x2 , y2 ] × . . . × [xn , yn ] Deshalb gilt µ(x, y) = µ(x1 , y1 )µ(x2 , y2 ) . . . µ(xn , yn ), d.h. ( 0 falls ein i existiert mit yi − xi ≥ 2, µ(x, y) = Qn yi −xi sonst. i=1 (−1) Wir beobachten: µ(x, y) = µ(0, y − x), d.h. der Wert µ(x, y) hängt nur vom Differenzvektor y − x ab. 2. INZIDENZALGEBRA 67 E X . 4.7 (Teilerverband). Wir betrachten nun die natürlichen Zahlen (ohne 0) mit der Teilbarkeitsordnung: P = (N \ {0}, |). Stellen wir die natürliche Zahl n ≥ 1 als Produkt von Primzahlen pi dar: n = pα1 1 pα2 2 . . . pαk k (αi ∈ N) , so ergeben sich die Teiler d von n (d.h. die Elemente des Intervalls [1, n]) genau als die Zahlen der Form d = pβ1 1 pβ2 2 . . . pβkk (0 ≤ βi ≤ αi ) . Schreiben wir y = (α1 , . . . , αk ), so entsprechen den Teilern d von n die Vektoren x = (β1 , . . . , βk ) mit x ≤ y (als Multimengen“ betrachtet). ” Folglich berechnet sich die Möbiusfunktion wie bei Multimengen: falls n = 1, 1 (15) µ(1, n) = 0 falls ein i existiert mit αi ≥ 2, (−1)k sonst. Ist m ein Teiler von n, so haben wir natürlich auch hier µ(m, n) = µ(1, n/m) . In der Zahlentheorie ist es deshalb üblich, die Möbiusfunktion als eine Funktion zu schreiben, die nur von einer Variablen abhängt: (n ≥ 1) . µ(n) = µ(1, n) B EMERKUNG (D IE R IEMANNSCHE ζ -F UNKTION ). Wir betrachten als erzeugende Funktion“ für die Koeffizienten a1 , a2 , . . . die Funktion f (s) = ∞ X an n=1 ns . Der Spezialfall a1 = a2 = . . . = 1 ergibt dann (formal) Riemanns Funktion ζ(s) = ∞ X 1 . ns n=1 Die (formale) Multiplikation solcher Reihen führt auf ∞ X an ∞ ∞ X X X bn cn · = , wobei c = ad bn/d . n ns ns ns n=1 n=1 n=1 d|n P Insbesondere erhalten wir (wegen d|n µ(d) = 0 falls n ≥ 2): ∞ X µ(n) n=1 ns ∞ X 1 · = 1 ns n=1 d.h. ∞ X 1 µ(n) = . ζ(s) ns n=1 ” 68 4. GEORDNETE MENGEN 2.1. Möbiusinversion und Prinzip von Inklusion-Exklusion. Sei nun P = (M, ≤) eine Ordnung, bezüglich welcher alle Intervalle endlich sind. Zu der gegebenen K-wertigen Funktion f :M →K definieren wir die dazugehörige summatorische Funktion F ∈ I(P ) per X F (x, y) = f (z) . x≤z≤y F ist eine Art Integral“ von f bzgl. der Ordnung P . Wie man (in Analogie ” zur Differentialrechnung) vermuten würde, kann man f aus F zurückgewinnen. S ATZ 4.1 (Möbiusinversion). Sei F ∈ I(P ) die summatorische Funktion von f : M → K. Dann gilt für alle x ≤ y: X X f (x) = µ(x, z)F (z, y) bzw. f (y) = F (x, z)µ(z, y) . x≤z≤y x≤z≤y Beweis. Wir setzen f formal zu einer Funktion der Inzidenzalgebra fort, indem wir definieren: ( f (x) falls x ≤ y, f (x, y) = 0 sonst. Dann haben wir F = ζ ∗ f und folglich f = ζ −1 ∗ F = µ ∗ F . Das heisst: X f (x) = f (x, y) = µ(x, z)F (z, y) . x≤z≤y Die zweite Gleichung folgt analog aus f = f ∗ ζ ∗ µ = F ∗ µ, wobei ( f (y) falls x ≤ y, f (x, y) = 0 sonst. E X . 4.8. Wegen der Inversionsrelation f =G∗µ ⇐⇒ f ∗ζ =G haben wir G(x, y) = X x≤z≤y f (x, z)ζ(z, y) = X f (z) = F (x, y) . x≤z≤y Das heisst: Nur die summatorische Funktion F führt per Möbiusinversion wieder zurück auf die Ausgangsfunktion f . 2. INZIDENZALGEBRA 69 Nehmen wir z.B. P als die Potenzmenge einer n-elementigen Menge M mit der Enthaltenseinsordnung, und betrachten eine Funktion, die jeder Teilmenge S ⊆ M eine Zahl f (S) zuweist, so erhalten wir die summatorische Funktion X F (S) = F (S, M ) = f (T ) S⊆T und erhalten per Möbiusinversion X X f (S) = µ(S, T )F (T ) = (−1)|T |−|S| F (T ) . S⊆T S⊆T Der Spezialfall S = ∅ liefert das sog. Prinzip der Inklusion-Exklusion, mit der folgenden Siebformel: X (16) (−1)|T | F (T ) f (∅) = T ⊆M E X . 4.9. In einer Gruppe von 73 Leuten spielen 52 Klavier, 25 Geige, 10 Flöte, 17 Klavier und Geige, 12 Klavier und Flöte, 7 Geige und Flöte. Genau eine Person beherrscht alle 3 Instrumente. Wieviele Personen spielen kein Instrument? Wir betrachten M = {kl, ge, f l} und definieren für S ⊆ M den Wert f (S) als die Anzahl der Leute, die genau die Instrumente in S spielen. Für die summatorische Funktion ergibt sich dann: F (∅) F (kl) F (ge) F (f l) F (kl, ge) F (kl, f l) F (ge, f l) F (kl, ge, f l) = = = = = = = = 73 52 25 19 17 12 7 1 Daraus berechnet sich die gesuchte Zahl nach (16) als f (∅) = 73 − (52 + 25 + 19) + (17 + 12 + 7) − 1 = 12 . E X . 4.10 (Eulersche Φ-Funktion). Sei n ≥ 2 eine natürliche Zahl mit den k verschiedenen Primfaktoren p1 , p2 , . . . , pk . Wir suchen die Anzahl Φ(n) = {m | 1 ≤ m ≤ n, ggT (m, n) = 1} 70 4. GEORDNETE MENGEN der zu n teilerfremden kleineren Zahlen m. Dazu wählen wir M = {p1 , p2 , . . . , pk } und definieren für alle Teilmengen S ⊆ M den Wert f (S) als die Anzahl der Zahlen m ≤ n, die genau die Zahlen in S als Teiler haben. Die summatorische Funktion X F (S) = f (T ) S⊆T zählt dann die Anzahl der Vielfachen ≤ n des Produktes der Zahlen in S. D.h.: n F (∅) = n und F (pi1 , . . . , pis ) = pi1 . . . pis Daraus ergibt sich die Darstellung 1 1 1 1 1 + + . . . + ) + n( + + . . .) − p1 p2 pk p1 p2 p1 p3 1 1 1 −n( + + . . .) + n( + . . .) − . . . p1 p2 p3 p1 p2 p4 p1 p2 p3 p4 1 1 1 1− ... 1 − . = n 1− p1 p2 pk Φ(n) = f (∅) = n − n( Ist d ≥ 1 ein Teiler von n mit einem (mindestens) quadratisch auftretenden Primfaktor, so verschwindet die Möbiusfunktion (bzgl. der Teilbarkeitsordnung): µ(d) = 0. Deshalb können wir die obige Darstellung auch so schreiben: X n X n Φ(n) = µ(d) = mµ . d m d|n m|n Dies bedeutet, dass Φ(n) per Möbiusinversion aus der Funktion ( n wenn m | n F (m, n) = 0 sonst. gewonnen wird. Folglich ist F die summatorische Funktion von Φ und wir erhalten: X φ(d) = F (1, n) = n . d|n 2.2. Kettenkomplexe. Sei P = (P, ≤) eine endliche (Halb-)Ordnung. Wir betrachten die Familie ∆ = ∆(P ) aller Ketten von P . ∆ ist der sog. Kettenkomplex von P und hat die Eigenschaft K∈∆ =⇒ K 0 ∈ ∆ für alle K 0 ⊆ K. 2. INZIDENZALGEBRA 71 Es erweist sich als bequem, P mit einem neuen minimalen Element 0̂ und einem neuen maximalen Element 1̂ zu der Ordnung P̂ zu erweiteren. Mit ci bezeichnen wir die Anzahl der Ketten der Form 0̂ = x0 < x1 < . . . < xi−1 < xi = 1̂. Also haben wir c0 = 0 und c1 = 1. Im Fall i ≥ 2 ist ci die Anzahl der Ketten in P mit i−1 Elementen (bzw. die Anzahl der Mengen der Mächtigkeit i−1 im Kettenkomplex ∆). Es sei an die ζ-Funktion und die δ-Funktion erinnert, die in der Inzidenzalgebra einer Ordnung das Einselement darstellt. Mit κ = ζ − δ gilt 1 wenn x < y κ(x, y) = ζ(x, y) − δ(x, y) = 0 sonst. Also gilt κ2 (x, y) = X X κ(x, z)κ(z, y) = x<z<y 1 x<z<y und allgemeiner κi (x, y) = X 1, d.h. κi (0̂, 1̂) = (ζ − δ)i (0̂, 1̂) = ci . x<x1 <...<xi−1 <y P ROPOSITION 4.3 (Abstrakte Eulerformel). Es gilt: µP̂ (0̂, 1̂) = c0 − c1 + c2 − c3 + . . . Beweis. Da µ zu ζ invers ist, finden wir µP̂ (0̂, 1̂) = ζ −1 (0̂, 1̂) = (δ + κ)−1 (0̂, 1̂) = δ(0̂, 1̂) − κ(0̂, 1̂) + κ2 (0̂, 1̂) − κ3 (0̂, 1̂) + . . . = c0 − c1 + c2 − c3 + . . . Wir nennen den Parameter (17) χ(∆) = µP̂ (0̂, 1̂) + 1 = c2 − c3 + c4 − . . . die Eulercharakeristik des Kettenkomplexes ∆ = ∆(P ). B EMERKUNG. (17) stellt einen wichtigen Zusammenhang zwischen der algebraischen Topologie und der diskreten Mathematik her. 72 4. GEORDNETE MENGEN 3. Verbände Sei V = (M, ≤) eine geordnete Menge und x, y, z ∈ V drei Elemente. Wir nennen z das Supremum (oder die Verbindung) von x und y (und notieren z = x ∨ y), falls x ≤ z, y ≤ z und für alle w ∈ V gilt: x ≤ w und y ≤ w ⇐⇒ z≤w. x ∨ y ist also das eindeutig bestimmte kleinste Element, das sowohl grösser als x wie grösser als y ist. Dual dazu nennen wir z das Infimum (oder den Schnitt) von x und y (und schreiben z = x ∧ y) falls z ≤ x, z ≤ y und für alle w ∈ V gilt: z ≤ x und z ≤ y ⇐⇒ w≤z. Man sieht leicht (z.B. bei der Ordnung N ), dass im allgemeinen weder das Supremum noch das Infimum existieren muss. Wir nennen die Ordnung V einen Verband, wenn x ∨ y und x ∧ y existiert zu allen x, y ∈ V . Zum Beispiel ist (Q, ≤) mit der üblichen Ordnung ein Verband, wobei x ∨ y = max{x, y} und x ∧ y = min{x, y}. E X . 4.11 (Teilerverband). Die natürlichen Zahlen (ohne 0) bilden unter der Teilbarkeitsordnung einen Verband (N \ {0}, |), wobei Supremum und Infimum genau dem kleinsten gemeinsamen Vielfachen und dem grössten gemeinsamen Teiler entsprechen: m ∨ n = kgV (m, n) und m ∧ n = ggT (m, n). E X . 4.12 (Potenzmengenverband). Die Potenzmenge (P ot(M ), ⊆) der Menge M bildet einen Verband bzgl. der Enthaltenseinsordnung mit S ∨ T = S ∪ T und S ∧ T = S ∩ T . E X . 4.13 (Unterraumverband). Ebenso bildet die Menge (L(V), ⊆) aller linearen Teilräume des Vektorraums V einen Verband, wobei die verbandstheoretische Verbindung von Unterräumen ihre Summe und ihr Schnitt ihr mengentheoretischer Durchschnitt ist: S ∨ T = S + T = {s + t | s ∈ S, t ∈ T } und S ∧ T = S ∩ T . 3. VERBÄNDE 73 Der Verband V heisst beschränkt, wenn V ein eindeutig bestimmtes maximales Element (das meist als 1“ notiert wird) und ein eindeutig bestimmtes ” minimales Element (als 0“ notiert) besitzt. ” B EMERKUNG. Einen Verband kann man immer in einen beschränkten Verband einbetten, indem man einfach zwei neue Elemente 0 und 1 formal so hinzufügt, dass für alle Elemente x gilt: 0 ≤ x ≤ 1. Zum Beispiel ist (Q, ≤) nicht beschränkt, kann aber durch Hinzunahme von −∞“ und ” +∞“ beschränkt werden: ” −∞ ≤ x ≤ ∞ (x ∈ Q = Q ∪ {−∞, ∞}) . 3.1. Rangfunktionen. Sei V ein Verband und x ∈ V beliebig. Dann definieren wir den Rang r(x) = 0, wenn x das minimale Element von V ist. Ansonsten ist r(x) die Mächtigkeit einer längsten Kette mit maximalem Element x: r(x) = max{k ∈ N | es gibt xi ∈ V mit x0 < . . . < xk−1 < x}. Wir nennen V rangendlich, wenn r(x) < ∞ für alle x ∈ V gilt. Insbesondere ist natürlich jeder endliche Verband auch rangendlich. Offenbar besitzt jeder rangendliche Verband ein minimales Element. Denn x0 < . . . < xk−1 < x 0 ≤ r(x0 ) ≤ r(x) − k, =⇒ d.h. r(x) = k impliziert r(x0 ) = 0. E X . 4.14. Ist V der Verband aller linearen Teilräume eines endlich-dimensionalen Vektorraums V, dann entspricht der Rang genau der linearen Dimension: r(X) = dim X für alle linearen Teilräume X ⊆ V. E X . 4.15. Sei V das System aller endlichen Teilmengen einer Grundmenge M . Dann ist V vereinigungs- und schnittstabil, d.h. es gilt: A ∪ B, A ∩ B ∈ V für alle A, B ∈ V . V ist rangendlich mit der Rangfunktion r(X) = |X| für alle X ∈ V . 74 4. GEORDNETE MENGEN 3.2. Irreduzible Elemente. Ein Element p des Verbandes V = (V, ≤) heisst ∨-irreduzibel, falls p in V höchstens einen unteren Nachbarn hat. Mit J = J(V ) bezeichnen wir die Menge der ∨-irreduziblen Elemente von V (die möglicherweise leer sein kann). Dual dazu nennen wir p∗ ∈ V ∧irreduzibel, wenn p∗ in V höchstens einen oberen Nachbarn besitzt. J ∗ = J ∗ (V ) sei die Menge der ∧-irreduziblen Elemente. E X . 4.16. Im Teilerverband N \ {0} = (N \ {0}, |) ist ein Element n ∨irreduzibel, wenn es nicht grösstes gemeinsames Vielfaches von zwei kleineren natürlichen Zahlen ist. 1 ist als minimales Element ∨-irreduzibel. Ansonsten sind genau die Primzahlen ∨-irreduzibel. Im Potenzmengenverband P ot(M ) = (P ot(M ), ⊆) umfasst J(P ot(V )) genau die leere Menge ∅ und die einelementigen Teilmengen {m}. Bei vielen Verbänden sind die irreduziblen Elemente Elementarbaustei” ne“ im folgenden Sinn: L EMMA 4.2. Sei V ein rangendlicher Verband. Dann gibt es zu jedem v ∈ V (endlich viele) p1 , . . . , pk ∈ J(V ) mit der Eigenschaft v = p1 ∨ p2 ∨ . . . ∨ pk . Beweis. Im Fall v ∈ J(V ) ist nichts zu beweisen. Im Fall v ∈ / J(V ) haben wir v > 0 und wissen, dass es mindestens zwei verschiedene untere Nachbarn v 0 , v 00 < v geben muss. Wegen v = v 0 ∨ v 00 und r(v 0 ), r(v 00 ) < r(v) folgt nun die Behauptung sofort per Induktion über den Rang. 3.3. Distributivität. Analog zur Sprechweise der Algebra heisst z.B. der (möglicherweise nicht beschränkte) Verband V distributiv, falls für alle Elemente x, y, z ∈ V gilt: x ∧ (y ∨ z) = (x ∧ y) ∨ (x ∧ z) (bzw. in der Notation mit + “ und · “: x(y + z) = xy + xz ). ” ” E X . 4.17. Der Teilerverband (N \ {0}, |) ist distributiv, aber nicht beschränkt. Denn man verfiziert a ∧ (b ∨ c) = ggT (a, kgV (b, c)) = kgV ggT (a, b), ggT (a, c) = (a ∧ b) ∨ (a ∧ c). Der Potenzmengenverband (P ot(M ), ⊆) ist beschränkt und distributiv. Denn nach de Morgan gilt das Distributivgesetz A ∩ (B ∪ C) = (A ∩ B) ∪ (A ∩ C). 3. VERBÄNDE 75 Der Unterraumverband (L(V), ⊆) eines Vektorraums V ist beschränkt, jedoch nicht distributiv. Allgemeine Konstruktion. Für unsere Zwecke typische“ distributive Verbände ” erhält man so: Man betrachtet eine (nichtleere) Familie F von Teilmengen einer (beliebigen) Menge M , die schnittstabil ist, d.h. A∩B ∈F gilt für alle A, B ∈ F und bildet das System D = D(F) aller Teilmengen D ⊆ M , die sich als Vereinigung von endlich vielen Mengen aus F schreiben lassen: D = F1 ∪ . . . ∪ Fk (F1 , . . . , Fk ∈ F). Mit Hilfe der de Morganschen Rechenregeln rechnet man nun leicht nach, dass (D, ⊆) auch vereinigungsstabil ist. Mit den Operationen ∪“ und ∩“ ” ” bildet D folglich einen distributiven Verband. B EMERKUNG. Ein schnittstabiles Mengensystem F ist nicht unbedingt schon selber ein Verband. Beispiel: M = {a, b, c} und F = {{a}, {a, b}, {a, c}}. F erzeugt jedoch den distributiven Mengenverband D = {{a}, {a, b}, {a, c}, {a, b, c}}. 3.4. Rangendliche distributive Verbände. In einem beliebigen Verband V mit der Menge J(V ) von verbindungsirreduziblen Elementen gilt für alle x, y ∈ V : J(x ∧ y) = J(x) ∩ J(y) und J(x ∨ y) ⊇ J(x) ∪ J(y) (mit J(x) = {p ∈ J(V ) | p ≤ x}). Die Relation kann im distributiven Fall verschärft werden. L EMMA 4.3. Ist V distributiv, gilt J(x∨y) = J(x)∪J(y) für alle x, y ∈ V . Beweis. Sei z ∈ J(x ∨ y). Dann ergibt das Distributivitätsgesetz: z = z ∧ (x ∨ y) = (z ∧ x) ∨ (z ∧ y). Da z ∨-irreduzibel ist, gilt z = z ∧ x oder z = z ∧ y, d.h. z ≤ x oder z ≤ y. Ist V rangendlich, dann wissen wir: x = Lemma erhalten wir somit W J(x). Als Folgerung aus dem 76 4. GEORDNETE MENGEN S ATZ 4.2 (Birkhoff). Sei V ein rangendlicher distributiver Verband. Dann ist V isomorph zu dem distributiven Mengensystem J über der Grundmenge M = J(V ), wobei J = {J(x) | x ∈ V } ⊆ P ot(M ). KOROLLAR 4.1. Sei der Verband V rangendlich und distributiv. Dann gilt r(x) = |J(x)| − 1 für alle x ∈ V . Insbesondere ist jede Menge J(x) endlich. Beweis. Wir argumentieren per Induktion über den Rang r(x). Im Fall r(x) = 0 haben wir x = 0. Wegen |J(0)| = |{0}| = 1 ist die Behauptung also richtig. Sei nun n = r(x) ≥ 1. Wir betrachten x0 < x mit r(x0 ) = n − 1. Wir wissen, dass es ein p ∈ J(x) \ J(x0 ) geben muss mit x = x0 ∨ p. Somit haben wir J(x) = J(x0 ) ∪ J(p). Sei nun q ∈ J(p) \ {p} beliebig. Wäre q 6≤ x0 , hätten wir x0 < x0 ∨ q ≤ x und folglich x = x0 ∨ q. Aber dann ergäbe sich der Widerspruch J(x) = J(x0 ) ∪ J(q) 63 p. Also schliessen wir J(x) = J(x0 ) ∪ {p} und r(x) = r(x0 ) + 1 = |J(x)| − 1. 4. Valuationen Eine Valuation auf dem Verband V ist eine (reellwertige) Gewichtung µ : V → R mit der Eigenschaft µ(x ∨ y) + µ(x ∧ y) = µ(x) + µ(y). Zum Beispiel ist jede konstante Funktion trivialerweise eine Valuation. Auf dem Verband aller endlich-dimensionalen linearen Teilräume eines reellen Vektorraums V ist die Dimensionsfunktion eine Valuation, denn für Teilräume S und T gilt die Dimensionsformel dim(S + T ) + dim(S ∩ T ) = dim S + dim T. Ebenso ist die Rangfunktion eines rangendlichen distributiven Verbandes eine Valuation. 4. VALUATIONEN 77 4.1. Valuationen rangendlicher distributiver Verände. Sei V ein rangendlicher distributiver Verband mit Menge P = J(V ) von ∨-irreduziblen Elementen. Wir betrachten eine beliebige Funktion w = P → R und definieren X µw (x) = w(p) für alle x ∈ V . p∈J(x) Man sieht leicht, dass µw eine Valuation ist, denn wir finden X µw (x ∨ y) = w(p) p∈J(x)∪J(y) = X p∈J(x) w(p) + X X w(p) − p∈J(y) w(p) p∈J(x)∩J(y) = µw (x) + µw (y) − µw (x ∧ y). Tatsächlich erhält man jede Valuation auf V so. Wir zeigen zuerst, dass eine Valuation durch ihre Werte auf der Halbordnung P = (J(V ), ≤) eindeutig festgelegt ist. L EMMA 4.4. Seien µ und ν Valuationen auf dem rangendlichen distributiven Verband V und P = (J(V ), ≤). Dann gilt µ=ν ⇐⇒ µ(p) = ν(p) für alle p ∈ P . Beweis. Die Bedingung ist trivialerweise notwendig. Wir zeigen, dass sie für die Gleichheit von µ und ν auch hinreicht. Wegen J(0) = {0} gilt µ(0) = ν(0). Angenommen, das Lemma wäre falsch, dann gäbe es ein x > 0 mit µ(x) 6= ν(x). Wir führen diese Annahme zum Widerspruch. Dazu wählen wir ein entsprechendes x von minimalem Rang r(x) > 0 und betrachten ein x0 < x mit r(x0 ) = r(x) − 1. Bekanntlich gibt es nun ein p ∈ J(x) mit J(x) = J(x0 ) ∪ {p}. Daraus folgt der Widerspruch µ(x) = µ(x0 ∨ p) = µ(x0 ) + µ(p) − µ(x0 ∧ p) = ν(x0 ) + ν(p) − ν(x0 ∧ p) = ν(x) . P ROPOSITION 4.4. Sei µ eine Valuation auf dem rangendlichen distributiven Verband V mit Irreduziblenmenge P = J(V ). Dann existiert eine eindeutig bestimmte Gewichtung w : P → R derart, dass µ = µw . Beweis. Wir definieren w(0) = µ(0) und setzen für p ∈ P \ {0} w(p) = µ(p) − µ(p0 ), wobei p0 < p der eindeutig bestimmte untere Nachbar von p in V ist. Wie im Beweis von Lemma 4.4 zeigt man nun (per Induktion über den Rang r(x)), dass µw (x) = µ(x) gilt. 78 4. GEORDNETE MENGEN 4.2. Die Eulercharakteristik. Auf dem rangendlichen distributiven Verband V mit P = J(V ) definieren wir eine spezielle Valuation e : P → R folgendermassen: wenn p = 0 P0 e(p) = 1 − p0 <p e(p0 ) wenn p > 0 Die durch e induzierte Valuation χ : V → R hat die Eigenschaft χ(0) = 0 und χ(p) = 1 für alle p ∈ P \ {0}. und heisst Eulercharakteristik von V . S ATZ 4.3 (Rota). Auf dem rangendlichen distributiven Verband V existiert eine eindeutig bestimmte Valuation χ : V → R mit der Eigenschaft χ(0) = 0 und χ(p) = 1 für alle p ∈ P \ {0}. 4.3. Unabhängigkeitssysteme und Simplizialkomplexe. Unter einem Unabhängigkeitssystem über der Grundmenge M versteht man eine endliche Familie ∆ von Teilmengen von M mit der Eigenschaft X∈∆ =⇒ X 0 ∈ ∆ für alle X 0 ⊆ X. Aus der Endlichkeit von ∆ folgt, dass jedes X ∈ ∆ selber eine endliche Teilmenge von M sein muss. In der Sprache der Topologie ist ein Unabhängigkeitssystem ein Simplizialkomplex. Zum Beispiel ist ein Kettenkomplex einer endlichen Ordnung ein Simplizialkomplex. Die Vereinigung ∆1 ∪∆2 und der Durchschnitt ∆1 ∩∆2 der Simplizialkomplexe ∆1 , ∆2 sind Simplizialkomplexe. Das System D aller Simplizialkomplexe (über M ) bildet folglich einen distributiven Verband. D ist rangendlich (da ein Simplizialkomplex nur endlich viele Unterkomplexe gestattet). Die verbindungsirreduziblen Elemente von D sind die Simplizialkomplexe der Form X = P ot(X) = {X 0 | X 0 ⊆ X} (X endliche Teilmenge von M ). Ein solches System X heisst Simplex. Ein Simplizialkomplex ∆ ist also einfach eine Vereinigung von endlich vielen Simplexen Xi : ∆ = X1 ∪ . . . ∪ Xk . 4. VALUATIONEN 79 Die Eulercharakteristik (bzgl. D = D(M )) ist die eindeutig bestimmte Funktion χ : D → R mit den Eigenschaften χ({∅}) = 0 χ(∆) = 1 für jeden Simplex ∆ 6= {∅} χ(∆1 ∪ ∆2 ) + χ(∆1 ∩ ∆2 ) = χ(∆1 ) + χ(∆2 ). Um zu zeigen, dass diese Definition im Fall von Kettenkomplexen mit der dafür eingeführten Eulercharakteristik übereinstimmt, leiten wir eine allgemeine Eulerformel für Simplizialkomplexe her. Sei ∆ ein fester Simplizialkomplex. Für jedes X ∈ ∆ setzen wir 0 wenn X = ∅ 0 e (X) = (−1)|X|−1 sonst und erhalten dann die induzierte Gewichtung der Simplexe X X e(X) = e0 (Y ) = (−1)|Y |−1 Y ⊆X = ∅6=Y ⊆X |X| |X| |X| − + − ... = 1 . 1 2 3 e0 induziert somit genau die Eulercharakeristik χ. Daraus folgt die Eulerformel X e0 (X) = f1 − f2 + f3 − . . . (18) χ(∆) = X∈∆ mit fi = |{X ∈ ∆ | |X| = i}| (i = 1, 2, . . .). 4.4. Planare Graphen. Zwei (verschiedene) Punkte x, y ∈ R2 bestimmen eine Kante [x, y] = {z = x + λ(y − x) | 0 ≤ λ ≤ 1} mit den Knoten (Endpunkten) x, y. Unter einem (geometrischen) Graphen G verstehen wir eine endliche Menge E von Kanten mit Knotenmenge V. Um Knoten und Kanten deutlich zu machen, benutzen wir die Notation G = (V, E). G heisst plan, wenn zusätzlich gilt: • je zwei Kanten G sind entweder disjunkt oder schneiden sich genau in einem gemeinsamen Knoten. B EMERKUNG (G EOMETRISCHE UND KOMBINATORISCHE G RAPHEN ). Wir reden hier von geometrischen“ Graphen, weil wir von einer Darstellung in der ” Ebene R2 ausgehen. Allgemeiner kann man kombinatorische“ Graphen definie” ren als Inzidenzstrukturen G = (V, E; I), wobei V und E endliche Mengen sind I 80 4. GEORDNETE MENGEN eine Funktion ist, die jeder Kante e ∈ E eine ein- oder zweielementige Teilmenge I(e) ⊆ V zuordnet. Im Fall I(e) = {x} ist e eine sog. Schlinge, die mit dem Knoten x ∈ V inzidiert. Im Fall I(e) = {x, y} interpretiert man die Knoten x, y ∈ V als die Endpunk” te“ von e. Planare Graphen. Man nennt einen kombinatorischen Graphen G = (V, E) planar, wenn es einen planen Graphen G = (V, E) gibt, dessen Inzidenzstruktur bzgl. der Knoten und Kanten zu der von G isomorph ist. Man sagt dann auch, G sei eine Einbettung von G in R2 . Kantenzüge und Kreise. Ein Kantenzug von x nach y ist eine Menge K ⊆ R2 derart, dass es Punkte x0 , . . . , xn gibt mit x0 = x, y = xn und K= n−1 [ [xi , xi+1 ]. i=0 Im Fall y = x nennt man K geschlossen. K ist einfach, wenn (ausser möglicherweise x = y) alle Punkte xi paarweise verschieden sind. Ein einfacher geschlossener Kantenzug K, der nur aus Kanten des Graphen G besteht, ist ein Kreis von G: K = [x0 , x1 ] ∪ . . . ∪ [xn−1 , xn ] ([xi , xi+1 ] ∈ E, x0 = xn ). L EMMA 4.5 (Kreislemma). Sei G = (V, E) ein Graph mit |E| ≥ 1. Dann besitzt G entweder einen Kreis oder eine freie Kante (d.h. eine Kante e ∈ E mit einem Knoten x ∈ e, der in keiner anderen Kante von G auftritt). Beweis. Wir beginnen bei einem beliebigen Knoten x1 ∈ V mit einer Kante e1 = [x1 , x2 ] ∈ E. Ist x2 in keiner weiteren Kante enthalten, so ist e1 unabhängig. Ansonsten existiert eine Kante e2 = [x2 , x3 ] ∈ E und wir können nun x3 in gleicher Weise untersuchen usw. Da V endlich ist, wird man nach endlich vielen Schritten entweder eine freie Kante gefunden haben oder zu einem Knoten xj gekommen sein, den man schon in einem früheren Schritt i als Knoten xi untersucht hatte. Im letzteren Fall ist ein Kreis K gefunden: K = [xi , xi+1 ] ∪ . . . ∪ [xj−1 , xi ]. Zusammenhang. Wir nennen allgemein eine Menge Z ⊆ R2 zusammenhängend, wenn je zwei x, y ∈ Z durch einen Kantenzug K ⊆ Z erreichbar sind. Der Graph G heisst zusammenhängend, wenn je zwei Knoten von G durch einen Kantenzug verbunden werden können, der nur aus Kanten von G besteht. Offenbar ist ein zusammenhängender geometrischer Graph G auch eine zusammenhängende Menge. 4. VALUATIONEN 81 L EMMA 4.6. Sei G = (V, E) ein zusammenhängender Graph und e ∈ E entweder eine freie Kante oder eine Kante, die in einem Kreis von G auftritt. Dann ist auch der Graph G 0 mit Kantenmenge E 0 = E \ {e} zusammenhängend. Flächen und die Eulersche Formel. Sei nun G ein fester planer Graph und Punkte x, y ∈ R2 \ G gegeben. Wir nennen x und y G-äquivalent, wenn x und y durch einen Kantenzug K ⊆ R2 \ G verbunden werden können. Die diesbezüglichen Äquivalenzklassen F sind die Flächen von G. R2 zerfällt also in eine eindeutige Partition R2 = G ∪ F1 ∪ . . . ∪ Fk aus den paarweise disjunkten Flächen F1 , . . . , Fk und G selber. Da G (als Teilmenge von R2 betrachtet) beschränkt ist, besitzt G genau eine unbeschränkte Fläche. E X . 4.18. Ist G = K ein Kreis mit mindestens einer Kante, so besteht die Partition genau aus 3 Komponenten: R2 = G ∪ F1 ∪ F2 , wobei F1 die (beschränkte) Innenfläche und K die (unbeschränkte) Aussenfläche bzgl. K ist. Sei k = [x, y] eine beliebige Kante in K und E 0 = {e ∈ K | e 6= k}. Dann definiert E 0 einen Graphen G 0 , der nur noch eine Fläche F 0 besitzt, da die Punkte in F2 von F1 nun über von G 0 disjunkte Kantenzüge erreichbar sind: R2 = G 0 ∪ F 0 . Bzgl. G = (V, E) betrachten wir nun die Parameter f1 = |V| f2 = |E| f3 = Anzahl der Flächen von G Wir definieren die Eulercharakteristik von G als χ(G) = f1 − f2 + f3 . S ATZ 4.4 (Euler [1752]). Ist der plane Graph G = (V, E) zusammenhängend, dann gilt (19) χ(G) = f1 − f2 + f3 = 2. 82 4. GEORDNETE MENGEN Beweis. (Per Induktion über f2 .) Im Fall f2 = |E| = 1 haben wir f1 = 2, und f3 = 1, d.h. χ(G) = 2. Im Fall |E| ≥ 2 suchen wir Kante e ∈ E, die entweder frei ist oder in einem Kreis von G auftritt, und betrachten den zusammenhängenden planen Graphen G 0 = G \ {e} mit den Parametern f10 , f20 , f30 . Ist e frei, so gilt f10 = f1 − 1, f20 = f2 − 1 und f30 = f3 , d.h. χ(G) = (f1 − 1) − (f2 − 1) + f3 = χ(G 0 ) = 2. Liegt e in einem Kreis, so haben wir f10 = f1 , f20 = f2 − 1 und f30 = f3 − 1. Die Eulersche Formel folgt somit analog per Induktion. KOROLLAR 4.2. Sei G = (V, E) ein planarer Graph mit n ≥ 3 Knoten und m Kanten. Dann gilt m ≤ 3n − 6. Beweis. OBdA betrachten wir eine plane Einbettung G = (V, E) von G. Jede Fläche von G wird von einem einfachen Kreis von G begrenzt. Da jeder Kreis aus mindestens 3 Kanten besteht und jede Kante im Rand von höchstens 2 verschiedenen Flächen auftritt, haben wir 3f3 ≤ 2m = 2f2 . Aus der Eulerschen Formel f1 − f2 + f3 = 2 ergibt sich somit 3f1 − f2 ≥ 6 d.h. 3n ≥ m + 6. KOROLLAR 4.3. Sei G = (V, E) ein planarer Graph mit n Knoten und m Kanten. Dann existiert (mindestens) ein Knoten, der mit höchstens 5 Kanten inzident ist. Beweis. Wäre jeder Knoten mit mindestens 6 Kanten inzident, so hätten wir den Widerspruch 6n ≤ 2m ≤ 6n − 12. E X . 4.19 (Kuratowski-Graphen). Mit K5 bezeichnet man den kombinatorischen Graphen auf 5 Knoten, bei dem jedem Paar von Knoten eine Kante entspricht. K3,3 ist der Graph mit der 6-elementigen Knotenmenge V = V1 ∪ V2 mit |V1 | = |V2 | = 3, wobei genau die Paarmengen {v1 , v2 } mit v1 ∈ V1 und v2 ∈ V2 Kanten repräsentieren. K5 kann wegen 3n − 6 = 9 < 10 = m nicht planar sein. In K3,3 besteht jeder einfach Kreis aus mindestens 4 Kanten. Gäbe es eine plane Einbettung 4. VALUATIONEN 83 K3,3 , so hätte man 4f3 ≤ 2f2 und folglich 2f3 ≤ 9. Nach der Eulerformel muss aber gelten: f3 = 2 − f1 + f2 = 5. Also sind weder K5 noch K3,3 planar. B EMERKUNG (S ATZ VON K URATOWSKI [1930]). Kuratowski hat gezeigt, dass jeder nichtplanare Graph entweder K5 oder K3,3 enthält. Diese Graphen sind also die eindeutig bestimmten minimalen“ nichtplaneren Graphen. ” B EMERKUNG (T RIANGULIERTE G RAPHEN ). Der planare Graph G = (V, E) heisst trianguliert, wenn jeder einfache Kreis genau 3 Kanten hat. In diesem Fall wird jede Fläche F (ausser der Aussenfläche) durch 3 Kanten [x, y], [y, z], [z, x] begrenzt, d.h. F wird durch die Knotenmenge {x, y, z} beschrieben. Sei ∆ der Simplizialkomplex, der genau diese Dreieckmengen {x, y, z} als maximale Elemente besitzt. Dann haben wir die reduzierte Formel (20) χ(∆) = f1 − f2 + (f3 − 1) = χ(G) − 1, da wir in ∆ die Aussenfläche von G nicht mitzählen. Die Definition von χ(G) harmoniert also mit der Definition von χ(∆). Man kann ausserdem leicht einsehen, dass man jeden einfachen Kreis eines planaren Graphen durch das Einfügen von Knoten und Kanten triangulieren kann, ohne die Eulercharakteristik zu verändern. In diesem Sinn ist die Eulercharakteristik von planaren Graphen ein Spezialfall der Eulercharakteristik von Simplizialkomplexen. KAPITEL 5 Kombinatorische Geometrien Beispiele von Geometrien“ wurden schon als Inzidenzstrukturen (z.B. pro” jektive Ebenen) gegeben. Wir nehmen hier einen anderen Standpunkt ein und verstehen unter einer Geometrie“ zunächst eine Grundmenge M , auf ” der eine Abhängigkeitsstruktur“ gegeben ist. Diese Begriffe können unter ” verschiedenen Aspekten spezifiziert werden. 1. Hüllensysteme und Abschlussoperatoren Ein Hüllensystem ist eine Familie H von Teilmengen H ⊆ M derart, dass (HS1) M\∈ H. H 0 ∈ H für alle H0 ⊆ H. (HS2) H 0 ∈H0 H ist also stabil unter beliebigen Durchschnitten und enthält die Grundmenge M . H definiert einen Hüllenoperator (oder Abschlussoperator) auf der Potenzmenge von M : S → S = ∩{H ∈ H | S ⊆ H} ∈ H. Offenbar gilt S=S ⇐⇒ S ∈ H. Die Mengen H heissen deshalb auch abgeschlossen. Die (Halb-)Ordnung (H, ⊆) der abgeschlossenen Mengen ist ein Verband (H, ∨, ∧) mit den Operationen H1 ∨ H2 = H1 ∪ H2 H1 ∧ H2 = H1 ∩ H2 = H1 ∩ H2 . E X . 5.1. Die Potenzmengen sind trivialerweise Hüllensysteme. Die linearen Teilräume eines Vektorraums bilden ein Hüllensystem. Aber z.B. auch die Menge aller konvexen Teilmengen des Rn bildet ein Hüllensystem. Ebenso die Menge aller Polyeder in Rn etc. Wir machen für die weitere Diskussion in diesem Kapitel die Annahme, dass die Grundmenge M endlich ist. Ein Hüllensystem (H, ⊆) ist dann ein 85 86 5. KOMBINATORISCHE GEOMETRIEN endlicher Verband und besitzt eine Rangfunktion r(H) = max{k | ∃Hi ∈ H so, dass H0 ⊂ H1 ⊂ . . . ⊂ Hk = H}, die in natürlicher Weise auf die Potenzmenge von M fortgesetzt werden kann: r(S) = r(S) für alle S ⊆ M . Offenbar gilt nun für alle a ∈ M : a∈S ⇐⇒ r(S ∪ a) = r(S). Das heisst: • Das Hüllensystem H ist durch seine Rangfunktion r : P ot(M ) → N eindeutig bestimmt: S = ∪{a ∈ M | r(S ∪ a) = r(S)}. Man beobachtet nun sofort: r ist 0-normiert und stark monoton im folgenden Sinn. Für alle Teilmengen S ⊆ T ⊆ M und Elemente a ∈ M gilt: (RF.0) r(∅) = 0 ; (RF.1) r(S ∪ a) ≥ r(S) ; (RF.2) r(T ∪ a) > r(T ) =⇒ r(S ∪ a) > r(S) . L EMMA 5.1. Sei M eine endliche Menge, r : P ot(M ) → N eine Funktion mit den Eigenschaften (RF.0)-(RF.2) und S = {a ∈ M | r(S ∪ a) = r(S)} für alle S ⊆ M . Dann ist H = {S | S ⊆ M } ein Hüllensystem. Beweis. Da r eine monotone Funktion ist, gilt offenbar M = M und deshalb M ∈ H. Seien nun H1 , H2 ∈ H und H = H1 ∩ H2 . Wir müssen H ∈ H nachweisen und betrachten dazu ein beliebiges a ∈ M \ H mit r(H ∪ a) = r(H). Wegen H1 , H2 ∈ H und (RF.2) wissen wir, dass a ∈ H1 und a ∈ H2 gelten muss. Also haben wir a ∈ H und schliessen somit H ∈ H. 1.1. Geometrische Rangfunktionen. Wollen wir die Rangfunktion r eines Hüllenoperators geometrisch“ interpretieren können, so erwarten wir ” sicher, dass die Hinzunahme eines weiteren Punktes a zu einer Teilmenge S den Rang allenfalls um 1 erhöht, d.h. (RF.3) r(S ∪ a) = r(S) oder r(S ∪ a) = r(S) + 1. Unter einer geometrischen Rangfunktion verstehen wir deshalb eine normierte stark monotone Funktion r mit der Eigenschaft (RF.3) (d.h. eine Funktion mit den Eigenschaften (RF.0)-(RF.3)). 1. HÜLLENSYSTEME UND ABSCHLUSSOPERATOREN 87 P ROPOSITION 5.1. Es sei r eine geometrische Rangfunktion auf der endlichen Menge M mit Hüllenoperator S → S = {a ∈ M | r(S ∪ a) = r(S)} . Dann ist r genau die wieder aus dem Hüllenoperator abgeleitete Rangfunktion. Beweis. Für die Zwecke des Beweises bezeichnen wir mit r die Rangfunktion des Hüllenoperators S → S. Sei nun die Kette abgeschlossener Mengen ∅ ⊂ S1 ⊂ . . . ⊂ Sk = S derart, dass k = r(S). Dann gilt notwendigerweise für jedes a ∈ S i \ S i−1 S i = (S i−1 ∪ a) , denn S i−1 ⊂ (S i−1 ∪ a) ⊂ S i würde ja r(S) ≥ k + 1 bedeuten. Die Eigenschaft (RF.3) garantiert nun r(S i ) = r(S i−1 ) + 1 d.h r(S) = k = r(S k ) = r(S) . Allgemein erhalten wir deshalb: r(S) = r(S) = r(S) = r(S). Die Eigenschaft (RF.3) ist stärker als (RF.1). Ist sie gegeben, so kann man geometrische Rangfunktionen auch durch Submodularität (d.h. Eigenschaft (21) im folgenden Lemma 5.2) charakterisieren, was für spätere Verallgemeinerungen vorteilhaft ist. L EMMA 5.2. Sei r : P ot(M ) → N eine 0-normierte Funktion mit der Eigenschaft (RF.3). Genau dann ist r eine geometrische Rankfunktion, wenn gilt (21) r(S ∪ T ) + r(S ∩ T ) ≤ r(S) + r(T ) für alle S, T ⊆ M . Beweis. Wir nehmen zunächst an, dass r im Sinne von (21) submodular ist, und beweisen (RF.2). In der Tat haben wir im Fall S ⊆ T wegen S = T ∩ (S ∪ a), T ∪ a = T ∪ (S ∪ a) und der Submodularität von r r(T ) + r(S ∪ a) ≥ r(T ∪ a) + r(S) d.h. r(S ∪ a) − r(S) ≥ r(T ∪ a) − r(T ) und somit (RF.2). Umgekehrt nehmen wir nun an, dass r die Eigenschaft (RF.2) besitzt, und beweisen, dass dann auch (21) gelten muss. Wir argumentieren per Induktion über n = |M |, wobei der Fall n ≤ 1 trivial ist. Sei also (21) garantiert wennimmer |M | ≤ n − 1. 88 5. KOMBINATORISCHE GEOMETRIEN Im Fall S ⊆ T haben wir S ∩ T = S und deshalb (21). Andernfalls gibt es ein a ∈ S mit a ∈ / T . Sei S 0 := S \ a und folglich S ∩ T = S 0 ∩ T . Nach Induktionsvoraussetzung (bzgl. M \ a) gilt dann r(S 0 ∪ T ) + r(S ∩ T ) ≤ r(S 0 ) + r(T ) bzw. r(S 0 ∪ T ) − r(S 0 ) ≤ r(T ) − r(S ∩ T ) . Im Fall r(S∪T ) = r(S 0 ∪T ) folgt (21) sofort aus r(S 0 ) ≤ r(S). Im Fall r(S∪T ) = r(S 0 ∪ T ) + 1 haben wir wegen (RF.2) auch r(S) = r(S 0 ) + 1 und somit ebenso die Gültigkeit von (21). B EMERKUNG. Es gibt von Hüllenoperatoren abgeleitete Rangfunktionen, die zwar submodular, aber keine geometrischen Rangfunktionen im oben eingeführten Sinn sind. E X . 5.2. M = {a, b} mit Hüllensystem H = {∅, b, {a, b}} ergibt 0 = r(∅) < r(a) = 2 6= r(∅) + 1 . (RF.3) ist also auch bei Submodularität echt stärker als (RF.1). Typische Beispiele von geometrischen Rangfunktion erhält man so. Wir betrachten eine Matrix A ∈ Km×n über einem Körper K und nehmen als Grundmenge M die Menge aller Spaltenvektoren von A. Einer Teilmenge S ⊆ M mit |S| = k entspricht die aus der Spaltenmenge S gebildete Untermatrix AS ∈ Km×k . Als Rangfunktion auf M wählen wir den Matrixrang: r(S) := rg AS . In diesem Beispiel bedeutet r(S ∪a) > r(S), dass der Spaltenvektor a nicht von den Vektoren in S linear abhängt. Aus dem Gaussverfahren zur Lösung linearer Gleichungen ist klar, dass der Rang einer Matrix höchstens um 1 wächst, wenn eine weitere Spalte hinzugefügt wird. Liegt r(T ∪ a) > r(T ) vor, dann hängt a natürlich auch nicht von einer Untermenge S der Vektormenge T ab: r(S ∪ a) > r(S) (d.h. Eigenschaft (RF.2) ist erfüllt). B EMERKUNG (KOORDINATISIERUNGEN ). Es gibt auch geometrische Rangfunktionen, die nicht auf eine Matrixkonstruktion wie oben zurückgeführt werden können. Die Frage, wann eine solche Koordinatisierung einer gegebenen geometrischen Rangfunktion möglich ist, ist im allgemeinen sehr offen. Wenn man die Frage einschränkt auf Koordinatisierung über einem fest vorgegebenen Körper K, so sind Charakterisierungen bzgl. einiger weniger endlicher Körper (K = GF (2), GF (3), GF (4)) bekannt. 2. UNAHHÄNGIGKEITSSYSTEME UND GEOMETRISCHE RANGFUNKTIONEN 89 2. Unahhängigkeitssysteme und geometrische Rangfunktionen Bzgl. eines Hüllensystems mit Rangfunktion r auf der (endlichen) Menge M sagen wir, dass a ∈ M von der Teilmenge S ⊆ M \ a abhängt, falls a∈S. Dementsprechend nennen wir eine Menge I ⊆ M unabhängig, wenn a∈S a∈ / (S \ a) =⇒ (bzw. r(S \ a) < r(S) ) . Mit jeder unabhängigen Menge I ist sicher auch jede Teilmenge I 0 ⊆ I unahbhängig (denn a ∈ I 0 ∈ I 0 \ a impliziert ja immer a ∈ I \ a). Das Mengensystem I = I(r) = {I ⊆ M | I unabhängig bzgl. r} ist also ein Unabhängigkeitssystem (bzw. ein Simplizialkomplex). Entfernen wir aus einer Teilmenge S ⊆ M sukzessive Elemente a ∈ S mit der Eigenschaft r(S \ a) = r(S), so erhalten wir eine unabhängige Teilmenge gleichen Ranges. Das heisst r(S) = max {r(I) | I ∈ I(r), I ⊆ S} . Aus der Intuition der linearen Algebra (vgl. die aus Matrizen gewonnenen geometrischen Rangfunktionen oben) würde man erwarten: (22) r(I) = |I| für alle I ∈ I(r). Man sieht jedoch leicht, dass im allgemeinen zwar für unabhängige Mengen I immer |I| ≤ r(I) gilt, Gleichheit aber nicht unbedingt gewährleistet ist. Wir nennen deshalb die Rangfunktion r matroidal, wenn I(r) die Eigenschaft (22) besitzt. Matroidale Rangfunktionen r zeichnen sich also durch die Eigenschaft aus S ∈ I(r) ⇐⇒ r(S) = |S| . Alternativ haben wir die folgende Charakterisierung: (23) r matroidal ⇐⇒ r(S) ≤ |S| für alle S ⊆ M . L EMMA 5.3. Die matroidalen Rangfunktionen sind genau die geometrischen Rangfunktionen. 90 5. KOMBINATORISCHE GEOMETRIEN Beweis. Sei die Rangfunktion r geometrisch und I = {a1 , . . . , am } ∈ I(r). Wir setzen I0 := ∅ und Ik := Ik−1 ∪ ak für k = 1, . . . , m. Dann haben wir r(Ik−1 ) < r(Ik ) < r(Ik−1 ) + 1 d.h r(Ik ) = r(Ik−1 ) + 1 und folglich r(Im ) = m = |I|. Ist umgekehrt r matroidal und r(S) < r(S ∪ a), so existiert eine unabhängige Menge I ⊆ S mit I = S und |I| = r(I) = r(S) . Aus I ∪ a = S ∪ a ersehen wir r(I ∪ a) = r(S ∪ a). Also enthält auch I ∪ a eine unabhängige Menge vom Rang r(S ∪ a), d.h. r(S) ≤ r(S ∪ a) ≤ |I ∪ a| = r(S) + 1 . Umgekehrt gehen wir von einem beliebigen Unabhängigkeitssystem I auf M aus und definieren eine Funktion rI : P ot(M ) → N durch rI (S) = max{|I| | I ∈ I, I ⊆ S}. Es ist klar, dass rI die Eigenschaften (RF.0), (RF.1) und (RF.3) besitzt. Also finden wir: L EMMA 5.4. Die durch das Unabhängigkeitssystem I definierte Funktion rI ist die Rangfunktion eines Hüllensystems genau dann, wenn rI matroidal ist. Ist rI matroidal, dann ist I genau das zugehörige System der unabhängigen Mengen. 2.1. Die Steinitzsche Austauscheigenschaft. Ist r eine matroidale Rangfunktion auf M , dann weisen die Mengen I = I(r) eine Erweiterungseigenschaft auf, die als Austauscheigenschaft von Steinitz bekannt ist: (SA) Sind I, J ∈ I Mengen mit |I| ≤ |J| − 1, so existiert ein a ∈ J \ I derart, dass I ∪ a ∈ I . Wegen r(I) = |I| < r(J) existiert nämlich (mindestens) ein a ∈ J mit r(I) < r(I ∪ a) = r(I) + 1. Also muss I ∪ a unabhängig sein. Umgekehrt gehen wir nun von einem beliebigen Unabhängigkeitssystem I auf M aus und definieren zu jedem S ⊆ M rI (S) := max {|I| | I ∈ I, I ⊆ S} . Damit haben wir bewiesen 3. KOMBINATORISCHE GEOMETRIEN UND MATROIDE 91 S ATZ 5.1. Das Unabhängigkeitssystems I auf M genügt genau dann der Steinitzeigenschaft (SA), wenn die zugehörige Funktion rI einen Hüllenoperator auf M definiert. 3. Kombinatorische Geometrien und Matroide Unter einer kombinatorischen Geometrie verstehen wir eine (endliche) Menge M zusammen mit einer geometrischen Rangfunktion r mit der Eigenschaft r(a) = 1 für alle a ∈ M . B EMERKUNG (M ATROIDE UND S CHLINGEN ). Setzen wir nur eine geometrische Rangfunktion r voraus, so ist (M, r) ein Matroid. Ein Element a ∈ M mit r(a) = 0 (d.h. a ∈ ∅) heisst dann Schlinge (auf englisch: loop), eine Sprechweise die durch die graphentheoretische Interpretation später klarer werden wird. Wir haben im vorhergehenden Abschnitt gesehen: Matroide entsprechen genau den Unabhängigkeitssystemen, welche die Steinitzsche Austauscheigenschaft besitzen. In einer kombinatorischen Geometrie G = (M, r) vom Rang r(G) = r(M ) nennen wir die Elemente a ∈ M die Punkte von G, abgeschlossene Mengen G = G mit r(G) = 2 Geraden. Ebenen sind abgeschlossene Mengen E mit r(E) = 3 und Hyperebenen abgeschlossene Mengen H vom Rang r(H) = r(G) − 1 . Eine kombinatorische Geometrie G vom Rang r(G) = 3 ist jedoch nicht notwendigerweise eine projektive Ebene, da zwei Geraden möglicherweise keinen gemeinsamen Schnittpunkt besitzen. 3.1. Restriktion und Kontraktion. Ist M 0 ⊆ M eine Teilmenge von M so ist die Einschränkung r0 der geometrischen Rangfunktion r auf die Teilmengen von M 0 natürlich eine geometrische Rangfunktion auf M 0 . Wir bezeichnen mit G(M 0 ) = (M 0 , r0 ) = G \ (M \ M 0 ) die Restriktion der kombinatorischen Geometrie (bzw. des Matroids) G auf M 0 . (Die zweite Notation soll andeuten, dass dazu die Elemente der komplementären Menge M \ M 0 entfernt werden.) B EMERKUNG. Die unabhängigen Mengen von G(M 0 ) ergeben sich als I(r0 ) = {I ⊆ M 0 | I ∈ I(r)} . 92 5. KOMBINATORISCHE GEOMETRIEN Eine weitere Möglichkeit, aus einer gegebenen kombinatorischen Geometrie eine andere zu konstruieren, wird durch die Idee der Projektion der Geraden durch einen Punkt a auf eine unendlich ferne Hyperebene“ gegeben. ” Konkret bedeutet dies, dass wir die Geraden G, die a enthalten, als Punk” te“ p einer neuen geometrischen Struktur mit der Rangfunktion ra ({p1 , . . . , pk {) := r({p1 ∪ . . . ∪ pk }) − 1 auffassen. Die Konstruktion läuft darauf hinaus, dass wir auf der Menge M 0 := M \ a eine Rangfunktion ra , wie folgt, betrachten: ra (S) := r(S ∪ a) − 1 (S ⊆ M 0 ) . Es ist leicht zu sehen, dass ra eine geometrische Rangfunktion auf M 0 ist. Wir bezeichen die entsprechende kombinatorische Geometrie mit G/a = (M 0 , ra ) und nennen G/a die Kontraktion1 von G bzgl. a. B EMERKUNG. Aus der Definition von ra folgt direkt: I(ra ) = {I ⊆ M \ a | I ∪ a ∈ I} . 3.2. Dekomposition. Man kann eine kombinatorische Geometrie G auf M dekomponieren, indem man der Reihe nach Elemente aus der Grundmenge entfernt und entweder die entsprechende Restriktion oder Kontraktion der vorangehenden Geometrie definiert. Dabei ist es irrelevant, ob wir zuerst die Restriktionen oder die Kontraktionen durchführen, d.h. im Fall A ∩ B = ∅ erhalten wir (G \ A)/B = (G/B) \ A , denn beide Strukturen sind auf M 0 = M \ (A ∪ B) definiert und haben als Rangfunktion rB (C) = r(C ∪ B) 1 (C ⊆ M 0 ) . dieser Begriff erhält eine anschauliche Erklärung im Kontext von Graphen 4. PROJEKTIVE GEOMETRIEN 93 3.3. Invarianten. Ein kombinatorischen Geometrien (Matroiden) G zugeordneter numerischer Parameter t(G) heisst (Matroid)-Invariante, falls für alle Elemente a der jeweiligen Grundmenge gilt: t(G) = t(G \ a) + t(G/a) . (24) E X . 5.3. Ist G = (M, r) eine kombinatorische Geometrie, so haben wir bzgl. eines jeden a ∈ M : |I \ a| = |{I ∈ I | a ∈ / I}| |I/a| = |{I ∈ I | a ∈ I}| d.h. |I(r)| = |I \ a| + |I/a| . Die Anzahl t(G) der unabhängigen Teilmengen einer kombinatorischen Geometrie G ist folglich eine Invariante. Der Wert der Invarianten t(G) ist durch ihre Werte auf den kleineren kombinatorischen Geometrien G \ a und G/a festgelegt und kann deshalb rekursiv aus t(∅) und der Dekompositionsstruktur von G berechnet werden. 4. Projektive Geometrien Einer geometrischen Sprechweise folgend heissen die abgeschlossenen Teilmengen einer kombinatorischen Geometrie G = (M, r) auch Unterräume von G. Gilt für je zwei Unterräume S, T die modulare Gleichung (25) r(S ∪ T ) + r(S ∩ T ) = r(S) + r(T ) , wird G = (M, r) eine projektive Geometrie genannt. Die projektiven Ebenen sind genau die projektiven Geometrien G vom Rang G = 3. B EMERKUNG. Die modulare Gleichung (25) wird bei projektiven Geometrien nur für Unterräume vorausgesetzt. Bei (nicht abgeschlossenen) Teilmengen ist sie nicht unbedingt erfüllt. (Zur Erinnerung: S ∪ T ist der kleinste Unterraum, der S und T enthält.) Man macht sich klar: • Die Kontraktion einer projektiven Geometrie ergibt immer eine projektive Geometrie. • Die Restriktion einer projektiven Geometrie ist typischerweise keine projektive Geometrie (aber natürlich eine kombinatorische Geometrie). 94 5. KOMBINATORISCHE GEOMETRIEN B EMERKUNG (D IMENSION PROJEKTIVER R ÄUME ). Unter der (projektiven) Dimension eines Unterraums S einer projektiven Geometrie G = (M, r) versteht man die Zahl dim S := r(S) − 1 . Die Elemente p ∈ M haben somit als Punkte“ der projektiven Geometrie G die ” Dimension dim p = r(p) − 1 = 0 . Projektive Geraden“ haben Dimension 1, Ebenen“ Dimension 2 usw. ” ” 4.1. Projektive Geometrien von Vektorräumen. Sei V ein Vektorraum der (Vektorraum-)Dimension dimV V = n über einem (endlichen) Körper K mit |K| = q Elementen. Dann ist die Anzahl der Vektoren von V |V | = q n . Jeder 1-dimensionale Unterraum p = v von V umfasst q Elemente: v = {λv | λ ∈ K} (v ∈ V \ {0}) . Wir nehmen nun die Menge M = {v | v ∈ V \{0}} aller 1-dimensionalen Unterräume von V als die Menge der Punkte(!) einer kombinatorischen Geometrie P = P(V ) = (M, r), wobei wir setzen r(S) = dimV S (S ⊆ M ) . Die abgeschlossenen Teilmengen der kombinatorischen Geometrie P(V ) entsprechen genau den linearen Teilräumen des Vektorraums V . Die (aus der linearen Algebra bekannte) Modularität der Dimensionsfunktion auf dem Verband der linearen Teilräume von V zeigt: • P(V ) ist eine projektive Geometrie. Die Grundelemente von P(V ) sind bzgl. V aber nicht Vektoren sondern 1-dimensionale lineare Teilräume. Die projektive(!) Dimension von P ist dim P(V ) = dimV V − 1 = n − 1 . Wieviele Punkte besitzt die projektive Geometrie P? Da sich je zwei 1dimensionale lineare Teilräume von V genau im 0-Vektor schneiden, finden wir qn − 1 |P| = . q−1 Betrachten wir V = Kn als Koordinatenraum, so erhalten wir die (linearen) Hyperebenen von V als die Mengen der Lösungen x = (x1 , . . . , xn ) ∈ Kn von homogenen linearen Gleichungssystemen vom Rang 1: a1 x1 + a2 x2 + . . . + an xn = 0 . 4. PROJEKTIVE GEOMETRIEN 95 Also schliessen wir, dass auch für die Menge H der Hyperebenen der projektiven Geometrie P(V ) gilt: qn − 1 |H| = = |P| , q−1 wie wir es schon bei projektiven Ebenen kennen. KAPITEL 6 Graphen und Matroide Wir kommen nun weider auf Graphen als kombinatorische (Inzidenz-)Strukturen zurück. Dabei gehen wir von zwei disjunkten endlichen Mengen V und E aus, deren Elemente Knoten bzw. Kanten heissen. Wir werden sehen, wie Matroide die Graphen in natürlicherweise kombinatorisch verallgemeinern. 1. Gerichtete und ungerichtete Graphen Ein gerichteter Graph ist eine Zuordnung G : E → V × V, die wir als G = G(V, E) (oder noch einfacher als G = (V, E)) notieren. Im Fall G(e) = (v, w) nennen wir v den Anfangsknoten und w den Endknoten der Kante e ∈ E. Im Fall G(e) = (v, v) nennen wir e eine Schlinge, die mit dem Knoten v inzidiert. B EMERKUNG. Intuitiv stellt man sich die Knoten von G = (V, E) oft als eine Menge V ⊆ R2 von Punkten in der Ebene vor. Eine Kante e ∈ E mit G(e) = (v, w) wird dabei gerne als ein von v nach w gerichteter Pfeil repräsentiert. Ein ungerichteter Graph G = G(V, E) ist eine Zuordnung V V G:E→V ∪ (mit = {K ⊆ V | |K| = 2}). 2 2 Im Fall G(e) = {v, w} sind v und w die beiden Endknoten der Kante e. Im Fall G(e) = {v} ist e eine mit v inzidente Schlinge. Wir können eine (ungerichtete) Kante G(e) = {v, w} orientieren, indem wir G(e) durch G0 (e) = (v, w) oder G0 (e) = (w, v) ersetzen. Ebenso kann man eine gerichtete Kante e umorientieren usw. Ein gerichteter Graph geht also aus einem ungerichteten hervor, indem man alle Kanten orientiert. 1.1. Inzidenzmatrizen. Um die (Knoten-Kanten-)Inzidenzmatrix A = (av,e ) ∈ RV ×E des Graphen G = (V, E) aufzustellen, gibt man sich eine Orientierung der Kanten vor und definiert die Inzidenzkoeffizenten av,e bzgl. der Knoten v 97 98 6. GRAPHEN UND MATROIDE und Kanten e so: av,e −1 falls G(e) = (v, w), := +1 falls G(e) = (w, v), 0 sonst. Die Inzidenzmatrix A = (av,e ) beinhaltet (fast) die volle Information über G: Eine Spalte e 6= 0 gibt genau die Endpunkte der entsprechenden (orientierten) Kante an. Im Fall e = 0 liegt eine Schlinge vor (allerdings wird die Information über den Endpunkt der Schlinge e nicht in die Matrix aufgenommen!). B EMERKUNG (E INDEUTIGKEIT DER I NZIDENZMATRIX ). Eine Umorientierung der Kante G(e) = (v, w) in die entgegensetzte Richtung G0 (e) = (w, v) bedeutet eine Multiplikation der entsprechenden Spalte der Inzidenzmatrix mit (−1). Bis auf mögliche Multiplikation von Spalten mit (−1) ist die Knoten-KantenInzidenzmatrix eines Graphen eindeutig festgelegt. 1.1.1. Die reduzierte Inzidenzmatrix. Jede Matrix A mit Koeffizienten aus der Menge {−1, 0 + 1} ist die Inzidenzmatrix eines Graphen, wenn in jeder Spalte 6= 0 genau einmal −1 und einmal +1 auftritt. Das zeigt aber auch, dass die Inzidenzmatrix redundant ist: Man kann eine beliebige Zeile streichen, ohne Information zu verlieren: Die gestrichene Zeile ist gerade die negative Summe der übrigen Zeilen: A = 1 −1 0 0 0 −1 1 0 0 0 0 −1 1 1 0 −1 0 1 0 0 −1 0 −1 1 .................................... −1 0 0 1 0 0 0 0 A = ... vn . Die Matrix A, die man durch Streichen einer Zeile (z.B. der letzten Zeile, die dem Knoten vn entspricht) aus der Inzidenzmatrix A erhält, nennen wir die reduzierte Inzidenzmatrix des Graphen G. Eine Matrix mit Elementen aus {−1, 0, 1} ist also genau dann die reduzierte Inzidenzmatrix eines Graphen, wenn in jeder Spalte jedes Element +1 oder −1 höchstens einmal auftritt. Ausserdem überzeugt man sich leicht von der folgenden Eigenschaft: • Eine Teilmenge von Spalten der reduzierten Inzidenzmatrix A ist genau dann linear unabhängig, wenn sie in der (vollen) Inzidenzmatrix A linear unabhängig ist. 1. GERICHTETE UND UNGERICHTETE GRAPHEN 99 1.1.2. Knoteninzidenz. Sei G = (V, E) ein ungerichteter Graph ohne Schlingen. Wir nehmen an, dass G einfach ist, d.h. dass jedes Knotenpaar mit höchstens einer Kante inzident ist. Ist A die Kanten-KnotenInzidenzmatrix des Graphen G (den wir ohne Schlingen annehmen), so können wir die Matrix der inneren Produkte der Zeilenvektoren bilden: M = (mvw ) := AAT ∈ RV ×V Auf der Diagonalen von M stehen die sog. Grade δ(v) der Knoten: X mvv = av,e av,e = δ(v) . e∈E δ(v) ist also die Anzahl der mit v inzidenten Kanten. Da G einfach ist, erhalten wir im Fall v 6= w ( X −1 falls G(e) = {v, w}, mvw = av,e aw,e = 0 sonst. e∈E Die Matrix M = AAT reflektiert also die Knoten-Knoten-Inzidenzstruktur des Graphen G. Ist D = (dvv ) die Diagonalmatrix mit Diagonalelementen dvv = δ(v), so nennt man die (0, 1)-Matrix f = D − AAT M die Knoten-Inzidenzmatrix von G. Ebenso wie aus A kann der einfache f rekonstruiert werden. Für viele Zwecke erGraph G natürlich auch aus M f. weist sich A zur Strukturanalyse von G jedoch etwas geschickter als M 1.2. Wege und Kreise in Graphen. Wir betrachten zuererst einen gerichteten Graphen G = (V, E). Unter einem gerichteten Weg (oder gerichteten Pfad) versteht man eine Folge P = e1 e2 . . . ek von Kanten ei ∈ E derart, dass es Knoten v0 , v1 , . . . , vk ∈ V gibt mit der Eigenschaft G(e1 ) = (v0 , v1 ), G(e2 ) = (v1 , v2 ), . . . , G(ek ) = (vk−1 , vk ). Ist G einfach in dem Sinn, dass es zwischen jedem Knotenpaar höchstens eine Kante gibt, notieren wir den Pfad auch als die entsprechende Folge von Knoten: P = v0 v1 . . . vk . Im Fall v0 = vk nennen wir P einen gerichteten Kreis. 100 6. GRAPHEN UND MATROIDE Ist nun G = (V, E) ein möglicherweise ungerichteter Graph, so nennen wir eine Kantenfolge P = e1 . . . ek einen Weg, wenn es eine (Um-)Orientierung − → G von G gibt, bei der die entsprechende Folge → − − → → P =→ e1 − e2 . . . − ek ein gerichteter Weg ist. Der Begriff Weg“ ist also etwas allgemeiner, da er ” nicht von einer festen vorgeschriebenen Orientierung der Kanten abhängt. Analog sprechen wir von einem Kreis in G als einer Verallgemeinerung des Begriffs gerichteter Kreis“. ” Unter einem Zykel verstehen wir einen Kreis K = v0 v1 . . . vk−1 v0 , bei dem die durchlaufenen Knoten v0 , v1 , . . . , vk−1 alle verschieden sind. Ein Kreis ist also entweder selber ein Zykel oder enthält einen Zykel. Ein Zykel enthält keinen weiteren Kreis. In diesem Sinn sind die Zykeln die minimalen Kreise eines Graphen. L EMMA 6.1. Sei G = (V, E) ein (endlicher) Graph, in dem jeder Knoten mit mindestens zwei Kanten inzident ist. Dann enthält G (mindestens) einen Kreis (bzw. Zykel). Beweis. Die Argumentation ist identisch mit der, die wir schon bei geometrischen Graphen benutzt haben. 1.2.1. Wälder und Bäume. Ein Graph G = (V, E), der keinen Kreis enthält, wird Wald genannt. Nach Lemma 6.1 besteht ein Wald entweder nur aus Knoten (und keinen Kanten) oder enthält einen Knoten v ∈ V , der mit einer einzigen Kante e ∈ E inzidiert, die dann frei“( unabhängig“bzgl. ” ” der Kreisstruktur) ist. Wir betrachten nun den Graphen G \ e = G0 = (V 0 , E 0 ) mit V 0 = V \ {v}, E 0 = E \ {e}. Offenbar ist auch G \ e ein Wald und wir können die Dekomposition bzgl. unabhängiger Kanten fortsetzen, bis schliesslich ein Graph entstanden ist, der keine Kanten enthält. T ERMINOLOGIE . Ein Knoten v eines Waldes, der nicht mit 2 (oder mehr) Kanten inzidiert, heisst Blatt. Ein Baum ist ein Wald, in dem zwischen je zwei Knoten ein Weg existiert. Ist G = (V, E) ein Baum und v ein mit der unabhängigen Kante e inzidentes Blatt, dann ist natürlich auch der reduzierte Graph G0 = (V 0 , E 0 ) ein Baum. S ATZ 6.1. Ist G = (V, E) ein Baum, dann gilt |E| = |V | − 1. 1. GERICHTETE UND UNGERICHTETE GRAPHEN 101 Beweis. Die Behauptung ist sicher richtig, wenn G nur aus einer Kante (und deren Endknoten) besteht. Ansonsten gibt es ein Blatt v ∈ V mit inzidenter Kante e. Sei G \ e = (V 0 , E 0 ) der entsprechend reduzierte Graph. Per Induktion über |E| schliessen wir somit |E| = |E 0 | + 1 = |V 0 | − 1 + 1 = |V | − 1. T ERMINOLOGIE . Ein Baum GT = (V, T ) mit T ⊆ E ist ein sog. aufspannender Baum des Graphen G = (V, E). Alle aufspannenden Bäume GT von G haben dieselbe Zahl von Kanten: |T | = |V | − 1. KOROLLAR 6.1. Ein Graph G = (V, E) mit |E| ≥ |V | enthält mindestens einen Kreis. 1.3. Zusammenhang und Rang. Ein (möglicherweise ungerichteter) Graph G = (V, E) ist zusammenhängend, wenn je zwei Knoten durch (mindestens) einen Weg verbunden sind. L EMMA 6.2. Der Graph G = (V, E) ist genau dann zusammenhängend, wenn G einen aufspannenden Baum GT = (V, T ) enthält. Beweis. Ein Graph, der einen Baum mit derselben Knotenmenge enthält, ist sicherlich zusammenhängend. Sei umgekehrt G zusammenhängend und oBdA |V | ≥ 2. Wenn G nicht schon ein Baum ist, dann enthält G einen Kreis K = (VK , EK ). Sei e ∈ EK eine beliebige Kante in K. Dann erkennt man leicht auch G \ e = (V, E \ e) als zusammenhängend. Da ein aufspannender Baum von G \ e auch G aufspannt, folgt die Behauptung per Induktion. Ist G nicht zusammenhängend, so zerfällt G in (paarweise disjunkte) Zusammenhangskomponenten, die eine Partition V = V1 ∪ . . . ∪ Vm der Knotenmenge darstellen, wobei zwei Knoten genau dann in einer Komponente liegen, wenn sie über einen Weg erreichbar sind. B EMERKUNG (S TARKER Z USAMMENHANG ). Ein gerichteter Graph heisst stark zusammenhängend, wenn es von jedem Knoten zu jedem anderen Knoten einen gerichteten Pfad gibt. Ein stark zusammenhängender Graph ist also immer auch zusammenhängend. Ein zusammenhängender gerichteter Graph muss jedoch nicht unbedingt stark zusammenhängend sein (Beispiel?). 102 6. GRAPHEN UND MATROIDE Hat der Graph G genau die m Zusammenhangskomponenten V1 , . . . , Vm so definieren wir als seinen Rang die Zahl r(G) := |V | − m = (|V1 | − 1) + . . . + (|Vm | − 1) . Kombinatorisch betrachtet ist der Rang r(G) eines Graphen G also die maximale Anzahl von Kanten |W | die ein Wald GW = (V, W ) mit W ⊆ E besitzen kann. 1.3.1. Eulersche Kreise. Ein Eulerscher Kreis im Graphen G = (V, E) ist ein Zykel, in dem jede Kante e ∈ E genau einmal auftritt (Knoten dürfen durchaus mehrfach durchlaufen werden). Wie kann man feststellen, ob G einen Eulerschen Kreis besitzt? Eine notwendige Voraussetzung ist sicher, dass G zusammenhängend ist (denn ein Eulerscher Kreis verbindet alle Knoten miteinander). Ausserdem muss der Knotengrad δ(v) eines jeden Knotens v ∈ V eine gerade Zahl sein (denn ein Eulerscher Kreis gruppiert die mit v inzidenten Kanten in Paare (e, f ) mit der Interpretation: Wenn der Kreis v über e erreicht, so verlässt er v über f ). Diese beiden Bedingungen sind aber auch schon hinreichend. P ROPOSITION 6.1. Der zusammenhängende Graph G = (V, E) besitzt genau dann einen Eulerschen Kreis, wenn für alle v ∈ V gilt: δ(v) ist eine gerade Zahl . Beweis. Wir müssen noch zeigen, dass die genannte Bedingung hinreichend ist. Wir dürfen annehmen, dass δ(v) ≥ 2 immer gilt. Denn gäbe es ein v ∈ V mit δ(v) = 0, so wäre G nicht zusammenhängend. Also können wir einen Zykel Z in G konstruieren. Nun entfernen wir die Kanten von Z aus G. Im Restgraphen sind dann wieder alle Knotengrade gerade Zahlen. Allerdings ist der Restgraph möglicherweise nicht mehr zusammenhängend. Die Zusammenhangskomponenten G1 , . . . , Gm des Restgraphen besitzen jedoch ( per Induktion“) Eulersche Kreise K1 , . . . , Km , die über Z alle miteinander ver” bunden sind (sonst wäre ja G nicht zusammenhängend gewesen!). Also erhalten wir einen Eulerschen Kreis z.B. so: Wir durchlaufen Z bis wir zu einem Knoten v1 ∈ K1 kommen. Dann durchlaufen wir K1 (zurück zum Knoten v1 ) und folgen Z bis zu einem Knoten der nächsten Zusammenhangskomponente v2 ∈ K2 , die wir danach durchlaufen, usw. B EMERKUNG (H AMILTONSCHE K REISE ). Ob der Graph G einen Eulerschen Kreis besitzt, lässt sich nach dem in Proposition 6.1 gegebenen Kriterium leicht 1. GERICHTETE UND UNGERICHTETE GRAPHEN 103 überprüfen. Sehr viel schwieriger scheint eine Antwort auf die Frage zu sein, ob G einen sog. Hamiltonschen Kreis besitzt, bei dem nach Definition sämtliche Knoten von G genau einmal durchlaufen werden müssen. Ein schon lange offenes Problem ist: Gibt es einen effizienten Algorithmus, der feststellt, ob ein vorgelegter Graph G Hamiltonsch“ist, also einen Hamiltonschen ” Kreis besitzt, oder nicht? (Dieses Problem gilt als eines der gegenwärtig wichtigsten der theoretischen Informatik und Berechenbarkeitstheorie überhaupt.) 1.4. Sichtweise der linearen Algebra. Wir gehen nun von einem Graphen G = (V, E) aus, dessen wir (irgendwie) orientiert haben. Sei A ∈ RV ×E die entsprechende Inzidenzmatrix bzgl. der Knoten und Kanten. B EMERKUNG. Es sei daran erinnert, dass eine Umorientierung der Kante e ∈ E einfach einer Multiplikation der entsprechenden Spalte von A mit (−1) entspricht. Die lineare Abhängigkeitsstruktur der Spaltenvektoren hängt also nicht von der speziellen Orientierung ab! Sei nun K ⊆ E die Kantenmenge eines Kreises von G: K = e1 e2 . . . ek (ei ∈ E). Wir nehmen an, dass die Kanten in der Weise orientiert sind, dass der Endknoten von ei immer der Anfangsknoten der nächsten Kante ei+1 ist. Jeder Knoten, der im Kreis auftritt, ist also genau einmal Anfangsknoten und einmal Endknoten einer Kante von K. Sei AK die Teilmatrix der K entsprechenden Spaltenvektoren von A. Dann steht in jeder Zeile von AK genau einmal (−1) und einmal (+1). Die Zeilensummen sind also 0. D.h. die Vektoren in AK sind linear abhängig. L EMMA 6.3. Sei S ⊆ E eine beliebige nichtleere Menge von Kanten des Graphen G = (V, E) und AS die entsprechende Spaltenteilmatrix von A. Genau dann enthält S einen Kreis, wenn AS linear abhängig ist. Anders formuliert: S ist die Kantenmenge eines Waldes in G genau dann, wenn die Spaltenvektoren in AS linear unabhängig sind. Beweis. Wir müssen noch zeigen, dass S einen Kreis enthält, wenn AS linear abhängig ist. Nach Vorraussetzung gibt es einen Koeffizientenvektor x derart, dass AS x = 0. Wir betrachten die Kantenmenge K = tr x = {e ∈ S | xe 6= 0} und die Menge VK aller mit Kanten in K inzidenten Knoten. Offenbar ist jedes v ∈ VK mit mindestens 2 Kanten aus S inzident (sonst wäre AS x = 0 unmöglich!). Also enthält der Teilgraph GK = (VK , K) ⊆ G 104 6. GRAPHEN UND MATROIDE (und somit S) einen Kreis. Aus Lemma 6.3 folgt: • Eine Teilmenge von Spaltenvektoren AS der Inzidenzmatrix A ist linear unabhängig genau dann, wenn die entsprechende Menge S von Kanten des Graphen G keinen Zykel enthält. • Der Rang r(G) des Graphen G ist genau der (Spalten-)Rang rg (A) seiner Inzidenzmatrix A. 2. Potentiale, Flüsse und Spannungen auf Graphen Sei G = (V, E) ein gerichteter Graph mit Inzidenzmatrix A = [av,e ]. Unter einem Potential h auf G versteht man eine Bewertung der Knoten h : V → R. Ein Fluss x auf G ist eine Bewertung der Kanten x : E → R. Ein Fluss u : E → R heisst Spannung, wenn er von einem Potential h in folgender Weise induziert wird: ue = hw − hv wenn G(e) = (v, w). Die Spannung ue entlang einer Kante e ∈ E resultiert also aus der Potentialdifferenz ihrer Endknoten v und w. In Vektorschreibweise haben wir uT = hT A (u ∈ RE , h ∈ RV ). Das heisst nicht anderes, als dass die Spannungen genau die Vektoren im Zeilenraum der Inzidenzmatrix A sind. Umgekehrt induziert ein Fluss x ∈ RE immer ein Potential ∂x ∈ RV via ∂(x) = Ax. Schreiben wir die einzelnen Komponenten aus, so ergibt sich das Potenital ∂x als ∂v (x) := X G(e)=(w,v) xe − X xz G(f )=(v,z) Diesen Ausdruck kann man so interpretieren: x schreibt die Mengen eines Gutes“, das entlang der Kanten e von G von dem Anfangsknoten zu ” den Endknoten geschickt wird. ∂v (x) ist danach genau der Nettodurchfluss durch den Knoten v. Im Fall ∂v (x) ≥ 0 nennt man v eine Quelle (bzgl. x) und im Fall ∂v (x) ≤ 0 eine Senke. v ist ein sog. Transitknoten, wenn ∂v (x) = 0 gilt. 2. POTENTIALE, FLÜSSE UND SPANNUNGEN AUF GRAPHEN 105 2.1. Struktur von Spannungen. Sei G = (V, E) ein Baum mit Inzidenzmatrix A und u ∈ RE eine Spannung auf G. Sei v ∈ V ein beliebieger Knoten. Dann kann man einen Wert hv ∈ R fest vorschreiben und ihn zu einem eindeutig bestimmten Potential h mit uT = hT A fortsetzen. Es muss nämlich für jeden Nachbarknoten w gelten: hw = ue + hv hw = hv − ue falls G(e) = (v, w) falls G(e) = (w, v) usw. Die Spannung u auf G bestimmt also ein Potential u mit uT = hT A, das bis auf die Addition einer konstanten Funktion durch u eindeutig bestimmt ist. L EMMA 6.4. Sei GT = (V, T ) ein aufspannender Baum des Graphen G = (V, E) und uT : T → R eine beliebige Kantenbewertung von T . Dann lässt sich uT zu einer eindeutig bestimmten Spannung u auf G fortsetzen. Beweis. Wir können uT als Spannung auf GT interpretieren bzgl. des Potentials h, das von einem festen Wert hv ausgehend, Nachbarknoten wie oben bewertet: h w = u e + hv h w = hv − u e falls G(e) = (v, w) falls G(e) = (w, v) usw. h : V → R induziert die gesuchte Spannung u auf G. 2.2. Zirkulationen. Ein Fluss x auf dem orientierten Graphen G = (V, E) heisst Zirkulation, wenn jeder Knoten von G Transitknoten ist. D.h. ∂(x) = Ax = 0. Die Zirkulationen sind also genau die Vektoren im Kern der Inzidenzmatrix A von G. Da die Vektoren im Zeilenraum einer Matrix immer das orthogonale Komplement der Vektoren im Kern einer Matrix bilden, erhalten wir aus der Definition das sog. Kirchhoffsche Gesetz: S ATZ 6.2 (Kirchhoff 1847). In einem gerichteten Graphen sind die Spannungsvektoren orthogonal zu den Zirkulationen. Sei GK = (VK , K) ein Zykel (d.h. ein minimaler Kreis) in G. Dann ist jeder Knoten v ∈ VK mit genau 2 Kanten aus K inzident. Setzen wir z.B. bei e ∈ K den Wert xe = +1 fest, dann impliziert die Nettodurchflussbedingung ∂v (x) = 0 eine eindeutig bestimmte Zirkulation x : K → {−1, +1}. Eine solche Zirkulation kann auf G fortgesetzt werden, indem die übrigen Kanten den Wert 0 erhalten, und heisst dann elementare Zirkulation auf G. 106 6. GRAPHEN UND MATROIDE S ATZ 6.3. Der Fluss x 6= 0 auf G = (V, E) ist genau dann eine Zirkulation, wenn sich x als Linearkombination von elementaren Zirkulationen ausdrücken lässt. Beweis. Da ker A unter Linearkombinationen abgeschlossen ist, ist die Bedingung hinreichend. Wir zeigen, dass sie auch notwendig ist und argumentieren dabei per Induktion über die Anzahl der Kanten im Träger von x: tr x := {e ∈ E | xe 6= 0} . Sei Vx die Menge der mit tr x inzidenten Knoten. Wegen ∂(x) = 0 ist jedes v ∈ Vx mit mindestens 2 Kanten aus tr x inzident. tr x enthält also einen Zykel K1 . Sei x(K1 ) die (bis auf das Vorzeichen) K eindeutig entsprechende elementare Zirkulation. Wir wählen ein e1 ∈ K1 und setzen α1 = xe1 und x(1) = x − α1 x(K1 ) . Im Fall x(1) = 0 haben wir die gesuchte Darstellung schon gefunden. Im Fall x(1) 6= 0 haben wir zumindest |tr x(1) | < |tr x| und ∂(x(1) ) = 0, sodass wir nun zu einem Vektor x(2) = x(1) − α2 x(K2 ) d.h. x = x(2) + α1 x(K1 ) + α2 x(K2 ) mit |tr x(2) | < |tr x(1) | usw. kommen, bis die gewünschte Darstellung gefunden ist. B EMERKUNG. Man bemerke, dass der Beweis von Satz 6.3 konstruktiv ist. Die behauptete Darstellung von x mit elementaren Zirkulationen lässt sich also leicht berechnen. 3. Graphische Matroide Wieder betrachten wir die Inzidenzmatrix A des (irgendwie orientierten) Graphen G = (V, E) und ordnen ihr ein Matroid (d.h. eine matroidale Rangfunktion) zu, indem wir für jede Teilmenge S ⊆ E von Kanten festsetzen: r(S) = rg AS , wobei AS die Einschränkung der Matrix A auf die Spaltenmenge S (bzw. die Inzidenzmatrix des Teilgraphen GS = (V, S)) ist. Wir nennen M(G) = (E, r) das Kreismatroid des Graphen G. B EMERKUNG. Das Kreismatroid M(G) ist unabhängig von der speziell gewählten Orientierung, da sich der Rang einer Spaltenmenge ja nicht verändert, wenn eine Spalte mit (−1) multipliziert wird! M(G) ist genau dann eine kombinatorische Geometrie, wenn G keine Schlinge enthält. 3. GRAPHISCHE MATROIDE 107 Welches sind die unabhängigen Mengen in M(G) (d.h. die linear unabhängigen Spaltenmengen in A)? Eine Menge, die einen Kreis K enthält, muss abhängig sein, denn es gilt ja Ax(K) = 0 . Sei umgekehrt S ⊆ E eine abhängige Menge. Dann existiert eine entsprechenden Linearkombination der Spalten von AS , d.h. ein Vektor x derart, dass tr x = S und Ax = 0 . Folglich enthält S einen Kreis von G. Damit finden wir: P ROPOSITION 6.2. Die unabhängigen Mengen des Kreismatroids M(G) sind genau die Kantenmengen des Graphen G, die keinen Kreis enthalten. Ist G = (V, E) zusammenhängend, so ist ein aufspannender Baum eine maximale kreisfreie Kantenmenge der Kardinalität |V | − 1. In diesem Fall ist also der Rang des Kreismatroids r(M(G)) = |V | − 1 . Zerfällt V in m Zusammenhangskomponenten V = V1 ∪ . . . ∪ Vm , dann zerfällt die Inzidenzmatrix A in entsprechende Kästchen A1 , . . . , Am : A1 0 . . . 0 A2 . A = . . .. .. Am Der Matroidrang von G ist folglich gleich dem am Anfang dieses Kapitels eingeführten Rang des Graphen G: r(M(G)) = rg A = rg A1 + . . . + rg Am = (|V1 | − 1) + . . . + (|Vm | − 1) = r(G) . B EMERKUNG. Ist G zusammenhängend, so ist r(G) gerade die Anzahl der Zeilen der reduzierten Inzidenzmatrix A. Man könnte deshalb im allgemeinen bei nichtzusammenhängenden Graphen die vollständig reduzierte“ Inzidenzmatrix so de” finieren: A1 0 . . . 0 A2 A = . . .. .. . Am 108 6. GRAPHEN UND MATROIDE R ESTRIKTION UND KONTRAKTION . Sei e ∈ E eine fest gewählte Kante im Graphen G = (V, E) mit Kreismatroid M = M(G). Entfernen wir e, so erhalten wir den Graphen G0 = G \ e = (V, E 0 = E \ e). Das zugehörige Matroid auf E 0 ist offenbar M(G \ e) = M \ e , da die Entfernung von e die kreisfreien Teilmengen von E 0 unberührt lässt. B EMERKUNG (I NZIDENZMATRIX DER R ESTRIKTION ). Wir erhalten die Inzidenzmatrix A \ e von G \ e, indem wir aus A die Spalte e entfernen. Die Kontraktion von e = (v1 , v2 ) besteht darin, dass wir die Kante e kon” trahieren“, indem wir die Knoten v1 und v2 zu einem neuen Knoten v verschmelzen (und dabei die Inzidenzen der übrigen Kanten beibehalten.) B EMERKUNG (I NZIDENZMATRIX DER KONTRAKTION ). Die Kontraktion von e wirkt sich auf der Inzidenzmatrix so aus: Wir addieren die v1 -Zeile und die v2 -Zeile zu einer neuen Zeile v und entfernen die e zugeordnete Spalte. Diese Operation spiegelt sich bei der reduzierten Inzidenzmatrix A in besonders einfacher Weise: Sei z.B. e = (v1 , vn ). Wir ordnen die Spalten der Inzidenzmatrix A so, dass e der ersten Spalte entspricht und streichen zur Redukion die vn -Zeile. Dann erhalten wir eine reduzierte Inzidenzmatrix für G/e, indem wir die erste Spalte und die erste Zeile aus A streichen: 0 0 −1 1 0 1 −1 0 0 0 0 −1 1 1 0 −1 A = 0 1 0 0 −1 0 −1 1 .................................... 0 0 1 0 0 0 0 −1 Wir bezeichnen den aus der Kontraktion von e = (v1 , v2 ) resultierenden Graphen mit 00 00 G/e = (V = (V \ {v1 , v2 }) ∪ v, E = E \ e) . 00 Wie erhält man die Rangfunktion r von M(G/e) aus der Rangfunktion r von M(G)? Man macht sich leicht klar, dass die Kontraktion einer Kante die Erreichbarkeit von Knoten über Pfade nicht berührt. Ist also V = V1 ∪ . . . ∪ Vm eine Partition von G in genau m Zusammenhangskomponenten, so zerfällt G/e entsprechend in m Zusammenhangskomponenten 00 00 00 V = V1 ∪ . . . ∪ Vm , 3. GRAPHISCHE MATROIDE 00 00 109 00 wobei Vj = Vj , falls v ∈ / Vj , und andernfalls Vj = (Vj \ {v1 , v2 }) ∪ v. Daraus folgt ( r(G) falls v1 = v2 (d.h. r(e) = 0), 00 r (G/e) = r(G) − 1 falls v1 6= v2 (d.h. r(e) = 1). 00 Den Rang r (S) einer Kantenmenge S im kontrahierten Graphen können wir also so ausrechnen: Wir bestimmen r(S ∪ e) im Ausgangsgraphen und subtrahieren dann r(e). Das heisst (26) 00 r (S) = r(S ∪ e) − r(e) = re (S) bzw. M(G/e) = M/e . Die Kontraktion im Kreismatroid entspricht somit genau der Kontraktion, wie wir sie bei kombinatorischen Geometrien eingeführt hatten. 3.1. Färbbarkeit von Graphen. Wir geben uns k (z.B. k = 4) verschiedene Farben c1 , . . . , ck vor und wollen die Knoten des (ungerichteten) Graphen G = (V, E) so färben, dass für alle Knoten a, b ∈ V gilt {a, b} ∈ E =⇒ c(a) 6= c(b) . Wieviele solcher k-Färbungen gestattet G? Sei diese Anzahl Ck (G). Im Fall E = ∅ haben wir natürlich Ck (G) = |V |k . Ansonsten wählen wir eine Kante e = {a, b} ∈ E und teilen die zulässigen Färbungen c von G \ e in zwei disjunkte Klassen auf: (1) diejenigen c mit c(a) 6= c(b); (2) diejenigen c mit c(a) = c(b). Die c in (1) entsprechen genau den zulässigen Färbungen von G und die c in (2) denen von G/e. Also finden wir: Ck (G) = Ck (G \ e) − Ck (G/e) . Ck (G) ist also im wesentlichen eine Matroidinvariante auf der Klasse aller Kreismatroide von Graphen. 3.2. Anzahl der aufspannenden Bäume in einem Graphen. Wieviele aufspannende Bäume besitzt der Graph G = (V, E) mit der Kantenmenge E? Um eine Formel für diese Zahl abzuleiten, nehmen wir G als zusammenhängend und einfach an und betrachten die reduzierte Inzidenzmatrix A von G und die daraus abgeleitete reduzierte Knoten-Knoten-Inzidenzmatrix M = AA T ∈ R(|V |−1)×(|V |−1) . Wir wollen zuerst eine Matroidrekursion für die Determinante det M ableiten. Ohne Beschränkung der Allgemeinheit nehmen wir dazu an, dass G 110 6. GRAPHEN UND MATROIDE Kanten besitzt, die keine Schlingen sind. Sei e ∈ E eine solche Kante. Dann können wir auch annehmen, dass die e entsprechende Spalte der reduzierten Inzidenzmatrix A ein Einheitsvektor ist (warum?), den wir als erste Spalte von A notieren. Sei A1 die reduzierte Inzidenzmatrix der Restriktion G \ e und A2 die der Kontraktion G/e. Ist nun AA m11 m21 = .. . T . . . m1n . . . m2n .. , ... . m12 m22 .. . mn1 mn2 . . . mnn so überzeugt man sich leicht von den folgenden Zusammenhängen: T A1 A1 m11 − 1 m12 m21 m22 = .. .. . . mn1 mn2 . . . m1n . . . m2n .. , ... . . . . mnn T A2 A2 m22 . . . m2n .. = ... ... . mn2 . . . mnn T Entwickeln wir det A1 A1 nach der ersten Spalte, so erhalten wir daraus die gewünschte Rekursion: (27) det A A T T T = det A1 A1 + det A2 A2 . S ATZ 6.4 (Anzahl aufspannender Bäume). Die Anzahl der aufspannenden Bäume im Graphen G = (V, E) mit der reduzierten Inzidenzmatrix A beträgt T det A A . T Beweis. Besitzt G höchstens Schlingen als Kanten, so ist A A die Nullmatrix und es existiert kein aufspannender Baum. Es gebe also eine nichttriviale Kante e ∈ E. Die aufspannenden Bäume von G zerfallen nun in 2 Klassen: diejenigen, die die Kante e nicht enthalten und diejenigen, die die Kante e enthalten. Der erste Typ ergibt genau die aufspannenden Bäume der Restriktion G \ e und der zweite die der Kontraktion G/e. Diese Beobachtung liefert gemäss (27) den Induktionsschritt für den Beweis der Behauptung. Wir müssen nur noch den Induktionsanfang auf Graphen mit genau einer Kante e verifizieren. Das ist aber trivial: Ist e eine Schlinge, so ist die Determinante 0 und andernfalls 1. 4. DUALITÄT 111 4. Dualität Wir betrachten nun einen Graphen G vom Rang r(G) = n mit der Inzidenzmatrix A. Aus der linearen Algebra wissen wir, dass wir durch elementare Zeilenoperationen (die bekanntlich den Rang von Mengen von Spaltenvektoren nicht beeinflussen!) die Matrix A auf eine Gestalt à = [In | N ] ∈ Rn×|E| bringen können, wobei I die Einheitsmatrix der Dimension n ist. Dabei nehmen wir an: - Wir haben die Spalten (d.h. Kanten in E) so numeriert, dass die ersten n Spalten eine maximale unabhängige Menge (und somit eine Basis B für den Spaltenraum lin A der Inzidenzmatrix A) bilden. - Zeilen, die nur 0-Einträge haben, sind weggelassen. Insbesondere haben die elementaren Zeilenoperationen den Zeilenraum und den Kern unverändert gelassen: lin AT = lin ÃT und ker A = ker à . Der Raum ker A aller Zirkulationen auf G hat Dimension n∗ := |E| − n ( = dim ker A = dim ker Ã) . Folglich bilden die Spalten der Matrix ∗ −N T ⊥ à := ∈ R|E|×n In∗ eine Basis für ker A. Mit M∗ = (E, r∗ ) bezeichnen wir das Matroid, das wir von der Matrix ∗ ×|E| A∗ := (Ã⊥ )T = [−N | In∗ ] ∈ Rn erhalten und nennen M∗ das zu M duale Matroid. Aus der Definition folgt sofort: r(M) + r∗ (M∗ ) = n + n∗ = |E| . Insbesondere sehen wir: B Basis bzgl. M ←→ B ∗ := E \ B Basis bgzl. M∗ . S PRINGENDE P UNKTE : • Die Konstruktion hat nichts speziell damit zu tun, dass A die Inzidenzmatrix eines Graphen ist. Wir können also jedem von einer Matrix A abgeleiteten Matroid M ein duales “ Matrixmatroid ” M∗ auf der gleichen Grundmenge E“ zuordnen. ” 112 6. GRAPHEN UND MATROIDE • Da Zeilenraum und Kern einer jeden reellen Matrix A zueinander orthogonal sind, ist die obige Konstruktion umkehrbar. Wir erhalten folglich für beliebige Teilmengen B von Spalten von A: (28) B Basis von M ⇐⇒ B ∗ := E \ B Basis von M∗ . B EMERKUNG. Das duale Matroid M∗ eines Matrixmatroids M ist zwar wieder ein Matrixmatroid (so haben wir es ja gerade konstruiert!). Es ist aber im allgemeinen nicht richtig, dass das duale Matroid eines Kreismatroids wieder das Kreismatroid eines Graphen ist. (Eine Ausnahme von letzterer Regel bilden die planaren Graphen.) D UALIT ÄT BEI ALLGEMEINEN M ATROIDEN . Kann man den Begriff der Matroiddualität auf Matroide verallgemeinern, die nicht von Matrizen abgeleitet sind? Dazu gehen wir von (28) aus. Eine Menge I ∗ ⊆ E müsste in M∗ = (E, r∗ ) genau dann unabhängig sein, wenn ihr Komplement E \ I ∗ eine Basis von M enthält, d.h. I(r∗ ) = {I ∗ ⊆ E | r(E \ I ∗ ) = r(M)} . Dies erreichen wir durch die Funktion (29) r∗ (S) := |S| − (r(E) − r(E \ S)) , für die offensichtlich gilt: r∗ (S) = |S| ⇐⇒ r(E \ S) = r(E) . Man rechnet leicht nach, dass r∗ in der Tat eine geometrische Rangfunktion ist. Wir nennen M∗ = (E, r∗ ) das zu M = (E, r) duale Matroid. Es ist nun Routine nachzurechnen, dass folgende Beziehungen gelten: (30) (M∗ )∗ = M ∗ (M/e) = M∗ \ e für alle e ∈ E B EMERKUNG. (S CHNITTE IN G RAPHEN ). Ist M das Kreismatroid eines zu- sammenhängenden Graphen G = (V, E), so entsprechen die Basen von M genau den (Kantenmengen der) aufspannenden Bäume(n) in G. Im dualen Matroid M∗ ist eine Kantenmenge I ∗ unabhängig genau dann, wenn ihr Komplement E \ I ∗ einen aufspannenden Baum von G enthält. Die Entfernung von I ∗ belässt also einen zusammenhängenden Restgraphen. Ist S ⊆ E abhängig in M∗ , dann enthält das Komplement E \ S aus jedem aufspannenden Baum mindestens eine Kante. Eine Entfernung von S resultiert also in einem Graphen, der nicht mehr zusammenhängend ist. 4. DUALITÄT 113 Deshalb werden abhängige Mengen des dualen Matroids M∗ auch Schnitte in G genannt. Dabei nimmt man meist an, dass ein Schnitt S minimal ist in dem Sinn, dass jede echte Teilmenge von S kein Schnitt ist.