6 Fehlerkorrigierende Codes

Größe: px
Ab Seite anzeigen:

Download "6 Fehlerkorrigierende Codes"

Transkript

1 R. Reischuk, ITCS 35 6 Fehlerkorrigierende Codes Wir betrachten im folgenden nur Blockcodes, da sich bei diesen das Decodieren und auch die Analyse der Fehlertoleranz-Eigenschaften einfacher gestaltet. Mit Blockcodes hinreichend großer Länge kann man approximativ die gleichen Raten erreichen wie mit der größeren Klasse, die auch Codes variabler Länge einschließt. Ist Σ = Σ q ein q -elementiges Alphabet in der Regel verwenden wir Σ q := [0..q 1] und c Σ n q, so betrachten wir Kugeln in Σ n q mit Mittelpunkt c und Radius ρ, d.h. die Menge aller zu c benachbarten Vektoren im Abstand maximal ρ : K q (c, ρ) := {x Σ n q d H (c, x) ρ}. V q (n, ρ) bezeichne das Volumen solch einer Kugel, die Anzahl der darin enthaltenen Vektoren: V q (n, ρ) := K q (c, ρ) = ρ r=0 ( ) n (q 1) r. r 6.1 Klassifizierung Es gibt verschiedene kanonische Arten, Blockcodes zu konstruieren. Der simple Wiederholungscode, der ein einzelnes Zeichen a durch einen Block a n von n Kopien dieses Zeichens codiert, besizt zwar eine gute Fehlertoleranz und läßt sich auch sehr einfach decodieren, seine Rate ist jedoch sehr schlecht: mit wachsendem n konvergiert sie gegen 0. Wie wir bereits beim Beweis des Shannonschen Kanalcodierungstheorems im binären Fall gesehen haben, können Zufallscodes, die eine Teilmenge von Σ n zufällig als Codeworte auswählen und dann eventuell gewisse lokale Korrekturen vornehmen, wenn zwei Codeworte einen zu geringen Abstand besitzen, eine sehr gute Rate erreichen. Man benötigt jedoch extrem viel Speicherplatz exponentiell in n für ihre Spezifikation und Decodierung. Gewichtscodes sind kombinatorische Codes über dem binären Alphabet, die alle Vektoren c Σ n mit d H (c) = w für ein festes w IN als Codeworte verwenden. Bei derartigen Codes ist ein einzelner Fehler erkennbar, aber nicht korrigierbar. Alle ungeradzahligen Fehler sind mit Sicherheit erkennbar. Eine bestmögliche Wahl für den Parameter w ist w = n/2. In diesem Fall erzielen der Code die Rate ( ) 1 n n log = 1 ( n/2 n log (2 πn) 1/2 2 n) = 1 log n 2 n. Ein Paritätscode verwendet alle Binär-Vektoren geraden Gewichtes und erzielt damit eine Rate 1 1/n. Die ersten n 1 Bits solch eines Codes heißen Informationsbits, das letzte Prüfbit oder Paritätsbit. 1-Bit-Fehler können somit wie bei einem Gewichtscode erkannt, aber nicht korrigiert werden. Diese Konstruktion kann auch auf größere Alphabete erweitert werden. Für c = c 1 c 2... c n Σ n q ergibt sich der Paritätswert c n dann durch c n = n 1 i=1 c i mod q.

2 36 Codierung und Sicherheit, UzL WS 2007/08 Um 1-Bit-Fehler auch korrigieren zu können, muß man offensichtlich mehrere Prüfbits verwenden. Bei einem Rechteck-Code werden die n Informationsbits in einer zweidimensionalen (n 1 n 2 ) Matrix angeordnet ( n = n 1 n 2 ) und für jede Zeile und jede Spalte wird ein Prüfbit berechnet. Auf diese Weise kann ein einzelner Bitfehler lokalisiert werden und damit korrigiert werden: bei der entsprechenden Matrix-Position sind die Prüfbits der zugehörigen Zeile sowie Spalte 1. In günstigen Fällen können auch mehrere Fehler erkannt und korrigiert werden. Als Rate ergibt sich im Falle n 1 = n 2, d.h. n = (n 1 +1) (n 2 +1) : r = ( 1 1/ n ) 2 = 1 2/ n + 1/n. Neben kombinatorischen Eigenschaften kann man auch algebraische verwenden, um Codes mit stärkeren Strukturen zu konstruieren. Dazu wird das Alphabet Σ als ein endlicher Körper interpretiert, so daß wir auf seinen Elementen arithmetische Operationen ausführen können. Dies liefert die Klasse der algebraischen Codes und als Spezialfall lineare Codes. Als Abstand eines Codes C hatten wir den minimalen Hamming-Abstand zwischen Paaren von Codeworten definiert: d min (C) := min d H(c, c ). c,c C Fact 6.1 Ein Code C mit Abstand d min (C) = d erkennt f Fehler für alle f d 1. Er kann e Fehler korrigieren für alle e (d 1)/2. Beweis: Werden bei einem Codewort f Komponenten geändert, wobei 0 < f < d, so ist der neue Vektor wegen des Minimalabstandes d kein Codewort. Betrachtet man andererseits für jedes Codewort c die Kugel K(c, d 1 2 ) mit Mittelpunkt c und Radius (d 1)/2, dann müssen diese Kugeln auf Grund des minimalen Abstandes d zwischen je zwei Codeworten disjunkt sein. Man kann daher jeden Vektor in dieser Kugel eindeutig auf ihren Mittelpunkt, d.h. das Codewort c, abbilden. Definition 6.1 Der Überdeckungsradius eines Blockcodes C der Länge n über einem Alphabet Σ ist definiert als ρ(c) := max min d H(x, c). x Σ n c C Für ein Vektor x = (x 1,..., x n ) Σ n bezeichne w(x) das Hamming-Gewicht von x, d.h. die Anzahl der Komponenten x i 0. Das minimale Gewicht eines Codes C ist definiert als w(c) := min x C, x 0 w(x). 6.2 Güteschranken für Codes Definition 6.2 Ein Blockcode der Länge n und Größe m und Minimalabstand d heißt (n, m, d) Code. Für q IN mit q 2 definieren wir die Funktion A q (n, d) := max{m (n, m, d) Code über Σ q }.

3 R. Reischuk, ITCS 37 Ein (n, m, d) Code C über Σ q heißt optimal, wenn m = A q (n, d) gilt. C heißt maximal, wenn es nicht möglich ist, C durch Hinzunahme weiterer Codeworte zu vergrößern, ohne die Minimalabstandsbedingung d zu verletzen. Es gibt maximale Codes, die jedoch nicht optimal sind. Wir überlassen es als Aufgabe, einen derartigen Code zu konstruieren. Ist ein (n, m, d) -Code C maximal, dann muß für den Überdeckungsradius gelten: ρ(c) < d. Offensichtlich ist A q (n, d) monoton wachsend in dem Parameter q und dem Argument n. Die Funktion ist monoton fallend bezüglich d. Bis heute ist für fast alle Argumente der Wert A q (n, d) nicht exakt bekannt. Die folgende Spezialfälle lassen sich jedoch leicht analysieren. Lemma 6.1 Für d, e 1 und n IN gilt: A q (n, 1) = q n, A q (n, 2) q n 1, A 2 (n 1, 2e 1) = A 2 (n, 2e), A q (n, d) q A 2 (n 1, d). Beweis: Die erste Gleichung ergibt sich trivialerweise aus der Injektivität eines Codes. Paritätscodes, bei denen das letzte Symbol als Prüfbit genutzt wird, erzielen offensichtlich einen Abstand 2. Es gibt q n 1 solcher Codewörter. Durch Streichen einer Bitposition in einem binären Blockcode der Länge n, verkürzt sich der Abstand um maximal 1. Also gilt A 2 (n 1, 2e 1) A 2 (n, 2e). Andererseits kann aus einem (n 1, m, 2e 1) -Code C durch Anfügen eines Paritätsbits ein (n, m, 2e) -Code gewonnen werden. Zwei Codeworte aus C besitzen entweder bereits einen Abstand größer als 2e 1 oder sie haben exakt den Abstand 2e 1 und damit verschiedene Parität. Durch das Paritätsbit erhöht sich somit der Abstand um 1. Ist C ein (n, m, d) -Code über Σ q, so sei C j die Teilmenge aller Codewörter, deren erstes Symbol j ist für j = 0, 1,..., q 1. Streicht man in C j dies Symbol, so erhält man einen Blockcode C j der Länge n 1, der weiterhin einen Abstand mindestens d besitzt. Mindestens eine dieser Mengen C j enthält mindestens einen Anteil q der Mächtigkeit von C. Die geometrische Zerlegung des Raumes Σ n q durch Kugeln um die Codewörter eines Codes impliziert die folgenden Schranken für die maximale Größe eines Codes. Theorem 6.2 [Kugelüberdeckungs- und Packungs-Schranke] Für die Größe optimaler Blockcodes der Länge n mit Abstand d über einem q -elementigen Alphabet ergeben eine Kugelüberdeckung (sphere covering bound) sowie eine Kugelpackung (sphere packing bound) von Σ n q die folgendenabschätzungen: q n V q (n, d 1) A q(n, d) q n V q (n, d 1 2 ).

