• Keine Ergebnisse gefunden

Goppa Codes

N/A
N/A
Protected

Academic year: 2022

Aktie "Goppa Codes"

Copied!
8
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

In diesem Abschnitt beschreibtF/Fqeinen Funktionenk¨orper vom Geschlecht g mit exaktem Konstantenk¨orperFq.

Definition

Seien P1, . . . , Pn Stellen vom Grad eins und A=Pn

i=1Pi. Sei G ein weiterer Divisor mit supp(G)∩supp(A) = ∅. Der Goppa-Code zu A und G (mittels Auswertung) ist

C(A, G) ={(x(P1), . . . , x(Pn))|x∈ L(G)}.

1 Satz. Der Goppa-CodeC(A, G) ist ein (n, k, d)q-Code mit n= deg(A),

k = dim(G)−dim(G−A), d= deg(A)−deg(G) +cG,

wobei cG = min{deg(C)|C≥0 und C ∼G−B f¨ur ein 0≤B ≤A}.

Beweis. Die Aussage n = deg(A) ist klar. Weiter ist ev : L(G) →C(A, G), x 7→ (x(P1), . . . , x(Pn)) ein Epimorphismus mit Kern L(G−A). Also folgt C(A, G)∼=L(G)/L(G−A) und darausk = dim(G)−dim(G−A).

F¨ur x ∈ L(G)\{0} sei 0 ≤ B ≤ A definiert als Summe der Stellen Pi

mit x(Pi) = 0 und C ≥ 0 definiert als C = (x) + G−B. Dann gilt C ∼ G−B und C kommt in der Minimumsbildung vor. Umgekehrt seien C und B aus der Minimumsbildung. W¨ahle x ∈ F× mit (x) = C −G+B. Dann gilt x ∈ L(G)\{0}. Wir sehen, daß die Abbildungen (x) 7→ (B, C) und (B, C)7→(x) zueinander invers sind. Nun giltw(ev(x)) = deg(A)−deg(B) = deg(A)−deg(G) + deg(C) und die Minimumsbildungen ¨uber x ∈L(G) auf der linken und C mit den obigen Bedingungen auf der rechten Seite liefern dasselbe Ergebnisd.

1

(2)

2 Korollar. F¨ur deg(G−A)<0 gilt k = dim(G), d≥n−k+ 1−g.

F¨ur deg(G−A)≥2g−1 gilt k =n.

Beweis. Folgt aus dem Satz von Riemann Roch, siehe Matzat Skript Korol- lar 11.4.

Goppa-Codes mit deg(G−A) < 0 erf¨ullen nach der Singleton-Schranke also

n+ 1−g ≤d+k≤n+ 1.

Vergleich mit Reed-Solomon Codes

In diesem Abschnitt sei F = Fq(t). Wir zeigen, daß die Klasse der Goppa- Codes C(A, G) mit deg(A) ≤ q gleich der Klasse der Reed-Solomon Codes RSk(a, b) ist.

F¨ur z ∈F mit F =Fq(z),u∈F× und k≤0 definieren wir Vz,u,k =

k−1

X

i=0

Fqziu.

Dies ist einFq-Untervektorraum von F mit dim(Vz,u,k) =k.

3 Lemma. Sei z ∈F mit F =Fq(z).

F¨ur jedes D ∈ Div(F/Fq) gibt es ein bis skalare Vielfache eindeutig be- stimmtes u∈F× und ein eindeutig bestimmtes k ≥0 mitL(D) =Vz,u,k.

F¨ur jedes u ∈ F× und k ≥ 0 gibt es ein eindeutig bestimmtes D ∈ Div(F/Fq) mitL(D) =Vz,u,k.

Beweis. Ubung.¨

4 Satz. Jeder Goppa-Code C(A, G) mit deg(A) ≤ q ist gleich einem Reed- Solomon Code RSk(a, b) und umgekehrt.

Beweis. Sei C = C(A, G) mit deg(A) ≤ q. Es gibt eine Stelle P von F/Fq mit P 6≤ A. Sei z ∈ F× mit (x) = P und folglich F = Fq(z). Sei k = dim(C) und u ∈ F× mit L(G) = Vz,u,k. Sei a = (z(P1), . . . , z(Pn)) und b = (u(P1), . . . , u(Pn)). Da F = Fq(z) gilt z(Pi) 6= z(Pj) f¨ur Pi 6= Pj, also sind die Koordinaten vona paarweise verschieden. Außerdem gilt u(Pj)6= 0

