3 Der Hamming-Code. Hamming-Codes



Ähnliche Dokumente
Einführung in die Kodierungstheorie

Theoretische Grundlagen der Informatik WS 09/10

4. Woche Decodierung; Maximale, Perfekte und Optimale Codes. 4. Woche: Decodierung; Maximale, Perfekte und Optimale Codes 69/ 140

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Professionelle Seminare im Bereich MS-Office

Der Zwei-Quadrate-Satz von Fermat

Codierungsverfahren SS Reed-Solomon-Codes zur Mehrblock-Bündelfehler-Korrektur

Musterlösungen zur Linearen Algebra II Blatt 5

13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen.

7 Rechnen mit Polynomen

Jede Zahl muss dabei einzeln umgerechnet werden. Beginnen wir also ganz am Anfang mit der Zahl,192.

Zahlenwinkel: Forscherkarte 1. alleine. Zahlenwinkel: Forschertipp 1

Bevor lineare Gleichungen gelöst werden, ein paar wichtige Begriffe, die im Zusammenhang von linearen Gleichungen oft auftauchen.

Division Für diesen Abschnitt setzen wir voraus, dass der Koeffizientenring ein Körper ist. Betrachte das Schema

Informationsblatt Induktionsbeweis

Austausch- bzw. Übergangsprozesse und Gleichgewichtsverteilungen

Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai 2011

Lineare Gleichungssysteme

Kapitel 15. Lösung linearer Gleichungssysteme

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse Lösung 10 Punkte

Abituraufgabe zur Stochastik, Hessen 2009, Grundkurs (TR)

Simplex-Umformung für Dummies

Tag der Mathematik 2012

Zeichen bei Zahlen entschlüsseln

Mah Jongg - Ein Spiel für 4 Spieler

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

1 Mathematische Grundlagen

(λ Ri I A+BR)v Ri = 0. Lässt sich umstellen zu

Lineare Gleichungssysteme I (Matrixgleichungen)

Lineare Gleichungssysteme

V 2 B, C, D Drinks. Möglicher Lösungsweg a) Gleichungssystem: 300x y = x + 500y = 597,5 2x3 Matrix: Energydrink 0,7 Mineralwasser 0,775,

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen

1. Woche Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes

Primzahlen und RSA-Verschlüsselung

Repetitionsaufgaben Wurzelgleichungen

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

FDAX mit Zertifikaten gehandelt

EINFACHES HAUSHALT- KASSABUCH

n S n , , , , 167 Nach einem Jahr beträgt der Schuldenstand ca. 1177,09.

a n auf Konvergenz. Berechnen der ersten paar Folgenglieder liefert:

3. LINEARE GLEICHUNGSSYSTEME

Die reellen Lösungen der kubischen Gleichung

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Grundlagen der Technischen Informatik. 2. Übung

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

Wachstum 2. Michael Dröttboom 1 LernWerkstatt-Selm.de

Matrizennorm. Definition 1. Sei A M r,s (R). Dann heißt A := sup die Matrixnorm. Wir wissen zunächst nicht, ob A eine reelle Zahl ist.

Skript und Aufgabensammlung Terme und Gleichungen Mathefritz Verlag Jörg Christmann Nur zum Privaten Gebrauch! Alle Rechte vorbehalten!

Sollsaldo und Habensaldo

Approximation durch Taylorpolynome

Alle Schlüssel-Karten (blaue Rückseite) werden den Schlüssel-Farben nach sortiert und in vier getrennte Stapel mit der Bildseite nach oben gelegt.

Der Kunde zahlt die Gehälter.

Was meinen die Leute eigentlich mit: Grexit?

Vibono Coaching Brief -No. 39

Abschlussprüfung Realschule Bayern II / III: 2009 Haupttermin B 1.0 B 1.1

Was ist Sozial-Raum-Orientierung?

Wie löst man Mathematikaufgaben?

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

2. Mathematik Olympiade 2. Stufe (Kreisolympiade) Klasse 7 Saison 1962/1963 Aufgaben und Lösungen

Binärdarstellung von Fliesskommazahlen

Prozentrechnung. Wir können nun eine Formel für die Berechnung des Prozentwertes aufstellen:

Aufgaben zur Flächenberechnung mit der Integralrechung

Übungen lineare Gleichungssysteme - Lösungen 1. Bestimme die Lösungsmenge und führe eine Probe durch! a)

3.2 Spiegelungen an zwei Spiegeln

Codierungstheorie Rudolf Scharlau, SoSe

0, v 6 = , v 4 = span(v 1, v 5, v 6 ) = span(v 1, v 2, v 3, v 4, v 5, v 6 ) 4. span(v 1, v 2, v 4 ) = span(v 2, v 3, v 5, v 6 )

WS 2008/09. Diskrete Strukturen