4 38 Codierung und Sicherheit, UzL WS 2007/08 Beweis: Bei Minimalabstand d kann ein Code C e = (d 1)/2 viele Fehler korrigieren, d.h. die Kugeln mit Radius e um die Codeworte müssen disjunkt sein. Da jede Kugel das Volumen V q (n, e) besitzt, können nicht mehr als q n /V q (n, e) solcher Kugeln und damit Codeworte in Σ n q gepackt werden. Ist andererseits C ein maximaler Code mit Minimalabstand d über Σ n q, so müssen die Kugeln mit Radius d 1 um die Codeworte von C den gesamten Raum überdecken (Überdeckungsradius). Andernfalls gäbe es nämlich ein weiteres Wort in Σ n q, das zu allen Codeworten in C Abstand mindestens d besäße und folglich zu C hinzugefügt werden könnte, d.h. C wäre nicht maximal. Da jede Kugel nur V q (n, d 1) Punkte überdecken kann, folgt die untere Schranke. Für das binäre Alphabet und Minimalabstand 3 bzw. 5 ergeben sich die folgenden Abschätzungen aus der Kugelpackungs- und Kugelüberdeckungsschranke. Die beiden Schranken streben mit wachsendem n stark auseinander. Wir haben soweit durch verfeinerte Analyse möglich den korrekten Wert bzw. schärfere Schranken aufgelistet. Packungs- korrekter Überdeckungsschranke Wert schranke n A 2 (n, 3) A 2 (n, 3) = A 2 (n, 3) Tabelle 7: Die Funktion A 2 (n, 3) Eine andere einfache Überlegung liefert die folgende Abschätzung: Theorem 6.3 [Singleton-Schranke] A q (n, d) q n d+1. Beweis: Streicht man d 1 Positionen eines Codes mit Minimalabstand d, so müssen die verbleibenden Strings paarweise verschieden sein. Bei der Restlänge l = n d + 1 gibt es maximal q l viele Möglichkeiten. Durch eine genauere Analyse hat Plotkin gezeigt:

5 R. Reischuk, ITCS 39 Packungs- korrekter Überdeckungsschranke Wert schranke n A 2 (n, 5) A 2 (n, 5) = A 2 (n, 5) Tabelle 8: Die Funktion A 2 (n, 5) Theorem 6.4 [Plotkin-Schranke] Für d gerade gilt: für d ungerade: d A 2 (n, d) 2 2d n falls d > n/2, und für d = n/2 : A 2(2d, d) = 4d ; d + 1 A 2 (n, d) 2 2d + 1 n falls d > (n 1)/2, und für d = (n 1)/2 : A 2(2d+1, d) 4d+4. Plotkin- Packungs- Schranke Schranke n A 2 (n, 7) = A 2 (n, 7) A 2 (n, 7) Tabelle 9: Die Funktion A 2 (n, 7)

6 40 Codierung und Sicherheit, UzL WS 2007/ Perfekte Codes Überdecken die Kugeln mit Radius (d 1)/2 um die Codewörter eines Codes den ganzen Raum so wird der Raum Σ n q in optimaler Weise ausgeschöpft. Es folgt dann sofort, daß weder weitere Codeworte hinzugefügt werden können, ohne die Fehlerkorrektureigenschaften des Codes zu verschlechtern, noch daß irgendein anderer Code eine höhere Rate erzielen kann. Dies führt zu der Begriffsbildung: Definition 6.3 Ein (n, m, d) Code über Σ q heißt perfekt, falls er die Kugelpackungsschranke erreicht, d.h. m V q (n, d 1 2 ) = qn. Eine notwendige Bedingung hierfür ist, daß d ungerade und V q (n, d 1 2 ) eine Potenz von q ist. Triviale Beispiele sind der Fall e = n, d.h. d = 2n+1 mit m = 1 sowie d = n und e = (d 1)/2 mit m = 2. Der Fall e = 1, d.h. d = 3 führt auf die wichtige Klasse der Hamming-Codes, benannt nach ihrem Entdecker Richard Hamming [1950], unabhängig davon aber auch schon von Marcel Golay 1949 gefunden. Es sei q eine Primzahlpotenz. Dann muß also für d = 3 gelten: V q (n, 1) = 1 + n (q 1) = q h für ein h IN, mit anderen Worten n = (q h 1)/(q 1). Die Größe des Codes ergibt sich dann als m = q n h. Im binären Fall q = 2 bedeutet dies n = 2 h 1 und m = 2 n h. Definition 6.4 [Hamming-Code] Für h IN ist der binäre Hamming-Code H(h) ein (n, 2 n h, 3) -Code mit Länge n = 2 h 1. Er verwendet h Paritätsbits, mit denen ein einzelner Bit-Fehler lokalisiert werden kann. Die 2 h möglichen Werte für die Paritätsbits heißen Syndrome. Bei 1-Fehler-Korrektur muß gelten: 2 h n + 1, da es n mögliche Fehlerpositionen gibt und ein weiteres Syndrom für den fehlerfreien Fall benötigt wird. Im Falle der Gleichheit erhalten wir einen perfekten Code. Die Rate berechnet sich dann als n h n = n log (n + 1) n = 1 Mit wachsendem n konvergiert dieser Ausdruck gegen 1. log (n + 1) n. Beispiel 6.1 Betrachten wir als Beispiel den Hamming-Code H(3). Es gilt dann n = = 7. Also besitzt dieser Code 3 Prüfbits und 4 Informationsbits und damit Größe m = 2 4. Es verbleibt die Aufgabe, die Prüfbits geeignet zu definieren, so daß jeder Bitfehler an einer der 7 Positionen des Codewortes ein anderes Syndrom besitzt. Wählt man darüber hinaus die Positionen der Prüfbits geschickt, so ist es möglich, das Syndrom als Binärdarstellung einer Zahl zwischen 0 und 7 zu interpretieren, die die Fehlerposition definiert. Hierzu wählen wir die Positionen 1, 2 und 4. Den Informationsbits verbleiben damit die Positionen 3, 5, 6, 7.

