www.wikidata.de-de.nina.az
Ein perfekter Code oder auch dicht gepackter Code bezeichnet in der Codierungstheorie einen Blockcode C S n displaystyle mathcal C subset Sigma n in dem jedes Wort w S n displaystyle w in Sigma n nur zu genau einem Codewort c C displaystyle c in mathcal C und nicht zu mehreren einen geringsten Hamming Abstand d w displaystyle d w hat wobei d w D C displaystyle d w leq Delta mathcal C ist Bei der meist verwendeten Maximum Likelihood Decodierung bedeutet dies dass jedes empfangene Wort w displaystyle w genau ein Codewort c displaystyle c hat zu dem es den geringsten Hamming Abstand hat und zu dem es eindeutig zugeordnet werden kann Daraus leitet sich die Bezeichnung perfekt ab denn es gibt keine mehrdeutigen Decodiermoglichkeiten Inhaltsverzeichnis 1 Mathematische Beschreibung 2 Alternative Interpretation 3 Bekannte Perfekte Codes 4 EinzelnachweiseMathematische Beschreibung BearbeitenSei C S n displaystyle mathcal C subset Sigma n nbsp ein Blockcode mit S q displaystyle Sigma q nbsp wobei S displaystyle Sigma nbsp das verwendete Alphabet darstellt Alle Codeworte C displaystyle mathcal C nbsp haben untereinander einen Mindest Hamming Abstand von d displaystyle d nbsp Er kann damit t d 1 2 displaystyle t left lfloor frac d 1 2 right rfloor nbsp Fehler korrigieren Um perfekt zu sein muss der minimale Hamming Abstand zwischen zwei Codeworten eines Codes ungerade sein da sonst fur c 1 c 2 C D c 1 c 2 d displaystyle c 1 c 2 in mathcal C Delta c 1 c 2 d nbsp mindestens ein Wort w displaystyle w nbsp mit D c 1 w d 2 D w c 2 displaystyle Delta c 1 w tfrac d 2 Delta w c 2 nbsp existiert was im Widerspruch zur Definition perfekter Codes steht Da der Code t displaystyle t nbsp fehlerkorrigierend ist kann ein Wort w S n displaystyle w in Sigma n nbsp einem Codewort c C displaystyle c in C nbsp eindeutig zugeordnet werden wenn der Hamming Abstand d D c w t displaystyle d Delta c w leq t nbsp ist Umgekehrt bedeutet dies fur ein bestimmtes Codewort c displaystyle c nbsp dass alle Worter w displaystyle w nbsp mit einem Hamming Abstand von maximal t displaystyle t nbsp nach c displaystyle c nbsp decodiert werden Als Menge wird dies so geschrieben B t c w S n D w c t displaystyle mathcal B t c w in Sigma n mid Delta w c leq t nbsp Diese Menge wird auch als Kugel manchmal auch Hyperwurfel mit Radius t displaystyle t nbsp um c displaystyle c nbsp bezeichnet Die Anzahl der Elemente von B t c displaystyle mathcal B t c nbsp lasst sich berechnen zu B t c i 0 t q 1 i n i displaystyle mathcal B t c sum i 0 t q 1 i binom n i nbsp Fur i displaystyle i nbsp Fehlerstellen gibt es i displaystyle i nbsp aus n displaystyle n nbsp mogliche Positionen fur die Fehler Dabei stehen pro Fehlerstelle q 1 displaystyle q 1 nbsp falsche Symbolwerte zur Verfugung Es gibt C displaystyle mathcal C nbsp Kugeln Diese sind disjunkte Teilmengen des S n displaystyle Sigma n nbsp Daraus ergibt sich die Ungleichung S n C i 0 t q 1 i n i displaystyle Sigma n geq mathcal C sum i 0 t q 1 i binom n i nbsp Aufgelost nach C displaystyle mathcal C nbsp und mit S n q n displaystyle Sigma n q n nbsp folgt C q n i 0 t q 1 i n i displaystyle mathcal C leq frac q n sum i 0 t q 1 i binom n i nbsp Diese Ungleichung fur die Anzahl der Codeworter wird Hamming Schranke oder auch Kugelpackungsschranke genannt Ein perfekter Code zeichnet sich dadurch aus dass alle Worter w S n displaystyle w in Sigma n nbsp in genau einer der Kugeln enthalten sind anders ausgedruckt Die Kugeln uberdecken den Raum Deshalb gilt fur die Hamming Schranke selbst die Gleichheit Alternative Interpretation BearbeitenMan kann sich diese Grenze auch wie folgt veranschaulichen der Einfachheit halber nur anhand binarer Codes erlautert d h fur q 2 displaystyle q 2 nbsp Fur einen t displaystyle t nbsp Fehler korrigierenden Code muss der Decoder genug Information erhalten um alle folgenden Falle unterscheiden zu konnen C 2 k displaystyle mathcal C 2 k nbsp verschiedene Informationsworter und jeweils alle moglichen Muster von 0 t displaystyle 0 ldots t nbsp Bitfehlern der n displaystyle n nbsp Bits eines CodewortesDa es n i displaystyle binom n i nbsp Moglichkeiten gibt i displaystyle i nbsp Bitfehler auf n displaystyle n nbsp Bits zu verteilen ergeben sich insgesamt 2 k i 0 t n i displaystyle 2 k cdot sum i 0 t binom n i nbsp Falle die mit den zur Verfugung stehenden n displaystyle n nbsp Bits unterschieden werden mussen also 2 n 2 k i 0 t n i displaystyle 2 n geq 2 k cdot sum i 0 t binom n i nbsp Bei einem perfekten Code gilt Gleichheit das heisst die n displaystyle n nbsp Bits tragen exakt die minimal benotigte Information Diese Un Gleichung entspricht der obigen allgemeinen Definition fur den Fall q 2 displaystyle q 2 nbsp und C 2 k displaystyle mathcal C 2 k nbsp Man ist zwar eigentlich nur an der Korrektur der k displaystyle k nbsp Informationsbits interessiert wofur entsprechend weniger Zusatzinformation genugen wurde diese n k displaystyle n k nbsp Bits Zusatzinformation mussten dann aber fehlerfrei sein was naturlich in der Regel nicht gewahrleistet ist Daher ist eine Korrektur aller n displaystyle n nbsp Bits erforderlich Bekannte Perfekte Codes BearbeitenFalls die Alphabetgrosse q displaystyle q nbsp eine Primzahlpotenz ist so gilt Ist C displaystyle mathcal C nbsp ein perfekter Code mit Parametern n k d q displaystyle n k d q nbsp mit k l o g q C displaystyle k mathrm log q mathcal C nbsp so gibt es einen Code D displaystyle mathcal D nbsp mit denselben Parametern so dass D displaystyle mathcal D nbsp einer der folgenden Codes ist 1 2 Ein trivialer Code Ein Code heisst hier trivial falls er entweder nur q 0 1 displaystyle q 0 1 nbsp d h ein einziges Codewort enthalt m 0 2 m 1 q displaystyle m 0 2m 1 q nbsp oder falls er alle q m displaystyle q m nbsp moglichen Codeworter der gegebenen Blocklange enthalt m m 1 q displaystyle m m 1 q nbsp Ein binarer Wiederholungs Code mit ungerader Codewortlange Die Parameter lauten 2 m 1 1 2 m 1 2 displaystyle 2m 1 1 2m 1 2 nbsp Ein Hamming Code uber dem endlichen Korper F q displaystyle mathbb F q nbsp mit Parametern q m 1 q 1 q m 1 q 1 m 3 q displaystyle left frac q m 1 q 1 frac q m 1 q 1 m 3 q right nbsp Der binare Golay Code G 23 displaystyle mathcal G 23 nbsp mit Parametern 23 12 7 2 displaystyle 23 12 7 2 nbsp Der ternare Golay Code mit Parametern G 11 displaystyle mathcal G 11 nbsp mit 11 6 5 3 displaystyle 11 6 5 3 nbsp m displaystyle m nbsp steht hierbei jeweils fur eine positive naturliche Zahl m N displaystyle m in mathbb N nbsp Die Codes C displaystyle mathcal C nbsp und D displaystyle mathcal D nbsp haben die gleichen Parameter und konnen somit bei gleicher Blocklange n displaystyle n nbsp gleich viele Fehler korrigieren Die Umwandlung eines trivialen Codes in einen linearen Code mit denselben Parametern ist einfach Falls der Code ein einziges Codewort enthalt so kann stattdessen auch der Nullvektor c 0 0 0 displaystyle c 0 0 dots 0 nbsp als einziges Codewort dienen und der entstandene Code ist linear Der einzige verbleibende triviale Code ist derjenige der samtliche q n displaystyle q n nbsp moglichen Worter der gegebenen Blocklange enthalt Dieser ist aber bereits linear Bei den restlichen Codes aus der Liste handelt es sich bereits um lineare Codes Es gibt fur jeden perfekten Code der im Allgemeinen kein linearer Code ist einen linearen Code mit den gleichen Parametern sofern die Grosse des Alphabetes eine Primzahlpotenz ist Es ist offen ob und fur welche Parameter es nicht triviale perfekte Codes gibt falls die Alphabetgrosse keine Primzahlpotenz ist Fur praktische Zwecke sind die trivialen Codes uninteressant da entweder keine Information ubertragen werden kann oder keine Fehler erkannt oder korrigiert werden konnen Einzelnachweise Bearbeiten F J MacWilliams N J A Sloane The Theory of Error Correcting Codes Amsterdam North Holland 1977 Werner Lutkebohmert Codierungstheorie Braunschweig Wiesbaden Vieweg 2003 Abgerufen von https de wikipedia org w index php title Perfekter Code amp oldid 189531455