Das Leitbild vom Verein WIR

Rationale Zahlen. Weniger als Nichts? Ist Null nichts?

Gratis Excel SVERWEIS Funktions-Anleitung, Tutorial, ebook, PDF-E-Book

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

Viele Bilder auf der FA-Homepage

(für Grund- und Leistungskurse Mathematik) 26W55DLQHU0DUWLQ(KUHQE UJ*\PQDVLXP)RUFKKHLP

7 Die Determinante einer Matrix

Korrelation (II) Korrelation und Kausalität

Also kann nur A ist roter Südler und B ist grüner Nordler gelten.

Die Übereckperspektive mit zwei Fluchtpunkten

infach Geld FBV Ihr Weg zum finanzellen Erfolg Florian Mock

4.4 AnonymeMärkteunddasGleichgewichtder"vollständigen Konkurrenz"

SEK II. Auf den Punkt gebracht!

Betragsgleichungen und die Methode der Fallunterscheidungen

Wie Sie beliebig viele PINs, die nur aus Ziffern bestehen dürfen, mit einem beliebigen Kennwort verschlüsseln: Schritt 1

Technische Analyse der Zukunft

a' c' Aufgabe: Spiegelung an den Dreiecksseiten und Anti-Steinersche Punkte Darij Grinberg

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

Umgekehrte Kurvendiskussion

Zahlensysteme. von Christian Bartl

LU-Zerlegung. Zusätze zum Gelben Rechenbuch. Peter Furlan. Verlag Martina Furlan. Inhaltsverzeichnis. 1 Definitionen.

Es gilt das gesprochene Wort. Anrede

Beispiel Zusammengesetzte Zufallsvariablen

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Lösungsmethoden gewöhnlicher Differentialgleichungen (Dgl.)

Mathematischer Vorbereitungskurs für Ökonomen

Lineare Gleichungssysteme

sondern alle Werte gleich behandelt. Wir dürfen aber nicht vergessen, dass Ergebnisse, je länger sie in der Vergangenheit

Gefahr erkannt Gefahr gebannt

Erfahrungen mit Hartz IV- Empfängern

Und was uns betrifft, da erfinden wir uns einfach gegenseitig.

Lineare Codes. Dipl.-Inform. Wolfgang Globke. Institut für Algebra und Geometrie Arbeitsgruppe Differentialgeometrie Universität Karlsruhe 1 / 19

Transkript:

3 Der Hamming-Code Hamming-Codes Ein binärer Code C heißt ein Hamming-Code Ha s, wenn seine Kontrollmatrix H als Spalten alle Elemente in Z 2 s je einmal hat. Die Parameter eines n-k-hamming-codes sind: n = 2 s -, k = n-s = 2 s -s-, min.distanz d=3 Die Hamming-Codes sind perfekte, -Fehler korrigierende Codes. Die Hamming-Codes mit demselben s unterscheiden sich nur durch eine Stellenpermutation. Ein Code mit den Parametern n = 2 s -, k =2 s -s-, min.distanz d=3 ist ein Hamming-Code. SS 22 Heinrich Werner: Codierungstheorie 3 3-2

Beispiele für Ha s Ha : n=3, k= ist der Repetitionscode R3 Ha 2 : n=7, k=5 ist das geometrische Beispiel aus Generator-Matrix: Kontrollmatrix Ha 3 : n=5, k=2 Ha 4 : n=3, k=27 Mit steigendem s werden die Informationsraten dieser Codes zwar deutlich besser (fast ), aber da sich die Länge der Worte bei gleichbleibender Korrekturrate jeweils verdoppelt, sind diese Codes immer schlechter nutzbar. SS 22 Heinrich Werner: Codierungstheorie 3 3-3 q-äre Hamming Codes Die Konstruktion des binären Hamming Codes läßt sich problemlos auch auf andere endliche Körper übertragen. Zwei Spalten über einem beliebigen Körper K sind linear unabhängig, wenn keine ein Vielfaches der anderen ist. Zu jeder möglichen Spalte x gibt es genau ein Vielfaches der Form (...) t oder (...) t ; Sprechweise: x hat führendem Koeffizient. Ein Hamming-Code Ha q,s über dem q-elementigen Körper K ist definiert durch eine s-zeilige Kontrollmatrix H, die als Spalten alle s-spalten mit führendem Koeffizient je einmal enthält. Die Parameter von Ha q,s sind: n = (q s -)/(q-), k = n-s =(q s -)/(q-)-s SS 22 Heinrich Werner: Codierungstheorie 3 3-4