7 R. Reischuk, ITCS 41 Die Prüfbits werden folgendermaßen spezifiziert: Bit 1 macht einen Päritätscheck für die Positionen 1,3,5,7, (alle Zahlen, in deren Binärdarstellung das niederwertigste Bit eine 1 ist): c 1 = c 3 c 5 c 7. Bit 2 macht einen Päritätscheck für die Positionen 2,3,6,7: c 2 = c 3 c 6 c 7. Bit 4 macht einen Päritätscheck für die Positionen: 4,5,6,7: c 4 = c 5 c 6 c 7. Sind beispielsweise die 4 Informationsbits 1011, die auf die Positionen 3, 5, 6, 7 gesetzt werden, so ergibt sich für die Prüfbits: c 1 = = 0, c 2 = = 1 und c 4 = = 0. Damit erhalten wir als Codewort die Bitfolge Falls sich nun bei der Übertragung ein Fehler an Bitposition 3 einschleicht, d.h. es wird das Wort empfangen, so ergibt sich das Syndrom durch die 3 Tests: Test 1: c 1 c 3 c 5 c 7 = = 1 Test 2: c 2 c 3 c 6 c 7 = = 1 Test 3: c 4 c 5 c 6 c 7 = = 0 Wir erhalten damit die Binärdarstellung, beginnend mit dem niederwertigsten Bit, der Zahl 3. im Falle eines 1-Bit-Fehlers wird dieser als das dritte Bit erkannt. Berechnet man die Syndrome für die Fehler an den anderen Positionen, so ergibt sich jeweils ein anderes Syndrom, das gerade die Binärdarstellung dieser Position darstellt. Im fehlerfreien Fall erhalten wir das Syndrom 000. Theorem 6.5 Ist n + 1 = 2 h eine Zweierpotenz, dann existiert ein perfekter binärer Code mit Abstand 3 und Redundanz 1, nämlich der Hamming-Code H(h) mit anderen Worten A 2 (2 h 1, 3) = 2 2h h 1. log (n+1) n Beispiele für perfekte Codes mit Fehlerkorrektur e > 1, d.h. Minimalabstand > 3, gibt es nur wenige. Der Golay-Code G 23 ist ein binärer Code mit Parametern (23, 2 12, 7). Das Volumen der 23-dimensionalen Kugel mit Radius 3 = (7 1)/2 berechnet sich als V 2 (23, 3) = 3 k=0 ( ) 23 k = = 2048 = Somit gilt G 23 V 2 (23, 3) = = 2 23, d.h. der Code ist perfekt. In der Regel ist jedoch das Volumen V q (n, e) einer Kugel in Σ n q gezeigt werden: keine Potenz von q. Es konnte Theorem 6.6 [van Lint 1971, Tietäväinen 1973] Die (23, 2 12, 7) und (11, 2 6, 5) Golay Codes sind die einzigen perfekten e -fehlerkorrigierenden Codes mit e > 1 über einem Alphabet Σ q, dessen Größe q eine Primzahlpotenz ist, d.h q = p r mit p Primzahl und r IN. Für e = 3, 4, 5, 7, 8,... (d.h. alle e > 2 mit Ausnahme von e = 6 ) gilt diese Behauptung auch für beliebige Alphabete Σ q. Bislang ist ungelöst, ob es 2 -fehlerkorrigierende perfekte Codes für Alphabete gibt, deren Größe keine Primzahlpotenz ist.

8 42 Codierung und Sicherheit, UzL WS 2007/ Lineare Codes Im folgenden betrachten wir eine spezielle Familie von Codes, die linearen Codes. Ein linearer Code ist ein linearer Unterraum des Vektorraumes Σ n q. Dazu muß Σ q selber ein endlicher Körper mit q Elementen sein, den man üblicherweise mit IF q bezeichnet. Ein einfaches Beispiel für einen linearen Code haben wir bereits kennengelernt den binären Hamming-Code. Fact 6.2 Es existiert ein endlicher Körper mit q Elementen genau dann, wenn q = p r Primzahlpotenz ist, d.h. p ist eine Primzahl und r IN. eine Im Fall q = p, d.h. r = 1, ist IF q isomorph zum Restklassenring mod p. Für r > 1 wählen wir ein irreduzibles Polynom g(x) von Grad r in IF p [x] und betrachten den Restklassenring über dem Polynomideal IF p [x] /g ( x), das aus Elementen der Form r 1 i=o a i x i mit a i IF p besteht. Die Addition und Multiplikation in IF q ist die entsprechende Operation im Polynomring modulo g(x) ist. Beispiel 6.2 Betrachten wir den Körper IF 2 4 = IF 2 [x] /x 4 +x+1. Die beiden Körperelemente (1101) und (0111) werden durch die Polynome x 3 + x 2 + 1, bzw. x 2 + x + 1 repräsentiert. Als Produkt der beiden Elemente erhalten wir (1101) (0111) = (x 3 + x 2 + 1)(x 2 + x + 1) = x 5 + x + 1 x mod x 4 + x + 1 = Definition 6.5 Eine Generator-Matrix für einen linearen Code C ist eine (k n) -Matrix G, deren k Zeilen eine Basis von C bilden, d.h. C = {X G X IF k q}. G ist in Standardform, falls G = (I k P ) wobei I k die (k k) -Einheitsmatrix bezeichnet. Die ersten k Symbole heißen dann Informations-Symbole und die übrigen Prüf-Symbole. k Codewörter spezifizieren somit vollständig einen linearen Code der Mächtigkeit q k. Falls q k Nachrichten zu übertragen sind, kodieren wir die i -te Nachricht für i [0... q k 1] durch X [i] G wobei X [i] = (x [i] k 1,..., x[i] 0 ) gegeben ist durch k 1 j=0 x[i] j q j = i. Ein linearer Code mit einer (k n) -dimensionalen Generator-Matrix ist somit ein k -dimensionaler Unterraum des Vektorraumes IF n q. Derartige Codes werden auch als [n, k] -Codes bezeichnet, bzw. als [n, k, d] -Codes, wenn C Minimalabstand d besitzt. Beispiel 6.3 Das folgende ist ein [4,3,2]-Code über dem Alphabet IF 2 : C 1 = {0000, 1001, 0101, 0011, 1100, 1010, 0110, 1111} Für C 1 kann man als Basis beispielsweise die 3 linear unabhängigen Vektoren 1001, 1100 und 1111 wählen. Damit ergibt sich die Generator-Matrix G =

9 R. Reischuk, ITCS 43 Daß C Minimalabstand 2 besitzt, kann man entweder durch paarweisen Vergleich der Codewörter überprüfen oder mit Methoden, die wir gleich vorstellen werden. Der Code C 2 sei durch die Generator-Matrix G = I n gegeben (die n -dimensionale Einheitsmatrix). C 2 ist somit der gesamte Raum IF n q und damit ein [n, n, 1] -Code. Die Generator-Matrix G = (1... 1) erzeugt den Wiederholungs-Code, einen linearen [n, 1, n] - Code. Lemma 6.7 Für einen linearen Code C sind Abstand d(c) und minimales Gewicht w(c) identisch. Beweis: Sei c ein Codewort von C mit minimalem Gewicht w = w(c). Da ein linearer Code immer den Nullvektor 0 enthält, können wir schließen d(c) d H (0, c) = w. Seien andererseits c, c Codeworte mit minimalen Abstand d H (c, c ) = d(c). Für lineare Codes ist c c ebenfalls ein Codewort, somit folgt w(c) w(c c ) = d H (c, c ) = d(c). In der linearen Algebra betrachtet man zu einem Unterrraum U eines Vektorraumes V auch den sogenannten Dualraum U (auch Senkrechtraum genannt), der aus den Vektoren von V besteht, die auf allen Vektoren von U senkrecht stehen, d.h. das Skalarprodukt ist 0. Dieser Dualraum ist damit ebenfalls ein linearer Code. Besitzen U und V die Dimensionen k bzw. n, dann ist die Dimension des Dualraums n k. Definition 6.6 C sei ein [n, k] -Code. Dann heißt C = {y Σ n x y = 0 x C} der zu C duale Code. Eine Generator-Matrix für C heißt Prüfmatrix für C. Bemerkung C ist ein [n, n k] Code. 2. Es gilt c h = 0 für alle c C und h C, insbesondere auch für Basisvektoren h von C. Dies impliziert für eine Generator-Matrix H des Dualcodes: c H t = 0 für jedes Codewort in C. Diese Eigenschaft ist jedoch auch hinreichend für einen Vektor c, um ein Codewort von C zu sein. Das Vektor-Matrix-Produkt c H t ist somit ein Kriterium, um zu überprüfen, ob c C. 3. Ist G = (I k P ) eine generierende Matrix für C, so ist H = ( P t I n k ) eine generierende Matrix für C und damit eine Prüfmatrix für C. Dies ergibt sich durch einfaches Nachrechnen. 4. (C ) = C. Damit ist eine Generator-Matrix für C gleichzeitig eine Prüfmatrix für C. Beispiel 6.4 Für den Hamming-Code H(3) konstruieren wir eine Generator-Matrix, indem wir die 4 Informationsbits der Reihe nach mit dem Wert 1 belegen und die übrigen Informationsbits

