Algebra I 1 2. April 2008 c Rudolf Scharlau, 2002 – 2008 1 Grundbegriffe Einige grundlegende Begriffe der Algebra, wie Gruppe, Körper, Homomorphismus und weitere, sind bereits aus den Grundvorlesungen über Lineare Algebra der ersten beiden Studiensemester bekannt. Vieles davon wird typischerweise gleich in den ersten Studienwochen behandelt, anderes taucht in den späteren Kapiteln der Linearen Algebra nach und nach auf, wie die Symmetrische Gruppe bei den Determinanten oder Polynomringe und das ‘Einsetzen’ in Polynome bei den Normalformen. Der Zweck dieses ersten Kapitels ist es, diese Dinge an einem Ort, zum Wiederholen und Nachschlagen zusammenzustellen. Je nachdem, welche Lineare Algebra man gehört hat, dient es auch zur Ergänzung des Stoffes. Im ersten Abschnitt besprechen wir den größten gemeinsamen Teiler ganzer Zahlen und seine Berechnung mit dem erweiterten euklidischen Algorithmus, ferner die Eindeutigkeit der Primfaktorzerlegung. Hier lernt man ohne jeden Begriffsapparat bereits eine Menge an substantieller Mathematik. In einem zentralen Kapitel der Vorlesung wird dieses später auf eine größere Klasse von Ringen, insbesondere Polynomringe über Körpern, verallgemeinert. Im zweiten Abschnitt modulare Arithmetik werden Restklassen ganzer Zahlen als Äquivalenzklassen der Kongruenzrelation auf Z eingeführt und dadurch das zunächst eher rezeptmäßig bekannte Rechnen mit Resten, also die bekannten Verknüpfungen +m und ·m auf Zm = {0, 1, . . . , m − 1}, auf eine systematische, stark verallgemeinerungsfähige Grundlage gestellt. Entscheidend ist hier, dass die Einteilung aller ganzen Zahlen in Äquivalenzklassen in den Vordergrund rückt; ein Rest r ∈ Zm spielt lediglich als Vertreter für seine Klasse eine Rolle. Eine analoge Situation hat man übrigens bei den Faktorräumen (Quotienten-Vektorräumen) der Linearen Algebra. Im dritten Abschnitt wird der im Prinzip bekannte Begriff einer Gruppe etwas ausführlicher eingeführt, als dieses in der linearen Algebra zeitlich möglich ist. Besonderen Wert legen wir auf viele Beispiele möglichst unterschiedlicher Art sowie den Begriff der Untergruppe (der dann wieder zu weiteren Beispielen von Gruppen führt). Im vierten Abschnitt besprechen wir Homomorphismen, Isomorphismen sowie das Konzept der Isomorphie. Diese Begriffe gibt es für jede Klasse (Fachausdruck: Kategorie”) algebraischer Strukturen, insbesondere Gruppen, Ringe, ” Körper, Vektorräume und Algebren. Homomorphismen sind die strukturerhaltenden Abbildungen, Isomorphie klärt, wann zwei Strukturen im wesentlichen” die ” gleiche sind. Diese Grundideen tauchen in der Algebra ständig auf und werden hier exemplarisch am Fall der Gruppen eingeführt. Wieder legen wir besonderen Wert auf vielseitige Beispiele. Der fünfte Abschnitt schließlich sammelt die aus den Anfängervorlesungen Lineare Algebra und Analysis bekannten Ringe (kommutative Ringe von Zahlen, Restklassen oder Funktionen, nichtkommutative Ringe von Endomorphismen oder Matrizen) an einer Stelle und klärt die Begriffe Teilring und Einheitengrup- Algebra I 2. April 2008 c Rudolf Scharlau, 2002 – 2008 2 pe (Gruppe der invertierbaren Elemente) eines Ringes. Die Wiederholung und Vertiefung weiterer, ebenfalls schon bekannter Konzepte (Polynomring, Ideale) verschieben wir auf das spätere Hauptkapitel über Ringe. Algebra I 1.1 2. April 2008 c Rudolf Scharlau, 2002 – 2008 3 Größter gemeinsamer Teiler und Primfaktorzerlegung Das Rechnen mit ganzen Zahlen unterscheiden sich vom Rechnen mit rationalen oder reellen Zahlen dadurch, dass die Division nicht uneingeschränkt möglich ist. (Mit anderen Worten, Z ist ein Ring, aber kein Körper, siehe unten die Definition 1.5.2.) Deswegen lohnt es sich, die folgende grundlegende Eigenschaft der ganzen Zahlen als Satz festzuhalten. Satz 1.1.1 (Division mit Rest in Z) Sei a ∈ Z und m ∈ N, m > 0. Dann gibt es eindeutig bestimmte Zahlen q ∈ Z und r ∈ {0, 1, . . . , m − 1} so, dass a = qm + r . q heißt der Quotient, r heißt der Rest von a bei Division durch m. Man sagt, dass a durch m teilbar ist, wenn die Division aufgeht, d.h. der Rest r = 0 ist. Bemerkung. Man kann sich fragen, ob ein solcher Satz eigentlich bewiesen werden muss, und wie ein Beweis gegebenenfalls auszusehen hätte. Die Antwort hängt natürlich von der gewählten Axiomatik der ganzen Zahlen ab. Jedenfalls sollte ein Beweis die Anordnungsrelation auf Z explizit benutzen. Man braucht den folgenden Hilfssatz: Jede nach oben beschränkte Menge ganzer Zahlen besitzt ein größtes Element. Hiermit wird der Beweis des eigentlichen Satzes transparent und ziemlich kurz: man zeigt zuerst, dass die Menge aller z ∈ Z, für die a − zm ≥ 0 ist, nach oben beschränkt ist. Dann definiert man q als das größte Element dieser Menge. Bezeichnung 1.1.2 a) Der Rest von a bei Division durch m wird mit a mod m bezeichnet. b) Die Teilbarkeitsrelation zwischen ganzen Zahlen a, b wird mit b | a ( b teilt a“ bzw. a ist Vielfaches von b“) ” ” bezeichnet. Für die Verneinung schreiben wir b ∤ a. Definitionsgemäß gilt also b|a ⇐⇒ ∃q ∈ Z : a = q · b. Dieses kann natürlich auch definiert werden, ohne dass man vorher von der Division mit Rest gesprochen hat. Die Teilbarkeitsrelation wird im folgenden für beliebige a, b ∈ Z benutzt, d.h. b kann auch Null oder Negativ sein. Algebra I c Rudolf Scharlau, 2002 – 2008 2. April 2008 4 Beispiele: m=6: 23 = 3 · 6 + 5 −2 = −1 · 6 + 4 4 = 0·6+4 m = 17 : Rest r = 5 Rest r = 4 Rest r = 4 23 mod 6 = 5 −2 mod 6 = 4 4 mod 6 = 4 100 = 5 · 17 + 15 Rest r = 15 100 mod 17 = 15 −50 = −3 · 17 + 1 Rest r = 1 −50 mod 17 = 1 Wir führen nun den größten gemeinsamen Teilers zweier Zahlen ein. Dieser Begriff ist sowohl theoretisch als auch für diverse rechnerische Fragen von größter Bedeutung. Deshalb wollen wir das Konzept und die zugehörigen Algorithmen ausführlich darstellen. Satz und Definition 1.1.3 (Größter gemeinsamer Teiler) Gegeben seien zwei ganze Zahlen a und b. Dann gibt es eine ganze Zahl g mit folgenden Eigenschaften: (1) g | a und g | b, (2) d ∈ Z, d | a und d | b =⇒ d | g. In Worten: g ist ein Teiler von a und von b, und jede Zahl, die gleichzeitig a und b teilt, ist ein Teiler von g. Diese Zahl g kann ≥ 0 gewählt werden und ist dann durch die Eigenschaften (1) und (2) eindeutig bestimmt. Sie wird mit ggT(a, b) bezeichnet und heißt größter gemeinsamer Teiler von a und b. Beispiel: a = 45, b = 21, g = 3 a = 198, b = 42, g = 6 Die Menge der gemeinsamen Teiler von 198 und 42 ist die Menge T = {1, 2, 3, 6}. Tatsächlich ist die Zahl 6 nicht nur das größte Element dieser Menge, sondern T besteht aus den Teilern von 6, wie in Teil (2) des Satzes gefordert. Wir wollen noch einmal allgemein aufschreiben, was sich in diesem Beispiel bereits andeutet: Für jede ganze Zahl a betrachten wir Ta := {d ∈ N0 | d | n} die Teilermenge von a. Dann besagt der Satz, dass der Schnitt von zwei Teilermengen wieder eine Teilermenge ist (nämlich die des ggTs): Ta ∩ Tb = TggT(a,b) . Von grundsätzlicher Bedeutung (theoretisch und auch praktisch) ist nun die Tatsache, dass man den ggT bestimmen kann, d.h. den obigen Satz 1.1.3 konstruktiv beweisen kann, ohne sich mit den Teilermengen selbst näher zu beschäftigen. Vorbereitend zum Beweis zunächst ein Rechenverfahren: Algebra I c Rudolf Scharlau, 2002 – 2008 2. April 2008 5 1.1.4 Der Euklidische Algorithmus 1. Eingabe: a ∈ Z, b ∈ N. 2. Teile a durch b mit Rest r. 3. Ersetze a durch b, ersetze b durch r. 4. Wiederhole Schritt 2 und Schritt 3 mit den neuen Zahlen. Führe dieses durch bis der Rest 0 wird. Dieses geschieht in endlich vielen Schritten, da b (bzw. r) im Laufe des Verfahrens immer kleiner wird. 5. Ausgabe: der letzte von Null verschiedene Rest Beispiel: Eingabe a = 198, b = 42 198 42 30 12 : 42 = 4 Rest : 30 = 1 Rest : 12 = 2 Rest : 6 = 2 Rest 30 12 6 0 Ausgabe: 6 Beweis des Satzes 1.1.3: Man zieht sich leicht auf den Fall b > 0 zurück. Behauptung: Die mit dem euklidischen Algorithmus bestimmte Zahl g hat die beiden im Satz genannten Eigenschaften. Der Beweis hiervon ergibt sich relativ leicht aus einer Anlayse des Algorithmus. Hierzu schreibt man sich die verschiedenen Rekursionsschritte noch einmal als Reihe von Gleichungen hin. Zunächst machen wir das im obigen Beispiel: (1) 198 = 4 · 42 + 30 (2) 42 = 1 · 30 + 12 (3) 30 = 2 · 12 + 6 (4) 12 = 2 · 6 Für Eigenschaft (1) argumentiert man von unten nach oben: (4) (3) (2) (1) 6 | 12 6 | 6 und 6 | 12 =⇒ 6 | 30 6 | 12 und 6 | 30 =⇒ 6 | 42 6 | 30 und 6 | 42 =⇒ 6 | 198 Für Eigenschaft (2) argumentiert man von oben nach unten. Sei d gegeben mit d | 198 und d | 42. (1) d | 198 und d | 42 =⇒ d | 30 (2) d | 42 und d | 30 =⇒ d | 12 (3) d | 30 und d | 12 =⇒ d | 6 Algebra I 2. April 2008 c Rudolf Scharlau, 2002 – 2008 6 Nun der allgemeingültige Beweis: Wir haben die drei Variablen a, b, r, weiter sei ℓ die Anzahl der Rekursionen, also rℓ = 0. a a1 a2 .. . b b1 b2 r r1 r2 wobei a1 = b wobei a2 = b1 b1 = r b2 = r1 aℓ−1 bℓ−1 rℓ−1 aℓ bℓ rℓ = 0 wobei aℓ = bℓ−1 bℓ = rℓ−1 An jeder Stelle k gilt ak = qk bk + rk mit qk ∈ Z ak = bk−1 , bk = rk−1 für k ≥ 1 Beweis der Eigenschaft (1) für die Zahl g = bℓ : aℓ = qℓ bℓ =⇒ g | aℓ g | bℓ−1 und g | rℓ−1 =⇒ g | aℓ−1 g | bℓ−2 und g | rℓ−2 =⇒ g | aℓ−2 .. . g | b1 und g | r1 g | b und g | r =⇒ g | a1 d.h. g | b =⇒ g | a Beweis der Eigenschaft (2) für die Zahl g = bℓ : Sei d ein gemeinsamer Teiler von a und b d | a und d | b d | a1 und d | b1 .. . =⇒ d | r =⇒ d | r1 d | aℓ−1 und d | bℓ−1 =⇒ d | rℓ−1 Also gilt d | g, wie gewünscht. Für die weitere Verwendung des größten gemeinsamen Teilers ist der folgende Satz wichtig, der später an verschiedenen Stellen der Vorlesung wieder gebraucht wird. Satz 1.1.5 (Lemma von Bezout) Der größte gemeinsame Teiler g zweier ganzer Zahlen a und b besitzt eine Darstellung g = xa + yb mit x, y ∈ Z . Beweis: Dieses kann man leicht durch Rückwärts-Einsetzen in der obigen Reihe von Gleichungen zeigen. Zweckmäßiger ist es allerdings, den euklidischen Algorithmus so zu erweitern, dass neben ak , bk , rk noch zwei weitere Folgen xk und yk Algebra I 2. April 2008 c Rudolf Scharlau, 2002 – 2008 7 sukzessiv berechnet werden, für die in jedem Schritt rk = xk a + yk b gilt. Zu Ende des Algorithmus (genauer für k = ℓ − 1) ergibt sich dann g = xℓ−1 a + yℓ−1 b. Die Details des Verfahrens formulieren wir im folgenden Satz. Satz 1.1.6 (Der erweiterte euklidische Algorithmus) Gegeben seien ganze Zahlen a, b ∈ Z, b 6= 0. Definiere induktiv endliche Folgen ak , bk , rk , qk , xk , yk ∈ Z durch a0 := a, b0 := b; rk := ak mod bk , qk := (ak − rk )/bk solange bk 6= 0; ak+1 := bk ; bk+1 := rk für k ≥ 0; x−2 := 1; y−2 = 0; x−1 := 0; y−1 = 1; xk := xk−2 − qk xk−1 , yk := yk−2 − qk yk−1 Sei ℓ der kleinste Index mit rℓ = 0. Dann gilt für den größten gemeinsamen Teiler g := bℓ = rℓ−1 von a und b die Gleichung g = xℓ−1 a + yℓ−1 b. Beweis: Wir überlegen uns, wie man Zahlen xk , yk ∈ Z definieren muss, um in jedem Schritt die Gleichung xk a + yk b = rk zu erfüllen und werden zwangsläufig auf obige Gestalt kommen. Es gilt r0 = a − q0 b r1 = a1 − q1 b1 = b − q1 r0 = b − q1 (a − q0 b) = −q1 a + (1 + q1 q0 )b . Wir müssen also x0 := 1, y0 := −q0 und x1 = −q1 , y1 = 1 + q1 q0 = 1 − q1 y0 setzen. Sei schon gezeigt rk−1 = xk−1 a + yk−1b rk = xk a + yk b . Dann erhält man entsprechendes auch für den nächsten Rest rk+1 : rk+1 = = = = = ak+1 − qk+1 bk+1 bk − qk+1 rk rk−1 − qk+1 rk (xk−1 a + yk−1 b) − qk+1 (xk a + yk b) (xk−1 − qk+1 xk )a + (yk−1 − qk+1 yk )b Wir müssen also xk+1 := xk−1 − qk+1 xk und yk+1 := yk−1 − qk+1 yk setzen. Mit den obigen Werten für k = −2, −1 bleibt diese allgemeine Rekursionsformel auch für x0 , y0, x1 , y1 richtig, denn sie liefert die oben berechneten Werte. Dieses Verfahren liefert später die Inversenberechnung in (gewissen) endlichen Körpern, es ist auch der Grundbaustein weiterer zahlentheoretischer Verfahren, z.B. für das Lösen linearer Kongruenzgleichungen (sog. Chinesischer Restsatz). Algebra I 2. April 2008 c Rudolf Scharlau, 2002 – 2008 8 Der erweiterte euklidische Algorithmus ist in den gängigen Computeralgebrasystemen implementiert, man sollte ihn auch per Hand beherrschen. Deshalb geben wir noch zwei Zahlenbeispiele. Es sei a = 19934, b = 3766. k a b q r x y −2 1 0 0 1 −1 0 19934 3766 5 1104 1 −5 3766 1104 3 454 −3 16 1 2 1104 454 2 196 7 −37 454 196 2 62 −17 90 3 196 62 3 10 58 −307 4 5 62 10 6 2 −365 1932 10 2 5 0 6 Ergebnis: x = −365, y = 1932. Beispiele: Es sei a = 113, b = 77. k a b q r x y −2 1 0 −1 0 1 −1 0 113 77 1 36 1 1 77 36 2 5 −2 3 36 5 7 1 15 −22 2 5 1 5 0 3 Ergebnis: x = 15, y = −22. Probe: 15 · 113 + (−22) · 77 = g = 1. Probe: −365 · 19934 + 1932 · 3766 = g = 2. Wir wenden uns nun der Primfaktorzerlegung natürlicher Zahlen zu. Der folgende Begriff ist sicher bekannt. Definition 1.1.7 Eine natürliche Zahl p mit p > 1 heißt Primzahl, falls sie nicht als Produkt zweier kleinerer Zahlen dargestellt werden kann. Mit anderen Worten: a, b ∈ N, p = ab =⇒ a = 1 oder b = 1 Oft wird die Bedingung auch wie folgt formuliert: Eine Zahl heißt Primzahl, wenn sie keine natürlichen Teiler außer 1 und sich selbst besitzt. Primzahlen sind ein eigenständiges klassisches Thema der Mathematik, dessen Behandlung deutlich über die Algebra hinausweist. Im Kontext dieser Vorlesung sind sie für die Konstruktion algebraischer Strukturen von großer Bedeutung, auch im Hinblick auf Anwendungen (Datenübertragung, fehlerkorrigierende Codes, Verschlüsselung). Für weitere Sätze im Zusammenhang mit Primzahlen braucht man oft den folgenden Hilfssatz. Lemma 1.1.8 Wenn eine Primzahl ein Produkt teilt, so teilt sie wenigstens einen der Faktoren: p Primzahl, a, b ∈ N, p | ab =⇒ p | a oder p | b . Wenn allgemeiner eine Primzahl p ein Produkt a1 a2 . . . as teilt, dann teilt sie einen der Faktoren ai . Algebra I 2. April 2008 c Rudolf Scharlau, 2002 – 2008 9 Beweis: Mit Induktion zieht man sich sofort auf den Fall von zwei Faktoren zurück. Der Beweis beruht wesentlich auf der Existenz von ggT’s. Es sei g der ggT von p und a h der ggT von p und b . Es gilt g | p; weil p eine Primzahl ist, bestehen nur die Möglichkeiten g = 1 oder g = p. Entsprechend kann nur h = 1 oder h = p sein. Wir diskutieren nun die verschiedenen Möglichkeiten. 1. Fall g = p: Wegen g | a folgt dann p | a, wie gewünscht. 2. Fall h = p: Entsprechend folgt dann p | b. Wenn diese Fälle beide nicht eintreten, bleibt nur noch die letzte Möglichkeit 3. Fall g = 1 und h = 1: Nun benutzen wir das Lemma von Bezout (Satz 1.1.5). Es gibt ganze Zahlen x, y, x′, y ′ mit xp + ya = 1, x′ p + y ′ b = 1 . Multiplizieren der beiden Gleichungen liefert xx′ p2 + xy ′ bp + yx′ap + yy ′ab = 1 . Nun verwenden wir die Voraussetzung p | ab. Hieraus folgt, dass p die gesamte linke Seite der letzten Gleichung teilt. Also gilt p | 1. Das ist unmöglich, also kann der 3. Fall gar nicht eintreten. Der folgende bekannte Satz ist nicht so harmlos, wie er auf den ersten Blick aussehen mag. Er wird oft auch als der Hauptsatz“ oder Fundamentalsatz der ” ” Arithmetik“ bezeichnet. Satz 1.1.9 (Eindeutige Primfaktorzerlegung natürlicher Zahlen) a) Jede natürliche Zahl n > 1 läßt sich als ein Produkt von Primzahlen schreiben: n = p1 · p2 · . . . · pr , p1 , p2 , . . . , pr Primzahlen. b) Diese Zerlegung ist eindeutig bis auf die Reihenfolge der Faktoren. D.h., wenn auch n = q1 · q2 · . . . · qs ist mit qj prim für j = 1, . . . , s, so ist r = s, und wenn wir ferner p1 ≤ p2 ≤ . . . ≤ pr und q1 ≤ q2 ≤ . . . ≤ qr annehmen, so ist pi = qi für i = 1, . . . , r. Beweis: zu a) (Existenz): Diese sieht man (zumindest in der Theorie) sehr leicht. Wenn n schon selbst eine Primzahl ist, sind wir fertig. Anderenfalls schreibe n = a · b, 1 < a < n, 1 < b < n. Algebra I 2. April 2008 c Rudolf Scharlau, 2002 – 2008 10 Wenn a und b Primzahlen sind, sind wir fertig. Anderenfalls kann einer der Faktoren weiter zerlegt werden, sagen wir b = c · d, 1 < c < b. Einsetzen liefert p = a ·c·d. Dieses Verfahren wird fortgesetzt, solange noch Faktoren nicht prim sind. Da die Anzahl der Faktoren immer größer wird, bricht das Verfahren nach höchstens m Schritten ab, wobei m die größte Zahl mit 2m ≤ n ist, und wir haben die gewünschte Zerlegung gefunden. Etwas systematischer geht man wie folgt vor. Man schreibt sich vorbereitend die Primzahlen der Größe nach geordnet in eine Liste: p1 = 2, p2 = 3, p3 = 5, p4 , . . . , pk . Dann überprüft man Teilbarkeit durch 2, 3, 5, . . .. Sei pi die kleinste Primzahl mit pi | n. Ersetze n durch n/pi und fahre so fort, beginnend nun mit der Primzahl pi . Dieser kleinste Primteiler pi ist tatsächlich ‘klein’, nämlich höchstens gleich √ n, es sei denn, n ist selbst √ prim (warum?!). Man muss die Liste der Primzahlen also nur bis zur Größe n anlegen, wenn n die zu zerlegende Zahl ist. Beispiel: 97 ist nicht durch 2, 3, 5, 7 teilbar, also Primzahl. Denn nach 7 ist 11 die nächste Primzahl und 11 · 11 > 97. Zusätzliche Information: Der angedeutete naive Algorithmus zur Primfaktorzerlegung ist nicht besonders effizient. Aus Zeitgründen können wir auf diese Fragen nicht eingehen. Wir sehen hier nur die Spitze eines Eisberges: in Wirklichkeit macht die Frage nach guten Algorithmen für die Primfaktorzerlegung und deren theoretische Analyse ein eigenes Teilgebiet der Mathematik, genauer der so genannten algorithmischen Zahlentheorie aus. Dabei spielen auch Konzepte der theoretischen Informatik (Komplexitätstheorie, probabilistische Algorithmen) eine große Rolle. Es gibt zwei weitere verwandte, aber nicht gleichwertige Fragestellungen: das Finden großer Primzahlen, und der Beweis, dass gewisse Zahlen wirlich Primzahlen sind. Alle drei Probleme sind beim heutigen Stand der Technik von großer Bedeutung für Verschlüsselungsverfahren und deren Sicherheit. zu Teil b) (Eindeutigkeit): Wir benutzen das obige Lemma 1.1.8. Sei p1 p2 . . . pr = q1 q2 . . . qs wie unter b). Wir beweisen die Behauptung durch Induktion über r. Für r = 0 ist nichts zu zeigen: Sei nun r ≥ 1, dann ist auch s ≥ 1. Wir wenden den Hilfssatz auf die Primzahl p = p1 und das Produkt q1 q2 . . . qs an. Es gilt p1 | qi für (wenigstens) einen der Faktoren qi . Bei passender Nummerierung der qj ist i = 1, also p1 | q1 . Da q1 Primzahl ist, muss p1 = q1 sein. Wir teilen nun beide Seiten durch p1 und wenden die Induktionsannahme auf die Gleichung p2 p3 . . . pr = q2 q3 . . . qs an. Es folgt r − 1 = s − 1 und p2 = q2 , . . . , pr = sr bei geeigneter Nummerierung, also die Behauptung.