Perfektheit von Ha q,s Auch die q-ären Hamming-Codes sind perfekt: Nach Konstruktion ist die minimale Distanz mindestens 3, da je zwei Spalten linear unabhängig sind und nicht als Spalte vorkommt. Der Code Ha q,s hat q n-s Codeworte Die Anzahl der Worte in der Kugel vom Radius um ein Codewort ist stets + (q-)n = + q s - = q s Die Kugeln vom Radius um die Codeworte sind also disjunkt und schöpfen den gesamten Coderaum K n aus, dies bedeutet, daß der Code perfekt -fehler-korrigierend ist. SS 22 Heinrich Werner: Codierungstheorie 3 3-5 Fehlerkorrektur bei Ha q,s Über K ist die -Fehlerkorrektur insofern etwas komplizierter, als nicht nur die Fehlerstelle i bestimmt werden muß, sondern an dieser Stelle auch der Betrag α des Fehlers. (c+αe i )H t liefert das α-fache der i-ten Spalte von H Fehlerkorrektur: Berechne das Syndrom des empfangenen Vektors x. Ist das Syndrom u=, so ist x das gesendete Codewort. Ist das Syndrom u, so ist der führende Koeffizient α der Fehlerbetrag und die Stelle i, an der α - u in H steht, ist die Fehlerstelle. Das Codewort x-αe i ist also das gesendete Wort. SS 22 Heinrich Werner: Codierungstheorie 3 3-6

