Previous Up Next

6.32.18  Construction d’un corps de Galois : GF

GF a comme arguments un nombre premier p et un entier n>1.
GF crée un corps de Galois de caractéristique p et ayant pn éléments.
Les éléments de ce corps et le corps lui-même sont représentés par GF(...)... est une séquence composée de :

Habituellement on donne un nom au corps crée (par exemple G:=GF(p,n)), afin de construire un élément particulier du groupe à partir d’un polynôme de ℤ/pℤ[X], on écrira par exemple G(x^3+x). Notez que G(x) est un générateur du groupe multiplicatif G*.
On tape :

G:=GF(2,8)

On obtient :

GF(2,x^8-x^6-x^4-x^3-x^2-x-1,x,undef)

Le corps G a 28=256 éléments et x engendre le groupe multiplicatif de ce corps ({ 1,x,x2,...x254 }).
On tape :

G(x^9)

On obtient :

GF(2,x^8-x^6-x^4-x^3-x^2-x-1,x,x^7+x^5+x^4+x^3+x^2+x)

en effet x8=x6+x4+x3+x2+x+1 donc x9=x7+x5+x4+x3+x2+x.
On tape :

G(x)^255

On obtient l’unité :

GF(2,x^8-x^6-x^4-x^3-x^2-x-1,x,1)

Comme vous pouvez le constater sur les exemples précédents, lorsque l’on travaille avec le même corps, les réponses contiennent des informations redondantes. C’est pourquoi la définition d’un corps peut avoir un troisième argument : une liste contenant deux noms de variable formelle, (le nom de l’indéterminée du polynôme irréductible et le nom du corps de Galois que l’on doit mettre entre quote pour que ces variables ne soient pas évaluées). Cela permet d’obtenir un affichage plus compact des éléments du corps.
On tape :

G:=GF(2,2,[’w’,’G’]):; G(w^2)

On obtient :

Done, G(w+1)

On tape :

G(w^3)

On obtient :

G(1)

Les éléments de GF(2,2) sont donc : 0,1,w,w^2=w+1.

On peut enfin indiquer quel polynôme irréductible primitif on souhaite utiliser, en l’indiquant en 2-ième paramètre (au lieu de n), par exemple :

G:=GF(2,w^8+w^6+w^3+w^2+1,['w','G'])

Si on donne un polynôme non primitif, Xcas le remplace par un polynôme primitif, par exemple :

G:=GF(2,w^8+w^7+w^5+w+1,['w','G'])

On obtient :

G:=GF(2,w^8-w^6-w^3-w^2-1,['w','G'],undef)

Previous Up Next