(3)

f¨ur alle j, da sonst u ∈ L(D−Pj) und L(D−Pj) = Vz,u,k = L(D) folgen w¨urde. Aufgrund der Form von Vz,u,k ergibt sichC =RSk(a, b).

Sei C = RSk(a, b), wobei in der Definition von RSk(a, b) Polynome f ∈ Fq[t] mit deg(f) ≤ k −1 ausgewertet werden. Seien Pj = (t −aj)0 und A = Pn

i=1Pj. Sei u ∈ Fq[t] ein Interpolationspolynom mit u(aj) = bj. Sei G der Divisor mit L(G) = Vt,u,k. Dann gilt (tiu)(Pj) = aiju(aj) = aijbj und daraus ergibt sich C =C(A, G).

Dualer Code

Die Klasse der Goppa-Codes is abgeschlossen unter Dualisierung. Dies wird zum Beispiel f¨ur den Dekodierungsalgorithmus ben¨otigt.

5 Satz. Es gibt einen von A und G abh¨angigen kanonischen Divisor W mit C(A, G)=C(A, G)

f¨ur G =W +A−G.

Beweis. Der Beweis verwendet Differentiale und den Residuuensatz.

Wir schreiben die Parameter vonC(A, G) in Abh¨angigkeit vonA undG auf:

6 Satz. Der Goppa-CodeC(A, G) ist ein (n, k, d)q-Code mit n = deg(A),

k =i(G−A)−i(G),

d = deg(G)−(2g−2) +cG,

wobei cG = min{deg(C)|C≥0 und C ∼W −G+ ˜B f¨ur ein 0≤B˜ ≤A}.

Beweis. Die Aussage f¨ur n ist klar. Weiter gilt k = dim(G)−dim(G − A) = dim(W +A− G)−dim(W +A− G−A) = i(G−A)−i(G) und d = deg(A)−deg(G) +cG = deg(A)−deg(W+A−G) +cG = deg(G)− (2g−2) +cG. Es bleibt cG = cG zu zeigen. Sei C ≥ 0 und B,B˜ ≥ 0 mit A=B+ ˜B. Dann gelten die ¨Aquivalenzen:

C∼G−B ⇔C ∼W +A−G−B ⇔C ∼W + ˜B−G.

Also sind die C in den Minimumsbildungen f¨urcG und cG die gleichen und es ergibt sich cG =cG.

(4)

Dekodierung

Da es hier um Algorithmen geht, sind zuerst ein paar Worte ¨uber das Rech- nen in Funktionenk¨orpern erforderlich. Wir gehen davon aus, daß folgende Berechnungen durchgef¨uhrt werden k¨onnen.

1. Berechnung von g.

2. Berechnung aller Stellen vom Grad d.

3. Berechnung von vP(f) undf(P).

4. Berechnung einer Basis von L(D).

5. Lineare Algebra ¨uber Fq in F.

F¨ur diese Berechnungen existieren effiziente Algorithmen, deren Laufzeit polynomiell in der L¨ange der Eingabe ist. Dies gilt nicht f¨ur 2., da dort ca.

qd Stellen berechnet werden m¨ussen. Die Laufzeit f¨ur 2. ist polynomiell in g und qd.

Zum Vergleich hat die Syndromdekodierung eines (n, k, d)q-Codes eine Laufzeit von ca.qk, also eine in der L¨ange der Eingabe exponentielle Laufzeit.

Das Hauptziel ist daher, ein Dekodierverfahren f¨ur Goppa-Codes anzugeben, welches polynomiell in der L¨ange der Eingabe ist.

Die Idee besteht wie bei den Dekodierverfahren f¨ur Reed-Solomon Codes darin, das kombinatorische Problem der Bestimmung der Fehlerpositionen algebraisch zu l¨osen. Kennen wir die Fehlerpositionen, so k¨onnen wir den Fehlervektor mittels linearer Algebra wie bei den Reed-Solomon Codes be- stimmen (siehe Matzat, Beweis von Bemerkung 3.20). In beiden Schritten m¨ussen wir jedoch annehmen, daß die Anzahl der Fehlerpositionen jeweils durch eine eigene geeignete Schranke nach oben beschr¨ankt sind. Die Schran- ke beim ersten Schritt ist durche=⌊(d−1)/2⌋gegeben. Die Schranke beim zweiten Schritt ist durch d −1 gegeben. Beide Schranken k¨onnen so auch f¨ur Reed-Solomon Codes verwendet werden (d.h. es m¨ussen nicht etwa noch kleinere Schranken verwendet werden).

