Zahlentheorie und fehlerk orrigierende Nachrichtenüber tragung

Werbung
... Der Laie: Dann lügen Sie eben ein bisschen.
Der Mathematiker: Das liegt mir aber nich t.
Der Laie: Warum nicht? Alle anderen lügen doch auch.
Der Mathematiker (nahe daran, der Versuchung nachzugeben, aber im
Widerstreit mit einer lebenslangen Ge wöhnung): Aber ich muss doch bei
der Wahrheit bleiben!
Der Laie: Sicher. Aber Sie könnten sie ein bisschen v erbiegen, wenn dadurch
verständlicher wird, was Sie eigentlich treiben.
Der Mathematiker (skeptisch, aber von seinem eigenen Wagemut bef lügelt):
Meinetwegen. Es käme auf einen Versuch an. ...
Ian Stewart.
Übersetzung: H.-M. Enz ensberger
Zahlentheorie und fehlerk orrigierende
Nachrichtenüber tragung
- “curiosit y driven research'' und mögliche An wendungen
von
Ernst-Ulrich Gekeler und Rainer Schulze-Pillot-Ziemen
Abstrakte Algebra hat heute in je dem Haushalt ihren Platz. Wer einen CD-Player, Satellitenfernsehen,
einen PC oder ein Handy benutzt,
verlässt sich (meist ohne es zu wis sen) darauf, dass fehlerkorrigierende Codes für das zuv erlässige Arbeiten dieser Geräte sor gen. Die
etwa auf der CD digital, also in
Form von Folgen von Nullen und
Einsen, gespeicher te Information ist
schon bei einer fabrikneuen CD
nicht fehlerfrei (man spricht von bis
zu 500000 Bitfehlern bei der Pressung). Wenn dann noch Kratzer
und Staub hinzukommen, so wäre
das Ergebnis beim Abspielen w ohl
kaum besser als bei einer Schall platte von 1920 (oder der Lesekopf
geriete ganz aus der Spur), w enn
die Information nicht in einer Weise
gespeichert und gelesen würde, die
dafür sorgt, dass Fehler erkannt
und korrigiert werden. Das gleiche
Problem hat man bei der Über tragung von Signalen über gestör te
Kanäle wie etwa Funkstrecken. Und
was die Computer angeh t, so war
24
Die Theorie der fehlerkorrigierenden Codes ist ein Gebiet im Schnitt v on
Informationstheorie und Mathematik. Sie hängt mit vielen T eilgebieten
der Mathematik zusammen, unter ander em Kombinatorik, Algebr a, Geometrie und Zahlentheorie. Die A utoren stellen hier einige Aspekte dar ,
die mit ihren in der Zahlentheorie angesiedelten F orschungsgebieten in
Zusammenhang stehen und in ihr en Arbeitsgruppen F orschungsprojekte
angeregt haben.
die Unvermeidbarkeit von Bitfehlern anfangs ein ernsthaftes Ar gument dafür, dass längere Rechnungen mit digitalen Computern pr aktisch nicht durchführbar seien.
Man löst das Problem dadurch,
dass man die zu speichernden oder
zu übertragenden Signale in r edundanter Weise codiert, das heißt so,
dass auch bei Verlust oder Verfälschung einiger Informationssymbo le die verbleibenden richtigen Symbole ausreichen, um die Nachrich t
noch richtig zu erkennen. Redundanz kostet leider Zeit und Platz.
Die einfachste (und in dieser Hin sicht teuerste) Methode wär e es, alle Signale doppelt oder mehr fach
zu speichern oder zu über tragen.
In unseren Beispielen ist es aber
notwendig, die Codierung und De codierung der Signale ef fizient
durchzuführen: Der Speicherplatz
beziehungsweise die Über tragungszeit ist knapp oder teuer , und es
kommt darauf an, den Lese- oder
Übertragungsvorgang in Echtzeit
durchzuführen, also etwa bei einem
Telefongespräch die Wör ter in der
gleichen Zeit zu über tragen, in der
sie geprochen werden. Die zur Fehlerkorrektur nötige Redundanz
darf deshalb die Länge der zu über tragenden Nachricht nur so wenig
wie möglich erhöhen, und Codie rung und Decodierung des Signals
müssen schnell gehen.
Universität des Saarlandes
Ein einfaches Beispiel für eine spar same Verwendung von Redundanz
finden Sie in jedem neuer en Buch:
den ISBN-Code des Bu ches. Die ursprüngliche Information über das
Buch wird hier zunächst in eine (im
Dezimalsystem) 9-stellige Zahl ge speichert: eine Länderkennziffer,
eine 3-stellige Verlagsnummer und
eine 5-stellige Buchnummer (3-540
® Springer-Verlag, 3-528 ® Vieweg-Verlag etc.). Die zehnte Ziffer
a10 wird aus den ersten 9 Zif fern
a1,..., a9 dann so berechnet: Man
bildet die Summe b = a1 + 2a2 +
3a3 + ... + 9a9 und teilt dann b mit
Rest durch 11, schreibt also b =
11* c + r mit 0 £ r £ 10. Der Rest
r ist das zehnte Symbol des ISBNCodes des Buches; ein Rest r = 10
wird dabei durch den Buchstaben X
wiedergegeben. Dieses z ehnte
Symbol nennt man die Prüfzif fer.
Die erfahrungsgemäß häuf igsten
Fehlertypen sind die falsche Übermittlung einer einzelnen Ziffer (sogenannter Einzelfehler) und das
Vertauschen nebeneinanderstehender Zif fern (Nachbar vertauschung). Sie werden (wenn nur ein
Fehler aufgetreten ist) entdeckt, da
bei jedem derartigen Fehler (wie
man sich leicht überlegen kann) die
Prüfziffer nicht mit dem nachge rechneten Ergebnis übereinstimmt.
Eine Fehlerkorrektur wird hier
noch nicht erreicht, ein Fehler vom
beschriebenen Typ wird aber entdeckt und führ t etwa bei der Aufnahme einer Buchbestellung zu
einer Rückfrage.
danten) Nummern von Geldscheinen11), 12).
Die mathematischen Methoden, die
bei der fehlerkorrigierenden Übertragung oder Speicherung in unse ren zu Anfang genannten Beispielen
der elektronischen Speicherung
oder Übermittlung von Nachrichten eingesetzt werden, sind deutlich komplizierter. Wir wollen ein
paar der mathematischen Grundideen im Folgenden erklären; sie
stammen vor allem aus der Algebr a
und der Kombinatorik und benut zen Ergebnisse, die Studier ende der
Mathematik meistens ber eits im
Grundstudium lernen. Bei der Su che nach weiteren Möglichkeiten,
die Effizienz der Codierungsv erfahren zu steigern, ist man aber in den
letzten Jahren darauf aufmerksam
geworden, dass Ergebnisse neuester Forschungen der Zahlentheo rie und der Algebraischen Geometrie die Möglichkeit für erhebliche
Fortschritte bei diesem technischen
Problem in sich bergen. Es handelt
sich dabei um Ergebnisse, die ohne
jeden Bezug zu Anwendungen aus
purer mathematischer Neugier ge funden worden sind. Eine (no twendig sehr grobe: vergleiche das Eingangsmotto) Beschreibung dieser
Methoden und Resultate und der
Verbindungen, die F orschungsarbeiten unserer Arbeitsgruppen da mit haben, bildet den Hauptteil die ses Artikels.
Codes und Vektorräume
Wir wollen davon ausgehen, dass
die zu speichernde oder zu über tragende Nachricht bereits auf irgendeine Weise in eine Folge von
Zahlen verwandelt worden ist, die
genau die zu übermittelnde Inf or-
Andere populäre Beispiele sind die
Strichcodes der Waren (wird ein
Fehler erkannt, so bleibt der bestätigende Piepston des Scanners an
der Kasse aus und es wird ein erneuter Leseversuch
Codierung
Kanal
Decodierung
gemacht)
wahrscheinlich
und die (in
wird f erkannt,
a wird im
Fehler f wird zu
der Tat auf Botschaft a Codewort x x x hinzugefügt x’ x’ zu x korri® x’= x + f
® giert und zu a
recht trick- ®
umgewandelt
zurückgerechnet
reiche Weise redunmagazin forschung 2/1999
a
®
mation beschreiben (siehe 8) für
die interessante Frage, wie man das
etwa bei Musik macht). Unser Problem soll jetzt nur sein, wie man
diese nicht redundante primär e Information in möglichst geschickter
Weise redundant codier t und wie
man beim Decodier en der Nachricht am anderen Ende eines ge störten Übertragungskanals die Redundanz dazu ausnutzt, die Über tragungsfehler zu korrigieren (der
Einfachheit halber reden wir jetzt
nur noch von Übertragung der Information und sehen Speicherung
und späteren Abruf quasi als Über tragung durch die Zeit statt dur ch
den Raum an). Jede dieser zu über mittelnden Zahlen wollen wir für
die Übertragung in eine ( 01)-Folge
einer festen Länge n verwandeln
(codieren).* Da es genau 2n verschiedene (01)-Folgen der festen
Länge n gibt, ist das sicher möglich,
wenn die Anzahl M der insgesamt
benutzten Zahlen nich t größer ist
als 2n. Je größer die Länge n der
benutzten (01)-Folgen bei festem
M ist, desto größer wir d die Redundanz, desto mehr steigt aber
auch der Aufwand bei der Über tragung. Die Menge C der bei der Codierung benutzten ( 01)-Folgen der
Länge n nennen wir den Code, er
hat wieder M Elemente. Ist M=2k,
k
so heißt das Verhältnis n die Rate
unseres Codes. Je größer die Rate
ist, desto geringer sind unser e
Übertragungskosten. Wollen wir
etwa nur eine 0 oder 1 über tragen
und codieren 0 als (0,0,0,0,0) und
1 als (1,1,1,1,1), so hat der Code
(der 5-fache Wiederholungscode)
die Rate 15 . In diesem F all ist außerdem klar: Decodier en wir eine am
Ende des Kanals empfangene Folge
als 0, falls sie mehr Nullen als Ein sen enthält und andernf alls als 1, so
erhalten wir am Ende die rich tige
Nachricht, wenn nicht mehr als 2
Folgenglieder bei der Über tragung
--------------------------------------------------------------*Man nennt das Block-Codierung. A uf die
ebenfalls häuf ig verwendeten “convolutional codes'' gehen wir hier nich t ein.
25
verfälscht worden sind: Dieser
Code korrigiert (bis zu) 2 Fehler.
Die Aufgabe der Codierungstheo rie ist jetzt klar: Wir w ollen bei gegebenem M einen Code C finden,
der möglichst viele F ehler korrigiert
und dennoch eine möglichst hohe
Rate hat, der also bei gegebener
Korrekturqualität die Kosten für die
Übertragung minimier t.
Dass hierfür im Prinzip sehr gute
Lösungen möglich sind, f olgt aus
dem informationstheor etischen
Satz von Shannon (1948): Danach
gibt es für jede Rate, die kleiner ist
als die Kapazität des Übertragungskanals, eine Folge von Codes wachsender Länge n und Elementan zahl, für die die Wahrscheinlichkeit
eines nicht korrigierten Übertragungsfehlers mit gegen
strebendem n gegen 0 strebt. Die Kapazität ist dabei eine Größe, die v on
der Wahrscheinlichkeit eines Übertragungsfehlers abhängt; sie hat
beispielsweise für die Über tragung
von Nullen und Einsen mit F ehlerwahrscheinlichkeit 1/10000 ungefähr den Wert 0,99898.* Der Satz
liefert aber keinen Hinweis darauf,
wie man solche Codes f indet, sondern sichert nur deren Existenz.
¥
Sowohl für den Codierungs- als
auch für den Decodierungsv organg
wird es zweckmäßig sein, mit den
(01)-Folgen zu rechnen. Das grundlegende Hilfsmittel hier für ist das
Rechnen in der Menge F2, die nur
aus 0 und 1 besteht. Die Addition
und die Multiplikation sind so erklärt: 0 + 1 = 1 + 0 = 1, 1 + 1 = 0
+ 0 = 0, 0 . 1= 1 . 0 = 0 . 0 = 0, 1
. 1 = 1. Diese Addition und Multi plikation erfüllen vernünftige Rechengesetze, etwa Kommutativität,
Assoziativität, Distributivität, Exis tenz einer Negativ en (1 = -1, denn
1 + 1= 0, 0= -0) und Möglichkeit
_________________________________
*Allgemein ist die Kapazität 1+p log2(p)+
(1-p) log2 (1-p) bei Fehlerwahrscheinlichkeit p; log 2 bezeichnet dabei den
Logarithmus zur Basis 2.
26
Abb. 1: Die ebene K urve V1 mit Gleichung y2=x3-3x2+2x
der Division** dur ch Elemente ungleich 0 (1/1=1). Man sagt dazu, die
Menge F2 bilde einen Körper und
nennt die genannten Rechengesetze die Körperaxiome***.
Die Addition können wir auf die
n
mit F2 bezeichnete Menge der ( 01)Folgen der Länge n übertragen:
Man kann zwei solche Folgen addieren, indem man die Einträge, die an
der gleichen Stelle stehen, zueinan der addier t, also etwa (n=4):
(1,0,1,1)+(1,1,0,1)=(0,1,1,0). Auch
diese Addition von Folgen erfüllt
vernünftige Rechengesetze wie
_________________________________
** Kommutativität: a + b = b + a, a . b =
b . a,
Assoziativität: (a+b) + c = a + (b+ c)
und a . (b . c) = (a . b) . c,
Distributivität: a . (b+c) = a . b + a . c,
Existenz einer Negativ en: Zu a gibt es
- a mit a + (-a) = 0,
Möglichkeit der Division: Zu a ¹ 0 gibt
es ein Element 1 / a mit a . 1 / a=1.
*** Körper sind etwa auch die Menge Q
der rationalen Zahlen (Quotienten a/b
von ganzen Zahlen), R der reellen Zahlen (endliche oder unendliche Dezi malbrüche) oder C der komplexen
Zahlen (Zahlen der Form a+bi mit reellen a, b und i2 = -1). Dagegen bildet
die Menge Z = {0, ±1, ±2, ...} der ganzen Zahlen nur einen Ring, da Divisionen hier im allgemeinen nich t durchführbar sind. Im nächsten Abschnitt
werden weitere Körper mit endlich
vielen Elementen eingeführ t.
Kommutativität, Asso ziativität und
Existenz einer Negativ en zu einer
beliebigen Folge (x = -x). Man sagt,
n
die Menge der Folgen in F2 mit die ser Addition sei ein Vektorraum
über dem Körper F2 und definiert
n
noch für x aus F2 die Multiplik ation
mit Elementen a des Grundkörpers
F2 durch a . (x1, ... ,xn) = (a . x1,
..., a . xn); damit gilt dann auch das
Distributivgesetz.**** Die Elemen te x = (x1, ..., xn) dieses Vektorraums heißen dann au ch Vektoren
(Zeilenvektoren der Länge n).
Besonders einfach zu handhaben
n
sind nun Codes C in F2 , die unter
der Addition und der Multiplik ation
mit Elementen des Grundkörpers
F2 abgeschlossen sind, für die also
die Summe x + y zweier beliebiger
Codeworte x, y aus C wieder in C
liegt (trivialer weise ist dann mit a
aus dem Grundkörper F2 auch
a × x in C ). Einen solchen Code
nennt man linear (oder Unterraum
n
des Vektorraums F2 ). Ist C linear,
so ist die Anzahl der Elemente v on
C gleich 2k mit einer ganzen Zahl k
zwischen 0 und n; diese Zahl heißt
die Dimension von C. Man hat ferner zwei einfache Möglichkeiten, C
_________________________________
****Genauso ist auch Rn ein Vektorraum
über dem Körper R, etc.
Universität des Saarlandes
darzustellen, ohne alle Elemente
aufzählen zu müssen: Einmal k ann
man k Codeworte c1, ..., ck angeben mit der Eigenschaft, dass sich
jedes beliebige Code wort c aus C
(in eindeutiger Weise) als Linearkombination a1 c1+ ... +akck mit
Koeffizienten a1, ... , ak aus dem
Körper F2 schreiben lässt. Ein sol ches System c1, ..., ck von Elementen von C nennt man eine Basis*
von C. Schreiben wir c1=c11, ...,
c1n),..., ck=(ck1,...,ckn), so kann
man die dabei vorkommenden cij
zur Erzeugermatrix (generator
matrix)
æ c11 ... c1n ö
÷
ç
G = ç ... ... ... ÷
÷
çc
è k 1 ... ckn ø
aus k Zeilen und n Spalten anordnen. Zum Anderen kann man ein
lineares Gleichungssystem
a11x1 + ... + a1nxn = 0
... = 0
an - k,1x1+...+an - k,nxn = 0
aus n - k Gleichungen in n Unbekannten x1,...,xn angeben, so dass C
genau aus den Folgen (x1,...,xn) besteht, für die x1,...,xn Lösung des
Gleichungssystems ist (das heißt,
alle n - k Gleichungen er füllt). Die
Koeffizienten aij (i zwischen 1 und
n - k, j zwischen 1 und n) sind dabei
wieder aus F2, also gleich 0 oder 1.
Auch diese Koeffizienten ordnet
man zu einer Matrix an, der Kontrollmatrix
æ a11 ... a1n ö
ç
÷
...
... ÷
H = ç ...
ça
÷
è n - k ,1 ... a n - k ,n ø
aus n-k Zeilen und n Spalten. Für
ein beliebiges x = (x1,...,xn) aus
n
F2 hat man das Matrizenprodukt
x . Ht = ((a11x1+...+a1nxn), ... ,
(an-k,1x1+...+an-k,nxn)),
_________________________________
* Auf die gleiche Weise ist eine Basis für
einen Vektorraum über einem beliebi gen Körper K (etwa K=R) definiert; die
Dimension k des Vektorraums ist also die
Anzahl der frei wählbaren Koeffizienten
a1, ... , ak (der Freiheitsgrade).
magazin forschung 2/1999
einen Vektor der Länge n - k. Der
Code C besteht dann aus genau
n
den Vektoren x aus F2 , für die dieses Produkt s = x . Ht der Nullvektor (0, ... , 0) ist. Sendet man
das Codewort x über einen gestör ten Übertragungskanal, so empfängt man am Ende einen Vektor
x', der im Allgemeinen nich t gleich
x ist und meist auch nicht mehr zu
dem Code C gehört. Das Syndrom s
= x' . Ht liefert einen Hinweis
darauf, welcher Fehlervektor f = x'
- x bei der Über tragung aufgetreten ist: Man macht die (optimistische) Annahme, dass nur w enige
Fehler auftreten und dass daher f
der Vektor mit den w enigsten
Einsen als Einträgen und dem
Syndrom s = x' . Ht = f . Ht ist;
der empfangene Vektor x' wird
dann als das Codewort x = x' - f
decodiert. Für das Ausrechnen des
Syndroms und das Aufsuchen des
Fehlervektors mit diesem Syndrom
gibt es sehr effiziente Prozeduren beim Decodieren macht sich damit
die Eigenschaft des Codes, linear zu
sein, bereits bezahlt. Auch die Codierung erfolgt in effizienter Weise
durch eine Matrizenmultiplikation,
diesmal mit der Erzeugermatrix.
Als ein Beispiel für diese Begrif fe
betrachten wir den Hamming-Code
der Länge 7 über F2 (nach R. W.
Hamming, einem der Begründer
der Codierungstheorie). Seine K ontrollmatrix ist die Matrix
æ 0 0 1 0 1 1 1ö
H = ç 0 1 0 1 0 1 1÷
÷
ç
ç 1 0 0 1 1 0 1÷ ,
ø
è
deren Spalten alle von (0,0,0) ver3
schiedenen Vektoren aus F2 sind.
Seine Erzeugermatrix ist
æ1
ç
0
G= ç
ç0
ç
è0
0 0 0 1 1 0ö
÷
1 0 0 0 1 1÷
0 1 0 1 1 1÷
÷
0 0 1 1 0 1ø .
Der Code hat die Dimension 4, al so 16 Elemente, und die Rate 4/7.
Zählt man die Code worte auf, so
findet man, dass je zw ei von ihnen
sich in wenigstens 3 Positionen unterscheiden. Man nennt die Anzahl
der Positionen, in denen sich zw ei
Vektoren unterscheiden, der en
Hamming-Abstand und die Anzahl
der Einträge ¹ 0 eines Vektors dessen Hamming-Gewicht (oder einfach
Gewicht). Der Hamming-Code ent hält 7 Vektoren vom Gewicht 3 und
7 Vektoren vom Gewicht 4 sowie
den Nullvektor und den Vektor,
dessen Einträge alle 1 sind; der mi nimale Abstand von 2 Worten des
Hamming-Codes (der Minimalabstand des Codes) ist ebenso wie das
minimale Gewicht d eines von 0
verschiedenen Code wortes (das
Minimalgewicht des Codes) gleich 3
(bei jedem linear en Code ist
zwangsläuf ig der Minimalabstand
gleich dem Minimalge wicht). Ein
solcher Code der Länge 7, der Dimension 4 und des Minimalge wichts 3 heißt kurz ein [7, 4, 3]Code.
Wird bei der Über tragung eines
Codewortes x nur einer der Einträ ge verfälscht und der Vektor x' im
Hamming-Abstand 1 empf angen,
so ist (weil je zwei Codeworte wenigstens Abstand 3 haben) x das
einzige Codewort im Abstand 1
von x'. Decodiert man wieder x'
als das am nächsten bei x' gelegene
Codewort (minimum distance Decodierung), so wird in diesem Fall der
Übertragungsfehler korrigiert. Allgemein gilt: Hat ein linear er Code
das Minimalgewicht 2e + 1, so kann
er e Fehler korrigieren. Umformuliert lautet die Aufgabe der Codie rungstheorie daher jetzt: Finde (li neare) Codes mit möglichst hoher
Rate und gleichzeitig möglichst ho hem Minimalgewicht. Beim Satz
von Shannon haben wir ber eits gesehen, dass man die Länge des
Codes anwachsen lassen muss,
wenn man bei gegebener Rate die
Fehlerwahrscheinlichkeit klein machen will. Wir sagen jetzt, eine
Serie von Codes Cj sei asymptotisch
gut, wenn die Längen nj der Cj für
wachsendes j gegen ¥ streben und
27
gleichzeitig die Raten Rj und die
relativen Minimalabstände dj =dj / nj
gegen Grenzwerte R, d streben, die
von 0 verschieden sind. Man k ann
(ähnlich wie beim Satz v on Shannon) zeigen, dass es asympto tisch
gute Serien von Codes gibt. In einer
solchen Serie strebt die Fehlerwahrscheinlichkeit gegen 0. Auch
dieser Beweis ist aber nicht konstruktiv und liefert keine Möglichkeit, solche Folgen explizit anzugeben. Den besten möglichen Wert*
für R bei gegebenem d bezeichnet
man mit a (d).
Endliche Körper und
Reed-Solomon-Codes
Das nächste Beispiel soll der ReedSolomon-Code sein, der die Grundla ge der bei CD-Playern üblichen Co dierung bildet (CIR, cr oss interleaved Reed-Solomon-Code 8)). Dafür benötigen wir aller dings einen
etwas allgemeineren Typ von Körper als den bisher betr achteten
Körper F2.
Wir wählen zunächst eine für das
Folgende festgehaltene Primzahl**
p. Sind a, b ganze Zahlen, so schreiben wir a = b (in Worten: a und
b haben dieselbe Restklasse modulo p), falls a und b bei Teilen durch
p denselben Rest lassen (äquivalent:
falls a - b durch p teilbar ist). Die
Menge Fp aller möglichen Restklassen ist also {0,1, 2 ,...,( p - 1 )}. Definiert man in Fpdie “Addition''
und “Multiplikation'' durch a + b : =
( a + b ) und a × b : = ( a × b ), so gel ten wie im vorigen Abschnitt die
üblichen Rechenregeln (Körperaxiome, siehe Fußno te 2 auf S. 26).
Insbesondere existiert für jede von
0 verschiedene Restklasse a (also
die Klasse einer nich t durch p teil___________________________
* Genauer: Das Supremum der möglichen
Werte.
**Eine ganze Zahl p heißt prim, wenn sie
größer ist als eins und nur sich selbst und
die Eins als Teiler besitzt. Die ersten
Primzahlen sind 2,3,5,7,11,13, ... .
28
baren Zahl a) ein multiplikativ
1
Inverses b =: (a ) , d.h. der Rest b
einer ganzen Zahl b mit a b = 1
(oder: ab - 1 ist durch p teilbar).*** Oft lässt man die B alken
“_” in a weg, wenn vom Kontext
her klar ist, dass mit Restklassen
und nicht mit Zahlen gerechnet
wird. Für p=2 erhalten wir so das
bisherige F2= {0,1} = {0,1}. Etwas
weniger trivial ist das Rechnen z.B.
in F13. Die Inversen von 1, 2, ..., 12
modulo 13 sind durch die folgende
Tabelle 1 gegeben.
-
-1
Dabei drückt etwa 11 = 6 aus,
dass 11 × 6 - 1 = 66 - 1 = 5 × 13dur ch
p = 13 teilbar ist.
Byte, d.h. einer Folge von 8 Bits
entsprechen. Die Konstruktion der
Körper Fq mit nicht primem q ist
recht technisch**** und soll hier
nicht durchgeführt werden.
Um einen Eindruck zu vermitteln,
beschreiben wir den Körper F8.
Als Menge besteht F8 aus allen Ausdrücken a0 + a1x + a2x2 mit a0,
a1, a2 Î F2, wobei a0 aus F2 mit
dem Element a0 + 0 . x + 0 . x2
von F8 identifiziert wird. Zwei solche Ausdrücke a0 + a1 + a2x2 und
b0 + b1x + b2x2 stimmen überein,
wenn a0 = b0, a1 = b1 und a2 = b2
ist; addiert werden sie komponentenweise. Die Multiplikation in F8
Tab. 1: Multiplikative Inversen in F13.
Tab. 2: Multiplikationstafel v on F8
Die Menge Fp mit der oben gege benen Addition und Multiplik ation
ist also ein Körper im Sinne des v origen Abschnitts, und zw ar ein endlicher Körper mit p Elementen. Allgemeiner gilt: Ist K ein endlicher
Körper mit q Elementen, so ist q
Potenz einer Primzahl p. Umgekehrt existiert zu jeder Primzahlpo tenz q ein Körper mit genau q Elementen, und je zwei solcher Körper haben dieselbe Struktur , können also miteinander identif iziert
werden. Sie werden mit Fq bezeichnet. Für die Codierungstheo rie sind hauptsächlich die Körper
Fq mit q = 2, 4, 8, ... wichtig, da z.B.
die Elemente von F2 einem Bit und
die von F256 (256 = 2 8) einem
_________________________________
***Für diese letzte Eigenschaft ist w esentlich, dass p prim gewählt wurde!
ist durch Tabelle 2 gegeben, wobei
die der 0 entsprechende Zeile bzw.
Spalte weggelassen wurde.
In ähnlicher Weise könnten auch
die Additions- und Multiplik ationstafeln für größere endliche Körper,
z.B. für F256 angegeben werden.
Wegen der für Codierung und De codierung er forderlichen astronomischen Zahl von Rechenoperationen liegen diese Tabellen für die
entsprechenden Körper Fq in Form
eigens konzipierter Computerchips
vor.
Viele Aspekte der “ge wöhnlichen''
Arithmetik können auf die K oeffizi_________________________________
****Der naheliegende Ansatz, mit R estklassen modulo q zu rechnen, führt
nicht zu einem Körper, sondern nur
zu einem Ring mit q Elementen.
Universität des Saarlandes
entenbereiche Fq übertragen werden. Für unsere Zwecke sind dies
neben der Polynomarithmetik die
Lineare Algebra (Theorie der Vektorräume, der linear en Gleichungssysteme und Determinanten) und
die Algebraische Geometrie (Theo rie der nichtlinearen Gleichungssysteme).
Für einen gegebenen endlichen
Körper Fq und eine natürliche Zahl
n
n sei wie oben Fq die Menge aller
“n-Vektoren'' x:= (x1,x2,...,xn) mit
Koordinaten x1,...,xn in Fq. Wie im
vorigen Abschnitt ist Fqn mit der
komponentenweisen Addition und
Multiplikation mit einem Sk alar a
Î Fq ein Vektorraum über Fq der
Dimension n.
Ebenfalls wie im vorigen Abschnitt
können wir Unterräume (linear e
Codes) C in Fqn betrachten; jeder
solche Unterraum hat eine Dimen sion dim C= k £ n; er enthält qk
Elemente und besitzt eine B asis mit
k = dim C Elementen. Auch die
Erzeugermatrix und die Kontrollmatrix für C können wir genau wie
im vorigen Abschnitt als Matriz en
mit Einträgen aus Fq hinschreiben.
Über jedem solchen endlichen Kör per Fq kann man daher linear e
Codes genauso betrachten, wie es
im vorigen Abschnitt über F2 geschehen ist. Insbesonder e sucht
man auch asympto tisch gute Serien von Codes über dem Körper
Fq und versucht, die (von q abhängige) Schranke a lin
q ( d ) für die (bei
wachsender Länge n der Codeworte) asympto tisch mögliche Rate
eines linearen Codes über Fq bei
gegebenem relativen Minimalabstand d zu bestimmen. Es gib t hierfür eine Reihe von Abschätzungen
nach unten und nach oben. Für uns
relevant ist hier vor allem die
Gilbert-Varshamov-Schranke: Es gilt
lin
a q ( d ) ³ 1 - H q ( d) falls
q-1
0£d £
.
q
Dabei ist die Funktion Hq(x) durch
Hq(x) = x logq(q -1) - x logq x - (1magazin forschung 2/1999
Abb. 2: Die Fläche V2 mit Gleichung x5+y3+z2=0. Der Knoten entspricht dem
Punkt (x,y,z)=(0,0,0)
x) logq (1 - x) gegeben (log q ist der
Logarithmus zur Basis q). Diese
Abschätzung sicher t also ähnlich
wie der Satz von Shannon die Exis tenz sehr guter Serien v on linearen
Codes wachsender Länge. Ihr Be weis gibt aber keinen Hinweis auf
mögliche Konstruktionen solcher
Serien; in der Tat sind die ersten
Serien, die diese Schr anke realisieren bzw. übertreffen, erst 1982 mit
Hilfe von Methoden der Algebr aischen Geometrie konstruiert worden, auf die wir in der F olge noch
eingehen werden (Modulkur ven).
Wir können jetzt den angekündig ten Reed-Solomon-Code def inieren. Es sei q = pr eine Primzahlpo tenz. Für eine natürliche Zahl t sei
Lt die Menge der Polynome f (X)=
a0 + a1X + a2X2+...+atXt vom
Grad £ t mit Koeffizienten a0 ,... , at
aus dem Körper Fq. Ist n = q - 1
und sind z1,...,zn die von 0 verschie-
denen Elemente von Fq, so liefert
jedes Polynom f Î Lt durch Auswerten in den Punkten z1,...,zn ein
n-Tupel cf = (f(z1),...,f(zn)) in Fqn (für
z in Fq und ein Polynom f wie oben
liegt f(z)= a0 + a1z + a2z2 + ...+
atzt auch in Fq). Da ein Polynom in
Lt nicht in mehr als t verschiedenen
Punkten den Wert 0 annehmen
kann, kann man leicht zeigen, dass
der Code CRS(q, t), der aus allen cf
für die f Î Lt besteht, ein linearer
Code der Dimension t +1 vom Minimalabstand n - t, also ein [n,t+
1,n - t]-Code ist. Er heißt der R eedSolomon-Code mit diesen P arametern. Dieser Code ist in ge wisser
Weise optimal: Bei gegebener Di mension k kann ein Code der Län ge n keinen größeren Minimalabstand als n - k + 1 haben; Codes,
die diese Schranke erreichen, heißen maximum distance separable
(MDS-Codes). Die Länge des Co des ist aber durch q begrenzt, so
29
dass sich diese Konstruktion nicht
zur Erzeugung asympto tisch guter
Serien von Codes eignet (bei diesen
wächst die Länge der Codes bei
festem q über alle Grenzen).
Ist q = 2r eine Potenz von 2, so
kann man aus einem Code über
dem Körper Fq auch einen Code
über F2 gewinnen, denn man k ann
die Elemente von Fq auch als Vektoren der Länge r über F2 auffassen. Setzt man diese D arstellung
der Einträge eines Vektors x =
n
(x1,...,xn) aus Fq in jeden seiner
Einträge x1,...,xn ein, so erhält man
Vektoren der Länge nr über F2.
Aus einem Code mit den P arametern [n,k,d] über Fq wird dadurch
einer mit den Parametern [nr, kr, d'
³ d] über F2. Auch der Code über
F2, den man auf diese Weise aus
dem Reed-Solomon-Code über Fq
gewinnt, heißt ein Reed-SolomonCode; er ist kein MDS-Code mehr.
Er hat aber die für pr aktische
Zwecke interessante Eigenschaft,
dass Verfälschung mehrerer nebeneinanderliegender Bits (etw a durch
einen Kratzer oder ein Staubkorn
auf der CD) meist nur ein oder
zwei Codeworte des Codes über
Fq betrifft und daher korrigiert
werden kann.
Die Reed-Solomon-Codes sind der
einfachste Fall einer sehr weit reichenden Konstruktionsmethode,
die auf V. D. Goppa zurückgeht.
Die Idee ist dabei, die Polynome in
Lt durch beliebige Funktionen f mit
Werten in Fq auf irgendeinem mathematischen Objekt X mit n Elementen zu ersetzen. Statt die Polynome aus Lt in Elementen aus Fq
auszuwerten, wertet man dann die se Funktionen f in den Elementen
x1,...,xn von X aus und erhält wie derum Vektoren der Form (f(x1),
n
..., f(xn)) aus Fq . Wenn man genug über X und die zu betrachtenden Funktionen auf X weiß, so
kann man hoffen, auf diese Weise
gute (lineare) Codes zu f inden. Ein
reicher Vorrat von geeigneten Ob jekten und Funktionen f indet sich
30
im Grenzgebiet
zweier mathematischer Teildisziplinen, die scheinbar
weit entfernt von
allen Anwendungen sind und de ren wesentliche
Entwicklungslinien
von völlig ande ren, rein innermathematischen Ge dankengängen geprägt sind: der Al gebraischen Geometrie und der
Algebraischen
Zahlentheorie.
Algebraische
Kurven und
rationale
Funktionen
Prof. Dr. Ernst-Ulrich
Gekeler, geb. 1951, studierte
als Stipendiat der Studienstif tung des Deutschen Volkes
Mathematik und Physik in
Tübingen und Bonn. Nach
dem Diplom in Mathematik
(1974), der anschließenden
Zivildienstzeit und der Promotion in Mathematik (1979)
war er an verschiedenen Insti tutionen (Sonder forschungsbereich der DFG, Universität Bonn, MPI für Mathematik) in der mathemati schen Forschung tätig. Auf die Habilitation (1986) folgten längere Forschungsaufenthalte am Institute f or Advanced Study in Princeton und am Institut des Hautes
Etudes Scientif iques in Bures-sur-Yvette. Von 1988 bis
1991 war er Heisenberg-Stipendiat der DFG. Der
Schwerpunkt seiner wissenschaftlichen Inter essen liegt
im Bereich der Zahlentheorie, der arithmetischen
Geometrie, der Kombinatorik und der ComputerAlgebra.
Seit 1991 ist er Professor für Mathematik an der
Universität des Saarlandes.
Wir benötigen jetzt einige K onzepte der Algebraischen Geometrie.
Eine algebraische Varietät (zunächst
über dem Körper R der reellen
Zahlen) ist das Nullstellengebilde,
d.h. die Menge der gemeinsamen
Nullstellen im reellen Vektorraum
Rn, einer Menge {j1 (X1, X2,...,Xn)
,..., jr (X1,X2,...,Xn)} von Polynomen in den n Variablen
X1,X2,...,Xn. Jede Varietät besitzt
eine Dimension, die “Anzahl der
freien Parameter''. Varietäten der
Dimension eins heißen (algebr aische) Kurven, Varietäten der Di mension zwei Flächen. Schreiben
wir einfacher X, Y, Z für X1, X2, X3,
so ist z.B. (siehe Abbildungen 1-3)
V1 = {(x,y)Î R2| y2 = x3-3x2+2x}
eine Kurve in R2;
V2 = {(x,y,z) Î R3 | x5+y3+z2=0}
eine Fläche in R3;
V3 = {(x,y,z) Î R3|x + y + z = 0,
z2 - xy + y(z-1)=0} eine Kurve in
R3.
Für i=1,2,3 ist Vi das Nullstellengebilde von
j (X, Y)=Y2 -X3+ 3X2 -2X (i=1)
j (X, Y, Z) = X5+Y3 + Z2 (i=2)
j1(X,Y,Z)=X+Y+Z,j2(X,Y,Z)=Z2XY + Y(Z-1)
( i=3).
Die Einbettungsdimension n, die
Dimension dim(V) und die Zahl r
der polynomialen Gleichungen für
V sind durch die Ungleichung
dim(V) ³ n - r
verknüpft; in einfachen Fällen wie
oben gilt sogar Gleichheit. Eine
Kurve V besitzt eine wichtige Invariante, ihr Geschlecht g(V). Dies
ist eine nichtnegative ganze Zahl,
die anschaulich die “Komplexität”
von V beschreibt. Das Geschlecht
kann auf verschiedene Weisen def iniert werden (geometrisch-topolo gisch, funktionentheor etisch, algebraisch; wir gehen hier nich t näher
darauf ein) und in konkreten Fällen
auch leicht berechnet werden.
Ist z.B. V die ebene algebraische
Kurve, die durch
die Gleichung
i j
a
X
Y
å
f(X,Y) = i , j ij
= 0 vom Grad
d ³ 1 definiert wird (der höchste
auftretende Exponent i + j ist d),
so ist g(V) = ½ (d-1)(d-2).* Dementsprechend hat unsere Kurve V1
das Geschlecht 1, während sich für
_________________________________
* Wenn V als Kurve über dem Körper C
singularitätenfrei ist. Andernfalls muss die
Formel noch leicht korrigiert werden.
Universität des Saarlandes
V3 mit einer kleinen Zusatzüber legung das Geschlech t 0 ergibt.
Im Folgenden sei V eine Kurve in
Rn, die durch die Polynome
j1(X1,...,Xn),..., jr(X1,...,Xn) beschrieben wird.* Wir fassen die Xi
(i=1,2,...,n) als Funktionen auf V
auf: Dem Punkt x = (x1,...,xn) von
V wird durch Xi der Wert xi zugeordnet. Eine rationale Funktion auf
V ist eine Funktion f(X1,...,Xn), die
sich als Quotient g(X1,...,Xn) /
h(x1,...,Xn) von Polynomfunktionen
g(X1,...,X n) und h(X1,...,X n) darstellen lässt, wobei wir nur verlangen,
dass der Nenner h(X1,...,X n) auf V
nicht die Nullfunktion ist. Der Wertebereich einer rationalen Funktion
ist R È{¥}, wobei der Wert ¥ =
“unendlich'' in x angenommen
wird, wenn h(x) = 0, aber g(x) ¹ 0
ist. Solche Funktionen können bei
Gültigkeit der üblichen Rechenregeln addiert, subtrahiert, multipliziert und dividier t werden. Sie bilden deshalb einen Körper R(V).
Für jede rationale Funktion f auf V
und x Î V ist die Verschwindungsordnung ordx(f) von f in x definiert**: Dies ist eine ganz e Zahl,
die
größer als 0 ist, falls f(x) = 0 ist
(“f verschwindet in x”);
gleich 0 ist, falls f(x) ¹ 0, ¥ ist;
kleiner als 0 ist, falls f(x) = ¥ ist
(“f hat an x einen Pol der Ordnung
-ord x(f )'').
Wie wir sehen werden, ist für die
Codierungstheorie wich tig, ob wir
Nullstellen und Pole rationaler
Funktionen auf V willkürlich vorgeben können, und “wie viele'' rationale Funktionen ggf. die v orgegebenen Nullstellen und Pole besitzen.
Um dies etwas genauer zu formulieren, führen wir einige weitere
Begriffe ein.
_________________________________
* Zusätzlich machen wir einige technische
Annahmen: V soll irreduzibel und singu laritätenfrei sein.
** Hier geht die Voraussetzung der Singu laritätenfreiheit von V ein. Außerdem
verlangen wir, dass f nicht identisch verschwindet.
magazin forschung 1/1999
Ein Divisor D auf V ist eine endliche
Menge {x1,..., xs} von Punkten von
V, versehen mit “Multiplizitäten''
m1 ,..., ms (beliebigen ganzen Zahlen). Wir schreiben s D=m1x1+...+
Der
msxs oder kurz D= å mixi.***
s
i =1
Grad von D ist grad (D)= å mi. Jei =1
de rationale Funktion f ¹ 0 hat auf
V höchstens endlich viele Nullstel len und Pole; deshalb besitzt die
Summe div (f ) = å ordx(f )x, die
sich formal über alle Punkte x von
V erstreckt, nur endlich viele Terme, ist also ein Divisor. Divisoren
dieser Form heißen Hauptdivisoren.
s
Für einen Divisor D = å mixi seti =1
zen wir
L(D):=
{
}
rationale Funktionen f ¹ 0 È 0 .
{}
mit div ( f ) ³ -D
Eine Funktion f ¹ 0 gehört demnach zu L(D), wenn gilt: f (x) ist
endlich, falls x ¹ x1,...,xs ist, und
ordxi (f ) ³ -mi für i = 1, 2,..., s. Ist
mi positiv, so darf f an xi also einen
Pol der Ordnung höchstens mi besitzen, ist mi negativ, so muss f an xi
eine Nullstelle mindestens der
Ordnung -mi besitzen.**** Offensichtlich ist L(D) abgeschlossen un ter Addition und Multiplik ation mit
Konstanten und bildet deshalb
einen Vektorraum über R.
Als Beispiel diene die Kurve V3.
Mittels der ersten Gleichung x + y
+ z =0 eliminieren wir die Koordinate z. Die zweite Gleichung wird
dann äquivalent zu (-x -y)2 - xy + y
(-x-y-1) = 0, d.h. zu y = x2. Auf V3
stimmt also die Funktion Y mit X2
und Z mit - X - X2 überein. Deshalb
ist der Körper R(V3) der rationalen
Funktionen die Menge der A us_________________________________
*** Die Summen dienen hier lediglich da zu, die verschiedenen Terme zusammenzufassen; sie haben keine Bedeutung als Rechenvorschrift.
**** Genauer gesagt, müssen wir statt der
“affinen'' Kurve V die entsprechende
“projektive'' Kurve V betrachten, die
aus V durch Hinzufügen von Punkten
p1,...,pt “im Unendlichen'' entsteh t.
Wir erhalten dann zusätzliche Bedin gungen für das Verhalten von f an
den p1,...,pt.
drücke g(X) / h(X), wobei g(X) und
h(X) Polynome sind, h(X) nicht das
Nullpolynom. Ein Punkt x = (x, y, z)
auf V3 ist durch seine x-Koordinate
s
gegeben, ein Divisor D = å mixi
i =1
durch die Multiplizitäten mi Î Z und
die xi in xi = (xi,yi,zi). Die zugehörige projektive Kurve V ist V È {p},
wobei p ein Punkt ist mit ordp(X) =
-1, d.h. X besitzt an p einen Pol
erster Ordnung. Machen wir die
vereinfachende Annahme, dass alle
Multiplizitäten mi in D positiv sind
und der “unendlich f erne Punkt'' p
nicht in D auftaucht, so besteht
L(D) aus denjenigen rationalen
Funktionen f (X) = g(X) / h(X), die
(a) f (X) hat Pole höchstens an den
xi, höchstens der Or dnung mi, und
(b) grad g (X) £ grad h (X)
erfüllen. Dabei ist (b) hier die ange sprochene zusätzliche Bedingung
für das Verhalten von f(X) “im Unendlichen''. Beide Bedingungen zu sammen sind äquivalent zu
(a') h(X) = (X-x1)m1 (X-x2) m2 ...
(X-xs)ms,
(b') grad g(X) £ grad h(X)=
grad(D).
Jedes f (X) in L(D) ist bei festgehaltenem Nenner h(X) eindeutig
durch seinen Zähler g(X) bestimmt; deshalb ist
dim (L(D)) = dim (Vektorraum der
Polynome des Grades £ grad (D))
= grad (D) + 1
(jeder der grad (D) + 1 Koeffizienten von g(X) kann frei gewählt werden). Insbesondere hängt die Dimension von L(D) nur vom Grad
des Divisors D ab, nicht jedoch von
der Position der einzelnen Punkte
xi in D.
Goppa-Codes und Satz
von Riemann-Roch
Alle im vorigen Abschnitt einge führten Begriffe: Varietäten, Kurven, Flächen, rationale Funktionen,
Divisoren, die Räume L(D), ... geben auch Sinn, wenn man den Koef31
fizientenbereich R durch einen beliebigen Körper K ersetzt, etwa einen der endlichen Körper Fq. Zum
Beispiel liefert die Gleichung der
Kurve V1 eine “Kurve'' V1/F5 über
dem Körper F5, wenn wir ihre Koeffizienten nicht als ganze Zahlen,
sondern als Elemente von F5 interpretieren. Diese Kurve besitzt als
“rationale Punkte'' die Paare (x,y)
ÎF52, die der Gleichung y2 = x3-3x22x in F5 genügen.* Verloren geht
“nur'' die sinnliche Anschauung,
Kurven, Flächen etc. als geometri sche Gebilde im dr eidimensionalen
physikalischen Raum aufzuf assen,
erhalten bleiben die (rich tig definierten) algebraischen Eigenschaf ten und Beziehungen. Die r ationalen Funktionen werden dann genauso wie die beim Reed-SolomonCode betrachteten Polynomfunktionen über Fq zu Funktionen, de ren Werte in Fq liegen.
Wir können daher jetzt an die Be merkung über Goppa-Codes am
Ende des vorletzten Abschnitts an knüpfen und die dor tige Idee konkretisieren, indem wir Funktionen
aus einem geeigneten Vektorraum
L(D) in Punkten der zugrunde lie genden algebraischen Kurve über
einem endlichen Körper Fq auswerten, in denen sie keinen Pol haben.
Es sei also V eine (irreduzible, singularitätenfreie und projektive)
algebraische Kurve über Fq, x1,...,
xn seien Punkte von V, G = x1 + ...
+ xn der aus x1, ..., xn gebildete Divisor. Ferner sei D ein Divisor, in
dem keines der xi mit einem Koeffizienten ¹ 0 vorkommt (“der Träger von G ist disjunkt zu dem von
D''). Der durch G und D gegebene
Goppa-Code C (G,,D) ist dann die
Menge aller Vektoren (f (x1) ,...,
n
f (xn)) in Fq , die man mit f aus L(D)
erhält.
________________________________
* Es sind dies die 7 Punkte (0,0), (1,0)
(2,0), (3,1), (3,4), (4,2), (4,3).
Betrachtet man statt V1/F5 die entsprechende projektive Kurve V 1 /F5, so
kommt ein weiterer Punkt hinzu.
32
Abb. 3: Die Raumkur ve mit Gleichungen x+y+z=0 und z2-xy+y(z-1) = 0. Sie liegt
auf dem elliptischen K egelmantel, der durch die zw eite Gleichung
gegeben ist.
Es gilt: (a) der Minimalabstand d
von C (G, D) erfüllt d ³ grad (D),
(b) die Dimension von C(G,D) ist
dim C(G,D)=dim L(D)-dimL(D-G).
Will man wissen, w elche Dimension und damit welche Rate ein
Goppa-Code hat, so muss man also
die Dimensionen von Vektorräumen vom Typ L(D) berechnen.
Wie das in einem Spezialf all geht,
haben wir (über dem Körper R)
am Ende des vorigen Abschnitts ge sehen.
Einer der berühmtesten (und in sei ner verschärften Fassung 4),1) auch
tiefsten und folgenreichsten) Sätze
der Algebraischen Geometrie v erallgemeinert den dort gefundenen
Sachverhalt auf algebraische Kurven
V beliebigen Geschlech ts.
Satz von Riemann und Roch
Ist V eine Kurve vom Geschlecht g =
g(V) ³ 0 und D ein Divisor auf V, so
ist L(D) = {0} für grad (D) < 0. Ist
grad (D) ³ 0, so gilt für die Dimension
von L(D):
dim L(D)=1 - g + grad (D)+h1(D),
wobei der Fehler term h1(D) den
Ungleichungen 0 £ h1(D) £ g genügt.
Weiter ist h1(D) = 0 für grad (D) >
2g - 2.
Der Satz liefert also (in vielen Fällen
scharfe) obere und untere Schranken für die gesuchte Dimension.
Diese Schranken sind umso besser,
je kleiner das Geschlech t g ist.
Wenden wir den Satz von Riemann-Roch auf Goppa-Codes zu ei ner Kurve vom Geschlecht g an, so
erhalten wir (mit den früher en BeUniversität des Saarlandes
zeichnungen) folgende Abschätzun gen:
Ist grad (D) < n, so ist C (G, D)
ein [n,k,d] - Code mit Dimension
k ³ grad (D) + 1 - g (mit Gleichheit,
falls grad (G) > 2g - 2 gilt) und mit
Minimalabstand d ³ n - grad (D).
Kurven mit vielen rationa len Punkten
Die Länge n der Worte eines Goppa-Codes ist höchstens die Anzahl
der rationalen Punkte auf der zu grunde liegenden Kurve. Wir sind
damit bei einem klassischen Pr oblem der Algebraischen Geometrie
angekommen, nämlich bei der Fr age: Wieviele Fq - rationale Punkte
kann eine Kurve V/Fq maximal besitzen?* Ist V eben, d. h. in der pr ojektiven Ebene über Fq durch eine
Gleichung gegeben, so hat V höchstens q2 + q + 1 rationale Punkte.
Entsprechend hat die zugehörige
2
affine Kurve als Teilmenge von Fq
höchstens q2 Punkte. Jedoch lassen
sich die meisten Kurven nur durch
viele Gleichungen in einem hochdi mensionalen Koordinatenraum beschreiben. Solche Kurven V können
in Abhängigkeit von ihrem Geschlecht g (V) sehr viel mehr Punkte besitzen. Die Bestimmung der
Maximalzahl Nq(g) rationaler Punkte von Kurven V über Fq vom
Geschlecht g und die Konstruktion
entsprechender Kurven sind trotz
vieler Einzelergebnisse weitgehend
offene Fragen. An ihnen wird auch
in Saarbrücken intensiv gearbeitet.
Eine erste Aussage wird durch den
folgenden Satz gegeben, der für g =
1 auf H. Hasse zurück geht und für
beliebige g von A. Weil bewiesen
wurde. Eine Verallgemeinerung auf
Varietäten höher er Dimension
wurde von Weil vermutet und
schließlich 1973 von P. Deligne bewiesen.
_________________________________
* Wie üblich, soll V/ Fq wieder projektiv,
singularitätenfrei und irreduzibel sein.
magazin forschung 2/1999
Satz von A. Weil
Die Zahl N der rationalen Punkte einer Kurve V vom Geschlecht g über
Fq unterscheidet sich von q + 1 um
höchstens 2g × q .
Insbesondere ist bei f ixiertem g die
Anzahl der rationalen Punkte auf
einer Kurve vom Geschlecht g über
Fq beschränkt. Um Goppa-Codes
von unbegrenzt wachsender Länge
zu konstruieren, müssen wir des halb Folgen von Kurven betrachten,
deren Geschlecht ebenfalls unbegrenzt wächst. Wir nehmen nun
an, man habe eine solche F olge von
Kurven Vj wachsenden Geschlech ts
gj über Fq mit (ebenfalls wachsender) Punktanzahl Nj gefunden, für
die der Quo tient Nj / gj den Grenzwert A > 0 hat. Dann kann man
(wie eine relativ einfache Überlegung zeigt) zu gegebenem d > 0 eine Serie Cj von Goppa-Codes der
wachsenden Länge nj zu den Kurven Vj konstruieren, für die die Ra te Rj von Cj gegen einen Grenz1
wert R ³ 1 - - d und der relatiA
ve Minimalabstand dj gegen d
Satz von Drinfeld und Vladut
Ist Vj (j = 1,2,3,...) eine Folge von
Kurven vom Geschlecht gj (g1 < g2 <
g3 < ...) über Fq mit Nj rationalen Punkten, so ist der Grenzw ert
lim N j / g j £ q - 1 . **
j®¥
Der letzte Satz mach t jedoch keine
Aussagen über Schranken für Nq(g)
bei festen Werten von q und g. Solche Schranken, die diejenigen aus
Weils Satz verschärfen, können mit
einem Verfahren hergeleitet werden, das auf J. Oesterlé und J-P.
Serre zurückgeht. Es liefert keine
geschlossene Formel in q und g,
sondern nur einen Algorithmus zur
Berechnung einer ober en Schranke
OSq(g) für Nq(g). Dafür muss eine
komplizierte Funktion fq,g(x1,x2,...)
von vielen reellen Variablen x1,x2,...
minimiert werden, was mit den Methoden der Optimierungstheorie
und der Praktischen Mathematik
durchgeführt werden kann 13) ***.
Die folgende Tabelle 3 (loc. cit.)
zeigt einige Werte der OesterléSerre-Schranke für q = 2. Numerische Experimente lassen er war-
Tab. 3: Obere Schranke OS2(g) für die Ma ximalzahl N2(g) rationaler Punkte
von Kurven vom Geschlecht g über F2.
strebt. Um große Rate bei gegebe nem relativem Minimalabstand zu
erreichen, müssen wir also v ersuchen, Kurven wachsenden Ge schlechts g zu konstruieren, für die
der Quotient aus Punktanzahl N
und Geschlecht g einen möglichst
großen Wert annimmt.
Ist g sehr groß gegenüber q, so ergibt sich aus dem Satz von Weil für
den Quotienten N / g die Abschätzung
q +1
N / g£2 q+
» 2 q.
g
Derart große Punktezahlen lassen
sich aber asympto tisch (d.h. für
sehr große g) nicht realisieren. Ein
Ergebnis von Drinfeld und Vladut
besagt nämlich:
ten, dass der Quo tient OS2 (g) / g
für g ® ¥ gegen 2 - 1 = 0.4142
... konvergiert, was auch durch den
Satz von Drinfeld und Vladut nahe gelegt wird.
Ganz anders gelager t ist die Frage
nach unteren Schranken für Nq(g).
Hier müssen Kurven V/Fq vom Ge_________________________________
**Genauer: Der Limes superior über alle
derartigen Folgen limN j / g j ist £ q - 1.
Ist q ein Quadrat, so gilt sogar
Gleichheit. Ob Gleichheit für alle
Primzahlpotenzen q gilt, z.B. für q = 2,
ist nicht bekannt.
*** Verwendung eines Standar d-Computeralgebrapakets wie MAPLE oder
MATHEMATICA zur Bestimmung v on
OSq(g) ist wegen der Komplexität von
fq,g (x1,x2,...) ausgeschlossen.
33
schlecht g mit möglichst vielen
Punkten (damit letztlich au ch optimale Goppa-Codes) e xplizit konstruiert werden. Zum Beispiel r ealisiert die Kurve Y2 + Y = X3 + X
vom Geschlecht 1 über F2 die
Oesterlé-Serre-Schranke. Für sie
nimmt N2(1) den maximal mögli chen Wert 5 an.* Für q=2 und g £
10 sowie einige weitere Geschlechter g sind die genauen Werte von
N2(g) bekannt; bis auf N2(7) = 10
stimmen sie mit OS2(g) überein.
Die zugrundeliegenden Kurven sind
hier schon so kompliziert, dass sie
nicht mehr ohne weiteres niedergeschrieben werden können, sondern
indirekt charakterisier t werden
müssen. Für g = 11 kennt man bis
heute nur die Ungleichungen 13 £
N2(11) £ 14; Entsprechendes gilt
für die meisten größer en Werte
von g.
Die Konstruktion solcher Kurven ist
ein brandaktuelles Gebiet der ange wandten Zahlentheorie, w obei neben allgemein wissenschaftlicher
Neugier und der Hof fnung auf effiziente Codes sicher au ch sportliche
Gesichtspunkte eine Rolle spielen.
Für einige Werte von g hält gegenwärtig die Saarbrücker Gruppe die
Weltrekorde. So werden in 5) z.B.
für g = 38, 66 und 81 (Rekord-)
Kurven über F2 mit 30, 48, 56
Punkten konstruiert. Die OesterléSerre-Schranken liegen hier bei 33,
50 bzw. 59.
Die Schwierigkeit liegt hauptsäch lich darin, dass es keinen direkten
Zusammenhang zwischen der Ge stalt der Gleichungen, die eine al gebraische Kurve definieren, und
der Anzahl der Punkte auf dieser
Kurve gibt. Aussagen über die
Punktezahl auf einzelnen Kurven
und erst recht auf Serien von Kurven werden daher vor allem in solchen Fällen möglich, in denen man
sehr viel mehr über die Struktur
_________________________________
* Auf ihr liegen nämlich die vier P unkte
2
(0,0),(0,1),(1,0),(1,1) aus F2 sowie der
unendlich ferne Punkt, d.h. es ist N=5.
34
und die Eigenschaften
der
Kurve weiß, als
ihre Gleichungen unmittelbar
verraten, in denen die Kurve
also aus dem ei nen oder ande ren Grund, der
mit der jetzt be absichtigten Anwendung nichts
zu tun hat, das
Interesse der
Forschung auf
sich
gezogen
hat.
Prof. Dr. Rainer SchulzePillot-Ziemen , geb. 1951, studierte Mathematik in Heidelber g
und Göttingen. Nach der Pr omotion in Göttingen 1979 war er an
den Universitäten Berlin (FU),
Bielefeld und Köln tätig so wie zu
mehreren Gastaufenthalten in
den USA. Zur Zeit bef indet er
sich zu einem Forschungsaufenthalt am Institute for Advanced
Study in Princeton, US A.
Er wurde 1995 an die Universität des Saarlandes beru fen. Seine Hauptforschungsgebiete sind die Theorie der
Modulformen und die Theorie der quadr atischen
Formen, zwei Teilgebiete der Zahlentheorie.
Besonders viele der artige Kurven
gehen aus Konstruktionen her vor,
die ihren Ursprung in der Zahlen theorie haben. Zu nennen sind hier
insbesondere:
• Die Klassenkörper theorie - etwa
in 5) benutzt -, der en Formulierung und Beweis einen großen
Teil der zahlentheor etischen Forschung in der ersten Hälfte die ses Jahrhunder ts einnahm. Sie
beschreibt die Erweiterungen
von “in der Natur auftr etenden''
Körpern, etwa des Körpers Q
der rationalen Zahlen.
•Die Theorie der Modulf ormen
und Modulkur ven9), 10), 6) , deren
Anfänge in Arbeiten von Klein
und Poincaré am Ende des vorigen Jahrhunder ts liegen. Diese
Theorie hat in der zw eiten Hälfte
dieses Jahrhunder ts einen stürmischen Aufschwung genommen;
unter anderem verdanken wir ihr
auch den Beweis des Satzes von
Fermat durch Andrew Wiles. Sie
ist ein Querschnittsgebiet der Ma thematik mit Bezügen zur k omplexen Funktionentheorie, zur
Darstellungstheorie, zur algebr aischen und analytischen Zah lentheorie und zur Kombinatorik.
Sie ist untrennbar verwoben mit
der Theorie der elliptischen K urven, einem traditionellen Schwer-
punkt der Saarbrücker Mathematik (vgl. etwa 14)).
• Die Theorie der Drinf eld-Moduln. Dieses ziemlich junge Ge biet3) beschäftigt sich mit v erschiedenen Aspekten des R echnens mit endlichen Körpern Fq.
Es ist aus einer Modif ikation der
Theorie der Modulkur ven und
der elliptischen Kurven hervorgegangen.
Nachdem der Nachweis erbracht
worden ist, dass mittels der Zahlen theorie/Algebraischen Geometrie
sehr gute Codes konstruiert werden können, steht nun neben dem
Ausbau des theoretischen Fundaments die praktische Implementie rung auf der Tagesordnung. Enorme Schwierigkeiten (auch theoretischer Natur) bereiten vor allem die
Codierung und Decodierung, für
die effiziente Rechenverfahren entwickelt werden müssen. Bis zur
praktischen Nutzung von Codes,
die auf die beschriebene Weise
konstruiert wurden, wird daher sicher noch einige Zeit v ergehen. Die
Anzahl der Arbeiten, die zu diesem
Thema in den letzten Jahr en in der
Zeitschrift “Institute of Electrical
and Electronics Engineers (IEEE),
Transactions on Information Theo ry'' und anderen technischen Fachzeitschriften erschienen sind (siehe
etwa 2) und die dor t zitierte Literatur), ist aber ein Indiz dafür , dass an
Universität des Saarlandes
den Problemen der Umsetzung die ser theoretischen Fortschritte in die
Praxis intensiv gearbeitet wir d.
Es mag bemerkenswert erscheinen,
dass hier Gebiete als Grundlage
möglicher technischer An wendungen auftreten, die sich ohne jeden
Bezug zu solchen Anwendungen
entwickelt haben und gelegentlich
sogar als weltfremde Spielerei angesehen werden. Für Leser/innen
dieser Zeitschrift ist dies keineswegs überraschend: Greift angewandte Wissenschaft doch stets
auf das ganze Reservoir des Wissens zu, das die Grundlagenf orschung aus ihrer eigenen Mo tivation heraus entwickelt hat.
Literatur
1) P. Berthelot et al. (Hrsg.): Théorie des
Intersections et Théorème de RiemannRoch (SGA 6). Springer-Verlag 1971.
2) I. Blake, C. Heegard, T. Hoholdt, V. Wei:
Algebraic-geometr y codes. Information
theory: 1948--1998. IEEE Trans. Inform.
Theory 44 (1998), no. 6, 2596--2618.
3) E.-U. Gekeler et al. (Hrsg.): Drinf eld
Modules, Modular Schemes, and Appli cations. World Scientif ic 1997.
4) F. Hirzebruch: New Topological Methods
in Algebraic Geometr y. Springer-Verlag
1956.
5) A. Keller: Extremaleigenschaften von
Kreisteilungser weiterungen
rationaler
Funktionenkörper. Diplomarbeit, Saarbrü cken 1999.
6) M. Klein: Modulkur ven und Codes,
Diplomarbeit, Saarbrücken 1999 (in Vorbereitung).
7) J.H. van Lint: Introduction to Coding
Theory, 3. Aufl., Springer-Verlag 1998.
8) J.H. van Lint: Mathematics and the
Compact Disc. Nieuw Ar chief voor Wiskunde 16 (1988), 191-197.
9) M. Pfeifer: Relationen von Funktionen
auf X0(l) und zahlentheor etische Anwendungen. Disser tation, Saarbrücken 1998.
10) M. Schöpfer: Weierstraß-Punkte und
extremale Modulformen. Diplomarbeit,
Saarbrücken 1998.
11) R.-H. Schulz: Codierungstheorie. Vie weg-Verlag 1991.
12) R. Schulze-Pillot: Algebraische Codierungstheorie.
Vorlesungsausarbeitung,
Saarbrücken 1999.
13) J. Seibert: Obere Schranken für die
Punktezahl algebraischer Kurven über endlichen Körpern. Staatse xamensarbeit, Saar brücken 1998.
14) H.G. Zimmer: Basic Algorithms for
Elliptic Curves. In: “Number Theor y'', Diophantine, Computational, and Algebr aic
Aspects. K. Györ y et al. (Hrsg.), de
Gruyter-Verlag 1998.
SaarLB Wissenschaf tspreis
Zum ersten Mal schr eibt die SaarLB in diesem Jahr einen mit 5 0.000.- DM do tierten Wissenschaftspr eis aus. Er soll für eine
hervorragende wissenschaftliche Abhandlung v ergeben werden, die an einer Hochschule oder einem F orschungsinstitut des
Saarlandes abgeschlossen wur de. Insbesondere sollen Disser tationen, Habilitationen oder ander e wissenschaftlichen Arbeiten
gewürdigt werden, die neue Erkenntnisse und Ergebnisse beinhalten, der en Anwendung zu einer wir tschaftlichen Stärkung des
Standortes Saarland beitragen. Vorschläge aus der Univ ersität sind bei Vizepräsident Professor Raimund Seidel einzur eichen.
Anzeige SaarLB
Wissenschaftspreis
magazin forschung 2/1999
35
Herunterladen