Matrice génératrice - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Introduction

Une matrice génératrice est un concept de théorie des codes utilisé dans le cas des codes linéaires.

Elle correspond à la matrice de l'application linéaire de E l'espace vectoriel des messages à communiquer dans F, l'espace vectoriel contenant les codes transmis.

La notion de matrice génératrice possède à la fois un intérêt théorique dans le cadre de l'étude des codes correcteurs, par exemple pour définir la notion de code systématique, et un intérêt pratique pour une implémentation efficace.

Contexte

Code correcteur

Un code correcteur possède pour objectif la détection ou la correction d'erreurs après la transmission d'un message. Cette correction est permise grâce à l'ajout d'informations redondantes. Le message est plongé dans un ensemble plus grand, la différence de taille contient la redondance, l'image du message par le plongement est transmis. En cas d'altération du message, la redondance est conçue pour détecter ou corriger les erreurs. Un exemple simple est celui du code de répétition, le message est, par exemple, envoyé trois fois, le décodage se fait par vote. Ici, l'ensemble plus grand est de dimension triple à celle du message initial.

Rappelons les éléments de base de la formalisation. Il existe un ensemble E constitué de suites à valeurs dans un alphabet et de longueur k, c’est-à-dire qu'à partir du rang k, toutes les valeurs de la suite sont nulles. Ces éléments sont l'espace des messages que l'on souhaite communiquer. Pour munir le message de la redondance souhaitée, il existe une application φ injective de E à valeurs dans F, l'espace des suites de longueur n à valeurs dans un alphabet . La fonction φ est appelée encodage, φ(E) aussi noté C est appelé le code, un élément de φ(E) mot du code, n la longueur du code et k la dimension du code. Ces notations sont utilisées dans tout l'article.

Code linéaire

Un code linéaire dispose d'une structure algébrique plus riche que celle du cadre général des codes correcteurs. Les alphabets A et A' sont identifiés et munis d'une structure de corps fini. Le cas le plus fréquent consiste à choisir le corps F2 ou l'une de ses extensions finies. Ce corps correspond à l'alphabet binaire dont les tables d'addition et de multiplication sont données ci-dessous:

 +   0   1 
 0   0  1
 1   1  0
 .   0   1 
 0   0  0
 1   0  1

Les ensembles E et F sont naturellement munis d'une structure d'espace vectoriel de dimension respectives k et n. Si Fd désigne le corps fini (cf l'article corps fini) de cardinal dd est une puissance d'un nombre premier p, alors l'espace vectoriel F est généralement identifié à Fdn.

F est muni d'une distance qui dérive du poids de Hamming. La distance entre deux points de F correspond au nombre de coordonnées non nulles de la différence entre les deux points, dans la base canonique. Un code se décrit par trois paramètres, noté [n, k, δ], n est la dimension du code, k la longueur du code et δ la distance minimale entre deux mots du code. Ces notations sont utilisées dans le reste de l'article.

Enfin, l'application d'encodage φ est choisie linéaire, le code est donc un sous-espace vectoriel.

Exemples

Code de répétition

Un code de répétition est un code qui à un message m de longueur k, associe le message m...m. Si son alphabet est choisi comme étant égal à un corps fini, alors le code est linéaire de matrice génératrice Gr égale à :

G_r=\begin{pmatrix} I_k \\ \vdots \\ I_k \end{pmatrix} \quad avec \quad I_k=\begin{pmatrix} 1 & 0 & \cdots & 0 \\ 0 & \ddots & \ddots & \vdots \\ \vdots & \ddots & \ddots & 0 \\ 0 & \cdots & 0 & 1 \end{pmatrix}

Somme de contrôle

La somme de contrôle correspond à un code de paramètre [k + 1, k, 2], à un message est associé le mot du code égal au message concaténé avec la somme (à valeur dans le corps fini) de toutes les lettres du message. Si le code est binaire, cela revient à associer un si la somme des lettres est impaire et zéro sinon. Dans le cas général, il a pour matrice génératrice Gs et, en utilisant les notations précédentes :

G_s={I_k \choose C}\quad avec \quad C = (-1, \cdots ,-1)

Code de Hamming (7,4)

Description du code de Hamming binaire de paramètre [7,4,3]

Le code de Hamming (7,4) est un code binaire de paramètre [7,4,3]. La figure de droite est une représentation graphique de ce code. Le message est le mot d1d2d3d4. Le mot du code est constitué des quatre lettres du mot du message, puis de trois sommes de contrôles p1p2p3. La valeur de pi est égal à zéro si la somme des trois lettres du message incluses dans son cercle sur la figure est paire et un sinon.

Il possède donc la matrice génératrice Gh suivante :

G_h=\begin{pmatrix}1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ 1 & 1 & 0 & 1 \\ 1 & 0 & 1 & 1 \\ 0 & 1 & 1 & 1 \end{pmatrix}
Page générée en 0.137 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales | Partenaire: HD-Numérique
Version anglaise | Version allemande | Version espagnole | Version portugaise