Die Hamming-Distanz definiert eine Metrik.

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

5. Woche Perfekte und Optimale Codes, Schranken. 5. Woche: Perfekte und Optimale Codes, Schranken 88/ 142

4.0.2 Beispiel (Einfacher Wiederholungscode). Im einfachsten Fall wird die Nachricht einfach wiederholt. D.h. man verwendet die Generatorabbildung

Einführung in die Codierungstheorie

6 Fehlerkorrigierende Codes

Einführung in die Kodierungstheorie

Die Mathematik in der CD

Theoretische Grundlagen der Informatik WS 09/10

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

Fehlererkennung und Fehlerkorrektur in Codes

Übungen zur Vorlesung Grundlagen der Rechnernetze. Zusätzliche Übungen

Mathematik I. Vorlesung 19. Metrische Räume

Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14

3 Der Hamming-Code. Hamming-Codes

Rechnernetze Übung 5. Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai Wo sind wir?

2.1 Codes: einige Grundbegriffe

Übungsaufgaben zu Partielle Differentialgleichungen Blatt III vom

Zahlen und metrische Räume

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

Information und Codierung

Seminar Einführung in die Kunst mathematischer Ungleichungen

Fehler-korrigierende Codes

Mathematik für Anwender II

Kapitel 5 KONVERGENZ

Übung 14: Block-Codierung

Zusammenfassung zu Codierungstheorie

In diesem Abschnitt betrachten wir nur quadratische Matrizen mit Komponenten aus einem Körper K, also A K n n für ein n N. Wenn (mit einem n > 1)

ÜBUNGSBLATT 11 LÖSUNGEN MAT121/MAT131 ANALYSIS II FRÜHJAHRSSEMESTER 2011 PROF. DR. CAMILLO DE LELLIS

Expander Graphen und Ihre Anwendungen

Etwas Topologie. Handout zur Vorlesung Semi-Riemannsche Geometrie, SS 2004 Dr. Bernd Ammann

Codierungstheorie Teil 1: Fehlererkennung und -behebung

Kapitel 1: Codierungstheorie. 1.2 Quellcodierung 1.3 Fehlererkennende Codes 1.4 Fehlerkorrigierende Codes

S=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J

Grundlagen exakter Methoden zur Verschlüsselung von Codewörtern mittels linearer Codes*

Single Parity check Codes (1)

Zahlen und metrische Räume

Analysis II (FS 2015): ZUSAMMENHÄNGENDE METRISCHE RÄUME

Harm Pralle. Codierungstheorie WS 2005/06. Institut Computational Mathematics Technische Universität Braunschweig

DIPLOMARBEIT. Titel der Diplomarbeit. Die Golay Codes. Verfasser. Daniel Eiwen. angestrebter akademischer Grad

Fehlerschutz durch Hamming-Codierung

Lineare Algebra I. Auswahlaxiom befragen. (Wer schon im Internet danach sucht, sollte das auch mal mit dem Begriff

Mathematik II für Studierende der Informatik Kapitel. Kodierungstheorie

1.5 Duales Gitter und Diskriminantengruppe

Grundlagen der Technischen Informatik. Codierung und Fehlerkorrektur. Kapitel 4.2

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)).

6.2 Die Regeln von de l Hospital. Ausgangsfrage: Wie berechnet man den Grenzwert. Beispiel: Sei f(x) = x 2 und g(x) = x. Dann gilt. lim.

Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É.

Analysis I. 4. Beispielklausur mit Lösungen

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

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

Codierungstheorie, Vorlesungsskript

Technische Universität München Zentrum Mathematik Propädeutikum Diskrete Mathematik. Weihnachtsblatt

Ι. Einführung in die Codierungstheorie

Felix Brandt, Jan Johannsen. Vorlesung im Wintersemester 2008/09

MafI I: Logik & Diskrete Mathematik (F. Hoffmann)

Zusammenfassung der Lebesgue-Integrationstheorie

Kapitel VI. Euklidische Geometrie

Konvergenz im quadratischen Mittel - Hilberträume

Kryptologie und Kodierungstheorie

Diskrete Strukturen Kapitel 2: Grundlagen (Beweise)

Algorithmentheorie Maximale Flüsse

Flächeninhalt, Volumen und Integral

Einführung in die Codierungstheorie. Rudolf Schürer