10 44 Codierung und Sicherheit, UzL WS 2007/08 auf 0 setzen. Dies ergibt dann die 4 linear unabhängigen Codewörter c 1 = , c 2 = , c 3 = und c 4 = Sie bilden eine Basis für H(3), d.h. G = ist ein Generator. Die 3 Tests definieren die Prüfmatrix H = die gleichzeitig auch eine Generator-Matrix für den dualen Code H(3) ist. Definition 6.7 C sei ein linearer Code mit Prüfmatrix H und y IF n q. Dann heißt s = s(y) := y H t das Syndrom von y. Codewörter haben somit als Syndrom den Nullvektor. Falls das Codewort c gesendet und y = c + f empfangen wird, wobei f IF n q den Fehlervektor definiert, so gilt s(y) = y H t = (c + f) H t = f H t = s(f). Das Syndrom hängt somit nur von dem Fehlervektor f ab. Um y maximum likelihood zu decodieren, bestimmt man daher unter allen Fehlervektoren f mit Syndrom s(y) einen mit kleinstem Gewicht. Algebraisch gesprochen bedeutet dies: IF n q zerfällt bezüglich seines Unterraumes C in Nebenklassen N s, jeweils bestehend aus Vektoren mit gleichem Syndrom s. Man braucht daher zu jeder Nebenklasse N s nur einen sogenannten Nebenklassenführer f s, einen Vektor mit minimalen Gewicht, zu wählen und decodiert dann y als y f s(y). Falls n und k relativ groß sind, genügt daher zur Decodierung eine Tabelle für die q n k Syndrome mit zugehörigem Nebenklassenführer anstatt einer vollständigen Decodiertabelle für alle q n möglichen Vektoren. Im Fall der Hamming-Codes haben wir gesehen, daß man die Nebenklassenführer in diesem Fall die geänderte Bitposition auf einfache Weise aus dem Syndrom berechnen kann. Damit kann auf eine Decodiertabelle gänzlich verzichtet werden. Für nichtbinäre Alphabete kann man Hamming-Codes auf folgende allgemeine Weise definieren. Definition 6.8 Sei n = q 1. Ein [n, n k] -Code C über IF q mit Prüfmatrix H heißt Hamming-Code, falls H aus paarweise linear unabhängigen Spalten besteht. Fügt man noch einen Paritätsckeck über alle n Symbole hinzu, so nennt man dies einen erweiterten Hamming-Code, welches einen [n + 1, n k] -Code darstellt. qk 1

Einführung in die Kodierungstheorie

Einführung in die Kodierungstheorie Einführung in die Kodierungstheorie Einführung Vorgehen Beispiele Definitionen (Code, Codewort, Alphabet, Länge) Hamming-Distanz Definitionen (Äquivalenz, Coderate, ) Singleton-Schranke Lineare Codes Hamming-Gewicht

Mehr

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

4. Woche Decodierung; Maximale, Perfekte und Optimale Codes. 4. Woche: Decodierung; Maximale, Perfekte und Optimale Codes 69/ 140 4 Woche Decodierung; Maximale, Perfekte und Optimale Codes 4 Woche: Decodierung; Maximale, Perfekte und Optimale Codes 69/ 140 Szenario für fehlerkorrigierende Codes Definition (n, M)-Code Sei C {0, 1}

Mehr

Theoretische Grundlagen der Informatik WS 09/10

Theoretische Grundlagen der Informatik WS 09/10 Theoretische Grundlagen der Informatik WS 09/10 - Tutorium 6 - Michael Kirsten und Kai Wallisch Sitzung 13 02.02.2010 Inhaltsverzeichnis 1 Formeln zur Berechnung Aufgabe 1 2 Hamming-Distanz Aufgabe 2 3

Mehr

2.1 Codes: einige Grundbegriffe

2.1 Codes: einige Grundbegriffe Gitter und Codes c Rudolf Scharlau 2. Mai 2009 51 2.1 Codes: einige Grundbegriffe Wir stellen die wichtigsten Grundbegriffe für Codes über dem Alphabet F q, also über einem endlichen Körper mit q Elementen

Mehr

Fehlerkorrigierende Codes

Fehlerkorrigierende Codes Fehlerkorrigierende Codes SS 2013 Gerhard Dorfer 2 Inhaltsverzeichnis 1 Fehlerkorrigierende Codes 4 1.1 Einführende Beispiele................................. 4 1.2 Mathematische Grundlagen..............................

Mehr

3 Der Hamming-Code. Hamming-Codes

3 Der Hamming-Code. Hamming-Codes 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:

Mehr

Single Parity check Codes (1)

Single Parity check Codes (1) Single Parity check Codes (1) Der Single Parity check Code (SPC) fügt zu dem Informationsblock u = (u 1, u 2,..., u k ) ein Prüfbit (englisch: Parity) p hinzu: Die Grafik zeigt drei Beispiele solcher Codes

Mehr

KANALCODIERUNG AUFGABEN. Aufgabe 1. Aufgabe 2

KANALCODIERUNG AUFGABEN. Aufgabe 1. Aufgabe 2 AUFGABEN KANALCODIERUNG Aufgabe Wir betrachten den Hamming-Code mit m = 5 Prüfbits. a) Wie gross ist die Blocklänge n dieses Codes? b) Wie viele gültige Codewörter umfasst dieser Code? c) Leiten Sie die

Mehr

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

Kapitel 1: Codierungstheorie. 1.2 Quellcodierung 1.3 Fehlererkennende Codes 1.4 Fehlerkorrigierende Codes Inhalt: 1.1 Einführung 1.2 Quellcodierung 1.3 Fehlererkennende Codes 1.4 Fehlerkorrigierende Codes 1.1 Einführung In In der der Codierungstheorie unterscheidet man man Quellcodierung und und Kanalcodierung.

Mehr

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

Lineare Codes. Dipl.-Inform. Wolfgang Globke. Institut für Algebra und Geometrie Arbeitsgruppe Differentialgeometrie Universität Karlsruhe 1 / 19 Lineare Codes Dipl.-Inform. Wolfgang Globke Institut für Algebra und Geometrie Arbeitsgruppe Differentialgeometrie Universität Karlsruhe 1 / 19 Codes Ein Code ist eine eindeutige Zuordnung von Zeichen

Mehr

Codes und Codegitter. Katharina Distler. 27. April 2015

Codes und Codegitter. Katharina Distler. 27. April 2015 Codes und Codegitter Katharina Distler 7. April 015 Inhaltsverzeichnis 1 Codes 4 Codegitter 14 Einleitung Die folgende Seminararbeit behandelt das Konzept von Codes und Codegittern. Da sie bei der Informationsübertragung

Mehr

Mathematik II für Studierende der Informatik Kapitel. Kodierungstheorie

Mathematik II für Studierende der Informatik Kapitel. Kodierungstheorie Mathematik II für Studierende der Informatik Kapitel Kodierungstheorie Markus Junker Sommersemester 2011 (korrigierte Version vom Sommersemester 2012) Einführung, Beispiele, Definitionen Ausgangspunkt

Mehr

Grundlagen der Technischen Informatik. 2. Übung

Grundlagen der Technischen Informatik. 2. Übung Grundlagen der Technischen Informatik 2. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit Organisatorisches Übungsblätter zuhause vorbereiten! In der Übung an der Tafel vorrechnen! Bei

Mehr

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

Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai 2011 Rechnernetze Übung 5 Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai 2011 Ziel: Nachrichten fehlerfrei übertragen und ökonomisch (wenig Redundanz) übertragen Was ist der Hamming-Abstand?

Mehr

Zusammenfassung zu Codierungstheorie

Zusammenfassung zu Codierungstheorie Zusammenfassung zu Codierungstheorie Sara Adams 5. Juli 2005 Diese Zusammenfassung basiert auf der Vorlesung Codierungstheorie gehalten im Sommersemester 2005 von Prof. Dr. Hans-Dietrich Gronau an der

Mehr

Zusammenfassung zu Codierungstheorie

Zusammenfassung zu Codierungstheorie Zusammenfassung zu Codierungstheorie Proseminar Mathematische Modelle in den Naturwissenschaften WS 09/10 Thomas Holzer 0755600 Sandra Sampl 0755049 Kathrin Oberradter 0755123 1 Inhaltsverzeichnis 1. Einführung

Mehr

Codierung zur Fehlerkorrektur und Fehlererkennung

Codierung zur Fehlerkorrektur und Fehlererkennung Codierung zur Fehlerkorrektur und Fehlererkennung von Dr.-techn. Joachim Swoboda Mit 39 Bildern und 24 Tafeln R. OLDENBOURG VERLAG MÜNCHEN WIEN 1973 Inhalt Vorwort 9 1. Einführung 11 1.1 Redundante Codierung

Mehr

Grundlagen der Technischen Informatik. Codierung und Fehlerkorrektur. Kapitel 4.2

Grundlagen der Technischen Informatik. Codierung und Fehlerkorrektur. Kapitel 4.2 Codierung und Fehlerkorrektur Kapitel 4.2 Prof. Dr.-Ing. Jürgen Teich Lehrstuhl für Hardware-Software-Co-Design Technische Informatik - Meilensteine Informationstheorie Claude Elwood Shannon (geb. 1916)

