Chapitre II Chapitre II : Corps commutatifs Introduction Dans le premier chapitre nous avons commencé à étudier la structure vectorielle de Kn avec K = R ou K = C. Mais pouvons-nous remplacer les ensembles R et C par d’autres ensembles de nombres ? Ou bien les notions introduites au premier chapitre sont-elles spécifiques à R et à C ? Introduction On remarque que si, au lieu de considérer Rn ou Cn comme on l’a fait au chapitre I, on considère plutôt Qn (avec Q l’ensemble des nombres rationnels), alors l’ensemble des concepts et résultats du chapitre restent vrais. En particulier, les propriétés (P1 ) - (P7 ) sont toujours valable. Bien sûr, les scalaires sont cette fois choisi dans Q. Corps commutatifs En fait, on peut remplacer Q, R, et C par un autre ensemble de nombre K, et considérer des vecteurs de Kn (et donc des scalaires dans K). Mais il y a certaines conditions sur K pour que les propriétés (P1 ) - (P7 ) restent valables. Quelles sont ces conditions ? Corps commutatifs Premièrement : on doit pouvoir additionner et multiplier entre eux les éléments de K et obtenir ainsi un autre élément de K. On résume ceci en disant que l’addition et la multiplication doivent être internes sur K. Cette condition est clairement nécessaire : sinon, comment ferait-on pour additionner des éléments de Kn ou pour multiplier un élément de Kn par un élément de K ? Corps commutatifs Exemple 1 L’addition et la multiplication sont internes sur les ensembles habituels de nombres N, Z, Q, R, C. Mais pas sur l’ensemble {1, 2, 3, 4}, vu que, par exemple, 1 + 4 = 5 ∈ / {1, 2, 3, 4}. Corps commutatifs Deuxièmement : l’ensemble K doit contenir un élément 0 (neutre pour l’addition) et 1 (neutre pour la multiplication). Si 0 ∈ / K, alors (0, 0, . . . , 0) ∈ / Kn et la propriété (P3 ) ne serait pas satisfaite. De même, si 1 ∈ / K alors la propriété (P5 ) ne serait pas satisfaite. Corps commutatifs Troisièmement : chaque élément z ∈ K doit admettre un inverse additif −z dans K. Cet élément est tel que z + (−z) = 0 = (−z) + z. Sinon, on ne pourrait pas définir l’inverse −u d’un vecteur de Kn . Corps commutatifs Exemple 2 Les ensembles de nombre Z, Q, R, C satisfont bien ces trois propriétés. Mais pas N, vu que les éléments non nuls n’ont pas d’inverse. Corps commutatifs Quatrièmement : on aimerait que chaque élément non nul z ∈ K admette un inverse multiplicatif z1 . Cette propriété n’est pas nécessaire pour satisfaire les propriétés (P1 ) - (P7 ). Néanmoins, on préfère l’imposer pour pouvoir calculer plus aisément (notamment dans les résolutions de systèmes d’équations, où il est souvent nécessaire de faire des divisions pour isoler des variables). Corps commutatifs Cinquièmement : l’addition et la multiplication doivent être commutatives et associatives sur K, et on doit avoir une propriété de distributivité de l’addition sur la multiplication, c’est-à-dire : pour tous a, b, c ∈ K a + b = b + a, a.c = c.a, a + (b + c) = (a + b) + c, a.(b.c) = (a.b).c, a.(b + c) = (a.b) + (a.c) Corps commutatifs La cinquième propriété est forcément satisfaite si K ⊆ C. Mais il se fait que pour certains ensembles, il est possible de définir des lois internes telles que l’associativité et/ou la commutativité et/ou la distributivité ne sont pas de mise. On préfère donc énoncer une condition qui les impose explicitement. Corps commutatifs Les ensembles K munis de deux lois internes + et . telles que les cinq conditions ci-dessus sont satisfaites sont appelés corps commutatifs en mathématiques. La lettre K est la première lettre de "Körper" en allemand. En anglais, les corps commutatifs sont appelés "Fields". On rencontre donc parfois la lettre F (plutôt que K). Corps commutatifs Exemple 3 Les ensembles Q, R et C forment des corps avec l’addition et la multiplication usuelle. En revanche, l’ensemble Z ne forme pas un corps car il ne satisfait pas la quatrième condition. En effet, 2 ∈ Z est entier mais 1/2 ∈ / Z. Exemple 4 On peut vérifier que l’ensemble Q[i] = {a + bi | a, b ∈ Q} des nombres complexes dont les parties réelles et imaginaires sont rationnelles forme un corps (avec l’addition et la multiplication usuelle sur les complexes). Corps commutatifs Nous avons donné quelques exemples de corps. On peut montrer qu’il en existe beaucoup d’autres (en fait, une infinité !). Nous donnerons bientôt des exemples de corps finis (n’ayant qu’un nombre fini d’éléments). En tout cas : Théorème 5 L’ensemble des propriétés (P1 ) - (P7 ), des notions et des résultats introduits au Chapitre I sont toujours valables dans Kn avec K un corps commutatif quelconque. Ce résultat est évident vu qu’on a défini la notion de corps expressément pour cela. Corps commutatifs Nous dirons alors que Kn forme un espace vectoriel sur le corps K. On précise "sur le corps K" simplement pour bien mettre en évidence que les scalaires sont pris dans l’ensemble K. Corps commutatifs Pour certaines applications en informatique, il est parfois nécessaire de travailler dans les espaces Kn avec K des corps particuliers n’ayant qu’un nombre fini d’éléments. Ces corps sont connus sous le nom de corps finis. Nous donnerons de tels exemples d’application après avoir introduit les corps finis. Corps finis Exemple 6 (Le corps à deux éléments) Considérons l’ensemble {0, 1} muni de l’addition +2 et de la multiplication .2 modulo 2, c’est-à-dire : +2 0 1 0 0 1 1 1 0 .2 0 1 0 0 0 1 0 1 et On vérifie aisément que ces deux opérations internes érigent {0, 1} en corps commutatif. On note ce corps Z2 (ou parfois F2 ). Corps finis Remarque : comment avons-nous fait pour avoir une addition +2 qui soit interne sur Z2 ? On a simplement additionner au sens habituel, et puis on a pris le reste de la division par 2 ! On a fait de même pour la multiplication .2 . Ceci explique par exemple qu’on ait 1 +2 1 = 0. Corps finis Autre remarque : comme 0 est l’élément neutre de Z2 , l’égalité 1 +2 1 = 0 montre que l’élément 1 admet un inverse pour l’addition +2 sur Z2 , à savoir 1 lui même ! En d’autre termes, −1 = 1 dans le corps Z2 . Ceci peut sembler étrange, mais est en fait simplement une conséquence de la façon dont on a défini +2 . Corps finis Il est maintenant évident qu’on peut aussi définir une addition +m et une multiplication .m avec m un nombre entier au moins égale à 2 : on additionne et on multiplie au sens habituel et puis on réduit modulo m. Corps finis Exemple 7 Par définition de +10 on a donc : 3 +10 4 = 7 8 +10 3 = 1 8.10 3 = 4 8.10 8 = 4 Corps finis Exemple 8 (Le corps à trois éléments) Considérons l’ensemble {0, 1, 2} muni de l’addition +3 et de la multiplication .3 modulo 3, c’est-à-dire : +3 0 1 2 0 0 1 2 1 1 2 0 2 2 0 1 .3 0 1 2 0 0 0 0 1 0 1 2 2 0 2 1 On obtient un corps à 3 éléments, qu’on note Z3 (ou parfois F3 ). Corps finis Remarque : dans Z3 on a par exemple que −2 = 1 vu que 2 +3 1 = 0. On a aussi 1 2 = 2 vu que 2.3 2 = 1 Ceci n’a rien de surprenant, mais résulte de la façon dont on a défini +3 et .3 sur Z3 . Corps finis On serait alors tenté de croire que l’ensemble Zm = {0, 1, 2, . . . , m − 1} est un corps pour tout m > 1 lorsqu’on le muni de l’addition modulo m et de la multiplication modulo m. Ce n’est malheureusement pas le cas. Par exemple, dans Z4 , on a 2.4 2 = 0, donc l’élément 2 ne pourrait admettre d’inverse dans Z4 car alors en mutlipliant l’égalité ci-dessus par 21 on en déduirait que 2 = 0! Corps finis Rappel : le nombre entier m > 1 est premier quand il admet deux uniques diviseurs : 1 et lui même. Par exemple, 2 et 3 sont premiers, mais pas 4. Théorème 9 L’ensemble Zm = {0, 1, . . . , m − 1} muni de l’addition +m et de la multiplication .m modulo m forme un corps uniquement lorsque m est un nombre premier. Si m = p.q n’est pas premier, alors p.m q = 0 dans Zm ce qui implique que p1 et q1 n’existent pas dans Zm . On ne donnera pas ici la démonstration du fait que Zm est bien un corps lorsque m est premier. Corps finis En dehors des corps Zp (avec p premier), on peut montrer qu’il existe beaucoup d’autres corps finis. Mais ceci est assez difficile, et ne sera pas fait dans ce cours. Corps finis On dispose donc des espace vectoriels Znp sur le corps Zp . En particulier, on peut donc parler de système linéaire à coefficients dans Zp , de sous-espace vectoriel de Znp , etc. Tout cela se manipule exactement comme dans Kn avec K = R ou K = C, sauf que cette fois on fait les calculs modulo p. Corps finis Exemple 10 Considérons le cas p = 5 et n = 3 ainsi que (1, 2, 3) ∈ Z35 . Quels sont les éléments de la droite vectorielle <(1, 2, 3)> ? Il s’agit de l’ensemble des multiples de (1, 2, 3), donc : <(1, 2, 3)> = {(0, 0, 0), (1, 2, 3), (2, 4, 1), (3, 1, 4), (4, 3, 2)}. On a (2, 4, 1) = 2(1, 2, 3), (3, 1, 4) = 3(1, 2, 3), etc. La multiplication se fait modulo 5, et composante par composante (comme expliqué au Chapitre I). Corps finis Donnons à présent quelques applications des espaces vectoriels Znp à l’informatique. On rencontre notamment les espaces Zn2 dans l’étude des réseaux. Graphes Les réseaux sont modélisés au moyen de la notion de graphe. Un graphe est un ensemble de sommets reliés par des arêtes. Voici un exemple de graphe à 5 sommets et 5 arêtes. Graphes Pour encoder un graphe donné dans la mémoire d’un ordinateur, il existe plusieurs méthodes. Une façon de faire est d’utiliser la matrice d’incidence du graphe. Matrices Rappelons (voir cours du premier quadrimestre) qu’une matrice m × n est un tableau à m lignes et n colonnes contenant des nombres. Au premier quadrimestre, on a travaillé avec des matrices à coefficients dans R. Mais on peut considérer plus généralement des matrices à coefficients dans un corps donné K. On note l’ensemble de ces matrices Mat(n × m, K). Matrices Remarque : Mat(n × m, K) est le même espace que Kn×m , sauf qu’on dispose les éléments de K dans un tableau et pas en ligne. Exemple : 1 −3 0 2 est une matrice de Mat(2 × 2, R) qu’on peut aussi voir comme l’élément (1, −3, 0, 2) de R4 . Matrice d’incidence Pour un graphe donné ayant n sommets et m arêtes, sa matrice d’incidence M est une matrice n × m défine par : Mij = 1 si l’arête j contient le sommet i et Mij = 0 si l’arête j ne contient pas le sommet i . Matrice d’incidence Exemple 11 Voici un graphe ainsi que sa matrice d’incidence. 2 a b 1 4 d a 1 1 2 1 3 0 4 0 3 c b 0 1 1 0 c 1 0 1 0 d 0 0 1 1 Matrice d’incidence Ainsi, la matrice d’incidence d’un graphe donné est une matrice à coefficients dans le corps fini Z2 . On peut montrer que l’étude des propriétés des lignes de cette matrice (qui sont donc des vecteurs de Zm 2 ) fournit des informations sur le graphe en question. Codes correcteurs d’erreurs Une autre application utile des espaces vectoriels Znp est la conception de codes correcteurs d’erreurs. On code en effet souvent les mots d’un message à transmettre au moyen de vecteurs de Znp . On parle par exemple de code binaire lorsque p = 2 et de code ternaire lorsque p = 3. Codes correcteurs d’erreurs On peut par exemple prendre comme mots du code l’ensemble des vecteurs d’un sous-espace vectoriel de Znp . Pour rappel (voir Chapitre I), le sous-ensemble V ⊆ Znp forme un sous-espace vectoriel lorsque : 1 0 ∈ V, 2 u + v ∈ V dès que u, v ∈ V , 3 λu ∈ V dès que u ∈ V et λ ∈ Zp , Codes correcteurs d’erreurs L’étude des propriétés des sous-espaces de Kn (et donc en particulier de Znp ), qui se fait en algèbre linéaire, permet de déterminer des propriétés des codes associés. La suite du cours est en partie consacrée à l’étude de ces sous-espaces. Résumé des points importants du chapitre 1 La notion de corps, qui constitue une généralisation des ensembles de nombres habituels Q, R et C, 2 Si K est un corps, alors toutes les notions du chapitre I sont aussi vraies dans Kn . On dit que Kn est un espace vectoriel sur K, 3 Les corps finis Zp (p premier) et les espaces vectoriels Znp , 4 L’ensemble Mat(n × m, K) des matrices à coefficients dans un corps K.