11. Folgen und Reihen.

11 Untermannigfaltigkeiten des R n und lokale Extrema mit Nebenbedingungen

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13)

Anwendungen der Differentialrechnung

Grundlagen der Technischen Informatik. 2. Übung

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP

Formelsammlung. Wahrscheinlichkeit und Information

Grundbegriffe der Informatik

55 Lokale Extrema unter Nebenbedingungen

7 KONVERGENTE FOLGEN 35. inf M = Infimum von M. bezeichnet haben. Definition. Sei (a n ) n N eine beschränkte Folge in R. Dann heißt.

Grundlagen der Technischen Informatik. Codierung und Fehlerkorrektur. Kapitel 4.2. Codewörter. Codewörter. Strukturierte Codes

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

Codes und Codegitter. Katharina Distler. 27. April 2015

Definition 3.1. Sei A X. Unter einer offenen Überdeckung von A versteht man eine Familie (U i ) i I offener Mengen U i X mit U i

Mengenlehre. ALGEBRA Kapitel 1 MNProfil - Mittelstufe KZN. Ronald Balestra CH Zürich Name: Vorname:

Grundlagen Digitaler Systeme (GDS)

Kapitel 4 Leitungscodierung

Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn

Suche nach einem solchen Kreis. Endlichkeitstest. Vereinigung und Durchschnitt. Abschlusseigenschaften

Übungen zur Linearen Algebra 1

Elementare Beweismethoden

Die Gamma-Funktion, das Produkt von Wallis und die Stirling sche Formel. dt = lim. = lim = Weiters erhalten wir durch partielle Integration, dass

Wenn man eine Folge gegeben hat, so kann man auch versuchen, eine Summe. a 0 + a 1 + a 2 +

Der Golay-Code und das Leech-Gitter

Vorlesung 4. Tilman Bauer. 13. September Wir befassen uns in dieser Vorlesung noch einmal mit Mengen.

Affine Geometrie (Einfachere, konstruktive Version)

Übungen zur Vorlesung Funktionentheorie Sommersemester Lösungshinweise zum Klausurvorbereitungsblatt. (z) i f. 2xe (x2 +y 2) i2ye (x2 +y 2 ) 2

Kapitel XII - Kennzahlen mehrdimensionaler Zufallsvariablen

Grundbegriffe der Informatik

Aufgaben und Lösungen Ausarbeitung der Übungsstunde zur Vorlesung Analysis I

Mathematik II für Studierende der Informatik. Wirtschaftsinformatik (Analysis und lineare Algebra) im Sommersemester 2016

6 Komplexe Integration

Codierungstheorie. Ruprecht-Karls-Universität Heidelberg Interdisziplinäres Zentrum für Wissenschaftliches Rechnen

Mathematik I. Zusammenhängende Räume

8 Extremwerte reellwertiger Funktionen

Prof. Dr. Rudolf Scharlau, Stefan Höppner

2 Teilbarkeit in Z. (a) Aus a b folgt a b und a b und a b und a b. (b) Aus a b und b c folgt a c.

Transkript:

Die Hamming-Distanz definiert eine Metrik. Satz Metrik Hamming-Distanz Die Hamming-Distanz ist eine Metrik auf {0, 1} n, d.h. für alle x, y, z {0, 1} n gilt: 1 Positivität: d(x, y) 0, Gleichheit gdw x = y. 2 Symmetrie: d(x, y) = d(y, x). 3 Dreiecksungleichung: d(x, z) d(x, y)+d(y, z). Beweis für 3: Ann.: d(x, z) > d(x, y)+d(y, z) Verändern erst x zu y, dann y zu z. Müssen dazu d(x, y)+d(y, z) < d(x, z) Stellen ändern. Widerspruch: x und z unterscheiden sich an d(x, z) Stellen. DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 175 / 249

Fehlererkennung Definition u-fehlererkennend Sei C ein Code und u N. C ist u-fehlerkennend, falls für alle Codeworte c, c C gilt: d(c, c ) u + 1. Ein Code ist genau u-fehlererkennend, falls er u-fehlererkennend ist, aber nicht (u + 1)-fehlererkennend. Bsp: Repetitionscode R(3) = {000, 111} ist genau 2-fehlererkennend. R(n) = {0 n, 1 n } ist genau (n 1)-fehlererkennend. C = {000000, 000111, 111111} ist genau 2-fehlererkennend. DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 176 / 249