Mehr

Thema: Hamming-Codes. Titelblatt anonymisiert

Thema: Hamming-Codes. Titelblatt anonymisiert Thema: Hamming-Codes Titelblatt anonymisiert Hamming-Codes.Einführung in die Kodierungstheorie... 3. Grundlegendes über Codewörter... 3. Matrizen... 4.3 Die maßgebliche Stelle... 5.Grundlegende Ideen...5

Mehr

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

1. Woche Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes 1 Woche Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes 1 Woche: Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes 5/ 44 Unser Modell Shannon

Mehr

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

Codierungsverfahren SS 2011. Reed-Solomon-Codes zur Mehrblock-Bündelfehler-Korrektur Reed-Solomon-Codes zur Mehrblock-Bündelfehler-Korrektur Wie die zyklischen BCH-Codes zur Mehrbitfehler-Korrektur eignen sich auch die sehr verwandten Reed-Solomon-Codes (= RS-Codes) zur Mehrbitfehler-Korrektur.

Mehr

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

Harm Pralle. Codierungstheorie WS 2005/06. Institut Computational Mathematics Technische Universität Braunschweig Harm Pralle Codierungstheorie WS 2005/06 Institut Computational Mathematics Technische Universität Braunschweig II Literatur: A. Beutelspacher und U. Rosenbaum. Projektive Geometrie. Vieweg, Wiesbaden

Mehr

Grundlagen Digitaler Systeme (GDS)

Grundlagen Digitaler Systeme (GDS) Grundlagen Digitaler Systeme (GDS) Prof. Dr. Sven-Hendrik Voß Sommersemester 2015 Technische Informatik (Bachelor), Semester 1 Termin 10, Donnerstag, 18.06.2015 Seite 2 Binär-Codes Grundlagen digitaler

Mehr

Das Kryptosystem von McEliece. auf der Basis von linearen Codes

Das Kryptosystem von McEliece. auf der Basis von linearen Codes Das Kryptosystem von McEliece auf der Basis von linearen Codes Anforderungen Public-Key Kryptosysteme E e (m) = c Verschlüsselung D d (c) = m Entschlüsselung mit Schl. effizient effizient 2/25 Anforderungen

Mehr

Informationstheorie und Codierung. Prof. Dr.-Ing. Lilia Lajmi l.lajmi@ostfalia.de

Informationstheorie und Codierung. Prof. Dr.-Ing. Lilia Lajmi l.lajmi@ostfalia.de Informationstheorie und Codierung Prof. Dr.-Ing. Lilia Lajmi l.lajmi@ostfalia.de Inhaltsverzeichnis 3. Kanalcodierung 3.1 Nachrichtentheorie für gestörte Kanäle 3.1.1 Transinformation 3.1.2 Kanalkapazität

Mehr

DIGITALTECHNIK 04 ZAHLEN CODES

DIGITALTECHNIK 04 ZAHLEN CODES Seite 1 von 22 DIGITALTECHNIK 04 ZAHLEN CODES Inhalt Seite 2 von 22 1 CODIERUNG... 3 1.1 NUMERISCHE CODES... 4 1.2 WORTCODES... 4 1.3 DER DUALCODE... 5 1.4 DER GRAY-CODE... 5 1.5 ZIFFERNCODES (BCD-CODES)...

Mehr

Codierungstheorie Rudolf Scharlau, SoSe 2006 9

Codierungstheorie Rudolf Scharlau, SoSe 2006 9 Codierungstheorie Rudolf Scharlau, SoSe 2006 9 2 Optimale Codes Optimalität bezieht sich auf eine gegebene Quelle, d.h. eine Wahrscheinlichkeitsverteilung auf den Symbolen s 1,..., s q des Quellalphabets

Mehr

Angewandte Informationstechnik

Angewandte Informationstechnik Angewandte Informationstechnik im Bachelorstudiengang Angewandte Medienwissenschaft (AMW) Fehlererkennung und -korrektur Dr.-Ing. Alexander Ihlow Fakultät für Elektrotechnik und Informationstechnik FG

Mehr

Einführung in die Codierungstheorie. Rudolf Schürer

Einführung in die Codierungstheorie. Rudolf Schürer Einführung in die Codierungstheorie Rudolf Schürer 8. Februar 2008 Vorwort Dieses Skript entstand im Zuge der gleichnamigen Vorlesung, die ich im Wintersemester 2007/08 am Fachbereich Mathematik der Universität

Mehr

FEHLERKORRIGIERENDE CODES

FEHLERKORRIGIERENDE CODES FEHLERKORRIGIERENDE CODES Inhalt der Vorlesung Jürgen Koslowski @ Institut für Theoretische Informatik Technische Universität Braunschweig Juli 2009 INHALTSVERZEICHNIS -1 Inhaltsverzeichnis 0 Einführung

Mehr

Empfänger. Sender. Fehlererkennung und ggf. Fehlerkorrektur durch redundante Informationen. Längssicherung durch Paritätsbildung (Blockweise)

Empfänger. Sender. Fehlererkennung und ggf. Fehlerkorrektur durch redundante Informationen. Längssicherung durch Paritätsbildung (Blockweise) Datensicherung Bei der digitalen Signalübertragung kann es durch verschiedene Einflüsse, wie induktive und kapazitive Einkopplung oder wechselnde Potentialdifferenzen zwischen Sender und Empfänger zu einer

Mehr

Lineare Codes. 17.1 Linearcodes

Lineare Codes. 17.1 Linearcodes Teil IV Codes 17 Lineare Codes Lineare Codes werden in Kommunikationssystemen zur sicheren Übertragung von Nachrichten eingesetzt, etwa in der Telekommunikation und bei der Speicherung von Daten auf Compact

Mehr

Formelsammlung. Wahrscheinlichkeit und Information

Formelsammlung. Wahrscheinlichkeit und Information Formelsammlung Wahrscheinlichkeit und Information Ein Ereignis x trete mit der Wahrscheinlichkeit p(x) auf, dann ist das Auftreten dieses Ereignisses verbunden mit der Information I( x): mit log 2 (z)

Mehr

9 Codes. Hochschule für Angewandte Wissenschaften Hamburg FACHBEREICH ELEKTROTECHNIK UND INFORMATIK DIGITALTECHNIK 9-1

9 Codes. Hochschule für Angewandte Wissenschaften Hamburg FACHBEREICH ELEKTROTECHNIK UND INFORMATIK DIGITALTECHNIK 9-1 9 Codes 9.1 Charakterisierung und Klassifizierung Definition: Das Ergebnis einer eindeutigen Zuordnung zweier Zeichen- bzw. Zahlenmengen wird Code genannt. Die Zuordnung erfolgt über eine arithmetische

Mehr

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

DIPLOMARBEIT. Titel der Diplomarbeit. Die Golay Codes. Verfasser. Daniel Eiwen. angestrebter akademischer Grad DIPLOMARBEIT Titel der Diplomarbeit Die Golay Codes Verfasser Daniel Eiwen angestrebter akademischer Grad Magister der Naturwissenschaften (Mag.rer.nat) Wien, im Mai 2008 Studienkennzahl lt. Studienblatt:

Mehr

Code-Arten und Code-Sicherung. Literatur: Blieberger et.al.: Informatik (Kap. 3 und 4), Springer-Verlag R.-H. Schulz: Codierungstheorie, Vieweg

Code-Arten und Code-Sicherung. Literatur: Blieberger et.al.: Informatik (Kap. 3 und 4), Springer-Verlag R.-H. Schulz: Codierungstheorie, Vieweg Codierungstheorie Code-Arten und Code-Sicherung Inhaltsübersicht und Literatur Informationstheorie Was ist eine Codierung? Arten von Codes Informationsgehalt und Entropie Shannon'sches Codierungstheorem

Mehr

Basis und Dimension. Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren.

Basis und Dimension. Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren. Basis und Dimension Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren. Definition. Sei V ein K-Vektorraum und (v i ) i I eine Familie von Vektoren

Mehr

9.2. DER SATZ ÜBER IMPLIZITE FUNKTIONEN 83

9.2. DER SATZ ÜBER IMPLIZITE FUNKTIONEN 83 9.. DER SATZ ÜBER IMPLIZITE FUNKTIONEN 83 Die Grundfrage bei der Anwendung des Satzes über implizite Funktionen betrifft immer die folgende Situation: Wir haben eine Funktion f : V W und eine Stelle x