höhere Fehlerzahlen Wie kann man zu einem Code kommen, der bessere Fehlerkorrektureigenschaften hat? Man verlängert den gegebenen Code durch hinzufügen neuer Kontrollstellen z.b. Verdopplung. Man reduziert die Anzahl der Codeworte durch Hinzufügen weiterer Kontrollgleichungen. Es ist offensichtlich, daß eine solche Veränderung systematisch geschehen muß, damit man die erreichten Fehlerkorrektureigenschaften nachweisen kann und ein passendes Fehlerkorrekturverfahren entwickeln kann. Die Kenntnis einer großen minimalen Distanz allein nützt wenig, wenn man kein passendes Korrekturverfahren hat. SS 22 Heinrich Werner: Codierungstheorie 3 3-7 Der binäre Hamming-Code Ha 2 Die Worte des Codes geordnet nach Gewicht: Der Hamming Code Ha 2 ist komplementär (d.h... ist im Code und damit auch alle Komplemente.. + c). Der Hamming Code Ha 2 ist zyklisch (d.h. zyklische Vertauschung der Stellen führt nicht aus dem Code heraus). Der Hamming Code Ha 2 ist nicht spiegelsymmetrisch (d.h. von hinten nach vorne lesen führt aus dem Code. SS 22 Heinrich Werner: Codierungstheorie 3 3-8

erweiterte Hamming Codes Bilden wir die parity-check-erweiterung Ha + eines Hamming-Codes Ha, so erhalten wir einen Code mit geraden Gewichten, also mit minimalem Gewicht 4. Er hat also die Parameter n=2 s, k=2 s -s, d=4. Tabelle Dieser Code hat den Vorteil, daß noch eine 2-Fehler Erkennung möglich ist, ohne daß diese fälschlich als ein anderer Einzelfehler interpretiert wird. SS 22 Heinrich Werner: Codierungstheorie 3 3-9 Symmetrisierung von Ha + Durch die zyklische Vertauschung ξ=(4,2,,3) der ersten vier Stellen von Ha + und der Gruppierung nach Gewicht der ersten 4 Stellen ergibt sich ein symmetrisches Bild: Bei den Elementen mit geradem Gewicht in beiden Hälften sind die Hälften gleich. Bei ungeradem Gewicht in der ersten Hälfte sind beide Hälften zueinander komplementär. Betrachten wir noch die Vertauschung υ der beiden Hälften, so besagt diese Beobachtung, daß für jedes c Ha + auch ξ - υξc Ha + ist, denn υξc = ξd für ein geeignetes d Ha +. ϕ =ξ - υξ ist die Transposition (,7)(2,5)(3,8)(4,6) der Stellen,..,8 Dies bedeutet, es gibt eine Stellenvertauschung ϕ, die nicht aus Ha + hinausführt, aber die vier hinteren Stellen auf die vorderen Stellen bringt. SS 22 Heinrich Werner: Codierungstheorie 3 3 -

Ha 2 + und sein Spiegelbild Wir betrachten die Spiegelung σ (von hinten nach vorn lesen) in dem Raum Z 27. Die beiden Codes Ha 2 + und σ(ha 2 ) + haben außer und kein Element gemeinsam. Denn streicht man die parity check Stelle aus einem gemeinsamen Wort, so muß ein gemeinsames Wort von Ha 2 und σ(ha 2 ) herauskommen, da kommt aber nur oder infrage. SS 22 Heinrich Werner: Codierungstheorie 3 3 - Golay-Code G 24 Der (erweiterte) Golay-Code G 24 besteht aus allen Worten der Form (a+x,a+b+x,b+x) mit a,b Ha + 2 und x σ(ha 2 ) +. Eine Basis erhalten wir aus den Vektoren (a,a,), (,b,b), (x,x,x), wobei a,b eine Basis von Ha + 2 und x eine Basis von σ(ha 2 ) + durchlaufen. Die Parameter von G 24 sind: n=24, k=2. wir zeigen noch: Jedes Wort von G 24 hat ein Gewicht, das durch 4 teilbar ist. Das minimale Gewicht von G 24 ist 8 Der Code G 24 ist 3-Fehler korrigierend SS 22 Heinrich Werner: Codierungstheorie 3 3-2

Generatormatrix für G 24 kann durch Zeilenumformungen überführt werden in: -----> Tabelle: SS 22 Heinrich Werner: Codierungstheorie 3 3-3 Das Gewicht einer Summe Für das Folgende benötigen wir die bitweise Multiplikation auf Z n 2,die ermittelt, wo beide Faktoren eine stehen haben: (x,...,x n ) (y,...,y n ) := (x * y,...,x n* y n ) zwei Summanden: (S) g(x+y) = g(x) + g(y) - 2g(x y) denn zählt man alle Stellen, an denen x oder y eine haben, so zählt man jede Stelle, wo beide eine haben doppelt, obwohl sie garnicht gezählt werden sollten. drei Summanden: (S2) g(x+y+z) = g(x) + g(y) + g(z) - 2g(x y) - 2g(x z) - 2g(y z) + 4g(x y z) denn die Stellen, wo x,y,z -en haben werden 3x gezählt und 6x wieder abgezogen, sollten aber x gezählt werden. SS 22 Heinrich Werner: Codierungstheorie 3 3-4

Gewichte in G 24 Jedes Wort in G 24 schreibt sich als Summe (a,a,) + (,b,b) + (x,x,x) (a,a,) (x,x,x) = (a x,a x,) hat gerades Gewicht. (,b,b) (x,x,x) = (,b x,b x) hat gerades Gewicht. (a,a,) (,b,b) = (,a b,) hat gerades Gewicht, denn 2g(a b) = g(a+b) - g(a) -g(b) (alle durch 4 teilbar). Damit hat die Summe ein durch 4 teilbares Gewicht. Gewicht 4 ist unmöglich, denn nach (S) haben a+x, b+x, a+b+x alle gerades Gewicht, also müßte eines davon sein, was wieder x= oder x= nach sich zieht. Dann haben aber alle 3 Teile Gewicht, 4 oder 8, was 2 der Teile zu macht. Dies bedeutet a=b=x oder a=a+b=x oder b=a+b=x was den Teil zu x= vom Gewicht 8 macht. SS 22 Heinrich Werner: Codierungstheorie 3 3-5 Fehlerkorrektur in G 24 Fall : das ankommende Wort w hat höchstens einen Fehler in den ersten 2 Stellen: Addiere die i-te Zeile t i der Tabelle zu w, wenn w i = ist (i=,..,7,9,..,2) Ist w 8 = und hat w oder w+t 8 das Gewicht < 4, so ist dies das Fehlerwort (alle Fehler in der zweiten Hälfte) ist w 8 = und hat eines der Worte w+t i oder w+t i +t 8 (i=,..,2) das Gewicht < 4, so ist dies das Fehlerwort (ein Fehlere in der ersten Hälfte und die restlichen in der zweiten Hälfte. Fall 2: das ankommende Wort w hat höchstens einen Fehler in den zweiten 2 Stellen: Vertausche die ersten und die letzten 8 Stellen und dann in jedem der 3 8-Tupel die beiden Hälften mit der Transposition ϕ. Das Resultat w kann nun wie oben behandelt werden. Nach der Korrektur muß die Stellenvertauschung rückgängig gemacht werden. SS 22 Heinrich Werner: Codierungstheorie 3 3-6

Der Golay Code G 23 Der Code G 24 mit seinen geraden Gewichten kann als parity check Erweiterung eines Codes G 23 aufgefaßt werden, G 23 entsteht aus G 24 durch Streichen der letzten Spalte. Der Golay-Code G 23 hat die Parameter n=23, k=2 und min. Distanz d=7 Der Golay-Code G 23 ist perfekt 3-Fehler korrigierend. Denn die Kugeln vom Radius 3 um jedes Codewort haben die Elementezahl: 23 23 23 23 ( )+( )+( )+( ) = + 23 + 23* + 23**7 = 2 3 + 23 + 253 + 77 = 248 = 2 Eine 3-Fehler Korrektur kann durch das Anfügen eines parity checks und dem Verfahren von G 24 realisiert werden. SS 22 Heinrich Werner: Codierungstheorie 3 3-7