Fehlerkorrektur Definition v-fehlerkorrigierend Sei C ein Code und v N. C ist v-fehlerkorrigierend, falls für alle c C gilt: Bis zu v können mittels Dekodierung zum eindeutigen Codewort minimaler Hammingdistanz korrigiert werden. Ein Code ist genau v-fehlerkorrigierend, falls er v-fehlerkorrigierend aber nicht (v + 1)-fehlerkorrigierend ist. Anmerkung: Existieren zwei verschiedene Codeworte mit minimaler Hammingdistanz, so wird eine Dekodierfehlermeldung ausgegeben. Bsp: R(3) = {000, 111} ist genau 1-fehlerkorrigierend. R(4) ist genau 1-fehlerkorrigierend. R(n) ist genau n 1 2 -fehlerkorrigierend. C = {0 9, 0 4 1 5, 1 9 } ist genau 1-fehlerkorrigierend. DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 177 / 249

Minimaldistanz eines Codes Definition Minimaldistanz Sei C ein Code mit C 2. Die Minimaldistanz d(c) eines Codes ist definiert als d(c) = min c c C {d(c, c )} D.h. d(c) ist die minimale Distanz zweier verschiedener Codeworte. Bsp: R(n) besitzt Minimaldistanz d(r(n)) = n. C = {0001, 0010, 0101} besitzt d(c) = 1. C = {0 9, 0 4 1 5, 1 9 } besitzt d(c) = 4. Korollar Fehlererkennung Ein Code C ist u-fehlererkennend gdw d(c) u + 1. DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 178 / 249

Fehlerkorrektur vs Minimaldistanz Satz Fehlerkorrektur vs Minimaldistanz Ein Code C ist v-fehlerkorrigierend gdw d(c) 2v + 1. Beweis: : Ann.: C ist nicht v-fehlerkorrigierend. D.h. bei Übertragung von c entsteht x mit d(c, x) v und c c : d(x, c ) v Dreiecksungleichung: d(c, c ) d(c, x)+d(x, c ) 2v (Widerspruch: d(c) 2v + 1) DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 179 / 249

Beweis der Hinrichtung Ann.: Es gibt c c C mit d(c, c ) = d(c) 2v. 1.Fall: d(c, c ) v. c kann durch Ändern von höchstens v Stellen in x = c überführt werden. x wird fälschlich zu c dekodiert (Widerspruch: C ist v-fehlerkorrigierend) 2. Fall: v + 1 d(c, c ) 2v. OBdA unterscheiden sich in c, c in den ersten d(c) Positionen. (Anderfalls sortiere die Koordinaten um.) Betrachten x, das durch v Fehler in den ersten Koordinaten von c entsteht, so dass x stimmt mit c auf den ersten v Koordinaten überein. x stimmt mit c auf den folgenden d(c) Koordinaten überein. x stimmt mit c, c auf den restlichen Koordinaten überein. Es gilt d(c, x) = v d(c) v = d(c, x). D.h. entweder wird x fälschlich zu c dekodiert, oder es entsteht ein Dekodierfehler. (Widerspruch: C ist v-fehlerkorrigierend) DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 180 / 249

(n, M, d)-code Definition (n, M, d)-code Sei C {0, 1} n mit C = M und Distanz d(c) = d. Dann bezeichnet man C als (n, M, d)-code. Man nennt(n, M, d) die Parameter des Codes. Bsp: R(n) ist ein (n, 2, n)-code. C = {0000, 0011} ist ein (4, 2, 2)-Code. C = {00, 01, 10, 11} ist ein (2, 4, 1)-Code. Korollar Sei C ein (n, M, d)-code. 1 C ist genau v-fehlerkorrigierend gdw d = 2v + 1 oder d = 2v + 2. 2 C ist genau d 1 2 -fehlerkorrigierend. (Fehlerkorrektur-Schranke) DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 181 / 249

Maximale Codes Definition Maximale Code Ein (n, M, d)-code C ist maximal, falls kein (n, M + 1, d)-code C existiert mit C C. Bsp: C 0 = {0000, 1111} ist maximal. C 1 = {0000, 0011, 1111} ist nicht maximal. C 2 = {0000, 0011, 1111, 1100} ist nicht maximal. C 3 = {0000, 0011, 1111, 1100, 1001, 0110, 1010, 0101} ist maximal. DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 182 / 249