Mehr

Absolute Stetigkeit von Maßen

Absolute Stetigkeit von Maßen Absolute Stetigkeit von Maßen Definition. Seien µ und ν Maße auf (X, Ω). Dann heißt ν absolut stetig bezüglich µ (kurz ν µ ), wenn für alle A Ω mit µ(a) = 0 auch gilt dass ν(a) = 0. Lemma. Sei ν ein endliches

Mehr

Codierungstheorie. Carsten Damm. Stand: 2. Juli 2010. Vorlesungsskript

Codierungstheorie. Carsten Damm. Stand: 2. Juli 2010. Vorlesungsskript Codierungstheorie Carsten Damm Stand: 2. Juli 2010 Vorlesungsskript Carsten Damm Institut für Informatik Georg-August-Universität Göttingen c Carsten Damm Vorwort Die Codierungstheorie untersucht Verfahren

Mehr

Codierung, Codes (variabler Länge)

Codierung, Codes (variabler Länge) Codierung, Codes (variabler Länge) A = {a, b, c,...} eine endliche Menge von Nachrichten (Quellalphabet) B = {0, 1} das Kanalalphabet Eine (binäre) Codierung ist eine injektive Abbildung Φ : A B +, falls

Mehr

GF(2 2 ) Beispiel eines Erweiterungskörpers (1)

GF(2 2 ) Beispiel eines Erweiterungskörpers (1) GF(2 2 ) Beispiel eines Erweiterungskörpers (1) Im Kapitel 2.1 wurde bereits gezeigt, dass die endliche Zahlenmenge {0, 1, 2, 3} q = 4 nicht die Eigenschaften eines Galoisfeldes GF(4) erfüllt. Vielmehr

Mehr

2: Zahlentheorie / Restklassen 2.1: Modulare Arithmetik

2: Zahlentheorie / Restklassen 2.1: Modulare Arithmetik Stefan Lucks Diskrete Strukturen (WS 2009/10) 57 2: Zahlentheorie / Restklassen 2.1: Modulare Arithmetik Uhr: Stunden mod 24, Minuten mod 60, Sekunden mod 60,... Rechnerarithmetik: mod 2 w, w {8, 16, 32,

Mehr

Seminararbeit für das SE Reine Mathematik- Graphentheorie

Seminararbeit für das SE Reine Mathematik- Graphentheorie Seminararbeit für das SE Reine Mathematik- Graphentheorie Der binäre Rang, der symplektische Graph, die Spektralzerlegung und rationale Funktionen Vortrag am 24.01.2012 Heike Farkas 0410052 Inhaltsverzeichnis

Mehr

Codes (1) Beispiele für die Bedeutung eines n-bit-wortes:

Codes (1) Beispiele für die Bedeutung eines n-bit-wortes: Codes () Beispiele für die Bedeutung eines n-bit-wortes: Befehl (instruction) Zahl (number) Zeichen (character) Bildelement (pixel) Vorlesung Rechnerarchitektur und Rechnertechnik SS 24 Codes (2) ASCII

Mehr

Information & Kommunikation - Zusammenfassung

Information & Kommunikation - Zusammenfassung Information & Kommunikation - Zusammenfassung Patrick Pletscher 29 September 2004 Grundlagen der Informationstheorie Entropie als Mass für Unsicherheit Definition der Entropie Die Entropie einer diskreten

Mehr

Codierungstheorie. Skript zur Vorlesung im WS 2005/06

Codierungstheorie. Skript zur Vorlesung im WS 2005/06 Codierungstheorie Skript zur Vorlesung im WS 2005/06 Prof. Peter Hauck Arbeitsbereich Diskrete Mathematik Wilhelm-Schickard-Institut Universität Tübingen L A TEX-Fassung von Daniel Raible 2 Inhaltsverzeichnis

Mehr

Vorlesung. Funktionen/Abbildungen 1

Vorlesung. Funktionen/Abbildungen 1 Vorlesung Funktionen/Abbildungen 1 1 Grundlagen Hinweis: In dieser Vorlesung werden Funktionen und Abbildungen synonym verwendet. In der Schule wird eine Funktion häufig als eindeutige Zuordnung definiert.

Mehr

Der Zwei-Quadrate-Satz von Fermat

Der Zwei-Quadrate-Satz von Fermat Der Zwei-Quadrate-Satz von Fermat Proseminar: Das BUCH der Beweise Fridtjof Schulte Steinberg Institut für Informatik Humboldt-Universität zu Berlin 29.November 2012 1 / 20 Allgemeines Pierre de Fermat

Mehr

klar. Um die zweite Bedingung zu zeigen, betrachte u i U i mit u i = 0. Das mittlere -Zeichen liefert s

klar. Um die zweite Bedingung zu zeigen, betrachte u i U i mit u i = 0. Das mittlere -Zeichen liefert s Nachtrag zur allgemeinen Vektorraum-Theorie. 1.5.15. Direkte Summen. Sei V ein Vektorraum, seien U 1,..., U t Unterräume, wir schreiben V = U 1 U 2 U t = t i=1 U i falls die folgenden beiden Bedingungen

Mehr

3 Codierung ... 3.3 Code-Sicherung. 3.3.1 Stellendistanz und Hamming-Distanz. 60 3 Codierung

3 Codierung ... 3.3 Code-Sicherung. 3.3.1 Stellendistanz und Hamming-Distanz. 60 3 Codierung 60 3 Codierung 3 Codierung... 3.3 Code-Sicherung Oft wählt man absichtlich eine redundante Codierung, so dass sich die Code-Wörter zweier Zeichen (Nutzwörter) durch möglichst viele binäre Stellen von allen

Mehr

3.3 Eigenwerte und Eigenräume, Diagonalisierung

3.3 Eigenwerte und Eigenräume, Diagonalisierung 3.3 Eigenwerte und Eigenräume, Diagonalisierung Definition und Lemma 3.3.1. Sei V ein K-Vektorraum, φ End K (V ), λ K. Wir defnieren den zu λ gehörigen Eigenraum von φ als Dies ist ein Unterraum von V.

Mehr

Codierung. Auszug aus dem Skript von Maciej Liśkiewicz und Henning Fernau

Codierung. Auszug aus dem Skript von Maciej Liśkiewicz und Henning Fernau Codierung Auszug aus dem Skript von Maciej Liśkiewicz und Henning Fernau Ein bisschen Informationstheorie Betrachten wir das folgende Problem: Wie lautet eine sinnvolle Definition für das quantitative

Mehr

Übungen zur Ingenieur-Mathematik III WS 2009/10 Blatt 10 21.12.2009

Übungen zur Ingenieur-Mathematik III WS 2009/10 Blatt 10 21.12.2009 Übungen zur Ingenieur-Mathematik III WS 2009/10 Blatt 10 21.12.2009 Aufgabe 35: Thema: Singulärwertzerlegung und assoziierte Unterräume Sei A eine m n Matrix mit Rang r und A = UDV T ihre Singulärwertzerlegung.

Mehr

Besser sehen, besser hören! Fehlerkorrigierende Codes

Besser sehen, besser hören! Fehlerkorrigierende Codes Besser sehen, besser hören! Fehlerkorrigierende Codes Ringvorlesung Technische Mathematik 20. Mai 2010 Hermann Kautschitsch Institut für Mathematik Universität Klagenfurt Vorwort Der stetig zunehmende

Mehr

Lineare Algebra - alles was man wissen muß

Lineare Algebra - alles was man wissen muß Statistik für Bioinformatiker SoSe 3 Rainer Spang Lineare Algebra - alles was man wissen muß Der Titel ist natürlich gelogen, aber was wir hier zusammengetragen haben ist zumindest ein Anfang. Weniger

Mehr

0 Im folgenden sei die Wortlänge gleich 8 (d. h.: es wird mit Bytes gearbeitet).

0 Im folgenden sei die Wortlänge gleich 8 (d. h.: es wird mit Bytes gearbeitet). Aufgabe 0 Im folgenden sei die Wortlänge gleich 8 (d. h.: es wird mit Bytes gearbeitet). 1. i) Wie ist die Darstellung von 50 im Zweier =Komplement? ii) Wie ist die Darstellung von 62 im Einer =Komplement?