Wir verwenden das folgende Setting. Wir betrachten (wie im Skript von Matzat) den Code C = C(A, G) mit den Parametern (n, k, d). Das Ele- mentx∈C ist das gesendete Element, das Element y∈Fnq das empfangene Wort. Der Fehlervektor ist e = y −x. Wir nennen i Fehlerindex und Pi

Fehlerstelle, wenn ei 6= 0 gilt. Wir gehen zun¨achst von w(e) ≤ ⌊(d−1)/2⌋

aus.

Die Algebraisierung besteht nun im Prinzip darin, einen geeigneten Divi- sorH zu finden, so daß die Dekodierung anhand von yeinu∈ L(H) bestim- men kann, dessen Nullstellen gerade die Fehlerstellen beinhalten. Dann kann

(5)

man u(Pi) = 0 f¨ur alle i testen und so die Fehlerindizes herausfinden. Das Elementuheißt Fehlerortungsfunktion. Allgemeiner kann manH unduauch so w¨ahlen, daß man anstelle vonu(Pi) = 0 die Bedingung vPi(u)>−vPi(H)

¨uberpr¨uft. Diese Bedingung benennen wir wie folgt. F¨ur einen Divisor D und f ∈ L(D) sagen wir, daß Pi eine Nullstelle von f bez¨uglich D ist, wenn f ∈ L(D−Pi) gilt.

7 Lemma. Besitzt f1 ∈ L(D1) eine Nullstelle Pi bez¨uglich D1 und ist f2 ∈ L(D2) so besitzt f1f2 ∈ L(D1 +D2) die Nullstelle Pi bez¨uglich D1 +D2. Besitzt umgekehrt f1f2 eine Nullstelle Pj bez¨uglichD1+D2 und istPj keine Nullstelle von f2 bez¨uglich D2, so ist Pj eine Nullstelle von f1 bez¨uglich D1. Beweis. Die erste Aussage ist klar. Die zweite sieht man wie folgt: Es gilt

vPj(f1f2) = vPj(f1) +vPj(f2) =−vPj(D1) +vPj(f2)

≥ −vPj(D1+D2−Pj) =−vPj(D1)−vPj(D2−Pj).

Daraus ergibt sich vPj(f2)≥ −vPj(D2−Pj) wie gew¨unscht.

F¨ur Pj 6∈ supp(D) ist Pj eine Nullstelle von f bez¨uglich D genau dann, wennPj eine Nullstelle von f ist. Es ist auch m¨oglich, Nullstellen bez¨uglich Divisoren mit Vielfachheiten zu betrachten.

Wir definieren eine Bilinearform, genannt Syndrom, durch [·,·] :Fnq × L(G)→Fq, (x, z)7→

Xn

i=1

xiz(Pi).

Wir definieren weitere Bilinearformen durch

[·,·]v :Fnq × L(H)→Fq, (x, u)7→[x, uv]

f¨ur v ∈ L(G−H).

Das Dekodierverfahren f¨uhrt dann die folgenden Schritte aus:

1. Berechne

Vy =∩v∈L(G−H)ker([y,·]v)

={u∈ L(H)|[y, u]v = 0 f¨ur alle v ∈ L(G−H)}.

2. W¨ahle u∈Vy\{0} und berechne

Iy ={i|Pi ist Nullstelle von u bez¨uglich H}.

(6)

3. Berechne eine L¨osung (ei)i∈Iy ∈F#Iq y des Gleichungssystems X

i∈Iy

eiz(Pi) = [y, z] f¨ur allez ∈ L(G).

4. Setze e = ei f¨ur i ∈ Iy und ei = 0 f¨ur 1 ≤ i ≤ n, i 6∈ Iy. Ausgabe der Dekodierungx=y−e.

Wir bemerken, daß in Schritt 1 und Schritt 3 die v und z wegen der Linearit¨at nur ¨uber eine Basis von L(G− H) beziehungsweise von L(G) laufen m¨ussen.

Wir beweisen im folgenden die Korrektheit des Dekodierverfahrens unter geeigneten Voraussetzungen.

Wir stellen zuerst fest: Wegen C(A, G) = C(A, G) gilt [c, z] = 0 f¨ur alle c∈C(A, G) und z ∈ L(G). Wegen y−e=x∈C(A, G) folgt daher

[y, z] = [e, z]

