Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Gruppencode – Wikipedia
Gruppencode – Wikipedia
aus Wikipedia, der freien Enzyklopädie

In der Kodierungstheorie (Informatik) versteht man unter einem Gruppencode eine spezielle Codierung, die man zur Fehlererkennung und Fehlerkorrektur verwenden kann. Für die Codierung wird eine Gruppe (algebraische Struktur) verwendet.

Codierung

[Bearbeiten | Quelltext bearbeiten]

Ein Gruppencode ist ein Blockcode, das heißt alle Codewörter haben die gleiche Länge (Im weiteren bezeichnen wir die Länge der Codewörter mit n {\displaystyle n} {\displaystyle n}).

Zur Kodierung verwendet man als Alphabet eine beliebige abelsche Gruppe ( A , + ) {\displaystyle (A,{\mathord {+}})} {\displaystyle (A,{\mathord {+}})}, meist ( { 0 , 1 } , + ) {\displaystyle (\{0,1\},{\mathord {+}})} {\displaystyle (\{0,1\},{\mathord {+}})}, die zyklische Gruppe der Ordnung zwei, da man deren beiden Elemente mit den Bits 0 und 1 identifizieren kann.

Die quellkodierten Wörter sind die Elemente der Gruppe ( A , + ) k {\displaystyle (A,{\mathord {+}})^{k}} {\displaystyle (A,{\mathord {+}})^{k}}. (Alle Wörter mit Symbolen aus A {\displaystyle A} {\displaystyle A} der Länge k {\displaystyle k} {\displaystyle k})

Um die Gruppe ( A , + ) k {\displaystyle (A,{\mathord {+}})^{k}} {\displaystyle (A,{\mathord {+}})^{k}} zu Codieren wählt man einem injektiven Homomorphismus f : ( A , + ) k → ( A , + ) n {\displaystyle f\colon (A,{\mathord {+}})^{k}\to (A,{\mathord {+}})^{n}} {\displaystyle f\colon (A,{\mathord {+}})^{k}\to (A,{\mathord {+}})^{n}}. Das Bild von f {\displaystyle f} {\displaystyle f} ist eine Untergruppe ( C , + ) {\displaystyle (C,{\mathord {+}})} {\displaystyle (C,{\mathord {+}})} von ( A , + ) n {\displaystyle (A,{\mathord {+}})^{n}} {\displaystyle (A,{\mathord {+}})^{n}}.

C {\displaystyle C} {\displaystyle C} ist der Gruppencode. f {\displaystyle f} {\displaystyle f} die zugehörige Kodierungsfunktion.

Im Gegensatz zu „willkürlichen“ Codierungen muss f {\displaystyle f} {\displaystyle f} nicht für jedes Codewort extra angegeben (gespeichert) werden, sondern es reicht f {\displaystyle f} {\displaystyle f} für ein erzeugendes System der Gruppe ( A , + ) k {\displaystyle (A,{\mathord {+}})^{k}} {\displaystyle (A,{\mathord {+}})^{k}} zu definieren. Die Codierung der restlichen Elemente kann dann mittels deren Darstellung als Summe von erzeugenden Elementen berechnet werden.

Beispiele

[Bearbeiten | Quelltext bearbeiten]

Beispiel 1

[Bearbeiten | Quelltext bearbeiten]

Gruppe ( { 0 , 1 } , + ) {\displaystyle (\{0,1\},{\mathord {+}})} {\displaystyle (\{0,1\},{\mathord {+}})}

Quellcodierung: ( { 0 , 1 } , + ) 3 {\displaystyle (\{0,1\},{\mathord {+}})^{3}} {\displaystyle (\{0,1\},{\mathord {+}})^{3}}

erzeugendes System: e 1 = ( 1 , 0 , 0 ) {\displaystyle e_{1}=(1,0,0)} {\displaystyle e_{1}=(1,0,0)}, e 2 = ( 0 , 1 , 0 ) {\displaystyle e_{2}=(0,1,0)} {\displaystyle e_{2}=(0,1,0)}, e 3 = ( 0 , 0 , 1 ) {\displaystyle e_{3}=(0,0,1)} {\displaystyle e_{3}=(0,0,1)}

Codierung: f ( e 1 ) = ( 1 , 1 , 0 , 0 , 0 ) {\displaystyle f(e_{1})=(1,1,0,0,0)} {\displaystyle f(e_{1})=(1,1,0,0,0)}, f ( e 2 ) = ( 0 , 0 , 1 , 1 , 0 ) {\displaystyle f(e_{2})=(0,0,1,1,0)} {\displaystyle f(e_{2})=(0,0,1,1,0)}, f ( e 3 ) = ( 1 , 0 , 1 , 0 , 1 ) {\displaystyle f(e_{3})=(1,0,1,0,1)} {\displaystyle f(e_{3})=(1,0,1,0,1)}

Sei nun c = ( 1 , 0 , 1 ) {\displaystyle c=(1,0,1)} {\displaystyle c=(1,0,1)} ein Wort in Quellcodierung. Um die Codierung f ( c ) {\displaystyle f(c)} {\displaystyle f(c)} zu berechnen, geht man wie folgt vor:

Man stellt c {\displaystyle c} {\displaystyle c} als Summe von erzeugenden Elementen dar: c = ( 1 , 0 , 1 ) = e 1 + e 3 {\displaystyle c=(1,0,1)=e_{1}+e_{3}} {\displaystyle c=(1,0,1)=e_{1}+e_{3}}

und berechnet dann die Summe der Codierungen der selbigen f ( c ) = f ( e 1 ) + f ( e 3 ) = ( 1 , 1 , 0 , 0 , 0 ) + ( 1 , 0 , 1 , 0 , 1 ) = ( 0 , 1 , 1 , 0 , 1 ) {\displaystyle f(c)=f(e_{1})+f(e_{3})=(1,1,0,0,0)+(1,0,1,0,1)=(0,1,1,0,1)} {\displaystyle f(c)=f(e_{1})+f(e_{3})=(1,1,0,0,0)+(1,0,1,0,1)=(0,1,1,0,1)}

Beispiel 2

[Bearbeiten | Quelltext bearbeiten]

Gruppe ( { 0 , 1 , x , x + 1 } , + ) {\displaystyle (\{0,1,x,x+1\},{\mathord {+}})} {\displaystyle (\{0,1,x,x+1\},{\mathord {+}})}, die Kleinsche Vierergruppe

+ 0 1 x x+1
0 0 1 x x+1
1 1 0 x+1 x
x x x+1 0 1
x+1 x+1 x 1 0

Quellcodierung: ( { 0 , 1 , x , x + 1 } , + ) 2 {\displaystyle (\{0,1,x,x+1\},{\mathord {+}})^{2}} {\displaystyle (\{0,1,x,x+1\},{\mathord {+}})^{2}}

erzeugendes System: e 1 = ( 1 , 0 ) {\displaystyle e_{1}=(1,0)} {\displaystyle e_{1}=(1,0)}, e 2 = ( x , 0 ) {\displaystyle e_{2}=(x,0)} {\displaystyle e_{2}=(x,0)}, e 3 = ( 0 , 1 ) {\displaystyle e_{3}=(0,1)} {\displaystyle e_{3}=(0,1)}, e 4 = ( 0 , x ) {\displaystyle e_{4}=(0,x)} {\displaystyle e_{4}=(0,x)}

Codierung: f ( e 1 ) = ( 1 , 0 , 0 ) {\displaystyle f(e_{1})=(1,0,0)} {\displaystyle f(e_{1})=(1,0,0)}, f ( e 2 ) = ( 1 , 1 , 0 ) {\displaystyle f(e_{2})=(1,1,0)} {\displaystyle f(e_{2})=(1,1,0)}, f ( e 3 ) = ( x , 1 , 1 ) {\displaystyle f(e_{3})=(x,1,1)} {\displaystyle f(e_{3})=(x,1,1)}, f ( e 4 ) = ( 0 , 0 , x ) {\displaystyle f(e_{4})=(0,0,x)} {\displaystyle f(e_{4})=(0,0,x)}

Sei nun c = ( 1 , x + 1 ) {\displaystyle c=(1,x+1)} {\displaystyle c=(1,x+1)} ein Wort in Quellcodierung. c = e 1 + e 3 + e 4 {\displaystyle c=e_{1}+e_{3}+e_{4}} {\displaystyle c=e_{1}+e_{3}+e_{4}}, f ( c ) = f ( e 1 ) + f ( e 3 ) + f ( e 4 ) = ( 1 , 0 , 0 ) + ( x , 1 , 1 ) + ( 0 , 0 , x ) = ( x + 1 , 1 , x + 1 ) {\displaystyle f(c)=f(e_{1})+f(e_{3})+f(e_{4})=(1,0,0)+(x,1,1)+(0,0,x)=(x+1,1,x+1)} {\displaystyle f(c)=f(e_{1})+f(e_{3})+f(e_{4})=(1,0,0)+(x,1,1)+(0,0,x)=(x+1,1,x+1)},

Eigenschaften

[Bearbeiten | Quelltext bearbeiten]

Gruppencodes erfüllen folgende Eigenschaften:

  • Die Codewörter bilden eine Gruppe
  • Bei einem binären Gruppencode ist die Distanzverteilung jeweils gleich für alle Codewörter und auch gleich der Gewichtsverteilung.
  • Jeder Gruppencode enthält den „Nullvektor“ als gültiges Codewort.
  • Das Gewicht eines Gruppencodes ist definiert als das kleinste Codewortgewicht (Hamming-Gewicht) außer dem des Nullvektors.
  • Bei binären Gruppencodes gilt, dass der Hamming-Abstand dem Gewicht des Codes entspricht.

Siehe auch

[Bearbeiten | Quelltext bearbeiten]
  • Ein linearer Code ist eine Codierung, bei der statt einer Gruppe ein endlicher Körper verwendet wird.
Abgerufen von „https://de.teknopedia.teknokrat.ac.id/w/index.php?title=Gruppencode&oldid=251272477“
Kategorie:
  • Kodierungstheorie

  • indonesia
  • Polski
  • العربية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصرى
  • Nederlands
  • 日本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українська
  • Tiếng Việt
  • Winaray
  • 中文
  • Русский
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id