Mehr

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5) Einführung 3 Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Univ.-Prof. Dr. Christoph Meinel Hasso-Plattner-Institut Universität Potsdam, Deutschland Hatten den Reduktionsbegriff

Mehr

Satz 25 A sei eine (n n)-matrix über K

Satz 25 A sei eine (n n)-matrix über K Satz 25 Satz 25 A sei eine (n n)-matrix über K Satz 25 A sei eine (n n)-matrix über K mit paarweise verschiedenen Eigenwerten λ 1,...,λ m. Satz 25 A sei eine (n n)-matrix über K mit paarweise verschiedenen

Mehr

Man unterscheidet zwei Gruppen von Codes: Blockcodes und Faltungscodes.

Man unterscheidet zwei Gruppen von Codes: Blockcodes und Faltungscodes. Versuch: Kanalcodierung. Theoretische Grundlagen Kanalcodierungstechniken werden zur Erkennung und Korrektur von Übertragungsfehlern in digitalen Systemen eingesetzt. Auf der Sendeseite wird zur Originalinformation

Mehr

Codierungstheorie und Kryptographie

Codierungstheorie und Kryptographie Codierungstheorie und Kryptographie Udo Hebisch SS 2015 Dieses Skript enthält nur den roten Faden der Vorlesung. Wesentliche Inhalte werden ausschließlich in der Vorlesung vermittelt. Daher ist dieses

Mehr

4 Greedy-Algorithmen (gierige Algorithmen)

4 Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen werden oft für die exakte oder approximative Lösung von Optimierungsproblemen verwendet. Typischerweise konstruiert ein Greedy-Algorithmus eine

Mehr

Beispiel 11.2. Wenn p ein Polynom vom Grad größer gleich 1 ist, ist q : C Ĉ definiert durch q (z) =

Beispiel 11.2. Wenn p ein Polynom vom Grad größer gleich 1 ist, ist q : C Ĉ definiert durch q (z) = Funktionentheorie, Woche Funktionen und Polstellen. Meromorphe Funktionen Definition.. Sei U C offen und sei f : U gilt, nennt man f meromorph auf U: Ĉ eine Funktion. Wenn folgendes. P := f hat keine Häufungspunkte;.

Mehr

x 2 2x + = 3 + Es gibt genau ein x R mit ax + b = 0, denn es gilt

x 2 2x + = 3 + Es gibt genau ein x R mit ax + b = 0, denn es gilt - 17 - Die Frage ist hier also: Für welche x R gilt x = x + 1? Das ist eine quadratische Gleichung für x. Es gilt x = x + 1 x x 3 = 0, und man kann quadratische Ergänzung machen:... ( ) ( ) x x + = 3 +

Mehr

Elemente der Analysis II

Elemente der Analysis II Elemente der Analysis II Kapitel 3: Lineare Abbildungen und Gleichungssysteme Informationen zur Vorlesung: http://www.mathematik.uni-trier.de/ wengenroth/ J. Wengenroth () 15. Mai 2009 1 / 35 3.1 Beispiel

Mehr

3. Zusammenhang. 22 Andreas Gathmann

3. Zusammenhang. 22 Andreas Gathmann 22 Andreas Gathmann 3. Zusammenhang Eine der anschaulichsten Eigenschaften eines topologischen Raumes ist wahrscheinlich, ob er zusammenhängend ist oder aus mehreren Teilen besteht. Wir wollen dieses Konzept

Mehr

Informationsdarstellung im Rechner