Erweiterung nicht-maximaler Codes Satz Erweiterung von Codes Sei C {0, 1} n ein (n, M, d)-code. C ist maximal gdw für alle x {0, 1} n gilt: Es gibt ein c C mit d(x, c) < d. Ann.: Sei x {0, 1} n, so dass für alle c C : d(x, c) d Dann ist C {x} ein (n, M + 1, d)-code. (Widerspruch: C ist maximal.) Ann.: Sei C nicht maximal. D.h. x {0, 1} n : C {x} ist ein (n, M + 1, d)-code Dann gilt d(x, c) d für alle c C. DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 183 / 249

Ws für Dekodierfehler bei maximalen Codes Satz Dekodierfehler bei maximalen Codes Sei C ein maximaler (n, M, d)-code für einen binären symmetrischen Kanal. Für die Fehlerws beim Dekodieren zum Codewort mit minimalem Hammingabstand gilt n k=d ( n k ) p k (1 p) n k Ws(Dekodierfehler) 1 d 1 2 k=0 ( ) n p k (1 p) n k k Beweis: Korrekte Dekodierung bei d 1 2 Fehlern, d.h. mit Ws mind. d 1 2 k=0 ( ) n p k (1 p) n k. k DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 184 / 249

Ws für Dekodierfehler bei maximalen Codes Beweis: Fortsetzung Sei x das bei Übertragung von c C empfangene Wort mit d(x, c) d. Da C maximal ist, existiert ein c C mit d(x, c ) < d d(x, c). D.h. x wird zu c dekodiert anstatt zu c. Damit erhalten wir bei d Fehlern stets inkorrekte Dekodierung. Dies geschieht mit Ws n k=d ( ) n p k (1 p) n k. k DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 185 / 249

Hammingkugel Definition Hammingkugel Sei x {0, 1} n und r 0. Wir definieren die n-dimensionale Hammingkugel mit Mittelpunkt x und Radius r als B n (x, r) = {y {0, 1} n d(x, y) r}. Bsp: B 3 (001, 1) = {001, 101, 011, 000}. Satz Volumen von B n (x, r) Das Volumen der Hammingkugel B n (x, r) ist V n (r) = r i=0( n i). Beweis: Es gibt ( n i) String mit Distanz i von x. DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 186 / 249

Packradius eines Codes Definition Packradius eines Codes Sei C ein (n, M, d)-code. Der Packradius pr(c) N von C ist die größte Zahl, so dass die Hammingkugeln B n (c, pr(c)) für alle c C disjunkt sind. Korollar Sei C ein (n, M, d)-code. 1 Der Packradius von C ist pr(c) = d 1 2. 2 C ist genau v-fehlerkorrigierend gdw pr(c) = v. DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 187 / 249

Perfekte Codes Definition Perfekter Code Sei C {0, 1} n ein (n, M, d)-code. C heißt perfekt, falls ( ) d 1 M V n = 2 n. 2 D.h. die maximalen disjunkten Hammingkugeln um die Codeworte partitionieren {0, 1} n. Nicht für alle (n, M, d), die obige Bedingung erfüllen, gibt es auch einen Code. {0, 1} n ist ein perfekter (n, 2 n, 1)-Code Packradius ist 0, Hammingkugeln bestehen nur aus Codewort selbst. Perfekter Code, aber nutzlos für Fehlerkorrektur. R(n) ist für ungerade n ein perfekter (n, 2, n)-code. 2 n 1 ( 2 n i=0 i) = 2 2 n 2 = 2n Code ist nutzlos, da er nur zwei Codeworte enthält. DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 188 / 249

