WikiDer > Reed-Müller Code

Reed-Muller-code

EIN Reed-Müller-Code ist ein linear Fehlerkorrektur Code, das in der drahtlosen Kommunikation, insbesondere in der Weltraumkommunikation, verwendet wird.[1] Außerdem unterstützt 5G auf dem eng verwandten Polarcodes.[2]

Reed-Müller-Codes sind eine Verallgemeinerung von Reed-Solomon-Codes und Walsh-Hadamard-Codes. Traditionell mit Reed-Muller-Codes als Binärcodes verwendet, d Saiten sein. Die Codes sind nach David E. Muller benannt, einem amerikanischen Mathematiker und Informatiker, der die Codes 1954 entdeckte[3] und an Irving S. Reed, einen amerikanischen Mathematiker, der den ersten effizienten Decodieralgorithmus für die Codes vorschlug.[4]

Konstruktion

Es gibt mehrere gleichwertige Möglichkeiten, Reed-Muller-Codes zu beschreiben. Hier wird das Generator-Matrix-Verfahren verwendet. Ein anderer Weg ist durch Polynome. Die Generatormatrix eines Reed-Muller-Codes mit Länge ist wie folgt aufgebaut. Betrachten Sie zuerst die Vektorraum mit Abmessungend über die endlicher Körper. Dieser Vektorraum enthält Elemente.

Wir definieren nun im n-dimensionalen Raum über die 'Indikatorvektoren':

auf Teilmengen durch:

und wir definieren in die folgende binäre Operation 'Punktprodukt':


ist ein -dimensionaler Vektorraum über , und kann daher geschrieben werden als



Wir definieren nun die folgenden Vektoren der Länge und

bei welchem Hyperebenen in sein (von der Dimension) ):

Das Reed-Müller RM(d,r)-Code der Ordnung und Länge ist der linearer Code die erzeugt wird von und die Punktprodukte bis der Vektoren .

Beispiel 1

Sie . Dann also und

,

und

Der RM(3,1)-Code wird von der Menge erzeugt

oder, genauer gesagt, durch die Zeilen der Matrix:

Die Dimension des Codes ist 4, der Code besteht also aus 16 Codewörtern.

Beispiel 2

Der RM(3,2)-Code wird von der Menge erzeugt

entweder durch die folgende Matrix:

Eigenschaften

Die folgenden Eigenschaften gelten für Reed-Müller-Codes:

  1. Die Menge aller möglichen Punktprodukte bis der Vektoren bildet eine Grundlage für .
  2. Der RM(d,r)-Code hat Abmessungen.
  3. RM(d,r) = RM(d-1,r) | RM(d-1,r-1) wobei '|' für zwei lineare Codes ist definiert als .
  4. RM(d,r) hat ein Minimum Hamming-Abstand.