Informationsdarstellung im Rechner 1 Informationsdarstellung im Rechner Wintersemester 12/13 1 Informationsdarstellung 2 Was muss dargestellt werden? Zeichen (Buchstaben, Zahlen, Interpunktionszeichen, Steuerzeichen, grafische Symbole,

Mehr

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

Division Für diesen Abschnitt setzen wir voraus, dass der Koeffizientenring ein Körper ist. Betrachte das Schema Division Für diesen Abschnitt setzen wir voraus, dass der Koeffizientenring ein Körper ist. Betrachte das Schema 2x 4 + x 3 + x + 3 div x 2 + x 1 = 2x 2 x + 3 (2x 4 + 2x 3 2x 2 ) x 3 + 2x 2 + x + 3 ( x

Mehr

Vorlesung. Komplexe Zahlen

Vorlesung. Komplexe Zahlen Vorlesung Komplexe Zahlen Motivation Am Anfang der Entwicklung der komplexen Zahlen stand ein algebraisches Problem: die Bestimmung der Lösung der Gleichung x 2 + 1 = 0. 1 Mit der Lösung dieses Problems

Mehr

Projektive Moduln. Lemma/Definition 1.1. Folgende Aussagen für einen R-Modul P sind äquivalent: (i) P erfüllt folgende Liftungseigenschaft:

Projektive Moduln. Lemma/Definition 1.1. Folgende Aussagen für einen R-Modul P sind äquivalent: (i) P erfüllt folgende Liftungseigenschaft: Seminar Summen von Quadraten und K-Theorie Projektive Moduln Im Folgenden sei R ein assoziativer Ring mit Eins, nicht notwendigerweise kommutativ. R-Modul ist im Folgenden stets ein Rechts-R-Modul. Ein

Mehr

Codierungstheorie. Anton Betten Harald Fripertinger Adalbert Kerber Alfred Wassermann Karl-Heinz Zimmermann. Konstruktion und Anwendung linearer Codes

Codierungstheorie. Anton Betten Harald Fripertinger Adalbert Kerber Alfred Wassermann Karl-Heinz Zimmermann. Konstruktion und Anwendung linearer Codes Anton Betten Harald Fripertinger Adalbert Kerber Alfred Wassermann Karl-Heinz Zimmermann Codierungstheorie Konstruktion und Anwendung linearer Codes Springer-Verlag Berlin Heidelberg New York London Paris

Mehr

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens Mathematische Grundlagen der Kryptographie 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe Stefan Brandstädter Jennifer Karstens 18. Januar 2005 Inhaltsverzeichnis 1 Ganze Zahlen 1 1.1 Grundlagen............................

Mehr

Definition 27 Affiner Raum über Vektorraum V

Definition 27 Affiner Raum über Vektorraum V Definition 27 Affiner Raum über Vektorraum V Definition 27 Affiner Raum über Vektorraum V ist die Menge A = Definition 27 Affiner Raum über Vektorraum V ist die Menge A = mit einer Abbildung + : A V A,

Mehr

OPERATIONS-RESEARCH (OR)

OPERATIONS-RESEARCH (OR) OPERATIONS-RESEARCH (OR) Man versteht darunter die Anwendung mathematischer Methoden und Modelle zur Vorbereitung optimaler Entscheidungen bei einem Unternehmen. Andere deutsche und englische Bezeichnungen:

Mehr

Technische Informatik - Eine Einführung

Technische Informatik - Eine Einführung Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Ausgabe: 2005-02-21 Abgabe: 2005-02-21 Technische Informatik - Eine

Mehr

BITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen?

BITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen? BITte ein BIT Vom Bit zum Binärsystem A Bit Of Magic 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen? 3. Gegeben ist der Bitstrom: 10010110 Was repräsentiert

Mehr

Codierung. Codierung. EAN Europäische Artikelnummer Ziffern 1 und 2 codieren das Hersteller-Land. Ziffer 2 bis 12 codieren Händler und Ware

Codierung. Codierung. EAN Europäische Artikelnummer Ziffern 1 und 2 codieren das Hersteller-Land. Ziffer 2 bis 12 codieren Händler und Ware Codierung Codierung Haydn: Streichquartett op 54.3 aus Largo, Violine I 1 2 Ziffern 1 und 2 codieren das Hersteller-Land Ziffer 2 bis 12 codieren Händler und Ware Die letzte Ziffer ist eine Prüfziffer

Mehr

(2) (x 2 1 + x 2 2 + + x 2 n)(y 2 1 + y 2 2 + + y 2 n) = z 2 1 + z 2 2 + + z 2 n

(2) (x 2 1 + x 2 2 + + x 2 n)(y 2 1 + y 2 2 + + y 2 n) = z 2 1 + z 2 2 + + z 2 n Über die Komposition der quadratischen Formen von beliebig vielen Variablen 1. (Nachrichten von der k. Gesellschaft der Wissenschaften zu Göttingen, Mathematisch-physikalische Klasse, 1898, S. 309 316.)

Mehr

Endliche Körper und Codierung

Endliche Körper und Codierung Endliche Körper und Codierung Manfred Madritsch Institut für Mathematik A Technische Universität Graz Version: SS 2010 Achtung: Bitte Anregungen und Fehler per Email an die Adresse madritsch@tugraz.at

Mehr

34 5. FINANZMATHEMATIK

34 5. FINANZMATHEMATIK 34 5. FINANZMATHEMATIK 5. Finanzmathematik 5.1. Ein einführendes Beispiel Betrachten wir eine ganz einfache Situation. Wir haben einen Markt, wo es nur erlaubt ist, heute und in einem Monat zu handeln.

Mehr

CAS-Ansicht Computer Algebra System & Cas spezifische Befehle

CAS-Ansicht Computer Algebra System & Cas spezifische Befehle CAS-Ansicht Computer Algebra System & Cas spezifische Befehle GeoGebra Workshop Handout 10 1 1. Einführung in die GeoGebra CAS-Ansicht Die CAS-Ansicht ermöglicht die Verwendung eines CAS (Computer Algebra

Mehr

Aufgaben des MSG-Zirkels 10b Schuljahr 2007/2008

Aufgaben des MSG-Zirkels 10b Schuljahr 2007/2008 Aufgaben des MSG-Zirkels 10b Schuljahr 2007/2008 Alexander Bobenko und Ivan Izmestiev Technische Universität Berlin 1 Hausaufgaben vom 12.09.2007 Zahlentheorie 1 Aufgabe 1.1 Berechne die (quadratischen)

Mehr

Grundlagen der Informatik 1

Grundlagen der Informatik 1 Grundlagen der Informatik 1 Prof. Dr. J. Schmidt Fakultät für Informatik GDI1 WS 2013/14 Kodierung, Kompression, Verschlüsselung Kodierung Überblick Vorlesung Kapitel 1: Einführung in die Informatik Kapitel

Mehr

1. Grundlagen der Informatik Zahlensysteme und interne Informationsdarstellung

1. Grundlagen der Informatik Zahlensysteme und interne Informationsdarstellung 1. Grundlagen der Informatik Zahlensysteme und interne Informationsdarstellung Inhalt Grundlagen digitaler Systeme Boolesche Algebra / Aussagenlogik Organisation und Architektur von Rechnern Algorithmen,

Mehr

Die allerwichtigsten Raid Systeme

Die allerwichtigsten Raid Systeme Die allerwichtigsten Raid Systeme Michael Dienert 4. Mai 2009 Vorbemerkung Dieser Artikel gibt eine knappe Übersicht über die wichtigsten RAID Systeme. Inhaltsverzeichnis 1 Die Abkürzung RAID 2 1.1 Fehlerraten

Mehr

Advanced Encryption Standard. Copyright Stefan Dahler 20. Februar 2010 Version 2.0

Advanced Encryption Standard. Copyright Stefan Dahler 20. Februar 2010 Version 2.0 Advanced Encryption Standard Copyright Stefan Dahler 20. Februar 2010 Version 2.0 Vorwort Diese Präsentation erläutert den Algorithmus AES auf einfachste Art. Mit Hilfe des Wissenschaftlichen Rechners

Mehr

FH Darmstadt FB Informatik Klausurensammlung Rechnergrundlagen Prof. Komar

FH Darmstadt FB Informatik Klausurensammlung Rechnergrundlagen Prof. Komar Matr.Nr.: Name: Leistungsnachweis Rechnergrundlagen SS 2006 Skripte, Umdrucke, Kopien, handschriftliche Aufzeichnungen und Taschenrechner sind zugelassen. Die Lösungs-Ergebnisse sind ausschließlich auf

Mehr

Wie kann man beweisen, dass (H, ) eine Gruppe ist?

Wie kann man beweisen, dass (H, ) eine Gruppe ist? Wie kann man beweisen, dass (H, ) eine Gruppe ist? Wie kann man beweisen, dass (H, ) eine Gruppe ist? (zb wenn die Multiplikation mit Hilfe einer Tabelle gegeben ist) Wie kann man beweisen, dass (H, )

Mehr

1 Das Lemma von Burnside und seine Anwendungen

1 Das Lemma von Burnside und seine Anwendungen Das Lemma von Burnside und seine Anwendungen Mit dem Lemma von Burnside lassen sich Zählprobleme lösen, bei denen Symmetrien eine Rolle spielen. Betrachten wir als einführendes Beispiel die Anzahl der

Mehr

Präfixcodes und der Huffman Algorithmus

Präfixcodes und der Huffman Algorithmus Präfixcodes und der Huffmn Algorithmus Präfixcodes und Codebäume Im Folgenden werden wir Codes untersuchen, die in der Regel keine Blockcodes sind. In diesem Fll können Codewörter verschiedene Länge hben

Mehr

Austausch- bzw. Übergangsprozesse und Gleichgewichtsverteilungen

Austausch- bzw. Übergangsprozesse und Gleichgewichtsverteilungen Austausch- bzw. Übergangsrozesse und Gleichgewichtsverteilungen Wir betrachten ein System mit verschiedenen Zuständen, zwischen denen ein Austausch stattfinden kann. Etwa soziale Schichten in einer Gesellschaft:

Mehr

Kryptologie und Kodierungstheorie

Kryptologie und Kodierungstheorie Kryptologie und Kodierungstheorie Alexander May Horst Görtz Institut für IT-Sicherheit Ruhr-Universität Bochum Lehrerfortbildung 17.01.2012 Kryptologie Verschlüsselung, Substitution, Permutation 1 / 18

Mehr

15 Optimales Kodieren

15 Optimales Kodieren 15 Optimales Kodieren Es soll ein optimaler Kodierer C(T ) entworfen werden, welcher eine Information (z.b. Text T ) mit möglichst geringer Bitanzahl eindeutig überträgt. Die Anforderungen an den optimalen

Mehr

3.5 QR-Code, das gescheckte Quadrat

3.5 QR-Code, das gescheckte Quadrat 3.5. QR-CODE, DAS GESCHECKTE QUADRAT 21 Bei der EAN-Codierung aus Abb. 3.5 haben die Codewörter mindestens Hamming-Abstand 2. Konstruiert man einen Code mit Hamming-Abstand mindestens 3, so kann man bei

Mehr

RSA Verfahren. Kapitel 7 p. 103

RSA Verfahren. Kapitel 7 p. 103 RSA Verfahren RSA benannt nach den Erfindern Ron Rivest, Adi Shamir und Leonard Adleman war das erste Public-Key Verschlüsselungsverfahren. Sicherheit hängt eng mit der Schwierigkeit zusammen, große Zahlen

Mehr

JKU Young Scientists Matheseminar

JKU Young Scientists Matheseminar JKU Young Scientists Matheseminar Matheseminar WS 2013/14 Codierung und Information Das grundlegende Problem der Kommunikation besteht darin, an einer Stelle entweder genau oder angenähert eine Nachricht

Mehr

64-040 Modul IP7: Rechnerstrukturen

64-040 Modul IP7: Rechnerstrukturen 64-040 Modul IP7: 6. Codierung und Informationstheorie Norman Hendrich Universität Hamburg MIN Fakultät, Department Informatik Vogt-Kölln-Str. 30, D-22527 Hamburg hendrich@informatik.uni-hamburg.de WS

Mehr

17. Penalty- und Barriere-Methoden

17. Penalty- und Barriere-Methoden H.J. Oberle Optimierung SoSe 01 17. Penalty- und Barriere-Methoden Penalty- und Barriere Methoden gehören zu den ältesten Ansätzen zur Lösung allgemeiner restringierter Optimierungsaufgaben. Die grundlegende

Mehr

Kap. 2: Fail-Stop Unterschriften

Kap. 2: Fail-Stop Unterschriften Stefan Lucks 2: Fail-Stop Unterschriften 17 Digital Unterschreiben und Bezahlen Kap. 2: Fail-Stop Unterschriften Digitale Unterschriften (Synomym: Digitale Signaturen ): Fälschen mutmaßlich hart (RSA-Wurzeln,

Mehr

6 Symmetrische Matrizen und quadratische Formen

6 Symmetrische Matrizen und quadratische Formen Mathematik für Ingenieure II, SS 9 Freitag. $Id: quadrat.tex,v.5 9//5 ::59 hk Exp $ $Id: orthogonal.tex,v.4 9// ::54 hk Exp $ $Id: fourier.tex,v. 9// :: hk Exp $ Symmetrische Matrizen und quadratische

Mehr