Cours Matrices
Cours Matrices
M2 FEADéP 2019–2020
2 Groupes linéaires 7
2.1 Généralités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 Générateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3 Interprétation géométrique des générateurs . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.4 Étude du groupe GL(E) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.5 Premiers résultats topologiques de connexité par arcs . . . . . . . . . . . . . . . . . . . . . 11
1
Ce qui est dans le programme (2020)
1.2(b) Applications multilinéaires. Déterminant d’un système de vecteurs, d’un endomorphisme. Groupe
spécial linéaire SL(E). Orientation d’un R-espace vectoriel.
1.2(c) Matrices à coefficients dans un anneau commutatif. Opérations élémentaires sur les lignes et les
colonnes, déterminant, inversibilité.
Matrices à coefficients dans un corps. Rang d’une matrice. Représentations matricielles d’une ap-
plication linéaire. Changement de base.
Méthode du pivot de Gauss. Notion de matrices échelonnées. Applications à la résolution de sys-
tèmes d’équations linéaires, au calcul de déterminants, à l’inversion des matrices carrées, à la déter-
mination du rang d’une matrice, à la détermination d’équations définissant un sous-espace vectoriel.
13.1 Notion de conditionnement. Théorème de Gershgorin-Hadamard. Pivot de Gauss, décompo-
sition LU. Méthodes itératives (par exemple méthode de Jacobi, méthode de Gauss-Seidel) ;
analyse de convergence : normes subordonnées, rayon spectral.
Décomposition en valeurs singulières.
Exemple de la matrice de discrétisation par différences finies du laplacien en dimension un.
Option B (a) Systèmes linéaires : mise en œuvre de méthodes directes (pivot de Gauss, LU, Cholesky), coût
de calcul de ces méthodes ;
Bibliographie
Pour le cours
• Ciarlet, Introduction à l’analyse numérique matricielle et à l’optimisation.
• Gourdon, Algèbre.
• Goblot, Algèbre linéaire.
• Paugam, Questions délicates en algèbre et géométrie.
• Perrin, Cours d’algèbre.
• Serre, Matrices.
• À suivre. . .
2
1 Méthodes de pivot
Pour la simplicité, vous pouvez penser que, partout A = K est un corps. Lorsque ce n’est pas le cas,
il y a de bonnes chances que A soit un anneau intègre et que vous puissiez voir A ⊂ K = Frac(A).
Motivations
Lorsqu’on est amené à étudier un problème en algèbre ou en analyse, il est souvent commode de se
ramener à un cas qu’on sait déjà traiter. L’algèbre linéaire est un ensemble d’outils efficaces pour résoudre
des problèmes (calculs de dimension, inversion de systèmes, invariants, etc. . .).
Ce chapitre met en avant les techniques de pivot qu’on est amené à rencontrer dans plusieurs situa-
tions :
— calcul efficace du déterminant (mise sous forme triangulaire) ;
— déterminer le rang d’une matrice (orbites : matrices Jr ) ;
— résoudre un système linéaire sur un corps (mise sous forme normale de Gauss-Jordan) ;
— résoudre un système d’équations linéaires diophantien (mise sous forme normale de Hermite) :
prendre A = Z ;
— déterminer la classe d’isomorphisme d’un groupe abélien (de type) fini (mise sous forme normale
de Smith) : prendre A = Z ;
— déterminer les invariants de similitude d’un endomorphisme (mise sous forme normale de Smith) :
prendre A = k[X].
Dans toute la suite, on se place dans le A-module libre de type fini Mm,n (A) des matrices rectangu-
laires, à m lignes et n colonnes, à coefficients dans A.
Le but est d’exhiber une traduction de l’action de certains éléments du groupe GLr (A) pour r ∈ {m, n}
sur l’espace Mm,n (A). On pourra donc chercher des invariants, calculer des orbites, etc. . .Typiquement,
l’algorithme du pivot de Gauss consiste à échelonner des matrices rectangulaires dans un anneau principal
(on pourra se limiter à A euclidien, voire A corps, pour l’agrégation).
Le principe du pivot de Gauss est de regarder simultanément l’action par multiplication à gauche de
GLm (K) sur Mm,n (K) et l’action par multiplication à droite de GLn (K) sur Mm,n (K), ce qui donne
une action du groupe GLm (K) × GLn (K) sur Mm,n (K) donnée par (P, Q) · M = P M Q−1 . On va voir
comment l’algorithme du pivot de Gauss permet d’exhiber des invariants totaux pour ces actions.
1.1 Déterminant
Avant toute chose, rappelons quelques résultats bien connus sur le déterminant d’une matrice.
Soit V un espace vectoriel, et r > 1.
Une forme r-linéaire f est dite alternée si pour (x1 , . . . , xr ) ∈ V r , on a
∃i 6= j, xi = xj ⇒ f (x1 , . . . , xn ) = 0.
Théorème 1.1. L’ensemble des formes r-linéaires alternées est un sous-espace vectoriel des formes r-
linéaires. Si r = dim(V ), alors il est de dimension 1.
Ceci permet de définir, à un scalaire près, le déterminant detB dans la base B comme l’unique forme
n-linéaire alternée qui vaut 1 en B et, a fortiori, le déterminant d’une matrice dans la base canonique, de
sorte que det(In ) = 1.
Théorème 1.2.
∀P, Q ∈ Mn (A), det(P Q) = det(P ) det(Q)
Ceci permet en particulier de montrer que l’ensemble des matrices M ∈ Mn (A) telles que det(M ) ∈
A× est un groupe, noté GLn (A). Le déterminant est un morphisme de groupes GLn (A) → A× . On a
également la formule :
Théorème 1.3.
t
Com(M )M = M t Com(M ) = det(M ) · In .
Ce qui montre que GLn (A) est aussi l’ensemble des matrices inversibles de l’algèbre Mn (A).
3
1.2 Matrices élémentaires
On désigne par Ei,j la matrice ayant des coefficients nuls partout sauf celui à la ligne i et à la colonne
1 si i = j
j qui vaut alors 1. On note δi,j = le symbole de Kronecker, de sorte que
0 sinon
Fait 1.4. La famille (Ei,j ) est une base du A-module libre Mm,n (A).
Définition 1.5. Pour n ∈ N, on définit dans Mn (A), la
— matrice de transvection d’indice (i, j) avec 1 ≤ i, j ≤ n et i 6= j et de rapport λ ∈ A la matrice
Ti,j (λ) = In + λEi,j ;
— matrice de dilatation d’indice i ∈ J1, nK et de rapport µ ∈ A× la matrice Di (µ) = In + (µ − 1)Ei,i ;
Pn
— matrice de permutation associée à σ ∈ Sn la matrice Pσ = (δi,σ(j) )16i,j6n = k=1 Eσ(k),k .
Ces définitions n’ont d’intérêt que pour λ ∈ A \ {0} et µ ∈ A× \ {1} ⊂ A \ {0, 1}. En particulier, le
cas A = F2 est à traiter séparément chaque fois qu’il est nécessaire de le considérer !
Fait 1.6. On a, pour tous i, j, λ, µ, σ :
1
— det Di (µ) = µ et donc Di (µ) ∈ GLn (A), de plus Di (µ)−1 = Di µ ;
— det Ti,j (λ) = 1 et donc Ti,j (λ) ∈ SLn (A), de plus Ti,j (λ)−1 = Ti,j (−λ) ;
— det Pσ = ε(σ) et donc Pσ ∈ GLn (A), de plus Pσ−1 = Pσ−1 .
On n’a jamais Di (µ) ∈ SLn (A) sauf si µ = 1 (attention à la caractéristique 2 où −1 = 1) ce qui n’est
pas un paramètre intéressant donc si on veut ne travailler qu’avec des matrices de SLn (A), il faut se
passer des matrices de dilatation. En revanche, même dans SLn (A) on peut travailler avec des matrices
de permutations « signées » en posant plutôt
n
X −1 si k = i
P^
(i,i+1) = Pσ Di (−1) = εk Eσ(k),k où εk = pour 16i<n
1 6 i
si k =
k=1
Quelques calculs : Soit M ∈ Mm,n (A) une matrice quelconque. Notons L1 , . . . , Lm ses lignes et
C1 , . . . , Cn ses colonnes. On a :
— Ti,j (λ)M est la matrice dont les lignes sont L1 , . . . , Li−1 , Li + λLj , Li+1 , . . . , Lm ,
opération associée : Li ← Li + λLj ;
— Di (µ)M est la matrice dont les lignes sont L1 , . . . , Li−1 , µLi , Li+1 , . . . , Lm ,
opération associée : Li ← µLi ;
— P(i j) M est la matrice dont les lignes sont L1 , . . . , Li−1 , Lj , Li+1 , . . . , Lj−1 , Li , Lj+1 , . . . , Lm ,
opération associée : Li ↔ Lj ;
— M Ti,j (λ) est la matrice dont les colonnes sont C1 , . . . , Cj−1 , Cj + λCi , Cj+1 , . . . Cn ,
opération associée : Cj ← Cj + λCi ;
— M Dj (µ) est la matrice dont les colonnes sont C1 , . . . , Cj−1 , µCj , Cj+1 , . . . , Cn ,
opération associée : Cj ← µCj ;
— M P(i j) est la matrice dont les colonnes sont C(i j)(1) , . . . , C(i j)(n) ,
opération associée : Cj ↔ Ci .
4
(2) agir à par multiplication à droite c’est modifier les colonnes, dans
les formules, c’est la colonne j qui est changée.
(3) Pour retrouver les formules, il suffit de faire le calcul avec une matrice
2 × 2 sur son brouillon.
Lemme 1.7. (1) Les opérations élémentaires par multiplication à gauche ne changent pas le noyau d’une
matrice.
(2) Les opérations élémentaires par multiplication à droite ne changent pas l’image d’une matrice.
(3) Les opérations élémentaires par multiplication à droite ou à gauche ne changent pas le rang d’une
matrice.
n
\
Démonstration. (1) Il suffit d’observer que ker A = ker Li = Vect(L∗1 , . . . , L∗n )> .
i=1
(2) Il suffit d’observer que im(A) = Vect(C1 , . . . , Cn ).
(3) C’est une conséquence du théorème du rang et des points (1) et (2).
5
qui coûte n! additions dont chaque terme coûte n multiplications, ou encore à l’autre formule :
M t Com M = (det M ) In
où le calcul de la comatrice coûte à lui seul n2 calculs de déterminants qui coûtent eux-mêmes (n − 1)!
si on n’utilise pas l’algorithme de Gauss. Ainsi, le pivot de Gauss est un moyen nettement plus efficace
d’inverse les matrices, de calculer les déterminants, etc. . .
Néanmoins cet algorithme est relativement long si l’on veut seulement calculer un déterminant ou
résoudre un système linéaire puisqu’on change à la fois le noyau et l’image de la matrice. On peut
améliorer légèrement les choses ainsi :
Définition 1.11. On considère une matrice M = (mi,j )16i6m ∈ Mm,n (A). Pour tout 1 6 i 6 m, on
16j6n
note
di (M ) = inf{j ∈ J1, nK, mi,j 6= 0} ∈ J1, nK ∪ {+∞}.
C’est le « premier indice » où se trouve un coefficient non nul à la ligne i. On dit que M est échelonnée
supérieurement si pour tout i ∈ J2, nK, on a di (M ) > di−1 (M ) ou di (M ) = +∞.
On dit qu’une matrice M échelonnée supérieurement est réduite si pour tout i ∈ J1, mK tel que
j = di (M ) < +∞, on a mi,j = 1, autrement dit, les premiers coefficients non nuls de chaque ligne sont
des 1.
Théorème 1.12 (Élimination de Gauss-Jordan). On suppose que A = K est un corps ! Soit M ∈
Mm,n (K) une matrice. Alors il existe des familles de matrices de transvection, permutation (resp. et
dilatation) (A1 , . . . , As ) telles que As · · · A1 M est échelonnée supérieurement (resp. réduite).
Idée de preuve. Dans l’algorithme de Gauss traité précédemment, il suffit de ne pas appliquer les consi-
dérations sur les colonnes.
La conséquence est qu’on peut facilement résoudre un système linéaire lorsqu’on dispose d’une ma-
trice échelonnée réduite, qu’on peut facilement calculer un déterminant lorsqu’on dispose d’une matrice
échelonnée.
6
2 Groupes linéaires
On se donne A un anneau commutatif (unitaire ∗ ) et E un A-module.
2.1 Généralités
Définition 2.1. On appelle groupe général linéaire sur E, noté GL(E), le groupe des automorphismes
de A-modules de E. C’est aussi le groupe des éléments inversibles de la A-algèbre EndA (E).
Si E est un A-module libre de type fini, de rang n et de base B = (e1 , . . . , en ), on a un isomorphisme
de groupes
n
GL(E) ' GLn (A) X
où MatB (g) = (mi,j )16i,j6n avec g(ej ) = mk,j ek
g 7 → MatB (g)
k=1
Plus simplement, si A est un corps (on le notera plutôt K), alors E est un espace vectoriel et c’est donc
en particulier un module libre ∗ . Dans toute la suite on suppose désormais que E est un A-module libre
de type fini, de rang n ∈ N∗ .
En pratique, on s’intéresse le plus souvent au cas où A = K est un corps et E est un espace vectoriel,
mais il est parfois intéressant de considérer des cas légèrement plus généraux : lorsque A = Z pour étudier
les groupes abéliens comme Z-modules, résoudre des systèmes d’équations diophantiens, travailler avec le
groupe modulaire PGL2 (Z), ou encore A = k[X] pour étudier les endomorphismes d’un k-espace vectoriel
de dimension finie. Remarquez que dans ces cas, l’anneau A est principal.
Définition 2.2. Un groupe G est dit linéaire s’il existe un anneau commutatif A et un A-module libre
de type fini E tel que G est un sous-groupe de GL(E) pour un certain A.
Autrement dit, un groupe linéaire est un certain sous-groupe d’un groupe général linéaire.
On remarquera que si A est intègre, on peut se ramener au cas des corps en considérant K = Frac(A)
et GLn (A) comme sous-groupe de GLn (K). Ceci est typiquement le cas si on travaille sur l’anneau
A = k[X] des polynômes en une variable à coefficients dans un corps k ou sur l’anneau A = Z.
Remarque 2.3. On a déjà vu que tout groupe fini est un groupe linéaire.
On dispose par ailleurs d’un morphisme de groupes det : GLn (A) → A× qui nous permet de définir,
via l’isomorphisme GL(E) ' GLn (A), un morphisme de groupes GL(E) → A× . Ce dernier ne dépend
pas de la base choisie et on le note encore det : GL(E) → A× .
Définition 2.4. On appelle groupe spécial linéaire, le noyau du morphisme det : GL(E) → A× . On le
note SL(E), ou encore SLn (A).
On sait d’emblée que c’est un sous-groupe distingué de GL(E) et que GL(E)/SL(E) ' im(det) = A×
(la surjectivité se vérifie grâce aux matrices de dilatation).
Remarque 2.5. On observe également que le groupe GLn (A) est un sous-groupe de SLn+1 (A) via le
M 0
morphisme de groupes injectif M 7→ , ce qui est parfois commode.
0 (det(M ))−1
Dans la suite, on supposera systématiquement que A = K est un corps. Pour effectuer convenablement
un pivot de Gauss, il suffit en fait de supposer que A est principal (par exemple Euclidien). Attention :
l’algorithme est mis en défaut si l’anneau A ne dispose pas des identités de Bézout ! Sur les anneaux
factoriels, on ne peut donc pas dire grand chose.
2.2 Générateurs
L’algorithme du pivot de Gauss a des conséquences immédiates sur l’étude des groupes linéaires.
Corollaire 2.6. (1) Le groupe GLn (K) est engendré par les matrices de transvection, dilatation et
permutation.
(2) Le groupe SLn (K) est engendré par les matrices de transvection.
∗. On s’en tiendra à la définition Bourbakiste suivant laquelle tout anneau est par définition unitaire.
∗. Si E est de dimension infinie, on peut alors réaliser GL(E) comme limite inductive de groupes linéaires finis sur
l’ensemble inductif partiellement ordonné des sous-espaces vectoriels de dimension finie de E.
7
Démonstration. (1) découle du pivot de Gauss et du fait que les matrices de GLn (K) sont surjectives
donc de rang n.
(2) On observe que P(i j) = Ti,j (1)Tj,i (−1)Di (−1) et que Di (µ)Ti,j (λ) = Ti,j (λµ)Di (µ). Donc dans
une écriture d’une matrice A = A1 . . . Ar ∈ SLn (K) où les matrices Ak sont des matrices élémentaires,
on peut se ramener au cas où les Ak ne sont pas des matrices de permutations, puis au cas où A =
A1 · · · As B1 · · · Bt où les Ai sont des matrices de transvection et les Bj sont des matrices de dilatation.
Donnons-nous une telle écriture avec t minimal.
On doit ensuite observer le calcul suivant : mλ =
0 λ
Ti,j (λ)Tj,i (−1/λ)Ti,j (λ)Tj,i (1/λ) = . On a alors mλ m−1 = Di (λ)Dj (1/λ), ce qui permet
−1/λ 0
d’écrire B1 B2 = ΠB 0 où Π est un produit de matrices de transvection et B 0 une matrice de dilatation.
Ainsi t = 1. Mais alors det A = det B1 = 1, ce qui nous dit qu’en fait B1 = In , ce qui est exclu, et donc
t = 0.
Corollaire 2.7. (1) Le noyau est un invariant total pour l’action de GLn (K) sur Mn (K) par multipli-
cation à gauche.
(2) L’image est un invariant total pour l’action de GLn (K) sur Mn (K) par multiplication par l’inverse
à droite.
(3) Le rang est un invariant total pour l’action par équivalence de GLn (K) × GLn (K) sur Mn (K).
Démonstration. (1), (2) et (3) découlent du fait que GLn (K) est engendré par les matrices élémentaires
et respectivement des points (1), (2) et (3) d’un lemme précédent.
Dilatations
Définition 2.8. On suppose que le corps K contient au moins 3 éléments. On appelle dilatation de E
d’hyperplan H, de droite D et de rapport λ, un endomorphisme u ∈ GL(E) tel que H = ker(u − idE ) est
un hyperplan, D = ker(u − λ idE ) et det(u) = λ 6= 1.
Fait 2.9. (1) Si E = H ⊕ D avec H hyperplan, D droite et si λ ∈ K \ {0, 1}, alors il existe une unique
dilatation de E d’hyperplan H, de droite D et de rapport λ.
(2) La droite D est entièrement déterminée par H et λ.
(3) Si λ = −1 6= 1 ∗ , alors u est la symétrie de E par rapport à H parallèlement à D.
(4) u est une dilatation de rapport λ si, et seulement si, il existe une base B de E telle que
1 0
..
MatB (u) =
. .
1
0 λ
Démonstration. (1) L’existence est claire sur une base adaptée à la décomposition E = H ⊕ D en posant
u(h) = h pour h ∈ H et u(d) = λd pour d ∈ D. L’unicité se vérifie par égalité sur les sous-espaces H et
D.
(2) Soit u ∈ GL(E) tel que ker(u − idE ) = H et det u = λ 6= 1. Soit D0 = im(u − idE ). Alors par le
théorème du rang, on sait que D0 est une droite de E ; de plus, on a u(D0 ) ⊆ D0 . Si on avait D0 ⊂ H, alors
on aurait (u − id)2 = 0, donc µu |(X − 1)2 et, en particulier, u serait trigonalisable d’unique valeur propre
égale à 1. Ceci contredit det u 6= 1. Donc D0 6⊂ H. Soit µ ∈ K ∗ tel que uD0 = µ idD0 . Alors det u = µ = λ
et nécessairement D0 = ker(u − λ idE ) = D.
(3) On a (uH )2 = idH et (uD )2 = idD , d’où u2 = idE . Il suffit de conclure en observant que ker(u −
idE ) = H et ker(u + idE ) = D.
(4) H et D sont des sous-espaces propres de u et sont en somme directe. Donc u est diagonalisable et
les multiplicités des valeurs propres sont données par les dimensions respectives de H et D. La réciproque
se lit sur la matrice.
∗. ce qui impose car(K) 6= 2
8
Transvections
Définition 2.10. Soit H un hyperplan de E et u ∈ GL(E). On dit que u est une transvection d’hyperplan
H de E si ker(u − idE ) = H et si det u = 1.
On appelle droite de la transvection u la droite D = im(u − idE ).
Proposition 2.11. Soit u une transvection d’hyperplan H et de droite D. Alors :
(1) D ⊂ H ;
(2) il existe un vecteur v ∈ E et une forme linéaire non nulle f ∈ E ∗ tels que u = idE +f (·)v ;
(3) il existe une base B de E telle que
1 0
..
MatB (u) =
. .
1 1
0 1
Théorème
Théorème 2.12. Soit E un k-espace vectoriel de dimension n. Tout élément de SL(E) est le produit
d’au plus 2n transvections.
Lemme 2.13. On suppose n ≥ 2 et x, y ∈ E \ {0}. Il existe une ou deux transvections u, v ∈ E telles
que u(x) = y ou vu(x) = y.
Démonstration. Supposons que x et y ne sont pas colinéaires. Soit z = y − x. La famille (x, z) est libre
donc il existe f ∈ E ∗ telle que f (x) = 1 et f (z) = 0. Soit u = idE +f (·)z. Alors u(x) = x + z = y.
Si x et y sont colinéaires, soit z ∈ E \ Kx, ce qui existe car n ≥ 2. Alors il existe x, z ne sont pas
colinéaires et y, z ne sont pas colinéaires, donc il existe u, v des transvections telles que u(x) = z et
v(z) = y.
Lemme 2.14. Soit H1 , H2 deux hyperplans distincts de E et x 6∈ H1 ∪H2 . Alors il existe une transvection
u de E telle que u(x) = x et u(H1 ) = H2 .
Démonstration. Soit H = H1 ∩ H2 + Kx. C’est un hyperplan de E car dim H1 ∩ H2 = n − 2 comme
intersection de deux hyperplans distincts et la somme H1 ∩ H2 + Kx est directe car x 6∈ H1 ∩ H2 .
Soit z1 ∈ H1 \ H1 ∩ H2 . Alors z1 6∈ H, donc il existe une forme linéaire f ∈ E ∗ telle que f (H) = 0
et f (z1 ) = 1. D’autre part, comme x 6∈ H2 , on a E = H2 ⊕ Kx. Donc il existe z2 ∈ H2 tel que
z = z2 − z1 ∈ Kx.
La transvection u = idE +f (·)z convient. En effet, u(z) = z + f (z)z = z car z ∈ Kx ⊂ H et z 6= 0
car z1 6∈ H2 . Donc uKx = idKx . De plus, si y1 ∈ H1 , on écrit y1 = λz1 + y2 avec y2 ∈ H1 ∩ H2 et λ ∈ K.
Alors u(y1 ) = y1 + f (y1 )z = y1 + λz = λz1 + y2 + λz2 − λz1 = y2 + λz2 ∈ H2 .
Démonstration du théorème. On démontre par récurrence sur n ∈ N∗ que pour tout corps K, le groupe
SLn (K) est engendré par les transvections. Le résultat est évident si n = 1 car le groupe est trivial.
Soit n ≥ 2 et supposons le résultat connu en dimension n − 1. Soit g ∈ SL(E) et x ∈ E \ {0}. Posons
y = g(x). Le lemme 2.13 donne l’existence d’un produit d’une ou deux transvections w ∈ SL(E) tel que
w(y) = x. Ainsi, wg(x) = x et il suffit d’écrire h = wg comme produit de transvections.
9
Soit H1 un supplémentaire de Kx dans E et H2 = h(H1 ). Alors x 6∈ H1 par construction et x 6∈ h(H1 )
car sinon, on aurait h−1 (x) = x ∈ H1 . On peut donc appliquer le lemme 2.14 pour trouver une transvection
v ∈ SL(E) telle que v(x) = x et v(H2 ) = H1 .
Ainsi, l’élément k = vh = vwg stabilise la décomposition E = H1 ⊕Kx et det(k) = det(idKx )·det(kH1 ).
Par hypothèse de récurrence, k s’écrit comme produit de transvections de H1 , et donc g = w−1 v −1 k s’écrit
comme produit de transvections de E.
On observe en particulier que tout élément de GL(E) est le produit d’une dilatation et d’au plus 2n
transvections. En effet, il suffit de voir que pour g ∈ GL(E), en posant λ = det g et d ∈ GL(E) une
dilatation de rapport λ1 , on a gd ∈ SL(E) et donc g s’écrit comme le produit d’une dilatation et de
transvections.
Fait 2.15. Soit H un hyperplan de E, soit D une droite de E, soit λ ∈ K ∗ et h ∈ GL(E) un endomor-
phisme inversible.
Si h ∈ GL(E) est une transvection (resp. dilatation) d’hyperplan H, de droite D (resp. et de rapport
λ), alors ghg −1 est une transvection (resp. dilatation) d’hyperplan g(H), de droite g(D) (resp. et de
rapport λ).
Définition 2.17. On appelle homothétie de E un endomorphisme u ∈ GL(E) tel qu’il existe λ ∈ K ∗ tel
que u = λ idE .
Fait 2.18. L’ensemble des homothéties est un sous-groupe, noté K × idE de GL(E) isomorphe à K ∗ .
Définition 2.19. Soit E un K-espace vectoriel. On appelle espace projectif sur E, noté P(E) l’ensemble
des droites vectorielles de E.
Le groupe GL(E) agit naturellement sur P(E), de même que ses sous-groupes et, en particulier le
groupe SL(E).
Lemme 2.20. Le centre de l’action de GL(E) sur P(E) est le groupe des homothéties.
Démonstration. On considère un élément u ∈ GL(E) dans le centre de cette action, de sorte que u(Kx) =
Kx. Ceci définit donc des scalaires λx tels que u(x) = λx x.
Soient x, y ∈ E \ {0}. Si x et y sont colinéaires avec y = µx, alors u(y) = u(µx) = µu(x) donc
λy = λx car x 6= 0. Si x et y ne sont pas colinéaires, alors (x, y) libre donc u(x + y) = u(x) + u(y) donne
λx = λx+y = λy . Ainsi, l’application λ : E \ {0} → K ∗ vérifiant λ(x) = λx est constante.
Théorème 2.21. On a Z (GL(E)) = K × idE et Z (SL(E)) = µn (K) idE .
Démonstration. Les homothéties sont dans le centre de GL(E). Réciproquement, si un élément u ∈ GL(E)
(resp. u ∈ SL(E)) est dans le centre du groupe, alors son action par conjugaison sur les transvections
préserve les droites associées au transvection. Donc u est dans le centre de l’action de GL(E) sur P(E).
10
Définition 2.22. On appelle groupe projectif linéaire le groupe quotient PGL(E) = GL(E)/Z (GL(E)).
On appelle groupe projectif spécial linéaire le groupe quotient PSL(E) = SL(E)/Z (SL(E)).
Fait 2.23. Les groupes projectifs et projectifs spéciaux agissent fidèlement et transitivement sur l’espace
projectif P(E).
De plus, si n = 2, alors l’action de ces groupes sur l’espace projectif est exactement 3-transitive.
Remarque 2.24. En général, il faudra travailler davantage pour définir la notion de repère projectif : ce
sont les familles de points p0 , . . . , pn ∈ P(E) tels qu’il existe une base (e1 , . . . , en ) de E telle que pi = Kei
et p0 = K(e1 + · · · + en ).
L’action de PGL(E) sera alors transitive sur les repères projectifs de P(E).
On peut alors définir le birapport de quatre points (a, b, c, d) de P1 (K) = P(K 2 ) comme l’unique
δ ∈ K ∪ {∞} = P1 (K) tel que (a, b, c, d) est dans l’orbite de (0 = [1 : 0], 1 = [1 : 1], ∞ = [0 : 1], δ) sous
l’action de PGL2 (K) sur P1 (K)4 .
Il est plus délicat de généraliser cette notion en dimension supérieur car quatre droites distinctes en
position quelconque ne forment plus nécessairement un repère projectif de P2 (K) = P(K 3 ).
Démonstration. Toute transvection est naturellement connectée par un arc formé de matrices de trans-
vections à l’identité via la formule t 7→ ut = idE +f (·)tz.
Le groupe SLn (R) est engendré par les transvections, et un produit de transvection reste dans SLn (R).
11
3 Matrices dans les cas réels et complexes
On a, dans un cours précédent, défini la notion d’espace euclidien et hermitien. Ce sont des cadres
naturels de géométrie, qu’on généralise ensuite en dimension infinie pour faire de l’analyse. C’est le cadre
utilisé, par exemple, pour les séries de Fourier.
Tous les résultats qui vont suivre sont aussi bien valable dans les deux contextes réels et complexes.
Comme il est attendu du lecteur qu’il soit déjà familiarisé avec le cadre réel, on énoncera les résultats
et démonstrations dans le cadre complexe uniquement. Il est attendu du lecteur qu’il sache écrire les
énoncés et démonstrations analogues dans le cadre réel.
On rappelle que Hn (C) (resp. Sn (R)) l’espace vectoriel des matrices hermitiennes (i.e. M ∗ = tM =
M , que Hn+ (C) (resp. Sn+ (R)) le cône des matrices hermitiennes positives (i.e. X ∗ M X > 0 pour tout
X ∈ Mn,1 (C)) et que Hn++ (C) (resp. Sn++ (R)) l’ensemble des matrices hermitiennes définies positives.
On notera Un (C) (resp. On (R)) le groupe des matrices unitaires (resp. orthogonales) de taille n, c’est-à-
dire des matrices vérifiant M ∗ M = In et SU n (C) (resp. SOn (R)) le sous-groupe distingué des matrices
unitaires de déterminant 1.
La topologie métrique du corps de base nous permet alors d’introduire des métriques sur les espaces
matriciels considérés.
Ce n’est pas une norme car, par exemple, toutes les matrices nilpotentes ont pour rayon spectral 0.
Notation 3.3. Si | · | est une norme sur Kn , on notera Sn−1
|·| = {X ∈ Kn , |X| = 1} la sphère centrée en
n
0 de rayon 1 de K pour la norme | · |.
Proposition-définition 3.4. Soit m, n ∈ N. Soient | · |m et | · |n deux normes respectivement sur Km et
Kn . Soit M ∈ Mm,n (K).
(1) La borne supérieure suivante est finie et atteinte (donc c’est un maximum) :
|M X|m
kM k = sup = sup |M X|m
X∈Kn \{0} |X|n X∈Sn−1|·|n
12
Exercice 2. Soit n ∈ N∗ et M = (mi,j ) ∈ Mn (K). Alors
Xn n
X
1. kM k1 = max |mi,j | est la norme subordonnée à |X|1 = |xi | ;
16j6n
i=1 i=1
v
u n
x2i ;
uX
∗
2. kM k2 = max |λ| (rayon spectral de M M ) est la norme subordonnée à |X|2 = t
λ∈sp(M ∗ M )
i=1
n
X
3. kM k∞ = max |mi,j | est la norme subordonnée à |X|∞ = max |xi | ;
16i6n 16i6n
j=1
Définition 3.5. Une norme k · k sur Mn (K) est dite matricielle si pour toutes matrices M, N ∈ Mn (K),
on a kM N k 6 kM kkN k.
Fait 3.6. Si k · k est une norme sur Mn (K) subordonnée à une norme | · | sur Kn , alors c’est une norme
matricielle. En particulier, pour tout M ∈ Mn (K) et tout k ∈ N, on a kM k k 6 kM kk .
Démonstration. Soient M, N ∈ Mn (K). Pour tout X, Y ∈ Mn (K), on a par définition |M X| 6 kM k|X|
et |N Y | 6 kN k|Y |. En particulier, en prenant X = N Y , cela donne |M N Y | 6 kM k|N Y | 6 kM kkN k|Y |.
En passant au sup pour Y ∈ Sn−1 , on a kM N k 6 kM kkN k.
Remarque 3.7. Attention : il existe des normes matricielles
p qui ne sont pas des normes subordonnées. Par
exemple, la norme de Frobenius définie par kM k = tr(M ∗ M ) est une norme matricielle (appliquer
l’inégalité de Cauchy-Schwarz) mais n’est pas une norme subordonnée (vérifier ce qu’il se passe pour
M = In ).
Proposition 3.8. Soit | · | une norme quelconque sur Kn et k · k la norme subordonnée à | · |. Alors, pour
toute matrice M ∈ Mn (K), on a ρ(M ) 6 kM k.
Démonstration. Si sp(M ) = ∅, alors ρ(M ) = 0 6 kM k. Sinon, soit λ ∈ sp(M ) une valeur propre et X un
vecteur propre associé. Alors |M X|
|X| = |λ| donc |λ| 6 kM k. Ainsi ρ(M ) = max |λ| 6 kM k.
λ∈sp(M )
|M C −1 Y |C |M X|C |M X|C
kCM C −1 k∞ = = = 6 kM kC .
|Y |∞ |CX|∞ |X|C
Remarquons que la norme kM kC = kCM C −1 k∞ est, en particulier, une norme matricielle, ce qui
pourra s’avérer utile.
13
3.2 Interprétation matricielle du théorème spectral
On dispose sur Kn d’un produit scalaire canonique, c’est-à-dire la forme hermitienne définie positive
ϕ = h·, ·i donnée par :
n
X
h(xi )16i6n , (yi )16i6n i = xi yi
i=1
R =Q−1 M Q−1 Q
=Q−1 (Q−1 M )∗ Q car Q, M sont hermitiennes
−1 ∗
=Q R Q
Ainsi, l’endomorphisme u est ϕ-autoadjoint (ou encore ϕ-hermitien). Donc les sous-espaces propres de u
sont ϕ-orthogonaux. Sur chaque sous-espace propre Eu (λ) pour λ ∈ sp(u), on fixe une base ϕ-orthonormée
Bλ0 de vecteursFpropres de u, ce qui est possible par le procédé d’orthonormalisation de Gram-Schmidt.
On note B 0 = λ∈sp(u) Bλ0 la base ϕ-orthonormée ainsi obtenue. Matriciellement, cela donne une matrice
de passage P de B à B 0 telle que P −1 RP = D et P ∗ QP = In avec D diagonale. Ainsi
D =D∗
=P ∗ M ∗ (Q−1 )∗ (P −1 )∗
=P ∗ M (P −1 Q−1 )∗ car M hermitienne
∗ ∗ ∗
=P M (P )
=P ∗ M P
Ce qui conclut.
14
3.3 Une première décomposition matricielle remarquable : la décomposition
polaire
Une première décomposition matricielle très utile pour résoudre certains problèmes théoriques est la
décomposition polaire. Elle généralise naturellement la forme polaire des nombres complexes inversibles
z = reiθ où r ∈ R∗+ ' H1++ (C) et eiθ ∈ U ' U1 (C) ' SO2 (R) s’identifie à une rotation de C vu comme
R-espace vectoriel de dimension 2.
Corollaire 3.12 (Unicité de la racine carrée). Toute matrice M ∈ Hn+ (K) admet une racine carrée
N ∈ Hn+ (K), c’est-à-dire N 2 = M .
Si, de plus, M ∈ Hn++ (K), alors N ∈ Hn++ (K) est unique.
Démonstration.
√ Unicité : Si M = U H, alors M ∗ M = H ∗ U ∗ U H = H ∗ H = H 2 . Ainsi nécessairement
H = M M et donc U = M H −1 .
∗
Ainsi l’application (U, H) 7→ U H est bijective, continue. Il reste à montrer que son inverse est continue.
On utilise un critère métrique de caractérisation. Soit Mk −→ M . On écrit Mk = Uk Hk avec Uk ∈ Un (K)
k→∞
et Hk ∈ Hn++ (K). Comme Un (K) est compact, on peut extraire une sous-suite convergente Uϕ(k) −→ U 0 .
k→∞
−1 −1
Alors limk→∞ Uϕ(k) Mϕ(k) = U 0 M est hermitienne comme limite de matrices dans l’espace vectoriel
des matrices hermitiennes (fermé de GLn (K) donc, par unicité U 0 = U est la seule valeur d’adhérence de
la suite (Uk ). Ainsi Uk −→ U et donc Hk = Uk−1 Mk −→ H.
k→∞ k→∞
Corollaire 3.14. Le groupe Un (K) est un sous-groupe compact maximal de GLn (K).
Remarque 3.15. On peut également définir un homéomorphisme
15
4 Résolution de systèmes linéaires : méthodes directes
Souvent, en analyse, on ramène un problème difficile à un système d’équations linéaire qui « approxime
bien » le problème de départ. On n’a alors pas besoin de résoudre le système linéaire de manière exacte
mais seulement de manière approchée. En revanche, on s’intéresse à la « robustesse » de la résolution,
c’est-à-dire qu’on veut que la méthode de résolution du système linéaire donne des solutions proches
lorsqu’on perturbe un petit peu les coefficients des équations.
Par exemple, lorsqu’on résout des équations différentielles linéaires, on est amené à calculer des expo-
nentielles de matrices et il est alors commode de pouvoir diagonaliser une matrice : ce qui est difficile en
général quand on ne connait pas les valeurs propres.
Attention, ceci est très important ! Même si on ne sait pas faire correctement de théorie de Galois
avec les outils de l’agrégation, on sait néanmoins que le groupe An est simple pour n > 5 ce qui a pour
conséquence qu’il est impossible de résoudre par radicaux les équations polynomiales de degré supérieur
ou égal à 5. Ceci étant, même en degré 3 ou 4, déterminer les racines d’un polynôme ça n’est pas si facile
que ça. En pratique, quand on veut approximer les racines d’un polynôme réel ou complexe, on utilise en
fait les techniques qui vont suivre appliquées à une matrice compagnon.
On veut donc résoudre un système d’équations linéaires, c’est-à-dire trouver l’ensemble des
(xj )16j6n ∈ Kn vérifiant
a1,1 x1 + · · · + a1,n xn = b1
..
.
am,1 x1 + · · · + am,n xn = bm
pour des (ai,j )16i6m et (bi )16i6m , autrement dit, résoudre AX = B avec A ∈ Mm,n (K), X ∈ Mn,1 (K)
16j6n
et B ∈ Mm,1 (K).
Ce que prédit l’algèbre linéaire, c’est que ce système n’admet des solutions que si b ∈ im(A) et dans
ce cas, l’ensemble des solutions est un espace affine de dimension dim(ker A). En effet, si b = Ax0 et x
est solution, alors A(x − x0 ) = b − b = 0 donc x ∈ x0 + ker A. Il s’agit donc de mettre en place des
algorithmes qui permettent d’exhiber un tel x0 et, éventuellement, de décrire ker A.
Comme il s’agit de présenter des méthode de résolution approchées, même si le cours d’algèbre ne
traitera que de situations de résolution exactes, on se placera désormais uniquement dans le cas du corps
K = R ou C. Les méthodes itératives de résolution seront traitées en option B, pour tous, et pourront
vous être utile également dans certaines leçons d’analyse.
16
On n’a donc pas besoin de vraiment calculer l’inverse, ni de stocker les opérations effectuée. On n’a
pas non plus besoin de déterminer A0 mais seulement A0I,J , ce qui coûte m(m−1)2 multiplications pour
déterminer A0 et encore m multiplications pour déterminer B 0 .
Ainsi, on peut calculer un X00 en m(m−1)
2 soustractions et autant multiplications. On pose (X0 )j =
(X0 )i pour i ∈ J1, mK et j = di (A) ∈ J ; et (X0 )j = 0 si j 6∈ J. Soit au total m(m−1)
0
2 × 2 + m = m2
multiplications et m(m−1)
2 soustractions.
Remarque 4.1. Si A est échelonnée inférieurement, alors on peut se ramener au cas précédent par conjugai-
0 1
.
son avec la matrice antidiagonale J = .. , qui est aussi la matrice d’une permutation (laquelle ?)
1 0
d’ordre 2, de sorte que J 2 = In . En effet JBJ = JAXJ = (JAJ)(JXJ) change B = (b1 , . . . , bm ) en
(bm , . . . , b1 ), X = (x1 , . . . , xn ) en (xn , . . . , x1 ) et JAJ est échelonnée supérieurement.
Attention : il serait faux de dire qu’on se ramène au cas précédement
par transposition !
4.2 Le principe d’une méthode de résolution directe
Comme on peut le voir, résoudre un système linéaire est moins couteux lorsque la matrice est trian-
gulaire. L’algorithme d’échelonnement de Gauss-Jordan donne l’existence de matrices de permutations
et transvections de sorte que le produit de ces matrices P est tel que P A est échelonnée supérieurement.
On résout alors facilement AX = B en résolvant P AX = P B.
Plutôt que de résoudre le problème linéaire directement d’une matrice quelconque, une idée est de
d’abord la décomposer en quelques (deux ou trois) matrices pour lesquelles on sait « rapidement » résoudre
le système linéaire : Si A = P Q, alors résoudre AX = B équivaut à résoudre :
PY = B
QX = Y
et on espère que les problèmes P Y = B et QX = Y sont eux-mêmes rapides à résoudre. C’est une sorte
de principe « diviser pour régner » comme ceux qu’on applique dans les algorithmes de tri par exemple.
4.3 Décomposition LU
Si par exemple P et Q sont échelonnées, alors on résout AX = B en 2m2 multiplications. C’est pour
cette raison qu’on s’intéresse à la décomposition LU. Ce coût est similaire à celui du calcul A−1 B si, par
exemple, A est inversible et qu’on a pu calculer son inverse. Il s’agit donc de comparer le coût du calcul
de l’inverse par pivot de Gauss (' 34 n3 ), et de l’échelonnement de Gauss-Jordan (' 32 n3 ) avec celui
du calcul de la décomposition LU.
On utilise la notation L pour « lower » et U pour « upper ».
Un cadre particulier pour les méthodes directes — et à connaître dans le cadre de l’agrégation — est
le suivant :
Théorème 4.2 (Décomposition LU : condition suffisante d’existence et d’unicité). Soit A ∈ Mn (K).
On suppose que tous les mineurs principaux de A sont inversibles, c’est-à-dire que pour m ∈ J1, nK et
I = J1, mK, on a det(AI,I ) 6= 0. Alors la factorisation LU de A = LU avec L unitriangulaire inférieure
et U triangulaire supérieure existe et est unique.
17
avec B, C ∈ Mn−1,1 (K). On cherche alors une décomposition de A = LU de la forme :
Um−1 B 0
Lm−1 0
L= t 0 et U =
C 1 0 d
avec B 0 , C 0 ∈ Mn−1,1 (K). Le produit matriciel par blocs donne
Um−1 B 0 Lm−1 Um−1 Lm−1 B 0
Lm−1 0 Am−1 B
t 0 = t 0 t 0 0 = t
C 1 0 d C Um−1 C B +d C an,n
Par hypothèse, on a det(Am−1 ) = det(Lm−1 ) det(Um−1 ) donc les matrices Lm−1 et Um−1 sont inversibles,
ce qui permet de conclure qu’il suffit de poser :
B 0 =L−1
m−1 B,
−1
C 0 =t Um−1 C, d =an,n − t C 0 B 0 .
De plus, ces matrices sont ainsi uniquement déterminées.
Remarque 4.4. On calcule facilement le déterminant de A à partir de sa décomposition LU car det(A) =
n
Y
det(U ) = Ui,i .
i=1
Exercice 3. Montrer que la décomposition de A = LU existe encore si det(A) = 0 et les autres mineurs
principaux sont inversibles.
Remarque 4.5. Génériquement (au sens de la densité), une matrice A ∈ Mn (K) vérifie les hypothèses du
théorème puisque les équations det(AI,I ) = 0 définissent des fermés d’intérieur vide de Mn (K).
En ce sens, on peut dire qu’on a, jusque-là, pas fait d’hypothèse forte sur la matrice A.
On dispose du théorème général (admis) :
Théorème 4.6 (Culturel). Si A ∈ GLn (K), alors il existe une matrice de permutation P , une matrice
unitriangulaire inférieure L et une matrice triangulaire supérieure U telles que P A = LU .
Remarque 4.7. Attention : ce théorème ne statue aucune forme d’unicité en général.
18
D’où une contradiction. Ainsi sp(A) ⊂ R∗+ puisque det(A) = ∆n > 0. Donc A est définie positive.
Théorème 4.10 (Factorisation de Cholesky). Soit A une matrice hermitienne (ou symétrique) définie
positive. Alors il existe une unique matrice triangulaire supérieure B, dont les coefficients diagonaux sont
strictement positifs, telle que A = B ∗ B.
Démonstration. Existence : Notons ∆m les mineurs principaux de A, vérifiant ∆m > 0 d’après le
Lemme. La matrice A admet donc une unique factorisation A = LU . De plus, les égalités successives
données dans la preuve du théorème précédent ∆m = det(Am ) = det(Lm ) det(Um ) = det(Um ) assurent
√ √
que les coefficients diagonaux ui de U sont tous strictement positifs. Posons D = diag( u1 , . . . , un ).
2 ∗ ∗ ∗
On a vu que A = LD L = B B en posant B = DL .
Unicité : Si A = B1∗ B1 = B2∗ B2 sont deux décompositions de Cholesky de A, alors la matrice
D = B2 B1−1 = B1∗ (B2−1 )∗ est à la fois triangulaire supérieure et inférieure à diagonale positive, donc
diagonale et à coefficients positifs. Mais alors B2 = DB1 . Ce qui donne A = B1∗ B1 = B2∗ B2 = B1∗ D2 B1 .
Ainsi D2 = In donc D = In puisque ses coefficients sont positifs.
La matrice A étant symétrique, on peut se contenter de vérifier les égalités pour i 6 j. Ce qui donne pour
la première ligne de A :
√
a1,1 = b21,1 d’où b1,1 = a1,1
a1,2
a1,2 = b1,1 b1,2 d’où b1,2 =
b1,1
.. ..
. .
a1,n
a1,n = b1,1 b1,n d’où b1,n =
b1,1
Pn−1 n(n−1)
Ainsi, le calcul de la matrice B coûte n extractions de racines carrées, k=1 k = 2 divisions,
Pn−1 n(n−7/2)(n−1) P n−1 n(n−7/2)(n−1)
i=1 i(i − 1) = 6 additions et i=1 i(i − 1) = 6 multiplications.
Ainsi, en nombres d’opérations, on peut estimer que cet méthode est d’un facteur 4 fois plus efficace
que la décomposition LU en temps et 2 fois moins coûteuse en mémoire, bien qu’elle ne s’applique qu’aux
matrices symétriques définies positives.
Remarque 4.11. En pratique, cet algorithme permet également de détecter si une matrice symétrique est,
ou non, définie positive selon qu’on trouve une valeur b2k,k 6 0 ou non et on n’a donc pas besoin de le
vérifier au préalable.
19
4.5 Factorisation QR
Le principe de cette dernière méthode est, non plus, d’écrire une matrice A comme produit de ma-
trices triangulaires mais comme produit d’une matrice unitaire Q ∈ Un (K) et d’une matrice triangulaire
supérieure R.
Y = Q∗ B
Remarque 4.12. Résoudre le système AX = B revient alors à résoudre le système puisque
RX = Y
Q∗ = Q−1 .
Cette méthode est, à nouveau, constructive en s’appuyant sur la démonstration du théorème suivant :
Théorème 4.13 (Factorisation QR). Soit A ∈ GLn (K). Alors il existe Q ∈ Un (K) et R triangulaire
supérieure dont les éléments diagonaux sont strictement positifs, telles que A = QR. De plus, cette
factorisation est unique.
Démonstration. Existence : Comme A ∈ GLn (K), ses colonnes (Ai )16i6n forment une base de
Mn,1 (K) ' Kn . Le procédé d’orthonormalisation de Gram-Schmidt donne alors une base orthonormée
Pj
Qi de Kn telle que Vect(A1 , . . . , Ai ) = Vect(Q1 , .. . , Qi ) pour tout 1 6 i 6 n. Ainsi Aj = i=1 hAj , Qi iQi .
Pj Pn
Si A = QR, on a alors AEj = Aj = QREj = Q i=1 ri,j Ei = i=1 ri,j Qi . On pose alors
ri,j = hAj , Qi i
20
Maintenant, si on garde A et qu’on perturbe légèrement b en
32 0, 1 32.1
23 −0, 1 22.9
33 + 0, 1 = 33.1 ,
b + δb =
31 −0, 1 30.9
−1.1
On observe que cette petite perturbation de b entraine une grande perturbation de x. On se doute
que cela vient probablement de la taille des coefficients de A−1 . On va donc proposer un outil métrique
qui prend en compte A−1 : le conditionnement.
Définition 4.16. Soit k·k une norme matricielle sur Mn (K). On définit le conditionnement d’une matrice
A ∈ GLn (K) par :
cond(A) = kAkkA−1 k.
Fait 4.17. Pour A, B ∈ GLn (K), tout λ ∈ K), on a :
(1) cond(A) = cond(A− 1) = cond(λA) ;
(2) cond(AB) 6 cond(A) cond(B) ;
(3) si k · k est une norme subordonnée, alors cond(A) > 1.
Démonstration. Ces faits élémentaires sont laissés en exercice au lecteur pour qu’il s’assure d’avoir bien
retenu les définitions.
Remarque 4.18. Si on travaille avec la norme p, alors la norme subordonnée est notée k · kp et le condi-
tionnement condp .
Dans la suite, on suppose qu’on s’intéresse à un système linéaire Ax = b avec A ∈ GLn (K) et
b ∈ Mn,1 (K) \ {0} et on se fixe, une fois pour toutes, une norme | · | sur Kn , et on considérera sa norme
subordonnée k · k. On supposera qu’on fait une erreur δA sur A et une erreur δb sur b qui induisent une
erreur δx sur x.
Théorème 4.19. Si δA = 0 (i.e. on fait une erreur sur b uniquement), alors
|δx| |δb|
6 cond(A)
|x| |b|
|δx| kδAk
6 cond(A)
|x + δx| kAk
21
D’où l’inégalité annoncée.
D’un autre côté, si δA = εIn pour ε > 0 est telle que A + δA ∈ GLn (K), ce qui est le cas sur un ouvert
proche de 0, et si y 6= 0 réalise l’égalité |A−1 y| = kA−1 k|y| alors, en choisissant b = (A + δA)y = Ay + εy,
on a d’une part A−1 b = x = y + εA−1 y et, d’autre part, b = (A + δA)(x + δx) = (A + δA)y, ce qui donne
y = x + δx. Ainsi δx = y − x = y − (y + εA−1 y) = −εA−1 y. D’où le cas d’égalité
kAk kδAk
|δx| = εkA−1 k|y| = kδAk kA−1 k |x + δx| = cond(A) |x + δx|.
kAk | {z } | {z } kAk
=ε =|y|
Remarque 4.21. Ce cas d’égalité conforte l’idée que, comme on sait que le conditionnement est toujours
plus grand que 1, « ce sont les matrices d’homothétie qui sont les mieux conditionnées ». On pourra
penser qu’une matrice est « bien conditionnée » si son conditionnement est « proche » de 1.
En général, on ne s’attend pas à connaître d’emblée l’erreur faite sur x, et donc de savoir que x+δx 6= 0.
Voici donc un autre résultat utile :
Théorème 4.22. Si δb = 0 (i.e. on fait une erreur sur A uniquement) et si kA−1 δAk < 1, alors
|δx| kδAk
6 cond(A) 1 + O kδAk .
|x| kAk
La matrice In + A−1 δA est inversible car kA−1 δAk < 1 par hypothèse. De plus, on a
1 1
k(In + A−1 δA)−1 k 6
6 = 1 + O kδAk .
1 − kA−1 δAk 1 − kA−1 kkδAk
Ce qui donne
Voici un dernier résultat qui mélange erreurs sur A et sur b, laissé en exercice :
Théorème 4.23.
|δx| cond(A) kδAk |δb|
6 +
|x| 1 − cond(A) kδAk
kAk
kAk |b|
kAk2 = ρ(A).
22
Démonstration. (1) La matrice A∗ A est hermitienne et, pour x ∈ Cn , on a x∗ A∗ Ax = |Ax|22 > 0, donc
A∗ A est positive. Ainsi A∗ A est diagonalisable
Pn en base orthonormée (e1 6 · · · 6 en ) à valeurs propres
réelles positives ou nulles. Soit x = i=1 xi ei . Alors
|Ax|22 =hAx, Axi = hA∗ Ax, xi
n
λi |xi |22
X
= car ei base orthonormée de vecteurs propres,
i=1
n
ρ(A∗ A)|xi |22
X
6 car |λi | 6 ρ(A∗ A) pour tout 1 6 i 6 n,
i=1
=ρ(A∗ A)|x|22
Ainsi
|Ax|2 p
kAk2 = sup 6 ρ(A∗ A)
x6=0 |x|2
Mais, d’autre part, on a pour x = en
|Aen |22 = λ2n |en |22 = ρ(A∗ A)2 |en |22 6 kAk22 |en |22
D’où l’égalité kAk22 = ρ(A∗ A)2 . En appliquant cette égalité à A∗ , on trouve kA∗ k22 = ρ(AA∗ )2 . Enfin, pour
toutes matrices A, B on a χAB = χBA donc, en particulier, sp(AB) = sp(BA) et donc ρ(AB) = ρ(BA),
ce qui donne ρ(AA∗ )2 = ρ(A∗ A)2 .
(2) Si A est normale, alors elle est diagonalisable en base orthonormée. Autrement dit, il existe D
∗ ∗ 2
p réelle et P ∈ Un (C) telles que A = P DP . Ainsi, ρ(A) = ρ(D) et ρ(A A) = ρ(D ), donc
diagonale
∗
ρ(A) = ρ(A A) = kAk2 .
Voici enfin des résultats de conditionnement pour la norme 2 d’une matrice :
Théorème 4.25. Soit A ∈ GLn (C).
(1) Si on écrit sp(A∗ A) = {µ1 6 · · · 6 µn }, alors
r
µn max16i6n µi
r
cond2 (A) = = .
µ1 min16i6n µi
(2) Si A est normale et qu’on écrit sp(A) = {λ1 , . . . , λn } avec |λ1 | 6 · · · 6 |λn |, alors
|λn | max16i6n |λi |
cond2 (A) = = .
|λ1 | min16i6n |λi |
(3) cond2 (A) = 1 si, et seulement si, A s’écrit A = λU avec λ ∈ C∗ et U ∈ Un (C).
Démonstration. (1) On a
kAk22 = ρ(A∗ A) = max µi = µn
16i6n
et
1 1
kA− 1k22 = ρ((A−1 )∗ A−1 ) = ρ((A∗ A)−1 ) = max = .
16i6n µi µ1
D’où le résultat.
(2) On a
kAk2 = ρ(A) = max |λi | = |λn |
16i6n
et
1 1
kA− 1k2 = ρ(A−1 ) = max = .
16i6n |λi | |λ1 |
D’où le résultat.
(3) ⇒ : si cond2 (A) = 1, alors min sp(A∗ A) = max sp(A∗ A) = µ > 0. Donc A∗ A − µIn est à la fois
√ ∗
nilpotente et hermitienne, donc nulle. En posant λ = µ et U = λ1 A, on a alors U ∗ U = Aλ A µIn
λ = µ = In .
Donc U ∈ Un (C).
⇐ : découle des égalités pour λ ∈ C∗ et U ∈ Un (C) :
cond2 (λU ) = cond2 (U ) = ρ(U ∗ U ) = cond2 (In ) = 1
23
4.8 Décomposition en valeurs singulières
Pour conclure ce chapitre, on va présenter la décomposition en valeurs singulières (en anglais SVD pour
Singular Value Decomposition. C’est une décomposition qui est, d’une certaine façon, une généralisation
aux matrices rectangulaires de la diagonalisation orthogonales des matrices dans le cas réel, en relaxant
la condition de symétrie.
∗
Soit A ∈ Mm,n (C).√ Alors la matrice A A ∈ Mn (C) est hermitienne et positive. Soit λ une valeur
∗
propre de A A et s = λ. Si v est un vecteur propre de A pour la valeur propre λ, alors on peut considérer
u = 1s Av et on a
Av = su A∗ u = sv (1)
donc u est en particulier non nul car v l’est.
Réciproquement, si on a un tel couple de vecteurs non nuls (u, v) vérifiant 1, alors A∗ Av = sA∗ u = s2 v
donc s2 est valeur propre de A∗ A.
De plus, u et v ont même norme 2 car u∗ u = 1s v ∗ A∗ u = 1s v ∗ A∗ 1s Av = s12 (λv ∗ v) = v ∗ v.
Définition 4.26. Une valeur singulière de A est la racine carrée positive d’une valeur propre non nulle
de A∗ A.
Si (u, v) est un couple de vecteurs comme dans 1 de norme 1, alors on dit que u est un vecteur singulier
à gauche et v est un vecteur singulier à droite.
Remarque 4.27. On montrera en exercice que A∗ A et AA∗ ont en fait les mêmes valeurs propres complexes,
sauf éventuellement 0, donc que A∗ et A ont mêmes valeurs singulières.
On dispose alors d’un résultat d’existence de diagonalisation en valeurs singulières :
Théorème 4.28 (Décomposition en valeurs singulières). Soient m, n ∈ N∗ . Soit A ∈ Mm,n (K) de
valeurs singulières s1 , . . . , sr comptées avec multiplicité et D = diag(s1 , · · · , sr , 0, · · · , 0) ∈ Mn (R). Alors
il existe des matrices U, V ∈ Un (K) telles que U ∗ AV = D.
En particulier, les r premières colonnes de U et V sont des vecteurs singulier, respectivement à gauche
et à droite, de A.
les valeurs propres non nulles de H = A∗ A qui sont donc réelles et
Démonstration. Soit λ1 , . . . , λr √
strictement positives. Soit si = λi pour tout i les valeurs singulières de A correspondantes. Soit ∆ =
diag(s1 , . . . , sr ).
La matrice H ∈ Mn (K) étant hermitienne, par diagonalisation en base orthonormée, il existe V ∈
Un (K) telle que V ∗ HV = D2 . Soit V1 ∈ Mn,r (K) la matrice extraite de V des r premières colonnes
et
V2 ∈ Mn,n−r (K) la matrice extraite de V des n − r dernières colonnes, de sorte que V = V1 V2 . On
a, d’une part
V1∗ HV1 = ∆2
et d’autre part
V2∗ HV2 = (AV2 )∗ (AV2 ) = 0
ce qui donne AV2 = 0.
On pose W1 = ∆−1 V1∗ A∗ ∈ Mr,m (K). On a alors
W1 AV1 = ∆−1 V1∗ A∗ AV1 = ∆−1 ∆2 = ∆.
De plus
W1 W1∗ = ∆−1 V1∗ A∗ AV1 ∆−1 = ∆−1 ∆2 ∆−1 = Ir .
Donc les r lignes de W1 forment une famille libre orthonormée de r vecteurs de Km , qu’on peutcompléter
W1
en une base orthonormée. Cela nous donne alors une matrice W = W2 ∈ Mm−r,r (K) telle que ∈
W2
Um (K). On pose enfin U = W ∗ = W1∗ W2∗ .
Calculons U ∗ AV :
W1 W1 ∆ 0
U ∗ AV = W AV =
AV1 AV2 = AV1 0 =
W2 W2 W2 AV1 0
Or W2 AV1 = W2 ∆∗ W1∗ = 0 car les colonnes de ∆W1 constituent des vecteurs orthogonaux aux vecteurs
des colonnes de W2 . D’où U ∗ AV = D.
24