f¨ur allez ∈ L(G). Wir k¨onnen also die unbekannte Information [e, z] mittels [y, z] f¨ur allez ∈ L(G) berechnen.

8 Proposition. Sei Ty die Summe der Fehlerstellen und ty = deg(Ty). Es gelte dim(H)≥ty+ 1 und deg(G−H)≥ty + 2g−1. Dann gilt

Vy =L(H−Ty)6= 0.

Beweis. Wegen dim(H) = dim(H−Ty+Ty)≤dim(H−Ty) + deg(Ty) folgt dim(H−Ty)≥dim(H)−deg(Ty)≥1. Dies zeigtL(H−Ty)6= 0.

Zum Beweis von L(H−Ty)⊆Vy seiu ∈ L(H−Ty) undv ∈ L(G−H).

Dann gilt uv ∈ L(G−Ty) und uv(Pi) = 0 f¨ur Pi ≤Ty. Es folgt [y, u]v = [y, uv] = [e, uv] =

Xn

i=1

eiuv(Pi) = 0, daei = 0 oder uv(Pi) = 0 gilt.

Zum Beweis von Vy ⊆ L(H − Ty) sei u ∈ Vy. Wegen L(H − Ty) =

Pi≤TyL(H−Pi) gen¨ugt es,u∈ L(H−Pi) f¨ur alleizu zeigen, also daßPieine Nullstelle vonubez¨uglichH ist. Nach Voraussetzung gilt deg(G−H−Ty)≥ 2g −1, also istG−H−Ty+D f¨ur alle D ≥0 nicht speziell. Daher gibt es vi ∈ L(G−H −Ty +Pi)\L(G−H −Ty), so daß vi die Nullstellen Pj mit Pj ≤Ty und Pj 6=Pi bez¨uglich G−H besitzt und Pi keine Nullstelle von vi

(7)

bez¨uglich G−H ist. Dann gilt uvi ∈ L(G−Ty +Pi), also uvi(Pj) = 0 f¨ur Pj ≤Ty und Pj 6=Pi. Wir erhalten

eiuvi(Pi) = Xn

j=1

ejuvi(Pj) = [e, uvi] = [y, uvi] = [y, u]vi = 0,

wobei sie die erste Gleichung ausej = 0 odervi(Pj) = 0 f¨ur j 6=iergibt und die letzte wegen u ∈ Vy. Da ei 6= 0 und Pi keine Nullstelle von vi bez¨uglich G−H, aber eine von uvi bez¨uglich G ist, ergibt sich, daßPi eine Nullstelle von u bez¨uglich H sein muß. Also folgtu ∈ L(H−Pi).

Unter den Vorausetzungen der Proposition ist nach Schritt 2 also eine Fehlerortungsfunktion u ∈ L(H) berechnet, deren Nullstellen bez¨uglich H die Fehlerstellen beinhalten.

Wir definieren t = max

H min{dim(H)−1,deg(G−H)−2g+ 1}.

Der garantierte Minimalabstand von C(A, G) ist dG = deg(G)−(2g−2).

Es gilt d ≥dG. 9 Lemma. Es gilt

⌊(dG−1−g)/2⌋ ≤t ≤ ⌊(dG−1)/2⌋.

Beweis. Zum Beweis der unteren Schranke sei t = ⌊(dG −1 −g)/2⌋ und H = (t+g)P1. Dann gilt dim(H) ≥ deg(H) + 1−g = t+ 1 und deg(G− H)−2g+ 1 ≥deg(G)−t−3g+ 1 =dG−t−g−1≥t. Es folgt t ≥t.

F¨ur die obere Schranke seiHmitt = min{dim(H)−1,deg(G−H)−2g+ 1}. Unter Beachtung von dim(H)≤deg(H)+1 folgt folgt 2t ≤dim(H)−1+

deg(G−H)−2g+1≤deg(H)+deg(G−H)−2g+1≤deg(G)−2g+1≤dG−1.

Also ergibt sich t ≤ ⌊(dG−1)/2⌋.

10 Satz. Der Dekodierungsalgorithmus kann bis zu t Fehler bei entspre- chender Wahl von H dekodieren.

Beweis. Sei t ≥ 0 mit t ≤ t. Entsprechende Wahl von H bedeutet, daß t ≤ min{dim(H)−1,deg(G−H)−2g+ 1} gilt, also die Voraussetzungen der Proposition im Fall ty ≤ t erf¨ullt sind. Aufgrund der Definition von t gibt es stets ein passendesH.

(8)

