# Code de Golay

En théorie des codes, un code de Golay est un code correcteur d'erreurs pouvant être binaire ou tertiaire, nommé en l'honneur de son inventeur, Marcel Golay. Il y a deux types de codes de Golay binaire. Le code binaire étendu de Golay encode 12 bits de données dans un mot de code de 24 bits de long de telle manière que n'importe quelle erreur sur trois bits puisse être corrigée et n'importe quelle erreur sur quatre bits puisse être détectée. L'autre, le code binaire parfait de Golay, a des mots de code de 23 bits de long et est obtenu à partir du code binaire prolongé de Golay en supprimant une position dans les coordonnées (réciproquement, le code binaire étendu de Golay est obtenu à partir du code binaire parfait de Golay en ajoutant un bit de parité).

## Code de Golay binaire

En termes mathématiques, le code binaire étendu de Golay se compose d'un sous-espace vectoriel à 12 dimensions W de l'espace V=F$_2$$^{24}$ des mots de 24 bits tels que deux éléments distincts de W diffèrent dans au moins huit coordonnées ou, d'une manière équivalente, telles que n'importe quel élément de W différent de zéro possède au moins huit coordonnées différentes de zéro.
* Les coordonnées des éléments non nuls de W sont appelés mots du code. Dans le code binaire étendu de Golay, tous les mots de code ont un poids de Hamming de 0, 8, 12, 16 ou 24.
* W est unique à réétiquetage près.
Le code binaire de Golay est 3-correcteur parfait. Autrement dit, les boules fermées de rayon 3 autour des mots du code forment une partition de l'espace vectoriel.

### Constructions

* Code lexicographique : Classer les vecteurs dans V par ordre lexicographique. En commençant par w$_1$ = 0, définir w$_2$, w$_3$, ..., w$_{12}$ par la règle que w$_n$ est le plus petit nombre entier qui diffère de toutes les combinaisons linéaires des éléments précédents dans au moins huit coordonnées. Alors W peut être défini comme l'ensemble généré par w$_1$, ..., w$_{12}$.
* Code de résidu quadratique : Considérer l'ensemble N des non-résidus quadratiques (mod 23). C'est un sous-ensemble de 11 éléments du groupe cyclique Z/23Z. Considérer les translations t+N de ce sous-ensemble. Augmenter chaque translation à un ensemble S$_t$ de 12 éléments en ajoutant un élément ∞. Étiqueter les éléments de la base de V par 0, 1, 2..., 22 ∞, W peut être défini l'ensemble généré par les mots S$_t$ ainsi que le mot se composant de tous les vecteurs de base. (Le code parfait est obtenu en omettant ∞.)
* Comme code cyclique : Le code parfait de G$_{23}$ peut être construit par l'intermédiaire de la factorisation de $x^{23}-1$ . C'est le code produit par $x^{11}+x^{10}+x^{6}+x^{5}+x^{4}+x^{2}+1/x^{23}-1$
* Le générateur "Miracle Octad Generator" de R. T. Curtis : Ceci emploie des cellules carrés 4×6 pour décrire les 759 mots de code qui ont un poids de Hamming de 8, ou des "octads," du code binaire étendu de Golay. Les mots de code restants sont obtenus par l'intermédiaire des différences symétriques des sous-ensembles des 24 cellules -- c.-à-d., par addition binaire. Pour des détails, voir la géométrie de la place 4×4.

## Code de Golay ternaire

Il y a deux codes correcteurs d'erreurs étroitement liés connus sous le nom de codes ternaires de Golay. Le code plus connu en tant que code ternaire de Golay est un code linéaire ternaire parfait (11, 6, 5) ; le code ternaire étendu de Golay est un code linéaire (12, 6, 6) obtenu en ajoutant un chiffre-clé de somme zéro au code (11, 6, 5).
L'énumérateur complet de poids du code ternaire étendu de Golay est
    $x^{12}+y^{12}+z^{12}+22(x^{6}y^{6}+y^{6}z^{6}+z^{6}x^{6})+220(x^{6}y^{3}z^{3}+y^{6}z^{3}x^{3}+z^{6}x^{3}y^{3})$.
Le code ternaire parfait de Golay peut être construit comme le code de résidu quadratique de longueur 11 sur le corps fini F$_3$.
Le groupe d'automorphisme du code ternaire étendu de Golay est 2.M$_{12}$, où M$_{12}$ est un groupe de Mathieu.
Considérer tous les mots de code du code étendu qui ont seulement six chiffres non nuls. Les ensembles de positions auxquelles ces chiffres non nuls se trouvent forment le système de Steiner S(5, 6, 12).