Beispiel 162
F¨ ur K = Z 2 = GF (2) und p(x) = x 2 + x + 1 gilt in ¨ ahnlicher Weise Z 2 [x]/(p) = {0, 1, x, x + 1} .
F¨ ur die Addition und Multiplikation modulo p ergibt sich
+
p0 1 x x + 1
0 0 1 x x + 1
1 1 0 x + 1 x
x x x + 1 0 1
x + 1 x + 1 x 1 0
·
p0 1 x x + 1
0 0 0 0 0
1 0 1 x x + 1
x 0 x x + 1 1
x + 1 0 x + 1 1 x
Aus diesen beiden Tabellen folgt, dass Z 2 [x]/(p) mit den angegebenen Verkn¨ upfungen + p und · p einen K¨ orper mit 4 Elementen bildet (den wir schon fr¨ uher gesehen haben).
Diskrete Strukturen 3.7 Konstruktion endlicher K¨orper 250/556
c
Ernst W. Mayr
Beispiel 163
F¨ ur K = Z 2 und q(x) = x 2 + 1 gilt wiederum
Z 2 [x]/(q) = {0, 1, x, x + 1} .
F¨ ur die Addition und Multiplikation modulo q ergibt sich nunmehr jedoch
+
q0 1 x x + 1
0 0 1 x x + 1
1 1 0 x + 1 x
x x x + 1 0 1
x + 1 x + 1 x 1 0
·
q0 1 x x + 1
0 0 0 0 0
1 0 1 x x + 1
x 0 x 1 x + 1
x + 1 0 x + 1 x + 1 0
Aus der zweiten Tabelle folgt, dass Z 2 [x]/(q) \ {0} bzgl. · q keine Gruppe bildet. Der
3.8 Redundante Datenspeicherung und Fehlerkorrektur Seien nat¨ urliche Zahlen k, t und s so gew¨ ahlt, dass
k + 2t ≤ 2 s − 1 .
Sei weiter K = GF (2 s ), und seien c 0 , . . . , c k−1 ∈ K . Wir fassen die c i sowohl als Elemente von K als auch (in frei festzulegender, eindeutiger Weise) als Bin¨ arw¨ orter der L¨ ange s auf.
Sei weiter α ein primitives Element in K = GF (2 s ) (existiert nach Satz 127) und seien
Diskrete Strukturen 3.8 Redundante Datenspeicherung und Fehlerkorrektur 252/556
c
Ernst W. Mayr
g(x) :=
2t
Y
i=1
(x − α i ) ,
c(x) :=
k−1
X
i=0
c i x i , und
d(x) =
k+2t−1
X
i=0
d i x i := g(x) · c(x) .
Wir sagen, dass der Vektor der Koeffizienten von d(x) den Vektor (c 0 , . . . , c k−1 )
kodiert (Reed-Solomon-Code RS(s, k, t)).
Satz 164
F¨ ur jedes s ∈ N und k, t ∈ N mit k + 2t ≤ 2 s − 1 ist der Reed-Solomon-Code RS(s, k, t) t-fehlerkorrigierend und 2t-fehlererkennend.
Das bedeutet, dass, falls bei der ¨ Ubertragung des Vektors der d i nicht mehr als 2t der d i ’s ver¨ andert werden, dies erkannt werden kann. Werden h¨ ochstens t der d i ’s
ver¨ andert, so k¨ onnen die urspr¨ unglichen d i ’s sogar rekonstruiert werden.
Diskrete Strukturen 3.8 Redundante Datenspeicherung und Fehlerkorrektur 254/556
c
Ernst W. Mayr
Beweis:
Sei (f 0 , . . . , f k+2t−1 ) der sich nach der ¨ Ubertragung ergebende Code-Vektor, sei e i := f i − d i f¨ ur i = 0, . . . , k + 2t − 1, und seien
e(x) :=
k+2t−1
X
i=0
e i x i und f (x) :=
k+2t−1
X
i=0
f i x i .
Dann gilt f (x) = d(x) + e(x), und es folgt
f (α i ) = e(α i ) f¨ ur alle 1 ≤ i ≤ 2t .
Beweis (Forts.):
In Matrixschreibweise sieht dies wie folgt aus:
1 α α
2α
3. . . α
k+2t−11 α
2α
4α
6. . . α
2(k+2t−1)1 α
3α
6α
9. . . α
3(k+2t−1). .
. . . . . . . . . . . . . . . .
1 α
2tα
4tα
6t. . . α
2t(k+2t−1)
·
e
0e
1e
2. . . e
k+2t−2e
k+2t−1
=
f(α) f (α
2) f (α
3)
. . . f(α
2t)
.
Falls nur e i1, . . . , e ir ungleich 0 sind, fallen Spalten weg und es ergibt sich
ungleich 0 sind, fallen Spalten weg und es ergibt sich
α
i1α
i2. . . α
irα
2i1α
2i2. . . α
2irα
3i1α
3i2. . . α
3ir. .
. . . . . . . . . .
α
2ti1α
2ti2. . . α
2tir
·
e
i1e
i2. . . e
ir
=
f(α) f(α
2) f(α
3)
. . . f (α
2t)
.
Diskrete Strukturen 3.8 Redundante Datenspeicherung und Fehlerkorrektur 256/556
c
Ernst W. Mayr
Beweis (Forts.):
Immer wenn die Anzahl r der Spalten ≤ der Anzahl 2t der Zeilen ist, hat diese Matrix vollen Spaltenrang (Vandermonde-Matrix).
Wenn (e(α i ) =) f (α i ) = 0 f¨ ur i = 1, . . . , 2t, dann ist e i = 0 f¨ ur alle i eine L¨ osung, und zwar dann die einzige (Spaltenrang).
Falls ≤ t Fehler aufgetreten sind, k¨ onnen wir entsprechende e ij eindeutig
bestimmen (z.B. durch Probieren) und damit die d i rekonstruieren.
4. Die elementaren Z¨ ahlfunktionen
4.1 Untermengen
Definition 165 (Binomialkoeffizienten)
n 0
:= 1 ∀n ∈ N 0
n k
:= 0 n < k, n ∈ N 0 , k ∈ N
n k
:=
n − 1 k
+
n − 1 k − 1
sonst n, k ∈ N
Diskrete Strukturen 4.1 Untermengen 258/556
c
Ernst W. Mayr
Satz 166
Sei N eine Menge mit |N | = n Elementen. Die Menge aller k-elementigen Untermengen von N wird bezeichnet mit
N k
.
Es gilt:
N k
= |N |
k
= n
k
.
Beweis:
Seien n, k ≥ 0, a ∈ N .
1
n 0
und k > n sind klar.
2
Definiere
S a :=
A ∈
N k
; a ∈ A
, S ˜ a :=
A ∈
N k
; a / ∈ A
.
Diskrete Strukturen 4.1 Untermengen 260/556
c
Ernst W. Mayr
Beweis (Forts.):
3
Damit gilt
S a ∪ S ˜ a =
N
k
, S a ∩ S ˜ a = ∅.
|S a | =
N \ {a}
k − 1
=
n − 1
k − 1
(per Induktion)
| S ˜ a | =
N \ {a}
k
=
n − 1
k
(per Induktion) Daraus folgt
n
k
=
n − 1
k − 1
+
n − 1
k
.
Zwischenbemerkung zur Nomenklatur:
(a + b) n =
n
X
k=0
n k
a k b n−k = (a + b) · (a + b) · · · (a + b)
Diskrete Strukturen 4.1 Untermengen 262/556
c
Ernst W. Mayr
4.2 Partitionen von Mengen und Zahlen 4.2.1 Ungeordnete Partitionen
1. Mengenpartitionen
Sei N eine Menge der Kardinalit¨ at n und sei k ∈ N 0 . Eine Zerlegung von N in k nichtleere, paarweise disjunkte Teilmengen heißt eine k-Partition von N . Die einzelnen Teilmengen heißen auch Klassen. Ihre Anzahl wird mit
S n,k
bezeichnet (die sog. Stirling-Zahlen der 2. Art).
Beispiel 167
N = {1, 2, 3, 4, 5}, k = 2
{1} ∪ {2, 3, 4, 5} {1, 2} ∪ {3, 4, 5}
{2} ∪ {1, 3, 4, 5} {1, 3} ∪ {2, 4, 5}
{3} ∪ {1, 2, 4, 5} {1, 4} ∪ {2, 3, 5}
{4} ∪ {1, 2, 3, 5} {1, 5} ∪ {2, 3, 4}
{5} ∪ {1, 2, 3, 4} {2, 3} ∪ {1, 4, 5}
{2, 4} ∪ {1, 3, 5}
{2, 5} ∪ {1, 3, 4}
{3, 4} ∪ {1, 2, 5}
{3, 5} ∪ {1, 2, 4}
{4, 5} ∪ {1, 2, 3}
⇒ S 5,2 = 15.
Weiter gilt: S n,1 = 1, S n,2 = Ubung, S ¨ n,n = 1.
Diskrete Strukturen 4.2 Partitionen von Mengen und Zahlen 264/556
c
Ernst W. Mayr
2. Zahlpartitionen Sei
N 0 3 n = n 1 + n 2 + . . . + n k mit n 1 , . . . , n k ∈ N und n 1 ≥ n 2 ≥ . . . ≥ n k .
Eine solche Zerlegung heißt k-Partition der Zahl n.
Die Anzahl aller k-Partitionen von n ∈ N wird mit P n,k
bezeichnet.
Beispiel 168 n = 8, k = 4.
8 = 5 + 1 + 1 + 1
= 4 + 2 + 1 + 1
= 3 + 3 + 1 + 1
= 3 + 2 + 2 + 1
= 2 + 2 + 2 + 2
⇒ P 8,4 = 5
Diskrete Strukturen 4.2 Partitionen von Mengen und Zahlen 266/556
c
Ernst W. Mayr