Am Ende von Schritt 2 umfaßt Iy dann in der Tat alle Fehlerstellen (und vielleicht noch weitere Stellen, die keine Fehlerstellen sind).

Sei Ty =P

i∈Iy Pi. Dann giltu∈ L(H−Ty) und u6= 0. Es folgt deg(H− Ty)≥0 und #Iy = deg(Ty)≤deg(H)≤deg(G)−2g+ 1−t=dG−1−t ≤ dG−1 ≤ d−1. Also hat das Gleichungssystem in Schritt 3 eine eindeutig bestimmte L¨osung.

Das beschriebene Verfahren geht auf Skorobogatov und Vladut (1990) zur¨uck. Ein Problem besteht in der geeigneten Wahl von H. Im allgemeinen k¨onnen wir H nur so w¨ahlen, daß ⌊(dG−1−g)/2 Fehler korrigiert werden k¨onnen. Um ein besseres Korrekturverhalten zu bekommen, k¨onnen wir bei- spielsweise versuchen, spezielle DivisorenH miti(H)>0 zu verwenden oder H so zu w¨ahlen, daß G−H−Ty in der Proposition nicht speziell ist. Hier- zu kann es erfoderlich sein, daß der Funktionenk¨orper geeignet konstruiert werden muß.

Diese etwas unzufriedenstellende Situation wird durch das Dekodierungs- verfahren von Feng und Rao (1993) behoben, mit dem man (f¨ur ungerades dG) stets bis zu ⌊(dG−1)/2⌋ Fehler korrigieren kann. In diesem Verfahren sind die Divisoren G und H Vielfache einer festen Stelle P vom Grad eins.

Mit trickreichen ¨Uberlegungen wird bewerkstelligt, daß die Syndrome [e, z]

nicht nur f¨ur z ∈ L(G), sondern auch f¨ur z ∈ L(G+λP) und λ ausrei- chend groß ausgerechnet werden k¨onnen. Das Problem bei der Berechnung der h¨oheren Syndrome [e, z] ist, daß zwar [e, z] = [y, z] f¨ur z ∈ L(G) gilt, dies aber f¨urz ∈ L(G+λP) falsch ist. MitG+λP an Stelle von Ggilt dann die Proposition wie gehabt und der Dekodieralgorithmus l¨aßt sich wie oben durchf¨uhren ([y, u]v = 0 muß geeignet durch [e, u]v = 0 ersetzt werden).

Ein gewisser Sch¨onheitsmangel des Verfahrens von Feng und Rao ist, daß nicht alle Stellen vom Grad eins f¨ur die Auswertung verwendet werden k¨onnen. Auch bleibt die Frage offen, ob es ein Verfahren gibt, daß bis zu

⌊(d−1)/2⌋ anstelle von⌊(dG−1)/2⌋ Fehler korrigieren kann.

Referenzen

ÄHNLICHE DOKUMENTE

Darstellung der Verkn¨ upfung von Aussagen mit Hilfe von Schaltern (geschlossen ⇐⇒ wahre Aussage, ge¨ offnet ⇐⇒ falsche Aussage) Und-Verkn¨ upfung (seriell) Oder-Verkn¨

Oktober-Vollklausur Analysis II f¨ ur Ingenieure. L¨ osungen

Gegeben seien drei Kugeln vernachl¨assigbarer Ausdehnung und gleicher Masse m an den Orten A, B und C , die mit d¨ unnen Stangen unterschiedlicher L¨ange und vernachl¨assigbarer

The identity based identification protocol proposed in [5] is an interactive identification protocol between a prover and a verifier, consisting of two parts: the first one, called

Die radikalen Zirkel-Vermeider sind noch einen Schritt weiter gegangen: Sie haben den Zirkel v ¨ollig aus ihren Konstruktionen verbannt; einziges zugelassenes Hilfsmittel ist

An die Quellensektion schließen zwei direkt aneinander gekoppelte RFQ-(Radio-Frequency-Quadrupole)-Resonatoren mit einer Gesamtl¨ange von 6 m an, die die Ionen auf 0.5

(Die Zeit ist durch die 6-Minuten Verlangerungen in den anderen 15 Wochen ausgeglichen.) In dieser Woche nden aber kleine Ubungen statt, in denen die Tutoren mit Ihnen einer-

Soll eine periodische Funktion durch einen Spline s dargestellt werden, so verlangt man an Stelle der Endbedingungen f¨ ur einen nat¨ urlichen oder eingespannten Spline, dass