Beispiele für Codes Hamming Code: H(h) ist ein (2 h 1, 2 n h, 3)-Code. H(h) ist perfekt, denn 2 n h( 1+2 h 1 ) = 2 n. Golay Codes: G 23 ist ein (23, 2 12, 7)-Code. G 24 ist ein (24, 2 12, 8)-Code. Einsatz: Voyager für Bilder von Jupiter und Saturn. Der Golay Code (23, 2 12, 7) ist perfekt, denn 2 12 3 i=0 ( 23 i ) = 2 12 2 11 = 2 23. Reed-Muller Code: RM(r, m) ist ein (2 m, 2 1+(m 1)+...+( m r), 2 m r )-Code. RM(1, m) = (2 m, 2 m+1, 2 m 1 ). Einsatz: Mariner 9 für Bilder vom Mars. Die einzigen perfekten, binären v-fehlerkorrigierenden Codes mit v 2 sind Repetitionscodes und der obige Golay Code G 23. DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 189 / 249

Die Rate eines Codes Definition Rate eines Codes Sei C ein (n, M, d)-code. 1 Die Übertragungsrate ist definiert als R(C) = log 2 (M) n. 2 Die Fehlerrate ist definiert als δ(c) = d 1 2 n. Bsp: C = {0 n } hat Übertragungrate 0, aber perfekte Fehlerkorrektur. C = {0, 1} n hat Übertragungrate 1, aber keine Fehlerkorrektur. R(R(n)) = 1 n und δ(r(n)) = n 1 2 n. Übertragungsrate konvergiert gegen 0, Fehlerrate gegen 1 2. R(H(h)) = n h n = 1 h n und δ(h(h)) = 1 n. Übertragungsrate konvergiert gegen 1, Fehlerrate gegen 0. DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 190 / 249

Die Größe A(n, d) und optimale Codes Definition Optimaler Code Wir definieren A(n, d) = max{m binärer (n, M, d) Code} Ein (n, M, d)-code heißt optimal, falls M = A(n, d). Bestimmung von A(n, d) ist offenes Problem. Zeigen hier obere und untere Schranken für A(n, d). Für kleine Werte von n, d bestimmen wir A(n, d) wie folgt: Zeigen A(n, d) M. Konstruieren (n, M, d)-code. A(n, d) 2 n für d [n]: höchstens 2 n Codeworte der Länge n. A(n, 1) = 2 n : C = {0, 1} n. A(n, n) = 2: R(n). A(n, d) A(n, d ) für d, d [n] mit d d (Übung) DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 191 / 249

Singleton-Schranke Satz Singleton-Schranke A(n, d) 2 n d+1 Beweis: Sei C ein optimaler (n, M, d)-code, d.h. M = A(n, d). Wir entfernen die letzten d 1 Stellen aller M Codeworte. Die resultierenden M Worte sind alle verschieden, da sich alle Codeworte in mindestens d Stellen unterscheiden. Es gibt M viele unterschiedliche Worte der Länge n (d 1), d.h. M 2 n d+1. DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 192 / 249

Vereinfachte Plotkin-Schranke Satz Vereinfachte Plotkin-Schranke Sei n < 2d, dann gilt A(n, d) 2d 2d n. Sei C ein optimaler (n, M, d) Code und S = i<j d(c i, c j ). Je zwei Codeworte besitzen Distanz mindestens d, d.h. S d ( M 2). Betrachten erste Stelle in allen Codeworten: Sei k die Anzahl der Nullen und (M k) die Anzahl der Einsen. Erste Stelle liefert Beitrag von k(m k) zu S. k(m k) ist maximal für k = M 2, d.h. k(m k) M2 4. Analog für jede der n Stellen, d.h. S nm 2 4. Kombination beider Schranken und Auflösen nach M liefert M 2d 2d n. DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 193 / 249

Vergleich der oberen Schranken n 7 8 9 10 11 12 13 A(n, 7) 2 2 2 2 4 4 8 Singleton 2 4 8 16 32 64 128 Plotkin 2 2 2 3 4 7 14 Kodierungstheorem von Shannon für fehlerbehaftete Kanäle Gegeben sei ein binärer symmetrischer Kanal Q mit Fehlerws p. Für alle R < 1+p log 2 p+(1 p) log 2 (1 p) = 1 H(Q) und alle ǫ > 0 gibt es für hinreichend große n einen (n, M)-Code C mit Übertragungsrate R(C) R und Ws(Dekodierfehler) ǫ. Beweis komplex, nicht-konstruktiv. Resultat gilt nur asymptotisch für genügend große Blocklänge. DiMa II - Vorlesung 12-20.06.2011 Distanz, maximale und perfekte Codes, Singleton- und Plotkin-Schranke 194 / 249