ebook img

Algebraische Kodierungstheorie 001 PDF

57 Pages·2016·0.41 MB·German
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Algebraische Kodierungstheorie 001

Algebraische Codierungstheorie 1. Lineare Codes und projektive Geometrie Wir betrachten eine Quelle, die Symbole aus einem Alphabet W = {w ,...,w } ausgibt. 1 m Definition 1.1. Eine Codierung ist eine Abbildung f : W −→ Σ∗, wo Σ eine beliebige Menge (ein Alphabet) ist und Σ∗ die Menge aller endlichen Folgen von Elementen aus Σ. Eine Nachricht m ist eine end- liche Folge w ,...,w ∈ W∗ von Elementen aus W, sie wird als die i1 ik Aneinanderreihung f(m) = f(w ),...,f(w ) der zu den w geh¨origen i1 ik j Zeichenketten in Σ∗ codiert, f also zu einer (ebenfalls mit f bezeich- neten) Abbildung f : W∗ −→ Σ∗ Dief(w),w ∈ W heißendiebeiderCodierungverwendetenCodew¨orter, die Menge f(W) ⊆ Σ∗ der Codew¨orter heißt der Code C. Sind fu¨r ein n ∈ N alle Codew¨orter Elemente von Σn, so heißt C ein Block-Code der L¨ange n (mit Alphabet Σ). Wir betrachten jetzt Block-Codes der L¨ange n u¨ber dem Alphabet Σ = F = F, wo F = F der K¨orper mit q = pf Elementen ist. q q Definition und Lemma 1.2. Sei C ⊆ Σn ein Block-Code. Fu¨r x = (x ,...,x ), y = (y ,...,y ) aus Σn 1 n 1 n ist der Hamming-Abstand d(x,y) = |{j | x 6= y }|. j j Der Hamming-Abstand ist eine Metrik, d.h., es gilt fu¨r alle x,y,z ∈ Σn: a) d(x,y) ≥ 0, mit d(x,y) = 0 genau dann, wenn x = y gilt. b) (Symmetrie) d(x,y) = d(y,x). c) (Dreiecksungleichung) d(x,z) ≥ d(x,y)+d(y,z). Beweis. Klar. (cid:3) Definition 1.3. a) Fu¨r einen Code C ⊆ Fn ist die logarithmische q Kardinalit¨at (oder Dimension) k := k(C) = log |C|. Die Rate q von C ist R = k. Der Minimalabstand von C ist d := d(C) = n min{d(x,y) | x,y ∈ C, x 6= y}. n, k und d heißen die Parame- ter des Codes; man sagt C sei ein [n,k,d]-Code. Fu¨r x ∈ C ist w(x) = #{i | x 6= 0} das Gewicht von x. i b) Ist C ⊆ Fn ein Untervektorraum von Fn, so heißt C ein linearer q q Code. Der Minimalabstand d(C) ist dann gleich min{w(x) | x 6= 0} und heißt auch Minimalgewicht w(C) des Codes. c) Falls es fu¨r t ∈ N zu jedem y ∈ Fn h¨ochstens ein x ∈ C mit q d(x,y) ≤ t gibt, so sagt man, C korrigiere t Fehler. 1 2 Bemerkung. a) Die Bezeichnung [n,k,d]-Code wird h¨aufig fu¨r li- neare Codes reserviert (bei denen k = dim C automatisch eine natu¨rliche Zahl ist), w¨ahrend fu¨r beliebige Codes die Bezeich- nung (n,|C|,d)-Code verwendet wird. b) Die Rate des Codes misst, welcher Anteil an den zur U¨bermitt- lung eines Wortes benutzten n Symbolen auch fu¨r rauschfreie Codierung ben¨otigt wu¨rde, und misst daher die Effizienz. Definition 1.4. Eine Decodierung(sregel) des Block-Codes C u¨ber F q ist eine Abbildung g : Fn −→ C ∪{F} (wobei das Symbol F fu¨r Feh- q ” ler“(failure) steht). Die minimum distance Decodierungsregel ist: Gibt es zu y ∈ Fn genau ein x ∈ C, fu¨r das d(x,y) minimal ist, so q setze g(y) = x (decodiere y als x), andernfalls setze g(y) = F (erkl¨are einen Fehler). Bemerkung. FallstFehlervonC korrigiertwerden,sowirdbeiminimum- distance-Decodierung jedes Wort richtig decodiert, das bei der U¨bert- ragung in h¨ochstens t Positionen ver¨andert wurde. Lemma 1.5. Es werden genau dann t Fehler von C korrigiert, wenn d(C) > 2t ist. Beweis. Falls d(C) > 2t ist, so sei y ∈ Fn beliebig mit d(x,y) ≤ t ≥ q d(x0,y) fu¨r Elemente x,x0 von C. Da fu¨r d die Dreiecksungleichung gilt, ist dann d(x,x0) ≤ 2t < d(C), also x = x0, d.h., C korrigiert t Fehler. Falls umgekehrt t Fehler von C korrigiert werden, so seien x,x0 ∈ C mit d(x,x0) ≤ 2t. Man ersetze dann [d(x,x0)] Eintr¨age x von x, fu¨r die x 6= 2 j j x0 gilt, durch x0 und erhalte so ein y ∈ Fn mit d(x,y) = [d(x,x0)] ≤ t j j q 2 und d(x0,y) = d(x,x0)−[d(x,x0)] ≤ t. 2 Nach Voraussetzung muß dann x = x0 sein. (cid:3) Definition 1.6. Fu¨r σ ∈ S sei σ˜ ∈ Fn der durch (x ,...,x ) 7−→ n q 1 n (x ,...,x ) gegebene lineare Automorphismus σ˜ von Fn, fu¨r α ∈ σ(1) σ(n) q F× sei α˜ der durch (x ,...,x ) 7−→ (x ,...,αx ,...,x ) gegebene li- q i 1 n 1 i n neare Automorphismus α˜ von F . i q Sei A die von den σ˜ mit σ ∈ S und den α˜ mit α ∈ F×, 1 ≤ i ≤ n n i q erzeugte Untergruppe von Aut(Fn). q Die Codes C, C0 ⊆ Fn heißen ¨aquivalent, wenn es ein ϕ ∈ A gibt mit q ϕ(C) = C0. Bemerkung. Bei nichtlinearen Codes werden h¨aufig zus¨atzlich noch fu¨r Permutationen π ∈ S die Bijektionen π˜ : Fn −→ Fn zugelassen, q i q q die durch π˜ (x ,...,x ) = (x ,...,π(x ),...,x ) gegeben sind. Die von i 1 n 1 i n A und den π˜ erzeugte Gruppe von Bijektionen Fn −→ Fn ist natu¨rlich i q q nicht mehr in Aut(Fn) enthalten und fu¨hrt lineare Codes nicht notwen- q dig in lineare Codes u¨ber. Die Elemente von A werden bezu¨glich der 3 Standardbasis von Fn durch Monomialmatrizen repr¨asentiert (Matri- q zen, bei denen in jeder Zeile und jeder Spalte genau ein Eintrag 6= 0 steht). A ist semidirektes Produkt der von den α˜ erzeugten Untergruppe i M ∼= (F×)n und der zu S isomorphen Untergruppe der σ˜, wobei q n die Operation von S auf dem Normalteiler M gegeben ist durch n σ˜α σ˜−1 = α˜ . Insbesondere ist |A| = (q −1)n ·n!. i σ(i) Bevor wir lineare Codes weiter untersuchen, schieben wir eine Zusam- menstellung der wichtigsten Grundbegriffe der projektiven Geometrie ein; diese werden wir anschließend ben¨otigen. Definition 1.7. Ist r ∈ N und K K¨orper, so heißt die Menge der 1-dimensionalen Untervektorr¨aume von Kr+1 der r-dimensionale pro- jektive Raum Pr(K) u¨ber K. Ist U ⊆ Kr+1 ein (k + 1)-dimensionaler Unterraum, so heißt P = U U˜ = {L ∈ Pr(K) | L ⊆ U} ein k-dimensionaler (oder (r − k)- codimensionaler) Unterraum von Pr(K). Insbesondere sind die P fu¨r U Hyperebenen U ⊆ Kr+1 die Hyperebenen in Pr(K), und die P fu¨r u dim U = 2 die Geraden in Pr(K). Die Unterr¨aume P und P von Pr(K) heißen inzident (schneiden U W sich), wenn U ∩W 6= {0} ist. Bezeichnet man in (Kr+1 \ {0})/K× die Klasse von (x ,...,x ) 6= 0 0 r mit [x ,...,x ] (homogene Koordinaten), so wird durch 0 r [x ,...,x ] 7−→ K ·(x ,...,x ) 0 r 0 r eine Bijektion (Kr+1 \{0}/K× −→ Pr(K) gegeben. Bemerkung. a) Durch(x ,...,x ) 7−→ [1,x ,...,x ]wirdeineBi- 1 r 1 r jektion Kr −→ U := {[x ,...,x ] ∈ Pr(K) | x 6= 0} 0 0 r 0 gegeben. Analog stehen auch die U := {[x ,...,x ] | x 6= 0} in Bijek- i 0 r i tion zu Kr, und wir haben eine U¨berdeckung Pr(K) = Sr U i=0 i von Pr(K) durch (r+1) Teilmengen, die in natu¨rlicher Bijektion zum gew¨ohnlichen r-dimensionalen (affinen) Raum stehen. Fu¨r die Bijektionen ϕ : Kr −→ U gilt offenbar: j j – Ist x˜ ∈ Kr und W ⊆ Kr ein k-dimensionaler Unterraum von Kr, so ist W0(x˜) := {(x ,...,x ) ∈ Kr+1 | (x ,...,x ) ∈ x x˜ +W} 0 r 1 r 0 ein k +1-dimensionaler Unterraum von Kr+1. Fu¨rdiesengilt:ϕ (x˜+W) = P ∩U istderDurchschnitt 0 W0(x˜) 0 des k-dimensionalen Unterraums P mit U . W0(x˜) 0 4 – ϕ ist vertr¨aglich mit Durchschnitten und bildet den von 0 x˜ + W und x˜ + W aufgespannten affinen Unterraum 1 1 2 2 in (P ∨ P ) ∩ U ab; dabei bezeichnet P ∨ P W10(=x˜1)P W20(x˜2) de0nkleinstenUnterraumvoWn10P(x˜r1()K), W20(x˜2) W10(x˜1)+W20(x˜2) der P und P enth¨alt (den von diesen Unterr¨aum- W10(x˜1) W20(x˜2) en aufgespannten Unterraum oder ihre Verbindung). Analog formuliert man diese Eigenschaften fu¨r ϕ (1 ≤ j ≤ r). j Die Punkte von P , die nicht in ϕ (x˜+W) liegen, nennt man W0(x˜) j unendlich ferne Punkte von ϕ (x˜+W) und P0 (x˜) die projektive j W Abschließung oder Komplettierung von ϕ (x˜ +W). j b) Als U¨bung zeige man, dass sich in P2(K) je zwei verschiedene Geraden in genau einem Punkt schneiden. Genauer bestimme man fu¨r die Schar paralleler Geraden g ⊆ K2, die durch die b Gleichung x = mx +b mit festem m und variablem b gegeben 2 1 sind, den (bezu¨glich ϕ unendlich fernen) Punkt des P2(K), in 0 dem sich s¨amtliche Geraden der Schar schneiden. Man zeige fer- ner, dass die bezu¨glich ϕ unendlich fernen Punkte des P2(K) 0 eine Gerade in P2(K) bilden. c) Der projektive Raum l¨asst sich auch koordinatenfrei behandeln. Man betrachtet dann fu¨r einen beliebigen K-Vektorraum V den Raum P(V) := {U ⊆ V | U ist Untervektorraum, dim U = 1} K und verf¨ahrt ansonsten wie oben. d) Ist f ∈ K[X ,...,X ] ein homogenes Polynom u¨ber K von ir- 0 r gendeinem Grad d (also f = Pi0,...,ir∈Nr0 ai0...irX0i0...Xrir mit al- len a ∈ K), so ist fu¨r [x ,.i.0.+,··x·+i]r=∈d Pr(K) die Antwort auf i0...ir 0 r die Frage, ob f(x ,...,x ) = 0 gilt, unabh¨angig von der Auswahl 0 r des Rrepr¨asentanten (x ,...,x ) ∈ Kr+1. 0 r Fu¨r eine Menge F von solchen homogenen Polynomen in den Variablen X ,...,X nennt man 0 r V(F) = {[x ,...,x ] | f(x ,...,x ) = 0 fu¨r alle f ∈ F} ⊆ Pr(K) 0 r 0 r die durch F definierte projektive algebraische Menge. Analog nennt man fu¨r eine Menge G ⊆ K[X ,...,X ] von (beliebigen) 1 r Polynomen in den Variablen X ,...,X die Menge 1 r V(G) = {(x ,...,x ) ∈ Kr | g(x ,...,x ) = 0 fu¨r alle g ∈ G} ⊆ Kr 1 r 1 r die durch G definierte affine algebraische Menge. Als U¨bung zei- ge man: Ist g ∈ K[X ,...,X ] ein Polynom vom Grad d (d.h. 1 r max{i + ··· + i | a 6= 0} = d), so gibt es genau ein 1 r i1...ir homogenes Polynom f ∈ K[X ,...,X ] vom Grad d, so dass 0 r f(1,X ,...,X ) = g gilt (man sagt, f entstehe aus g durch Ho- 0 r mogenisieren). Es gilt dann V(f)∩U = ϕ (V(g)). 0 0 Proposition 1.8. Fu¨r einen Teilraum W ⊆ Kr+1 = V der Dimension k +1 sei Wˆ = Ann(W) = {f ∈ V∗ | f| = 0} ⊆ V∗ W 5 der Annullator von W. Fu¨r den Unterraum P ⊆ Pr(K) der Dimen- W sion k heiße δ(P ) := P ⊆ P(V∗) W Wˆ der zu W duale Teilraum von P(V∗). a) δ(P ) ist ein (r−k −1)-dimensionaler Unterraum von P(V∗). W b) DurchP 7−→ δ(P )wirdeineBijektionzwischendenk-dimensiona- W W len Unterr¨aumen von Pr(K) und den (r−k−1)-dimensionalen Unterr¨aumen von P(V∗) ∼= Pr(K) gegeben. Mit der kanonischen Identifikation V ∼= V∗∗ wird δ2 = Id. c) Es gilt δ(P ∩P ) = δ(P )∨δ(P ) W1 W2 W1 W2 δ(P ∨P ) = δ(P )∩δ(P ) W1 W2 W1 W2 δ(P ) ⊆ δ(P ) ⇔ P ⊆ P W1 W2 W2 W1 d) (Dualit¨atsprinzip) Fu¨r jeden Satz der projektiven Geometrie u¨ber Unterr¨aume von Pr(K), der in Termen von ∩, ∨, ⊆ und dim formuliert ist, gilt der duale Satz, in dem jeder Unterraum P W durch δ(P ) ersetzt wird, ∩ und ∨ sowie ⊆ und ⊇ vertauscht W und die Dimension k durch die Dimension r−k−1 ersetzt wird. Insbesondere erh¨alt man fu¨r r = 2 ein Dualit¨atsprinzip, in dem die Rollen von Punkten und Geraden vertauscht werden. Beweis. a)-c) sind eine einfache U¨bung in linearer Algebra. d)isteinMetatheorem,dessenBeweisentsprechendmu¨hsamzuformu- lieren ist. Jeder Einzelfall ist aber leicht einzusehen. Wer mehr wissen will, schlage etwa im Buch von Fischer (Analytische Geometrie) nach und fu¨hre ein paar Dualisierungen in der ebenen projektiven Geometrie als U¨bung durch. (cid:3) Wir kehren jetzt zu den linearen Codes zuru¨ck. Definition und Lemma 1.9. Sei C ⊆ Fn ein linearer Code mit Basis q c = t(g ,...,g ),...,c = t(g ,...,g ). 1 11 1n k k1 kn Dann heißt die Matrix G = (g ) ∈ M (F ) eine Erzeugermatrix des ij k,n q Codes C (generator matrix) und durch k X t(x ,...,x ) 7−→ x c = tGx 1 k i i i=1 wird eine lineare Einbettung C : Fk −→ Fn gegeben. q q Eine Matrix H ∈ M (F ), fu¨r die C der L¨osungsraum des linea- n−k,n q ren Gleichungssystems Hx = 0 ist, heißt eine Kontrollmatrix (check matrix, parity check matrix) von C. Bemerkung. InderCodierungstheoriewerdenVektorenmeistens(ent- gegen der in den meisten Lehrbu¨chern und Vorlesungen u¨ber Linea- re Algebra benutzten Konvention) als Zeilenvektoren geschrieben; wir 6 werden diese Zeilenvektoren an Stellen, wo es (etwa durch Multiplika- tion mit Matrizen) zu Unklarheiten kommen k¨onnte, als Transponierte der gewohnten Spaltenvektoren schreiben. Natu¨rlich ist das im Grunde genommen ein Streit um des Kaisers Bart. Lemma 1.10. Fu¨r eine Kontrollmatrix H gilt rgH = n−k und H · Gt = 0 fu¨r jede Erzeugermatrix G von C. Beweis. Klar. (cid:3) Bemerkung. a) W¨ahlt man eine andere Basis c˜ = Pk t c von j i=1 ij i C, so gilt (mit T = (t ) ∈ GL (F )): ij k q G˜ = Tt ·G. ˜ G geht also aus G durch Multiplikation von links mit einer (be- liebigen) invertierbaren k ×k- Matrix hervor. ˆ Ist C ein zu C ¨aquivalenter Code und wird die Transformati- ˆ on ϕ aus A, die C in C u¨berfu¨hrt, durch die Monomialmatrix M ∈ GL (F ) dargestellt (mit cˆ = ϕ(c )), so hat die zu den cˆ n q j j j ˆ geh¨orige Erzeugermatrix die Gestalt G = G·M. Ist H Kontroll- matrix zu G, so ist H ·(Mt)−1 Kontrollmatrix zu Gˆ. b) Gelegentlich werden auch Matrizen H ∈ M (F ) mit r > n−k, r,n q rgH = n−k und H·Gt = 0 als Kontrollmatrix zu C bezeichnet. Definition 1.11. Fu¨r C ⊆ Fn ist der duale (oder orthogonale) Code q C⊥ definiert als n X C⊥ = {y ∈ Fn | hx,yi := x y = 0 fu¨r alle x ∈ C}. q i i i=1 Ist C = C⊥, so heißt C selbstdual. Lemma 1.12. a) Ist dim C = k, so ist dim C⊥ = n−k. b) H ist genau dann Kontrollmatrix von C, wenn H Erzeugermatrix von C⊥ ist. c) Durch y −→ L ∈ (Fn)∗ mit L (x) := hx,yi wird ein Isomor- y q y phismus L von Fn auf den Dualraum (Fn)∗ gegeben, der C⊥ auf q q den Annullator von C abbildet. Beweis. Dies sind Standardaussagen der linearen Algebra. Man beach- te, dass durch (x,y) 7−→ hx,yi eine nichtausgeartete symmetrische Bilinearform auf Fn gegeben wird. (cid:3) q Definition 1.13. Der lineare Code C hat genau dann Minimalgewicht w(C) > d, wenn gilt: Je d Spalten einer Kontrollmatrix H von C sind linear unabh¨angig. Beweis. Klar: Sind h ,...,h die Spalten von H, so ist x ∈ C ¨aquiva- 1 n lent zu Pn x h = 0. (cid:3) i=1 i i 7 Beispiel. Wir betrachten den Code C := {x ∈ F6 | x +x = x , x +x = x , x +x = x }. 6 2 2 3 4 1 3 5 1 2 6 Dieser Code hat 8 Worte (Er hat Dimension 3 als Vektorraum u¨ber F ). 2 Wir sehen: C hat Kontrollmatrix 6   0 1 1 1 0 0 H = 1 0 1 0 1 0 1 1 0 0 0 1 DajezweiSpaltenderKontrollmatrixlinearunabh¨angigsind,istd(C ) ≥ 6 3, wir werden gleich sehen, dass d(C ) = 3 ist. C ist also ein [6,3,3]- 6 6 Code. Eine Erzeugermatrix ist   1 0 0 0 1 1 G = 0 1 0 1 0 1 0 0 1 1 1 0 also sicher d(C) ≤ 3, damit ist d(C) = 3. Beispiel. Fu¨r Codes mit Minimalabstand d ≥ 3 u¨ber F suchen wir q eine Kontrollmatrix, fu¨r die keine 2 Spalten linear abh¨angig, d.h. Viel- fache voneinander sind. Bei gegebener Codimension r = n−k besteht ein H m¨oglichst großer SpaltenzahlnalsoausRepr¨asentantenaller1-dimensionalenUnterr¨aume (Geraden) von Fn als Spalten. Wir haben dann also q qr −1 n = = 1+···+qr−1. q −1 Definition 1.14. Fu¨r r ≥ 2 sei n = qr−1. Der [n,n − r,3]-Code mit q−1 Kontrollmatrix H, deren Spalten Repr¨asentanten der 1-dimensionalen Unterr¨aume von Fr sind, heißt der [n,n−r]-Hamming-Code u¨ber F . q q Beispiel. q = 2, r = 3, n = 7.   0 0 1 0 1 1 1 H = 0 1 0 1 0 1 1 1 0 0 1 1 0 1 Der Code hat 16 Elemente und (wie alle Hamming-Codes) Minimalab- stand 3, korrigiert also einen Fehler. Der duale Code ist der Code mit Erzeugermatrix H. Der Code C aus dem vorigen Beispiel ist die Projektion auf F6 des 6 2 [7,4,3]-Hamming-Codes u¨ber F . 2 Definition und Lemma 1.15. Sei G ∈ M (F ) Erzeugermatrix des k,n q Codes C ⊆ Fn. q a) G ist in Standardform, wenn G = (E ,P) mit P ∈ M (F ) k k,n−k q gilt (E die (k ×k)-Einheitsmatrix). k 8 b) Ist die aus den Spalten mit den Nummern i < ··· < i gebildete 1 k Teilmatrix von G die k × k-Einheitsmatrix, so sagt man, C sei systematisch in i ,...,i . 1 k A¨quivalent ist: Die durch x 7−→ (x ,...,x ) gegebene Projek- i1 ik tion p = p : Fn −→ Fk liefert einen Isomorphismus p| : i1,...,ik q q C C −→ Fk. q Bemerkung. a) Ist G Erzeugermatrix von C, so k¨onnen wir durch U¨bergang zu einer anderen Basis G durch TG mit beliebigem T ∈ GL (F ) ersetzen. T kann so gew¨ahlt werden, dass TG in k q Zeilenstufenform ist, wobei jeweils in der j-ten Zeile in der Po- sition i der erste Eintrag 6= 0 steht. C ist daher systematisch j in den Positionen i ,...,i . Multipliziert man G von rechts mit 1 k einer geeigneten Permutationsmatrix, so geht G in Standardform u¨ber; C geht dabei in einen ¨aquivalenten Code u¨ber. Jeder lineare Code ist also ¨aquivalent zu einem Code mit Erzeugermatrix in Standardform. b) IstG = (E ,P)inStandardform,soistoffenbarH = (−tP,E ) k n−k eine Kontrollmatrix fu¨r G, denn man sieht: (cid:18) (cid:19) E H ·Gt = (−tP,E ) k = 0. n−k tP Definition 1.16. Sei C linearer Code mit Erzeugermatrix G und Kon- trollmatrix H. a) Fu¨r y ∈ Fn heißt s = s (y) := Hy =∈ Fn−k das Syndrom von q H q y (bezu¨glich H). b) Fu¨r s ∈ Fn−k heißt ein Element e = e (s) minimalen Gewichts q H in der Nebenklasse K = {y ∈ Fn | Hy = s} ∈ Fn/C ein coset s q q leader (Nebenklassen-Fu¨hrer) von s; man hat dann K = e+C. s Bemerkung. a) U¨bergang zu einer anderen Kontrollmatrix ¨andert zwar die Syndrome, aber nicht die Einteilung von Fn in Neben- q klassen aus Vektoren gleichen Syndroms; insbesondere ¨andert es nichts an den coset leaders, sondern nur ihre Zuordnung zu den einzelnen Syndromen. b) Minimum-distance-Decodierung decodiert y als y − e (s), wo H s = s (y) = Hy das Syndrom von y bezu¨glich H ist. Ist der H coset leader von y + C nicht eindeutig, so erkl¨art man, es sei- en r = w(e (s)) Fehler erkannt worden. Decodierung erfolgt H hier also nach Durchfu¨hrung der Matrixmultiplikation y 7−→ Hy durch Nachschlagen in einer Tabelle (table-lookup) der Gr¨oße |F /C| = qn−k. Das ist natu¨rlich (zumal fu¨r großes k) besser als q in einer Tabelle der vollen Gr¨oße qn nachschlagen zu mu¨ssen. Bei Codes mit viel Struktur verfu¨gt man u¨ber Methoden, die Zu- ordnung des coset leaders zum ermittelten Syndrom effizienter vorzunehmen. 9 Die Codierung, aufgefasst als Abbildung C : Fk −→ C, ist q natu¨rlich als Multiplikation mit der Erzeugermatrix (bzw. de- ren transponierter Matrix, je nach benutzter Konvention u¨ber Zeilen- und Spaltenvektoren) ebenfalls leicht effizient zu imple- mentieren. Beispiel. Fu¨r unseren Code C ⊆ F6 sind die m¨oglichen Syndrome die 6 2 Elemente von F3. Wir haben die triviale Nebenklasse C, 6 Nebenklas- 2 sen, die von den Vektoren in F mit genau einer 1 repr¨asentiert werden, 2 unddieNebenklassezumSyndrom(1,1,1),dievon(1,0,0,1,0,0),aber auch von (0,1,0,0,1,0) oder (0,0,1,0,0,1) repr¨asentiert wird: Diese Nebenklasse hat keinen eindeutigen coset leader. Die Decodierung in unserem Beispiel erfolgt also so: Ist das Syndrom s von y nicht (1,1,1), so decodiere y als y − e (s) ∈ C, ist es gleich H (1,1,1), so decodiere als y −(1,0,0,1,0,0) (willku¨rliche Auswahl des coset leaders) oder erkl¨are, dass bei der U¨bermittlung wenigstens zwei Fehler aufgetreten sind (failure). U¨bung. a) Diese Decodierung ist in der Tat so, wie bei der Diskussion des Beispiels behauptet. b) Finde Kontrollmatrix, Syndrome und coset leaders fu¨r den im Beispiel benutzten Code C ⊆ F6. 6 2 c) Zeige: Ist d(C) = 2t+1, so ist in jeder Nebenklasse von C h¨ochs- tens ein Codewort vom Gewicht ≤ t, und letztere Eigenschaft ist ¨aquivalent dazu, dass t Fehler von C korrigiert werden. Ist d(C) = 2t, so werden t−1 Fehler korrigiert und t Fehler erkannt, aber nicht mehr notwendig korrigiert. Es gibt dann Nebenklas- sen von C, in denen alle coset leaders Gewicht t haben, der coset leader aber nicht eindeutig ist. Bemerkung. Der Code C ⊆ Fn hat Minimalabstand d(C) ≥ r+1, falls q in der Kontrollmatrix H ∈ M (F ) je r Spalten linear unabh¨angig n−k,n q sind. Projektiv gesehen heißt das: Fu¨r die von den Spalten repr¨asentierten Punkte des Pn−k−1(F ) gilt: Je q r dieser Punkte liegen nicht gemeinsam in einem r −2-dimensionalen Teilraum (also fu¨r r = 2: Je 2 Punkte sind verschieden, fu¨r r = 3: Je drei Punkte sind nicht kollinear, fu¨r r = 4: Je 4 Punkte sind nicht koplanar, etc.). Offenbar geht das nur fu¨r r − 2 ≤ n − k − 2 oder r ≤ n − k, d(C) = r+1 ≤ n−k +1. Wir haben also gezeigt: Lemma 1.17 (Singleton-Schranke). Ist C ein linearer [n,k,d]-Code, so ist d ≤ n−k +1. 10 Bemerkung. a) (U¨bung) Die Schranke gilt auch fu¨r nichtlineare Codes (Hinweis: Die Projektion des Codes auf Fn−d+1 ist injek- q tiv). b) Gilt n−k +1 = d, so heißt C ein maximum-distance-separable Code (MDS-Code) oder auch ein Code vom Geschlecht (genus) 0 (letztere Sprechweise wird sp¨ater verst¨andlich). Gilt d ≥ n−k+1−g und d(C⊥) ≥ n+1−g−(n−k) = k+1−g, so sagt man allgemeiner C sei ein Code vom Geschlecht ≤ g (Ist d = n − k + 1, sind also je n − k Spalten der Kontrollma- trix linear unabh¨angig, so ist d(C⊥) = k + 1, also je k Spalten der Erzeugermatrix von C linear unabh¨angig. G¨abe es n¨amlich k Spalten in der Erzeugermatrix, die linear abh¨angig w¨aren (o.E. die ersten k Spalten), so g¨abe es (Zeilenrang = Spaltenrang) x ,...,x ∈ F , so dass (mit Zeilen c ,...,c der Erzeugerma- 1 k q 1 k trix) 0 6= Pk x c in den ersten k Spalten alle Eintr¨age gleich i=1 i i 0 hat. Dieses Codewort h¨atte dann Gewicht ≤ n−k = d(C)−1, was unm¨oglich ist). Definition 1.18. Sei V ein k-dimensionaler F -Vektorraum. Ein n- q Tupel P = (P ,...,P ) von n Punkten aus V, fu¨r die 1 n d(P) := n− max |P ∩H| ≥ 1 H Hyperebene gilt (fu¨r die es also keine Hyperebene H ⊆ V gibt mit P ⊆ H), heißt ein [n,k,d(P)] -System. q Zwei [n,k,d] -Systeme P,P0 in V bzw. V0 heißen ¨aquivalent, wenn es q einen Isomorphismus ϕ : V −→ V0 gibt mit ϕ(P) = P0. Proposition1.19. EsgibteineBijektionzwischenKlassenvon[n,k,d] - q Systemen und linearen [n,k,d]-Codes u¨ber F . q Beweis. Sei P = (P ,...,P ) ⊆ V. Definiere 1 n ϕ : V∗ −→ Fn durch q f 7−→ (f(P ),...,f(P )). 1 n ϕ ist nach der Voraussetzung u¨ber P injektiv, setze C = ϕ(V∗). Dann ist dim C = k. Ferner ist d(C) = d, denn w(ϕ(f)) ist gerade die Anzahl der P ∈ P, die nicht in der Hyperebene Ker ϕ von V liegen. i Ist umgekehrt C ⊆ Fn, f die j-te Koordinatenfunktion auf Fn, so sei q j q V = C∗ und P = (f | ,...,f | ). 1 C n C Die Elemente von P liegen offenbar in keiner gemeinsamen Hyperebene (jede Linearform auf C l¨asst sich zu einer auf Fn fortsetzen), und die q obige Konstruktion bildet x ∈ V∗∗ = C auf ϕ(x) = (x ,...,x ) ∈ Fn 1 n q ab, also ϕ(V∗) = C (und umgekehrt). Die beiden Abbildungen sind also invers zueinander und fu¨hren die Parameter ineinander u¨ber. (cid:3)

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.