Préparation à l’agrégation
Classes de similitude de matrices
ENS Rennes - Année 2014–2015
Romain Basson
(e1, . . . , es)une base adaptée de AmàLet d1, . . . , dsla famille de scalaires correspondants (uniques
à des inversibles près). Si l’on se donne pour tout i∈[[1, s]] un antécédent fide diei, alors la famille
(fi)16i6sest libre et An=Af1⊕ · · · ⊕ Afs⊕ker f. Comme ker fest un sous-module de Anil est
libre et si l’on en choisit une base quelconque la réunion de (fi)16i6set de cette base constitue une
base B de An. La matrice de fdans les bases Bet (ei)16i6mest alors Dm,n(d1, . . . , ds), cette dernière
étant équivalente à M. En outre, si Dm,n(d1, . . . , ds)est équivalente à Dm,n(d0
1, . . . , d0
s0), alors ces
deux matrices définissent la même image dans Am, dont une base est donnée, relativement à la base
canonique (ei)de Am, par (diei)et (d0
iei)respectivement. Le théorème de la base adaptée assure alors
que s=s0et (di)=(d0
i), pour 16i6s.
QED
Remarque 1.7 L’unicité peut aussi être déduite du résultat suivant : si Mest une matrice de taille
m×néquivalente à Dm,n(d1, . . . , ds)pour une certaine famille (di)16i6sde scalaires non nuls tels que
d1|. . . |ds, alors pour tout entier kle produit d1. . . dkest le PGCD des mineurs d’ordre kde M, avec la
convention dk= 0 pour k > s. Cette formule fournit un moyen théorique d’obtention des dià partir de
M. Toutefois cela demande un nombre prohibitif d’opérations (songez que pour tout k6min(m, n),
il y a m
kn
kmineurs d’ordre kà calculer et qu’il reste ensuite leur PGCD à déterminer).
1.3 Algorithme pour le cas euclidien
Lorsque Aest un anneau euclidien "effectif", muni du stathme δ, l’obtention de la forme de Smith
d’une matrice est effective via l’algorithme qui suit.
Pour toute matrice non nulle M∈ Mm,n(A), on note δ(M)la valeur minimal de δsur les coefficients
non nuls de M. On appelle opération élémentaire sur une matrice l’une des opération suivante :
échange de ligne ou de colonne et ajout à une ligne (resp. une colonne) d’une combinaison linéaire
d’autres lignes (resp. colonnes). Chacune des ces opérations transforme une matrice en une matrice
équivalente (le vérifier !).
Algorithme : Si M= (Mi,j )est nul, c’est terminé.
Étape 1 : par opérations élémentaires on se ramène au cas où δ(M) = δ(m1,1).
Étape 2 : s’il existe sur la première ligne de Mun élément non multiple de m1,1, on peut le remplacer,
par opérations élémentaires, par le reste rde sa division par m1,1, lequel vérifie δ(r)< δ(m1,1) =
δ(M). On reproduit alors les étapes 1 à 2 et comme δ(M)ne peut décroître strictement indéfi-
niment (Nest bien fondé), en un nombre fini d’étapes tous les termes de la première ligne sont
multiples de m1,1. On applique le même procédé à la première colonne et on obtient une matrice
dont tous les termes de la première colonne et de la première ligne sont des multiples de m1,1.
Par opérations élémentaires, on obtient alors une matrice dont tous les coefficients mk,1et m1,k,
k6= 1 sont nuls.
Étape 3 : on a ainsi une matrice formée de deux blocs. Un bloc 1×1 (m1,1), vérifiant δ(m1,1) = δ(M)
et un bloc (m−1)×(n−1) N. Si l’un des coefficients de Nn’est pas multiple de m1,1, on additions
sa ligne à la première, puis, par opérations élémentaires on remplace l’élément en question (sur
la première ligne) par le reste rde sa division par m1,1, qui vérifie δ(r)< δ(m1,1)On reproduit
alors les étapes 1 à 3 et, δ(M)ne pouvant décroître strictement indéfiniment, en un nombre fini
d’étape tous les coefficients du bloc Nsont multiples de m1,1.
Étape 4 : on applique récursivement l’algorithme à N.
4