3. ¨Ubung zur Vorlesung Codierungstheorie

Werbung
Fakultät Elektrotechnik und Informationstechnik – Institut für Nachrichtentechnik – Lehrstuhl Theoretische Nachrichtentechnik
Prof. Eduard Jorswieck, Anne Wolf
18.11.2008
3. Übung zur Vorlesung
Codierungstheorie / Fehlerreduktionssysteme
Am Ende des Dokuments befinden sich eine Übersicht zu einigen algebraischen Strukturen sowie einige
Kommentare zu Prim- und Erweiterungskörpern, die evtl. bei der Bearbeitung der Aufgaben hilfreich
sein könnten.
Aufgabe 10:
a) Existieren die folgenden Körper: F5 , F10 , F15 , F25 ?
b) Gegeben sei die Menge A = {a, b, c, d} und die folgende Additions- und Multiplikationstabelle von
A. Ist hA, +, ·i ein Ring? Ist hA, +, ·i ein Körper?
a
a
b
c
d
+
a
b
c
d
b
b
a
d
c
c
c
d
a
b
d
d
c
b
a
a
a
a
a
a
·
a
b
c
d
b
a
b
b
d
c
a
c
d
b
d
a
d
c
c
c) Welche algebraische Struktur ist hR ∪{∞}, mini?
d) Berechnen Sie die Summe und das Produkt der folgenden Matrizen über den Semiringen hR, +, ·i
und hR ∪{∞}, min, +i.
1 0 1
211
123
und
1 0 2
011
320
Hinweis: Benutzen Sie die herkömmlichen Rechenregeln für Matrizenoperationen und die erste
angegebene Verknüpfung als Addition sowie die zweite Verknüpfung als Multiplikation.
e) Gegeben seien die folgenden vierelementigen Mengen zusammen mit ihren Additions- und Multiplikationstabellen. Begründen Sie, warum im ersten Fall kein Körper, aber in den anderen beiden
Fällen ein Körper vorliegt. Was fällt Ihnen beim Vergleich der beiden Körper auf?
(1)
+
0
1
2
3
0
0
1
2
3
1
1
2
3
0
2
2
3
0
1
3
3
0
1
2
·
0
1
2
3
0
0
0
0
0
1
0
1
2
3
2
0
2
0
2
3
0
3
2
1
(2)
+
0
1
2
3
0
0
1
2
3
1
1
0
3
2
2
2
3
0
1
3
3
2
1
0
·
0
1
2
3
0
0
0
0
0
1
0
1
2
3
2
0
2
3
1
3
0
3
1
2
(3)
+
0
1
α
α+1
0
0
1
α
α+1
1
1
0
α+1
α
α
α
α+1
0
1
α+1
α+1
α
1
0
·
0
1
α
α+1
0
0
0
0
0
1
0
1
α
α+1
α
0
α
α+1
1
α+1
0
α+1
1
α
Aufgabe 11:
a) Finden Sie (durch Probieren) ein primitives Element in F7 .
b) Zeigen Sie (mit möglichst wenig Aufwand), dass die Polynome ...
• x2 + 1 reduzibel über F2 ,
• x2 + x reduzibel über F2 und F3 ,
• x2 + x + 1 irreduzibel über F2 ,
• x3 + x + 1 irreduzibel über F2 aber reduzibel über F3 ,
• x2 + 1 nicht primitiv über F2 ,
• x2 + x + 1 primitiv über F2 ,
• x4 + x3 + x2 + x + 1 nicht primitiv über F2 (obwohl irreduzibel über F2 ),
• x2 + x + 2 primitiv über F3 (ist irreduzibel über F3 )
sind.
Aufgabe 12:
a) Konstruieren Sie F9 , und stellen Sie dessen Elemente als Polynome und als Potenzen eines primitiven
Elementes α dar.
Verwenden Sie dazu p(x) = x2 + x + 2 als primitives Polynom über F3 vom Grad 2.
b) Berechnen Sie folgende Ausdrücke und stellen Sie die Ergebnisse als Potenzen von α dar:
• α + α6 ,
• α4 · α6 ,
• − α3 und
• (α3 )−1 .
c) Ergänzen Sie die folgenden Additions- und Multiplikationstabellen für F9 .
(Die Polynome a1 x + a0 sind in ternärer Kurzschreibweise a1 a0 dargestellt.)
+
00
01
02
10
11
12
20
21
22
00
00
01
02
10
11
12
20
21
22
01
01
02
00
11
12
10
21
22
·
00
01
02
10
11
12
20
21
22
00
00
00
00
00
00
00
00
00
00
01
00
01
02
10
11
12
20
21
02
02
00
12
10
11
22
20
21
02
00
02
20
22
21
10
12
11
10
10
11
12
20
22
00
01
02
10
00
10
20
21
11
12
22
02
11
11
12
10
21
22
20
01
02
12
12
10
11
22
20
21
02
20
20
21
22
00
02
10
11
01
11
00
11
22
01
12
20
02
10
12
00
12
21
11
20
02
22
10
20
00
20
10
12
22
21
11
21
21
22
20
01
02
00
11
12
10
21
00
21
12
22
10
01
11
02
20
22
22
20
21
02
00
12
10
11
22
00
22
11
02
21
01
20
12
d) Was sind die neutralen Elemente bezüglich der beiden Operationen?
e) Bestimmen Sie die inversen Elemente a′ zu a = 2x+2 bezüglich der Addition und der Multiplikation.
Zeigen Sie für beide Fälle, dass a ◦ a′ = e = a′ ◦ a erfüllt ist.
Übersicht zu einigen algebraischen Strukturen
A ... nichtleere Menge
◦ ... zweistellige Operation (Verknüpfung) auf A, d.h. Abbildung ◦ : A × A → A, (a, b) 7→ a ◦ b, wobei folgende Schreibweise vereinbart wird: a ◦ b := ◦(a, b)
algebraische Strukturen
mit einer Verknüpfung
Eigenschaften
algebraische Strukturen mit zwei Verknüpfungen
Halbgruppe
Monoid
Gruppe
Abelsche Gruppe
(müssen jeweils für alle Elemente a, b, c ∈ A gelten)
Halbring /
Semiring
Ring
Körper
+
·
+
·
+
·
Abgeschlossenheit
a◦b∈A
x
x
x
x
x
x
Assoziativität
(a ◦ b) ◦ c = a ◦ (b ◦ c)
x
x
x
x
x
x
Existenz des neutralen Elements
a◦e=a=e◦a
(x)
(x)
x
(x)
x
x
Existenz der inversen Elemente
a ◦ a′ = e = a′ ◦ a
x
x
x
Kommutativität
a◦b=b◦a
x
x
x
Distributivität
a · (b + c) = a · b + a · c
(b + c) · a = b · a + c · a
x
x
x
Anmerkung: In der Literatur sind verschiedene Definitionen für Halbringe und Ringe zu finden. Manchmal wird die Existenz des neutralen Elements bezüglich
der Multiplikation (bei Halbringen auch bezüglich der Addition) nicht vorausgesetzt, manchmal ist sie aber auch erforderlich. Für Ringe, die ein neutrales
Element bezüglich der Multiplikation besitzen, existiert auch die Bezeichnung Ring mit Eins oder unitärer Ring.
Die im Rahmen der Lehrveranstaltung Codierungstheorie / Fehlerreduktionssysteme verwendete Definition für Ring sieht vor, dass ein neutrales Element
bezüglich der Multiplikation vorhanden sein soll. Daher soll Ring im Folgenden auch so verstanden werden.
Hinweis: Die Forderung nach inversen Elementen bezüglich der Multiplikation in einem Körper bezieht sich nicht auf das neutrale Element der Addition. Man sagt auch: hA, +i und hA\{0}, ·i müssen abelsche Gruppen sein, wobei 0 das neutrale Element der Addition bezeichnet. Außerdem müssen die
Distributivgesetze gelten.
Der Text auf den folgenden Seiten ist als Ergänzung zu den Darstellungen in der Vorlesung zu verstehen. Er ersetzt keine Definitionen und Beweise, sondern versucht, den behandelten Stoff nochmals
anders aufzuarbeiten bzw. zu strukturieren, Kommentare und Hinweise zu geben, Zusammenhänge zu
erläutern, um das ganze Themengebiet etwas zu veranschaulichen bzw. mit Leben zu erfüllen.
Rechnen mit Polynomen in Körpern
Irreduzible Polynome sind auch nur Primzahlen“!
”
Ein Polynom p(x) vom Grad m mit Koeffizienten aus Fp heißt irreduzibel (über einem Körper Fp ),
wenn es sich (in diesem Körper) nicht weiter zerlegen lässt, d.h. das Polynom kann nicht als Produkt
von zwei Polynomen mit Koeffizienten aus Fp geschrieben werden, die einen Grad größer 0 und kleiner
m besitzen.
Der Nachweis der Irreduzibilität erfolgt, indem man eine Polynomdivision im Körper Fp (d.h. für
alle Koeffizienten gilt mod p) mit allen möglichen Polynomen durchführt. Praktisch kann man dabei
folgende Vereinfachungen vornehmen:
• Überprüfung, ob sich Linearfaktoren abspalten lassen (Nullstellensuche durch Einsetzen der Elemente aus Fp )
m
• Polynomdivision nur mit Polynomen bis zum Grad m
2 (ein Polynom mit Grad größer 2 erfordert
als Partner“ bei der Multiplikation ein Polynom mit Grad kleiner m
2 , wenn das Produkt den
”
Grad m haben soll)
• Polynomdivision nur mit irreduziblen Polynomen
Anmerkung: Die irreduziblen Polynome kann man sich als Primzahlen vorstellen. Der Test auf Irreduzibilität entspricht dem Versuch der Primzahlzerlegung einer Zahl bzw. dem Test, ob diese Zahl eine
Primzahl ist.
Primitive Polynome
Ein über Fp irreduzibles Polynom p(x) vom Grad m heißt primitiv, wenn es in Fp
• xn − 1 für n = pm − 1 (ohne Rest) teilt, aber
• xn − 1 für n < pm − 1 und n ∈ N nicht teilt.
Der Nachweis erfolgt durch die Ausführung der Polynomdivisionen für die verschiedenen Potenzen.
einige Aussagen:
• Für jeden Körper Fp und jede Zahl m ∈ N existiert mindestens ein primitives Polynom p(x) mit
grad p(x) = m.
• Jedes primitive Polynom ist irreduzibel, aber nicht jedes irreduzible Polynom ist primitiv.
Kochrezepte“ für Prim- und Erweiterungskörper
”
Was erwarten wir von dem Primkörper Fp ?
• p verschiedene Elemente
• zwei geeignete Operationen (nennen wir sie Addition“ und Multiplikation“), die so definiert
”
”
sind, dass sie alle von einem Körper geforderten Eigenschaften (siehe Tabelle Übersicht zu
”
einigen algebraischen Strukturen“) aufweisen
Wie konstruieren wir den Primkörper Fp ?
Wir gehen von einer unendlichen (aber abzählbaren) Menge aus, nämlich der Menge der ganzen Zahlen
Z. Wir wählen eine Primzahl p ∈ Z. Wir klassifizieren alle Elemente in Z gemäß ihrer Reste bei der
Division durch p, d.h. alle Zahlen mit gleichem Rest (bei Division durch p) landen im gleichen Topf“.
”
Wir haben also jetzt p Töpfe“, denen wir als Namen“ (oder Repräsentanten) jeweils die betragsmäßig
”
”
kleinste Zahl darin zuordnen, d.h. wir beschriften“ unsere Töpfe“ mit den Zahlen 0, 1, . . . , p−1. Damit
”
”
haben wir mit unseren Töpfen“ nun die gewünschte Menge mit p verschiedenen Elementen.
”
Die beiden geeigneten Operationen, die die Körpereigenschaften zusammen mit dieser Menge erfüllen,
können wir durch entsprechend konstruierte Additions- und Multiplikationstabellen angeben. Für die
praktische Berechnung können wir auf das Arbeiten mit den beiden Operationstabellen verzichten,
wenn wir sie durch einfache Rechenregeln vollständig charakterisieren können. In diesem Fall können
wir das: Die beiden Operationen sind nämlich genau die Addition und die Multiplikation mod p.
...
...
...
...
... ... = ...
Anmerkung: Wir haben jetzt einen Körper mit p Elementen beschrieben. Alle anders aussehenden
Körper mit p Elementen lassen sich auf diesen Körper zurückführen. Durch entsprechende Umbenennung der Elemente (und evtl. Umsortierung der Zeilen und Spalten der Operationstabellen) können
wir den einen Körper aus dem anderen erhalten. Man sagt, die Körper sind isomorph zueinander.
Man kann also sagen: Es gibt beliebig viele Darstellungen für einen Primkörper mit p Elementen, aber
am schönsten rechnet es sich mit dem oben beschriebenen!
Was erwarten wir von dem Erweiterungskörper Fpm ? – Fast das gleiche wie von Fp !
• pm verschiedene Elemente
• zwei geeignete Operationen ( Addition“ und Multiplikation“), die so definiert sind, dass sie alle
”
”
von einem Körper geforderten Eigenschaften aufweisen
Wie konstruieren wir den Erweiterungskörper Fpm ? – Fast genau so wie Fp !
Leider lässt sich der Erweiterungskörper nicht einfach aus Z mit der Division durch pm und den
Operationen mod pm erzeugen. Das demonstriert Fall (1) in Aufgabe 10 e), wo die Additions- und
Multiplikationstabelle mod pm für den Fall p = 2 und m = 2 (also mod 4) dargestellt sind.
Wir können bei der Erstellung des Erweiterungskörper Fpm aber das gleiche Prinzip anwenden wie
bei der Erzeugung des Primkörpers Fp : Wir gehen wieder von einer unendlichen (aber abzählbaren)
Menge aus, wählen diesmal aber die Menge aller Polynome mit Koeffizienten aus Fp und nennen
diese Menge Fp [x]. Wir wählen wieder eine Primzahl“, nämlich ein in Fp irreduzibles (und am besten
”
auch primitives) Polynom p(x) ∈ Fp [x] vom Grad m. Wir wollen auch wieder die unendliche Anzahl
von Elementen unserer Grundmenge Fp [x] auf eine endliche Anzahl Töpfe“ aufteilen. Dazu sortieren
”
(oder klassifizieren) wir die Polynome gemäß ihrem Rest bei der Division durch p(x). Die Polynome
haben nur Koeffizienten aus Fp , die Polynomdivision erfolgt (wie beim Test auf Irreduzibilität eines
Polynoms) für die Koeffizienten in Fp , d.h. man rechnet bei den Koeffizienten mod p. Alle Polynome
gleichen Rests landen im gleichen Topf“. Als Beschriftung“ für die Töpfe“ wählen wir jeweils das
”
”
”
Polynom kleinsten Grades in jedem Topf“, weil dieses Polynom jeweils alle anderen in diesem Topf“
”
”
repräsentiert. Wir erhalten also pm Töpfe“, die als Bezeichnung alle möglichen Reste bei Division
”
durch ein Polynom vom Grad m tragen: das sind (analog zum Primkörper) genau alle Polynome vom
Grad kleiner m. Damit haben wir nun die gewünschte Menge mit pm verschiedenen Elementen.
Wie beim Primkörper können wir die beiden geeigneten Operationen ( Addition“ und Multiplika”
”
tion“), die die Körpereigenschaften zusammen mit der Menge der Restpolynome erfüllen, durch entsprechend konstruierte Additions- und Multiplikationstabellen angeben. Für die praktische Berechnung
wünschen wir uns allerdings wieder einfache Rechenregeln, die die beiden Operationstabellen ersetzen.
Die Addition für den Erweiterungskörper können wir einfach als die komponentenweise Addition der
Polynome darstellen, wobei für die Koeffizienten aus Fp wiederum die Addition mod p verwendet wird.
Bei der Multiplikation für den Erweiterungskörper ist etwas Vorsicht angebracht: Wir verwenden die
Multiplikation der Polynome miteinander (für die Koeffizienten aus Fp gilt wieder die Multiplikation
mod p), die (so definiert) allerdings zu Ergebnissen führen kann, die aufgrund ihres höheren Grades
nicht in der Menge unseres Erweiterungskörpers liegen. Diese Multiplikationsergebnisse müssen also noch dem richtigen Topf“ zugeordnet werden. Dies geschieht (analog zum Primkörper und dem
”
Rechnen mod p) durch die Klassifizierung mod p(x), d.h. durch die Bestimmung des Restes bei Polynomdivision durch p(x). Das Rechnen in Erweiterungskörpern geht noch etwas einfacher, aber dazu
kommen wir später, denn wir brauchen dafür ein primitives Element in diesem Körper.
Anmerkung: Wir haben jetzt einen Körper mit pm Elementen beschrieben. Alle anders aussehenden
Körper mit pm Elementen sind isomorph zu diesem und lassen sich (durch Umbenennung der Elemente, ...) auf diesen Körper zurückführen. Die Fälle (2) und (3) in Aufgabe 10 e) verdeutlichen diesen
Sachverhalt für den Fall p = 2 und m = 2: (3) ist der Erweiterungskörper F4 = F22 , der mit dem
Polynom p(x) = x2 + x + 1 erzeugt worden ist, in Polynomdarstellung; (2) ist eine andere Repräsentation dieses Erweiterungskörpers (ausgedrückt mit den Zahlen 0, 1, 2, 3), in der man allerdings auf die
Operationstabellen angewiesen ist, da die Rechenregeln nicht offensichtlich sind.
Man kann also wieder sagen: Es gibt beliebig viele Darstellungen für einen Primkörper mit pm Elementen, aber am schönsten rechnet es sich mit dem eben beschriebenen!
einige Aussagen:
• Für ein beliebiges Polynom p(x) ist die aus den Polynomen Fp [x] mod p(x) gebildete Menge
zusammen mit der Polynomaddition und -multplikation mod p(x) ein Ring.
• Wenn p(x) irreduzibel über Fp ist, dann ist die aus den Polynomen Fp [x] mod p(x) gebildete
Menge zusammen mit der Polynomaddition und -multplikation mod p(x) genau ein Körper.
primitive Elemente in Prim- und Erweiterungskörpern
Mit Hilfe des primitiven Elements α eines Primkörpers Fp kann man alle p − 1 Elemente (außer 0) von
Fp erzeugen, denn αj durchläuft für j = 0, . . . , p − 2 alle Elemente des Primkörpers.
In einem Erweiterungskörper gilt sinngemäß das gleiche: Das primitive Element α ∈ Fpm erzeugt mit
αj und j = 0, . . . , pm − 2 alle pm − 1 Elemente (außer 0) des Erweiterungskörpers.
Man vereinbart außerdem α−∞ = 0.
einige Aussagen:
• Jeder Körper hat mindestens ein primitives Element.
• Im Erweiterungskörper Fpm ist α eine Nullstelle des primitiven Polynoms p(x), d.h. p(α) =
0 mod p(x). (Und weil uns das künftig beim Rechnen hilft, am besten immer ein primitives
Polynom zur Erzeugung des Erweiterungskörpers verwenden!)
Rechnen mit primitiven Elementen im Prim- und Erweiterungskörper
Mit einem primitiven Polynom p(x) und p(α) = 0 mod p(x) können wir die Erzeugung von Fpm und
das Rechnen im Erweiterungskörper etwas vereinfachen: Man kann damit Potenzen vom Grad größer
oder gleich m runtertransformieren“, d.h. durch entsprechende Ausdrücke kleineren Grades ersetzen.
”
Es gilt
p(α) = αm + pm−1 · αm−1 + . . . + p1 · α + p0 = 0 mod p(x)
αm = −pm−1 · αm−1 − . . . − p1 · α − p0 mod p(x)
mit pi ∈ Fp und −pi als inversen Elementen zu pi bezüglich der Addition in Fp für i = 1, . . . m − 1.
Um die folgende Aussage etwas kompakter zu formulieren, schreiben wir Fq und setzen q = p für den
Primkörper sowie q = pm für den Erweiterungskörper. Wegen α0 = αq−1 = 1 gilt:
αi = αi mod(q−1)
αi · αj = αi+j mod(q−1)
Rechnen mit Töpfen“ – ein Beispiel
”
p(x) = x3 + x + 1 ist ein irreduzibles Polynom über F2 .
Wir wollen damit den Erweiterungskörper F8 = F23 konstruieren, d.h. p = 2 und m = 3.
Es gilt:
p(α) = 0 = α3 + α + 1
α3 = −α − 1 = α + 1 (mit Koeffizienten aus F2 rechnen wir mod 2).
Für die Elemente des Erweiterungskörpers F23 erhält man folgende Schreibweisen:
Exponent
j
Potenz
αj
−∞
α−∞
0
=0
0
0
0
0
1
2
3
4
5
6
α0
α2
α3
α4
α5
α6
1
α
α2
α3
α4
α5
α6
=α+1
= α · α3
= α · α4
= α · α5
=1
=α
= α2
= α3
= α2 + α
= α2 + α + 1
= α2 + 1
0
0
1
0
1
1
1
0
1
0
1
1
1
0
1
0
0
1
0
1
1
7
α7
α7
= α · α6
=1
0
0
1
α1
Polynom
α2
= α · (α + 1)
= α · (α2 + α)
= α · (α2 + α + 1)
= α3 + α2
= α3 + α2 + α
= α · (α2 + 1)
= α3 + α
Zyklus wiederholt sich
Binär
α 1
Die folgenden Aussagen gelten für die Tabellendarstellung unter Vernachlässigung der letzten Zeile,
die nur demonstrieren soll, dass αj die Elemente des Erweiterungskörpers (ohne 0) zyklisch durchläuft.
Die 23 = 8 Elemente des Erweiterungskörpers sind
•
•
•
•
in
in
in
in
der
der
der
der
dargestellt.
ersten Spalte über die Exponenten des primitiven Elements α,
zweiten Spalte als Potenzen des primitiven Elements α,
dritten Spalte in Polynomschreibweise (Umformung mittels α3 = α + 1) und
vierten Spalte in der binären Kurzschreibweise für die Polynome
Zugehörige Unterlagen
Herunterladen