Théorème des facteurs invariants
Un article de Wikipédia, l'encyclopédie libre.
En mathématiques, le théorème des facteurs invariants porte sur les modules de type fini sur les anneaux principaux. Les facteurs invariants sont des obstructions à l'inversibilité des matrices qui n'apparaissent pas dans la théorie des espaces vectoriels. Leur calcul a de nombreuses applications : par exemple trouver la classe d'isomorphie d'un groupe abélien de type fini à partir d'une présentation de celui-ci. Dans un cadre précis, le théorème des facteurs invariants se particularise en théorèmes de réduction d'endomorphisme. Il permet alors notamment de calculer les invariants de similitude d'un endomorphisme sur un espace vectoriel. Le résultat du théorème des facteurs invariants est aussi connu sous le nom de forme normale de Smith.
L'approche présentée ici est effective dans le cadre d'un anneau euclidien. Le premier algorithme, dit d'échelonnement, est une généralisation du procédé d'élimination de Gauss-Jordan, de la décomposition LU : il permet de calculer des rangs et déterminants de matrices, et des noyaux et des images de morphismes de modules, ainsi que de résoudre des systèmes linéaires dans ce cadre. Le second algorithme, qui permet d'obtenir les applications annoncées est essentiellement un algorithme d'échelonnement simultané en lignes et en colonnes.
Sommaire |
[modifier] Rappel sur la décomposition LU
Une matrice A étant donnée, on souhaite la transformer en matrice triangulaire supérieure par opérations élémentaires sur les lignes (c'est-à-dire multiplication à gauche par des matrices de transvection, et des matrices de permutation). Par exemple, pour la matrice :
on multiplie à gauche successivement par les matrices :
La première multiplication matricielle revient à remplacer la deuxième ligne de la matrice A par ; puis la seconde multiplication revient à remplacer la troisième ligne par . On obtient ainsi une égalité matricielle :
c'est-à-dire qu'on a annulé les coefficients sous-diagonaux de la première colonne de A, par multiplication par des matrices Ti de transvection, en se servant de la ligne L1 comme pivot. En itérant le procédé, on peut annuler tous les coefficients sous-diagonaux de A, sous réserve toutefois de ne jamais tomber sur un pivot nul.
[modifier] Échelonnement des matrices à coefficients dans un anneau euclidien
Quelle obstruction rencontre-t-on dans le cas d'une matrice à coefficients dans un anneau euclidien? La principale est que la non nullité d'un coefficient n'assure pas qu'on puisse s'en servir comme pivot pour des opérations de transvection : dans l'exemple précédent, on s'est servi de 2 comme pivot, et on a été amenés à faire des calculs avec son inverse ; ce faisant, on est sorti du cadre initial d'une matrice à coefficients entiers.
[modifier] Échelonnement des matrices lignes et colonnes
Il existe un palliatif. Regardons pour une matrice de taille à coefficients dans un anneau euclidien :
Dans le cas où a et b sont non nuls, soit p un plus grand diviseur commun de a et b. On considère alors la matrice :
avec la relation (voir identité de Bezout). Le fait de se placer dans un anneau principal assure l'existence des coefficients α et β, et le fait de se placer dans un anneau euclidien donne l'algorithme d'Euclide pour les calculer. On constate l'égalité :
on s'est ainsi ramené à une matrice colonne avec un coefficient nul, par une opération sur les lignes de la matrice A ; on peut voir cette opération comme une généralisation de la transvection. Remarquons que la matrice de transvection généralisée T est inversible puisque de déterminant (égal à 1) inversible dans l'anneau considéré. Dans la cas où b est nul, on prend T = Id, dans le cas où a est nul, on prend . On voit en particulier que les matrices de transvection généralisées qu'on considère ne comprennent pas les matrices de permutation qui apparaissaient dans la décomposition LU ; c'est dû au choix restrictif de se limiter à des matrices de déterminant 1 ; leur absence est toutefois facilement palliée, comme on l'a vu ci-dessus.
Pour traiter le cas d'une matrice colonne de taille quelconque, il suffit d'effectuer d'abord une opération entre la première et la deuxième ligne, pour annuler le deuxième coefficient, puis entre la première et la troisième pour annuler le troisième, etc. Ainsi, pour , il existe T produit de matrices de transvection généralisées telle que , où p est le pgcd des coefficients ai.
Le cas d'une matrice ligne s'en déduit par transposition.
[modifier] Matrices de transvection généralisées, et opérations élémentaires
On s'intéresse maintenant à des matrices de taille , éventuellement rectangulaires, toujours à coefficients dans un anneau euclidien. Les matrices de transvection généralisées codant les opérations sur les lignes seront donc des matrices carrées de taille n, et celles codant les opérations sur les colonnes des matrices carrées de taille m. Pour faire une opération entre les rangées i et j, il faut donc considérer les matrices :
avec αδ − βγ = 1, où les coefficients α,β apparaissent sur la ligne i, et γ,δ sur la ligne j. On remarque la relation suivante : .
Multiplier une matrice A, dont les lignes sont Li, à gauche par une telle matrice, c'est remplacer la ième ligne Li de A par αLi + βLj, et la ième ligne par γLi + δLj. Pour obtenir une opération sur les colonnes, il faut effectuer une multiplication à droite par une matrice de transvection généralisée.
Dans le cas où α = δ = 1, et où un des deux coefficients β ou γ est nul, on retrouve une matrice de transvection proprement dite ; dans le cas où α = δ = 0, et β = − γ = + − 1, on trouve une matrice qui va jouer le rôle de matrice de transposition ; convenons d'appeler anti-transposition l'opération correspondante.
[modifier] Algorithme d'échelonnement pour les matrices de taille quelconque
Commençons à décrire l'algorithme. Pour une matrice :
on commence par multiplier à gauche par des matrices de type T1,j, pour j allant de 2 à n ; on effectue ces opérations en considérant seulement leur effet sur le premier vecteur colonne de la matrice A. D'après ce qu'on a vu pour les opérations sur les lignes d'un vecteur colonne, on parvient ainsi à annuler tous les coefficients sous-diagonaux de la première colonne de A, et le premier coefficient de la nouvelle matrice est précisément un pgcd des coefficients de la première colonne de A :
On veut ensuite multiplier par des matrices de type T2,j, pour j > 2, pour annuler tous les coefficients sous-diagonaux de la deuxième colonne ; de telles opérations ne font pas intervenir la première ligne ; tous les coefficients de la première colonne, autre que celui en position (1,1), qui seront ainsi obtenus seront donc combinaison linéaire des coefficients nuls de la première colonne : ils seront nuls. Il faut ensuite multiplier par des matrices de type T3,j, pour annuler les coefficients sous-diagonaux de la troisième colonne, etc.
On obtient en définitive une égalité avec une matrice de la forme : où les coefficients pi sont non nuls. La matrice obtenue est dite sous forme échelonnée en lignes, voir matrice échelonnée.
L'échelonnement en colonnes s'en déduit par transposition.
[modifier] Théorème d'échelonnement
Soit un anneau principal, et A une matrice de . Alors, il existe une matrice (c'est-à-dire inversible et de déterminant 1), produit de matrices de transvection généralisées, telle que la matrice soit sous forme échelonnée en lignes. Si, de plus, l'anneau est euclidien, on dispose d'un algorithme pour calculer la matrice T, dont la complexité est polynômiale en la taille de la matrice A et la taille de ses coefficients.
[modifier] Conséquences
L'algorithme d'échelonnement est suffisant pour bon nombre de calculs : le rang de la matrice A est égal au nombre de lignes non nulles de sa forme échelonnée ; le déterminant, dans le cas d'une matrice carrée de rang maximal, sera le produit des coefficients pi de la matrice échelonnée.
On peut aussi en déduire des équations et paramétrisations des noyaux et images des matrices, vues comme applications linéaires ; par exemple, pour , vue comme application linéaire de dans , et telle que AT soit échelonnée en colonnes, les éléments du noyau de AT sont de la forme , où les r premières lignes sont nulles, pour r le rang de A, et donc le nombre de colonnes non nulles de AT ; et donc les éléments du noyau de A sont engendrés par les m − r derniers vecteurs colonnes de T − 1.
[modifier] Théorème des facteurs invariants
Pour obtenir les conséquences théoriques annoncées,il faut aller plus loin ; on veut essentiellement obtenir une matrice qui soit à la fois échelonnée en lignes et en colonnes. Le théorème s'énonce ainsi :
[modifier] Théorème
Soit un anneau euclidien, et . Alors, il existe des matrices et , produits de matrices de transvection généralisées, telles que TAU soit échelonnée en lignes et en colonnes ; c'est-à-dire de la forme :
avec de plus la relation de divisibilité Les coefficients pi forment un système de facteurs invariants pour la matrice A. Les facteurs invariants sont définis de façon unique, à multiplication par inversibles près. La suite des facteurs invariants caractérise les matrices à équivalence près.
[modifier] Corollaire et remarque
Notons le résultat suivant, corollaire de l'existence d'une mise sous forme diagonale :
Les matrices de peuvent s'écrire comme produit d'un nombre fini de matrices de transvection généralisées.
En effet, pour , il existe d'après le théorème U1 et U2 produit de matrices de transvection généralisées telles que :
Le déterminant de TAU est 1, et donc le produit des εi. On multiplie chaque membre à gauche par le produit de matrices de transvection généralisées et on obtient la matrice identité au membre de droite. C'est-à-dire , ce qui est bien une écriture de A comme produit de matrices de transvection généralisées.
L'algorithme concerne donc les classes d'équivalence pour la relation si et seulement s'il existe telles que A = TBU. Les facteurs invariants, définis à inversibles de près, caractérisent en fait les classes pour la relation d'équivalence moins précise si et seulement s'il existe telles que A = TBU. Pour trouver les invariants pour la relation , il ne faut plus s'autoriser toutes les multiplications des facteurs invariants par des inversibles.
On rappelle que dans le cas d'un espace vectoriel, les classes d'équivalence de matrice étaient caractérisées par le rang. La situation est ici plus compliquée. Le rang apparaît notamment (comme le nombre de facteurs invariants), mais il ne suffit pas pour classifier ; en particulier, une matrice carrée de rang maximal peut ne pas être inversible : il suffit qu'un de ses facteurs invariants ne soit pas inversible.
[modifier] Algorithme
Il ne suffit pas d'effectuer d'abord un échelonnement en lignes puis un échelonnement en colonnes. On peut procéder comme suit ; on va utiliser le stathme sur l'anneau :
- On se ramène d'abord (si c'est possible! c'est-à-dire si A est non nulle) au cas où le coefficient en position (1,1) est non nul, et ce par permutations sur les lignes et les colonnes.
- On multiplie à gauche par des matrices de transvection (non généralisées), de façon à remplacer chaque coefficient a1,j, par son reste par la division euclidienne par a1,1.
- On multiplie à droite par des matrices de transvection (non généralisées), de façon à remplacer chaque coefficient ai,1 par son reste par la division euclidienne par a1,1.
- Si jamais il y a un (et s'il y en a plusieurs, il est bon de choisir celui de stathme minimal, pour améliorer la vitesse de l'algorithme) coefficient non nul sur la première ligne ou la première colonne ailleurs qu'en position (1,1), il est de stathme inférieur à celui du coefficient en position (1,1), d'après les deux étapes précédentes. On effectue une (anti)-transposition sur les lignes ou sur les colonnes suivant le cas pour le mettre en position (1,1).
On itère ces trois dernières étapes. A chaque passage, le stathme du coefficient a1,1 diminue ; et le seul cas de stagnation est celui où tous les restes obtenus sont nuls : c'est-à-dire qu'on obtient une matrice dont la première ligne et la première colonne sont nulles, excepté le coefficient (1,1). Puisque notre stathme est à valeurs dans les entiers naturels, on finit par tomber sur ce cas.
On a donc écrit ; par récurrence sur les dimensions des matrices considérées, on obtient l'écriture souhaitée. Il reste à voir qu'on peut avoir la relation de divisibilité annoncée. Il suffit pour cela de faire la constatation suivante. A partir de la matrice , on fait les opérations :
- Muliplier à droite par la matrice de transvection on obtient
- Multiplier à gauche par la matrice de transvection généralisée , où p1α + p2β = p = pgcd(p1,p2) pour obtenir :.
- Multiplier à droite par la matrice de transvection car ), et on obtient :
, et .
Ainsi, par multiplication à droite et à gauche par des transvections généralisées, on peut remplacer une matrice diagonale par une matrice diagonale avec relations de divisibilité. Dans le cas général de notre matrice doublement échelonnée, on se ramène successivement à , puis , en conservant la relation précédente, jusqu'à avoir pour tout i ; puis on s'occupe de p2, etc.
[modifier] -modules de type fini
Soit un anneau euclidien, et M un -module de type fini ; alors, il existe un unique ensemble tel que soit le rang de la partie libre du module M, t soit le cardinal d'un système minimal de générateurs de la partie de torsion, et soient des éléments de définis à inversibles près, et tel que :
Pour déduire ce théorème des facteurs invariants sur les modules de celui sur les matrices, choisissons un système générateur fini du module M à n éléments ; il existe alors une surjection de dans M ; le noyau N de cette surjection est un sous--module de tel que ; la noethérianité de l'anneau assure que ce noyau est à nouveau de type fini. Il admet un système de m générateurs ; et le module se surjecte donc dessus. On obtient ainsi par composition un morphisme entre et . Soit A la matrice de ce morphisme, dans la base canonique ; on trouve donc . Il suffit alors d'écrire A = TEU pour des matrices T,U inversibles, et une matrice E doublement échelonnée ; on obtient et donc , pour avec inversibles.
Ce théorème s'applique en particulier aux -modules de type fini, c'est-à-dire aux groupes abéliens de type fini. On dispose d'une part d'un théorème de classification, et d'autre part d'un algorithme pour calculer la classe d'un groupe dont on connaît un système de générateurs ainsi qu'une famille de relations entre ces générateurs, qui engendre l'ensemble des relations.
[modifier] Application aux invariants de similitude
Soit un corps commutatif, E, un -espace vectoriel de dimension finie, et un endomorphisme de E.
Cette donnée de u est en fait équivalente à la donnée d'une structure de -module sur E : si P est un polynôme de , et x un élément de E, alors P agit sur x par :
- P.x = P(u)(x)
L'anneau étant euclidien, le théorème des facteurs invariants assure l'existence d'un isomorphisme de -modules :
avec . On remarque qu'il ne peut y avoir de partie -libre, puisque l'espace E est de -dimension finie. Notons pour chaque i : di = deg(Pi). Soit la -base de E déduite par l'isomorphisme précédent de la -base canonique du module de droite : xi correspond à , où le coefficient 1 apparaît sur la ième composante. Alors, la famille :
constitue une -base de E. La matrice de l'endomorphisme u dans cette base est :
où chaque est la matrice compagnon du polynôme Pi. La particularisation du théorème des facteurs invariants dans ce cadre est parfois appelé théorème de Frobenius.
Cette décomposition permet de trouver des polynômes annulateurs de l'endomorphisme u ; en effet, pour tout i, Pi(u)(xi) = 0 ; et donc, par la relation de divisibilité : Pt(u) = 0. Par ailleurs, la famille étant -libre, aucun polynôme de degré inférieur à dt ne peut annuler u. Ainsi, le polynôme Pt est le polynôme minimal de u ; et le polynôme est son polynôme caractéristique.
[modifier] Théorème
La suite (avec relations de divisibilité, polynômes choisis unitaires) caractérise la classe de similitude d'un endomorphisme (ou d'une matrice). On l'appelle suite des invariants de similitude de l'endomorphisme (ou d'une matrice).
[modifier] Calcul des invariants de similitude
En pratique, la suite des invariants de similitude d'une matrice se calcule en remarquant qu'elle se déduit de la suite des facteurs invariants de la matrice , en enlevant de celle-ci les facteurs invariants inversibles (c'est-à-dire les polynômes constants).
En effet, la matrice A étant semblable,dans , à la matrice , où les sont les invariants de similitude de A, les matrices A − X.Id et C − X.Id sont a fortiori semblables dans , et a fortiori équivalentes dans cet espace. Par opérations élémentaires, on vérifie que chaque bloc diagonal de C − X.Id est équivalent dans à la matrice diagonale ; ainsi C − X.Id et donc A − X.Id ont pour facteurs invariants non inversibles dans .
[modifier] Réduction de Jordan
[modifier] Références
- Rémi Goblot, Algèbre linéaire [détail des éditions]
- Patrice Naudin, Claude Quitté Algorithmique algébrique [détail des éditions]
- Page personnelle de Grégory Vial