You are on page 1of 167

ALGÈBRE LINÉAIRE ET ANALYSE NUMÉRIQUE

MATRICIELLE

Yves Achdou1

23 novembre 2005

1
UFR Mathématiques, Université Paris 7, Case 7012, 75251 PARIS Cedex 05, France and Laboratoire
Jacques-Louis Lions, Université Paris 6. achdou@math.jussieu.fr
2
Table des matières

1 Rappels d’Algèbre Linéaire 7


1.1 Espaces vectoriels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2 Applications Linéaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3 Matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4 Représentation matricielle d’une application linéaire . . . . . . . . . . . . . . . . 14
1.5 Changement de Bases, Matrices Semblables . . . . . . . . . . . . . . . . . . . . . 18
1.6 Transposition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.7 Espaces Euclidiens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.8 Espaces Hermitiens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.9 Procédé de Gram-Schmidt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.10 Déterminants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.11 Traces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

2 Réduction de matrices 29
2.1 Valeurs propres, vecteurs propres, polynôme caractéristique . . . . . . . . . . . . 29
2.2 Rappels sur les polynômes et polynômes de matrices . . . . . . . . . . . . . . . . 32
2.3 Polynôme minimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.4 Théorème de Hamilton-Cayley . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.5 Diagonalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.6 Triangulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.7 Matrices nilpotentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.8 Réduction de Jordan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.8.1 Réduction de Jordan des matrices triangularisables . . . . . . . . . . . . . 44
2.8.2 Applications aux systèmes d’équations différentielles linéaires . . . . . . . 45
2.9 Réduction simultanée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.10 Décomposition de Schur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.11 Valeurs singulières d’une matrice . . . . . . . . . . . . . . . . . . . . . . . . . . 49

3 Formes Quadratiques et Hermitiennes 53


3.1 Formes Bilinéaires sur des Espaces Vectoriels Réels . . . . . . . . . . . . . . . . . 53
3.1.1 Rang d’une forme bilinéaire . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.1.2 Formes Bilinéaires Symétriques et Orthogonalité . . . . . . . . . . . . . . 54
3.2 Formes Quadratiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.3 Formes Sesquilinéaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.4 Formes Hermitiennes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

3
4 TABLE DES MATIÈRES

4 Analyse matricielle 67
4.1 Normes vectorielles et matricielles . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.1.1 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.1.2 Les normes k kp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.1.3 Normes matricielles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.2 Nombre de conditionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
4.2.1 Sensibilité de la solution d’un système linéaire . . . . . . . . . . . . . . . . 72
4.3 Rayon spectral d’une matrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.3.1 Définition et propriétés . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.3.2 Suite des puissances d’une matrice . . . . . . . . . . . . . . . . . . . . . . 74
4.4 Sensibilité d’un problème aux valeurs propres . . . . . . . . . . . . . . . . . . . . 76

5 Méthodes Directes pour les Systèmes Linéaires 79


5.0.1 Élimination de Gauss sans pivotage . . . . . . . . . . . . . . . . . . . . . 80
5.0.2 Coût de la méthode d’élimination de Gauss. . . . . . . . . . . . . . . . . . 84
5.0.3 Utilisations de la factorisation LU . . . . . . . . . . . . . . . . . . . . . . 84
5.0.4 Algorithme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.0.5 Condition nécessaire et suffisante d’existence d’une factorisation LU, unicité 86
5.0.6 Un deuxième algorithme . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
5.0.7 Cas de matrices bandes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
5.1 Méthode de Cholesky . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
5.1.1 Existence de la factorisation de Cholesky . . . . . . . . . . . . . . . . . . 88
5.1.2 Algorithme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
5.1.3 Complexité de la factorisation de Cholesky . . . . . . . . . . . . . . . . . 90
5.2 Programmes Scilab pour les factorisation LU et de Cholesky . . . . . . . . . . . . 90
5.2.1 Factorisation LU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
5.2.2 Factorisation de Cholesky . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.3 Méthode de Gauss avec pivot partiel . . . . . . . . . . . . . . . . . . . . . . . . . 92
5.4 Factorisations QR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
5.4.1 Les réflexions de Householder . . . . . . . . . . . . . . . . . . . . . . . . . 97
5.4.2 Factorisations QR à l’aide des réflexions de Householder . . . . . . . . . . 97
5.4.3 Algorithme de factorisation QR avec des symétries de Householder . . . . 99
5.4.4 Les rotations de Givens . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
5.5 Problèmes aux moindres carrés . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

6 Méthodes Itératives Stationnaires 103


6.1 Principe et résultats généraux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
6.1.1 Principe général . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
6.1.2 Une condition suffisante dans le cas où A est hermitienne, définie positive 104
6.2 La méthode de Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
6.3 La méthode de Gauss-Seidel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.4 Méthodes SOR (successive over relaxation) . . . . . . . . . . . . . . . . . . . . . 108
6.5 Comparaisons des méthodes pour des matrices tridiagonales . . . . . . . . . . . . 110
6.6 Autres méthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
TABLE DES MATIÈRES 5

7 Méthodes de Descente 113


7.1 Principe des méthodes de descente . . . . . . . . . . . . . . . . . . . . . . . . . . 113
7.1.1 Minimisation de fonctions quadratiques . . . . . . . . . . . . . . . . . . . 113
7.1.2 Méthodes de descente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
7.1.3 Choix optimal de αn pour pn fixé . . . . . . . . . . . . . . . . . . . . . . . 114
7.2 Méthodes de gradient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
7.2.1 Principe des méthodes de gradient . . . . . . . . . . . . . . . . . . . . . . 114
7.2.2 Interprétation géométrique en dimension deux . . . . . . . . . . . . . . . 115
7.2.3 Méthodes du gradient à pas fixe . . . . . . . . . . . . . . . . . . . . . . . 115
7.2.4 Méthode du gradient à pas optimal . . . . . . . . . . . . . . . . . . . . . . 117
7.3 La méthode du Gradient Conjugué . . . . . . . . . . . . . . . . . . . . . . . . . . 119

8 Recherche de valeurs propres 125


8.1 Généralités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
8.1.1 Décomposition de Schur . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
8.1.2 Sensibilité d’un problème aux valeurs propres . . . . . . . . . . . . . . . . 125
8.1.3 Valeurs singulières d’une matrice . . . . . . . . . . . . . . . . . . . . . . 126
8.1.4 Norme de Frobenius . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
8.2 Méthodes partielles de recherche de valeurs propres . . . . . . . . . . . . . . . . . 127
8.2.1 La méthode de la puissance . . . . . . . . . . . . . . . . . . . . . . . . . . 127
8.2.2 Test d’arrêt pour la méthode de la puissance . . . . . . . . . . . . . . . . 128
8.2.3 Méthode de la puissance inverse . . . . . . . . . . . . . . . . . . . . . . . 129
8.2.4 Méthode de la puissance inverse avec translation . . . . . . . . . . . . . . 130
8.3 La méthode de Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
8.4 La méthode QR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
8.4.1 Factorisations QR d’une matrice . . . . . . . . . . . . . . . . . . . . . . . 133
8.4.2 Généralisation de la méthode de la puissance . . . . . . . . . . . . . . . . 136
8.4.3 La méthode QR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
8.4.4 Accélération de la méthode QR pour A ∈ Mn (R) . . . . . . . . . . . . . . 138
8.4.5 Démonstration du Théorème 8.8 . . . . . . . . . . . . . . . . . . . . . . . 139
8.5 Annexe : Distance entre deux sous-espaces de Cn . . . . . . . . . . . . . . . . . . 141

9 Problèmes 143
9.1 Partiel du 25 Novembre 2002 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
9.2 Partiel du 25 Novembre 2003. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
9.3 Partiel 2004 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
9.4 Partiel du 18 Novembre 2005 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
9.5 Examen du 30 Janvier 2003. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
9.6 Examen du 28 Janvier 2004. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
9.7 Examen du 3 Septembre 2003. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
9.8 Examen Janvier 2005 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
6 TABLE DES MATIÈRES
Chapitre 1

Rappels d’Algèbre Linéaire

On rappelle les résultats élémentaires (qu’il faut absolument connaı̂tre) en algèbre linéaire.
On donne la majorité des énoncés sans démonstration : il est fortement conseillé au lecteur de
faire toutes les démonstrations.

1.1 Espaces vectoriels


Définition 1.1 Soit E et I deux ensembles : Une famille, notée (xi )i∈I , xi ∈ E, d’éléments de
E indexée par I est une application de I dans E.

On désigne par K un corps commutatif. On prendra K = C (corps des nombres complexes) ou


K = R (corps des nombres réels).

Définition 1.2 Soit E un ensemble muni


– d’une loi de composition interne + : E × E → E, (u, v) 7→ u + v.
– d’une loi de composition externe · : K × E → E, (λ, u) 7→ λ · u.
On dit que (E, +, ·) est un espace vectoriel sur le corps K si
1. (E, +) est un groupe commutatif.
2. ∀λ ∈ K, ∀u, v ∈ E, λ · (u + v) = λ · u + λ · v.
3. ∀λ, µ ∈ K, ∀u ∈ E, (λ + µ) · u = λ · u + µ · u.
4. ∀λ, µ ∈ K, ∀u ∈ E, = λ · (µ · u) = (λµ) · u.
5. ∀u ∈ E, 1 · u = u.
On appelle vecteurs les éléments de E et scalaires les éléments de K.

Dans la suite, on omettra la notation “·” : λ · u = λu.

Définition 1.3 Soient (E, +, ·) un espace vectoriel sur le corps K et F un sous-ensemble de E.


On dit que F est un sous-espace vectoriel de E si
1. F est non vide.
2. F est stable par + : ∀u, v ∈ F, u + v ∈ F .
3. F est stable par · : ∀λ ∈ K, ∀v ∈ F, λv ∈ F .

Proposition 1.1 Soient (E, +, ·) un espace vectoriel sur le corps K et F un sous-ensemble de


E. L’ensemble F est un sous-espace vectoriel de E si et seulement si 0 ∈ E et E est stable par
combinaison linéaire, i.e. ∀λ, µ ∈ K, ∀u, v ∈ F, λu + µv ∈ F .

7
8 CHAPITRE 1. RAPPELS D’ALGÈBRE LINÉAIRE

Proposition 1.2 L’intersection d’une famille quelconque de sous-espaces vectoriels de E est un


sous-espace vectoriel de E.

Si F est un sous-espace vectoriel de E, alors (F, +, ·) est un espace vectoriel.

Définition 1.4 On appelle sous-espace vectoriel engendré par une famille (pas forcément finie)
A de vecteurs de E et on note Vect(A) le sous-espace vectoriel formé des combinaisons linéaires
(finies) des vecteurs de A :
( p
)
X
Vect(A) = x ∈ E : il existe p ∈ N, x1 , . . . , xp ∈ A, et λ1 , . . . , λp ∈ K tels que x = λi xi
i=1
(1.1)
On dit qu’un vecteur de Vect(A) est une combinaison linéaire des vecteurs de A .

Exercice. Vérifier que Vect(A) est bien un sous-espace vectoriel de E.

Lemme 1.1 Soit une famille A de vecteurs de E, Vect(A) est le plus petit sous-espace vectoriel
qui contient A.

Définition 1.5 On dit qu’une famille A de vecteurs de E est génératrice si Vect(A) =P E, c’est à
dire si pour tout x ∈ E, il existe p ∈ N, x1 , . . . , xp ∈ A , et λ1 , . . . , λp ∈ K tels que x = pi=1 λi xi .

Définition 1.6 On dit qu’une famille A de vecteurs de E est libre si pour toute famille finie
(x
P1p, . . . , xp ) de vecteurs de A, distincts deux à deux, et pour toute famille de scalaires (λ1 , . . . , λp ),
i=1 λi xi = 0 si et seulement si λi = 0 pour i = 1, . . . , p. On dit aussi que les vecteurs x1 , . . . , xp
sont linéairement indépendants.

Définition 1.7 Une famille A de vecteurs de E à la fois libre et génératrice est appelée une
base de E.

Proposition 1.3 Une famille A de vecteurs de E est une base si et seulement si, pour tout
x ∈ E, il existe un unique p ∈ N, une unique sous-famille de A avec Pp p vecteurs (x1 , . . . , xp ), et
une unique famille (λ1 , . . . , λp ) de scalaire non nuls tels que x = i=1 λi xi .

Exemple. Dans Kn , on utilise très souvent la base dite base canonique : cette base est formée
par les vecteurs ei , 1 ≤ i ≤ n :
 
0 ...1
 ..  ..
 .  .
 
 0  ...i − 1
 
ei =  
 1  ...i (1.2)
 0  ...i + 1
 
 ..  ..
 .  .
0 ...n
ou encore : la j-ème composante de ei est δij , (les δij sont les symboles de Kronecker : δij = 0
si j 6= i et δii = 1.)
1.1. ESPACES VECTORIELS 9

Définition 1.8 Soit k un entier positif. Soient V1 , . . . , Vk k sous-espaces vectoriels de E. On


appelle somme des sous-espace V1 , . . . , Vk et on note V1 + · · · + Vk le sous-espace vectoriel
k
!
[
V1 + · · · + Vk = Vect Vi (1.3)
i=1

Proposition 1.4 Soient V1 , . . . , Vk k sous-espaces vectoriels de E.


( k
)
X
V1 + · · · + V k = x ∈ E : il existe x1 ∈ V1 , . . . , xk ∈ Vk tels que x = xi . (1.4)
i=1

P
Définition 1.9 Si pour tout x ∈ V1 + . . . Vk la décomposition x = ki=1 xi , avec xi ∈ Vi , est
unique, alors
L on dit alors que les sous-espaces V1 , . . . , Vk sont en somme directe et on utilise la
notation ki=1 Vi ou encore V1 ⊕ · · · ⊕ Vk à la place de la notation V1 + . . . Vk .

Proposition 1.5 Pour que les sous-espaces V1 et V2 de E soient en somme directe, il faut et il
suffit que
V1 ∩ V2 = {0}. (1.5)

Définition 1.10 On dit que les sous-espaces V1 et V2 de E sont supplémentaires si et seulement


si V1 ⊕ V2 = E ou de manière équivalente si

V1 + V2 = E et V1 ∩ V2 = {0}. (1.6)

Proposition 1.6 (fondamentale) Soit (E, +, ·) un espace vectoriel sur K admettant une fa-
mille génératrice G de k vecteurs. Alors une famille libre F de vecteurs de E a un nombre fini ℓ
de vecteurs avec ℓ ≤ k, et on peut obtenir une nouvelle famille génératrice de E en échangeant
ℓ vecteurs de G avec ceux de F .

Démonstration. Par récurrence sur le nombre de vecteurs de F quand ce nombre est ≤ k.


Après, on montre qu’on ne peut pas avoir une famille libre avec k + 1 vecteurs.

Théorème 1.1 (de la base incomplète) Soit (E, +, ·) un espace vectoriel sur K admettant
une famille génératrice finie G. Soit L une famille libre de vecteurs de E. Alors il existe une
sous-famille G′ de G telle que L ∪ G′ soit une base de E.

Corollaire 1.1 Soit (E, +, ·) un espace vectoriel sur K admettant une famille génératrice finie.
Alors il existe au moins une base de E avec un nombre fini de vecteurs et toutes les bases de E
ont le même nombre de vecteurs. Ce nombre noté dim (E), est appelé la dimension de E et on
dit que E est de dimension finie.

Proposition 1.7 Si E est de dimension finie,


– toute famille génératrice de E a au moins dim (E) vecteurs.
– toute famille libre de E a au plus dim (E) vecteurs.
– une famille libre de E comportant dim (E) vecteurs est une base de E.
– une famille génératrice de E comportant dim (E) vecteurs est une base de E.
– tout sous-espace F de E est de dimension finie inférieure ou égale à dim (E). Si dim (F ) =
dim (E) alors F = E.
10 CHAPITRE 1. RAPPELS D’ALGÈBRE LINÉAIRE

– soient deux sous-espaces F et G de E. On a

dim (F + G) = dim (F ) + dim (G) − dim (F ∩ G).

En particulier, soient deux sous-espaces F et G tels que F ⊕ G = E. On a

dim (E) = dim (F ) + dim (G).

Soient k sous-espaces vectoriels F1 , . . . , Fk de E tels que F1 ⊕ · · · ⊕ Fk = E, on a


k
X
dim (E) = dim (Fi ).
i=1

Définition 1.11 Si un espace vectoriel E sur K n’admet pas de famille génératrice finie ou de
manière équivalente, si pour tout p ∈ N, il existe une famille libre avec p vecteurs de E, alors
on dit que E est dimension infinie.

Dans ce cours qui est surtout consacré à l’analyse numérique matricielle, il sera peu question
d’espaces vectoriels de dimension infinie.

1.2 Applications Linéaires


Définition 1.12 Soient (E, +, ·) et (F, +, ·) deux espaces vectoriels sur K. On dit que l’appli-
cation ℓ de E dans F est une application linéaire de E dans F si pour tout λ, µ ∈ K, pour tout
u, v ∈ E,
ℓ(λu + µv) = λℓ(u) + µℓ(v). (1.7)
On note L(E, F ) l’ensemble des applications linéaires de E dans F . On utilise la notation plus
courte L(E) pour L(E, E).

Exemple. L’application identité de E noté idE est une application linéaire de E dans E.

Proposition 1.8 Soient (E, +, ·), (F, +, ·) et (G, +, ·) trois espaces vectoriels sur K, ℓ ∈ L(E, F ),
et  ∈ L(F, G). La composée  ◦ ℓ est une application linéaire de E dans F :  ◦ ℓ ∈ L(E, G).

Proposition 1.9 L’ensemble des applications de E dans F , noté F E est un espace vectoriel,
quand on le munit de
– l’addition d’applications
– le produit par un scalaire.
L(E, F ) est un sous-espace vectoriel de (F E , +, ·), l’espace des applications de E dans F .

Définition 1.13 Une application linéaire de E dans K est appelée une forme linéaire.

Définition 1.14 Soit ℓ une une application linéaire de E dans F . On appelle noyau de ℓ l’image
réciproque de {0F } par ℓ. C’est un sous-espace vectoriel de E. Le noyau de ℓ est noté ker (ℓ),
(du mot anglais kernel (ou allemand kern) qui veut dire noyau).

ker(ℓ) = {x ∈ E : ℓ(x) = 0F } (1.8)


1.2. APPLICATIONS LINÉAIRES 11

Définition 1.15 Soit ℓ une une application linéaire de E dans F . L’image de ℓ (c’est à dire
l’image de E par ℓ) est un sous-espace vectoriel de F . Elle est notée Im(ℓ).

Im(ℓ) = {ℓ(x), x ∈ E} (1.9)

Définition 1.16 Soit ℓ une une application linéaire de E dans F . Le rang de ℓ, noté rang(ℓ)
est la dimension de Im(ℓ) (éventuellement infinie).

Soit ℓ une une application linéaire de E dans F . Il est clair que ℓ est injective si et seulement si
ker(ℓ) = {0E }.

Proposition 1.10 Soit ℓ une une application linéaire de E dans F . L’application ℓ est un
isomorphisme de E sur F , c’est à dire une application linéaire bijective de E sur F (à la fois
injective et surjective) si et seulement si il existe une application linéaire notée ℓ−1 de F dans
E telle que ℓ ◦ ℓ−1 = idF et ℓ−1 ◦ ℓ = idE .

Dans le cas où E est de dimension finie, on a le théorème du rang

Théorème 1.2 (du rang) Soient (E, +, ·) et (F, +, ·) deux espaces vectoriels sur K, E étant
de dimension finie. Soit ℓ une application linéaire de E dans F . On a l’identité

rang(ℓ) + dim (ker(ℓ)) = dim (E). (1.10)

Du Théorème du rang, on déduit en particulier que si E et F sont de dimension finie, une


condition nécessaire et suffisante pour qu’il existe un isomorphisme de E sur F est que dim (E) =
dim (F ).

Corollaire 1.2 Soient (E, +, ·) et (F, +, ·) des espaces vectoriels sur K de dimension finie et
tels que dim (E) = dim (F ). Soit ℓ une une application linéaire de E dans F . Alors les assertions
suivantes sont équivalentes
– ℓ est injective
– ℓ est surjective
– ℓ est un isomorphisme de E sur F .
– ℓ admet un inverse à gauche : il existe  ∈ L(F, E) telle que  ◦ ℓ = idF
– ℓ admet un inverse à droite : il existe  ∈ L(F, E) telle que ℓ ◦  = idE .
Si ℓ admet un inverse à droite (ou à gauche) , alors ℓ est inversible et  = ℓ−1 .

Le corollaire 1.2 s’applique particulièrement si E = F , et un endomorphisme de l’espace vectoriel


E inversible est appelé un automorphisme de E.
Donnons quelques résultats sur les formes linéaires :

Lemme 1.2 Soient (E, +, ·) un espace vectoriel sur K de dimension finie n. Soit ℓ une forme
linéaire non nulle sur E. Le noyau de ℓ est un sous-espace de E de dimension n − 1 (on dit un
hyperplan de E).
Réciproquement, pour tout hyperplan F de E, on peut trouver une forme linéaire ℓ sur E dont
le noyau est F .
12 CHAPITRE 1. RAPPELS D’ALGÈBRE LINÉAIRE

1.3 Matrices
Définition 1.17 Soient n et m deux entiers strictement positifs. On appelle matrice à n lignes
et m colonnes à coefficients dans K, un tableau à double entrée (aij ), 1 ≤ i ≤ n, 1 ≤ j ≤ m (un
tableau à double entrée étant une application de {1, . . . , n} × {1, . . . , m} dans K). Le premier
indice est l’indice de ligne et le deuxième indice est l’indice de colonne. Une matrice A à n lignes
et m colonnes à coefficients dans K est donc de la forme
 
a11 . . . a1,j . . . a1m
 .. .. .. 
 . . . 
 

A =  ai1 . . . ai,j . . . aim  
 .. .. .. 
 . . . 
an1 . . . an,j . . . anm

On note Mn,m (K) l’ensemble des matrices à n lignes et m colonnes à coefficients dans K. Pour
abréger, on note Mn (K) l’ensemble des matrices carrées à n lignes et n colonnes à coefficients
dans K. Les matrices de Mn (K) sont appelées matrices carrées d’ordre n.

Convention 1.1 On identifiera les matrices colonnes de Mn,1 (K) aux vecteurs de Kn .

Remarque 1.1 On pourra aussi employer la notation Kn×m pour Mn,m (K).

Définition 1.18 Soient A = (aij ) et B = (bij ) deux matrices de Mn,m (K). On définit la somme
des matrices A et B et on note A + B la matrices dont le coefficient situé sur la i-ème ligne et
la j-ème colonne est aij + bij , i = 1, . . . , n, j = 1, . . . , m.
Soient A = (aij ) une matrice de Mn,m (K) et λ ∈ K un scalaire. On définit le produit de la
matrice A par le scalaire λ et on note λA la matrices dont le coefficient situé sur la i-ème ligne
et la j-ème colonne est λaij , i = 1, . . . , n, j = 1, . . . , m.

Proposition 1.11 (Mn,m (K), +, ·) est un espace vectoriel sur K de dimension nm.

Définition 1.19 Soient m, n, p trois entiers naturels strictement positifs. Soient A = (aij )
une matrice de Mm,n (K) et B = (bij ) une matrice de Mn,p (K). On définit le produit AB
Pn la matrice de Mm,p (K) dont le coefficient situé sur la i-ème ligne et la j-ème colonne
comme
est k=1 aik bkj , i = 1, . . . , m, j = 1, . . . , p.
On vient de définir une loi de composition appelée produit matriciel.

Proposition 1.12 – Le produit matriciel est associatif : soient A ∈ Mm,n (K), B ∈ Mn,p (K),
C ∈ Mp,q (K).
A(BC) = (AB)C
– Le produit matriciel est distributif à gauche sur l’addition : soient A ∈ Mm,n (K), B1 , B2 ∈
Mn,p (K),
A(B1 + B2 ) = AB1 + AB2
– Le produit matriciel est distributif à droite sur l’addition : soient B ∈ Mn,p (K), A1 , A2 ∈
Mm,n (K),
(A1 + A2 )B = A1 B + A2 B
1.3. MATRICES 13

– Soient λ ∈ K, A ∈ Mm,n (K) et B ∈ Mn,p (K) :

(λA)B = A(λB) = λ(AB) = λAB

– L’élément neutre pour le produit dans Mn (K) est la matrice identité notée I ou In :
 
1 0 ... ... 0
 .. 
 0 1 ... . 
 
 .. 
I =  ... . . . . . . ..
. . 
 
 .. .. .. 
 . . . 0 
0 ... ... 0 1

Remarque 1.2 Dans Mn (K), le produit matriciel n’est pas commutatif, i.e. pour des matrices
A et B de Mn (K), on a en général AB 6= BA. Exercice : donner des exemples.

Définition 1.20 On dit que deux matrices A ∈ Mn (K) et B ∈ Mn (K) commutent si AB =


BA.

Exemple. Soit A ∈ Mn (K). Les puissances de A commutent entre elles :

∀p, q ∈ N, Ap Aq = Aq Ap = Ap+q

où l’on pose A0 = In , et Ap = A


| × ·{z
· · × A}.
p

Définition 1.21 Soient d1 , . . . , dn des scalaires. On notera Diag(d1 , . . . , dn ) la matrice de D ∈


Mn (K), dont les coefficients sont

Dij = di δij , 1 ≤ i, j ≤ n.

Une telle matrice est appelée matrice diagonale.

Proposition 1.13 Soit D = Diag(d1 , . . . , dn ) une matrice diagonale de Mn (K).


– Soit A une matrice de Mn,m (K). La matrice DA ∈ Mn,m (K) est obtenue en multipliant
les coefficients de la ième ligne de A par di , pour i = 1, . . . , n.
– Soit A une matrice de Mm,n (K). La matrice AD ∈ Mm,n (K) est obtenue en multipliant
les coefficients de la jème colonne de A par dj , pour j = 1, . . . , n.

Définition 1.22 On appelle permutation d’ordre n une bijection de {1, . . . , n}


sur {1, . . . , n}. L’ensemble des permutations d’ordre n compte n! éléments.

Définition 1.23 Soit σ une permutation d’ordre n, on associe à σ une matrice P σ ∈ Mn (K) :

Pijσ = δσ(i)j ,

c’est à dire
Pijσ = 1 si j = σ(i),
Pijσ = 0 si j 6= σ(i),
On dit que P σ est une matrice de permutation d’ordre n.
14 CHAPITRE 1. RAPPELS D’ALGÈBRE LINÉAIRE

Lemme 1.3 Soit P et Q deux matrices de permutation d’ordre n, alors P Q est une matrice de
permutation d’ordre n.

On peut définir les permutations élémentaires d’ordre n : pour 1 ≤ k < l ≤ n, σ k,l est la
permutation d’ordre n échangeant k et l en laissant les autres valeurs inchangées.

Proposition 1.14 Pour une permutation σ d’ordre n, il existe un entier p et une famille finie
(σ ki ,li )1≤i≤p de permutations élémentaires telle que σ = σ kp ,lp ◦ · · · ◦ σ k1 ,l1 . De plus, pour tous
les entiers p ayant la propriété précédente, −1p est invariant et ne dépend que de σ : ce nombre
est appelé la signature de la permutation σ, et noté s(σ).

Définition 1.24 Soient 1 ≤ k < l ≤ n, la matrice P kl ∈ Mn (K) définie par


Pijkl = δij si i 6= k et i 6= l
kl = δ
Pkj ∀1 ≤ j ≤ n
lj
kl
Plj = δkj ∀1 ≤ j ≤ n
est appelée matrice de permutation élémentaire d’ordre n.

De la Proposition 1.14, on déduit immédiatement le


Corollaire 1.3 Toute matrice de permutation d’ordre n peut se décomposer en un produit de
matrices de permutation élémentaire d’ordre n.

Proposition 1.15 Soient trois entiers positifs k < l ≤ n et P kl ∈ Mn (K) une matrice de
permutation élémentaire.
– Soit A ∈ Mn,m (K). Le produit à gauche de A par P kl revient à échanger les lignes k et l
de A, en laissant les autres lignes inchangées, i.e.

Bij = Aij si i 6= k et i 6= l

B = P A ⇔ Bkj = Alj
kl
∀1 ≤ j ≤ N
Blj = Akj ∀1 ≤ j ≤ N

– Soit A ∈ Mm,n (K). Le produit à droite de A par P kl revient à échanger les colonnes k et
l de A, en laissant les autres colonnes inchangées

1.4 Représentation matricielle d’une application linéaire


Soient F un espace vectoriel sur K de dimension n et E un espace vectoriel sur K de dimension
m. Soit (f1 , . . . , fn ) une base de F et (e1 , . . . , em ) une base de E. Soit ℓ une application linéaire
de E dans F . Pour chaque vecteur ej , 1 ≤ j ≤ m, on peut écrire ℓ(ej ) sur la base (fi )1≤i≤n : il
existe un unique n-uplet de scalaires (a1j , . . . , anj ) tels que
n
X
ℓ(ej ) = aij fi (1.11)
i=1
Pm
On a alors par linéarité de ℓ : pour tout x ∈ E, x = j=1 xj ej ,
n X
X m
ℓ(x) = ( aij xj )fi . (1.12)
i=1 j=1

Les coefficients aij , 1 ≤ i ≤ n, 1 ≤ j ≤ m, forment une matrice de Mn,m (K) :


1.4. REPRÉSENTATION MATRICIELLE D’UNE APPLICATION LINÉAIRE 15

Définition 1.25 On appelle représentation matricielle (ou matrice) de l’application linéaire ℓ


de E dans F relativement aux bases (ej )1≤j≤m de E et (fj )1≤j≤n de F la matrice A = (ai,j ) de
Mn,m (K) dont les coefficients sont définis par (1.11).

L’application ℓ est donc uniquement caractérisée par sa représentation matricielle relativement


aux bases (ej )1≤j≤m de E et (fi )1≤i≤n de F . On montre de plus que la représentation ma-
tricielle relativement aux bases (ej )1≤j≤m de E et (fi )1≤i≤n de F définit un isomorphisme de
(L(E, F ), +, ·) dans (Mn,m (K), +, ·), ce qui montre que la dimension de L(E, F ) est mn.
Cependant, cet isomorphisme n’est pas intrinsèque car il dépend des bases choisies.

On fait donc le choix d’une application linéaire canonique associée à une matrice A de Mn,m (K) :
on choisit E = Km , F = Kn , (ej )j=1,...,m la base canonique de Km , (fi )i=1,...,n la base canonique
de Kn et on considère l’application linéaire ℓ de L(Km , Kn ) dont la représentation matricielle
relativement aux bases (ej )1≤j≤m et (fi )1≤i≤n est A (c’est à dire ℓ est définie par (1.12)).

On a donc un isomorphisme canonique entre Mn,m (K) et L(Km , Kn ). De plus, grâce à la Conven-
tion 1.1, on voit que si ℓ ∈ L(Km , Kn ) et si A est sa matrice relativement aux bases canoniques,
alors pour tout vecteur v ∈ Km , ℓ(v) est le vecteur Av ∈ Mn,1 (K) = Kn (obtenu comme le pro-
duit matriciel Av défini dans la Définition 1.19, en voyant v comme une matrice de Mm,1 (K)).

Cet isomorphisme canonique permet de définir pour les matrices toutes les notions présentées
dans la Section 2, et d’obtenir pour les matrices les résultats analogues à ceux énoncés pour les
applications linéaires. Par exemple,
– La matrice In est associée canoniquement à l’identité idKn .
– le noyau d’une matrice A ∈ Mn,m (K), noté ker(A), est le noyau de l’application linéaire
canonique associée à A, et on a

ker(A) = {v ∈ Km : Av = 0Kn }. (1.13)

– l’image d’une matrice A ∈ Mn,m (K), notée Im(A), est l’image de l’application linéaire
canonique associée à A, et on a

Im(A) = {w ∈ Kn : ∃v ∈ Km tel que Av = w}. (1.14)

– Im(A) est le sous-espace vectoriel de Kn engendré par les colonnes de A.


– Le rang de A ∈ Mn,m (K) est la dimension de l’image de A. C’est le nombre maximal de
colonnes de A formant une famille libre de Kn (donc en particulier rang(A) ≤ min(m, n)).
Le produit matriciel correspond à la composition d’application linéaire : Soient A ∈ Mm,n (K)
et B ∈ Mn,p (K) deux matrices et ℓ ∈ L(Kn , Km ) et  ∈ L(Kp , Kn ) leur applications linéaires
canoniquement associées : alors l’application ℓ ◦  ∈ L(Kp , Km ) est canoniquement associée au
produit matriciel AB ∈ Mm,p (K). L’analogue matriciel de la Proposition 1.10 permet alors de
définir la notion d’inverse d’une matrice carrée :

Définition 1.26 Soit A une matrice de Mn (K). On dit que A est inversible si et seulement si
il existe une matrice de Mn (K), notée A−1 telle que

AA−1 = A−1 A = In .

et du Corollaire 1.2, on déduit

Proposition 1.16 Soit A une matrice de Mn (K). Les assertions suivantes sont équivalentes
16 CHAPITRE 1. RAPPELS D’ALGÈBRE LINÉAIRE

– A est inversible
– rang(A) = n
– ker(A) = {0Kn }
– A admet un inverse à gauche : il existe une matrice B ∈ Mn (K) telle que BA = In
– A admet un inverse à droite : il existe une matrice B ∈ Mn (K) telle que AB = In
Si A ∈ Mn (K) admet un inverse à droite (ou à gauche) B, alors A est inversible et B = A−1 .

Proposition 1.17 Soient A et B deux matrices inversibles de Mn (K). La matrice AB est


inversible et
(AB)−1 = B −1 A−1 .

On peut vérifier que pour n ≥ 2, le sous-ensemble de Mn (K) formé par les matrices inversibles
muni du produit matriciel est un groupe non commutatif.

On peut maintenant démontrer de nouvelles propriétés concernant les formes linéaires


Proposition 1.18 – Soit (E, +, ·) un espace vectoriel sur K de dimension finie n. Une fa-
mille de formes linéaires sur E (ℓi )i=1,...,m est libre si et seulement si m ≤ n et ∩m
i=1 ker(ℓi )
est un sous-espace de E de dimension n − m.
– Soit (E, +, ·) un espace vectoriel sur K de dimension finie n et F un sous-espace de E de
dimension m ≤ n. Il existe n − m formes linéaires indépendantes (ℓi )i=1,...,n−m telles que
n−m
F = ∩i=1 ker(ℓi ).
Démonstration. On a vu que dim(L(E, K)) = n, donc si (ℓi )i=1,...,m est libre, alors m ≤ n.
Démontrons l’implication ⇒ dans le premier point, par récurrence.
La propriété est vraie pour m = 1, c’est le Lemme 1.2.
m−1
Prenons m ≤ n et supposons la propriété vraie jusqu’à m − 1. L’ensemble ∩i=1 ker(ℓi ) est un
sous-espace de E de dimension n−m+1. Considérons l’application linéaire f (m−1) ∈ L(E, Km−1 ),
m−1
f (m−1) (x) = (ℓ1 (x), . . . , ℓm−1 (x)). On a ker(f (m−1) ) = ∩i=1 ker(ℓi ). Donc d’après l’hypothèse
de récurrence et le théorème du rang, rang(f (m−1) ) = m − 1. Il existe donc m − 1 vecteurs de E,
e1 , . . . , em−1 tels que (f (m−1) (e1 ), . . . , f (m−1) (em−1 )) soit une base de Km−1 . Ceci est équivalent
à dire que ∀z ∈ Km−1 , le système linéaire : trouver (xi )i=1,...,m−1 , xi ∈ K, tels que
m−1
X
xi f (m−1) (ei ) = z
i=1

a une solution unique. Ce système s’écrit


x1 ℓ1 (e1 ) + · · · + xm−1 ℓ1 (em−1 ) = z1 ,
..
.
x1 ℓi (e1 ) + · · · + xm−1 ℓi (em−1 ) = zi ,
..
.
x1 ℓm−1 (e1 ) + · · · + xm−1 ℓm−1 (em−1 ) = zm−1 .
Par suite, la matrice
B ∈ Mm−1 (K), Bij = ℓi (ej ),
est inversible.
Considérons maintenant l’application linéaire f (m) ∈ L(E, Km ), f (m) (x) = (ℓ1 (x), . . . , ℓm (x))
On a ker(f (m) ) = ∩m
i=1 ker(ℓi ) donc ker(f
(m) ) ⊂ ker(f (m−1) ), ce qui montre que

m − 1 ≤ rang(f (m) ) ≤ m,
1.4. REPRÉSENTATION MATRICIELLE D’UNE APPLICATION LINÉAIRE 17

en utilisant le théorème du rang. Supposons que rang(f (m) ) = m−1. Comme (f (m) (e1 ), . . . , f (m) )(em−1 ))
est une famille libre, c’est une base de Im(f (m) ). Pour tout y ∈ E, le système linéaire : trouver
(xi )i=1,...,m−1 , xi ∈ K, tels que
m−1
X
xi f (m) (ei ) = f (m) (y)
i=1

a une solution unique. Ce système s’écrit

x1 ℓ1 (e1 ) + · · · + xm−1 ℓ1 (em−1 ) = ℓ1 (y),


..
.
x1 ℓi (e1 ) + · · · + xm−1 ℓi (em−1 ) = ℓi (y),
..
.
x1 ℓm−1 (e1 ) + · · · + xm−1 ℓm−1 (em−1 ) = ℓm−1 (y),
x1 ℓm (e1 ) + · · · + xm−1 ℓm (em−1 ) = ℓm (y).

Il est équivalent à :
   
x1 ℓ1 (y)
 ..   .. 
 .  = B −1  . ,
xm−1 ℓm−1 (y)
x1 ℓm (e1 ) + · · · + xm−1 ℓm (em−1 ) = ℓm (y).

On en déduit qu’il existe (αi )i=1,...,m−1 tels que ∀y ∈ E,

m−1
X
ℓm (y) = αi ℓi (y),
i=1

ce qui contredit l’hypothèse (ℓ1 , . . . , ℓm ) libre. Donc rang(f (m) ) = m, ce qui prouve l’hypothèse
de récurrence au rang m.
La démonstration de la réciproque dans le premier point est laissée au lecteur.
Pour démontrer le deuxième point, on choisit une base de F : (e1 , . . . P , em ) que l’on complète avec
(em+1 , . . . , em ) pour former une base de E. Tout vecteur s’écrit x = ni=1 xi ei et on choisit pour
i ≤ n − m : ℓi (x) = xi+m . Les formes linéaires (ℓi )i=1,...n−m sont linéairement indépendantes et
n−m
∩i=1 ker(ℓi ) = F .

On a démontré au passage la proposition

Proposition 1.19 – Soit (E, +, ·) un espace vectoriel sur K de dimension finie n. Soit
m ≤ n et (ℓi )i=1,...,m une famille de formes linéaires sur E, linéairement indépendantes.
Alors si f ∈ L(E, Km ) est l’application
 
ℓ1 (x)
 .. 
f (x) =  . ,
ℓm (x)

alors rang(f ) = m.
18 CHAPITRE 1. RAPPELS D’ALGÈBRE LINÉAIRE

1.5 Changement de Bases, Matrices Semblables


De la Proposition 1.16, on tire facilement
Proposition 1.20 Soit P ∈ Mn (K) une matrice inversible. Les colonnes de P forment une
base de Kn . Réciproquement, soit E un espace vectoriel sur K de dimension n, et deux bases B
et B ′ de E : la matrice dont la j-ème colonne contient les coordonnées du j-ème vecteur de B ′
dans la base B, pour 1 ≤ j ≤ n, est inversible.

Définition 1.27 Soit B une base de Kn . La matrice P dont les colonnes sont les vecteurs de la
base B est appelée matrice de passage ou matrice de changement de base de la base canonique
vers la base B.
Plus généralement, si E est un espace vectoriel de dimension n sur K, et si B et B ′ sont deux
bases de E, on appelle matrice de changement de base de B vers B ′ la matrice dont la j-ème
colonne contient les coordonnées du j-ème vecteur de B ′ dans la base B, pour 1 ≤ j ≤ n.

Proposition 1.21 Soit E un espace vectoriel sur K de dimension n. Si P est la matrice de


passage d’une base B de E vers une base B ′ , alors P −1 est la matrice de passage de B ′ vers B.
Si les coordonnées d’un vecteur dans la base B sont données par le vecteur x ∈ Kn , alors ses
coordonnées dans la base B ′ sont données par le vecteur P −1 x.

En particulier, si une matrice P ∈ Mn (K) est inversible et transforme la base canonique de Kn


en une nouvelle base (f1 , . . . , fn ) de Kn (formée par les colonnes de P ), on a pour tout vecteur
x, (dont les coordonnées dans la base canonique sont xi , 1 ≤ i ≤ n)
n
X
x= yi fi avec y = P −1 x. (1.15)
i=1

On déduit de la Proposition 1.21 la


Proposition 1.22 Soit E un espace vectoriel sur K de dimension n. Soient B et B ′ deux bases
de E et P la matrice de passage de B vers B ′ . Si ℓ est une application linéaire de L(E) dont la
matrice dans la base B est A, alors la matrice de ℓ dans la base B ′ est B = P −1 AP .

Définition 1.28 On dit que deux matrices A et B sont semblables si il existe une matrice
inversible P telle que
B = P −1 AP. (1.16)

La Proposition 1.22 montre donc que toutes les représentations matricielles d’une même appli-
cation linéaire ℓ ∈ L(E) sont semblables. Des Propositions 1.22 et 1.20, on déduit que deux
matrices semblables ont même rang.

1.6 Transposition
Définition 1.29 Soit A = (aij ) une matrice de Mn,m (K). On définit la matrice transposée de
A et on note AT la matrice de Mm,n (K) dont le coefficient situé sur la i-ème ligne et la j-ème
colonne est aji pour i = 1, . . . , m et j = 1, . . . , n.

Exemple. Le transposée de la matrice colonne V ∈ Mn,1 (K) est une matrice ligne V T ∈
M1,n (K).
On démontre facilement la
1.6. TRANSPOSITION 19

Proposition 1.23 Soient A ∈ Mn,m (K) et B ∈ Mm,p (K). On a

(AB)T = B T AT . (1.17)

a) Rang et Inversibilité Soit A une matrice de Mn,m (K). Le rang de AT est le nombre
maximal de colonnes de AT linéairement indépendantes, donc de lignes de A linéairement
indépendantes. Par suite, si ker(A) 6= {0}, il existe une combinaison linéaire nulle des lignes
de A avec des coefficients non tous nuls et rang(AT ) < n. En particulier, on vient de démontrer
le
Lemme 1.4 Soit A ∈ Mn (K). On a

A inversible ⇔ AT inversible (1.18)

On peut aussi par un simple calcul utilisant (1.17), prouver la


Proposition 1.24 Si A ∈ Mn (K) est inversible, alors

(AT )−1 = (A−1 )T . (1.19)

Lemme 1.5 Le rang d’une matrice A ∈ Mm,n est le nombre maximal de lignes de A linéairement
indépendantes et on a rang(A)=rang(AT ).

Démonstration. Soit q le nombre maximal de lignes de A formant un système libre (on sait que
q=rang(AT )) et r le rang de A, i.e. le nombre maximal de colonnes de A formant un système libre.
Alors en
Psupposant que les lignes de A : Li1 ,. . ., Liq formentPun système libre, on a ∀i 6= i1 , . . . , iq ,
Li =P qk=1 αi,k Lik . Un vecteur de Im(A) s’écrit yi = n
i=1 L
P i,j xj , i = 1, . . . , m donc on a
yi = k=1 αi,k yik , i 6= i1 , . . . iq . Donc Im(A) ⊂ {y ∈ K , yi = qk=1 αi,k yik , i 6= i1 , . . . , iq } qui
q m

est un sous-espace
P de E de dimension q d’après la Proposition 1.18 (car les formes linéaires
y 7→ yi − qk=1 αi,k yik , i 6= i1 , . . . , iq sont linéairement indépendantes). Mais on sait que
dim (Im(A)) = r donc r ≤ q. En faisant le même raisonnement sur la matrice AT ∈ Mn,m ,
on voit que q ≤ r. Donc q = r.

On peut caractériser le rang d’une matrice en étudiant l’inversibilité de matrices extraites :


extraire une matrice d’une matrice plus grande, c’est ne conserver de la matrice initiale que les
coefficients situés sur certaines lignes et sur certaines colonnes. Plus précisément,
Définition 1.30 Soient m, n, m′ , n′ quatre entiers strictement positifs, avec m′ ≤ m et n′ ≤ n.
Soit σ une application strictement croissante de {1, . . . , m′ } dans {1, . . . , m}, et τ une application
strictement croissante de {1, . . . , n′ } dans {1, . . . , n}. Soit A ∈ Mm,n (K). On définit la matrice
extraite Aσ,τ ∈ Mm′ ,n′ (K) comme la matrice dont les coefficients sont bi,j = aσ(i),τ (j) , 1 ≤ i ≤
m′ , 1 ≤ j ≤ n ′ .
De la caractérisation du rang d’une matrice comme le nombre maximal de colonnes linéairement
indépendantes, on déduit la
Proposition 1.25 Soit A ∈ Mn,m (K). Le rang de A est le plus grand entier p tel qu’on puisse
extraire de A une matrice carrée B ∈ Mp (K) qui soit inversible.

Remarque 1.3 On en déduit avec le Théorème du rang que si A ∈ Mm,n (K), alors n −
dim (Ker(A)) = m − dim (Ker(AT )).
20 CHAPITRE 1. RAPPELS D’ALGÈBRE LINÉAIRE

b) Matrices symétriques et antisymétriques.

Définition 1.31 Une matrice A ∈ Mn (K) est symétrique si AT = A.


Une matrice A ∈ Mn (K) est antisymétrique si AT = −A.

Les matrices symétriques forment un sous-espace de Mn (K) de dimension n(n + 1)/2. Une
base de ce sous-espace est formée par les matrices (S ij )1≤i≤j≤n dont les coefficients sont sij kl =
δki × δlj + δli × δkj , k = 1, . . . , n, l = 1, . . . , n.
Les matrices antisymétriques forment un sous-espace de Mn (K) de dimension n(n − 1)/2,
supplémentaire au sous-espace des matrices symétriques. Une base de ce sous-espace est formée
par les matrices (Aij )1≤i<j≤n dont les coefficients sont aij
kl = δki × δlj − δli × δkj , k = 1, . . . , n,
l = 1, . . . , n.
Soit A ∈ Mn (K), la partie symétrique de A est 12 (A + AT ), et sa partie antisymétrique est
1 T
2 (A − A ).

c) Dualité Il est naturel de poser la question : quelle est la notion correspondant à la trans-
position de matrices pour les applications linéaires ? La réponse à cette question fait intervenir
la notion de dualité :

Définition 1.32 On appelle dual d’un espace vectoriel E sur K, l’espace E ∗ des formes linéaires
sur E, c’est à dire E ∗ = L(E, K).

Supposons maintenant E de dimension n. Si (ei )1≤i≤n est une base de E, on peut montrer que la
famille (e∗i )1≤i≤n , avec e∗i (ej ) = δij est une base de E ∗ , appelée base duale de la base (ei )1≤i≤n .
La forme linéaire e∗i n’est rien d’autre que l’application qui à un vecteur x de E associe sa i-ème
coordonnée dans la base (ei )1≤i≤n . Pn Pn
L’application qui à un vecteur x = ∗ ∗
i=1 xi ei associe la forme linéaire x = i=1 xi ei est

un isomorphisme de E sur E . Cet isomorphisme dépend de la base choisie ; ce n’est pas un
isomorphisme intrinsèque.

Définition 1.33 Soient E et F deux espaces vectoriels sur K. Soit une application linéaire
ℓ ∈ L(E, F ), on voit que pour tout v ∈ F ∗ , v ◦ ℓ ∈ E ∗ . On définit alors l’application linéaire
ℓT ∈ L(F ∗ , E ∗ ) par ℓT (v) = v ◦ ℓ.

Soit (ei )1≤i≤m une base de E et (e∗i )1≤i≤m sa base duale. Soit (fi )1≤i≤n une base de F et (fi∗ )1≤i≤n
sa base duale. Soit A ∈ Mn,m P(K), A = (ai,j )1≤i≤n,1≤j≤m estP la matrice de ℓ relativement aux
base (ei ) et (fj ), i.e. ℓ(ei ) = nj=1 aji fj . On a (fk∗ ◦ ℓ)(ei ) = nj=1 aji fk∗ (fj ) = aki , ce qui veut
P
dire que ℓT (fk∗ ) = fk∗ ◦ ℓ = m ∗ T ∗
i=1 aki ei . La matrice de ℓ relativement aux bases (fj ) de F et

(e∗i ) de E ∗ est donc AT . La notion de transposition de matrice est donc l’analogue de la notion
de transposition d’applications linéaires.

1.7 Espaces Euclidiens


Définition 1.34 Un espace vectoriel E sur R, de dimension finie n, et muni d’un produit sca-
laire (x, y) 7→ hx, yi, c’est à dire d’une forme bilinéaire sur E × E, symétrique et définie positive,
est appelé espace Euclidien. Plus explicitement, on a
– symétrie : ∀x, y ∈ E, hx, yi = hy, xi.
– ∀λ, µ ∈ R, ∀x, y, z ∈ E, hx, λy + µzi = λhx, yi + µhx, zi.
– ∀x ∈ E, hx, xi ≥ 0 et hx, xi = 0 ⇐⇒ x = 0.
1.7. ESPACES EUCLIDIENS 21

P
Exemple. L’espace Rn du produit scalaire canonique : hx, yi = ni=1 xi yi , est un espace Eucli-
dien. Remarquons que hx, yi s’écrit aussi xT y = y T x en utilisant le produit matriciel.

Lemme p 1.6 Soit E un espace Euclidien. L’application k.k, E → R+ , qui à un vecteur x associe
kxk = hx, xi est une norme, appelé norme euclidienne associée à h.i : on a
– ∀λ ∈ R, ∀v ∈ E, kλvk = |λ|kvk.
– ∀v, w ∈ E, kv + wk ≤ kvk + kwk.
– ∀v ∈ E, kvk = 0 ⇒ v = 0E .

Lemme 1.7 Soit E un espace Euclidien. On a l’inégalité de Cauchy-Schwarz ∀v, w ∈ E,


|hv, wi| ≤ kvkkwk.

Définition 1.35 – Deux vecteurs x et y d’un espace E Euclidien sont orthogonaux si hx, yi =
0. On note alors x ⊥ y.
– Soit K une partie de E : K ⊥ est le sous-ensemble de E formés des vecteurs othogonaux
aux vecteurs de K. K ⊥ est un sous-espace vectoriel de E.
– On dit qu’une famille de vecteurs de E est orthogonale si les vecteurs qui la composent
sont deux à deux orthogonaux.
– On dit qu’une famille de vecteurs de E est orthonormée ou orthonormale si elle est ortho-
gonale et si chacun de ses vecteurs v est tel que kvk = 1.

Proposition 1.26 Soit E un espace Euclidien.


– Soient F et G deux sous-espaces vectoriels de E tels que F ⊂ G⊥ . Alors F ∩ G = {0}.
– Soit F un sous-espace vectoriel de E. On a F ⊕ F ⊥ = E. On appelle F ⊥ le supplémentaire
orthogonal de F .

Proposition 1.27 Soit E un espace Euclidien. Une famille de n vecteurs non nuls de E, deux
à deux orthogonaux est une base. On dit que la base est orthogonale. Si les vecteurs ont de plus
norme 1, on parle de base orthonormale.

Dans les espaces Euclidiens, le produit scalaire permet d’identifier E et E ∗ :


Proposition 1.28 Soit E un espace Euclidien, alors pour tout f ∗ ∈ E ∗ , il existe un unique
f ∈ E tel que f ∗ (v) = hf, vi ∀v ∈ E. L’application qui à f ∗ associe f est un isomorphisme
intrinsèque (il ne dépend que du produit scalaire). Il permet d’identifier E à E ∗ .
Démonstration. Soit (ei )1≤i≤n une base de E. On note gij = hei , ej i et G la matrice de Mn (R)
dont les coefficients sont les gij . La matrice G est inversible, car le produit scalaire est défini
positif (démontrer en détail pourquoi G est inversible).
Définissons un vecteur ei tel que, pour tout vecteur x,

hei , xi = e∗i (x) = xi

où e∗i est la forme linéaire qui à un vecteur x fait correspondre sa ième composante xi dans la
base (e1 , . . . , en ). P P
On cherche ei sous la forme : ei = nj=1 αij ej . Alors hei , ej i = nk=1 αik gkj = e∗i (ej ) = δij . On
P
doit résoudre nk=1 αik gkj = δij , j = 1, . . . , n. À i fixé, c’est un système à n équations et n
inconnues, dont la matrice est G. Le système a pour solution unique la ième colonne de G−1 .
On a donc montré l’existence P et l’unicité de ei . La famille (ei )i=1,...,n est une base de E : en effet,
s’il existe x1 , . . . , xn tels que nj=1 xj ej = 0, on prend le produit scalaire avec ei , i = 1, . . . , n ,
22 CHAPITRE 1. RAPPELS D’ALGÈBRE LINÉAIRE

ce qui conduit à xi = 0, i = 1, . . . , n. P
Pour le vecteur f ∗ de E ∗ , le vecteur f = ni=1 f ∗ (ei ) ei est l’unique vecteur tel que f ∗ (v) =
hf, vi ∀v ∈ E.

Remarque 1.4 La base (ei )i=1,...,n de E construite est l’image de la base duale (e∗i )i=1,...,n de
E ∗ construite ci dessus par l’isomorphisme intrinsèque de E ∗ sur E construit ci-dessus.

Remarque 1.5 Si la base (ei )i=1,...,n est orthonormée, alors ei = ei , i = 1, . . . , n.

Soient deux espaces Euclidiens E et F et ℓ une application linéaire de E dans F . On définit


l’application adjointe de ℓ et on note ℓ∗ l’application linéaire de F dans E définie par

hℓ(u), vi = hu, ℓ∗ (v)i. (1.20)

Soient (ei )1≤i≤m une base de E et (fi )1≤i≤n une base de F . Soit A ∈ Mn,m (R) la matrice de
 
ℓ relativement à ces deux bases. Soient ei 1≤i≤m et f i 1≤i≤n les bases de E et F définies
 
ci-dessus. la matrice de ℓ∗ relativement aux bases f i 1≤i≤n et ei 1≤i≤m est AT .
En choisissant E = Rm et F = Rn et en prenant (ei )1≤i≤m et (fi )1≤i≤n les bases canoniques
(donc orthonormées), on voit que ∀A ∈ Mn,m (R), ∀u ∈ Rm , ∀v ∈ Rn ,

v T Au = hAu, viRn = hu, AT viRm = uT AT v,

ce qui est aussi une conséquence de (1.17). Par analogie à ℓ∗ , on emploiera aussi la notation A∗
pour la matrice AT , A ∈ Mn (R).
On peut montrer la

Proposition 1.29 Soit A ∈ Mn (R), on a

ker(AT ) = (Im(A))⊥ ,
(1.21)
Im(AT ) = (ker(A))⊥ .

Définition 1.36 – On dit que A ∈ Mn (R) est normale si AAT = AT A.


– On dit que A ∈ Mn (R) est orthogonale ou unitaire si AAT = AT A = I, ou de manière
équivalente si A−1 = AT .

Remarque 1.6 Il est clair qu’une matrice A ∈ Mn (R) symétrique est normale, et qu’une
matrice orthogonale est normale.

Proposition 1.30 Une matrice A ∈ Mn (R) est orthogonale si et seulement si ses colonnes
forment une base orthonormée de Rn . Une matrice A ∈ Mn (R) est orthogonale si et seulement
si ses lignes forment une base orthonormée de Rn .
Une matrice orthogonale O ∈ Mn (R) est donc la matrice de passage de la base canonique (donc
orthonormale) de Rn vers une base orthonormale. Réciproquement, si B et B ′ sont deux bases
orthonormales de Rn , la matrice de passage O de B vers B ′ est orthogonale. Dans ce cas, si
A (resp. B) est la représentation matricielle de ℓ ∈ L(Rn ) dans B, (resp. B ′ ), la formule de
changement de base s’écrit aussi B = OT AO.
1.8. ESPACES HERMITIENS 23

1.8 Espaces Hermitiens


Définition 1.37 Un espace vectoriel E sur C, de dimension finie n, et muni d’un produit sca-
laire hermitien (x, y) 7→ hx, yi, c’est à dire d’une forme sesquilinéaire sur E × E, hermitienne
et définie positive, est appelé espace Hermitien. Plus explicitement, on a
– ∀x, y ∈ E, hx, yi = hy, xi.
– ∀λ, µ ∈ C, ∀x, y, z ∈ E, hx, λy + µzi = λ̄hx, yi+ µ̄hx, zi et hλy + µz, xi = λhy, xi+ µhz, xi.
– ∀x ∈ E, hx, xi ≥ 0 et hx, xi = 0 ⇐⇒ x = 0.
Pn
Exemple. L’espace Cn du produit scalaire hermitien canonique hx, yi = i=1 xi y¯i est un espace
hermitien.

Lemme p 1.8 Soit E un espace hermitien. L’application k.k, E → R+ , qui à un vecteur x associe
kxk = hx, xi est une norme : on a
– ∀λ ∈ C, ∀v ∈ E, kλvk = |λ|kvk.
– ∀v, w ∈ E, kv + wk ≤ kvk + kwk.
– ∀v ∈ E, kvk = 0 ⇒ v = 0E .
et l’inégalité de Cauchy-Schwarz : ∀v, w ∈ E, |hv, wi| ≤ kvkkwk.

Comme pour les espaces Euclidiens, on peut aussi définir les notions d’orthogonalité pour le
produit scalaire hermitien, de sous-espace orthogonal à une partie de E, de bases orthogonales
et orthonormées. On peut aussi définir la notion d’application linéaire adjointe :

Définition 1.38 Soient deux espaces hermitiens E et F et ℓ une application linéaire de E dans
F . On définit l’application adjointe de ℓ et on note ℓ∗ l’application linéaire de F dans E définie
par
hℓ(u), vi = hu, ℓ∗ (v)i. (1.22)

Proposition 1.31 Soient deux espaces hermitiens E et F , et (e1 , . . . , em ), (f1 , . . . , fn ) des bases
orthonormées de E et de F . Soit ℓ une application linéaire de E dans F , dont la matrice
relativement aux bases (e1 , . . . , em ) et (f1 , . . . , fn ) est A ∈ Mn,m (C). La matrice de ℓ∗ dans les
bases (f1 , . . . , fn ), (e1 , . . . , em ) est

A∗ = (Ā)T , i.e. a∗ij = aji , i = 1, . . . , m; j = 1, . . . , n (1.23)

La matrice A∗ est appelée matrice adjointe, elle vérifie

hAu, vi = hu, A∗ vi, ∀u ∈ Cm , ∀v ∈ Cn .

On peut montrer la

Proposition 1.32 Soit A ∈ Mn (C), on a

rang(A∗ ) = rang(A),
ker(A∗ ) = (Im(A))⊥ , (1.24)
Im(A∗ ) = (ker(A))⊥ .

où l’orthogonalité est prise par rapport au produit scalaire hermitien dans Cn .

Définition 1.39 – Une matrice A ∈ Mn (C) est hermitienne si A∗ = A.


– Une matrice A ∈ Mn (C) est normale si AA∗ = A∗ A.
24 CHAPITRE 1. RAPPELS D’ALGÈBRE LINÉAIRE

– Une matrice A ∈ Mn (C) est unitaire si AA∗ = A∗ A = In .


Remarque 1.7 Il est clair qu’une matrice hermitienne est normale. Une matrice unitaire est
normale.
On remarquera que l’ensemble des matrices hermitiennes n’est pas un sous-espace de Mn (C)
(comme espace sur C). On a l’analogue de la Proposition 1.30 pour les matrices réelles :
Proposition 1.33 Une matrice A ∈ Mn (C) est unitaire si et seulement si ses colonnes forment
une base orthonormée de Cn . Une matrice A ∈ Mn (C) est unitaire si et seulement si ses lignes
forment une base orthonormée de Cn .
Une matrice unitaire A ∈ Mn (C) est donc la matrice de passage de la base canonique (donc
orthonormale) de Cn vers une base orthonormale. Réciproquement, si B et B ′ sont deux bases
orthonormales de Cn , la matrice de passage de B vers B ′ est unitaire.

1.9 Procédé de Gram-Schmidt


Dans cette section, E est soit un espace Euclidien (espace vectoriel sur R, de dimension finie,
muni d’un produit scalaire) ou un espace hermitien (espace vectoriel sur C, de dimension finie,
muni d’un produit scalaire hermitien). On note h, i le produit scalaire. Le but est ici de décrire
le procédé (ou algorithme) de Gram-Schmidt, permettant de construire des bases orthonormales
de E. Le procédé de Gram-Schmidt est en fait l’essence de la démonstration du résultat suivant

Théorème 1.3 Soit (f1 , . . . , fn ) une famille libre de vecteurs de E. Il existe une famille ortho-
normée (e1 , . . . , en ) de vecteurs de E, telle que,
Vect(e1 , . . . , ep ) = Vect(f1 , . . . , fp ), ∀p ≤ n. (1.25)
De plus, si E est un espace euclidien, la famille (e1 , . . . , en ) est unique à une multiplication
près des vecteurs par −1. Si E est un espace hermitien, la famille (e1 , . . . , en ) est unique à une
multiplication près des vecteurs par un nombre complexe de module 1.
Démonstration. On procède par récurrence sur n : pour n = 1, e1 = kf11 k f1 est bien l’unique
vecteur normé (à une multiplication près par −1 si E est euclidien, par un nombre complexe de
module 1 si E est hermitien) tel que Vect(e1 ) = Vect(f1 ).
Supposons la propriété vrai jusqu’à n−1 < dim(E). Soit (f1 , . . . , fn ) une famille libre de vecteurs
de E. D’après l’hypothèse de récurrence, il existe une famille orthonormée (e1 , . . . , en−1 ) de
vecteurs de E telle que,
Vect(e1 , . . . , ep ) = Vect(f1 , . . . , fp ), ∀p ≤ n − 1, (1.26)
et cette famille est unique aux multiplications mentionnées plus haut près.
La famille (e1 , . . . , en−1 , fn ) est libre et engendre le même sous-espace vectoriel que (f1 , . . . , fn ).
Cherchons en sous la forme
n−1
X
en = β(fn + ap ep ) (1.27)
p=1

pour que en ∈ Vect(e1 , . . . , en−1 )⊥ et ken k = 1 ; on obtient aisément que


a1 = −hfn , e1 i
..
.
an−1 = −hfn , en−1 i
1.10. DÉTERMINANTS 25

et que
n−1
X
2 2
ken k = |β| kfn − hfn , ep iep k2
p=1
Pn−1
Mais fn − p=1 hfn , ep iep 6= 0 car fn 6∈ Vect(e1 , . . . , en−1 ). Donc il existe un unique scalaire β
répondant à la question, à une multiplication près par −1 si E est euclidien, par un nombre
complexe de module 1 si E est hermitien.
On a alors construit une famille (e1 , . . . , en ) répondant à la question.

Si (f1 , . . . , fn ) est une base de E, le procédé de Gram-Schmidt permet d’en déduire une base
orthonormale.

1.10 Déterminants
Définition 1.40 On note Sn l’ensemble des permutations d’ordre n (bijections de l’ensemble
de {1, . . . , n}). Soit A ∈ Mn (K). On définit le déterminant de A comme le scalaire

X n
Y
det(A) = s(σ) ai,σ(i) . (1.28)
σ∈Sn i=1

où Sn est l’ensemble des permutations d’ordre n et pour tout σ ∈ Sn , s(σ) est la signature de
σ.

Remarque 1.8 On voit que pour calculer le déterminant de A ∈ Mn (K) par la formule (1.28),
il faut effectuer n! sommes et n ∗ n! produits. Ce nombre d’opérations devient très vite énorme
et on verra dans ce cours d’autres façons beaucoup plus rapides de calculer le déterminant de A.

On a les trois propriétés


1. L’application qui à une colonne v (resp. une ligne v T ) de A associe det(A) (toutes les
autres colonnes (resp. lignes) étant fixées) est une application linéaire. En particulier, si
une matrice A contient une colonne ou une ligne nulle, son déterminant est nul. L’ap-
plication déterminant peut être vue comme une forme n-linéaire sur le produit d’espaces
n
K
| × ·{z · · × Kn}.
n
2. Soit A ∈ Mn (K) et B une matrice obtenue en échangeant deux colonnes de A en lais-
sant les autres inchangées. On a det(B) = − det(A). On dit que la forme n-linéaire sur
n
K
| × ·{z · · × Kn} est alternée. Ceci implique que si A comporte au moins deux colonnes égales
n
(ou au moins deux lignes égales) alors det(A) = 0.
3. det(In ) = 1.
On peut en fait montrer le

Théorème 1.4 (fondamental) L’ensemble des applications de Mn (K) dans K ayant les deux
premières propriétés ci-dessus est un espace vectoriel de dimension un, engendré par l’application
A 7→ det(A).
L’application A 7→ det(A) est la seule application de Mn (Kn ) dans K ayant les trois propriétés
ci-dessus.
26 CHAPITRE 1. RAPPELS D’ALGÈBRE LINÉAIRE

Soit B une matrice de Mn (K). L’application qui à A ∈ Mn (K) associe det(BA) a les deux
premières propriétés ci-dessus, et vérifie de surcroı̂t det(BIn ) = det(B). Donc, d’après le Théorème
1.4, cette application est en fait A 7→ det(A) det(B).
Proposition 1.34 Soient A et B deux matrices de Mn (K). On a

det(AB) = det(A) det(B) = det(BA). (1.29)

On a aussi la
Proposition 1.35 Soit A ∈ Mn (K). On a

det(AT ) = det(A). (1.30)

Démonstration.
X n
Y
det(A) = s(σ) ai,σ(i)
σ∈Sn i=1
X n
Y
= s(σ) aσ−1 (i),i caractère bijectif de σ
σ∈Sn i=1
X n
Y
= s(σ −1 ) aσ−1 (i),i car s(σ −1 ) = s(σ)
σ∈Sn i=1
X n
Y
= s(σ) aσ(i),i car Sn = {σ −1 , σ ∈ Sn }
σ∈Sn i=1

= det(AT ).

On déduit de la Proposition 1.34 et des propriétés de l’application A 7→ det(A) les


Lemme 1.9 Si une matrice P ∈ Mn (K) est inversible, alors det(P ) 6= 0 et on a det(P −1 ) =
(det(P ))−1 .

Lemme 1.10 Soient A et B deux matrices de Mn (K), semblables : on a det(A) = det(B).

On déduit des deux Lemmes précédents la


Proposition 1.36 Une matrice A ∈ Mn (K) est inversible si et seulement si det(A) 6= 0.
Démonstration. Si A n’est pas inversible, A est semblable à une matrice dont une colonne au
moins est nulle, et d’après le Lemme 1.10, det(A) = 0. On conclut alors avec le Lemme 1.9.

Définition 1.41 Soit A ∈ Mn (K), et 1 ≤ i, j ≤ n. On appelle mineur associé au coefficient aij


de A et on note mij , le déterminant de la matrice d’ordre n − 1 extraite de A en supprimant la
i-ème ligne et la j-ème colonne. On appelle cofacteur associé au coefficient aij de A le scalaire
∆ij = (−1)i+j mij .

Proposition 1.37 (développement suivant une ligne ou une colonne) On a, pour A ∈


Mn (K), Pn
det(A) = ∆lj alj , ∀l, 1 ≤ l ≤ n
Pj=1
n (1.31)
det(A) = i=1 ∆ik aik , ∀k, 1 ≤ k ≤ n
1.11. TRACES 27

Proposition 1.38 Soit A ∈ Mn (K), on note à la matrice des cofacteurs de A. On a

ÃT A = AÃT = det(A)In . (1.32)

Si A est inversible ,
1
A−1 = ÃT . (1.33)
det(A)

1.11 Traces
Définition 1.42 Soit A = (aij )1≤i,j≤n une matrice carrée d’ordre n à coefficents dans K. La
trace de A, notée trace(A) est le scalaire
n
X
trace(A) = aii . (1.34)
i=1

L’application trace qui à une matice asssocie sa trace est une forme linéaire sur Mn (K). Il est
clair que trace(A) = trace(AT )

Proposition 1.39 Soit A et B deux matrices carrées d’ordre n à coefficients dans K. On a

trace(AB) = trace(BA). (1.35)

Corollaire 1.4 Soit A et B deux matrices carrées d’ordre n à coefficients dans K. Si A et B


sont semblables, on a
trace(A) = trace(B). (1.36)
28 CHAPITRE 1. RAPPELS D’ALGÈBRE LINÉAIRE
Chapitre 2

Réduction de matrices

Dans ce qui suit, on s’intéresse à des matrices carrées de Mn (K), où K = R ou K = C. On


note I la matrice identité de Mn (K).
Il existe des classes de matrices particulièrement simples : les matrices diagonales A = (aij )1≤i,j≤n
avec aij = 0 si i 6= j et les matrices triangulaires supérieures (ai,j = 0 si i < j) ou triangulaires
supérieures (ai,j = 0 si i > j). Par exemple, pour de telles matrices, résoudre un système linéaire
est particulièrement simple (c’est l’idée de base de la méthode de Gauss). Ces matrices sont
aussi particulièrement utiles pour la résolution des systèmes d’équations différentielles linéaires
et pour l’étude des propriétés qualitatives des systèmes d’équations différentielles non linéaires.
Pour une matrice donnée A, il est donc souvent très utile de chercher un changement de base
qui transforme A en une matrice semblable, diagonale ou à défaut triangulaire. On appelle cette
démarche réduction de matrices.
Pour la réduction des matrices, les notions importantes sont celles de valeurs propres et vecteurs
propres, polynôme caractéristique, polynôme de matrices, sous-espace stable. On montrera en
particulier que si le polynôme caractéristique d’une matrice est scindé, on peut trouver un chan-
gement de base où la matrice devient triangulaire supérieure et un théorème fondamental, le
théorème d’Hamilton-Cayley, permet de préciser la structure de la matrice triangulaire obtenue.

2.1 Valeurs propres, vecteurs propres, polynôme caractéristique


Définition 2.1 Soit A ∈ Mn (K), on dit que λ ∈ K est une valeur propre de A s’il existe un
vecteur v ∈ Kn , v 6= 0 tel que Av = λv. On dit que le vecteur v 6= 0 est un vecteur propre de A
associé à la valeur propre λ.

Autrement dit, λ est une valeur propre de A si et seulement si le noyau de A − λI n’est pas
réduit à {0}, ce qui a lieu si et seulement si det(A − λI) = 0.
Remarque 2.1 Un vecteur non nul v est un vecteur propre de A si et seulement si Av est
colinéaire à v.
L’union de {0} et de l’ensemble des vecteurs propres associés à une valeur propre λ de A est un
sous-espace vectoriel de Kn .

Définition 2.2 Soit A ∈ Mn (K). Soit λ ∈ K est une valeur propre de A. Le sous-espace
Vλ = {v ∈ Kn : Av = λv} (non réduit à {0}) est appelé sous-espace propre associé à la valeur
propre λ. Le sous-espace Vλ est le noyau de A − λI :

Vλ = ker(A − λI).

29
30 CHAPITRE 2. RÉDUCTION DE MATRICES

Définition 2.3 Soit A ∈ Mn (K). L’ensemble des valeurs propres de A est appelé spectre de A
et est noté σ(A).

Lemme 2.1 Soit A ∈ Mn (K). Soit λ1 , . . . , λk des valeurs propres distinctes de A. On a

Vλ1 + · · · + Vλk = Vλ1 ⊕ · · · ⊕ Vλk

Démonstration. On effectue une démonstration par récurrence sur k : pour k = 1, c’est


immédiat.
Supposons le résultat vrai pour les entiers positifs inférieurs strictement à k. Soient w = u1 +
· · · + uk = v1 + · · · + vk , avec ui , vi ∈ Vλi . On a (u1 − v1 ) + · · · + (uk − vk ) = 0. Ceci implique
que λ1 (u1 − v1 ) + · · · + λk (uk − vk ) = 0, en multipliant par A. Supposons que λ1 6= 0, (ce
qui est vrai quitte à permuter les indices car k > 1). En divisant par λ1 on obtient que (u1 −
v1 ) + λλ21 (u2 − v2 ) · · · + λλk1 (uk − vk ) = 0. On en déduit en retranchant la première identité que
( λλ21 − 1)(u2 − v2 ) · · · + ( λλk1 − 1)(uk − vk ) = 0, avec λλ1i − 1 6= 0 ∀2 ≤ i ≤ k, et ui − vi ∈ Vλi .
L’hypothèse de récurrence implique que ui = vi , pour i = 2, . . . , k. On obtient alors que u1 = v1
en revenant à la première égalité.
Le résultat est démontré par récurrence.

Lemme 2.2 Soient A ∈ Mn (K) et λ1 , . . . , λk des valeurs propres distinctes de A, v1 , . . . , vk des


vecteurs propres associés. Le système (v1 , . . . , vk ) est libre.
Démonstration. Conséquence du Lemme 2.1.

Définition 2.4 Soit A ∈ Mn (K). Le polynôme caractéristique de A est le polynôme PA (λ) à


coefficients dans K défini par
PA (λ) = det(A − λI)
C’est un polynôme de degré égal à n et dont le coefficient du monôme de degré n est égal à
(−1)n . On a vu que les racines de PA sont les valeurs propres de A.
La multiplicité d’une valeur propre λ de A est sa multiplicité en tant que racine de PA . Une
valeur propre de A de multiplicité un (respectivement deux) est appelée valeur propre simple
(respectivement double).
On vérifie aisément la Proposition suivante
Lemme 2.3 Le polynôme caractéristique est invariant par changement de base. En d’autres
termes, deux matrices semblables ont le même polynôme caractéristique et le même spectre.
Démonstration. Si Q est une matrice inversible,

det(QAQ−1 − λI) = det(Q(A − λI)Q−1 ) = det(A − λI).

Exemple. La matrice  
5. −1. −2. −1. −1.
 1. 3. −2. −1. −1. 
 
A=
 1. −1. 2. −1. −1. 

 1. −1. 0. 1. −1. 
4. −4. 0. 0. 0.
2.1. VALEURS PROPRES, VECTEURS PROPRES, POLYNÔME CARACTÉRISTIQUE 31

a pour polynôme caractéristique PA (λ) = −λ(4 − λ)2 (2 − λ)(1 − λ) (le vérifier) et σ(A) =
{4, 2, 1, 0}. La valeur propre 4 est double et les autres valeurs propres sont simples. On a V4 =
{(a + b, b, 0, 0, a)T , a, b ∈ R}, V0 = {(a, a, a, a, a)T , a ∈ R}, V2 = {(a, a, a, 0, 0)T , a ∈ R}, V1 =
{(a, a, a, a, 0)T , a ∈ R}.
Exemple. Soit a ∈ K, et A = aI ∈ Mn (K) la matrice de l’homothétie de rapport a. Tout
vecteur non nul de Kn est un vecteur propre de A associé à la valeur propre a. Le polynôme
caractéristique de A est PA (λ) = (a − λ)n .
Exemple. On considère une réel θ et la matrice A ∈ M2 (R) de la rotation d’angle θ
 
cos θ sin θ
A= (2.1)
− sin θ cos θ

Son polynôme caractéristique est PA (λ) = λ2 − 2λ cos θ + 1. Si θ 6∈ πZ, le polynôme n’a pas de
racines dans R et A n’a donc pas de valeur propre dans R.
En revanche, si on considère A comme une matrice de M2 (C), on voit que les racines de PA sont
λ± = cos θ ± i sin θ. Si θ 6∈ πZ, les valeurs propres de A sont les complexes conjugués (non réels)
λ± et des vecteurs propres correspondants sont v± = (1, ±i)T . On voit que pour toute valeur de
θ, on peut trouver une base de C2 dans laquelle la matrice A devient diagonale. On dira que A
est diagonalisable dans M2 (C).

Définition 2.5 On dit qu’un sous-espace vectoriel V de Kn est un sous-espace stable pour A si
pour tout vecteur v ∈ V , Av ∈ V .
Exemple. On considère la matrice
 
2 1 0 2
 3 3 0 1 
A=
 0

0 4 0 
1 2 0 5
Les sous-espaces Vect(e1 , e2 , e4 ) et Vect(e3 ) sont stables pour A.

Comment traduire de façon matricielle qu’un sous-espace est stable pour A ? Si V est un sous-
espace stable pour A de dimension m ≤ n, le théorème de la base incomplète nous dit que l’on
peut trouver une base (f1 , . . . , fn ) de K n dont les m premiers vecteurs forment une base de V .
Soit Q la matrice de changement de base (dont les colonnes contiennent les coordonnées des
vecteurs fi dans la base canonique), la matrice Q−1 AQ est de la forme
 
−1 B11 B12
Q AQ = (2.2)
0 B22
où B11 ∈ Mm (K) et B22 ∈ Mn−m (K).
Réciproquement si il existe une matrice inversible Q telle que Q−1 AQ est de la forme (2.2), alors
le sous-espace V engendré par les m premières colonnes de Q est stable pour A.
Lemme 2.4 Soient A ∈ Mn (K) et une matrice inversible Q telle que Q−1 AQ soit de la forme
(2.2), alors
PA = PB11 PB22 . (2.3)
Démonstration. En notant B = Q−1 AQ, on a PA = PB d’après le Lemme 2.3 et on voit
immédiatement que PB = PB11 PB22 .
32 CHAPITRE 2. RÉDUCTION DE MATRICES

2.2 Rappels sur les polynômes et polynômes de matrices


Dans la suite, on va avoir besoin de quelques résultats fondamentaux sur les polynômes à
coefficients dans K.
On rappelle que l’ensemble K[X] des polynômes à coefficients dans K est un anneau, c’est à dire
que
– (K[X], +) est un groupe commutatif.
– La multiplication × qui à deux polynômes P et Q associe le produit P Q, est une loi de
composition interne, commutative et associative dans K[X], avec pour élément neutre le
polynôme 1.
– La multiplication × est distributive sur l’addition : soit P, Q, R trois polynômes de K[X],
on a P (Q + R) = P Q + P R.
On résume ces propriétés en disant que (K[X], +, ×) est un anneau commutatif.

Définition 2.6 On dit qu’un polynôme est unitaire si son coefficient de plus haut degré est 1.

Définition 2.7 Soit P et Q deux polynômes de K[X]. On dit que Q est un diviseur de P (ou
que P est un multiple de Q) s’il existe un polynôme R tel que P = QR.

Définition 2.8 Soit P ∈ K[X]. On dit que λ ∈ K est racine de P de multiplicité m (m entier
> 0) si le polynôme (X − λ)m est un diviseur de P .

On admettra le résultat important suivant :

Théorème 2.1 Le corps C est algébriquement clos, ce qui signifie que tout polynôme P ∈ C[X]
non nul est scindé, c’est à dire que si le degré de P est n, P a exactement n racines dans C
(comptées avec leur multiplicité).

Il est clair que R n’est pas algébriquement clos, puisque le polynôme X 2 + 1 n’admet pas de
racine dans R.

Définition 2.9 On dit que P et Q sont premiers entre eux si P et Q n’ont pas d’autre diviseur
commun que les polynômes de degré 0.

Remarque 2.2 Comme C est algébriquement clos, P ∈ C[X] et Q ∈ C[X] sont premiers entre
eux si et seulement P et Q n’ont pas de racines communes dans C.

Exemple. Les polynômes P (X) = 3X + 5 et Q(X) = X 2 + 2x + 1 sont premiers entre eux.

Comme pour les entiers, on peut définir une division euclidienne dans K[X] :

Proposition 2.1 (division euclidienne) Soient P1 et P2 deux polynômes : il existe un unique


polynôme Q et un unique polynôme R de degré strictement inférieur à celui de P2 tels que
P1 = QP2 + R.

Démonstration. La preuve consiste à écrire l’algorithme de la division euclidienne.

Exemple. On considère les polynômes P1 (X) = 5X 5 + 6X 3 + 2X + 1 et P2 (X) = X 3 + X + 2.


On a P1 = QP2 + R, où Q(X) = 5X 2 + 1 et R(X) = −10X 2 + X − 1.
2.2. RAPPELS SUR LES POLYNÔMES ET POLYNÔMES DE MATRICES 33

Proposition 2.2 (identité de Bézout) Deux polynômes P1 et P2 sont premiers entre eux si
et seulement si il existe deux polynômes Q1 et Q2 tels que Q1 P1 + Q2 P2 = 1.

Démonstration. Commençons par supposer qu’il existe deux polynômes Q1 et Q2 tels que
Q1 P1 + Q2 P2 = 1. Un diviseur commun à P1 et P2 est donc un diviseur de 1, donc P1 et P2 sont
premiers entre eux.
Pour la réciproque, on procède par récurrence sur le degré maximal des deux polynômes P1 et
P2 , que l’on note n. Pour n = 0, on voit que deux polynômes de degré 0 sont premiers entre eux
si l’un des deux polynômes est non nul. Le résultat souhaité est donc vrai si n = 0.
Soit n > 0, supposons la propriété vraie pour tous les entiers positifs ou nuls inférieur à n.
Prenons P1 et P2 deux polynômes :
supposons dans un premier temps que le degré de P1 est n et que le degré de P2 est strictement
inférieur à n. On effectue la division euclidienne de P1 par P2 : on a P1 = QP2 + R, où R est
un polynôme de degré inférieur strictement à celui de P2 . On vérifie que R et P2 sont premiers
entre eux, car un diviseur commun à P2 et R est un diviseur commun à P1 et P2 . On applique
l’hypothèse de récurrence à P2 et R : il existe deux polynômes A et B tels que AP2 + BR = 1.
On en conclut que AP2 + B(P1 − QP2 ) = 1 ce qui est la conclusion souhaitée.
Si P1 et P2 sont tous deux de degré n : on effectue la division euclidienne de P1 par P2 : on
a P1 = QP2 + R, où R est un polynôme de degré inférieur strictement à celui de P2 , et R est
premier avec P2 . On sait alors qu’il existe deux polynômes A et B tels que AP2 + BR = 1
puisque R est de degré strictement inférieur à n. On en conclut que AP2 + B(P1 − QP2 ) = 1.

Exemple. Les polynômes P1 (X) = 3X + 5 et P2 (X) = X 2 + 2x + 1 sont premiers entre


eux. On a bien Q1 P1 + Q2 P2 = 1, avec Q1 (X) = − 34 X − 14 et Q2 (X) = 49 .

Définition 2.10 Soit P (X) un polynôme à coefficients dans K : P (X) = αm X m + · · · + α0 =


P m i m
Pmi=0 αi X . Soit A une matrice de Mn (K), on note P (A) la matrice P (A) = αm A +· · ·+α0 I =
i
i=0 αi A . On dit que P (A) est un polynôme de la matrice A.

On vérifie aisément les lemmes suivants

Lemme 2.5 Soient P et Q deux polynômes à coefficients dans K, et A une matrice de Mn (K),
alors P (A) et Q(A) commutent :

P (A)Q(A) = Q(A)P (A) = P Q(A) = QP (A)

Lemme 2.6 Soient P un polynôme à coefficients dans K, et A une matrice de Mn (K). Si λ


est une valeur propre de A alors P (λ) est une valeur de P (A).

Démonstration. Soit λ une valeur propre de A. Il existe un vecteur v 6= 0 tel que Av = λv.
On voit facilement que P (A)(v) = P (λ)v. On en déduit que P (A) a pour valeur propre P (λ).

Remarque 2.3 On verra plus tard que si A ∈ Mn (C), σ(P (A)) est exactement l’image par P
de σ(A).
Ceci n’est pas vrai pour A ∈ Mn (R), car le spectre de la matrice A donnée par (2.1) avec θ = πn
est vide si n > 1, alors que le spectre de An est {−1}.
34 CHAPITRE 2. RÉDUCTION DE MATRICES

Lemme 2.7 Soient P un polynôme à coefficients dans K, et A une matrice de Mn (K). Le


sous-espace ker(P (A)) est stable pour A.

Démonstration. Soit v ∈ ker(P (A)), on a d’après le lemme 2.5, P (A)Av = A P (A)v = 0.

Proposition 2.3 Soient P1 et P2 deux polynômes premiers entre eux et A ∈ Mn (K). Les sous-
espaces ker(P1 (A)) et ker(P2 (A)) sont en somme directe et

ker((P1 P2 )(A)) = ker(P1 (A)) ⊕ ker(P2 (A)) (2.4)

Démonstration. Pour montrer que ker(P1 (A)) ∩ ker(P2 (A)) = {0}, on utilise l’identité de
Bézout : il existe deux polynômes Q1 et Q2 tels que Q1 P1 + Q2 P2 = 1. Donc Q1 (A)P1 (A) +
Q2 (A)P2 (A) = I. Soit v ∈ ker(P1 (A)) ∩ ker(P2 (A)), on a v = (Q1 (A)P1 (A) + Q2 (A)P2 (A))v = 0.
Pour v1 ∈ ker(P1 (A)) et v2 ∈ ker(P2 (A)), le Lemme 2.5 implique que (P1 P2 )(A)(v1 + v2 ) =
P2 (A)P1 (A)v1 + P1 (A)P2 (A)v2 = 0. Donc ker(P1 (A)) ⊕ ker(P2 (A)) ⊂ ker((P1 P2 )(A)).
Réciproquement en utilisant l’identité de Bézout, si v ∈ ker((P1 P2 )(A)), on a v = Q1 (A)P1 (A)v+
Q2 (A)P2 (A)v et Q1 (A)P1 (A)v ∈ ker(P2 (A)), Q2 (A)P2 (A)v ∈ ker(P1 (A)) ; on a bien montré que
ker((P1 P2 )(A)) ⊂ ker(P1 (A)) ⊕ ker(P2 (A)).

2.3 Polynôme minimal


On va s’intéresser à trouver des polynômes P qui annulent A, c’est à dire tels que P (A) = 0.
De tels polynômes existent : en effet, on sait que la dimension de Mn (K) est n2 . Par suite,
2
la famille de matrices (I, A, A2 , . . . , An ) ne peut pas être une famille libre de Mn (K). En
P 2
conséquence, il existe une famille de coefficients non tous nuls (αi )i=0,...,n2 tels que ni=0 αi Ai = 0.
Pn2 i
Le polynôme P (X) = i=0 αi X annule donc A. On note IA l’ensemble des polynômes qui
annulent A.
On vérifie facilement que
– IA est un sous-groupe de (K[X], +),
– quels que soient P ∈ K[X], Q ∈ IA , on a P Q ∈ IA .
On résume ces deux propriétés en disant que IA est un idéal de K[X].

Proposition 2.4 (polynôme minimal) Il existe un unique polynôme unitaire µA ∈ IA , tel


que tout polynôme de IA soit un multiple de µA . On a

IA = {µA P, P ∈ K[X]}. (2.5)

On dit que µA est le polynôme minimal de A.

Démonstration. Il est clair que le polynôme 1 n’appartient pas à IA .


Soit µA ∈ IA un polynôme unitaire de IA de degré minimal, (on vient de voir que son degré est
non nul).
Soit donc P un polynôme de IA . On veut montrer que P est un multiple de µA . On effectue la
division euclidienne de P par µA : il existe un unique polynôme Q et un unique polynôme R de
degré strictement inférieur à celui de µA tels que P = QµA + R. On voit alors que
– R ∈ IA car IA est un idéal de K[X].
– Le degré de R est strictement inférieur à celui de µA .
2.4. THÉORÈME DE HAMILTON-CAYLEY 35

Le polynôme R ne peut être que nul : si ce n’était pas le cas, en divisant R par son coefficient
de plus haut degré, on obtiendrait un polynôme unitaire de IA de degré strictement inférieur à
celui de µA . Donc P est un multiple de µA .
On a donc trouvé un polynôme unitaire µA de degré ≥ 1 tel que tout polynôme de IA soit un
multiple de µA . L’unicité de µA et (2.5) sont laissés en exercice.

Remarque 2.4 En fait, pour tout idéal J de K[X], il existe un unique polynôme G ∈ J tel
que J = {GP, P ∈ K[X]}. Cette propriété est une propriété de l’anneau K[X] : on dit que K[X]
est un anneau principal.

Remarque 2.5 Le polynôme minimal est moins facile à calculer que le polynôme caractéristique,
car ce dernier est défini par le calcul d’un déterminant. Le lien entre les deux polynômes est donné
par le théorème d’Hamilton-Cayley qui nous dit que le polynôme minimal divise le polynôme ca-
ractéristique et qu’ils ont les mêmes racines, (mais les racines n’ont pas forcément les mêmes
multiplicités).

Exemple. Le polynôme minimal de la matrice A = aI (homothétie de rapport a) est µA (X) =


X − a, tandis que le polynôme caractéristique est PA (X) = (a − X)n .

2.4 Théorème de Hamilton-Cayley


Théorème 2.2 (Hamilton-Cayley) Soit A une matrice de Mn (K) et PA son polynôme ca-
ractéristique. On a PA ∈ IA (ou de manière équivalente PA (A) = 0).

Démonstration. Soit v ∈ Kn .
– Si v = 0, alors PA (A)v = 0.
– Si v 6= 0, on considère l’espace vectoriel V = Vect(v, Av, . . . , An v). Le sous-espace V est
de dimension m ≤ n et (v, Av, . . . , Am−1 v) est une base de V . Il existe donc m coefficients
(α0 , . . . , αm−1 ) tels que
m−1
X
Am v = αi Ai v (2.6)
i=0

et V est donc un sous-espace stable pour A. On complète (v, Av, . . . , Am−1 v) par (fm+1 , . . . , fn )
pour former une base de Kn et on note Q la matrice de changement de base. On a (2.2) et
 
0 ... α0
 1 0 ... α1 
 
 0 1 0 α2 
B11 =  
 .. . . . . .. 
 . . . . 
1 αm−1

D’après le Lemme 2.4, le polynôme PB11 divise PA . On peut facilement calculer PB11 (λ)
en développant
−λ . . . α0

1 −λ . . . α1

0 1 −λ α
2
.. .. . . ..
. . . .

1 αm−1 − λ
36 CHAPITRE 2. RÉDUCTION DE MATRICES

par rapport à la première ligne. On a que



−λ . . . α0
−λ . . . α1
1 −λ . . . α1
1 −λ α2
0 1 −λ α2
= (−1)m+1 α0 − λ .. .. ..
. .. ... ... .. . . .
.
1 αm−1 − λ
1 αm−1 − λ
Pm−1
On démontre alors par récurrence que PB11 (λ) = (−1)m (λm − P i
i=0 αi λ ).
m−1
On en déduit que PA (A)v = PB22 (A)PB11 (A)v = (−1) PB22 (A)( i=0 αi Ai v − Am v) = 0,
m

d’après (2.6).
On a donc démontré que PA (A)v = 0 pour tout v ∈ Kn , ce qui implique que PA (A) = 0.

Pm−1
Remarque 2.6 Pour un polynôme unitaire de degré m, P (X) = i=0 αi X i + X m , la matrice
 
0 ... −α0
 1 0 ... −α1 
 
 0 1 0 −α2 
 
 .. .. . . .. 
 . . . . 
1 −αm−1

s’appelle la matrice compagnon du polynôme P . Son polynôme caractéristique est (−1)m P (X).

Théorème 2.3 (Hamilton Cayley, version complète) Soit A une matrice de Mn (K). Le
polynôme minimal µA divise le polynôme caractéristique PA . De plus, les racines du polynôme
minimal µA sont exactement celles du polynômes caractéristiques (mais avec des multiplicités
éventuellement différentes)

Démonstration. La première assertion est une conséquence de la Proposition 2.4 et du Théorème


2.2 .
On sait que µA est un diviseur de PA , donc une racine de µA est nécessairement une racine de
PA , donc une valeur propre de A. Réciproquement, soit λ une valeur propre et v un vecteur
propre associé, on a 0 = µA (A)v = µA (λ)v ce qui implique que µA (λ) = 0.

Exemple. Si θ 6∈ πZ, le polynôme minimal de la matrice


 
cos θ sin θ
A=
− sin θ cos θ

(rotation d’angle θ) est µA (X) = X 2 − 2X cos θ + 1. En effet, on sait que A (vue comme une
matrice à coefficients complexes) a ses deux valeurs propres distinctes (de multiplicité un) et le
théorème de Hamilton-Cayley implique alors que µA = PA .
Exemple. Considérons les trois matrices
     
a 1 0 0 a 1 0 0 a 1 0 0
 0 a 0 0   0 a 0 0   0 a 1 0 
A=  0 0 a 0 
 B=  0 0 a 1 
 C=  0 0 a 1 
 (2.7)
0 0 0 a 0 0 0 a 0 0 0 a
2.5. DIAGONALISATION 37

On a PA (X) = PB (X) = PC (X) = (a − X)4 . D’après le théorème d’Hamilton-Cayley, µA , µB


et µC sont de la forme (X − a)m . On peut vérifier que µA (X) = µB (X) = (X − a)2 et que
µC (X) = (X − a)4 . Le sous-espace propre de A associé à a est de dimension 3. Le sous-espace
propre de B associé à a est de dimension 2. Le sous-espace propre de C associé à a est de
dimension 1.

Exercice. Cet exercice consiste à prouver le théorème d’Hamilton-Cayley d’une autre manière,
par des arguments d’“analyse”. Montrer que l’ensemble des matrices diagonalisables est dense
dans Mn (C). En déduire le théorème de Hamilton Cayley.

2.5 Diagonalisation
Définition 2.11 On dit qu’une matrice A ∈ Mn (K) est diagonalisable si et seulement si il
existe une base de Kn formée de vecteurs propres de A, ou de manière équivalente si A est
semblable à une matrice diagonale.

Une conséquence immédiate du Lemme 2.2 est la

Proposition 2.5 Si A a n valeurs propres distinctes, alors A est diagonalisable.

Une conséquence du Lemme 2.1 est la

Proposition 2.6 Si A ∈ Mn (K) a exactement k valeurs propres distinctes λ1 , . . . , λk , alors A


est diagonalisable si et seulement si dim(Vλ1 ) + · · · + dim(Vλk ) = n.

Démonstration. On sait par le Lemme 2.1 que les sous-espaces propres de A sont en somme
directe, donc si dim(Vλ1 ) + · · · + dim(Vλk ) = n, on a Kn = Vλ1 ⊕ · · · ⊕ Vλk , donc A est diagona-
lisable. La réciproque est immédiate.

Lemme 2.8 Soit A ∈ Mn (K) et soit α une valeur propre de la matrice A. Soit p la dimension
du sous-espace propre Vα . Le polynôme (α − X)p est un diviseur de PA .

Démonstration. D’après la définition de Vα , A induit sur Vα une homothétie de rapport α,


dont le polynôme caractéristique est (α − X)p . Comme Vα est un sous-espace propre pour A, on
déduit du Lemme 2.4 que le polynôme (α − X)p divise PA .

On en déduit de ce lemme une condition nécessaire et suffisante pour que A soit diagonali-
sable :

Théorème 2.4 Si A ∈ Mn (K) a exactement k valeurs propres distinctes λ1 , . . . , λk , alors A


est diagonalisable si et seulement si

k
Y
PA (X) = (λi − X)mi , (2.8)
i=1

où mi est la dimension du sous-espace propre Vλi .


38 CHAPITRE 2. RÉDUCTION DE MATRICES

P
Démonstration. D’après la proposition 2.6, A est diagonalisable si et seulement si ki=1 mi = n
Qk
et donc si et seulement si i=1 (λi − X)mi est un polynôme de degré n, et le lecteur vérifiera
Q
que ceci équivaut à (2.8) car on a vu au Lemme 2.8 que ki=1 (λi − X)mi divise PA .

Remarque 2.7 La dimension du sous-espace propre associé à la valeur propre λi de A peut


être strictement inférieure à la multiplicité mi de λi . Dans ce cas, A n’est pas diagonalisable,
cf. l’exemple des matrices données par (2.7).

Le Théorème de Hamilton-Cayley permet de donner une condition nécessaire pour que A soit
diagonalisable en fonction de la structure du polynôme minimal :

Théorème 2.5 Soit A ∈ Mn (K), A est diagonalisable si et seulement si son polynôme minimal
µA est de la forme
Yk
µA (X) = (X − λi ), avec λi 6= λj si i 6= j,
i=1

En d’autres termes, A est diagonalisable si et seulement si µA est scindé avec des racines simples.

Démonstration. Supposons que A a k valeursQk propres distinctes λ1 , . . . , λk . Si A est diagonali-


sable, on voit facilement que le polynôme i=1 (X − λi ) annule A et donc µA divise ce polynôme.
Comme on sait d’après le Théorème
Qk 2.3 que les racines de µA sont exactement les valeurs propres
de A, on en déduit que µA = i=1 (X − λi ), et on voit que les racines du polynôme minimal
sont simples.
Réciproquement, si le polynôme minimal a k racines simples λ1 , . . . , λk , ces racines sont exacte-
ment les valeurs propres de A, d’après le Théorème 2.3. Soit Vλi = ker(A − λi I). On a d’après la
Proposition 2.3 que Kn = ker(µA (A)) = Vλ1 ⊕ · · · ⊕ Vλk car les polynômes X − λi sont premiers
entre eux. On conclut en utilisant la Proposition 2.6.

Exemple. D’après le Théorème 2.5, aucune des trois matrices dans (2.7) n’est diagonalisable.

2.6 Triangulation
Définition 2.12 On dit qu’une matrice A ∈ Mn (K) est triangularisable si elle est semblable à
une matrice triangulaire supérieure U ∈ Mn (K), c’est à dire s’il existe une matrice inversible
Q ∈ Mn (K) et une matrice triangulaire supérieure U ∈ Mn (K) telles que

Q−1 AQ = U. (2.9)

Il est clair que si A ∈ Mn (K) vérifie (2.9), alors


n
Y
PA (λ) = (uii − λ),
i=1

et
– les coefficients diagonaux de U sont les valeurs propres de A,
– le polynôme caractéristique de A a n racines dans K, comptées avec leur multiplicité. On
dit que le polynôme caractéristique PA est scindé dans K[X].
2.6. TRIANGULATION 39

Donc, une matrice de Mn (R) dont le polynôme caractéristique est divisible par x2 +a2 , a ∈ R\{0}
ne peut pas être triangularisable dans Mn (R). On verra que cette même matrice, vue comme
une matrice de Mn (C) est diagonalisable.
Le caractère scindé du polynôme caractéristique est en fait une condition nécessaire et suffisante
pour que A soit triangularisable :
Théorème 2.6 Une matrice A ∈ Mn (K) est triangularisable si et seulement si son polynôme
caractéristique est scindé.
Démonstration. Il ne reste plus qu’à démontrer l’implication : PA scindé ⇒ A triangularisable.
On le fait par récurrence sur n. Pour n = 1, la propriété est évidente. Supposons la propriété
vraie pour n − 1. Soit A ∈ Mn (K) et v un vecteur propre de A associé à la valeur propre λ. On
peut par le théorème de la base incomplète trouver une base (v, f2 , . . . , fn ) de Kn . Si on note
Q(1) la matrice dont les colonnes sont ces vecteurs de bases, on a
 
(1) −1 (1) λ l
Q AQ = , l ∈ M1,n−1 (K), B ∈ Mn−1 (K).
0 B
D’après le Lemme 2.4, PA (X) = (λ − X)PB (X). Comme PA est scindé, PB est un polynôme
de degré n − 1 scindé. On applique alors l’hypothèse de récurrence à B : il existe une matrice
inversible Q(2) ∈ Mn−1 (K) et une matrice U (2) ∈ Mn−1 (K) triangulaire supérieure telles que
−1
Q(2) BQ(2) = U (2) . En notant U ∈ Mn (K) et Q ∈ Mn (K) les matrices
   
λ l (1) 1 0
U= , Q=Q ,
0 U (2) 0 Q(2)
on vérifie que Q est inversible, U triangulaire supérieure et on a (2.9).

On déduit alors du Théorème 2.6 le


Théorème 2.7 Toute matrice A ∈ Mn (C) est triangularisable.

Remarque 2.8 Insistons bien sûr le fait que toute matrice A ∈ Mn (R) n’est pas forcément
triangularisable. On prendra par exemple la matrice de rotation
 
0 1
−1 0
dont le polynôme caractéristique est X 2 +1. Cette matrice n’est pas triangularisable dans M2 (R)
alors qu’elle est diagonalisable dans M2 (C)

Pour des matrices réelles, on a le résultat suivant :


Proposition 2.7 Soit A une matrice de Mn (R). Il existe une matrice Q ∈ Mn (R) inversible
et une matrice R ∈ Mn (R) triangulaire supérieure par blocs
 
R11 R12 . . . R1k
 0 R22 . . . R2k 
 
R= . . . ..  (2.10)
 .. . . . . . 
0 ... 0 Rkk
où Rii est soit une matrice 1 × 1 (un réel) ou une matrice de M2 (R) avec des valeurs propres
complexes conjuguées et non réelles telles que
Q−1 AP = R.
40 CHAPITRE 2. RÉDUCTION DE MATRICES

Démonstration. Montrons le résultat par récurrence sur n. Supposons la propriété vraie pour
des matrices d’ordre inférieur ou égal à n − 1.
Soit A ∈ Mn (R), son polynôme caractéristique est à coefficients réels. Il a n racines dans C, et
les racines non réelles se présentent par paires de nombres complexes conjugués.
Si toutes les racines sont réelles, on peut trouver Q ∈ Mn (R) inversible telle que Q−1 AQ soit
triangulaire avec les valeurs propres sur la diagonale.
Supposons que PA a deux racines complexes conjuguées : λ = γ + iµ, µ 6= 0 et λ̄ : il existe deux
vecteurs y et z de Rn tels que A(y ± iz) = (γ ± iµ)(y ± iz). On a donc
 
γ µ
A(y, z) = (y, z)
−µ γ

Donc y, z engendrent un sous-espace vectoriel stable pour A : Par suite, il existe une matrice
inversible Q1 ∈ Mn (R) telle que
 
−1 T11 T12
Q1 AQ1 = ,
0 T22

où T11 ∈ R2×2 a pour valeurs propres de λ et λ̄. On applique l’hypothèse de récurrence à T22 :
il existe une matrice inversible Q̃2 ∈ Mn−2 (R) telle que Q̃−1
2 T22 Q̃2 ait la forme donnée dans
(2.10). On pose alors Q = Q1 Block-Diag(I2 , Q̃2 ), et on a QT AQ = R où R a la forme donnée
dans (2.10).

En fait, la connaissance du polynôme caractéristique (qu’on suppose ici scindé) donne des ren-
seignements précis sur la structure de la matrice U dans (2.9) :
Définition
Qk2.13 Soit A ∈ Mn (K) une matrice dont le polynôme caractéristique PA est scindé :
PA (X) = i=1 (λi − X) , avec m1 + · · · + mk = n. Notons Pi le polynôme Pi (X) = (λi − X)mi .
mi

On appelle sous-espace caractéristique associé à la valeur propre λi le sous-espace

Ei = ker(Pi (A)). (2.11)

Théorème Q 2.8 Soit A ∈ Mn (K) une matrice dont le polynôme caractéristique PA est scindé :
PA (X) = ki=1 (λi − X)mi , avec m1 + · · · + mk = n. Les sous-espaces caractéristiques Ei sont
stables pour A et dim(Ei ) = mi . On a

Kn = E1 ⊕ · · · ⊕ Ek (2.12)

et pour chaque i, 1 ≤ i ≤ k, il existe une base qi,1 , . . . qi,mi de Ei , telle que si on appelle Q
la matrice de Mn (K) dont les colonnes sont q1,1 , . . . q1,m1 , . . . , qk,1 , . . . qk,mk , alors Q−1 AQ est
diagonale par blocs,
 
T1 0 ... 0
 . 
 0 . . . . . . .. 
Q AQ = 
−1
 .. .. ..
 , Ti ∈ Mm (K),
 i (2.13)
 . . . 0 
0 ... 0 Tk

et chaque bloc diagonal Ti est triangulaire supérieur avec ses coefficients diagonaux égaux à λi .
On écrit aussi
Q−1 AQ = Bloc-Diag(T1 , . . . , Tk ), Ti ∈ Mmi (K). (2.14)
2.7. MATRICES NILPOTENTES 41

Démonstration. La stabilité des Ei pour A est une conséquence du Lemme 2.7. Le Théorème
d’Hamilton-Cayley nous dit que ker(P (A)) = Kn . On obtient alors (2.12) en appliquant (plu-
sieurs fois) la Proposition 2.3. Soit alors une base de Kn obtenue en assemblant des bases de
E1 , . . . , Ek et Q̃ la matrice de changement de base : on obtient que
 
T̃1 0 ... 0
 . 
 0 . . . . . . .. 
Q̃−1 AQ̃ = Bloc-Diag(T̃1 , . . . , T̃k ) = 
 .. .. ..
 , T̃i ∈ Mm (K).
 i
 . . . 0 
0 ... 0 T̃k

On sait que PA = PT̃1 . . . PT̃k , et donc que chaque PT̃i est scindé. D’autre part, comme (T̃i −
λi I)mi = 0, le théorème d’Hamilton-Cayley nous dit que PT̃i ne peut avoir d’autre racine que
λi . Donc PT̃i = Pi = (λi − X)mi , ce qui montre que
– T̃i est triangularisable avec des λi sur la diagonale.
– la dimension de Ei est mi .
On a prouvé (2.13).

Dans la décomposition (2.13), le bloc Ti est de la forme Di + Ni où Di = λi Imi et Ni est une
matrice de Mmi (K), triangulaire supérieure strictement. Il est clair que Di et Ni commutent.
On a donc Q−1 AQ = D + N où D = Bloc-Diag(D1 , . . . , Dk ) et N = Bloc-Diag(N1 , . . . , Nk ), D
est diagonale, N est strictement triangulaire supérieure, et D et N commutent.

Définition 2.14 On dit qu’une matrice N ∈ Mn K est nilpotente s’il existe un entier m > 0 tel
que N m = 0.

On a N n = 0 : N est donc une matrice nilpotente. On a presque démontré la

Proposition 2.8 (décomposition de Dunford) Soit A ∈ Mn (K) une matrice dont le po-
lynôme caractéristique PA est scindé : A peut s’écrire comme la somme d’une matrice diagona-
lisable et d’une matrice nilpotente N (N n = 0), qui commutent.

Démonstration, suite et fin. On a vu que Q−1 AQ = D + N , donc A = QDQ−1 +


QN Q−1 . La matrice QDQ−1 est clairement diagonalisable. On a (QN Q−1 )n = QN n Q−1 = 0,
et QDQ−1 QN Q−1 = QDN Q−1 = QN DQ−1 = QN Q−1 QDQ−1 .

Les blocs Ni étant nilpotents, on va montrer qu’on peut en effectuant encore un changement de
base les mettre sous une forme particulièrement simple.

2.7 Matrices nilpotentes


Soit N ∈ Mn (K) une matrice telle que, pour un entier m > 0, N m+1 = 0 et N m 6= 0. On
note Ei = ker(N i ). On a Em+1 = Kn et E0 = {0}.

Lemme 2.9 Pour 0 ≤ i ≤ m


v ∈ Ei+1 ⇔ N v ∈ Ei . (2.15)

Démonstration.
v ∈ Ei+1 ⇔ N i+1 v = 0 ⇔ N v ∈ Ei .
42 CHAPITRE 2. RÉDUCTION DE MATRICES

Lemme 2.10 Soit Ei = ker(N i ). On a la suite d’inclusions strictes

E0 = {0} ( E1 ( · · · ( Em ( Em+1 = Kn . (2.16)

Démonstration. L’inclusion Ei ⊂ Ei+1 est claire. Si Ei+1 = Ei pour i < m+1, alors v ∈ Ei+2 si
et seulement si N v ∈ Ei+1 = Ei , ce qui a lieu si et seulement si v ∈ Ei+1 . Donc Ei = Ei+1 = Ei+2
et en itérant on montre que Ei = · · · = Em+1 = Kn , ce qui contredit l’hypothèse N m 6= 0.

Remarque 2.9 On a montré au passage qu’on a nécessairement m < n, car les inclusions
strictes précédentes montrent que dim(Em+1 ) ≥ m + 1.

Lemme 2.11 Soit F un sous-espace vectoriel de Kn . Pour tout i,

F ∩ Ei+1 = {0} ⇔ {v ∈ F, N v ∈ Ei } = {0},


(2.17)
F ∩ Ei+1 = {0} ⇒ F ∩ ker(N ) = {0}

Démonstration.
– La première ligne est une conséquence de (2.15).
– Comme ker(N ) = E1 ⊂ Ei , F ∩ Ei+1 = {0} ⇒ ker(N ) ∩ F = {0}.

On définit alors
1. un supplémentaire Fm de Em dans Kn ,
2. puis, comme ∀v ∈ Fm \{0}, on a
– Nv ∈ / Em−1 d’après le Lemme 2.11
– N v ∈ Em d’après (2.15),
on peut choisir Fm−1 un supplémentaire de Em−1 dans Em contenant l’image de Fm par
N.
3. puis, par récurrence, on construit une suite de sous-espace Fi tel que Fi soit un supplémentaire
de Ei dans Ei+1 contenant l’image de Fi+1 par N .
On a clairement dim(Fi ) = dim(Ei+1 ) − dim(Ei ), 1 ≤ i ≤ m.
En posant F0 = E1 , on a
Kn = F0 ⊕ F1 ⊕ · · · ⊕ Fm ,
Les dimensions des Fi forment une suite décroissante (au sens large) :

dim(Fi ) ≤ dim(Fi−1 )

car on sait que ker(N ) ∩ Fi = {0} et que l’image de Fi par N est contenue dans Fi−1 (théorème
du rang).

On va montrer comment construire une base de Kn dans laquelle la matrice de N devient triangu-
laire supérieure avec comme seuls coefficients éventuellement non nuls ceux situés immédiatement
au dessus de la diagonale.
2.7. MATRICES NILPOTENTES 43

a) Soit en un vecteur de Fm , on construit les vecteurs en−1 = N en ∈ Fm−1 , . . . , en−m =


N en−m+1 ∈ F0 . Si dim(Fm ) > 1 on choisit alors en−m−1 un vecteur de Fm indépendant de en ,
et on construit alors en−m−2 = N en−m−1 , . . . , en−2m−1 = N en−2m . On répète le procédé jusqu’à
ce que les vecteurs (en , en−m−1 , . . . ) forment une base de Fm . Pour p, 0 < p < m, la famille
en−m−1−p . . . ) = (N p en , N p en−m−1 , . . . ) est P
(en−p ,P une famille libre de vecteurs de Fm−p : en
effet, i=0 αi en−im−i−p = 0 si etP p
seulement si N ( i=0 αi en−im−i ) = 0. Ceci implique que les
coefficients αi sont tous nuls car i=0 αi en−im−i ∈ Fm et Fm ∩ ker(N p ) = {0}.

b) Quand on a construit une base de Fm , si l’image de Fm par N est strictement contenue


dans Fm−1 , on enrichit la famille précédemment construite d’un vecteur dans Fm−1 \N Fm puis
de ses images successives par N, . . . , N m−1 . On répète le procédé jusqu’à avoir construit une
base de Fm−1 .

c) Si la famille ainsi construite ne contient pas une base de Fm−2 , on l’enrichit d’un vecteur
dans Fm−2 \N Fm−1 puis de ses images successives par N, . . . , N m−2 . On répète le procédé jusqu’à
avoir construit une base de Fm−2 .

d) ainsi de suite, jusqu’à avoir aussi une base de F0 .

On obtient par cette méthode une base de Kn , dans laquelle la matrice N devient U = (uij )1≤i,j≤n
où uij = 0 si j 6= i + 1, et ui i+1 = yi avec yi vaut 0 ou 1. Les coefficients yi valant 1 sont rangés
en séquences de plus en plus longues, chaque séquence étant séparée de ses voisines par un seul
yi = 0. On a
– dim(F0 ) colonnes nulles.
– dim(F1 ) − dim(F2 ) séquences de yi = 1 de longueur 1.
– dim(F2 ) − dim(F3 ) séquences de yi = 1 de longueur 2.
.
– ..
– dim(Fm−1 ) − dim(Fm ) séquences de yi = 1 de longueur m − 1.
– dim(Fm ) séquences de yi = 1 de longueur m.
– Le nombre total de séquences de yi = 1 est dim(F1 ). Elles sont séparées par dim(F1 ) − 1
coefficients nuls. Les dim(F0 ) − dim(F1 ) + 1 premières colonnes sont donc nulles.
Les points ci-dessus montrent en fait que la matrice U est unique, alors que la matrice de
changement de base ne l’est pas.
On a démontré le

Théorème 2.9 Soit N ∈ Mn (K) nilpotente telle que N m+1 = 0 et N m 6= 0. La matrice N est
semblable à une matrice U ∈ Mn (K) telle que uij = 0 si j 6= i + 1, et ui i+1 = yi avec yi valant
0 ou 1. Les coefficients yi valant 1 sont rangés en séquences de plus en plus longues, chaque
séquence étant séparée de ses voisines par un unique yi = 0, et la dernière séquence de yi = 1
ayant une longueur m.
44 CHAPITRE 2. RÉDUCTION DE MATRICES

2.8 Réduction de Jordan


2.8.1 Réduction de Jordan des matrices triangularisables
Définition 2.15 On appelle matrice de Jordan une matrice M de la forme
 
λ 1 0 ... 0
 .. . 
 0 λ
 1 . .. 

 
M =  ... . . . ..
.
..
. 0  (2.18)
 
 .. .. .. 
 . . . 1 
0 ... ... 0 λ

Le Théorème 2.9 dit qu’une matrice nilpotente est semblable à une matrice diagonale par blocs
dont les blocs diagonaux sont des matrices de Jordan ayant 0 sur leur diagonale.
Des Théorèmes 2.8 et 2.9, on déduit le

Théorème 2.10 (réduction de Jordan) Qk Soit A ∈mMn (K) une matrice dont le polynôme ca-
ractéristique PA est scindé : PA (X) = i=1 (λi − X) i , avec λi 6= λj si i 6= j. La matrice A est
semblable à une matrice diagonale par blocs :

Q−1 AQ = Bloc-Diag(T1 , . . . , Tk )

chaque bloc Ti ∈ Mmi (K) s’écrivant Ti = λi I + Ui où Ui est une matrice nilpotente sous la
forme décrite dans le Théorème 2.9.
On peut aussi écrire
Q−1 AQ = Bloc-Diag(M1 , . . . , Mr ) (2.19)
où les blocs Mi sont des matrices de Jordan (les coefficients diagonaux des blocs Mi sont les
valeurs propres de A, et deux blocs Mi , Mj peuvent avoir les mêmes coefficients diagonaux). La
réduction (2.19) est unique aux permutations près sur les blocs de Jordan. Deux matrices dont
les polynômes caractéristiques sont scindés sont semblables si et seulement si elles ont la même
réduction de Jordan.

Comme conséquence du Théorème 2.8, on a la

Proposition 2.9 Soit A ∈ Mn (K) uneQ matrice dont le polynôme caractéristique PA est scindé.
Le polynôme minimal µA est µA (X) = ki=1 (X − λi )pi où pi est la taille du plus grand bloc de
Jordan Mk dans (2.19) ayant λi sur sa diagonale.

Exemple. Considérons la matrice


 
2 1 1 1 1 0
 0 2 −4 −3 −4 0 
 
 3 −1 4 −1 −1 1 
A=


 (2.20)
 0 0 1 5 1 0 
 −3 1 1 1 6 −1 
0 0 0 0 0 5

Son polynôme caractéristique est PA (λ) = (5 − λ)4 (2 − λ)2 . Le polynôme minimal de A est de
la forme µA (X) = (5 − λ)p (2 − λ)q avec p ≤ 4 et q ≤ 2. En cherchant les vecteurs propres
de A, on trouve que les vecteurs propres associés à la valeur propre 5 sont (0, a, b, −a, −b, 0)T ,
2.8. RÉDUCTION DE JORDAN 45

(a, b) 6= (0, 0), et les vecteurs propres associés à la valeur propre 2 sont (a, 0, −a, 0, a, 0)T , a 6= 0.
On peut alors facilement vérifier que le polynôme minimal de A est µA = (5 − λ)2 (2 − λ)2 , et
on peut donc pas avoir un bloc de Jordan associé à la valeur propre 5 d’ordre 3, i.e.
 
5 1 0
 0 5 1 
0 0 5

car son polynôme minimal est (X − 5)3 .


On en conclut que la réduction de Jordan de A est de la forme
 
2 1 0 0 0 0
 0 2 0 0 0 0 
 
 0 0 5 1 0 0 
B=  0 0 0 5 0

 0 
 0 0 0 0 5 1 
0 0 0 0 0 5

Exercice. Dans l’exemple précédent, trouver une matrice de passage Q telle que Q−1 AQ = B.

2.8.2 Applications aux systèmes d’équations différentielles linéaires


Les puissances des matrices de Jordan sont particulièrement faciles à calculer :
Proposition 2.10 Soit M ∈ Mn (K) une matrice de Jordan (de la forme (2.18)) et p ∈ N : on
a

M p = (bij )1≤i,j≤n
bij = 0 si j < i ou si j − i > p, (2.21)
j−i p+i−j
bij = Cp λ si 0 ≤ j − i ≤ p,
P+∞ 1 i i
et pour t ∈ K, notant par exp(tM ) = i=0 i! t M ,

exp(tM ) = (cij )1≤i,j≤n


cij = 0 si j < i, (2.22)
tj−i tλ
cij = (j−i)! e si i ≤ j.

Démonstration. Exercice.

Soit A ∈ Mn (K), on sait que la solution du problème de Cauchy


dv
dt (t)= Av(t) t > 0,
(2.23)
v(0) = w

est donnée par


v(t) = exp(tA)w (2.24)
En conséquence, si M ∈ Mn (K) est une matrice de Jordan (de la forme (2.18)), la solution du
problème de Cauchy pour le système d’équations différentielles
dv
dt (t)
= M v(t) t > 0,
(2.25)
v(0) = w
46 CHAPITRE 2. RÉDUCTION DE MATRICES

est donnée par


n
X tj−i tλ
vi (t) = e wj (2.26)
(j − i)!
j=i

Pour le système d’équations dv


dt (t) = Av(t) avec une matrice A plus générale mais triangularisable
(dont le polynôme caractéristique est scindé), on procède de la manière suivante :
1. on calcule une réduction de Jordan de A donnée par le Théorème 2.10. À l’aide d’un
changement de base, la matrice devient diagonale par blocs, chaque bloc étant une matrice
de Jordan.
2. On applique la formule (2.22) pour chaque bloc de Jordan.
Exercice. Résoudre le problème de Cauchy : trouver u : R+ → R5 tel que u(t = 0) =
(1, 1, 1, 1, 1)T et u′ (t) = Au(t) pour tout t > 0, avec A donnée par (2.20).

Toujours pour A triangularisable, sans même connaı̂tre une réduction de Jordan de A, on a


des informations
Q sur la solutions de (2.23), dés qu’on connaı̂t le polynôme minimal de A :
µA (X) = ki=1 (λi − X)pi , avec λi 6= λj si i 6= j ; on sait en effet d’après le Théorème 2.10 et la
Proposition 2.9 que la solution de l’équation différentielle s’écrit sous la forme
i −1
k pX
X
ui,j tj etλi ,
i=0 j=0

où ui,j ∈ Kn sont des vecteurs à déterminer.

2.9 Réduction simultanée


Proposition 2.11 Si deux matrices A ∈ Mn (K) et B ∈ Mn (K) commutent, c’est à dire si
AB = BA, alors les sous-espaces propres de A sont stables pour B.

Démonstration. Soit λ une valeur propre de A, et soit v un vecteur propre associé. On a


ABv = BAv = λBv, donc Bv appartient au sous-espace propre de A correspondant à λ.

Proposition 2.12 Soient deux matrices A ∈ Mn (K) et B ∈ Mn (K) diagonalisables. Elles sont
diagonalisables dans la même base si et seulement si A et B commutent.
Démonstration. Si A et B sont diagonalisables dans la même base, il est clair qu’elles com-
mutent : A = Q−1 DQ et B = Q−1 D ′ Q, donc AB = Q−1 DD′ Q = Q−1 D′ DQ = BA, car deux
matrices diagonales commutent.
Réciproquement, montrons la propriété par récurrence sur n. Si A n’est pas une homothétie,
notons λi , i = 1 . . . , k les valeurs propres de A, mi leur multiplicité, et Vi = ker(A − λi In ) pour
i = 1, . . . , k. On a Kn = V1 ⊕ · · · ⊕ Vk .
Comme A est diagonalisable, il existe une matrice Q inversible, dont les colonnes sont
q1,1 , . . . q1,m1 , . . . , qk,1 , . . . qk,mk , qi,j ∈ Vi , telle que Q−1 AQ soit diagonale, et plus précisément
Q−1 AQ = Bloc-Diag(λ1 Im1 , . . . , λk Imk ) .
D’après la Proposition 2.11, Q−1 BQ = Bloc-Diag(B1 , . . . , Bk ), où Bi ∈ Mmi (K). On peut alors
appliquer l’hypothèse de récurrence aux matrices λi Ii et Bi , car mi < n (car la matrice A n’est
pas une matrice d’homothétie).

En fait la démonstration précédente permet de démontrer le résultat plus fort :


2.10. DÉCOMPOSITION DE SCHUR 47

Proposition 2.13 Soit E une famille (pas forcément finie) de matrices de Mn (K), diagonali-
sables. Elles sont toutes diagonalisables dans une même base si et seulement si elles commutent
deux à deux.

Exercice. Pour v = (v0 , . . . , vn−1 )T ∈ Cn , on appelle T (v) la matrice telle que


(v)
Tij = v(j+i−1) mod n .

Montrer que toutes les matrices T (v) commutent, en montrant qu’elles sont toutes diagonali-
sables dans la même base.
2kπ 2knπ
Indication : on pourra considérer les vecteurs ek = (ei n , . . . , ei n )T , pour k = 0, . . . , n − 1,
avec i2 = −1.

2.10 Décomposition de Schur et Réduction de Matrices Nor-


males, Hermitiennes, Symétriques Réelles.
Donnons d’abord une version plus précise du Théorème 2.6 :

Lemme 2.12 Soit A une matrice de Mn (K) dont le polynôme caractéristique est scindé : soient
λ1 , . . . , λn les valeurs propres de A (non nécessairement distinctes deux à deux). Quelque soit une
permutation σ ∈ Sn , on peut choisir une matrice inversible P telle que P −1 AP soit triangulaire
supérieure et sa diagonale soit D = Diag(λσ(1) , . . . , λσ(n) ).

Démonstration. Par récurrence.

On peut facilement démontrer le théorème suivant :

Théorème 2.11 (décomposition de Schur dans Mn (C)) Soit A une matrice de Mn (C).
Il existe une matrice Q unitaire et T une matrice triangulaire supérieure telle que

T = Q∗ AQ.

La matrice diagonale D = Diag(T ) contient exactement les valeurs propres de A, et Q peut être
choisie de manière à ce que les valeurs propres apparaissent dans n’importe quel ordre dans D.

Démonstration.
Soit P une matrice inversible telle que P −1 AP = T (1) est triangulaire supérieure. Les colonnes
de P forment une base de Kn . On peut effectuer une orthonormalisation de Gram-Schmidt de
cette base : en terme matriciel, cela revient à multiplier P à droite par une matrice triangulaire
supérieure P̃ (exercice : le prouver) : On a Q = P P̃ est unitaire, et T = Q−1 AQ = (P̃ )−1 T (1) P̃
est triangulaire supérieure comme produit de telles matrices. Remarquons que T̃ et T ont la
même diagonale.
D’après le Lemme 2.12, on peut choisir P de manière à ce que les valeurs propres de A appa-
raissent dans n’importe quel ordre dans Diag(T̃ ) et donc dans Diag(T ).

Remarque 2.10 Remarquons que si A est réelle (A ∈ Mn (R)) et si son polynôme caractéristique
est scindé dans R, alors on peut prendre T ∈ Mn (R) triangulaire supérieure et Q ∈ Mn (R)
orthogonale dans le Théorème 2.11.
48 CHAPITRE 2. RÉDUCTION DE MATRICES

On a le résultat plus général pour des matrices réelles quelconques :

Théorème 2.12 (décomposition de Schur dans Mn (R)) Soit A une matrice de Mn (R).
Il existe une matrice Q orthogonale et R ∈ Mn (R) une matrice triangulaire supérieure par blocs
 
R11 R12 . . . R1n
 0 R22 . . . R2n 
 
R= . .. . . ..  (2.27)
 .. . . . 
0 ... 0 Rnn
où Rii est soit une matrice 1 × 1 (un réel) ou une matrice réelle 2 × 2 avec deux valeurs propres
complexes conjuguées et non réelles , telles que

QT AQ = R. (2.28)

Démonstration. Exactement identique à celle du Théorème 2.11. Appliquer la Proposition 2.7


puis effectuer une orthogonalisation de Gram-Schmidt dans Mn (R).

Théorème 2.13 (matrices normales) Une matrice A ∈ Mn (C) est normale (AA∗ = A∗ A)
si et seulement si il existe une matrice Q unitaire telle que Q∗ AQ soit diagonale.

Démonstration. On sait d’après le Théorème 2.11 qu’il existe Q unitaire et T triangulaire


supérieure telle que Q∗ AQ = T . Du caractère normal de A on tire que T T ∗ = T ∗ T . En regardant
la première ligne de ces matrices on voit que
n
X
|t11 |2 = |t1i |2 .
i=1

Ceci implique que t1i = 0 pour i > 1. Après, on regarde le coefficient diagonal sur la deuxième
ligne et on obtient de même que t2i = 0 pour i > 2, et on continue en raisonnant par récurrence.
La réciproque est évidente.

On a comme conséquence

Corollaire 2.1 Soit A ∈ Mn (C) une matrice normale. Si u ∈ Cn et v ∈ Cn sont deux vecteurs
propres associés à des valeurs propres distinctes de A alors u∗ v = 0.

On aurait pu prouver ce résultat autrement comme conséquence du

Lemme 2.13 Soit A ∈ Mn (C) une matrice normale. Le vecteur u ∈ Cn est un vecteur propre
de A de valeur propre λ si et seulement si u est vecteur propre de A∗ de valeur propre λ̄.

Démonstration. On a 0 = kAu − λuk2 = u∗ A∗ Au − λu∗ A∗ u − λ̄u∗ Au + |λ|2 u∗ u = u∗ AA∗ u −


λu∗ A∗ u − λ̄u∗ Au + |λ|2 u∗ u = kA∗ u − λ̄uk2 .

Si A est hermitienne, on montre facilement que la matrice diagonale obtenue au Théorème


2.13 est réelle :

Théorème 2.14 (matrices hermitiennes) Une matrice A ∈ Mn (C) est hermitienne (A∗ =
A) si et seulement si il existe une matrice Q ∈ Mn (C) unitaire telle que Q∗ AQ soit diagonale
à coefficients réels.
2.11. VALEURS SINGULIÈRES D’UNE MATRICE 49

Théorème 2.15 (matrices symétriques réelles) Une matrice A ∈ Mn (R) est symétrique
(AT = A) si et seulement si il existe une matrice Q ∈ Mn (R) orthogonale telle que Q∗ AQ ∈
Mn (R) soit diagonale.

Démonstration. On utilise le Théorème 2.12. Il existe R ∈ Mn (R) de la forme (2.27), avec des
blocs diagonaux d’ordre un (réel) ou deux (ayant deux valeurs propres complexes conjuguées
non réelles), et Q orthogonale telles que QT AQ = R. Montrons que R ne peut pas avoir de
valeur propre non réelle. Comme A est symétrique, on a que RT = QT AT Q = QT AQ = R, donc
R est symétrique. Si R avait un bloc diagonal avec deux valeurs propres complexes conjuguées
non réelles, ce bloc serait aussi symétrique à coefficient réel : le simple calcul du polynôme
caractéristique d’un matrice symétrique réelle d’ordre deux, montre que cette situation est im-
possible. La matrice R est donc diagonale.
La réciproque est évidente.

2.11 Valeurs singulières d’une matrice

Théorème 2.16 (Valeurs singulières d’une matrice) Soit une matrice A ∈ Mn,m (C). Il
existe Q ∈ Mn (C) et P ∈ Mm (C) unitaires telles que Q∗ AP soit diagonale, à coefficients
réels positifs ou nuls sur la diagonale. Les min(m, n) coefficients diagonaux (di )1≤i≤min(m,n)
sont uniques à une permutation près, et sont appelés les valeurs singulières de A.

Démonstration. Supposons que m ≤ n. On sait que A∗ A est une matrice hermitienne de


Mm (C). Elle est donc diagonalisables et ses valeurs propres sont donc réelles d’après le Théorème
2.14. Montrons que les valeurs propres de A∗ A sont positives ou nulles : Soit λ ∈ σ(A∗ A)
et v ∈ Cm un vecteur propre associé à λ. On a λkvk2 = λv ∗ v = v ∗ A∗ Av = kAvk2 , donc
2
λ = kAvk
kvk2 ≥ 0.
Il existe donc P unitaire, P ∈ Mm (C) telle que P ∗ A∗ AP = D 2 , où D = Diag(d1 , . . . dm ) est
diagonale réelle. On suppose qu’on a choisi P de manière à ce que les valeurs propres nulles de
A∗ A soient rangées en premier dans D 2 . Donc il existe 0 ≤ r ≤ m tel di = 0 si i ≤ r et di > 0
si i > r. Pour i > r, on note qi la ième colonne de AP divisée par di . La famille (qi )r<i≤m
est orthonormale dans Cn . On peut la compléter par (qi )i≤r et (qi )i>m pour former une base
orthonormale de Cn . Soit Q ∈ Mn (C) la matrice unitaire dont les colonnes sont les qi . On a

 
∗ D
Q AP =
0

Si m ≤ n, on reproduit le raisonnement précédent pour A∗ . On obtient comme précédemment


qu’il existe P ∈ Mm (C), Q ∈ Mn (C), et D̃ ∈ Mm,n (R), diagonale avec des coefficients diago-
naux positifs ou nuls tels que P ∗ A∗ Q = D̃, et on a immédiatement que Q∗ AP = (D̃)T , et on
pose D = (D̃)T .

Le Théorème 2.16 nous dit que si m < n, il existe Q ∈ Mn (C) et P ∈ Mm (C) unitaires
50 CHAPITRE 2. RÉDUCTION DE MATRICES

telles que   
d1 0 ... 0 
 ..  

 .. 

 0 d2 . . 
 .. .. ..  m
 . . . 0  

  

Q∗ AP =  0 ... 0 dm  
  
 0 ... 0 
  
 .. .. 
 . .  n−m

0 ... 0
Si n < m, il existe Q ∈ Mn (C) et P ∈ Mm (C) unitaires telles que
 
d1 0 . . . 0 0 ... 0
 . .. .. 
 0 d2 . . . .. . . 
Q∗ AP =  .. . . .. .. ..


 . . . 0 . . 
0 ... 0 dn 0 ... 0

Définition 2.16 Une décomposition de A sous la forme A = QΞP ∗ , avec Q, P unitaires, et


Ξ ∈ Mn,m (R), diagonale à coefficients diagonaux positifs ou nuls, données par le Théorème
2.16, est appelée décomposition de A en valeurs singulières, ou décomposition SVD (singular
values decomposition).

Remarque 2.11 La décomposition SVD utilise en général deux matrices de changement de


bases au lieu d’une pour la diagonalisation.

Remarque 2.12 La démonstration du Théorème 2.16 donne un algorithme pour construire une
décomposition SVD d’une matrice A, (en supposant connu un algorithme de diagonalisation de
matrices hermitiennes).

Exercice. Écrire l’algorithme correspondant à la démonstration du Théorème 2.16.


Remarque 2.13 Il est clair que s’il n’y a pas unicité d’une décomposition SVD d’une matrice
A (car il n’y a pas unicité dans le Théorème 2.14, l’ensemble des valeurs singulières de A ne
dépend pas du choix de la décomposition SVD.

Remarque 2.14 Si A ∈ Mn (R), alors A∗ A = AT A et AA∗ = AAT sont des matrices symétriques
à coefficients réels, dont les valeurs propres sont positives ou nulles. Dans ce cas, en refaisant
la démonstration du Théorème 2.16, on voit qu’on peut donc choisir P et Q orthogonales. Tous
les coefficients d’une telle décomposition SVD de A sont réels.

Exemple. On considère la matrice


 √ 
1 −1 −3 −√3
A= √
2 1 −3 3

Montrer qu’on a la décomposition A = QΞP ∗ , où


 √ 
1
0 − 3 √ √ !  
 2 2  − √22 − √22 2 0 0
P =  √0 1 0 , Q = , Ξ= .
3 1
2
− 22 0 3 0
0 2
2 2
2.11. VALEURS SINGULIÈRES D’UNE MATRICE 51

Exercice. Montrer que pour toute matrice A ∈ Mn,m (C), alors A et A∗ ont les mêmes valeurs
singulières.
Exercice. Montrer que pour toute matrice A ∈ Mn (C), alors A est inversible si et seulement
si ses valeurs singulières sont non nulles.
Proposition 2.14 Soit A ∈ Mn,m (K). Soient P ∈ Mn (K) et Q ∈ Mm (K) deux matrices
inversibles. Le rang de A est égal au rang de P −1 AQ.
Démonstration. Exercice

Corollaire 2.2 Le rang de A ∈ Mn,m (C) est le nombre de ses valeurs singulières non nulles.

Proposition 2.15 Soit A ∈ Mn (C) une matrice normale. Les valeurs singulières de A sont
exactement les modules des valeurs propres de A.

Démonstration. On sait d’après le Théorème 2.13 qu’il existe une matrice Q ∈ Mn (C) unitaire
et une matrice diagonale D ∈ Mn (C), D = Diag(d1 , . . . , dn ) telles que Q∗ AQ = D. On appelle

s la fonction de C dans le cercle unité de C telle que s(z) = |z| si z 6= 0 et s(0) = 1. On appelle
S la matrice diagonale de Mn (C) définie par S = Diag(s(d1 ), . . . , s(dn )). La matrice S est clai-
rement unitaire. La matrice P = QS est unitaire, et on a Q∗ AP = Ξ où Ξ = Diag(|z1 |, . . . , |zn |).
On vient de trouver une décomposition SVD de A. Les valeurs singulières de A sont donc les
modules des valeurs propres de A.

On peut donner une interprétation géométrique des valeurs singulières d’une matrice A ∈
Mn,m (R). Supposons que n ≤ m et que le rang de A est n (A a n valeurs singulières non
nulles).
Considérons l’image par A de la boule unité B1 de Rm , i.e. de l’ensemble des vecteurs de Rm
tels que xT x ≤ 1. On sait par le Théorème 2.16 qu’il existe une décomposition SVD, QT AP = Ξ
avec Q et P orthogonales, et Ξ ∈ Mn,m (R) est diagonale à coefficients diagonaux positifs ou
nuls. On suppose qu’on a choisi P et Q pour que les n premiers coefficients diagonaux de Σ
sont non nuls et que les suivants sont nuls. Notons Ξ† la matrice diagonale de Mn (R) dont les
coefficients diagonaux sont les inverses de ceux de Ξ. On a
 
† T
 T T † T † T In 0
Ξ Q AP = In , 0 et P A Q(Ξ ) Ξ Q AP =
0 0

On en déduit que x ∈ B1 ⇒ kΞ† QT AP xk ≤ 1. Réciproquement, par définition de P Q et


Ξ† , pour tout vecteur y de Rn tel que kΞ† yk ≤ 1, il existe un vecteur P x de Vect(p1 , . . . , pn )
(p1 , . . . , pm sont les colonnes de P ) vérifiant kxk ≤ 1 tel que AP x = Qy.
L’image des vecteurs de B1 , exprimée dans la base orthonormale formée par des colonnes de Q
est
Xn
E ={ yi qi , y ∈ Rn ; ∃x ∈ B1 tel que y = QT AP x}
i=1
P
On a donc E = { ni=1 yi qi , kΞ† yk ≤ 1}. Il est donc clair que E est un hyper-ellipsoı̈de dont les
demi-axes ont pour longueur les valeurs singulières de A. On a démontré la proposition
Proposition 2.16 Soit deux entiers strictement positif n ≤ m et soit A ∈ Mn,m (R) de rang n.
L’image par A de la boule unité B1 de Rm est un hyper-ellipsoı̈de dont les demi-axes ont pour
longueur les valeurs singulières de A.
52 CHAPITRE 2. RÉDUCTION DE MATRICES

Remarque 2.15 On peut généraliser le résultat précédent si A a des valeurs singulières quel-
conques. On obtient alors un hyper-ellipsoı̈de dégénéré.

Remarque 2.16 Les valeurs singulières maximale et minimale de A sont souvent notées σmax (A)
et σmin (A).
Chapitre 3

Formes Quadratiques et
Hermitiennes

3.1 Formes Bilinéaires sur des Espaces Vectoriels Réels


Définition 3.1 Soit E et F deux espaces vectoriels sur R. On appelle forme bilinéaire sur E ×F
une application b de E × F dans R, telle que ∀x, y ∈ E, ∀u, v ∈ F , ∀α, β ∈ R,
b(αx + βy, u) = αb(x, u) + βb(y, u)
b(x, αu + βv) = αb(x, u) + βb(x, v)
On note B(E, F ) l’ensemble des formes bilinéaires sur E × F . Il est clair que B(E, F ) est un
espace vectoriel sur R.
Si E = F , on parle de forme bilinéaire sur E et on utilise la notation plus courte B(E) pour
l’espace vectoriel des formes bilinéaires sur E.

Remarque 3.1 Rien n’empêche de définir des formes bilinéaires sur des espaces vectoriels sur
C. C’est dans le but de simplifier l’exposition et d’éviter les confusions avec les formes sesqui-
linéaires (définies plus loin) que nous nous restreignons aux espaces vectoriels réels.

Exemple. L’application b : R3 × R2 → R, (x, u) 7→ 2x1 u1 + 4x1 u2 + 2x2 u1 + 3x2 u2 + 6x3 u2 est


une forme bilinéaire sur R3 × R2 .

Remarque 3.2 Soit x ∈ E et u ∈ F . Il est clair que l’application qui à v ∈ F associe b(x, v)
est une forme linéaire sur F (un élément de F ′ ), et que l’application qui à y ∈ E associe b(y, u)
est une forme linéaire sur E (un élément de E ′ ).

Supposons que E est de dimension finie n, F est de dimension finie Pnm, et soient E = (eP
1 , . . . , en )
et F = (f1 , . . . , fm ) des bases de E et F respectivement. Si x = j=1 xj ej et si u = m i=1 ui fi ,
on vérifie facilement que pour toute forme bilinéaire b, on a
n X
X m
b(x, u) = b(ej , fi )ui xj .
j=1 i=1

On voit donc qu’une forme bilinéaire b est complètement déterminée par la connaissance des
m × n coefficients bij = b(ej , fi ), ou encore de la matrice B = (bij ) ∈ Mm,n (R).
1≤i≤m
1≤j≤n

53
54 CHAPITRE 3. FORMES QUADRATIQUES ET HERMITIENNES

Définition 3.2 On dit que la matrice B construite ci-dessus est la matrice de la forme bilinéaire
b par rapport aux bases E et F.
Si m = n, on appelle discriminant de b par rapport aux bases E et F le déterminant de la matrice
de b par rapport aux bases E et F.

Il est clair que l’application qui à b associe sa matrice par rapport aux bases E et F est un
isomorphisme de B(E, F ) sur Mm,n (R). On a donc dim(B(E, F )) = nm. Cet isomorphisme
n’est pas canonique car il dépend du choix des bases.
On a un isomorphisme canonique de B(Rn , Rm ) sur Mn,m (R), en choisissant E (respectivement
F) la base canonique de Rn (respectivement Rm ). Si B est la matrice de b par rapport aux bases
canoniques de Rn et Rm , on a
b(x, u) = uT Bx. (3.1)
Regardons l’effet de changements de bases :

Lemme 3.1 Soient E = (e1 , . . . , en ) et E ′ = (e′1 , . . . , e′n ) deux bases de E, et F = (f1 , . . . , fm )


′ ) deux bases de F . On note P ∈ M (R) la matrice de passage de E dans
et F ′ = (f1′ , . . . , fm n
E et Q ∈ Mm (R) la matrice de passage de F dans F ′ . Soit B la matrice de b par rapport aux

bases E et F. La matrice de b par rapport aux bases E ′ et F ′ est QT BP .


P P Pn Pm
Démonstration. On a b(e′j , fi′ ) = b( nk=1 pkj ek , m l=1 qli fl ) = k=1 l=1 pkj bkl qli , qui est bien
le coefficient de la matrice QT BP sur la ième ligne et la jème colonne.

3.1.1 Rang d’une forme bilinéaire


Le Lemme 3.1 et la Proposition 2.14 nous disent aussi que le rang de la matrice de b par
rapport aux bases E et F ne dépend pas du choix des bases E et F.

Définition 3.3 Supposons que E est de dimension finie n, F est de dimension finie m. On
appelle rang d’une forme bilinéaire b sur E × F et on note rang(b) le rang de B, où B est la
matrice de b par rapport à deux bases quelconques E de E et F de F .

Définition 3.4 Supposons que E est de dimension finie n, F est de dimension finie m. On dit
que b ∈ B(E, F ) est une forme non dégénérée si m = n = rang(b). Dans le cas contraire, on dit
que b est dégénérée.
En d’autres termes, soit B la matrice de b par rapport à deux bases quelconques E de E et F de
F ; la forme bilinéaire b est non dégénérée si et seulement si B est carrée et inversible.

Lemme 3.2 La forme bilinéaire b est non dégénérée si et seulement si


– l’application qui à x ∈ E associe la forme linéaire sur F : v 7→ b(x, v), est un isomorphisme
de E sur F ′ .
– l’application qui à u ∈ F associe la forme linéaire sur E : y 7→ b(y, u), est un isomorphisme
de F sur E ′ .

3.1.2 Formes Bilinéaires Symétriques et Orthogonalité


Définition 3.5 Soit b une forme bilinéaire sur E. On dit que b est est une forme bilinéaire
symétrique si b(x, y) = b(y, x), ∀x, y ∈ E.
3.1. FORMES BILINÉAIRES SUR DES ESPACES VECTORIELS RÉELS 55

Lemme 3.3 L’ensemble des formes bilinéaires symétriques sur E, noté Bsym (E) forme un sous-
espace de B(E).

Lemme 3.4 Soit E un espace vectoriel de dimension n sur R et b est une forme bilinéaire
symétrique sur E. Pour toute base E de E, la matrice de b par rapport à E est symétrique.
L’application qui à une forme bilinéaire symétrique associe sa matrice par rapport à E est un
isomorphisme de Bsym (E) sur l’espace des matrices symétriques d’ordre n. L’espace Bsym (E) est
de dimension n(n+1)
2 .

Définition 3.6 Soient E un espace vectoriel de dimension n sur R et b ∈ Bsym (E). On dit
que deux vecteurs x et y de E sont orthogonaux pour b et on note x ⊥b y si et seulement si
b(x, y) = 0.
Soit C une partie de E. On note C ⊥b l’ensemble

C ⊥b = {x ∈ E : ∀y ∈ C, x ⊥b y}

Lemme 3.5 Soit b ∈ Bsym (E) et C une partie de E. L’ensemble C ⊥b est un sous-espace vectoriel
de E.

Remarque 3.3 Soit b une forme bilinéaire symétrique. On a l’équivalence : b non dégénérée si
et seulement si E ⊥b = {0}.

Lemme 3.6 Soient E un espace vectoriel de dimension n sur R. Soit b ∈ Bsym (E), b non
dégénérée, et G un sous-espace de E. On a dim(G⊥b ) + dim(G) = n et (G⊥b )⊥b = G.

Démonstration. Le cas G = {0} est trivial. Supposons G de dimension p > 0 et soit (e1 , . . . , ep )
une base de G. On note fi′ ∈ E ′ la forme linéaire : fi′ (v) = b(ei , v). D’après le Lemme 3.2,
(f1′ , . . . , fp′ ) est une famille libre de E ′ . L’application linéaire qui à v associe (f1′ (v), . . . , fp′ (v)) est
donc de rang p. On a G⊥b = ∩pi=1 ker(fi′ ) et le théorème du rang nous dit que dim(G⊥b ) = n − p.
D’autre part, il est clair que G ⊂ (G⊥b )⊥b et on vient de montrer que dim((G⊥b )⊥b ) = n −
dim(G⊥b ) = p, donc G = (G⊥b )⊥b .

Remarque 3.4 Dans le Lemme 3.6, si on n’avait pas l’hypothèse b non dégénérée, on aurait
dim(G⊥b ) + dim(G) ≥ n.

Remarque 3.5 On peut avoir G⊥b ∩ G 6= {0} pour b symétrique non dégénérée, ceci équivaut à
l’existence d’un élément x non nul de G tel que b(x, x) = 0. Par exemple, on pourra considérer
la forme bilinéaire symétrique sur R2 : b(x, y) = x1 y2 + x2 y1 .

Proposition 3.1 Soit b une forme bilinéaire symétrique sur E. L’ensemble des vecteurs tels
que b(x, x) = 0 est un cône, appelé cône d’isotropie de b.

Définition 3.7 Soit b une forme bilinéaire symétrique sur E. On dit qu’un sous-espace G de
E est non isotrope pour b, s’il ne contient pas de vecteur x non nul tel que b(x, x) = 0.

Lemme 3.7 Soit b une forme bilinéaire symétrique sur E et un sous-espace G de E non isotrope
pour b. On a G ⊕ G⊥b = E.

Démonstration. Soit p la dimension de G.


– on a G ∩ G⊥b = {0}, ce qui implique que dim(G ⊕ G⊥b ) = p + dim(G⊥b )
56 CHAPITRE 3. FORMES QUADRATIQUES ET HERMITIENNES

– En reprenant la démonstration du Lemme 3.6, c.f. Remarque 3.4, on voit que dim(G⊥b ) ≥
n − p (avec égalité dans le cas non dégénéré).
On déduit des deux points précédents que dim(G ⊕ G⊥b ) ≥ n, et donc G ⊕ G⊥b = E.

Remarque 3.6 Dans le Lemme 3.7, on n’a pas besoin de l’hypothèse b non dégénérée.

Définition 3.8 Soit E une famille de vecteurs de E. On dit que E est une famille orthogonale
pour b si et seulement si ses vecteurs sont orthogonaux deux à deux pour b. Soit E une base de
E. On dit que E est une base orthogonale pour b si c’est une famille orthogonale de vecteurs de
E. On dit que E est une base orthonormale pour b si E est une base orthogonale pour b et si
chaque vecteur e de E vérifie b(e, e) = 1.

Proposition 3.2 Si b est une forme bilinéaire symétrique sur E, il existe une base orthogonale
de E pour b.

Démonstration. Par récurrence sur la dimension n de E. Le cas n = 1 est trivial. Supposons


la propriété est vraie pour des entiers positifs < n, et soit E de dimension n.
Si b est nulle, toute base convient.
Si b est non nul, on peut trouver un vecteur e1 6= 0, tel que b(e1 , e1 ) 6= 0 : en effet, dans le cas
contraire, on aurait une base (e1 , . . . , en ) de E telle que
– b(ei , ei ) = 0, i = 1, . . . , n ;
– b(ei + ej , ei + ej ) = 0, i, j = 1, . . . , n ;
D’après le premier point et la symétrie de b, le deuxième point implique que b(ei , ej ) = 0,
i, j = 1, . . . , n. Mais alors b = 0, ce qui est contraire à l’hypothèse. Soit donc e1 6= 0 tel que
b(e1 , e1 ) 6= 0. On sait d’après le Lemme 3.7 que {e1 }⊥b est de dimension n − 1 et que ce sous-
espace est supplémentaire à la droite vectorielle engendrée par e1 . On applique l’hypothèse de
récurrence à la restriction de b à {e1 }⊥b . Il existe (e2 , . . . , en ) une base orthogonale de {e1 }⊥b
pour b, et (e1 , . . . , en ) est une base orthogonale de E.

Remarque 3.7 Une autre façon de démontrer la Proposition 3.2 est de considérer la matrice
B de b dans une base E de E.
Trouver une base orthogonale pour b, c’est trouver un changement de base de E à E ′ , i.e. une
matrice P ∈ Mn (R) inversible telle que P T BP soit diagonale (cf (3.1)). Mais on sait que B
est une matrice symétrique, et donc il existe une matrice P , orthogonale telle que P T BP soit
diagonale.

Remarque 3.8 Soit b une forme bilinéaire et E une base orthogonale pour b, et soit D la matrice
(diagonale) de b par rapport à cette base. Si b est dégénérée, alors rang(D) = rang(b) < n, i.e.
D a des coefficients diagonaux nuls. On en déduit qu’une forme bilinéaire dégénérée n’admet
pas de base orthonormale.

Théorème 3.1 (procédé d’orthogonalisation de Schmidt) Soit b une forme bilinéaire symétrique
sur E telle que pour tout vecteur non nul x ∈ E, b(x, x) 6= 0. Soit (f1 , . . . , fp ) une famille libre
de vecteurs de E. Il existe une famille libre orthogonale (e1 , . . . , ep ) pour b de vecteurs de E,
telle que,
V ect(e1 , . . . , eq ) = V ect(f1 , . . . , fq ), ∀q ≤ p. (3.2)
3.2. FORMES QUADRATIQUES 57

Démonstration. La démonstration utilise le procédé d’orthogonalisation de Schmidt déjà vu


si b est un produit scalaire.

Remarque 3.9 L’hypothèse du Théorème 3.1 est plus forte que b non dégénérée. On verra plus
tard comment construire une base orthogonale pour une forme bilinéaire symétrique générale en
utilisant la réduction de Gauss des formes quadratiques.

3.2 Formes Quadratiques


Définition 3.9 Soit E un espace vectoriel sur R. Une forme quadratique q sur E est une ap-
plication E dans R telle qu’il existe une forme bilinéaire b sur E avec ∀x ∈ E, q(x) = b(x, x).
L’ensemble des formes quadratiques est clairement un espace vectoriel sur R, que l’on note Q(E)

À toute forme bilinéaire, on peut associer une forme quadratique. Réciproquement, si q est une
forme quadratique sur E, on peut construire à partir de q une forme bilinéaire symétrique c par
c(x, y) = 12 (q(x + y) − q(x) − q(y)) : en effet, soit b une forme bilinéaire telle q(x) = b(x, x), on
a c(x, y) = 21 (b(x + y, x + y) − b(x, x) − b(y, y)) = 12 (b(x, y) + b(y, x)), ce qui définit bien une
forme bilinéaire symétrique. On appelle c la forme polaire de q. L’application qui à une forme
quadratique lui fait correspondre sa forme polaire est un isomorphisme d’espaces vectoriels de
Q(E) sur Bsym (E). Si E est de dimension n, la dimension de Q(E) est n(n+1) 2 .
Grâce à la bijection ainsi construite, on peut utiliser pour les formes quadratiques les notions
définies pour les formes bilinéaires. La matrice d’une forme quadratique par rapport à une base
E de E est la matrice de sa forme polaire par rapport à E. En particulier, si E = Rn et si E est
la base canonique de Rn et si C = (cij ) ∈ Mn (R) est la matrice de Q par rapport à E, on a
n
X X X n
n X
q(x) = cii x2i +2 cij xi xj = cij xi xj = xT Cx. (3.3)
i=1 1≤i<j≤n i=1 j=1

Le rang d’une forme quadratique q est le rang de sa forme polaire. Une forme quadratique est
dégénérée si sa forme polaire l’est. On définit l’orthogonalité par rapport à une forme quadratique
q comme l’orthogonalité par rapport à sa forme polaire et on utilise le symbole ⊥q . Une famille
orthogonale pour q est une famille orthogonale pour sa forme polaire c, et la notion d’orthogonal
d’une partie G de Rn pour q coı̈ncide avec celle d’orthogonal de G pour c.
La Proposition 3.2 se récrit en terme de formes quadratiques sous la forme
Proposition 3.3 Soit E un espace vectoriel réel de dimension n, et soit q une forme quadratique
sur E. Il existe n réels (γ1 , . . . , γn ) et n formes linéaires linéairement indépendantes (ℓi )i=1,...,n
telles que
n
X
q(x) = γi (ℓi (x))2 (3.4)
i=1

Démonstration. Soit c la forme polaire de q, et soit E = (e1 , . . . , en ) une base de E orthogonale


pour q (la Proposition 3.2 nous dit qu’une telle base existe). La matrice de c par rapport à E
est Diag(γ1 , . . . , γn ). On a
X n
q(x) = γi (ℓi (x))2
i=1
où (ℓi )1≤i≤n est la base duale de E, i.e. ℓi (ej ) = δij .
58 CHAPITRE 3. FORMES QUADRATIQUES ET HERMITIENNES

La proposition 3.3 nous dit que toute forme quadratique peut être décomposée en une com-
binaison de carrés de forme linéaires.
La réduction de Gauss en somme de carré permet de construire une telle décomposition, i.e.
de construire une base orthogonale pour une forme quadratique q.

La méthode de Gauss Supposons que la matrice de q dans une base E s’écrive C = (cij ),
i.., si on note xi les coordonnées d’un vecteur x dans E, on a
n
X X
q(x) = cii x2i + 2 cij xi xj .
i=1 1≤i<j≤n

On distingue deux cas :


1. L’un des coefficients diagonaux de C est non nul. Sans restriction, on peut supposer que
c11 6= 0. On a
 
2 X 1 X
q(x) =c11 x21 + c1j x1 xj + 2 ( c1j xj )2 
c11 c11
1<j≤n 1<j≤n
n
X X 1 X
+ cii x2i + 2 cij xi xj − ( c1j xj )2 .
c11
i=2 2≤i<j≤n 1<j≤n

On définit la forme linéaire ℓ1 et la forme quadratique q ′ par


X c1j n
X X 1 X
ℓ1 (x) = x1 + xj , q ′ (x) = cii x2i + 2 cij xi xj − ( c1j xj )2
c11 c11
1<j≤n i=2 2≤i<j≤n 1<j≤n

et on peut récrire l’identité précédente

q(x) = c11 (ℓ1 (x))2 + q ′ (x)

Il est clair que rang(q ′ ) ≤ n − 1, car q ′ (x) ne dépend pas de x1 .


2. Tous les coefficients diagonaux de C sont nuls. On peut supposer qu’un des coefficients
extra-diagonaux de C est non nul (sinon q = 0Pet on a fini). Sans restriction, P on peut
supposer que c12 6= 0. On pose ψ1 (x) = c12 x1 + ni=3 c2i xi et ψ2 (x) = c12 x2 + ni=3 c1i xi .
On a  
Xn n
X n X
X n
c2i c1j
ψ1 (x)ψ2 (x) = c12  c1i x1 xi + c2i x2 xi + xi xj  .
c12
i=2 i=3 i=3 j=3

On pose ℓ1 (x) = (ψ1 (x) + ψ2 (x)) et ℓ2 (x) = (ψ1 (x) − ψ2 (x)) et on appelle q ′ la forme
quadratique
X X n
n X
c2i c1j
q ′ (x) = 2 cij xi xj − 2 xi xj .
c12
3≤i<j≤n i=3 j=3

On a
1 
q(x) = (ℓ1 (x))2 − (ℓ2 (x))2 + q ′ (x)
2c12
et il est clair que rang(q ) ≤ n − 2, car q ′ (x) ne dépend pas de x1 , ni de x2 . Les formes

linéaires ℓ1 et ℓ2 sont linéairement indépendantes, car ψ1 et ψ2 sont linéairement indépendantes.


3.2. FORMES QUADRATIQUES 59

Dans les deux cas, on a construit une forme linéaire q ′ de rang strictement inférieur à celui de q.
Si q ′ est nulle, on a terminé. Sinon, on peut appliquer le procédé ci dessus à q ′ . En un nombre
fini d’étapes (plus petit que n), on construit ainsi r formes linéaires linéairement indépendantes
ℓ1 , . . . , ℓr et r réels non nuls γ1 , . . . , γr tels que
r
X
q(x) = γi (ℓi (x))2
i=1

Après, si r < n, on complète la famille des ℓi pour former une base de E ′ et on prend γi = 0
pour i > r. ⊓ ⊔
Exercice. Appliquer la méthode de Gauss à la forme quadratique sur R4 :

q(x) = 4x21 + 2x22 + 3x23 + x4 + 6x1 x2 + 12x1 x3 + 2x2 x4

Définition 3.10 Soit E un espace vectoriel sur R et q une forme quadratique sur E.
– On dit que q est positive si q(x) ≥ 0, ∀x ∈ E. On dit aussi parfois que q est semi-définie
positive.
– On dit que q est négative si q(x) ≤ 0, ∀x ∈ E. On dit aussi parfois que q est semi-définie
négative.
– On dit que q est définie positive si q est positive et si q(x) = 0 ⇔ x = 0.
– On dit que q est définie négative si q est négative et si q(x) = 0 ⇔ x = 0.

Définition 3.11 Soit A ∈ Mn (R), A symétrique.


– On dit que A est positive (ou semi-définie positive) si la forme quadratique x 7→ xT Ax est
positive.
– On dit que A est négative (ou semi-définie négative) si la forme quadratique x 7→ xT Ax
est négative.
– On dit que A est définie positive si la forme quadratique x 7→ xT Ax est définie positive.
– On dit que A est définie négative si la forme quadratique x 7→ xT Ax est définie négative.

Exercice. Montrer que la matrice tridiagonale dont les coefficients de la diagonale principale
sont égaux à 2 et les coefficients des deux autres diagonales sont −1 est positive.

Proposition 3.4 (inégalité de Cauchy-Schwarz) Soit q une forme quadratique positive sur
E et c sa forme polaire. On a, pour tout x et y dans E,

|c(x, y)|2 ≤ q(x)q(y).

Démonstration. On considère le polynôme de degré deux, µ 7→ q(x+µy) = µ2 q(y)+2µc(x, y)+


q(x). Comme q est positive, ce polynôme a son discriminant négatif ou nul : |c(x, y)|2 −q(x)q(y) ≤
0.

Théorème 3.2 (d’inertie de Sylvester) Soit E un espace vectoriel réel de dimension n, et


soit q une forme quadratique sur E. Il existe deux sous-espaces E+ et E− tels que
1. la restriction de q à E+ soit définie positive.
60 CHAPITRE 3. FORMES QUADRATIQUES ET HERMITIENNES

2. la restriction de q à E− soit définie négative.


3. on a la somme directe
E = E+ ⊕ E− ⊕ E ⊥q .
De plus, si deux sous-espaces F+ et F− ont les mêmes propriétés que E+ et E− , on

dim(E+ ) = dim(F+ ), dim(E− ) = dim(F− ).

Démonstration. Soit E = (e1 , . . . , en ) une base de E orthogonale pour q. On note Diag(γ1 , . . . , γn )


la matrice de q dans cette base. Quitte à permuter les vecteurs de base, on peut supposer que
pour 0 ≤ p1 ≤ p2 ≤ n, on a
γi > 0 pour 1 ≤ i ≤ p1 ,
γi < 0 pour p1 < i ≤ p2 ,
γi = 0 pour p2 < i ≤ n.

On prend alors E+ = V ect(ei , 1 ≤ i ≤ p1 ), E− = V ect(ei , p1 < i ≤ p2 ), et on a E ⊥q =


V ect(ei , p2 < i ≤ n). On vérifie facilement que E+ et E− ont les propriétés désirées.
Soient F− et F+ ayant les mêmes propriétés que E− et E+ . Comme p2 = n −
dim(E ⊥q ), on a dim(F+ )+dim(F− ) = p2 . Soit p′1 la dimension de F+ . On a F+ ∩(E− ⊕E ⊥q ) = {0}
ce qui implique que p′1 ≤ p1 . De même, on a F− ∩ (E+ ⊕ E ⊥q ) = {0} ce qui implique que
p2 − p′1 ≤ p2 − p1 . Des deux dernières inégalités, on déduit p′1 = p1 .

Définition 3.12 Soit E un espace vectoriel sur R de dimension finie et q une forme quadratique
sur E. Soit E+ , E− deux sous-espaces de E ayant les propriétés décrites dans le Théorème 3.2.
On appelle signature de q la paire (dim(E+ ), dim(E− ))

3.3 Formes Sesquilinéaires


Définition 3.13 Soit E et F deux espaces vectoriels sur C. On appelle forme sesquilinéaire sur
E × F une application s de E × F dans C, telle que ∀x, y ∈ E, ∀u, v ∈ F , ∀α, β ∈ C,
s(αx + βy, u) = αs(x, u) + βs(y, u)
s(x, αu + βv) = ᾱs(x, u) + β̄s(x, v)

On note S(E, F ) l’ensemble des formes sesquilinéaires sur E × F . Il est clair que S(E, F ) est
un espace vectoriel sur C.
Si E = F , on parle de forme sesquilinéaire sur E et on utilise la notation plus courte S(E) pour
l’espace vectoriel des formes sesquilinéaires sur E.

Remarque 3.10 Soit x ∈ E et u ∈ F . Il est clair que l’application qui à v ∈ F associe b(x, v̄)
est une forme linéaire sur F (un élément de F ′ ), et que l’application qui à y ∈ E associe b(y, u)
est une forme linéaire sur E (un élément de E ′ ).

Supposons que E est de dimension finie n, F est de dimension finie P m, et soient E = (eP1 , . . . , en )
et F = (f1 , . . . , fm ) des bases de E et F respectivement. Si x = nj=1 xj ej et si u = m i=1 ui fi ,
on vérifie facilement que pour toute forme sesquilinéaire s, on a
m X
X n
s(x, u) = s(ej , fi )xj ūi .
i=1 j=1
3.3. FORMES SESQUILINÉAIRES 61

On voit donc qu’une forme sesquilinéaire s est complètement déterminée par la connaissance
des m × n coefficients complexes sij = s(ej , fi ), ou encore de la matrice S = (sij ) ∈
1≤i≤m
1≤j≤n
Mm,n (C).
Définition 3.14 On dit que la matrice S construite ci-dessus est la matrice de la forme sesqui-
linéaire s par rapport aux bases E et F.
Si m = n, on appelle discriminant de b par rapport aux bases E et F le déterminant de la matrice
de b par rapport aux bases E et F.
Il est clair que l’application qui à s associe sa matrice par rapport aux bases E et F est un
isomorphisme de S(E, F ) sur Mm,n (C). On a donc dim(S(E, F )) = nm. Cet isomorphisme
n’est pas canonique car il dépend du choix des bases.
On a un isomorphisme canonique de S(Cn , Cm ) sur Mm,n (C), en choisissant E (respectivement
F) la base canonique de Cn (respectivement Cm ). Si S est la matrice de s par rapport aux bases
canoniques de Cn et Cm , on a
s(x, y) = y ∗ Sx. (3.5)
Regardons l’effet de changements de bases :
Lemme 3.8 Soient E = (e1 , . . . , en ) et E ′ = (e′1 , . . . , e′n ) deux bases de E, et F = (f1 , . . . , fm )
′ ) deux bases de F . On note P ∈ M (C) la matrice de passage de E dans
et F ′ = (f1′ , . . . , fm n
E ′ et Q ∈ Mm (C) la matrice de passage de F dans F ′ . Soit S la matrice de s par rapport aux
bases E et F. La matrice de s par rapport aux bases E ′ et F ′ est Q∗ SP .
Démonstration. exercice

On voit que le rang de la matrice de s par rapport aux bases E et F ne dépend pas du choix
des bases E et F.
Définition 3.15 Supposons que E est de dimension finie n, F est de dimension finie m. On
appelle rang d’une forme sesquilinéaire s sur E × F et on note rang(s) le rang de S, où S est
la matrice de s par rapport à deux bases quelconques E de E et F de F .

Définition 3.16 Supposons que E est de dimension finie n, F est de dimension finie m. On
dit que s ∈ S(E, F ) est une forme sesquilinéaire non dégénérée si m = n = rang(b) ou encore
si S (la matrice de s par rapport à deux bases quelconques E de E et F de F ) est carrée et
inversible. Dans le cas contraire, on dit que s est dégénérée.

Lemme 3.9 La forme sesquilinéaire s est non dégénérée si et seulement si


– l’application qui à x ∈ E associe la forme linéaire sur F : v 7→ b(x, v̄), est un isomorphisme
de E sur F ′ .
– l’application qui à u ∈ F associe la forme linéaire sur F : y 7→ b(y, ū), est un isomorphisme
de F sur E ′ .

Définition 3.17 Soit s une forme sesquinéaire sur E. On dit que s est une forme sesquilinéaire
hermitienne si b(x, y) = b(y, x), ∀x, y ∈ E.

Exemple. La forme sesquilinéaire s définie sur C3


s(x, y) = 2x1 ȳ1 + i(x1 ȳ2 − x2 ȳ1 ) + 3x2 ȳ2 + (2 + i)x1 ȳ3 + (2 − i)x3 ȳ1 + 3(x2 ȳ3 + x3 ȳ2 ) + 4x3 ȳ3
est une forme sesquilinéaire hermitienne.
62 CHAPITRE 3. FORMES QUADRATIQUES ET HERMITIENNES

Lemme 3.10 Soit E un espace vectoriel de dimension n sur C et s une forme sesquilinéaire
hermitienne sur E. Pour toute base E de E, la matrice de s par rapport à E est hermitienne.
Définition 3.18 Soient E un espace vectoriel de dimension n sur C et s une forme sesqui-
linéaire hermitienne sur E. On dit que deux vecteurs x et y de E sont orthogonaux pour s et on
note x ⊥s y si et seulement si s(x, y) = 0.
Soit C une partie de E. On note C ⊥s l’ensemble
C ⊥s = {x ∈ E : ∀y ∈ C, x ⊥s y}
Lemme 3.11 Soit s une forme sesquilinéaire hermitienne sur E et C une partie de E. L’en-
semble C ⊥s est un sous-espace vectoriel de E.
On a l’équivalence : s non dégénérée si et seulement si E ⊥s = {0}.
Lemme 3.12 Soient E un espace vectoriel de dimension n sur C. Soit s une forme sesqui-
linéaire hermitienne sur E, s non dégénérée, et G un sous-espace de E. On a dim(G⊥s ) +
dim(G) = n et (G⊥s )⊥s = G.
Si s est dégénérée, on a dim(G⊥s ) + dim(G) ≥ n et G ⊂ (G⊥s )⊥s .
Démonstration. Le cas G = {0} est trivial. Supposons G de dimension p > 0 et soit (e1 , . . . , ep )
une base de G. On note fi′ ∈ E ′ la forme linéaire : fi′ (v) = s(ei , v̄). D’après le Lemme 3.9,
(f1′ , . . . , fp′ ) est une famille libre de E ′ . L’application linéaire qui à v associe (f1′ (v), . . . , fp′ (v))
est donc de rang p. Donc le sous-espace W = ∩pi=1 ker(fi′ ) vérifie dim(W ) = n−p, par le théorème
du rang et on a G⊥s = {w̄, w ∈ W } donc dim(G⊥s ) = n − p.
D’autre part, il est clair que G ⊂ (G⊥s )⊥s et on vient de montrer que dim((G⊥s )⊥s ) = n −
dim(G⊥s ) = p, donc G = (G⊥s )⊥s .

Définition 3.19 Soit s une forme sesquilinéaire hermitienne sur E. On dit qu’un sous-espace
G de E est non isotrope pour s, s’il ne contient pas de vecteur x non nul tel que b(x, x) = 0.
Lemme 3.13 Soit s une forme sesquilinéaire hermitienne sur E et un sous-espace G de E non
isotrope pour s. On a G ⊕ G⊥s = E.
Démonstration. exercice

Définition 3.20 Soit E une famille de vecteurs de E. On dit que E est une famille orthogonale
pour s si et seulement si ses vecteurs sont orthogonaux deux à deux pour s. Soit E une base de
E. On dit que E est une base orthogonale pour s si c’est une famille orthogonale de vecteurs de
E. On dit que E est une base orthonormale pour s si E est une base orthogonale pour s et si
chaque vecteur e de E vérifie b(e, e) = 1.
Proposition 3.5 Si s est une forme sesquilinéaire hermitienne sur E, il existe une base ortho-
gonale de E pour s.
Démonstration. Identique à celle de la Proposition 3.2.

Théorème 3.3 (procédé d’orthogonalisation de Schmidt) Soit s une forme sesquilinéaire


hermitienne sur E telle que pour tout vecteur non nul x ∈ E, s(x, x) 6= 0. Soit (f1 , . . . , fp ) une
famille libre de vecteurs de E. Il existe une famille libre orthogonale (e1 , . . . , ep ) de vecteurs de
E pour s, telle que,
V ect(e1 , . . . , eq ) = V ect(f1 , . . . , fq ), ∀q ≤ p. (3.6)
3.4. FORMES HERMITIENNES 63

3.4 Formes Hermitiennes


Définition 3.21 Soit E un espace vectoriel sur C. Une forme hermitienne q sur E est une
application E dans R telle qu’il existe une forme sesquilinéaire hermitienne s sur E avec ∀x ∈ E,
q(x) = s(x, x).

À toute forme sesquilinéaire s, on peut associer une forme hermitienne q. Réciproquement, si q


est la forme hermitienne associée à s, on peut déduire s de q par

1
s(x, y) = (q(x + y) − q(x − y) + iq(x + iy) − iq(x − iy))
4
Grâce à la bijection ainsi construite, on peut utiliser pour les formes quadratique hermitiennes
les notions définies pour les formes sesquilinéaires hermitiennes.
La Proposition 3.5 se récrit en terme de formes quadratiques hermitiennes sous la forme

Proposition 3.6 Soit E un espace vectoriel sur C de dimension n, et soit q une forme her-
mitienne sur E. Il existe n réels (γ1 , . . . , γn ) et n formes linéaires linéairement indépendantes
(ℓi )i=1,...,n telles que
Xn
q(x) = γi |ℓi (x)|2 (3.7)
i=1

La méthode de Gauss Supposons que la matrice de q dans une base E s’écrive C = (cij ), i.e.,
si on note xi les coordonnées d’un vecteur x dans E, on a
n
X X
q(x) = cii |x|2i + 2ℜ( cij x̄i xj ).
i=1 1≤i<j≤n

On distingue deux cas :


1. L’un des coefficients diagonaux de C est non nul. Sans restriction, on peut supposer que
c11 6= 0. On a
 
2 X 1 X
q(x) =c11 |x1 |2 + ℜ( c1j x̄1 xj ) + 2 | c1j xj |2 
c11 c11
1<j≤n 1<j≤n
n
X X 1 X
+ cii |x|2i + 2ℜ( cij x̄i xj ) − | c1j xj |2
c11
i=2 2≤i<j≤n 1<j≤n

On définit la forme linéaire ℓ1 et la forme hermitienne q ′ par

X c1j n
X X
′ 1 X
ℓ1 (x) = x1 + xj , q (x) = cii |x|2i + 2ℜ( cij x̄i xj ) − | c1j xj |2
c11 c11
1<j≤n i=2 2≤i<j≤n 1<j≤n

et on peut récrire l’identité précédente

q(x) = c11 |ℓ1 (x)|2 + q ′ (x)

Il est clair que rang(q ′ ) ≤ n − 1, car q ′ (x) ne dépend pas de x1 .


64 CHAPITRE 3. FORMES QUADRATIQUES ET HERMITIENNES

2. Tous les coefficients diagonaux de C sont nuls.


X
q ′ (x) = 2ℜ( cij xi xj ).
1≤i<j≤n

On peut supposer qu’un des coefficients extra-diagonaux de C est non nul (sinon Pnq =c2i
0 et
on a fini). Sans restriction,
Pn on peut supposer que c12 6
= 0. On pose ψ1 (x) = x 1 + i=3 c̄12 xi
et ψ2 (x) = c12 x2 + i=3 c1i xi . On a
 
Xn Xn Xn X n
c2i c1j
ψ1 (x)ψ2 (x) =  c1i x1 xi + c2i x2 xi + xi xj  .
c12
 i=2 i=3 i=3 j=3

Xn Xn Xn X n
c2i c1j
ψ1 (x)ψ2 (x) =  c1i x1 xi + c2i x2 xi + xi xj  .
c12
i=2 i=3 i=3 j=3

Donc
  1
q(x) = 2ℜ ψ1 (x)ψ2 (x) + q ′ (x) = (|ψ1 (x) + ψ2 (x)|2 − |ψ1 (x) − ψ2 (x)|2 ) + q ′ (x)
2
où
X X n
n X
c2i c1j
q ′ (x) = 2ℜ( cij xi xj ) − 2ℜ( xi xj )
c12
3≤i<j≤n i=3 j=3

et il est clair querang(q ′ ) ≤ n − 2, car q ′ (x)


ne dépend pas de x1 , ni de x2 . Les formes
linéaires ℓ1 = ψ1 + ψ2 et ℓ2 = ψ1 − ψ2 sont linéairement indépendantes, car ψ1 et ψ2 sont
linéairement indépendantes.
Dans les deux cas, on a construit une forme linéaire q ′ de rang strictement inférieur à celui de q.
Si q ′ est nulle, on a terminé. Sinon, on peut appliquer le procédé ci dessus à q ′ . En un nombre
fini d’étapes (plus petit que n), on construit ainsi r formes linéaires linéairement indépendantes
ℓ1 , . . . , ℓr et r réels non nuls γ1 , . . . , γr tels que
r
X
q(x) = γi |ℓi (x)|2
i=1

Après, si r < n, on complète la famille des ℓi pour former une base de E ′ et on prend γi = 0
pour i > r. ⊓ ⊔On peut définir les formes hermitiennes positives, définies positives, négatives,
définies négatives, comme pour les formes quadratiques réelles. De même, on définit les matrices
hermitiennes positives, définies positives, négatives, définies négatives.
Proposition 3.7 (inégalité de Cauchy-Schwarz) Soit q une forme hermitienne positive sur
E et s sa forme sesquilinéaire associée. On a, pour tout x et y dans E,
|s(x, y)|2 ≤ q(x)q(y).
Démonstration. On considère l’application de C à valeurs dans R+ , µ 7→ q(x+µy) = |µ|2 q(y)+
2ℜ(µs(y, x)) + q(x). Si q(y) = 0, alors la positivité de cette application ne peut être obtenue que
si s(x, y) = 0.
Si q(y) > 0, on prend µ = − s(x,y)
q(y) , et on obtient

|s(x, y)|2
− + q(x) ≥ 0,
q(y)
qui est le résultat désiré.
3.4. FORMES HERMITIENNES 65

Théorème 3.4 (d’inertie de Sylvester) Soit E un espace vectoriel sur C de dimension n,


et soit q une forme hermitienne sur E. Il existe deux sous-espaces E+ et E− tels que
1. la restriction de q à E+ soit définie positive.
2. la restriction de q à E− soit définie négative.
3. on a la somme directe
E = E+ ⊕ E− ⊕ E ⊥q .

De plus, si deux sous-espaces F+ et F− ont les mêmes propriétés que E+ et E− , on

dim(E+ ) = dim(F+ ), dim(E− ) = dim(F− ).

Définition 3.22 Soit E un espace vectoriel sur C de dimension finie et q une forme hermitienne
sur E. Soit E+ , E− deux sous-espaces de E ayant les propriétés décrites dans le Théorème 3.4.
On appelle signature de q la paire (dim(E+ ), dim(E− ))
66 CHAPITRE 3. FORMES QUADRATIQUES ET HERMITIENNES
Chapitre 4

Analyse matricielle

Ici K désigne C ou R.

4.1 Normes vectorielles et matricielles


4.1.1 Définitions
On rappelle qu’une norme k k dans Kn est une application de Kn dans R+ qui à v associe
kvk avec les propriétés suivantes
1. kvk = 0 si et seulement si v = 0.
2. kαvk = |α|kvk.
3. kv + wk ≤ kvk + kwk.

4.1.2 Les normes k kp


Une famille de normes très utiles est celle des normes k kp où p est un réel plus grand que ou
égal à 1 :
n
!1
X p

kvkp = |vi |p . (4.1)


i=1

On définira aussi k k∞ par


kvk∞ = max |vi |. (4.2)
i=1...n

Il est clair que k k∞ et k k1 sont des normes. Pour montrer que k kp est une norme pour 1 < p < ∞,
on a les lemmes :

Lemme 4.1 Si p est un réel tel que 1 < p < ∞, et si x et y sont des réels non négatifs, alors

1 1
xy ≤ xp + y q (4.3)
p q
1 1
où q est le réel défini par q + p = 1.

Démonstration. On a xy = exp(log(x) + log(y)) = exp( p1 log(xp ) + 1


q log(y q )). On utilise la
convexité de l’application exponentielle pour conclure

67
68 CHAPITRE 4. ANALYSE MATRICIELLE

Lemme 4.2 (inégalité de Hölder) Si p est un réel tel que 1 < p < ∞, alors pour tous
vecteurs x ∈ Kn , y ∈ Kn ,
|y ∗ x| ≤ kxkp kykq (4.4)
P
Démonstration. Posons x̃ = kxk 1
p
x et ỹ = kyk 1
q
y. On applique (4.3). On a |ỹ ∗ x̃| ≤ 1p ni=1 kxk
1 p
p |xi | +

1 P n 1 q 1 1
p

q i=1 kykq |yi | = p + q = 1. On en déduit immédiatement (4.4).


q

Proposition 4.1 Pour 1 < p < ∞, k kp est une norme.

Démonstration. La seule propriété


P non complètement P immédiate est l’inégalité
P triangulaire :
pour cela on écrit kx+ykpp = ni=1 |xi +yi ||xi +yi |p−1 ≤ ni=1 |xi ||xi +yi |p−1 + ni=1 |yi ||xi +yi |p−1 .
On utilise l’inégalité de Hölder :
n
X n
X
|xi ||zi | ≤ kxkp kzkq et |yi ||zi | ≤ kykp kzkq ,
i=1 i=1

p
où z ∈ Rn est le vecteur dont les composantes sont zi = |xi + yi |p−1 . Mais q = p−1 , donc
kzkq = kx + ykp−1
p . On en conclut que

kx + ykpp ≤ (kxkp + kykp )kx + ykp−1


p .

Exercice. Montrer en trouvant des contre-exemples que si p < 1, k kp n’est pas une norme dans
R2 .

La norme k k2 est la norme euclidienne bien connue : elle est associée au produit scalaire usuel,
et on a l’inégalité de Cauchy-Schwarz bien connue

|u∗ v| ≤ kuk2 kvk2 . (4.5)

En dimension finie, toutes les normes sont équivalentes, mais les constantes d’équivalence dépendent
en général de la dimension n :

Proposition 4.2 Soit u un vecteur de Kn : on a


1 1
pour 1 ≤ q < p < +∞, kukp ≤ kukq ≤ n q − p kukp . (4.6)

1
pour 1 ≤ p < +∞, kuk∞ ≤ kukp ≤ n p kuk∞ . (4.7)
P 1 P p 1
Démonstration. Soit p et q tels que 1 ≤ q < p < +∞, kukp = ( ni=1 |ui |p ) p = ( ni=1 (|ui |q ) q ) p .
P p P p
Mais ni=1 (|ui |q ) q ≤ ( ni=1 (|ui |q )) q car q < p. P P
C’est l’inégalité de Jensen : ∀α > 1, ∀xi > 0, i = 1 . . . n, ni=1 xαi ≤ ( ni=1 xi )α , car
n
X X n
xα x
Pn i α
≤ Pn i =1
( j=1 xj ) j=1 xj
i=1 i=1

car Pnxi ≤ 1.
j=1 xj
P p 1 P 1
On en déduit que ( ni=1 (|ui |q ) q ) p ≤ ( ni=1 |ui |q ) q = kukq . Donc kukp ≤ kukq et on a l’inégalité
4.1. NORMES VECTORIELLES ET MATRICIELLES 69

de gauche dans (4.6).


Pour montrer l’inégalité de droite dans (4.6), on procède comme suit
n
X n
X Xn
1− pq q
kukqq = q
|ui | = q
1.|ui | ≤ n ( |ui |p ) p .
i=1 i=1 i=1
1 1
C’est l’inégalité de Hölder avec les normes k k p etk k p . Donc kukq ≤ n q − p kukp .
q p−q
On laisse l’inégalité (4.7) en exercice.

4.1.3 Normes matricielles


Définition 4.1 L’application k k de Mn (K) → R+ est une norme matricielle si et seulement
si
1. ∀A ∈ Mn (K), kAk = 0 si et seulement si A = 0.
2. ∀A ∈ Mn (K), ∀α ∈ K, kαAk = |α|kAk.
3. ∀A, B ∈ Mn (K), kA + Bk ≤ kAk + kBk.
et de plus
∀A, B ∈ Mn (K), kABk ≤ kAkkBk. (4.8)

Remarque 4.1 Il existe des normes sur Mn (K) qui ne sont pas des normes matricielles ; La
norme kAk = max1≤i,j≤2 |aij | est une norme sur M2 (R), mais
 
1 1
A= et kA2 k = 2 ≥ kAk2 = 1
1 1

Normes subordonnées à des normes vectorielles


Proposition 4.3 À une norme k k sur Kn , on peut associer une norme matricielle sur Mn (K)
qu’on note encore k k par : pour tout A ∈ Mn (K),
kAxk kAxk
kAk = sup = max n = max kAxk (4.9)
06=x∈Kn kxk 06=x∈K kxk x∈Kn ,kxk=1

On dit que la norme matricielle k k est la norme matricielle subordonnée à k k.

Démonstration. Soit donc k k une norme sur Kn .


Exercice Montrer les égalités dans (4.9). Vérifier que la norme subordonnée est bien une norme
sur Mn (K).
Il reste juste à démontrer que la norme subordonnée a la propriété (4.8). On a par définition
des normes subordonnées que kAxk ≤ kAkkxk pour tout x ∈ Kn : donc kABxk ≤ kAkkBxk ≤
kAkkBkkxk et on obtient bien (4.8) en divisant par kxk et en prenant le sup.

Lemme 4.3 Soit k.k une norme subordonnée sur Mn (K). On a kIn k = 1.
Démonstration. exercice.

Pour 1 ≤ p ≤ ∞, on va noter k kp la norme matricielle subordonnée à la norme k kp sur Kn .


On a les identités suivantes
70 CHAPITRE 4. ANALYSE MATRICIELLE

Proposition 4.4
n
X
kAk∞ = max |ai,j |. (4.10)
1≤i≤n
j=1
n
X
kAk1 = max |ai,j | = kA∗ k∞ . (4.11)
1≤j≤n
i=1
p p
kAk2 = σmax (A) = ρ(A∗ A) = ρ(AA∗ ) = kA∗ k2 . (4.12)
où ρ(M ) désigne le module maximal des valeurs propres de M .
Démonstration. On a, pour tout x ∈ Kn ,
 
n
X n
X
kAxk∞ = max | ai,j xj | ≤  max |ai,j | kxk∞ ,
1≤i≤n 1≤i≤n
j=1 j=1
Pn
d’où l’inégalité kAk∞ ≤Pmax1≤i≤n j=1 |ai,j |. Pour
Pn montrer l’égalité, on appelle i0 l’indice
n
réalisant le maximum : j=1 |ai0 ,j | = max1≤i≤n j=1 |ai,j |. On choisit alors x de la manière
āi0 ,j
suivante : xj = si ai0 ,j 6= 0 et xj = 0 sinon. Il est clair que kxk∞ = 1 et on voit que
|ai0 ,j |
Pn
la coordonnée d’indice
Pn i0 de Ax est j=1 |ai0 ,j |. On a donc trouvé x tel que kxk∞ = 1 et
kAxk∞ ≥ max1≤i≤n j=1 |ai,j |. On a prouvé (4.10).
On a, pour tout x ∈ Kn ,
n n
! n
X X X X
kAxk1 = | ai,j xj | ≤ max |ai,j | |xj |,
1≤j≤n
1≤i≤n j=1 i=1 j=1
Pn
d’où l’inégalité kAk1 ≤ P max1≤j≤n i=1 |ai,j |. Pour
P montrer l’égalité, on appelle j0 l’indice
réalisant le maximum : ni=1 |ai,j0 | = max1≤j≤n ni=1 |ai,j |. On choisitP alors x de la manière
suivante : xj = δj,j0 . Il est clair que kxk1 = 1 etPon voit que kAxk1 = ni=1 |ai,j0 |. On a donc
trouvé x tel que kxk1 = 1 et kAxk1 ≥ max1≤j≤n ni=1 |ai,j |. On a prouvé (4.11).
On a
kAxk22 x∗ A∗ Ax
kAk22 = sup 2 = sup 2
06=x∈Kn kxk2 06=x∈Kn kxk2
∗ ∗
Mais A∗ A est hermitienne donc diagonalisable dans une base orthonormale et on a sup06=x∈Kn x kxkA Ax
2 =
2
∗ ∗
ρ(A A). De plus, si λ est une valeur propre non nulle de A A, il existe vλ 6= 0 tel que
A∗ Avλ = λvλ . Alors AA∗ Avλ = λAvλ . Donc Avλ est un vecteur propre (car non nul) de AA∗
avec la valeur propre λ. Si λ est une valeur propre non nulle de A∗ A c’est aussi une valeur propre
de AA∗ . Donc si ρ(A∗ A) 6= 0 alors ρ(AA∗ ) = ρ(A∗ A). Ceci est encore vrai si ρ(A∗ A) = 0, car on
a lors A = 0. On a donc prouvé (4.12).

Proposition 4.5 Si U est une matrice unitaire de Mn (C), on a pour tout A ∈ Mn (C),
kAk2 = kU Ak2 = kAU k2 = kU AU ∗ k2 . (4.13)
Si A est normale,
kAk2 = ρ(A). (4.14)
Enfin, pour toute matrice A ∈ Mn (C),
kAk22 = kA∗ Ak2 . (4.15)
4.1. NORMES VECTORIELLES ET MATRICIELLES 71

Démonstration. On laisse le premier point en exercice.


Si A est normale, A est semblable à une matrice diagonale D par une transformation unitaire :
on a kAk2 = kDk2 d’après le premier point et il est facile vérifier que kDk2 = ρ(D) = ρ(A).
Enfin, on a, pour toute matrice A,
kAk22 = ρ(A∗ A) = kA∗ Ak2 .

Remarque 4.2 L’égalité (4.14) est vraie en particulier si A est réelle symétrique ou hermi-
tienne.
Proposition 4.6 On a les inégalités : pour p : 1 ≤ p < +∞,
− p1 1
n kAk∞ ≤ kAkp ≤ n p kAk∞ (4.16)
pour p, q : 1 ≤ p < q < +∞,
1
− p1 1
− q1
nq kAkq ≤ kAkp ≤ n p kAkq (4.17)

p
kAk2 ≤ kAk∞ kAk1 (4.18)
Démonstration. On laisse (4.16) et (4.17) en exercice. Pour prouver (4.18), on utilise (4.15) :
kAk22 = kA∗ Ak2 = ρ(A∗ A). On verra par la suite, cf. Proposition 4.9 que pour toute norme
matricielle k.k, on a ρ(A∗ A) ≤ kA∗ Ak : donc
kAk22 = ρ(A∗ A) ≤ kA∗ Ak∞
≤ kA∗ k∞ kAk∞ = kAk1 kAk∞ .

Norme de Frobenius
On définit la norme de Frobenius d’une matrice M d’ordre n
X X
kM k2F = |mi,j |2 . (4.19)
1≤i≤n 1≤j≤n

On vérifie facilement que


kM k2F = trace(M ∗ M ) = trace(M M ∗ ) = kM ∗ k2F . (4.20)
Le carré de la norme de Frobenius de M est donc la somme du carré de ses valeurs singulières.
On en déduit que √
kM k2 ≤ kM kF ≤ nkM k2 . (4.21)
De (4.20), on déduit aussi que si P s’écrit P = Q∗ M Q avec Q unitaire, alors kP kF = kM kF ,
car la trace de P ∗ P est égale à celle de Q∗ M ∗ M Q qui est égale à celle de M ∗ M .
Enfin, la norme de Frobenius a la propriété (4.8) : en effet, en appliquant l’inégalité de Cauchy-
Schwarz dans Kn , on a
n X n n n X n n n
!
X X X X X
kABk2F = | Aik Bkj |2 ≤ |Aik |2 |Blj |2 = kAk2F kBk2F
i=1 j=1 k=1 i=1 j=1 k=1 l=1

La norme de Frobenius est donc une norme matricielle.



Elle n’est pas subordonnée à une norme vectorielle, car kIn k = n 6= 1.
72 CHAPITRE 4. ANALYSE MATRICIELLE

4.2 Nombre de conditionnement


On s’intéresse ici à la sensibilité d’un système linéaire Ax = b , A ∈ Mn (K), x, b ∈ Kn à des
perturbations du second membre b ou de la matrice A.
Définition 4.2 On considère une norme k k sur Kn et on note encore k k la norme subor-
donnée dans Mn (K) : ∀M ∈ Mn (K), kM k = sup06=x∈Kn kM xk
kxk . Pour une matrice A ∈ Mn (K)
inversible, on définit le nombre de conditionnement de A par rapport à la norme k k par
condk k (A) = kAkkA−1 k.
On vérifie facilement avec (4.8) que condk k (A) ≥ 1.

Remarque 4.3 Il est clair que si α ∈ K\{0} alors condk.k (αA) = condk.k (A), et que condk.k (A−1 ) =
condk.k (A).
Un exemple important est le conditionnement par rapport à la norme k k2 , qu’on note cond2 :
on peut le caractériser par
(A)
– cond2 (A) = σσmaxmin (A)
, où σmax (A) et σmin (A) sont respectivement la plus grande et la plus
petite valeur singulière de A.
– si A est normale (en particulier hermitienne), on a la caractérisation plus simple : cond2 (A) =
|λ|max (A)
|λ|min (A) ou |λ|max (A) et |λ|min (A) sont les plus grand et plus petit modules des valeurs
propres de A.

4.2.1 Sensibilité de la solution d’un système linéaire


On veut étudier la sensibilité de la solution du système Ax = b (A inversible) à une variation
du second membre δb : on a A(x + δx) = b + δb, ce qui implique que δx = A−1 δb, donc kδxk ≤
kA−1 kkδbk. D’autre part kbk ≤ kAkkxk, par suite kδxk −1 kδbk kδbk
kxk ≤ kAkkA k kbk = condk k (A) kbk . On
a le résultat
Proposition 4.7 Si Ax = b et A(x + δx) = b + δb on a
kδxk kδbk
≤ condk k (A) , (4.22)
kxk kbk
et on peut trouver x et δb tels que cette inégalité soit une égalité.
Démonstration. On a déjà prouvé la première assertion.
kAxk kAyk
La dernière assertion est prouvée en prenant x réalisant le maximum : kxk = max06=y kyk =
kA−1 δbk −1
kAk et δb réalisant le maximum kδbk = max06=y kAkykyk = kA−1 k. L’inégalité (4.22) est donc
optimale.

On s’intéresse maintenant à la sensibilité aux perturbations de la matrice A : soit donc une


perturbation δA de A et x + δx la solution de (A + δA)(x + δx) = b. On a δx = −A−1 δA(x + δx),
kδxk
d’où kx+δxk ≤ kA−1 kkδAk = condk k (A) kδAk
kAk .

Proposition 4.8 Si Ax = b et (A + δA)(x + δx) = b on a


kδxk kδAk
≤ condk k (A) , (4.23)
kx + δxk kAk
et on peut trouver A, x et δx tels que cette inégalité soit une égalité.
4.3. RAYON SPECTRAL D’UNE MATRICE 73

Démonstration. La dernière assertion est prouvée en prenant δA = I et y ∈ Kn réalisant le


−1
maximum de kAkykyk . On prend alors b = (A + δA)y et x tel que Ax = b. On a δx = y − x. Pour
ce choix de matrices et de vecteurs, l’inégalité (4.23) devient une égalité.

4.3 Rayon spectral d’une matrice


Dans cette section et la suivante, on considère des matrices de Md (C).

4.3.1 Définition et propriétés


Définition 4.3 Soit A une matrice de Md (C). On sait que le polynôme caractéristique de A a
d racines complexes. On appelle spectre de A et on note sp(A) l’ensemble formé de ses d valeurs
propres (comptées avec leur multiplicité). On appelle rayon spectral de A et on note ρ(A) le réel
positif ou nul défini par
ρ(A) = max |λ|. (4.24)
λ∈sp(A)

Proposition 4.9 ;

1. Soit k k une norme matricielle sur Md (C) (ayant donc la propriété multiplicative (4.8))

ρ(A) ≤ kAk (4.25)

2. De plus pour toute matrice A et pour tout réel positif ǫ, il existe une norme matricielle k k
subordonnée à une norme vectorielle telle que

kAk ≤ ρ(A) + ǫ.

Démonstration. Démontrons le premier point. Soit k k une norme matricielle sur Md (C). On
peut alors définir une norme vectorielle sur Cd qu’on note ||| ||| par

|||v||| = kMv k, où Mv = (v, . . . , v)

Exercice Vérifier qu’il s’agit bien d’une norme sur Cd .


Soit λ une valeur propre de A telle que |λ| = ρ(A) et vλ un vecteur propre correspondant : on a

ρ(A)|||v||| = |||Av||| ≤ k(Av, . . . , Av)k = kA(v, . . . , v)k ≤ kAkk(v, . . . , v)k = kAk|||v|||,

l’inégalité venant de la propriété (4.8). On a donc

ρ(A) ≤ kAk.

Pour le deuxième point, on sait qu’il existe une matrice unitaire U et une matrice triangulaire
supérieure R telles que A = U RU ∗ . La matrice triangulaire R s’écrit
 
λ1 r12 ... r1d
 λ2 r23 . . . r2d 
 
 . . . . .
. 
R= . . . 
 
 λd−1 rd−1 d 
λd
74 CHAPITRE 4. ANALYSE MATRICIELLE

Soit alors la matrice Dη = Diag(1, η, . . . ηd−1 ). On considère la norme ||| ||| définie par

|||M ||| = kDη−1 U ∗ M U Dη k∞

On a  
λ1 ηr12 . . . η d−1 r1d
 λ2 ηr23 . . . η d−2 r2d 
 
 .. .. .. 
Dη−1 U ∗ AU Dη = Dη−1 RDη =  . . . 
 
 λd−1 ηrd−1 d 
λd
 P 
Donc |||A||| = max1≤i≤d |λi | + j>i η j−i |rij | . Pour ǫ > 0 fixé, on peut choisir η assez petit
pour que |||A||| ≤ ρ(A) + ǫ.
Enfin on vérifiera facilement que ||| ||| est la norme subordonnée à la norme vectorielle

|||v||| = kDη−1 U ∗ vk∞

Proposition 4.10 1. Pour toute norme matricielle sur Md (C) et pour toute matrice A ∈
Md (C), on a l’implication

kAk < 1 ⇒ Id + A inversible

2. Si la norme k.k est de plus subordonnée à une norme sur Cn et si kAk < 1 alors
1
k(Id + A)−1 k ≤ .
1 − kAk

Démonstration.
1. Si Id + A n’est pas inversible, il existe u 6= 0 tel que Au = −u, et kAk ≥ ρ(A) ≥ 1. Donc,
si kAk < 1 alors Id + A est inversible.
2. Si k.k est une norme subordonnée, on a kId k = 1 et (Id + A)−1 = Id − A(Id + A)−1 , et
donc k(Id + A)−1 k ≤ 1 + kAkk(Id + A)−1 k ce qui donne le résultat désiré.

Remarque 4.4 On a aussi par contraposition : si Id + A n’est pas inversible alors kAk ≥ 1,
pour toute norme matricielle subordonnée ou non.

4.3.2 Suite des puissances d’une matrice


On dit qu’une suite de matrices (An )n∈N dans Md,d′ (C) tend vers 0, si pour une norme k k
définie sur Md,d′ (C), la suite (kAn k)n∈N tend vers 0 quand n → ∞.
Comme toutes les normes sont équivalentes, cette convergence a alors lieu pour toutes les normes.
Si d = d′ , en prenant les normes subordonnées aux normes vectorielles, on voit que

An → 0 ⇔ ∀v ∈ Cd , An v → 0.

On déduit de la proposition 4.9 le théorème :


4.3. RAYON SPECTRAL D’UNE MATRICE 75

Théorème 4.1 Soit A ∈ Md (C). Une condition nécessaire et suffisante pour que la suite des
puissances de A, (An )n∈N , converge vers 0 est que

ρ(A) < 1. (4.26)

Démonstration. Soit une matrice A ∈ Md (C) telle que An → 0 quand n → ∞. Il est clair que
ρ(An ) = ρn (A). Mais d’après la proposition 4.9, ρn (A) ≤ kAn k, pour toute norme matricielle.
Donc ρn (A) → 0, ce qui implique que ρ(A) < 1.
Réciproquement, soit une matrice telle que ρ(A) < 1. D’après la proposition 4.9, il existe une
norme matricielle k k subordonnée à une norme vectorielle, telle que kAk < 1. Comme k k a la
propriété (4.8), kAn k ≤ kAkn → 0 quand n → ∞.

Le résultat suivant est une caractérisation du rayon spectral d’une matrice :

Théorème 4.2 Pour toute norme matricielle sur Mn (C),


1
ρ(A) = lim kAn k n . (4.27)
n→∞

Démonstration. On a bien sûr :


1
ρ(A) ≤ kAn k n , ∀n > 0,

car ρ(A)n = ρ(An ) ≤ kAn k. Donc


1
ρ(A) ≤ lim inf kAn k n . (4.28)
n→∞

1
D’autre part, pour ǫ > 0, considérons la matrice Aǫ = ρ(A)+ǫ A. On a que ρ(Aǫ ) < 1, donc
n
limn→∞ Aǫ = 0 : il existe donc N > 0 tel que pour tout n > N ,

kAnǫ k ≤ 1,

ce qu’on écrit aussi


kAn k ≤ (ρ(A) + ǫ)n .

Donc, pour tout ǫ > 0,


1
lim sup kAn k n ≤ ρ(A) + ǫ,
n→∞

donc
1
lim sup kAn k n ≤ ρ(A).
n→∞

P∞ n
Proposition 4.11 La série n=0 A est convergente si et seulement si ρ(A) < 1. On a alors


X
(Id − A)−1 = An .
n=0
76 CHAPITRE 4. ANALYSE MATRICIELLE

Démonstration. Pour tout ǫ, il existe une norme subordonnée k.k vérifiant kAk ≤ ρ(A) + ǫ,
ce
P∞ qui montre que si ρ(A) < 1, il existe une norme subordonnée k.k vérifiant kAk < 1 ; la série
n
n=0 A est absolument convergente pour cette norme et on vérifie que


X N
X
(Id − A) An = lim (Id − A) An = Id − lim AN +1 = Id .
N →∞ N →∞
n=0 n=0
P∞ n
Réciproquement,
P∞ n si n=0 A est convergente, alors pour toute valeur propre λ (complexe) de
A, on a n=0 λ converge, ce qui implique que |λ| < 1. On en déduit que ρ(A) < 1.

Remarque 4.5 Sous les hypothèses de la Proposition 4.11 on a



X
−1
(Id + A) = (−1)n An .
n=0

4.4 Sensibilité d’un problème aux valeurs propres


Exemple. On considère la matrice de Mn (R)
 
0 ... ǫ
 1 0 ... 0 
 
 . . 
 0 .. .. 
 
 .. 
 . 
0 ... 1 0

Son polynôme caractéristique est xn ± ǫ : les valeurs propres sont nulles si ǫ = 0 et ce sont les
racines n ièmes de ±ǫ si ǫ 6= 0. Si n = 10 et si ǫ = 10−10 , les valeurs propres ont pour module 0.1.
On voit donc qu’une perturbation de 10−10 d’un coefficient de la matrice entraı̂ne des variations
importantes des valeurs propres.

On note σ(A) le spectre d’une matrice A de Mn (C).


Pour tenter de comprendre la sensibilité des valeurs propres aux perturbations d’une matrice,
on a le résultat

Théorème 4.3 Soit A ∈ Mn (C) diagonalisable, et P une matrice de changement de base telle
que P −1 AP = Diag(λ1 , . . . λn ). Soit kk une norme sur Mn (C) telle que

kM N k ≤ kM kkN k et kDiag(µ1 . . . µn )k = max |µi |


i=1...n

alors pour toute perturbation δA de A, on a

σ(A + δA) ⊂ ∪ni=1 Di (4.29)

et
Di = {µ ∈ C; |µ − λi | ≤ condk k (P )kδAk}. (4.30)

Démonstration On sait que µ est valeur propre de A + δA si et seulement si A + δA − µI n’est


pas inversible. En multipliant à droite par P et à gauche par P −1 , ceci est équivalent à dire que
Diag(λ1 − µ, . . . , λn − µ) + P −1 δAP est singulière. Deux cas se présentent :
4.4. SENSIBILITÉ D’UN PROBLÈME AUX VALEURS PROPRES 77

1. si Diag(λ1 − µ, . . . , λn − µ) est singulière, alors µ ∈ Di pour un indice i ∈ {1, . . . , n}.


2. sinon, I + Diag((λ1 − µ)−1 , . . . , (λn − µ)−1 )P −1 δAP est singulière. Ceci implique que
kDiag((λ1 − µ)−1 , . . . , (λn − µ)−1 )P −1 δAP k ≥ 1, autrement on pourrait construire un
inverse avec une série. Les propriétés de la norme impliquent alors que kDiag((λ1 −
µ)−1 , . . . , (λn −µ)−1 )kkP −1 kkδAkkP k ≥ 1, soit encore maxi |λi −µ|−1 condk k (P )kδAk ≥ 1.
On en déduit que
min |λi − µ| ≤ condk k (P )kδAk
i

Remarque 4.6 La sensibilité d’un problème aux valeurs propres d’une matrice A diagonalisable
par rapport aux perturbations dépend donc du conditionnement de la matrice de passage P et
non pas de celui de A.

Remarque 4.7 Si A est normale, on sait que A est diagonalisable avec P unitaire. On a
cond2 (P ) = 1. Dans ce cas les valeurs propres de A sont contenues dans des cercles centrés
aux valeurs propres de A et de rayon kδAk2 .

Remarque 4.8 On a un résultat plus précis si A et δA sont hermitiennes. Dans ce cas, cf.
[2], le théorème du min-max permet de dire que si on ordonne les valeurs propres par valeur
croissante, les k ièmes valeurs propres de A et A + δA sont distantes d’au plus kδAk2 .
78 CHAPITRE 4. ANALYSE MATRICIELLE
Chapitre 5

Méthodes Directes pour les


Systèmes Linéaires

Le but est de résoudre le système linéaire dans Cn : trouver x ∈ Cn tel que


Ax = b, A ∈ Mn (C),
où b ∈ Cn . On suppose que A ∈ Mn (C) est inversible.

Cas où A est triangulaire supérieure : remontée La matrice A = (aij )i,j∈{1,...,n} est
triangulaire supérieure :
aij = 0 si j < i
Comme A est inversible,
aii 6= 0 si 1 ≤ i ≤ n.
Le système s’ écrit
a11 x1 + a12 x2 + . . . + a1n xn = b1
a22 x2 + . . . + a2n xn = b2
..
.
ann xn = bn
On résout le système en remontant
xn = bn /ann
xn−1 = (bn−1 − an−1 n xn )/an−1 n−1
..
.
x1 = (b1 − a12 x2 − · · · − a1n xn )/a11
Coût du calcul de xk :
xk = (bk − ak k+1 xk+1 − · · · − akn xn )/akk →
(n − k) additions
(n − k) multiplications
1 division
Coût total de la remontée :
n
X 1 n2
∼ (n − k) = (n − 1)n ∼ additions+multiplications
2 2
k=1

79
80 CHAPITRE 5. MÉTHODES DIRECTES POUR LES SYSTÈMES LINÉAIRES

Cas où A est triangulaire inférieure : descente La matrice A = (aij )i,j∈{1,...,n} est
triangulaire inférieure :
aij = 0 si i < j

Comme A est inversible,


aii 6= 0 si 1 ≤ i ≤ n.

Le système s’ écrit
a11 x1 = b1
a21 x1 + a22 x2 = b2
..
.
an1 x1 + an2 x2 + . . . + ann xn = bn
On résout le système en descendant

x1 = b1 /a11
x2 = (b2 − a21 x1 )/a22
..
.
xn = (bn − an n−1 xn−1 − · · · − an1 x1 )/ann

Coût total de la descente :


n
X 1 n2
∼ k= (n − 1)n ∼ additions+multiplications
2 2
k=1

5.0.1 Algorithme d’élimination de Gauss sans recherche de pivot, et in-


terprétation matricielle
On suppose que A est inversible. On veut résoudre le système : trouver x ∈ Cn tel que

Ax = b, A ∈ Mn (C),

où b ∈ Cn . On suppose que A ∈ Mn (C) est inversible.


Le but est de se ramener à un système triangulaire

Première étape : élimination de l’inconnue x1 des lignes 2 à n. On va chercher un


système équivalent (ayant la même solution x), où x1 n’apparaı̂t que dans la ligne 1.
Première Hypothèse :

a11 6= 0 → on appelle premier pivot π (1) = a11 .

On peut alors former une combinaison linéaire de la ligne i > 1 avec la ligne 1 pour éliminer
l’inconnue x1 dans la ligne i : la ligne i devient
ai1 ai1 ai1
0x1 + (ai2 − (1)
a12 )x2 + · · · + (ain − (1) a1n )xn = bi − (1) b1 ,
π π π
ce qu’on peut réécrire
(2) (2) (2)
ai2 x2 + · · · + ain xn = bi , ∀i > 1
81

en posant
(2) ai1
ai2 = ai2 − a ,
π (1) 12
..
.
(2) ai1
ain = ain − a ,
π (1) 1n
(2) ai1
bi = bi − b .
π (1) 1
Si on pose aussi, pour 1 ≤ j ≤ n,
(2) (2)
a1j = a1j ∀1 ≤ j ≤ n et b 1 = b1 ,
on a obtenu le nouveau système équivalent
A(2) x = b(2) ,
avec  
(2) (2) (2)
a11 a12 . . . a1n
 (2) (2) 
 0 a22 . . . a2n 
A (2)
=
 .. .. .. 

 . . . 
(2) (2)
0 an2 ... ann
On voit que  
1 0 ... ... 0
 . ..

 − aa11
21
1 .. .

 .. . .. 
..
A(2) = M (1) A où M (1) = . 0 .. . 
.
 
 .. .. . . .. 
 . . . . 0 
− aan1
11
0 ... 0 1
Le système s’écrit :
A(2) = M (1) A, et b(2) = M (1) b.

kième étape : élimination de l’inconnue xk des lignes k + 1 à n On suppose qu’on a


pu itérer le procédé ci-dessus k − 1 fois, c’est à dire que les pivots apparus jusqu’àl’étape k sont
non nuls :
(i)
Π(i) = aii 6= 0, pour 1 ≤ i ≤ k − 1.
On obtient alors le système équivalent
A(k) x = b(k)
où A(k) est de la forme
 (k) (k) (k) 
a11 a12 ... ... ... ... a1n
 (k) .. .. 
 0 a22 . . 
 
 .. .. (k) .. .. 
 . . a33 . . 
 
 .. .. .. .. .. 
 . . . . . 
A(k) = 
 0 ... ... 0
(k)
ak−1k−1 ... ...
(k)
ak−1n 
 
 .. .. 
 . . 0 
 
 .. .. .. 
 . . . g
A(k) 
0 ... ... 0 0
82 CHAPITRE 5. MÉTHODES DIRECTES POUR LES SYSTÈMES LINÉAIRES

g
et A(k) est une matrice carrée d’ordre n − k + 1 :

 (k) (k) 
akk ... akn
g(k)  .. .. 
A = . . .
(k) (k)
ank ... ank

On va chercher un système équivalent (ayant la même solution x), où xk n’apparaı̂t pas dans les
lignes k + 1 à n.
k-ième Hypothèse :

(k) (k)
akk 6= 0 → on appelle kième pivot π (k) = akk .

On introduit
 
1 0 ... ... ... ... ... 0
 .. 
..
 0 1 . .
 
 .. .. .. .. ..
 . . . . .
 
 .. .. 
..
 . 0 1 . 
.
(k)  
M = .. .. (k)
ak+1 k .. .. ..
 . . − . .  .
 π (k) 
 .. .. .. .. ..  ..
 . . . 0 . .  .
 
 .. .. .. .. .. .. 
 . . . . . . 0 
 (k)

a
0 ... 0 − πn(k)k 0 ... 0 1

Remarquons que l’inverse de M (k) est L(k) :


 
1 0 ... ... ... ... ... 0
 .. 
..
 0 1 . .
 
 .. .. .. .. 
..
 . . . . 
.
 
 .. .. ..
 . 0 1 . .
(k)  
L = .. .. (k)
ak+1 k .. .. ..
 . . . .  .
 π (k) 
 .. .. .. .. ..  ..
 . . . 0 . .  .
 
 .. .. .. .. .. .. 
 . . . . . . 0 
 (k)

an k
0 ... 0 π (k)
0 ... 0 1

Soit
A(k+1) = M (k) A(k) et b(k+1) = M (k) b(k) ,

alors
A(k+1) x = b(k+1) ,
83

et  
(k+1) (k+1) (k+1)
a11 a12 ... ... ... ... a1n
 (k+1) .. .. 
 0 a22 . . 
 
 .. .. (k+1) .. .. 
 . . a33 . . 
 
 .. .. .. .. .. 
 . . . . . 
A(k+1) = ,
 0 ... ... 0
(k+1)
akk ... ...
(k+1)
akn 
 
 .. .. 
 . . 0 
 
 .. .. .. 
 . . . ^
A(k+1) 
0 ... ... 0 0
^
où A(k+1) est une matrice carrée d’ordre n − k :
 
(k+1) (k+1)
ak+1k+1 . . . ak+1n
^  
A (k+1) =  .. .. .
 . . 
(k+1) (k+1)
ank+1 ... ank+1

Après n − 1 étapes Si on itère n − 1 fois, et si les pivots apparus sont tous non nuls :
Hypothèses des n − 1 étapes :
(i)
π (i) = aii 6= 0, pour 1 ≤ i ≤ n − 1.
on arrive au système triangulaire équivalent
A(n) x = b(n) ,
avec  
π (1) ∗ ... ∗
 0 π (2) ∗ ... ∗ 
 
 .. 
A(n) =
 0 0 . 

 .. 
 0 ... 0 . ∗ 
0 ... 0 π (n)
qui est inversible si de plus
Hypothèse :
π (n) 6= 0.

Si on appelle L la matrice triangulaire inférieure avec des 1 sur la diagonale


L = L(1) . . . L(n−1)
et U la matrice triangulaire supérieure
U = A(n) ,
on a
A = LU.
On dit qu’on a effectué une factorisation de Gauss ou factorisation LU de A.
Remarque 5.1 Il est aussi possible avec le même algorithme d’obtenir la factorisation LU d’une
matrice de Mm (C), avec m ≥ n, si les pivots qui apparaissent sont non nuls.
84 CHAPITRE 5. MÉTHODES DIRECTES POUR LES SYSTÈMES LINÉAIRES

5.0.2 Coût de la méthode d’élimination de Gauss.


On estime le coût de l’élimination de xk . Rappelons qu’à l’étape k − 1, on obtient la matrice
Ak  
(k) (k) (k)
a11 a12 ... ... ... ... a1n
 (k) .. .. 
 0 a22 . . 
 
 .. .. (k) .. .. 
 . . a33 . . 
 
 .. .. .. .. .. 
 . . . . . 
A(k) = 
 0 ... ... 0
(k)
ak−1k−1 ... ... ak−1n
(k) 
 
 .. .. 
 . . 0 
 
 .. .. .. 
 . . . g
A(k) 
0 ... ... 0 0
g
C’est sur le bloc A(k) de A(k) qu’il faut travailler.

Construction de M (k) : n − k divisions par le pivot.


 
1 0 ... ... ... ... ... 0
 . 
..
 0 1 .. .
 
 .. . . .. .. ..
 . . . . .
 
 .. .. 
..
 . 0 1 . 
.
 
M (k) =  .. .. (k)
ak+1 k .. .. ..
 . . − π(k) . .  .
 
 .. .. .. .. ..  ..
 . . . 0 . .  .
 
 .. .. .. .. .. .. 
 . . . . . . 0 
 (k)

an k
0 ... 0 − π (k)
0 ... 0 1
Multiplication de A(k) par M (k) : (n − k)2 adds+mults.
Total

Xn
1 1 n3
(n − k)2 = n(n − 1)(n − ) ∼ additions+multiplications.
3 2 3
k=1
Xn
1
(n − k) = n(n − 1) divisions.
2
k=1

5.0.3 Utilisations de la factorisation LU


Calcul de déterminant Une utilisation de la factorisation LU est le calcul du déterminant
de A : en effet, si A admet une factorisation LU , on a
det(A) = det(U ) = produit des pivots
car det(L) = 1. La factorisation LU permet donc de calculer le déterminant de A avec une
3
complexité de l’ordre de n3 adds + mults, plutôt que n! avec la formule du déterminant !
Remarque 5.2 Calculer le déterminant d’une matrice d’ordre 100 avec la formule du déterminant
prendrait un temps supérieur à l’age de l’univers sur le calculateur le plus puissant disponible
aujourd’hui.
85

Résolution de systèmes linéaires Si on a plusieurs systèmes ( par exemple p) à résoudre


avec la même matrice A, il est intéressant de calculer une fois pour toute et stocker la factorisation
LU de A = LU , puis de résoudre les systèmes par descentes-remontées plutôt que d’utiliser
l’algorithme d’élimination pour chaque système. On résout le système Ax = b en résolvant
d’abord
Ly = b,
soit une descente, puis
U x = y,
n3
soit une remontée. Si on a p systèmes à résoudre, la complexité est de l’ordre de 3 + pn2
3
adds+mults plutôt que p n3 .
Remarque 5.3 Comme à la remarque précédente, calculer la solution du système linéaire en
appliquant les formules de Crammer nécessiterait un temps inimaginable dés que n vaut quelques
dizaines.

5.0.4 Algorithme
Voici un algorithme réalisant la factorisation LU d’une matrice A et stockant cette factori-
sation dans la place mémoire occuppée par A : (la matrice A est perdue, on dit qu’on écrase
A).
for (int j=1;j<=n-1;j++)
{
for(int i=j+1;i<=n;i++)
A(i,j)=A(i,j)/A(j,j); //construction de la j eme colonne de L

for(int i=j+1;j<=n;j++)
for(int k:=j+1;k<=n;k++)
A(i,k)=A(i,k)-A(i,j)*A(j,k);
//actualisation des n-j-1 derni{\‘e}res lignes de A
}
Remarque 5.4 La diagonale de L (qui ne contient que des 1) n’est pas stockée.
Le programme pour la descente-remontée pour calculer la solution de Ax = b est alors, en
écrasant b :
for (int i=1;i<=n;i++) //descente pour calculer y tq Ly=b
{
sum=0.;
for (int k=1; k<i;k++)
sum += A(i,k)*b(k);
b(i) = b(i) - sum ;
}
for (int i=n;i>=1;i--) //remontee pour calculer x tq Ux=y
{
sum=0.;
for (int k=i+1; k<=n;k++)
sum += A(i,k)*b(k);
b(i) = (b(i)-sum)/A(i,i) ;
}
86 CHAPITRE 5. MÉTHODES DIRECTES POUR LES SYSTÈMES LINÉAIRES

5.0.5 Condition nécessaire et suffisante d’existence d’une factorisation LU,


unicité
Théorème 5.1 Soit A une matrice de Mn (C). Pour 1 ≤ p ≤ n, on note Ap le bloc
 
a1 1 . . . ... a1 p
 a2 1 . . . ... a2 p 
 
Ap =  .. .. 
 . . 
ap 1 . . . ... ap p

La matrice A admet une factorisation


A = LU

où L est triangulaire inférieure avec des 1 sur la diagonale et U est triangulaire supérieure
et inversible si et seulement si tous les blocs Ap , 1 ≤ p ≤ n, sont inversibles. De plus, cette
factorisation est unique. De plus si A est réelle, alors L et U le sont aussi.

Démonstration. Si A admet une factorisation LU avec L et U inversibles, alors les blocs Ap


sont bien inversibles.La démonstration de la réciproque demande un peu plus de travail :
Existence
La démonstration se fait par récurrence : la propriété est clairement vraie si n = 1. Supposons
la propriété vraie pour p ≤ n − 1, et soit une matrice A ∈ Mn (C) dont tous les blocs Ap sont
inversibles. L’hypothèse de récurrence implique l’existence d’une factorisation LU pour le bloc
An−1 : An−1 = L′ U ′ . On va chercher une factorisation LU de A sous la forme
  
L′ 0 U′ y
A=
xT 1 0 z

où x, y ∈ Cn−1 et z ∈ C, ou de manière équivalente

L′ y = (a1,n , . . . , an−1,n )T
U ′T x = (an,1 , . . . an,n−1 )T
xT y + z = an,n

D’après l’hypothèse de récurrence, L′ et U ′ sont inversibles, donc x et y existent, et z aussi. De


plus, comme det(A) 6= 0, z est non nul. L’existence d’une factorisation LU de A où L a des 1
sur la diagonale est démontrée.
Unicité
Soient deux factorisation LU de A : A = LU = L′ U ′ où L sont triangulaires inférieures avec des
1 sur la diagonale, et U sont triangulaires supérieures et inversibles. On a donc l’identité

L−1 L′ = U ′ U −1

Mais L−1 L′ est triangulaire inférieure avec des 1 sur la diagonale et U ′ U −1 est triangulaire
supérieure. On a donc
L = L′
L L = U U = Id ⇒
−1 ′ ′ −1
U = U′
87

5.0.6 Un deuxième algorithme


La démonstration précédente fournit un autre algorithme. Là encore, on stocke la factorisa-
tion LU dans la place mémoire occupée par A. L’idée est de faire une boucle sur p pour p allant
de 1 à n en construisant à chaque étape la factorisation LU de Ap .
for (int p=1;p<=n;p++)
{
for(int i=1;i<p;i++) //construction de la p eme colonne de U
{ //sauf le coeff diagonal
sum = 0;
for (int k=1;k<i;k++)
sum += A(i,k)*A(k,p);
A(i,p) = A(i,p)-sum;
}
for(int j=1;j<p;j++) //construction de la p eme ligne de L
{
sum = 0;
for (int k=1; k<j;k++)
sum += A(k,j)*A(p,k);
A(p,j) = (A(p,j) - sum)/A(j,j);
}
sum=0; //nouveau pivot
for(int i=1;i<p;i++)
sum+=A(p,i)*A(i,p);
A(p,p)-=sum;
}

5.0.7 Cas de matrices bandes


Définition 5.1 Soit A une matrice de C n×n . On appelle largeur de bande de A le plus petit
entier nb ≤ n tel que pour tout i, 1 ≤ i ≤ n

ai,j = 0 si n ≥ j > i + nb ,
aj,i = 0 si 0 < j < i − nb ,

Les coefficients non nuls de la matrices A sont contenus dans une bande de largeur 2nb + 1,
centrée sur la diagonale.

Dans le cas où la largeur de bande nb de A est très inférieure à n, on parle de matrice bande. Si
A est une matrice bande, sa factorisation LU demande moins d’opérations et de place mémoire :

Proposition 5.1 Si A, (de largeur de bande nb ) admet une factorisation LU, alors les largeurs
de bandes de L et de U sont inférieures à nb et la complexité nécessaire à effectuer la factorisation
LU est inférieure à
Xn
(nb )2 = n(nb )2 additions+multiplications.
k=1
n
X
nb = nnb divisions.
k=1
88 CHAPITRE 5. MÉTHODES DIRECTES POUR LES SYSTÈMES LINÉAIRES

Démonstration. Montrons la propriété par récurrence sur les étapes de la factorisation LU de


A.
La propriété est évidente à l’étape 0 puisque A a la structure bande.
(k)
Supposons la propriété vraie jusqu’à k : on a A = L(1) . . . L(k−1) A(k) où Ai,j = 0 si j < i et
i < k ou si |j − i| > nb . Regardons la k ème etape de la factorisation :
(k) (k) (k)
– la première chose que l’on fait est de construire L(k) avec Lik = Ai,k /Ak,k pour i > k.
(k)
Mais on voit que Ai,k = 0 si i > k + nb, donc L(k) a elle aussi une largeur de bande
inférieure ou égale à nb .
(k+1)
– on construit alors A(k+1) en ne modifiant que le bloc k + 1 → n de A(k) : Ai,j =
(k) (k) (k) (k)
Ai,j − Li,k Ak,j pour i > k et j > k. Mais on sait que Li,k = 0 pour i > k + nb et que
(k)
Ak,j = 0 pour j > k + nb . Les seuls coefficients de A(k) que l’on va modifier sont donc
les coefficients correspondants à k < i ≤ min(k + nb , n) et k < j ≤ min(k + nb , n). Des
inégalités k < i ≤ min(k + nb , n) et k < j ≤ min(k + nb , n), on tire que −nb < j − i < nb :
les seuls coefficients de A(k) modifiés seront compris dans la bande |j − i| ≤ nb : la matrice
A(k+1) hérite donc de la structure bande de la matrice A(k) .

Exercice. Écrire l’algorithme de factorisation LU pour une matrice bande de largeur de bande
nb .

5.1 Méthode de Cholesky


Dans le cas où A est hermitienne et définie positive, on peut toujours efectuer la factorisation
décrite ci-dessus. De plus, on peut trouver une factorisation du type A = LL∗ moins gourmande
en place mémoire.

5.1.1 Existence de la factorisation de Cholesky


Théorème 5.2 Si A est hermitienne et définie positive, alors A admet une unique factorisation
LU, où L est triangulaire inférieure avec des 1 sur la diagonale et U est triangulaire supérieure
et inversible.

Démonstration. Si A est hermitienne définie positive, ses blocs Ap 1 ≤ p ≤ n, voir Théorème 5.1,
le sont aussi, et on peut appliquer le Théorème 5.1.

Théorème 5.3 Si A est hermitienne et définie positive, alors il existe une unique matrice L
triangulaire inférieure et inversible, avec des coefficients réels positifs sur la diagonale, telle que

A = LL∗

Cette factorisation porte le nom de factorisation de Cholesky (qui était un colonel de l’armée de
Napoléon). Si A est réelle symétrique définie positive, L est réelle.

Démonstration.
On part de la factorisation LU de A. Il existe une unique factorisation A = L′ U ′ où la
matrice L′ est triangulaire inférieure avec des 1 sur la diagonale et U ′ est triangulaire supérieure
inversible. Appelons D la diagonale de U ′ . Comme pour tout p, 1 ≤ p ≤ n, det(Dp ) = det(Ap ) >
5.1. MÉTHODE DE CHOLESKY 89

1 1
0, tous les coefficients de D sont strictement positifs. Notons U = D − 2 U ′ et L = L′ D 2 . On a
A = LU . Montrons que U = L∗ . Comme A est hermitienne, U ∗ L∗ = A∗ = A = LU . On a donc
L−1 U ∗ = U (L∗ )−1 . Mais L−1 U ∗ est triangulaire inférieure, avec des 1 sur la diagonale tandis que
U (L∗ )−1 est triangulaire supérieure, avec des 1 sur la diagonale. Donc U = L∗ , et on a A = LL∗ .
Pour l’unicité, on procède comme dans la démonstation de l’unicité pour la factorisation LU.

Remarque 5.5 Il est important de comprendre que les matrices L dans les factorisation LU et
de Cholesky sont différentes.

5.1.2 Algorithme
Considérons la k ième étape de la méthode de Cholesky : A ce point, on suppose que l’on a
déjà construit la matrice L(k−1) et A(k) telles que
 √ 
π1 0 ... 0
 ∗ √
 π 2 0 ... 0 

 . .. 
 
 √ 
L (k−1)
= ∗ ... ∗ πk−1 0 ... 0 

 ∗ ... ∗ ∗ 1 ... 0 
 
 .. .. 
 ∗ ... ∗ . 0 . 0 
∗ ... ∗ ∗ 0 ... 1

et  
∗ ∗ ... ∗
 0 ∗ ... ∗ 
 
 0 0 ∗ ... ∗ 
 
 .. 
 . 
A(k) = 
 (k) (k) 
 0 0 ... 0 akk ... akn 
 .. 
 .. 
 . . 
(k) (k)
0 0 ... 0 ank ... ann
(k)
et πk = ak,k .

Remarque 5.6 Le bloc carré k → n de A(k) est hermitien et défini positif.

Pour effectuer la kième étape, on construit d’abord L(k) en remplaçant la kième colonne de
(k)
√ ak+1 k a
(k)
L(k−1) par le vecteur lk = (0, . . . , 0, πk , √ √n k T
πk , . . . πk ) .

(k) (k) √
Observation 5.1 D’après la Remarque 5.6, (0, . . . , 0, akk , . . . , akn ) = πk lk∗ .

On construit maintenant A(k+1) en effectuant les éliminations de Gauss et d’après l’Observation


5.1, on a
A(k+1) = A(k) − lk lk∗ . (5.1)
On voit en fait que l’on peut ne construire que la partie triangulaire inférieure de la matrices
A(k+1) , ce qui économise la moitié des opérations. On aboutit à l’algorithme suivant dans le cas
d’une matrice réelle symétrique définie positive :
90 CHAPITRE 5. MÉTHODES DIRECTES POUR LES SYSTÈMES LINÉAIRES

for (k = 1; k <= n; k++)


{
A(k,k)=sqrt(A(k,k) );
for (i = k+1; i <= n ; i++)
A(i,k)= A(i,k) / A(k,k);
for (i = k + 1; i <=n; i++)
for (j = k+1 ; j <= i; j++)
A(i,j)=A(i,j) - A(i,k)*A(j,k);
}

5.1.3 Complexité de la factorisation de Cholesky

n3
∼ additions+multiplications.
6
1
n(n − 1) divisions.
2
n évaluations de racines carrées.
Exercice Montrer l’évaluation précédente.

Remarque 5.7 L’intérêt de la factorisation de Cholesky est qu’elle demande une place mémoire
deux fois inférieure à celles de la factorisation LU ci-dessus, car on ne doit stocker que L et que
sa complexité arithmétique est deux fois moindre.

5.2 Programmes Scilab pour les factorisation LU et de Cholesky


5.2.1 Factorisation LU
Construction de la factorisation LU
//LU factorization
function [A]= LUfact(A)
[m,n]=size(A);
for i=1:n,
if (A(i,i)==0) then
print(%io(2)," zero pivot")
else
A(i+1:m,i)=A(i+1:m,i)/A(i,i);
for j=i+1:n,
A(i+1:m,j)=A(i+1:m,j)-A(i+1:m,i)*A(i,j);
end ;
end ;
end;

Descente-Remontée pour la factorisation LU


// upward sweep : solves an upper triangular system
function [y]=up_sweep_LU(A,x)
[m,n]=size(A);
if (m~=n) then
5.2. PROGRAMMES SCILAB POUR LES FACTORISATION LU ET DE CHOLESKY 91

print(%io(2), "error, not a square matrix");


else
y=x;
y(n)=y(n)/A(n,n);
for i=n-1:-1:1,
y(i)=(y(i)-A(i,i+1:n)*y(i+1:n))/A(i,i);
end;
end;

// downward sweep : solves a lower triangular system with ones on the diagonal
function [y]=down_sweep_LU(A,x)
[m,n]=size(A);
if (m~=n) then
print(%io(2), "error, not a square matrix");
else
y=x;
for i=2:n
y(i)=y(i)-A(i,1:i-1)*y(1:i-1);
end;
end;

//assumes A contains the LU-factorization


function [y]=SolveLU(A,x)
[m,n]=size(A);
if (m~=n) then
print(%io(2), "error, not a square matrix");
else
y=down_sweep_LU(A,x);
y=up_sweep_LU(A,y);
end;

5.2.2 Factorisation de Cholesky


Construction de la factorisation de Cholesky
//Cholesky factorization
//the matrix is stored in the lower part
function [A]= Cholesky_fact(A)
[m,n]=size(A);
for i=1:n,
if (A(i,i)<=0) then
print(%io(2)," non positive pivot")
else
A(i,i)=sqrt(A(i,i));
A(i+1:m,i)=A(i+1:m,i)/A(i,i);
for j=i+1:n,
A(j:m,j)=A(j:m,j)-A(j:m,i)*A(j,i);
end ;
end ;
92 CHAPITRE 5. MÉTHODES DIRECTES POUR LES SYSTÈMES LINÉAIRES

end ;

Descente-Remontée pour une factorisation de Cholesky

// up sweep : solves the upper triangular system


function [y]=up_sweep_Cholesky(A,x)
[m,n]=size(A);
if (m~=n) then
print(%io(2), "error, not a square matrix");
else
y=x;
y(n)=y(n)/A(n,n);
for i=n-1:-1:1,
y(i)=(y(i)-(A(i+1:n,i))’*y(i+1:n))/A(i,i);
end;
end;

// down sweep : solves the lower triangular system


function [y]=down_sweep_Cholesky(A,x)
[m,n]=size(A);
if (m~=n) then
print(%io(2), "error, not a square matrix");
else
y=x;
y(1)=y(1)/A(1,1);
for i=2:n
y(i)=y(i)-A(i,1:i-1)*y(1:i-1);
y(i)=y(i)/A(i,i)
end;
end;

function [y]=SolveCholesky(A,x)
[m,n]=size(A);
if (m~=n) then
print(%io(2), "error, not a square matrix");
else
y=down_sweep_Cholesky(A,x);
y=up_sweep_Cholesky(A,y);
end;

5.3 Méthode de Gauss avec pivot partiel


La méthode de Gauss sans pivotage peut être bloquée si on tombe sur un pivot nul. Pour
pallier cet inconvénient, on introduit une méthode qui permet d’éviter ce blocage en échangeant
les lignes du système considéré. On obtient alors une méthode qui fonctionne pour toute matrice
inversible : la méthode de Gauss avec pivot partiel.
On définit quelques notions utiles :
5.3. MÉTHODE DE GAUSS AVEC PIVOT PARTIEL 93

Définition 5.2 On appelle permutation de {1, . . . , n} une bijection de {1, . . . , n}


sur {1, . . . , n}.

Définition 5.3 Soit σ une permutation de {1, . . . , n}, on associe à σ une matrice P dite de
permutation d’ordre n par
Pij = δσ(i)j ,
c’est à dire
Pij = 1 si j = σ(i),
Pij = 0 si j 6= σ(i),

Lemme 5.1 Soit P et Q deux matrices de permutation d’ordre n, alors P Q est une matrice de
permutation d’ordre n.

Définition 5.4 Soient 1 ≤ k < l ≤ n, on dit que la matrice de permutation P (kl) définie par
(kl)
Pij = δij si i 6= k et i 6= l
(kl)
Pkj = δlj ∀1 ≤ j ≤ n
(kl)
Plj = δkj ∀1 ≤ j ≤ n

est appelée matrice de permutation élémentaire.

Observation 5.2 Le produit à gauche de A par P (kl) conduit à échanger les lignes k et l de A,
en laissant les autres lignes inchangées, c’est à dire si

B = P (kl) A

Bij = Aij si i 6= k et i 6= l
Bkj = Alj ∀1 ≤ j ≤ n
Blj = Akj ∀1 ≤ j ≤ n

Observation 5.3 Le déterminant d’une matrice de permutation élémentaire est ±1. En effet,

P (kl) P (kl) = In .

Lemme 5.2 Toute matrice de permutation peut se décomposer en un produit de matrices élémentaires.

Corollaire 5.1 Le déterminant d’une matrice de permutation est ±1.

La méthode du pivot partiel est un algorithme dont l’application permet de prouver le théorème
suivant. La méthode du pivot partiel a été présentée en cours sur un exemple et revue dans la
preuve du théorème :

Théorème 5.4 Soit A ∈ Mn (C), inversible. Alors il existe


– une matrice de permutation P ,
– une matrice triangulaire inférieure L, avec des 1 sur la diagonale,
– une matrice triangulaire supérieure U , et inversible,
telles que
P A = LU
94 CHAPITRE 5. MÉTHODES DIRECTES POUR LES SYSTÈMES LINÉAIRES

Démonstration. Par récurrence sur les éliminations de Gauss : à la kième étape, supposons
que l’on ait prouvé l’égalité :

Q(k−1) A = L(1) . . . L(k−1) A(k) ,

où Q(k−1) est une matrice de permutation et ∀i < k,

1 ... i n
z }| {
 
1 0 ... ... ... ... ... 0
 . .. ..
 0 .. . .
 .. . . 
..
 .. .. 
 . . . . .

 .. .. 
..
 . 
 . 0 1 .
L(i) = .. .. .. .. ..
 . . ∗ . .  .
 
 .. .. .. .. ..  ..
 . . . 0 . .  .
 
 .. .. .. .. .. .. 
 . . . . . . 0 
0 ... 0 ∗ 0 ... 0 1

et
 (k) (k)

a11 ... ... ... ... a1n
 .. .. 
 0 . . 
 
 .. .. .. .. 
 . . . . 
 
(k)  .. .. .. .. 
A = . . . . 
 
 .. (k) (k) 
 . 0 akk ... akn 
 
 .. .. .. .. 
 . . . . 
(k) (k)
0 ... ... 0 ank ... ann

On effectue la kième élimination de Gauss avec pivotage partiel : avant d’éliminer l’inconnue xk ,
on échange les lignes k et rk > k. On peut choisir rk ≥ k tel que

(k) (k)
|ark k | = max |aj k |.
k≤j≤n

(k)
L’inversibilité de A assure que ark k 6= 0. On peut donc s’en servir de pivot pour la prochaine
élimination de Gauss.
Le pivotage puis l’élimination de Gauss s’écrivent matriciellement

P (krk ) A(k) = L(k) A(k+1) ,


5.3. MÉTHODE DE GAUSS AVEC PIVOT PARTIEL 95

avec P (krk ) matrice de permutation élémentaire entre les lignes k et r, L(k) triangulaire inférieure
L, avec des 1 sur la diagonale, et
 (k+1) (k+1) 
a11 ... ... ... ... a1n
 .. .. 
 0 . . 
 
 .. .. .. .. 
 . . . . 
 
 . .. .. .. 
A(k+1) =  .. . . . .
 
 .. (k+1) (k+1) 
 . 0 a . . . a 
 k+1k+1 k+1n 
 .. .. .. .. 
 . . . . 
(k+1) (k+1)
0 ... ... 0 ank+1 ... ann

Comme
(P (krk ) )−1 = P (krk ) ,
A(k) = P (krk ) L(k) A(k+1) ,
ce qui implique
Q(k−1) A = L(1) . . . L(k−1) P (krk ) L(k) A(k+1) .
A ce point, on utilise le lemme :

Lemme 5.3 Soit P (krk ) la matrice de permutation élémentaire entre les lignes k et rk > k,
alors ∀i < k, si L(i) s’écrit
 
1 0 ... ... ... ... ... 0
 .. .. ..
 0 . . .  
 . 
.. ..
 . ... ... ..
.  .
 . .
  
 . .. 
..   α
 . .   
 . 0 1 .   ..
L(i) =  . .. .. .. .. et Ci =   .
 .. . . .  .  
   β 
 . .. .. ..  ..  
 .. . Ci 0 . .  . ..
  .
 . .. .. .. .. 
 .. . . . . 0 
0 ... 0 0 ... 0 1

alors
(i)
L(i) P (krk ) = P (krk ) L′ ,
où  
1 0 ... ... ... ... ... 0
 . .. ..
 0 .. . .  
 .. . . 
.. ..
 .. ..  .
 . . . . .
  
 .. .. 
..   β
 .   
(i)  . 0 1 .   ..
L′ = .. .. .. .. .. et Ci′ =  . .
 . . . .  .  
   α 
 .. .. .. ..  ..  
 . . Ci′ 0 . .  . ..
  .
 .. .. .. .. .. 
 . . . . . 0 
0 ... 0 0 ... 0 1
96 CHAPITRE 5. MÉTHODES DIRECTES POUR LES SYSTÈMES LINÉAIRES

Donc,
Q(k−1) A = L(1) . . . L(k−2) P (krk ) L′ (k−1) L(k) A(k+1)
= P (krk ) L′ (1) . . . L′ (k−1) L(k) A(k+1) .
Par suite,
(1) (k−1)
P (krk ) Q(k−1) A = L′ . . . L′ L(k) A(k+1) ,
où
– Q(k) = P (krk ) Q(k−1) est une matrice de permutation,
– L′ (1) . . . L′ (k−1) L(k) est triangulaire inférieure avec des 1 sur la diagonale.
On a montré que la propriété est vraie pour k + 1.

Remarque 5.8 Dans la méthode de Gauss avec pivotage partiel, on ne doit pas stocker la
matrice P mais seulement les rk . Le coût mémoire et la complexité sont du même ordre que ceux
de la factorisation LU . La résolution du système linéaire Ax = b connaissant P L et U se fait
de la manière suivante :
y = Pb
Lz = y
Ux = z

Remarque 5.9 La méthode de Gauss avec pivotage partiel ne conserve pas l’aspect bande : si
A est une matrice bande dont la largeur de bande est nb , les matrices L et U n’ont pas en général
cete propriété. La complexité et le coût mémoire de la méthode de Gauss avec pivotage partiel
deviennent alors largement supérieurs à ceux de la factorisation LU .

Remarque 5.10 La méthode du pivot total consiste à échanger non seulement les lignes mais
aussi les colonnes de manière à choisir comme pivot le plus grand coefficient en module du bloc
carré restant à factoriser. Cette méthode conduit à l’existence de deux matrices de permutations
P et Q telles que P AQ = LU .

Influence du pivotage sur la précision Le pivotage partiel ne sert pas seulement à garantir
l’obtention d’une factorisation, il garantit aussi une bien meilleure stabilité que la factorisation
LU, pour des matrices A mal conditionnées : prenons le système Ax = b où
 −9   
10 1 1
A= et b =
1 1 2

1 1−2 10 −9
dont la solution est x = ( 1−10 T ∼ (1, 1)T . Supposons que la machine utilisée pour
−9 , 1−10−9 )
résoudre ce système ne garde que 8 chiffres significatifs : la factorisation LU calculée par la
machine est  −9   
10 1 1 0
U= et L =
0 −109 109 1
En utilisant cette factorisation, la machine retourne x = (0, 1)T !
Si on utilise le pivotage partiel, on obtient :
   
1 1 1 0
U= et L =
0 1 10−9 1

La machine retourne x = (1, 1)T .


5.4. FACTORISATIONS QR 97

5.4 Factorisations QR
5.4.1 Les réflexions de Householder
Définition 5.5 Soit v un vecteur non nul de Cn . On appelle réflexion de Householder ou matrice
de Householder relative au vecteur v la matrice
vv ∗
Hv = I − 2 ∗ . (5.2)
v v
Les réflexions de Householder ont les propriétés suivantes :
1. Hv est une matrice hermitienne.
2. Hv est une matrice unitaire.
3. Hv − I est une matrice de rang un.
4. Hλv = Hv , pour tout λ 6= 0.

Proposition 5.2 Soit e un vecteur unitaire de Cn et x un vecteur non nul de Cn . Il existe un


vecteur non nul v ∈ Cn tel que Hv x soit colinéaire à e.

Démonstration. On cherche v sous la forme v = x + λe. Dans le cas réel, (x ∈ Rn et e ∈ Rn ),


les vecteurs v = x ± kxk2 e ( au moins l’un des deux est non nul) sont les seuls vecteurs de cette
forme ayant la propriété demandée et on a Hv x = ∓kxk2 e. Dans le cas général, on trouve aussi
deux vecteurs v sous cette forme, et au moins l’un d’entre eux est non nul.

Remarque 5.11 Si x est presque colinéaire à e, on a intérêt en pratique à choisir le vecteur v


pour que v ∗ v, qui est au dénominateur de (5.2), ne soit pas petit. En effet, en précision finie, il
faut éviter les divisions par des nombres petits. En particulier si v ∈ Rn , on préférera le vecteur
v + = x + signe(x∗ e)kxk2 e au vecteur v − = x − signe(x∗ e)kxk2 e, car kv − k2 est petit.

5.4.2 Factorisations QR à l’aide des réflexions de Householder


Théorème 5.5 Soit A une matrice de Mm,n (C) avec m ≥ n. Il existe une matrice unitaire
Q ∈ Mm,m (C)et une matrice triangulaire supérieure R ∈ Mm,n (C), telles que
A = QR.

Démonstration. On démontre ce résultat par récurrence : supposons qu’à l’aide de deux


réflexions de Householder H1 et H2 , on ait obtenu
 
∗ ∗ ∗ ... ∗
 0 ∗ ∗ ... ∗ 
 
 
H2 H1 A =  0 0 ∗ . . . ∗ 
 .. .. 
 . . ∗ ... ∗ 
0 0 ∗ ... ∗
On appelle x le vecteur de Cm−2 obtenu en prenant les m − 2 derniers coefficients de la troisième
colonne de H2 H1 A. Si x est non nul, on sait trouver v3 ∈ Cm−2 , tel que
 
1
 0 
 
Hv3 x soit colinéaire à  . 
 .. 
0
98 CHAPITRE 5. MÉTHODES DIRECTES POUR LES SYSTÈMES LINÉAIRES

On prend alors H3  
I2 0
H3 = .
0 Hv3
Si x = 0 on prend H3 = I. Dans les deux cas H3 est hermitienne et unitaire. On a
 
∗ ∗ ∗ ... ∗
 0 ∗ ∗ ... ∗ 
 
 0 ∗ 0 ... ∗ 
 
H3 H2 H1 A =  0 0 ∗ ...
0 ∗ 
 
 .. .... 
 . . ∗ ...
. ∗ 
0 0 0 ∗ ... ∗

Comme m ≥ n, on peut itérer ce procédé et construire n matrices Hi hermitiennes et unitaires,


telles que Hn . . . H1 A soit une matrice triangulaire supérieure R. On note Q la matrice unitaire
(mais pas forcément hermitienne) Q = H1 . . . Hn , on a

A = QR.

Les éléments fondamentaux de l’algorithme de la factorisation QR à l’aide de réflexions de


Householder sont
1. Le choix des vecteurs vi , de manière à ce que kvi k ne soit pas petit, cf. Remarque 5.11.
2. Le produit à gauche d’une matrice M par la matrice Hm : Hm M , doit être programmé
intelligemment : on ne doit surtout pas stocker la matrice Hm . Il suffit de garder en mémoire
le vecteur vm , et d’opérer les réflexions de Householder à chaque colonne de M .
3. On ne calcule donc pas Q en général, mais on garde en mémoire les vecteurs v1 , . . . , vn .
4. On peut écraser la matrice A que l’on factorise en stockant les vecteurs vi dans la partie
triangulaire inférieure stricte, et la matrice R dans la partie triangulaire supérieure à
condition de normaliser les vecteurs vi de manière à ce que leur premier coefficient soit 1 :
ainsi on n’a pas besoin de stocker le premier coefficient des vecteurs vi .
5. Si la matrice A est réelle, alors la matrice Q l’est aussi.
La factorisation QR a de nombreuses propriétés intéressantes :
1. Résoudre le système Qy = b est facile car

Q−1 = Q∗ = Hn . . . H1 .
P
La complexité de la résolution du système Qy = b est donc 3 ni (m − i) adds+mults. Si
m = n, la complexité est de l’ordre de 23 n2 . Si la matrice A est carrée d’ordre n inversible,
pour résoudre Ax = b, on résout d’abord Qy = b comme ci-dessus, puis Rx = y par une
remontée. La complexité totale est de l’ordre de 2n2 .
2. Si A ∈ Mn (C) est inversible, alors

cond2 (A) = cond2 (R),

car Q est unitaire.


5.4. FACTORISATIONS QR 99

3. la méthode de Householder permet de calculer | det(A)|. En effet,

| det(R)| = |produit des coefficients diagonaux de R| = | det(A)|.

4. Si A ∈ Mm,n (C), m ≥ n, est factorisée sous la forme A = QR, alors résoudre une système
de la forme A∗ Ax = b est facile si rang(A)= n, car A∗ A = R∗ R et rang(R) = n, et on
peut résoudre A∗ Ax = b par une descente(de R∗ )-remontée (de R). La factorisation QR
d’une matrice se prête donc bien aux problèmes de moindres carrés (voir §6).

Théorème 5.6 Soit A ∈ Mm (C). On peut trouver une factorisation QR telle que tous les
coefficients diagonaux de R sont réels positifs. Si A est inversible, cette factorisation est unique.

Démonstration. On part de la factorisation QR de A obtenue par la méthode de Householder


ci dessus : A = Q′ R′ où la matrice Q′ est unitaire et R′ est triangulaire supérieure. Appelons D
la matrice diagonale D = diag(d1 , . . . dm ) où
(
ri i
|ri i | si ri i 6= 0,
di =
1 si ri i = 0,

La matrice D est clairement unitaire. Posons Q = Q′ D−1 et R = DR′ . Ces matrices ont les
propriétés désirées.
Supposons que A soit inversible et soient deux factorisation QR de A,

A = Q1 R1 = Q2 R2

telles que tous les coefficients diagonaux de R1 et R2 sont réels positifs. Ils sont strictement
positifs car A est inversible. On a alors Q∗2 Q1 = R2 R1−1 . Mais Q∗2 Q1 est unitaire tandis que R2 R1−1
est triangulaire supérieure avec des coefficients diagonaux réels positifs strictement. On peut
vérifier que l’Identité est la seule matrice unitaire et triangulaire supérieure avec des coefficients
diagonaux réels positifs. Donc Q2 = Q1 et R2 = R1 .

5.4.3 Algorithme de factorisation QR avec des symétries de Householder


Recherche du Vecteur pour la Réflexion de Householder

// householder reflexion : find Householder vector


//normalized so that v(1)=1
function [v]= householder_vector(x)
delta=1;
if (x(1)<0) then
delta=-1;
end;
v=x;
beta=v(1)+delta* sqrt(x’*x);
v=v/beta;
v(1)=1;
100 CHAPITRE 5. MÉTHODES DIRECTES POUR LES SYSTÈMES LINÉAIRES

Réflexion de Householder
// performs Householder reflexion of vector v on a vector x
function [y]= householder_reflexion(v,x)
beta=2*(v’*x)/(v’*v);
y=x-beta*v;

Factorisation QR
//performs QR factorisation of a matrix
//the R part is stored in the upper part of A
//the Q part (normalized so that the upper line is one)
//is stored in the strict lower part of A
function[A]=QRfactorization(A)
[m,n]=size(A);
for i=1:n,
v=householder_vector(A(i:m,i))
delta=2/(v’*v);
A(i,i)=A(i,i)-delta* (v’* A(i:m,i));
for j=i+1:n,
c=v’*A(i:m,j);
A(i:m,j)=A(i:m,j)-c*delta*v;
end ;
if (i<m) then
A(i+1:m,i)=v(2:m-i+1);
end ;
end;

Résolution du système
function [y]=up_sweep(A,x) //solves Ry=x
[m,n]=size(A);
if (m~=n) then
print(%io(2), "error, not a square matrix");
else
y=x;
y(n)=y(n)/A(n,n);
for i=n-1:-1:1,
y(i)=(y(i)-A(i,i+1:n)*y(i+1:n))/A(i,i);
end;
end;

//assumes A contains a QR-factorization of A


function [y]=SolveQR(A,x)
[m,n]=size(A);
if (m~=n) then
print(%io(2), "error, not a square matrix");
5.5. PROBLÈMES AUX MOINDRES CARRÉS 101

else
y=x;
for i=1:n-1,
y(i:n)= householder_reflexion( [1;A(i+1:n,i)] , y(i:n));
end ;
y(n)=-y(n);
y=up_sweep(A,y);
// print(%io(2), y);
end;

5.4.4 Les rotations de Givens


Les réflexions de Householder sont très utiles quand il s’agit d’annuler tous les coefficients
d’une colonne sous la diagonale. En revanche, pour annuler sélectivement certains coefficients (si
la matrice a déjà beaucoup de coefficients nuls par exemple), les rotations de Givens constituent
un outil important.
Soit A une matrice de Mn (R) : il existe deux réels c = cos(θ) et s = sin(θ) tels que si

i j
 
1 0 ... ... ... ... ... ... ... ... 0
 .. .. .. 
 0 . . . 
 
 .. .. 
 . . 1 0 ... ... ... ... ... ... 0 
 .. 
 
 . 0 c 0 ... 0 s 0 ... 0 
 .. .. .. .. 
 
Q=  . . 0 1 0 ... 0 . .  i
 .. .. .. .. .. .. .. .. .. 
 . . . 
 . . . . . . 
 .. .. .. .. 
 . . 0 ... 0 1 0 . . 
 
 .. .. ..  j
 . . −s 0 ... 0 c 0 . 
 
 .. .. .. .. 
 . . 0 ... ... ... 0 1 . . 
 
 .. .. .. .. .. .. 
 . . . . . . 0 
0 ... 0 0 ... ... ... 0 ... 0 1

alors les lignes de QA d’indices différents de i et j sont identiques à celles de A, et (QA)j,i = 0.


a
On définit θ ∈] − π2 , π2 [ tel tan(θ) = t = aj,i
i,i
et c = cos(θ) = √t21+1 et s = sin(θ) = √t2t+1 . On a
−sai,i + caj,i = 0.

5.5 Problèmes aux moindres carrés


On va travailler avec des systèmes réels mais toute la suite serait valable avec des systèmes
dans Cn , à condition de changer AT en A∗ .
On considère le problème de trouver x ∈ Rn tel que Ax = b où A ∈ Mm,n (R) et où b ∈ Rm ,
avec m ≥ n. Il y a plus d’équations que d’inconnues, on dit que le système est sur-déterminé.
Un système sur-déterminé n’a généralement pas de solution, sauf si b ∈ Im(A).
L’idée est alors de chercher à minimiser kAx − bk plutôt que de chercher à résoudre exactement
le système. La solution du problème si elle existe dépend de la norme choisie. La méthode des
102 CHAPITRE 5. MÉTHODES DIRECTES POUR LES SYSTÈMES LINÉAIRES

P
moindres carrés consiste à minimiser kAx − bk2 où kf k22 = m 2
i=1 fi . On choisit cette norme
2
car la fonction J(x) = kAx − bk2 est convexe et différentiable dans Rn , et son gradient est
gradJ(x) = 2(AT Ax − AT b). On verra que minimiser J revient à résoudre le système linéaire
AT Ax = AT b, qui a toujours une solution, et dont la solution est unique si rang(A) = n.
Lemme 5.4 Soit A ∈ Mm,n (R) avec m ≥ n : le problème de trouver x ∈ Rn minimisant la
fonction J : Rn → R, J(y) = kAy − bk22 a au moins une solution. Le problème de trouver
x ∈ Rn minimisant J est équivalent à trouver x tel que
AT Ax − AT b = 0. (5.3)
L’équation (5.3) est appelée équation normale.
Démonstration. Le problème de minimiser J revient à trouver z ∈ Im(A) minimisant la
distance kz − bk2 . On sait que Im(A)⊥ = ker(AT ), et donc que Im(A) ⊕ ker(AT ) = Rn . Prendre
pour z la projection de b sur Im(A) parallèlement à ker(AT ) répond donc à la question, et après
on prend x tel que Ax = z (qui existe car z ∈ Im(A) mais qui n’est pas unique si ker(A) 6= {0}).
On a donc trouvé x solution du problème au sens des moindres carrés.
La fonction J est différentiable sur Rn et son gradient vaut
grad(J)(x) = 2(AT Ax − AT b).
En effet, on vérifie facilement que
J(x + y) − J(x) = 2y T (AT Ax − AT b) + kAyk22 . (5.4)

Si x minimise J, on a grad(J)(x) = 0 et x vérifie (5.3). Réciproquement, si x vérifie (5.3), on


voit d’après (5.4) que J(x + y) − J(x) = kAyk22 ≥ 0, ∀y ∈ Rn , ce qui montre qye x minimise J.

Proposition 5.3 Si rang(A) = n, le problème aux moindres carrés a une solution unique x =
(AT A)−1 AT b. Sinon, les solutions du problème aux moindres carrés forment un espace affine
parallèle à ker(A).
Démonstration. On a
y ∈ ker(AT A) ⇒ AT Ay = 0 ⇒ y T AT Ay = 0 ⇔ kAyk2 = 0 ⇔ y ∈ ker(A)
et ker(A) ⊂ ker(AT A). Donc ker(A) = ker(AT A).
Si rang(A) = n, ker(A) = {0} et l’équation normale (5.3) a une solution unique x = (AT A)−1 AT b
et il en va de même pour le problème aux moindres carrés par le Lemme 5.4. Sinon, les solutions
de (5.3) forment un espace affine.

On peut trouver une matrice orthogonale Q ∈ Mm (R) et une matrice triangulaire supérieure
R ∈ Mm,n (R) telles que A = QR. Le système AT Ax = AT b est équivalent à RT Rx = RT QT b,
qui est facile à résoudre (une descente et une remontée), si rang(R) = n. De plus cond2 (RT R) =
cond2 (AT A).
Remarque 5.12 Il n’est pas recommandé d’utiliser une méthode des moindres carrés pour
résoudre un système carré car cond2 (AT A) = (cond2 (A))2 (exercice, le vérifier), et on a vu
qu’il fallait éviter les grands nombres de conditionnement pour des raisons de précision.
Exercice. Trouver la droite du plan la plus proche au sens des moindres carrés des points (0, 1)
(1, 0) (2, 3).
Chapitre 6

Méthodes Itératives Stationnaires


pour résoudre des systèmes linéaires

Pour des systèmes linéaires de grande taille, les méthodes directes (du type élimination de
Gauss ou Cholesky), peuvent s’avérer trop coûteuses en temps de calcul ou en place mémoire.
L’idée est alors de ne plus chercher à résoudre exactement le système linéaire mais d’approcher
sa solution par une suite de vecteurs, construite à l’aide d’une formule de récurrence simple.

6.1 Principe et résultats généraux


6.1.1 Principe général
Soit un système linéaire
Ax = b, (6.1)
où A ∈ Md (C) est inversible, x, b ∈ Cd . Le principe des méthodes itératives présentées ici est
d’écrire A comme la différence de deux matrices :
A = M − N, (6.2)
où
1. M est inversible
2. le système linéaire M y = c peut être résolu simplement, avec un coût de calcul faible :
typiquement M sera diagonale ou triangulaire, mais on verra aussi le cas où M est diagonale
ou triangulaire par blocs.
On va alors approcher la solution de (6.1) par la suite (x(n) ) définie par récurrence à partir de
x(0) qu’on choisit, et de la formule
x(n+1) = M −1 (b + N x(n) ) (6.3)

Remarque 6.1 On n’a pas besoin de calculer M −1 , mais juste de savoir calculer la solution de
M x(n+1) = b + N x(n) .

Observation 6.1 Si la suite converge vers y alors y = x. En effet, si la suite converge, on a


à la limite, M y = b + N y ou de manière équivalente Ay = b. Comme la solution de (6.1) est
unique, x = y.

103
104 CHAPITRE 6. MÉTHODES ITÉRATIVES STATIONNAIRES

Considérons l’erreur à l’étape n,


e(n) = x − x(n) .

On a

M x(n+1) = b + N x(n)
⇒ e(n+1) = M −1 N e(n) ⇒ e(n+1) = (M −1 N )n+1 e(0)
Mx = b + Nx

On appelle M −1 N la matrice d’itération de la méthode. On a démontré le résultat

Proposition 6.1 La suite donnée par x(0) et (6.3) converge vers x pour tout choix de x(0) si et
seulement si la matrice d’itération vérifie

ρ(M −1 N ) < 1. (6.4)

Démonstration. La suite donnée par x(0) et (6.3) converge vers x pour tout choix de x(0) si
et seulement si (M −1 N )n e(0) → 0 pour tout e(0) , ce qui équivaut à dire que (M −1 N )n → 0.
D’après le Théorème 4.1, ceci a lieu si et seulement si ρ(M −1 N ) < 1.

6.1.2 Une condition suffisante dans le cas où A est hermitienne, définie po-
sitive
Théorème 6.1 Soit A une matrice hermitienne, définie positive, et M, N deux matrices telles
que A = M − N , M soit inversible et M ∗ + N soit elle aussi hermitienne définie positive. Alors
ρ(M −1 N ) < 1.

Démonstration. Comme A est symétrique définie positive, on peut considérer la norme vecto-
rielle définie par
kvk2A = v ∗ Av,

et la norme matricielle subordonnée encore notée k.kA . On a pour tout vecteur v,

kM −1 N vk2A = v ∗ (M − A)∗ (M ∗ )−1 AM −1 (M − A)v


= v ∗ Av + v ∗ A∗ (M ∗ )−1 AM −1 Av − v ∗ AM −1 Av − v ∗ A∗ (M ∗ )−1 Av

Montrons que v ∗ A∗ (M ∗ )−1 AM −1 Av − v ∗ AM −1 Av − v ∗ A∗ (M ∗ )−1 Av < 0 si v 6= 0. En effet

v ∗ A∗ (M ∗ )−1 AM −1 Av − v ∗ AM −1 Av − v ∗ A∗ (M ∗ )−1 Av
= v ∗ A∗ (M ∗ )−1 AM −1 Av − v ∗ A∗ (M ∗ )−1 M M −1 Av − v ∗ A∗ (M ∗ )−1 M ∗ M −1 Av
= v ∗ A∗ (M ∗ )−1 (A − M − M ∗ )M −1 Av
= −v ∗ A∗ (M ∗ )−1 (M ∗ + N )M −1 Av

qui est strictement négatif dès que M −1 Av 6= 0 → v 6= 0, car (M ∗ + N ) est symétrique définie
positive et A et M sont inversibles. Donc si v 6= 0, kM −1 N vkA < kvkA . On en déduit que
kM −1 N kA < 1, ce qui achève la démonstration.
6.2. LA MÉTHODE DE JACOBI 105

6.2 La méthode de Jacobi


On considère une matrice inversible A dont la diagonale D est inversible. La méthode de
Jacobi consiste à choisir M = D et N = D − A. La matrice d’itération LJ de la méthode de
Jacobi s’écrit LJ = I − D −1 A. On a les résultats suivants

Proposition 6.2 Si A est à diagonale strictement dominante, i.e.


X
∀i, |aii | > |aij |.
j6=i

alors ρ(LJ ) < 1, et la méthode de Jacobi converge pour tout choix de x(0) .

Démonstration. Si A est à diagonale strictement dominante, on a kM −1 N k∞ = kD −1 (D −


A)k∞ < 1.

Proposition 6.3 Si A et 2D − A sont hermitiennes définies positives, alors ρ(LJ ) < 1 et la


méthode de Jacobi converge pour tout choix de x(0) .

Démonstration. Si A est hermitienne définie positive, alors D l’est aussi, et on peut utiliser la
méthode de Jacobi. De plus, M + N = 2D − A est aussi hermitienne définie positive. On peut
appliquer le Théorème 6.1.

Algorithme La ième coordonnée de x(n+1) est donnée par


P (n)
(n+1) bi − j6=i ai j xj
xi = .
ai i

Voici la boucle de la méthode de Jacobi : le test d’arrêt est ici du type kx(n+1) − x(n) k ≤ ǫ, mais
d’autres tests sont évidemment possibles.

while( err>eps)
{
w=x;
x=b;
for(int i=0; i<x.size();i++)
{
for(int j=0; j<i;j++)
x(i)-=a(i,j)*w(j);
for(int j=i+1; j<x.size();j++)
x(i)-=a(i,j)*w(j);
x(i)=x(i)/a(i,i);
}
e=w-x;
err=norm(e);
}

Remarque 6.2 Remarquons que l’algorithme ci-dessus peut être aisément parallélisé : si on
dispose d’une machine parallèle (comportant P processeurs (P > 1)), on peut facilement répartir
le calcul sur les P processeurs : le k ème processeur mettant à jour les coordonnées d’indices
106 CHAPITRE 6. MÉTHODES ITÉRATIVES STATIONNAIRES

d(k−1)
P , . . . , dk
− 1, et les processeurs travaillant en même temps. Si la mémoire est de plus
P
distribuée, il faut ensuite que les processeurs communiquent leur données actualisées aux autres
processeurs : cette étape de transmission de l’information prend évidemment du temps, mais ce
temps est souvent petit par rapport au temps de calcul.

Quand la matrice admet une décomposition par bloc :


 
A11 ... A1P
 .. .. 
 . . 
 
A=  A i1 . . . A iP


 .. .. 
 . . 
AP 1 ... AP P

où les blocs diagonaux Aii sont des matrices carrées (les blocs non diagonaux ne doivent pas
nécessairement l’être), et si les blocs diagonaux sont tous inversibles, une méthode dite de Jacobi
par blocs consiste à prendre D = Block − Diag(A11 , . . . , AP P ). Elle nécessite de savoir résoudre
les systèmes avec les blocs Aii avec une complexité algorithmique raisonnable :
Exemple Si on considère la discrétisation du problème de Poisson dans un carré unité

−∆u = f dans Ω
u = 0 sur ∂Ω
1
par différences finies sur une grille uniforme de pas h = N +1 , on obtient après numérotation
lexicographique des inconnues le système linéaire

Ax = b

où A est une matrice de MN 2 (R) tridiagonale par blocs, les blocs étant tous des matrices de
MN (R), et
 
4 −1 0 ... ... ... 0
 . . ..
 −1 .. .. ... .
 
 
..
 0 ... ... ... ... 
.
 
 
Aii = D = (N + 1)2  ... . . . . . . . . . . . . ..
.
..
. Ai,i+1 = Ai+1,i = −(N + 1)2 IN
 
 .. .. .. .. .. 
 . . . . . 0 
 
 .. .. .. .. 
 . . . . −1 
0 ... ... ... 0 −1 4
(6.5)
Il est facile de calculer la factorisation de Cholesky des blocs diagonaux de A Aii = car LLT ,
on sait que L n’a que deux diagonales non nulles. On peut donc résoudre les systèmes avec les
blocs Aii avec une complexité arithmétique de l’ordre de 2N pour chaque blocs ; la méthode de
Jacobi par blocs s’écrit, en désignant par xi (respectivement wi ) le vecteur de RN contenant les
coordonnées d’indices (i − 1)N, . . . , iN − 1 de x (resp.w).

while( err>eps)
{
w=x;
6.3. LA MÉTHODE DE GAUSS-SEIDEL 107

x=b;
for(int i=0; i<N-1;i++)
x(i)+=(N+1)^2 * w(i+1);
for(int i=1; i<N;i++)
x(i)+=(N+1)^2 * w(i-1);
for(int i=0; i<N;i++)
solve (D,x(i)); //r{\’e}sout le syst{\‘e}me D y=x(i)
// et range la solution dans x(i)
e=w-x;
err=norm(e);
}

6.3 La méthode de Gauss-Seidel


On considère une matrice inversible A dont la diagonale D est inversible. On note A = D−E−
F , où −E (respectivement −F ) est la partie triangulaire inférieure strictement (respectivement
supérieure) de A. La méthode de Gauss-Seidel consiste à choisir M = D − E et N = F . La
matrice d’itération LGS de la méthode de Gauss-Seidel s’écrit LGS = I − (D − E)−1 A. On a les
résultats suivants :

Proposition 6.4 Si A est à diagonale strictement dominante, alors ρ(LGS ) < 1 et la méthode
de Gauss-Seidel converge pour tout choix de x(0) .

Démonstration. On s’intéresse à la solution de M y = N x pour x donné : on a


X X
ai i yi = ai j xj + ai j yj .
j<i j>i

On considère i0 tel que |yi0 | = kyk∞ : on a


X X
|ai0 i0 ||yi0 | ≤ |ai0 j |kyk∞ + |ai0 j |kxk∞ .
j<i0 j>i0

Si A est à diagonale strictement dominante,


X X
|ai0 i0 | − |ai0 j | > |ai0 j |,
j<i0 j>i0

donc
kyk∞
sup < 1,
kxk∞
x 6= 0
My = Nx

ce qui veut dire que kM −1 N k∞ < 1.

Proposition 6.5 Si A est hermitienne définie positive, alors ρ(LGS ) < 1 et la méthode de
Gauss-Seidel converge pour tout choix de x(0) .

Démonstration. Si A est hermitienne définie positive, alors D l’est aussi, et E = F ∗ .Donc


M ∗ + N = D − E ∗ + F = D est hermitienne définie positive. On peut appliquer le Théorème
108 CHAPITRE 6. MÉTHODES ITÉRATIVES STATIONNAIRES

6.1.

Algorithme La ième coordonnée de x(n+1) est donnée par


P (n+1) P (n)
(n+1) bi − j<i ai j xj − j>i ai j xj
xi =
ai i
Dans la méthode de Gauss-Seidel, dès que la ième coordonnée de x(n+1) est calculée, la ième
coordonnée de x(n) devient inutile : on peut écraser la ième coordonnée de x(n) et la remplacer
par la ième coordonnée de x(n+1) dès que celle ci est calculée.
Voici la boucle de la méthode de Gauss Seidel : le test d’arrêt est encore du type kx(n+1) −x(n) k ≤
ǫ.
while( err<eps)
{
e=x;
for(int i=0; i<x.size();i++)
{
x(i)=b(i);
for(int j=0; j<i;j++)
x(i)-=a(i,j)*x(j);
for(int j=i+1; j<x.size();j++)
x(i)-=a(i,j)*x(j);
x(i)=x(i)/a(i,i);
}
e=e-x;
err=norm(e);
}
(n+1)
Remarque 6.3 La méthode de Gauss-Seidel nécessite de calculer xk avant de calculer
(n+1)
xk+1 . Pour cette raison, il est beaucoup moins facile de paralléliser la méthode de Gauss-Seidel
que la méthode de Jacobi.

Remarque 6.4 Comme pour la méthode de Jacobi, on peut généraliser la méthode de Gauss-
Seidel à une matrice par blocs, dont les blocs diagonaux sont tous carrés et inversibles.

Exercice. Proposer un programme pour résoudre le système de l’exemple ci dessus par une
méthode de Gauss Seidel par blocs.

6.4 Méthodes SOR (successive over relaxation)


La méthode de Gauss-Seidel est très facile à programmer mais sa convergence peut être très
lente pour certains systèmes : on la modifie en introduisant un paramètre ω 6= 0 dit paramètre
de relaxation et en choisissant M = ω1 D − E et N = F + (1 − ω1 )D. La matrice M est inversible
si la diagonale D est inversible. Pour ω = 1, on retrouve la méthode de Gauss-Seidel. Pour ω < 1
on parle de sous-relaxation. Pour ω > 1 on parle de sur-relaxation. Un calcul facile montre que
la matrice d’itération de cette méthode est

Lω = (I − ωD −1 E)−1 ((1 − ω)I + ωD −1 F ). (6.6)


6.4. MÉTHODES SOR (SUCCESSIVE OVER RELAXATION) 109

Proposition 6.6 Si A est à diagonale strictement dominante, la méthode de relaxation avec


paramètre ω converge pour tout x(0) si

0 < ω ≤ 1. (6.7)

Démonstration. On prend 0 < ω ≤ 1, et on s’intéresse à la solution de M y = N x pour x


donné : on a X X
ai i yi = ω ai j yj + ω ai j xj + (1 − ω)ai i xi
j<i j>i

On considère i0 tel que |yi0 | = kyk∞ : on a


X X
|ai0 i0 ||yi0 | ≤ ω( |ai0 j |kyk∞ + |ai0 j |kxk∞ ) + (1 − ω)|ai0 i0 ||xi0 |.
j<i0 j>i0

Si A est à diagonale strictement dominante,


X X
|ai0 i0 | − |ai0 j | > |ai0 j |,
j<i0 j>i0

donc
   
X X
(1 − ω)|ai0 i0 | + ω(|ai0 i0 | − |ai0 j |) |yi0 | ≤ (1 − ω)|ai0 i0 | + ω |ai0 j | kxk∞
j<i0 j>i0

ce qui implique
kyk∞
sup < 1,
kxk∞
x 6= 0
My = Nx

ce qui veut dire que kM −1 N k∞ < 1.

Proposition 6.7 Si A est hermitienne définie positive, la méthode de relaxation avec paramètre
ω converge pour tout x0 si
0 < ω < 2. (6.8)

Démonstration. Si A est hermitienne définie positive, alors D l’est aussi, et E = F ∗ . Donc


M ∗ + N = ( ω2 − 1)D − E ∗ + F = ( ω2 − 1)D est hermitienne définie positive dès que 0 < ω < 2.
On peut appliquer le Théorème 6.1.

Remarque 6.5 On peut aussi relaxer la méthode de Jacobi en prenant M = ω1 D et N =


1 ∗
ω D − A. Si A est hermitienne définie positive, sous quelles conditions sur ω M + N est elle
définie positive ?

Théorème 6.2 Si 0 ≤ ω ou si ω ≥ 2, La méthode SOR ne converge pas vers la solution x


pour tout choix initial x(0) . Si les inégalités sont strictes, on peut trouver des x(0) pour lesquels
limn→∞ kx(n) k = +∞.
110 CHAPITRE 6. MÉTHODES ITÉRATIVES STATIONNAIRES

Démonstration. D’après (6.6), le déterminant de Lω est (1 − ω)d . Mais

|ρ(Lω )| < 1 ⇒ | det(Lω )| < 1

car le déterminant est le produit des valeurs propres. Donc,

ω ≥ 2 ou ω ≤ 0 ⇒ |(1 − ω)d | ≥ 1 ⇒ ρ(Lω )| ≥ 1

implique que la méthode SOR ne converge pas vers la solution pour tout choix initial.

Remarque 6.6 La proposition 6.7 donne donc en fait une condition nécessaire et suffisante
pour que la méthode SOR converge pour tout choix de x(0) .

Algorithme
Voici la boucle de la méthode SOR

while( err<eps)
{
e=x;
for(int i=0; i<x.size();i++)
{
x(i)=b(i)-(1-1/omega)*a(i,i)*x(i);
for(int j=0; j<i;j++)
x(i)-=a(i,j)*x(j);
for(int j=i+1; j<x.size();j++)
x(i)-=a(i,j)*x(j);
x(i)=omega*x(i)/a(i,i);
}
e=e-x;
err=norm(e);
}

6.5 Comparaisons des méthodes pour des matrices tridiagonales


Théorème 6.3 Si A est tridiagonale, on a

ρ(LGS ) = ρ(LJ )2 (6.9)

Démonstration. Soit A une matrice de Md (C) tridiagonale :


 
a1 b1 0 ... ... 0
 .. .. 
 c1 a2 b2 . . 
 
 .. .. .. .. .. 
 0 . . . . . 
A=  .. .. .. .. ..

 (6.10)
 . . . . . 0 
 
 .. .. 
 . . cd−2 ad−1 bd−1 
0 ... ... 0 cd−1 ad
6.5. COMPARAISONS DES MÉTHODES POUR DES MATRICES TRIDIAGONALES 111

Le nombre complexe λ est valeur propre de LJ si et seulement si det(D −1 (D − A) − λI) = 0 ou


encore si det((1 − λ)D − A) = 0, c’est à dire
 
λa1 b1 0 ... ... 0
 .. .. 
 c1 λa2 b2 . . 
 
 .. .. .. .. .. 
 0 . . . . . 
det 
 .. .. .. .. ..
=0
 (6.11)
 . . . . . 0 
 
 .. .. 
 . . cd−2 λad−1 bd−1 
0 ... ... 0 cd−1 λad

D’autre part µ est valeur propre de LGS si et seulement si det((D − E)−1 (D − E − A) − µI) = 0
ou encore si det((1 − µ)(D − E) − A) = 0, c’est à dire
 
µa1 b1 0 ... ... 0
 .. .. 
 µc1 µa2 b2 . . 
 
 .. .. .. .. .. 
 0 . . . . . 
det 
 .. .. .. .. ..
=0
 (6.12)
 . . . . . 0 
 
 .. .. 
 . . µcd−2 µad−1 bd−1 
0 ... ... 0 µcd−1 µad

Supposons λ 6= 0, (6.11) est équivalente à


   
λa1 b1 0 ... ... 0
  .. ..  
  c1 λa2 b2 . .  
   
  .. .. .. .. ..  
 
d  0 . . . . .  
 2
det Diag(λ, λ , . . . , λ )  .  Diag(λ−1 , λ−2 , . . . , λ−d ) = 0
.. .. .. ..  
  .. . . . . 0  
   
  .. ..  
  . . cd−2 λad−1 bd−1  
0 ... ... 0 cd−1 λad
(6.13)
Ce produit de trois matrices vaut :
 
λ2 a1 b1 0 ... ... 0
 .. .. 
 λ2 c1 λ2 a2 b2 . . 
 
 .. .. .. .. .. 
 0
−1  . . . . . 
λ  . 
.. .. .. .. 
 .. . . . . 0 
 
 .. .. 
 . . λ2 cd−2 λ2 ad−1 bd−1 
0 ... ... 0 λ2 cd−1 λ2 ad

ce qui veut dire d’après (6.12) que λ2 est valeur propre de EGS . Donc si λ 6= 0, λ est valeur
propre de EJ si et seulement si λ2 est valeur propre de EGS , ce qui montre (6.9).

On a enfin un théorème plus précis dans le cas où A est de plus définie positive :
112 CHAPITRE 6. MÉTHODES ITÉRATIVES STATIONNAIRES

Théorème 6.4 Si A est tridiagonale et hermitienne définie positive, les méthodes de Jacobi
et de Gauss-Seidel convergent, et la méthode SOR converge si et seulement si 0 < ω < 2. Le
paramètre optimal est
2
ωopt = p > 1, (6.14)
1 + 1 − ρ2 (LJ )
et
1
ρ(Lωopt ) = . (6.15)
ωopt
Démonstration. voir [2].

6.6 Autres méthodes


Faute de temps, nous ne traitons pas les méthodes
– de Gauss-Seidel symétrisé
– des directions alternées
qui rentrent pourtant exactement dans le cadre décrit ci-dessous. Elles sont décrites dans [5],
[3].
Les méthodes semi itératives de Chebyshev [3] permettent d’accélérer la convergence des méthodes
ci-dessus. Nous ne les traitons pas non plus.
Les méthodes itératives que nous venons de décrire sont l’un des ingrédients des méthodes mul-
tigrilles, qui sont des méthodes souvent optimales pour résoudre certains systèmes linéaires issus
de la simulation par éléments finis ou différences finies d’équations aux dérivées partielles, voir
[1].
Chapitre 7

Méthodes de Descente pour des


Systèmes Linéaires

7.1 Principe des méthodes de descente


7.1.1 Minimisation de fonctions quadratiques
Soit A ∈ Md (R) une matrice symétrique définie positive. Le but est de construire des
méthodes itératives pour résoudre un système linéaire

Ax = b, (7.1)

en lui associant un problème de minimisation équivalent et en construisant une suite minimi-


sante : on va travailler avec des matrices réelles symétriques et définies positives, mais on pourrait
tout généraliser au cas de matrices hermitiennes définies positives. Considérons la forme qua-
dratique F sur Rd définie par
1
F (x) = xT Ax − xT b. (7.2)
2
La fonction F est continue et limkxk→∞ F (x) = +∞. La fonction admet donc un minimum dans
Rd . La fonction F est de plus différentiable, et son gradient vaut

∀y ∈ Rn , DF (y) = Ay − b. (7.3)

Exercice Démontrer l’assertion précédente.


Comme la solution de (7.1) est unique car A est inversible, le gradient de F ne s’annule qu’en
un seul point qui réalise le minimum de F .
Exercice Montrer que F est strictement convexe, c’est à dire que
1
F (αx + (1 − α)y) − αF (x) − (1 − α)F (y) ≤ − α(1 − α)λmin (A)
2
où λmin (A) est la plus petite valeur propre de A.
On voit donc que le problème (7.1) est équivalent à la minimisation de F . L’idée va donc de
construire des suites minimisantes de F pour approcher la solution de (7.1).

7.1.2 Méthodes de descente


Une méthode de descente consiste à construire une suite minimisante sous la forme

xn+1 = xn + αn pn , (7.4)

113
114 CHAPITRE 7. MÉTHODES DE DESCENTE

où pn ∈ Rd , pn 6= 0 et où le scalaire αn est choisi pour que F (xn+1 ) < F (xn ). La convergence
de la méthode dépend bien sûr des choix des pn et αn .

Définition 7.1 L’erreur à l’étape n est le vecteur

en = x − xn . (7.5)

On appelle résidu à l’étape n le vecteur

rn = b − Axn = Aen . (7.6)

Remarque 7.1 Le résidu à la nième étape vérifie rn = −DF (xn ).

7.1.3 Choix optimal de αn pour pn fixé


Supposons choisie la direction pn : on peut choisir αn de manière à minimiser la fonction φ
de R+ dans R donnée par
φ(t) = F (xn + tpn ).
Cette fonction admet un minimum unique pour

rnT pn
αopt = , (7.7)
pTn Apn

et on a
rnT pn
xn+1 = xn + pn
pTn Apn

Proposition 7.1 Pour tout pn , et si on choisit αn = αopt , on a


T
rn+1 pn = 0. (7.8)

7.2 Méthodes de gradient


7.2.1 Principe des méthodes de gradient
L’idée des méthodes de gradient va être de choisir comme direction de descente le gradient
de F en xn , ou (voir Remarque 7.1), de manière équivalente, le résidu rn :

xn+1 = xn − αn DF (xn )
(7.9)
= xn + αn rn .

Pour tout x ∈ Rd , il existe un nombre réel αmax (x) > 0, tel que

ρ ∈]0, αmax (x)[⇔ F (x − ρDF (x)) < F (x).

Exercice Démontrer cette assertion.


Le pas αn doit donc être un réel positif choisi tel que F (xn+1 ) < F (xn ).

Remarque 7.2 On peut généraliser ces méthodes à des fonctions strictement convexes et différentiables.
7.2. MÉTHODES DE GRADIENT 115

7.2.2 Interprétation géométrique en dimension deux


Soit A une matrice d’ordre deux symétrique et définie positive. On sait que A est diagona-
lisable dans une base orthonormale. Quitte à changer les coordonnées on peut supposer que A
est diagonale et que b = 0 :  
λ1 0
A= . (7.10)
0 λ2
La fonction F s’écrit alors F (x) = λ1 x21 + λ2 x22 , et les lignes de niveaux de F : F (x) = r 2 sont
les ellipses concentriques
λ1 x21 + λ2 x22 = r 2 . (7.11)
Le gradient de F au point x est orthogonal à l’ellipse d’équation (7.11) passant par x. La Figure
7.1 donne un exemple des premiers itérés d’une méthode de gradient.

x0

x1
x2

Fig. 7.1 – deux itérés d’une méthode de gradient

7.2.3 Méthodes du gradient à pas fixe


Si A est défini positif, on peut obtenir une méthode convergente en fixant αn à une valeur
bien choisie : la méthode du gradient à pas fixe consiste à construire la suite récurrente

xn+1 = xn − α(Axn − b).


L’erreur vérifie
en+1 = (I − αA)en = (I − αA)n+1 e0 ,
ce qui montre que la méthode du gradient à pas fixe converge si et seulement si
ρ(I − αA) < 1

et on note τ (α) = ρ(I − αA) le rayon spectral de I − αA. On appelle τ (α) le taux de convergence
de la méthode. On a donc
Théorème 7.1 Si A est symétrique définie positive, la méthode du gradient à pas fixe converge
vers la solution x de (7.1) si et seulement si
2
α< . (7.12)
λmax (A)
De plus la valeur de α minimisant le taux de convergence τ (α) est
2
αopt = .
λmin (A) + λmax (A)
116 CHAPITRE 7. MÉTHODES DE DESCENTE

et le taux de convergence vaut alors

cond2 (A) − 1
τopt =
cond2 (A) + 1

Démonstration. La matrice d’itérations (I − αA) est diagonalisable et ses valeurs propres sont
1 − αλ où λ est valeur propre de A. La condition nécessaire et suffisante s’obtient facilement en
écrivant la condition ρ(I − αA) < 1.
On a pour toute valeur propre λ de A,

1 − αλmax ≤ 1 − αλmax ≤ 1 − αλmin

Donc ρ(I − αA) = max(|1 − αλmax (A)|, |1 − αλmin (A)|). En tracant le graphe des deux fonctions

2.0

1.8

1.6

1.4

1.2

1.0

0.8

0.6

0.4

0.2

0
0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0

Fig. 7.2 – graphes des fonctions α → |1 − αλmax (A)| et α → |1 − αλmin (A)|

α → |1 − αλmax (A)| et α → |1 − αλmin (A)|, (voir Figure 7.2), on voit que


(
2
1 − αλmin (A) pour α ≤ λmin (A)+λ max (A)
,
ρ(I − αA) = 2
αλmax (A) − 1 pour α ≥ λmin (A)+λmax (A) ,

2
On voit aussi que le minimum de ρ(I − αA) est atteint pour αopt = λmin (A)+λmax (A) et qu’il vaut

λmax (A) − λmin (A) cond2 (A) − 1


τopt = =
λmax (A) + λmin (A) cond2 (A) + 1

Remarque 7.3 On voit donc que la méthode du gradient à pas fixe converge d’autant plus
lentement que le conditionnement de A est grand. En effet, avec le choix optimal pour ρ, il faut
de l’ordre de
| log(ǫ)|
cond2 (A)−1
| log( cond 2 (A)+1
)|

itérations pour réduire l’erreur d’un facteur ǫ ; quand cond2 (A) ≫ 1, le nombre d’ itérations est
donc de l’ordre de
cond2 (A)
| log(ǫ)| .
2
7.2. MÉTHODES DE GRADIENT 117

7.2.4 Méthode du gradient à pas optimal


Comme dans § 7.1.3, on peut construire

xn+1 = xn − αn (Axn − b),

en choisissant αn de manière à minimiser la fonction φ de R+ dans R donnée par

φ(t) = F (xn − t(Axn − b)).

Cette fonction à un minimum unique pour

kAxn − bk22 krn k22


αopt = = , (7.13)
kAxn − bk2A krn k2A

où
kyk2A = y T Ay.
Il est important de noter que dans la méthode du gradient à pas optimal, d’après (7.8), les
résidus successifs sont orthogonaux :
T
rn+1 rn = 0. (7.14)

Théorème 7.2 Si A est symétrique et définie positive, la méthode du gradient à pas optimal
converge vers la solution x de (7.1).

Démonstration. La suite des J(xn ) est décroissante par construction, et bornée inférieurement
par J(x), donc converge. On en déduit que

J(xn+1 ) − J(xn ) → 0,

ce qui implique que


1
−αn krn k22 + α2n rnT Arn → 0,
2
krn k22
et comme αn = rnT Ar ,
n
on trouve finalement que

krn k42
→ 0.
rnT Arn

Comme A est définie positive, ceci implique que rn → 0. Toujours grâce au caractère défini
positif de A, on en déduit que en → 0.

Remarque 7.4 Cette démonstration se généralise à la méthode du gradient à pas optimal ap-
pliqué à la minimisation d’une fonction F fortement convexe et de gradient Lipchitzien.

Pour déterminer la vitesse de convergence de la méthode de gradient à pas optimal, on utilise


l’inégalité de Kantorovitch
118 CHAPITRE 7. MÉTHODES DE DESCENTE

Lemme 7.1 Soient d réels strictement positifs,

0 < ℓ1 < · · · < ℓi < · · · < ℓd


P P
et d réels positifs βi tels que d1 βi = 1. On note ℓ = d1 βi ℓi . On a
d
X βi ℓ1 + ℓd − ℓ
≤ , (7.15)
1
ℓi ℓ1 ℓd

et
1 4ℓ1 ℓd
Pd ≥ . (7.16)
ℓ βi
1 ℓi
(ℓ1 + ℓd )2

Démonstration. Pour prouver (7.15), on doit montrer que


d
X 1 ℓi ℓ1 + ℓd
βi ( + )≤
ℓ i ℓ1 ℓd ℓ1 ℓd
1

1 x
Pour cela, on voit que la fonction qui à x ∈ [ℓ1 , ℓd ] associe x + atteint son maximum en
ℓ1 ℓd
P
x = ℓ1 et en x = ℓd et le maximum vaut 1
ℓ1 + 1
ℓd . On conclut en utilisant le fait que di=1 βi = 1.
Après, (7.16) s’obtient facilement en cherchant le minimum de ℓ ℓ1 +ℓ d −ℓ
ℓ1 ℓd sur l’intervalle [ℓ1 , ℓd ].

Proposition 7.2 (Kantorovitch) Soit A ∈ Md (R) symétrique définie positive dont les valeurs
propres vérifient 0 < λmin = λ1 < · · · < λi < · · · < λd = λmax . On a
kyk42 4λmin λmax
inf −1
= .
T T
y6=0 (y Ay) (y A y) (λmin + λmax )2
Démonstration. On note λ1 ≤ λ2 ≤ · · · ≤ λd les valeurs propres de A et (vi )1≤i≤d une base
T 2
orthonormale de vecteurs propres : Avi = λi vi . Pour y ∈ Rd , on note βi = (ykykvi2) :
2

d
X
βi = 1.
i=1

On a aussi
d d
(Ay, y) X (A−1 y, y) X 1
= βi λi et = βi .
kyk22 i=1
kyk22 λ
i=1 i
et on applique le lemme précédent, et on obtient
kyk42 4λmin λmax
inf −1
≥ .
T T
y6=0 (y Ay) (y A y) (λmin + λmax )2
Enfin, cet infimum est atteint par y = v1 + vd .

Théorème 7.3 Pour la méthode du gradient à pas optimal, on a l’estimation


 
cond2 (A) − 1 n
ken kA ≤ ke0 kA
cond2 (A) + 1
7.3. LA MÉTHODE DU GRADIENT CONJUGUÉ 119

krn k22 krn k22 krn k22


Démonstration. On a αn = T Ar ,
rn n
en+1 = en − T Ar rn ,
rn n
et rn+1 = rn − T Ar Arn .
rn n
Donc

ken+1 k2A = eTn+1 Aen+1 = eTn+1 rn+1


krn k42
= eTn rn − T Ar
rn n

krn k42
= (1 − )eT Aen
(rnT Arn )(rnT A−1 rn ) n

(λmax − λmin )2 T
≤ e Aen
(λmax + λmin )2 n
 2
cond2 (A) − 1
= ken k2A
cond2 (A) + 1

Interprétation géométrique en dimension deux


On reprend la matrice A donnée par (7.10). D’après (7.14), on peut construire graphiquement
la suite des itérés, car le point xn+1 est à la fois sur la droite de direction rn passant par xn ,
et sur l’ellipse d’équation (7.11) tangentée par cette droite. La Figure 7.3 donne un exemple
des premiers itérés d’une méthode de gradient à pas optimal. Dire que la matrice A est mal

x0 x2
x4
x1 x3

Fig. 7.3 – méthode de gradient à pas optimal

conditionnée, c’est dire que les lignes de niveaux de F sont des ellipses très allongées, ou encore
à fort rapport d’aspect. Dans ce cas, on voit que la suite des xn se rapproche de sa limite x en
zigzaguant beaucoup, et on comprend que la convergence est lente.

7.3 La méthode du Gradient Conjugué


Soit A ∈ Md (R) une matrice symétrique définie positive. Pour v ∈ Rd , on note kvk2 la norme
euclidienne de v : kvk22 = v T v et kvkA la norme définie par

kvk2A = v T Av.

On veut résoudre le système


Au = b (7.17)
120 CHAPITRE 7. MÉTHODES DE DESCENTE

par une méthode de descente à pas optimal.


On a vu précédemment que la méthode du gradient à pas optimal conduit à des trajectoires
très oscillantes lorsque le conditionnement de la matrice est grand. Afin d’éviter ces phénomènes
d’oscillations, l’idée est de chercher une méthode à pas optimal où la direction de descente n’est
plus le gradient mais est construite en fonction des directions précédentes.
On rappelle que résoudre (7.17) est équivalent à minimiser la fonction J(v) = 12 v T Av, v − v T b,
et que le gradient de J en v est donné par

gradJ(v) = Av − b

On construit une suite minimisante pour J de la façon suivante :


L’initialisation de la méthode se fait en choisissant u0 et en prenant p−1 = 0.
Connaissant uk et pk−1 , k > 0, (on note le résidu rk = b − Auk = −gradJ(uk )), on choisit en
même temps la nouvelle direction de descente pk et le pas αk > 0. La direction de descente pk
est cherchée sous la forme

pk = −gradJ(uk ) + βk pk−1 = rk + βk pk−1 (7.18)

On cherche βk et αk de manière à minimiser la fonction

f (βk , αk ) = J(uk +αk pk ) = J(uk +αk (−gradJ(uk )+βk pk−1 )) = J(uk +αk (rk +βk pk−1 )). (7.19)

Soulignons qu’il s’agit d’un problème d’optimisation à deux variables βk et αk .


On prend alors
uk+1 = uk + αk pk .
Cette méthode qui s’appelle l’algorithme du gradient conjugué, a été inventée en 1952 par Hes-
tenes et Stieffel.

On écrit les conditions d’optimalité pour ce problème d’optimisation


∂f
= 0 ⇔ pTk gradJ(uk + αk pk ) = 0 (7.20)
∂αk
∂f
= 0 ⇔ pTk−1 gradJ(uk + αk pk ) = 0, (7.21)
∂βk
où pk est donnée par (7.18). L’équation (7.20) est équivalente à pk )T (b − Auk − αk Apk ) = 0 ou
encore à pk )T (rk − αk Apk ) = 0 et on a donc

pTk rk
αk = . (7.22)
pTk Apk
qui est la formule déjà trouvée pour toute méthode de descente à pas optimal. Comme le pas
est optimal, on a la relation d’orthogonalité entre la direction de descente pk−1 et le résidu rk :

pTk−1 rk = 0, k ≥ 0. (7.23)

On déduit alors immédiatement de (7.18) et de (7.23) que pk donné par (7.18) n’est pas nul si
rk 6= 0.
De la relation (7.18), on tire que αk s’écrit aussi

rkT rk krk k22


αk = = . (7.24)
pTk Apk kpk k2A
7.3. LA MÉTHODE DU GRADIENT CONJUGUÉ 121

La condition d’optimalité vérifiée par βk s’écrit

pTk−1 (rk − αk Apk ) = 0 (7.25)

ce qui montre que


pTk−1 rk − αk pTk−1 A(rk + βk pk−1 ) = 0 (7.26)
On déduit de (7.26),(7.23)
pTk−1 Ark
βk = − (7.27)
pTk−1 Apk−1
ce qui implique que
pTk−1 Ark
p k = rk − pk−1 , (7.28)
pTk−1 Apk−1
et que
pTk−1 Apk = 0. (7.29)
Il reste à montrer que les valeurs de αk et βk correspondent à un minimum local de f : pour
cela, on doit montrer que D 2 f (αk , βk ) est symétrique définie positive : on a
 T 
2 2pk Apk 0
D f (αk , βk ) = ,
0 2α2k pTk−1 Apk−1

qui est semi-définie positive, et définie positive si pk−1 6= 0,pk 6= 0 et rk 6= 0.


Les formules (7.24) et (7.27) suffisent à définir complètement cet algorithme, mais il s’avère qu’on
peut prouver un grand nombre de propriétés qui expliquent pourquoi cet algorithme converge
si bien, en particulier des propriétés de conjugaison entre les directions de descente :

Théorème 7.4 L’algorithme défini ci-dessus a les propriétés suivantes

pTl Apk = 0, ∀l, k, l 6= k (7.30)

On dit que les directions de descentes sont deux à deux conjuguées.

rlT rk = 0, ∀l, k, l 6= k (7.31)

rlT pk = 0, ∀l, k, k < l (7.32)

pk ∈ V ect(r0 , . . . , rk ) (7.33)
Le sous-espace V ect(r0 , . . . , rk ) est appelé kème espace de Krylov.

Démonstration. La propriété (7.33) est une conséquence immédiate de (7.18) et de p−1 = 0


(se démontre par récurrence).
La relation de conjugaison
pTk−1 Apk = 0, k ≥ 0. (7.34)
est une conséquence directe de (7.28). On déduit alors que pTk Apk = rkT Apk et on tire de (7.24)
que
r T rk
αk = Tk
rk Apk
122 CHAPITRE 7. MÉTHODES DE DESCENTE

Comme rk+1 = rk − αk Apk , on voit que

rkT rk+1 = 0. (7.35)

On va maintenant démontrer par récurrence les relations (7.30), (7.31), (7.32). On sait que
pT0 r1 = 0 cf. (7.23), et on vient de démontrer que pT0 Ap1 = 0 et que r0T r1 = 0.
supposons que la propriété de récurrence est vraie jusqu’à l − 1. i.e. ∀k1 , k2 , 0 ≤ k1 < k2 < l,

pTk1 rk2 = 0,
rkT1 rk2 = 0, (7.36)
T
pk1 Apk2 = 0.

1. On tire de (7.23) que pTl−1 rl = 0. Il reste à montrer que pTk rl = 0, pour k < l − 1. Mais
rl = rl−1 − αl−1 Apl−1 et (7.36) implique que pTk rl−1 = pTk Apl−1 = 0. On a donc bien que
pTk rl = 0, pour k < l − 1.
2. On tire de (7.35) que rl−1T r = 0. Il reste à montrer que r T r = 0, pour k < l − 1. Mais
l k l
rk = pk − βk pk−1 : rk rl = (pk − βk pk−1 )T rl = 0 d’après le point 1.
T

3. On tire de (7.34) que pTl−1 Apl = 0. Il reste à montrer que pTk Apl = 0, pour k < l −
1. On utilise alors que pl = rl + βl pl−1 , donc pTk Apl = pTk Arl + βl pTk Apl−1 = pTk Arl ,
d’après (7.36). Mais pTk Arl = rlT Apk et pk ∈ V ect(r0 , . . . , rk ) d’après (7.33), et Apk ∈
V ect(r0 , . . . , rk , rk+1 ) ⊂ V ect(r0 , . . . , rl−1 ). Du point 2, on déduit le résultat désiré.
On a montré (7.30), (7.31), (7.32) par récurrence.

Corollaire 7.1 L’algorithme du gradient conjugué dans Rd converge en au plus d itérations.

Démonstration. Les résidus sont deux à deux orthogonaux. Si pour tout k < d, rk 6= 0,
(r0 , . . . , rd ) est une famille orthogonale de vecteurs de Rd avec d + 1 vecteurs : ceci ne peut avoir
lieu que si rd = 0.

Remarque 7.5 On vient de voir que la méthode du gradient conjuguée qui est une méthode
itérative peut aussi être vue comme une méthode directe, puisque qu’elle donne le résultat exact
(en arithmétique exacte) en au plus n itérations. Le gradient conjugué, implémenté sur un or-
dinateur, ne peut pas être considéré comme une méthode directe, car l’arithmétique n’est pas
exacte, et les directions de descentes ne sont pas exactement conjuguées.

Corollaire 7.2 L’itéré uk+1 minimise la fonction J sur l’espace de Krylov V ect(r0 , . . . , rk ).

Démonstration. En effet, (7.33) implique que uk+1 ∈ V ect(r0 , . . . , rk ) (par récurrence) pour
l ≤ k, rlT gradJ(uk+1 ) = rlT rk+1 = 0.

Remarque 7.6 L’algorithme du gradient conjugué appartient donc à la classe des méthodes
dites de Krylov, où l’on minimise à chaque itération une norme du résidu dans l’espace de
Krylov. Pour en savoir plus sur les méthodes de Krylov, on pourra lire Y. Saad [8].

Remarque 7.7 Pour en savoir plus sur la méthode du gradient conjugué, on pourra lire [3].
7.3. LA MÉTHODE DU GRADIENT CONJUGUÉ 123

L’algorithme du gradient conjugué s’écrit


pT
k rk
αk = pT
k Apk
xk+1 = xk + αk pk
rk+1 = rk − αk Apk
T
rk+1 Apk
βk+1 = − pT Ap
k k
pk+1 = rk+1 + βk+1 pk

L’algorithme du gradient conjugué a d’autres propriétés très intéressantes qui en font la


meilleure méthode itérative pour des systèmes où A est symétrique et définie positive. On peut
démontrer en particulier le résultat, voir [4, 5].

Théorème 7.5 Soit A ∈ Md (R) une matrice symétrique définie positive. On a


p !k
cond2 (A) − 1
kek kA ≤ 2 p ke0 kA (7.37)
cond2 (A) + 1

Démonstration. On voit que dans la méthode du gradient conjugué, l’erreur à l’étape k est de
la forme
Xk
(k)
e = (I + γℓ Ak )e(0)
ℓ=1

où les (γℓ )1≤ℓ≤k sont choisis pour minimiser ke(k) kA . On peut donc écrire l’erreur

e(k) = P (k) (A)e(0) ,

où P (k) est le polynôme de degré k réalisant le minimum de la fonctionnelle

Q 7→ kQ(A)e(0) kA

sur l’ensemble des polynômes de degré k prenant la valeur 1 en 0.


Soit tk le k ième le polynôme de Chebyshev de première espèce :

tk (x) = cos(k arccos(x)), x ∈ [−1, 1]


1 p p 
tk (x) = cosh(k arg cosh(x)) = (x + x2 − 1)k + (x + x2 − 1)−k , x>1
2
tk (x) = tk (−x) x < 1.

On peut montrer par récurrence que tk est un polynôme de degré k et que son coefficient directeur
est 2k−1
Soient λmin la plus petite valeur propre de A et λmax la plus grande valeur propre de A. On
prend
tk ( 2x−λ min −λmax
λmax −λmin )
Q(x) = .
tk ( −λ min −λmax
λmax −λmin )

On voit que Q(0) = 1 et que

1 1
max |Q(x)| = =
x∈[λmin ,λmax ] tk ( −λmin −λmax
λmax −λmin ) tk ( cond 2 (A)+1
cond2 (A)−1 )
124 CHAPITRE 7. MÉTHODES DE DESCENTE

Un calcul facile montre que


 p !k p !−k  p !−k
cond2 (A) + 1 1 cond2 (A) − 1 cond2 (A) − 1 ≥ 1 cond2 (A) − 1
tk ( )= p + p p
cond2 (A) − 1 2 cond2 (A) + 1 cond2 (A) + 1 2 cond2 (A) + 1

On déduit que
p !k
cond2 (A) − 1
ke(k) kA = kP (k) (A)e(0) kA ≤ kQ(A)e(0) kA ≤ max |Q(λ)|ke(0) kA ≤ 2 p ke(0) kA ,
λ∈σ(A) cond2 (A) + 1

ce qui est bien le résultat désiré.


Si on a des informations supplémentaires sur le spectre de A, on peut obtenir une meilleure
estimation : supposons par exemple que les valeurs propres de A soient

λ1 ≪ λ2 ≤ · · · ≤ . . . λd .

On a donc
λd
≪ cond2 (A).
λ2
On introduit alors le polynôme Q de degré k, prenant la valeur 1 en 0 :

tk−1 ( 2x−λ 2 −λd


λd −λ2 ) λ1 − x
Q(x) = .
tk−1 ( −λ2 −λd
λd −λ2 )
λ1

On voit que
q k−1
tk−1 ( 2λ−λ2 −λd ) λ − λ λd
λd −λ2 d 1 λ2 − 1
max |Q(λ)| = max |Q(λ)| ≤ max −λ −λ ≤ 2 q  (cond2 (A)−1)
λ∈σ(A) λ∈{λ2 ,...,λk } λ∈[λ2 ,Λd ] tk−1 ( 2 d
) λ1 λd
λd −λ2 λ2 + 1
√ k
qui est asymptotiquement beaucoup plus petit que 2 √cond2 (A)−1 .
cond2 (A)+1
De même, si le spectre de A a ses ℓ plus petites valeurs propres isolées dur reste du spectre, pour
ℓ≪d:
λ1 ≤ λ2 ≤ · · · ≤ λℓ ≪ λℓ+1 · · · ≤ . . . λd .
λd
≪ cond2 (A).
λℓ+1
On suppose que ℓ ≪ d et pour k ≥ ℓ, on introduit le polynôme Q de degré k, prenant la valeur
1 en 0 :
ℓ 2x−λd −λℓ+1
Y λi − λ tk−ℓ ( λd −λℓ+1 ) −λd − λℓ+1
Q(λ) = ( )
λi t k−ℓ λd − λℓ+1
i=1
On voit que
q k−ℓ q k−ℓ
λd λd
λℓ+1 −1 ℓ
Y λd − λ i λℓ+1 −1
max |Q(λ)| ≤ 2  q  ≤ 2 q  (cond2 (A))ℓ
λ∈σ(A) λd
+1 λi λd
+1
λℓ+1 i=1 λℓ+1
√ k
cond2 (A)−1
qui est asymptotiquement beaucoup plus petit que 2 √ .
cond2 (A)+1
Chapitre 8

Recherche de valeurs propres

Les notes ci-dessous s’inspirent de deux livres sur le calcul matriciel : le livre de P.G. Ciarlet
[2] est une introduction à la fois très abordable et très complète. Le livre de G. Golub et al [3]
est la référence dans le domaine de l’analyse numérique matricielle.
Trouver les valeurs propres d’une matrice carrée d’ordre n en factorisant son polynôme
caractéristique devient impossible en général quand n > 4. Il faut donc utiliser des méthodes
itératives. Il existe deux types de méthodes de recherche de valeurs propres :
– Les méthodes partielles qui visent à rechercher la plus grande ou la plus petite valeur propre
ou encore la valeur propre la plus proche d’une valeur donnée. Ces méthodes marchent si la
valeur propre recherchée est séparée des autres valeurs propres en module. Ces méthodes
permettent de trouver le vecteur propre correspondant.
– Les méthodes globales qui donnent le spectre entier mais qui en général ne permettent pas
d’obtenir directement les vecteurs propres.

8.1 Généralités
8.1.1 Décomposition de Schur
voir § 2.10.

8.1.2 Sensibilité d’un problème aux valeurs propres


On considère la matrice de Mn (R)
 
0 ... ǫ
 1 0 ... 0 
 
 
 0 ... ..
. 
 
 .. 
 . 
0 ... 1 0

Son polynôme caractéristique est xn ± ǫ : les valeurs propres sont nulles si ǫ = 0 et ce sont les
racines n ièmes de ±ǫ si ǫ 6= 0. Si n = 10 et si ǫ = 10−10 , les valeurs propres ont pour module 0.1.
On voit donc qu’une perturbation de 10−10 d’un coefficient de la matrice entraı̂ne des variations
importantes des valeurs propres.
Pour tenter de comprendre la sensibilité des valeurs propres aux perturbations d’une matrice,
on a le résultat

125
126 CHAPITRE 8. RECHERCHE DE VALEURS PROPRES

Théorème 8.1 Soit A ∈ Mn (C) diagonalisable, et P une matrice de changement de base telle
que P −1 AP = Diag(λ1 , . . . λn ). Soit kk une norme sur Mn (C) telle que

kM N k ≤ kM kkN k et kDiag(µ1 . . . µn )k = max |µi |


i=1...n

alors pour toute perturbation δA de A, on a

sp(A + δA) ⊂ ∪ni=1 Di (8.1)

et
Di = {µ ∈ C; |µ − λi | ≤ condk k (P )kδAk}. (8.2)

Démonstration.
On sait que µ est valeur propre de A + δA si et seulement si A + δA − µI n’est pas inversible.
En multipliant à droite par P et à gauche par P −1 , ceci est équivalent à dire que Diag(λ1 −
µ, . . . , λn − µ) + P −1 δAP est singulière. Deux cas se présentent :
1. si Diag(λ1 − µ, . . . , λn − µ) est singulière, alors µ ∈ Di pour un indice i ∈ {1, . . . , n}.
2. sinon, I + Diag((λ1 − µ)−1 , . . . , (λn − µ)−1 )P −1 δAP est singulière. Ceci implique que
kDiag((λ1 − µ)−1 , . . . , (λn − µ)−1 )P −1 δAP k ≥ 1, autrement on pourrait construire un
inverse avec une série. Les propriétés de la norme impliquent alors que kDiag((λ1 −
µ)−1 , . . . , (λn −µ)−1 )kkP −1 kkδAkkP k ≥ 1, soit encore maxi |λi −µ|−1 condk k (P )kδAk ≥ 1.
On en déduit que
min |λi − µ| ≤ condk k (P )kδAk
i

Remarque 8.1 La sensibilité d’un problème aux valeurs propres d’une matrice A diagonalisable
par rapport aux perturbations dépend donc du conditionnement de la matrice de passage P et
non pas de celui de A.

Remarque 8.2 Si A est normale, on sait que A est diagonalisable avec P unitaire. On a
cond2 (P ) = 1. Dans ce cas les valeurs propres de δA sont contenues dans des cercles centrés
aux valeurs propres de A et de rayon kδAk2 .

Remarque 8.3 On a un résultat plus précis si A et δA sont hermitiennes. Dans ce cas, cf.
[2], le théorème du min-max permet de dire que si on ordonne les valeurs propres par valeur
croissante, les k ièmes valeurs propres de A et A + δA sont distantes d’au plus kδAk2 .

8.1.3 Valeurs singulières d’une matrice


Voir §2.11.

8.1.4 Norme de Frobenius


Voir §4.1.3
8.2. MÉTHODES PARTIELLES DE RECHERCHE DE VALEURS PROPRES 127

8.2 Méthodes partielles de recherche de valeurs propres


8.2.1 La méthode de la puissance
Soit A ∈ Mn (C) diagonalisable. On note λ1 , . . . , λn les valeurs propres de A et x1 , . . . xn des
vecteurs propres unitaires associés. Dans la suite on va supposer que |λ1 | > |λ2 | ≥ |λ3 | ≥ · · · ≥
|λn |.
On veut construire une méthode pour approcher numériquement λ1 . Pour cela, on se donne un
vecteur q (0) tel que kq (0) k2 = 1 et on construit la suite λ(k−1) , q (k) pour k ≥ 1, par la récurrence
suivante
z (k) = Aq (k−1) ,

z (k)
q (k) = ,
kz (k) k2

λ(k−1) = q (k−1) z (k) ,
Cette méthode itérative s’appelle méthode de la puissance, car q (k) et z (k) sont proportionnels
à Ak q (0) . On a le résultat de convergence
Théorème 8.2 (convergence de la méthode de la puissance) Soit A ∈ Mn (C) diagona-
lisable, λ1 , . . . , λn ses valeurs propres, et x1 , . . . xn des vecteurs propres unitaires associés. Si

|λ1 | > |λ2 | ≥ |λ3 | ≥ · · · ≥ |λn | (8.3)


et si q (0) = a1 x1 +. . . an xn avec a1 6= 0, alors λ(k) converge vers λ1 et il existe C ≥ 0 indépendant
de k et pour tout k, ǫ(k) ∈ C, |ǫ(k) | = 1 tels que
 
|λ2 | k
|λ(k) − λ1 | ≤ C ,
|λ1 |
  (8.4)
(k) (k) |λ2 | k
kǫ q − x1 k ≤ C ,
|λ1 |
Démonstration. On vérifie facilement que
 k  k !
λ2 λn
Ak q (0) = λk1 a1 x1 + a2 x2 + · · · + an xn .
λ1 λ1

Comme q (k) est colinéaire à Ak q (0)


 k  k !
λ2 λn
q (k) = α(k) a1 x1 + a2 x2 + · · · + an xn (8.5)
λ1 λ1

et en utilisant (8.3) et kq (k) k2 = 1, on voit que


k
(k)
|α | − 1 ≤ C λ2 . (8.6)
|a1 | λ1

Comme λ(k) = q (k) Aq (k) , on voit facilement en utilisant (8.5) et (8.6) que
k
λ2
|λ (k+1)
− λ1 | ≤ C .
λ1
Le résultat est démontré.
128 CHAPITRE 8. RECHERCHE DE VALEURS PROPRES

Remarque 8.4 Un des intérêts de cette méthode est qu’elle nécessite juste de savoir effectuer
le produit matrice-vecteur par A.

8.2.2 Test d’arrêt pour la méthode de la puissance


Un problème qui se pose est de choisir le test-d’arrêt de la méthode : pour cela, on introduit
le résidu à l’étape k (qui tend vers 0 d’après le Théorème 1) :

r (k) = Aq (k) − λ(k) q (k) , (8.7)



et la matrice E (k) de rang un définie par kr (k) k2 E (k) = −r (k) q (k) . On a clairement kE (k) k2 = 1
(k)
et E (k) q (k) = − krr(k) k car q (k) est un vecteur unitaire. Donc d’après (8.7), (A+kr (k) k2 E (k) )q (k) =
2
λ(k) q (k) , ce qui montre que q (k) est un vecteur propre de la matrice perturbée A + kr (k) k2 E (k) ,
de valeur propre λ(k) . On utilise alors le résultat suivant

Théorème 8.3 Soit A ∈ Mn (C) une matrice diagonalisable et λ une valeur propre simple de
A. Il existe donc deux vecteurs unitaires x et y tels que Ax = λx et A∗ y = λ∗ y. Pour ǫ > 0, on
définit A(ǫ) = A + ǫE où E ∈ Mn (C) est une matrice telle que kEk2 = 1. Il existe une fonction
de classe C 1 : ǫ 7→ (λ(ǫ), x(ǫ)) d’un voisinage de 0 dans C × Cn telle que λ(0) = λ, x(0) = x,
A(ǫ)x(ǫ) = λ(ǫ)x(ǫ) et
∂λ
(0) ≤ 1 . (8.8)
∂ǫ |y ∗ x|

Avec ce théorème, on voit que |λ(k) − λ1 | ≤ |y∗1x1 | kr (k) k2 , ce qui donnerait un test d’arrêt si on
1
connaissait x1 et y1 .
On ne connaı̂t pas x1 et y1 , mais on sait que q (k) converge vers un vecteur qui est colinéaire
à x1 . En modifiant légèrement la méthode de la puissance, on peut approcher le produit scalaire
y1∗ x1 : on obtient le nouvel algorithme : On se donne deux vecteurs z (0) et w(0) , et on construit
(k)
la suite λ(k) , q (k),p pour k ≥ 1, par la récurrence suivante

z (k−1) w(k−1)
q (k−1) = , p(k−1) = ,
kz (k−1) k2 kw(k−1) k2

z (k) = Aq (k−1) , w(k) = A∗ p(k−1) ,



λ(k−1) = q (k−1) z (k) ,

kz (k) −λ(k−1) q (k−1) k2


e(k) = ∗
|p(k−1) q (k−1) |

Le réel e(k) fournit alors une estimation de |λ1 − λ(k−1) |.


Démonstration du Théorème 8.3 On peut trouver une base (x, e1 , . . . en−1 ) de vecteurs
propres de A. L’existence des fonctions (x(.), λ(.)) vient du théorème des fonctions implicites
appliqué dans l’espace engendré par les vecteurs propres C × Vect(e1 , . . . , en−1 ) , et du fait que
λ est une valeur propre simple : exercice.
On peut dériver par rapport à ǫ l’équation (A + ǫE)x(ǫ) = λ(ǫ)x(ǫ), ce qui donne Ex(ǫ) + (A +
ǫE − λ(ǫ)I) ∂x ∂λ ∂x ∂λ
∂ǫ (ǫ) = ∂ǫ (ǫ)x(ǫ). En ǫ = 0, on a : Ex + (A − λI) ∂ǫ (0) = ∂ǫ (0)x. On multiplie à
gauche par y ∗ : on obtient y ∗ Ex = ∂λ ∗
∂ǫ (0)y x.

On doit montrer que y x 6= 0. Pour cela, si on note X la matrice dont les colonnes sont les
vecteurs propres (à droite) de A, on a AX = XD où D est une matrice diagonale. On en déduit
8.2. MÉTHODES PARTIELLES DE RECHERCHE DE VALEURS PROPRES 129

X −1 A = DX −1 ou encore A∗ (X ∗ )−1 = (X ∗ )−1 D ∗ . Pour i 6= j, la i ème colonne de (X ∗ )−1 est


orthogonale à la j ème colonne de X. On construit Y en divisant chaque colonne de (X ∗ )−1 par
sa norme. La i ème colonne de Y est un vecteur propre unitaire de A∗ de valeur propre λi . Si
λk est une valeur propre simple, alors yk∗ xk 6= 0.
On conclut en majorant |y ∗ Ex| par 1 d’après les hypothèses sur E, x et y. ⊓ ⊔

8.2.3 Méthode de la puissance inverse


Supposons que A est inversible et diagonalisable. On note λ1 , . . . , λn les valeurs propres de A
et x1 , . . . xn des vecteurs propres normaux associés. On suppose cette fois que les valeurs propres
de A vérifient
0 < |λ1 | < |λ2 | ≤ |λ3 | ≤ · · · ≤ |λn |. (8.9)

On voit que A−1 est diagonalisable et que ses valeurs propres vérifient :

|λ−1 −1 −1 −1
1 | > |λ2 | ≥ |λ3 | ≥ · · · ≥ |λn |.

On peut donc appliquer la méthode de la puissance à A−1 pour approcher λ−1


1 : on se donne un
(0) (0)
vecteur q tel que kq k2 = 1 et on construit la suite µ (k−1) (k)
, q pour k ≥ 1, par la récurrence
suivante
trouver z (k) t.q. Az (k) = q (k−1) ,

z (k)
q (k) = ,
kz (k) k2

µ(k−1) = q (k−1) z (k) ,

Cet algorithme est appelé méthode de la puissance inverse : on a le résultat suivant

Théorème 8.4 (convergence de la méthode de la puissance inverse) Soit A ∈ Mn (C)


diagonalisable et inversible vérifiant (8.9). Si q (0) = a1 x1 + . . . an xn avec a1 6= 0, alors µ(k)
converge vers λ−1
1 et il existe C ≥ 0 indépendant de k et pour tout k, ǫ
(k) ∈ C, |ǫ(k) | = 1 tels que

 
|λ1 | k
|µ(k)
− λ−1
1 | ≤ C ,
|λ |
 2 k (8.10)
|λ1 |
kǫ(k) q (k) − x1 k ≤ C ,
|λ2 |

Remarque 8.5 Comme λ1 6= 0, on a aussi


 k
1 |λ1 |
|λ1 − (k) | ≤ C ,
µ |λ2 |

où C est une constante indépendante de k.

Remarque 8.6 La méthode de la puissance inverse nécessite de savoir résoudre des systèmes
linéaires du type Ax = b. Elle est donc plus complexe et plus coûteuse en temps que la méthode
de la puissance. Elle ne nécessite cependant pas la connaissance explicite de la matrice A−1 .
130 CHAPITRE 8. RECHERCHE DE VALEURS PROPRES

8.2.4 Méthode de la puissance inverse avec translation


Pour une matrice diagonalisable A, une modification de la méthode de la méthode de la
puissance inverse permet d’approcher numériquement la valeur propre λi la plus proche d’un
nombre complexe η donné, à condition qu’il n’y ait pas d’autre valeur propre sur le cercle dans
le plan complexe centré en η et passant par λi : on suppose que

0 < |λi − η| < |λj − η| ≤ |λl − η|, ∀l 6= i, j, 1 ≤ l ≤ n. (8.11)

On applique alors la méthode de la puissance inverse à la matrice diagonalisable et inversible


A − ηI : on se donne un vecteur q (0) tel que kq (0) k2 = 1 et on construit la suite µ(k) , q (k) pour
k ≥ 1, par la récurrence suivante

trouver z (k) t.q. (A − ηI)z (k) = q (k−1) ,

z (k)
q (k) = ,
kz (k) k2

µ(k−1) = q (k−1) z (k) ,
k

La suite (µ(k) ) converge vers (λi − η)−1 comme λλji −η
−η , et on a une convergence similaire vers
un vecteur propre xi .

8.3 Une méthode globale pour des matrices symétriques : la


méthode de Jacobi
On va se concentrer sur les matrices symétriques de Mn (R). La méthode de Jacobi permet de
construire à l’aide des rotations de Givens une suite de matrices A(k) orthogonalement semblables
à A qui converge vers une matrice diagonale : les coefficients diagonaux de cette matrice limite
sont les valeurs propres de A. L’idée de la méthode est simple : pour tout couple (k, l), 0 ≤ k <
l ≤ n, et pour θ ∈ [0, 2π[, on définit la matrice de rotation de Givens Qk,l (θ) par

k l
 
1
 .. 
 . 
 
 c 0 ... s 
 
 0 1 0 ...  k
Qk,l (θ) = 


 c = cos(θ), s = sin(θ)
 .. .. 
 . 1 . 
 .. 
 . 
 
 −s 0 . . . c  l
 
 1 
 
..
.
(8.12)
Pour une matrice symétrique B ∈ Mn (R), pour k < l, on peut trouver une valeur de θ dans
] − π4 , π4 ] telle que M = Qk,l (θ)T BQk,l (θ) vérifie mk,l = 0 et ml,k = 0. Si bkl 6= 0 cette valeur est
unique. En effet,
8.3. LA MÉTHODE DE JACOBI 131

– si bl,k = 0, on prend θ = 0.
– sinon, on voit que c 6= 0, et que si t = sc , t doit vérifier

bll − bkk
t2 + 2ηt − 1 = 0, η= (8.13)
2bkl
p
qui a deux racines −η ± η 2 + 1. Pour que θ ∈] − π4 , π4 ], on doit choisir pour t la racine
p p
de plus petit module : (−1 < t = −η − η 2 + 1 < 0 si η < 0 et 0 < t = −η + η 2 + 1 ≤ 1
1 t 1
si η ≥ 0) puis c = √1+t 2
et s = √1+t 2
. On remarque qu’on a aussi tan(2θ) = η.
Des calculs élémentaires montrent que la diagonale de B est transformée de la manière suivante :
les coefficients d’indices différents de p, p et de q, q ne sont pas changés ; le coefficient d’indice
p, p est transformé en bpp −bpq tan(θ) et le coefficient d’indice q, q est transformé en bqq +bpq tan(θ).

Les méthodes de Jacobi consistent à construire une suite de matrices symétriques A(k) , avec
A(0) = A, en choisissant pour tout k un couple (p, q) 1 ≤ p < q ≤ n et en construisant A(k+1)
par la relation A(k+1) = Qpq (θ)T A(k) Qpq (θ), où θ ∈]− π4 , π4 ] est choisi comme ci dessus de manière
(k+1) (k+1)
à annuler apq = aqp .
Il y a plusieurs façon de choisir quels coefficients annuler à l’itération k :
(k)
1. dans la méthode de Jacobi classique, on choisit (p, q) tel que apq soit le coefficient extra-
diagonal de A(k) de plus grand module.
(k)
|a(k)
pq | ≥ |aij | ∀i, j : i < j (i, j) 6= (p, q)

Cette méthode a de bonnes propriétés de convergence mais exige une recherche du plus
2
grand coefficient extra-diagonal. Ceci nécessite de l’ordre de n2 tests, et peut devenir
coûteux pour n grand.
2. dans la méthode de Jacobi cyclique, on annule successivement tous les coefficients extra-
diagonaux par un balayage cyclique : par exemple on choisira les couples (p, q) dans l’ordre
lexicographique suivant

(1, 2) (1, 3) . . . (1, n) (2, 3) . . . (2, n) . . . (n − 1, n)


(1) (2)
On annulera a12 pour construire A(1) , a23 pour construire A(2) , etc... Chaque cycle
nécessite donc de l’ordre de n(n−1)
2 transformations de jacobi.
3. On peut modifier légèrement l’algorithme ci-dessus en ne cherchant pas annuler les coeffi-
cients qui sont déjà très petits.
On va donner un résultat de convergence pour la méthode de Jacobi classique :

Théorème 8.5 (convergence de la méthode de Jacobi classique) La suite A(k) construite


par la méthode de Jacobi classique converge vers une matrice diagonale Diag(λ1 , . . . λn ) et
(λi )i=1...n est la famille des valeurs propres de A, (les valeurs propres multiples sont répétées
avec leur multiplicité).

Démonstration. i) On montre que la partie extradiagonale de A(k) converge vers 0.


On note |M |E la norme de Frobenius de la partie extradiagonale de M :
X
|M |2E = 2 m2p,q . (8.14)
1≤p<q≤n
132 CHAPITRE 8. RECHERCHE DE VALEURS PROPRES

On a l’inégalité : s
1
max |mi,j | ≥ |M |E . (8.15)
i<j n(n − 1)
(k) (k)
Si p, q est tel que |ap,q | = maxi<j |ai,j |, on a donc
q
(k) 1
1. |ap,q | ≥ n(n−1) |A(k) |E .
(k) (k) (k) (k+1) 2 (k+1) 2
2. |ap,p |2 + 2|ap,q |2 + |aq,q |2 = |ap,p | + |aq,q | . car les matrices
! !
(k) (k) (k+1)
ap,p ap,q ap,p 0
(k) (k) et (k+1)
ap,q aq,q 0 aq,q

sont orthogonalement semblables.


(k+1) (k)
Comme on a pour i 6= p, q, ai,i = ai,i , on en déduit

2
kDiag(A(k+1) )k2F ≥ kDiag(A(k) )k2F + |A(k) |2E . (8.16)
n(n − 1)

On sait aussi que la norme de Frobenius est invariante par transformation orthogonale :

kA(k+1) k2F = kA(k) k2F . (8.17)

De (8.16) et (8.17), on déduit que


2
|A(k+1) |2E ≤ (1 − )|A(k) |2E , (8.18)
n(n − 1)

ce qui montre que A(k) tend vers une matrice diagonale.


(k+1)
ii) En notant D (k) la diagonale de A(k) , montrons que D (k+1) − D (k) tend vers 0. On a |aii −
(k) (k) (k+1) (k) (k)
aii | = |apq || tan(θ)| ( (| tan(θ)| ≤ 1) si i = p ou i = q et |aii − aii | = 0 sinon. Comme apq
tend vers 0 et | tan(θ)| ≤ 1, on en déduit le résultat.

iii) Soit D une valeur d’adhérence de la suite A(k) : pour tout réel λ, det(D − λI) est une
valeur d’adhérence de det(A(k) − λI). D’autre part, toute les matrices A(k) sont semblables à A :
donc, det(D − λI) = det(A − λI), ce qui implique que D a le même polynôme caractéristique et
les mêmes valeurs propres que A (répétées avec leur multiplicité). De là, on déduit aussi que la
suite A(k) a un nombre fini de valeurs d’adhérence.

iv) Il faut montrer que toute la suite A(k) converge. C’est une conséquence de ii) et iii).
1. On montre dans un premier temps par l’absurde que si (L1 , . . . Lp ) sont les valeurs d’adhérence
de la suite A(k) ,(on sait qu’il y en a un nombre fini) alors pour tout ǫ, il existe k(ǫ) tel que
pour tout k > k(ǫ), il existe i ∈ {1, . . . , p} tel que kA(k) − Li kF ≤ ǫ : exercice.
2. Après on prend ǫ = 31 mini6=j kLi − Lj k. On sait qu’il existe K tel que pour tout k > K,
kA(k+1) − A(k) kF ≤ ǫ, et il existe i ∈ {1, . . . , p} tel que kA(k) − Li kF ≤ ǫ. On conclut en
montrant qu’il existe i0 tel que pour tout k > K, kA(k) − Li0 kF ≤ ǫ : exercice.
8.4. LA MÉTHODE QR 133

Remarque 8.7 La méthode de Jacobi construit A(k) orthogonalement semblable à A : on a


A(k) = (Q(k) )T AQ(k) , où Q(k) est le produit de k matrices de Givens. On peut alors montrer que
si toutes les valeurs propres de A sont simples, alors Q(k) converge vers Q et les colonnes de Q
constituent une base orthonormale de vecteurs propres de A. La démonstration est semblable à
celle du Théorème 8.5, cf. [2].

8.4 Une méthode globale : la méthode QR


La méthode QR est une méthode permettant d’obtenir tout le spectre d’une matrice. C’est
une méthode très populaire. On la décrit et on analyse ses propriétés. L’analyse de la méthode
est difficile et n’est pas au programme de l’examen.

8.4.1 Factorisations QR d’une matrice


Les réflexions de Householder
Définition 8.1 Soit v un vecteur non nul de Cn . On appelle réflexion de Householder ou matrice
de Householder relative au vecteur v la matrice
vv ∗
Hv = I − 2 . (8.19)
v∗ v

Les réflexions de Householder ont les propriétés suivantes :


1. Hv est une matrice hermitienne.
2. Hv est une matrice unitaire.
3. Hv − I est une matrice de rang un.
4. Hλv = Hv , pour tout λ 6= 0.

Proposition 8.1 Soit e un vecteur unitaire de CN et x un vecteur non nul de CN . Il existe un


vecteur non nul v ∈ CN tel que Hv x soit colinéaire à e.

Démonstration. On cherche v sous la forme v = x + λe. Dans le cas réel, (x ∈ RN et e ∈ RN ),


les vecteurs v = x ± kxk2 e ( au moins l’un des deux est non nul) sont les seuls vecteurs de cette
forme ayant la propriété demandée et on a Hv x = ∓kxk2 e. Dans le cas général, on trouve aussi
deux vecteurs v sous cette forme, et au moins l’un d’entre eux est non nul.

Remarque 8.8 Si x est presque colinéaire à e, on a intérêt en pratique à choisir le vecteur v


pour que v ∗ v, qui est au dénominateur de (8.19), ne soit pas petit. En effet, en précision finie, il
faut éviter les divisions par des nombres petits. En particulier si v ∈ Rn , on préférera le vecteur
v + = x + signe(x∗ e)kxk2 e au vecteur v − = x − signe(x∗ e)kxk2 e, car kv − k2 est petit.

Factorisations QR à l’aide des réflexions de Householder


Théorème 8.6 Soit A une matrice de Mm,n (C) avec m ≥ n. Il existe une matrice unitaire
Q ∈ Mm (C) et une matrice triangulaire supérieure R ∈ Mm,n (C), telles que

A = QR.
134 CHAPITRE 8. RECHERCHE DE VALEURS PROPRES

Démonstration. On démontre ce résultat par récurrence : supposons qu’à l’aide de deux


réflexions de Householder H1 et H2 , on ait obtenu
 
∗ ∗ ∗ ... ∗
 0 ∗ ∗ ... ∗ 
 
 
H2 H1 A =  0 0 ∗ . . . ∗ 
 .. .. 
 . . ∗ ... ∗ 
0 0 ∗ ... ∗

On appelle x le vecteur de Cm−2 obtenu en prenant les m − 2 derniers coefficients de la troisième


colonne de H2 H1 A. Si x est non nul, on sait trouver v3 ∈ Cm−2 , tel que
 
1
 0 
 
Hv3 x soit colinéaire à  . 
 .. 
0

On prend alors H3  
1 0 0
H3 =  1 1 0 .
0 0 Hv3
Si x = 0 on prend H3 = I. Dans les deux cas H3 est hermitienne et unitaire. On a
 
∗ ∗ ∗ ... ∗
 0 ∗ ∗ ... ∗ 
 
 0 0 ∗ . . . ∗ 
 
H3 H2 H1 A =  0 0 0 ∗ . . . ∗ 
 
 . . . 
 .. .. .. ∗ . . . ∗ 
0 0 0 ∗ ... ∗

Comme m ≥ n, on peut itérer ce procédé et construire n matrices Hi hermitiennes et unitaires,


telles que Hn . . . H1 A soit une matrice triangulaire supérieure R. On note Q la matrice unitaire
(mais pas forcément hermitienne) Q = H1 . . . Hn , on a

A = QR.

Les éléments fondamentaux de l’algorithme de la factorisation QR à l’aide de réflexions de


Householder sont
1. Le choix des vecteurs vi , de manière à ce que kvi k ne soit pas petit, cf. Remarque 8.8.
2. Le produit à gauche d’une matrice M par la matrice Hm : Hm M , doit être programmé
intelligemment : on ne doit surtout pas stocker la matrice Hm . Il suffit de garder en mémoire
le vecteur vm , et d’opérer les réflexions de Householder à chaque colonne de M .
3. On ne calcule donc pas Q en général, mais on garde en mémoire les vecteurs v1 , . . . , vn .
4. On peut écraser la matrice A que l’on factorise en stockant les vecteurs vi dans la partie
triangulaire inférieure stricte, et la matrice R dans la partie triangulaire supérieure à
condition de normaliser les vecteurs vi de manière à ce que leur premier coefficient soit 1.
8.4. LA MÉTHODE QR 135

5. Si la matrice A est réelle, alors la matrice Q l’est aussi.


La factorisation QR a de nombreuses propriétés intéressantes :
1. Résoudre le système Qy = b est facile car

Q−1 = Q∗ = Hn . . . H1 .
P
La complexité de la résolution du système Qy = b est donc 3 ni (m − i) adds+mults. Si
m = n, la complexité est de l’ordre de 32 n2 . Si la matrice A est carrée d’ordre n inversible,
pour résoudre Ax = b, on résout d’abord Qy = b comme ci-dessus, puis Rx = y par une
remontée. La complexité totale est de l’ordre de 2n2 .
2. Si A ∈ Mn (C) est inversible, alors

cond2 (A) = cond2 (R),

car Q est unitaire.


3. la méthode de Householder permet de calculer | det(A)|. En effet,

| det(R)| = |produit des coefficients diagonaux de R| = | det(A)|.

4. Si A ∈ Mm,n (C), m ≥ n, est factorisée sous la forme A = QR, alors résoudre une système
de la forme A∗ Ax = b est facile si rang(A) = n, car A∗ A = R∗ R et rang(R) = n, et on
peut résoudre A∗ Ax = b par une descente(de R∗ )-remontée (de R). La factorisation QR
d’une matrice se prête donc bien aux problèmes de moindres carrés.

Théorème 8.7 Soit A ∈ Cm×m . On peut trouver une factorisation QR telle que tous les coef-
ficients diagonaux de R sont réels positifs. Si A est inversible, cette factorisation est unique.

Démonstration. On part de la factorisation QR de A obtenue par la méthode de Householder


ci dessus : A = Q′ R′ où la matrice Q′ est unitaire et R′ est triangulaire supérieure. Appelons D
la matrice diagonale D = Diag(d1 , . . . dm ) où
(
ri i
|ri i | si ri i 6= 0,
di =
1 si ri i = 0,

La matrice D est clairement unitaire. Posons Q = Q′ D−1 et R = DR′ . Ces matrices ont les
propriétés désirées.
Supposons que A soit inversible et soient deux factorisation QR de A,

A = Q1 R1 = Q2 R2

telles que tous les coefficients diagonaux de R1 et R2 sont réels positifs. Ils sont strictement po-
sitifs car A est inversible. On a alors Q∗2 Q1 = R2 R1−1 . Mais Q∗2 Q1 est unitaire tandis que R2 R1−1
est triangulaire supérieure avec des coefficients diagonaux réels positifs strictement. On peut
vérifier que l’Identité est la seule matrice unitaire et triangulaire supérieure avec des coefficients
diagonaux réels positifs. Donc Q2 = Q1 et R2 = R1 .
136 CHAPITRE 8. RECHERCHE DE VALEURS PROPRES

Les rotations de Givens


Les réflexions de Householder sont très utiles quand il s’agit d’annuler tous les coefficients
d’une colonne sous la diagonale. En revanche, pour annuler sélectivement certains coefficients (si
la matrice a déjà beaucoup de coefficients nuls par exemple), les rotations de Givens constituent
un outil important.
Soit A une matrice de Mn (R) : il existe deux réels c = cos(θ) et s = sin(θ) tels que si

i j
 
1
 .. 
 . 
 
 c 0 ... s 
 
 0 1 0 ...  i
Q= 



 .. .. 
 . 1 . 
 .. 
 . 
 
 −s 0 . . . c  j
 
 1 
 
..
.

alors les lignes de QA d’indices différents de i et j sont identiques à celles de A, et (QA)j,i = 0.


a
On définit θ ∈] − π2 , π2 [ tel tan(θ) = t = aj,i
i,i
et c = cos(θ) = √t21+1 et s = sin(θ) = √t2t+1 . On a
−sai,i + caj,i = 0.

8.4.2 Généralisation de la méthode de la puissance


Soit A ∈ Mn (C). On note λ1 , . . . , λn les valeurs propres de A et x1 , . . . xn les vecteurs propres
associés. Dans la suite on va supposer que pour p, p < n,

|λ1 | ≥ |λ2 | ≥ . . . |λp | > |λp+1 | ≥ · · · ≥ |λn |. (8.20)

Soit T = Q∗ AQ une décomposition de Schur de A telle que D = Diag(T ) = (λ1 , . . . , λn ),


vérifiant (8.20). On note N = T − D et
   
T11 T12 N11 N12
T = et N = (8.21)
0 T22 0 N22

où T11 et N11 sont d’ordre p.


On notera
Q = (Q1 , Q2 ) (8.22)
où Q1 est la matrice de Cp×n obtenue en prenant les p premières colonnes de Q. On note Dp (A)
le sous-espace engendré par les colonnes de Q1 . On va chercher à approcher le sous-espace Dp (A).
Pour cela, on généralise la méthode de la puissance de la manière suivante : on se donne une
matrice Q(0) ∈ Cn×p dont les colonnes sont orthonormales et on construit la suite R(k) , Q(k)
pour k ≥ 1, par la récurrence suivante

Z (k) = AQ(k−1) ,

Z (k) = Q(k) R(k) , (factorisation QR de Z (k) )


8.4. LA MÉTHODE QR 137

Ici Q(k) ∈ Cn×p a ses colonnes orthonormales et R(k) ∈ Cp×p est une matrice triangulaire
supérieure.
Remarque 8.9 Pour p = 1, c’est exactement la méthode de la puissance et R(k) = λ(k) .
On veut montrer que le sous-espace engendré par les colonnes de Q(k) , noté noté Im(Q(k) ),
converge vers le sous-espace Dp (A).
Théorème 8.8 (Convergence vers Dp (A) ) Sous l’hypothèse (8.20) et si de plus

dist(Dp (A∗ ), Im(Q(0) )) < 1, (8.23)

alors  
(k) |λp+1 |k
dist(Dp (A), Im(Q )) = O . (8.24)
|λp |k
Démonstration. La preuve est assez complexe. Elle est donnée dans la section 8.4.5.

Remarque 8.10 L’hypothèse (8.23) est de la même nature que l’hypothèse sur le choix initial
dans la méthode de la puissance, cf. Théorème 8.2.

8.4.3 La méthode QR
Si on prend p = n dans l’algorithme précédent, et si on suppose de plus que les valeurs
propres de A vérifient |λ1 | < |λ2 | < · · · < |λn | (ceci implique d’ailleurs que A est diago-
nalisable), on voit que l’algorithme calcule une décomposition de Schur de A. En effet, pour
(0) (0)
tout i < n et si dist(Di (A∗ ), vect(q1 , . . . qi )) < 1, on voit d’après le Théorème 8.11 que
(k) (k)
dist(Di (A), vect(q1 , . . . qi )) tend vers 0. Ceci implique que T (k) = (Q(k) )∗ AQ(k) converge vers
une décomposition de Schur de A, (la limite de T (k) est triangulaire supérieure avec les valeurs
propres sur la diagonale).
Remarque 8.11 Si A est diagonalisable, les colonnes de Q(k) ne convergent pas en général vers
les vecteurs propres de A, qui ne sont pas nécessairement orthogonaux.

Remarque 8.12 Cette méthode ne donne donc pas directement les vecteurs propres, mais une
fois les valeurs propres approchées précisément, on peut utiliser une méthode de la puissance
inverse translatée pour calculer les vecteurs propres.

Dans le cas général, si plusieurs valeurs propres ont même module, T (k) ne converge plus vers
une matrice triangulaire supérieure mais vers une matrice triangulaire supérieure par blocs, les
blocs diagonaux correspondant aux valeurs propres d’un même module. On retrouve les valeurs
propres de A en prenant les valeurs propres des blocs diagonaux.
En notant T (k) = (Q(k) )∗ AQ(k) , on voit que T (k−1) = (Q(k−1) )∗ Q(k) R(k) = U (k) R(k) si on note
U (k) = (Q(k−1) )∗ Q(k) . De même, T (k) = (Q(k) )∗ AQ(k) = (Q(k) )∗ AQ(k−1) U (k) = (Q(k) )∗ Q(k) R(k) U (k) =
R(k) U (k) . On peut donc réécrire l’algorithme précédent sous sa forme la plus connue : on se donne
une matrice Q(0) ∈ Cn×p dont les colonnes sont orthonormales, on pose T (0) = (Q(0) )∗ AQ(0) et
on construit la suite T (k) , R(k) , U (k) pour k ≥ 1, par la récurrence suivante

T (k−1) = U (k) R(k) , (factorisation QR de T (k−1) )

T (k) = R(k) U (k) ,


138 CHAPITRE 8. RECHERCHE DE VALEURS PROPRES

8.4.4 Accélération de la méthode QR pour A ∈ Mn (R)


On voit qu’une étape de la méthode QR ci-dessus demande de l’ordre de n3 opérations, donc
cette méthode est coûteuse si n est grand.
On peut grandement accélérer la méthode QR en transformant au préalable A en une matrice
(0)
orthogonalement semblable T (0) de type Hessenberg supérieure (ti,j = 0 si i > j + 1) à l’aide de
symétries de Householder. Après, on applique l’algorithme décrit ci-dessus à T (0) en effectuant
les factorisations QR par des rotations de Givens. L’intérêt de mettre T (0) sous la forme d’une
matrice Hessenberg supérieure vient du fait que tous les T (k) , k > 0 sont alors aussi de la forme
Hessenberg supérieure et les factorisations QR des matrices Hessenberg (T (k−1) = U (k) R(k) ) par
une succession de rotations de Givens demandent de l’ordre de n2 opérations au lieu de n3 . De
même le calcul de T (k) = R(k) U (k) demande de l’ordre de n2 opérations.
Pour justifier cette modification de l’algorithme, on donne les résultats suivants :
Théorème 8.9 Soit A une matrice de Mn (R). Il existe une matrice orthogonale Q ∈ Mn (R)
et une matrice de type Hessenberg supérieure H ∈ Mn (R) (hi,j = 0 si i > j + 1), telles que

QT AQ = H.

Idée de la Démonstration On démontre ce résultat par récurrence : à l’aide de d’une réflexion


de Householder H1 , on peut obtenir
 
∗ ∗ ∗ ... ∗
 ∗ ∗ ∗ ... ∗ 
 
T  0 ∗ ∗ ... ∗ 
H1 A =  
 .. .. 
 . . ∗ ... ∗ 
0 ∗ ∗ ... ∗

Si on note c1 le vecteur c1 = (a21 , . . . an1 )T , H1 s’écrit Diag(1, H̃1 ) où H̃1 est une matrice de
Householder d’ordre n − 1 telle que H̃1 c1 = (1, 0, . . . , 0)T Alors on vérifie que H1T AH1 est du
même type que H1T A, i.e. ses coefficients d’indices i, 1 sont nuls pour i > 2.
Si après k − 1 itérations, on a construit k − 1 matrices Hk telles que

k−1 1 n − k
B B12 B13 k−1
(H1 . . . Hk−1 )T A(H1 . . . Hk−1 ) =  11
B21 B22 B23  1
0 B32 B33 n−k

soit de type Hessenberg pour ses k − 1 premières colonnes, on choisit alors H̃k une matrice
Householder telle que H̃kT B32 soit colinéaire à (1, 0, . . . 0)T ∈ Rn−k . On prend Hk = Diag(Ik , H̃k ),
et on voit que
 
B11 B12 B13 H̃k
(H1 . . . Hk−1 Hk )T A(H1 . . . Hk−1 Hk ) =  B21 B22 B23 H̃k 
0 H̃kT B32 H̃kT B33 H̃k
est de type Hessenberg sur ses k premières colonnes.
Le résultat est démontré. ⊓

Théorème 8.10 Soit H une matrice de Mn (R) de type Hessenberg supérieure. Il existe n − 1
matrices de rotations de Givens et une matrice triangulaire supérieure R telles que GTn−1 . . . GT1 H =
R. De plus RG1 . . . Gn−1 est de type Hessenberg supérieure.
8.4. LA MÉTHODE QR 139

Démonstration. Exercice

Remarque 8.13 Si A est symétrique, alors le Théorème 8.9 dit qu’on peut construire à l’aide
de symétries de Householder une matrice orthogonale Q ∈ Mn (R) telle que QT AQ soit tridiago-
nale. On est alors ramené au problème de trouver les valeurs propres d’une matrice tridiagonale
symétrique à coefficients réels : pour cela, on peut remplacer la méthode QR par la méthode des
suites de Sturm encore appelée méthode de Givens, cf. [2].

8.4.5 Démonstration du Théorème 8.8


En première lecture, on pourra lire le paragraphe § 8.4.5 et sauter les paragraphes § 8.4.5 et
§ 8.4.5.

Le lemme fondamental
Lemme 8.1 Pour tout k > 0, θ ≥ 0, on a
 k
k n−p−1 kN kF
kT22 k2 ≤ (1 + θ) |λp+1 | + (8.25)
1+θ
et  −k
−k p−1 kN kF
kT11 k2 ≤ (1 + θ) |λp | − (8.26)
1+θ

Démonstration. Soit ∆ = Diag(1, 1+θ, . . . (1+θ)n−p−1 ). On vérifie facilement que k∆N ∆−1 kF ≤
kN kF
1+θ . On a

−1 −1
kk
kT22 2 = k∆ (∆N22 ∆ + D22 )k ∆k2 ≤ k∆−1 k2 (k∆N22 ∆−1 k2 + kD22 k2 )k k∆k2
kN kF k
≤ cond2 (∆)(|λp+1 | + )
1+θ
kN kF k
= (1 + θ)n−p−1 (|λp+1 | + )
1+θ
et
−k −k −1 −k −1
kT11 k2 = k∆−1 D11 (∆D11 N11 ∆−1 + I)−k ∆k2 ≤ k∆−1 k2 kD11 k2 k(∆D11 N11 ∆−1 + I)−k k2 k∆k2
1
≤ cond2 (∆)|λp |−k −1
(1 − k∆D11 N11 ∆−1 k2 )k
|λp |−k
≤ (1 + θ)p−1 |λ |−1 kN k
(1 − p 1+θ F )k
1
≤ (1 + θ)p−1
(|λp | − kN kF k
1+θ )

Un résultat préliminaire de changement de bases


Théorème 8.11 Soit T une matrice triangulaire par blocs :
 
T11 T12
T =
0 T22
140 CHAPITRE 8. RECHERCHE DE VALEURS PROPRES

et T11 ∈ Cp×p T22 ∈ C(n−p)×(n−p) . la transformation linéaire Φ : C(p)×(n−p) → C(p)×(n−p) :


Φ(X) = T11 X − XT22 est non singulière si et seulement si sp(T11 ) ∩ sp(T22 ) = ∅. Dans ce cas,
il existe une unique matrice X ∈ C(p)×(n−p) telle que
 −1    
Ip X Ip X T11 0
T = (8.27)
0 In−p 0 In−p 0 T22

Démonstration. Supposons qu’il existe X tel que Φ(X) = 0. On sait qu’il existe deux matrices
unitaires U ∈ Cp×p et V ∈ C(n−p)×(n−p) telles que
 
∗ Σr 0
U XV =
0 0

où Σr est une matrice diagonale d’ordre r, sans zéro sur la diagonale. On a
       
Σr 0 ∗ Σr 0 ∗ ∗ Σr 0 Σr 0
T11 U V =U V T22 ⇔ U T11 U = V ∗ T22 V.
0 0 0 0 0 0 0 0
(8.28)
On note M = U ∗ T11 U et N = V ∗ T22 V ,
   
M11 M12 N11 N12
M= N=
M21 M22 N21 N22

avec M11 et N11 d’ordre r. D’après (8.28), on a M11 Σr = Σr N11 et M21 = N21 = 0. Les matrices
M11 et N11 sont semblables, et ont donc les mêmes valeurs propres. Comme M = U ∗ T11 U et
N = V ∗ T22 V , T11 et T22 ont des valeurs propres communes.
Réciproquement si il existe λ x 6= 0 et y 6= 0 tels que T11 x = λx et T22 y = λy. On vérifie que
Φ(xy ∗ ) = 0.
Le dernier point du Théorème est facile.

Démonstration du Théorème 8.8


Avec les notations de § 8.4.2, on vérifie aisément par récurrence que

Q(k) R(k) . . . R(1) = Ak Q(0) (8.29)

On multiplie (8.29) à gauche par Q∗ : Q∗ Q(k) R(k) . . . R(1) = T k Q∗ Q(0) En notant


 (k)   (k)   (0) 
∗ (k) V V (k) (1) k V
Q Q = (k) , on a (k) R ...R = T (8.30)
W W W (0)

D’autre part, comme |λp | > |λp+1 |, et d’après le Théorème 8.11, il existe X ∈ Cp×(n−p)
vérifiant (8.27). De (8.30), on déduit
      k    
Ip X k
T11 0 Ip −X V (0) T11 0 V (0) V (k)
k = = R(k) . . . R(1)
0 In−p 0 T22 0 In−p W (0) 0 T22 W (0) W (k)
(8.31)
ou encore
    
T11 0 V (0) − XW (0) V (k) − XW (k)
= R(k) . . . R(1) (8.32)
0 T22 W (0) W (k)
8.5. ANNEXE : DISTANCE ENTRE DEUX SOUS-ESPACES DE CN 141

On suppose que V (0) −XW (0) est inversible, ce qu’on démontrera plus tard. Alors (8.32) implique
que
−k
(V (0) − XW (0) )−1 T11 (V (k) − XW (k) ) = (R(k) . . . R(1) )−1
W (k) = T22k W (0) (V (0) − XW (0) )−1 T −k (V (k) − XW (k) )
11

Du Théorème 8.12, on déduit que

dist(Dp (A), Im(Q(k) )) = kQ∗2 Q(k) k2 = kW (k) k2


≤ kT22 k k kW (0) k k(V (0) − XW (0) )−1 k kT −k k kV (k) − XW (k) k
2 2 2 11 2 2
≤ kT22 k k kW (0) k k(V (0) − XW (0) )−1 k kT −k k (1 + kXk )
2 2 2 11 2 F
(8.33)
Le résultat (8.24) vient alors du Lemme 8.1, en prenant θ assez grand.

Il ne reste plus qu’à démontrer que V (0) −XW (0) est inversible. On utilise l’équation A∗ Q = QT ∗
ainsi que (8.27), qui s’écrit encore
  ∗  
Ip 0 T11 0 Ip 0
T∗ = (8.34)
−X ∗ In−p 0 ∗
T22 X ∗ In−p

On en déduit que
    ∗

Ip 0 Ip 0 T11 0
A∗ (Q 1 , Q2 ) ∗ = (Q1 , Q2 ) ∗ ∗
−X In−p −X In−p 0 T22

⇒ A∗ (Q1 − Q2 X ∗ ) = (Q1 − Q2 X ∗ )T11


∗ .

Ceci montre que les colonnes de (Q1 − Q2 X ∗ ) engendrent l’espace vectoriel Dp (A∗ ). En posant
1
Z = (Q1 − Q2 X ∗ )(Ip + XX ∗ )− 2 , on voit facilement que les colonnes de Z sont orthonormales
(en effet, Z ∗ Z = Ip ). Les colonnes de Z forment donc une base orthonormale de Dp (A∗ ).
1
D’autre part, V (0) − XW (0) = (Q∗1 − XQ∗2 )Q(0) = (Ip + XX ∗ ) 2 Z ∗ Q(0) , ce qui implique que
σmin (V (0) − XW (0) ) ≥ σmin (Z ∗ Q(0) ).
D’après le Théorème 8.12,
q
σmin (Z ∗ Q(0) ) = 1 − dist2 (Dp (A∗ ), Im(Q(0) ))

qui est strictement positive d’après l’hypothèse du Théorème 8.8. Donc V (0) − XW (0) est bien
inversible. ⊓⊔

8.5 Annexe : Distance entre deux sous-espaces de Cn


Dans l’analyse de la méthode QR ci-dessus, on a besoin de la notion de distance entre sous-
espaces. Ce paragraphe peut être sauté en première lecture.

Définition 8.2 Soient V1 et V2 deux sous-espaces de Cn . On définit

dist(V1 , V2 ) = kPV1 − PV2 k2 , (8.35)

où PV est la projection orthogonale sur V .

Remarque 8.14 On peut définir de même la distance de deux sous-espaces de Rn .


142 CHAPITRE 8. RECHERCHE DE VALEURS PROPRES

Remarque 8.15
dist(V1 , V2 ) = dist(V1⊥ , V2⊥ ). (8.36)

Remarque 8.16 Que vaut la distance dans R2 de deux droites vectorielles engendrées respec-
tivement par x = (cos θ1 , sin θ1 )T et y = (cos θ2 , sin θ2 )T ? on a
 
cos2 θ1 − cos2 θ2 cos θ1 sin θ1 − sin θ2 cos θ2
T T
dist(V1 , V2 ) = kxx − yy k2 =
cos θ 1 sin θ 1 − sin θ 2 cos θ 2 sin2
θ 1 − sin 2
θ 2

  2
− sin(θ2 + θ1 ) cos(θ2 + θ1 )
= | sin(θ2 − θ1 )|
cos(θ2 + θ1 )
= | sin(θ2 − θ1 )|
sin(θ2 + θ1 ) 2

En dimension supérieure, on le résultat

Théorème 8.12 Soient W et Z deux matrices unitaires de Mn (C). On a W = (W1 , W2 ) et


Z = (Z1 , Z2 ), avec W1 , Z1 ∈ Cn×p et W2 , Z2 ∈ Cn×(n−p) . On appelle S le sous-espace engendré
par les colonnes de W1 et S ′ le sous-espace engendré par les colonnes de Z1 . On a
q q
dist(S, S ′ ) = 1 − σmin
2 (W ∗ Z ) =
1 1
2 (W ∗ Z )
1 − σmin 2 2 (8.37)

où σmin (M ) est la plus petite valeur singulière de M .

Démonstration.
 
0 W1∗ Z2
dist(S, S ′ ) = kW1 W1∗ − Z1 Z1∗ k2= kW ∗
(W1 W1∗

Z1 Z1∗ )Zk2
=
−W2∗ Z1 0
2
 ∗   1   12
0 W1∗ Z2 0 W1∗ Z2 2 Z1∗ W2 W2∗ Z1 0
=
−W ∗ Z1 ∗
=
∗ ∗


2 0 −W2 Z1 0 2
0 Z 2 W 1 W 1 Z2 2

Mais W2 W2∗ = I − W1 W1∗ ,(car pour tout sous-espace V , PV ⊥ = I − PV ). Donc Z1∗ W2 W2∗ Z1 =
2 (W ∗ Z ).
Z1∗ Z1 − Z1∗ W1 W1∗ Z1 = I − Z1∗ W1 W1∗ Z1 . Mais kI − Z1∗ W1 W1∗ Z1 k2 = 1 − σmin 1 1
Si on note B = W1∗ Z2 , on sait que kB ∗ Bk2 = kBB ∗ k2 , ce qui implique que kZ2∗ W1 W1∗ Z2 k2 =
kW1∗ Z2 Z2∗ W1 k2 = kI − W1∗ Z1 Z1∗ W1 k2 = 1 − σmin
2 (W ∗ Z ).
1 1
On a démontré le résultat.
Chapitre 9

Problèmes

9.1 Partiel du 25 Novembre 2002


Exercice 1
1) a) Calculer une réduction de Jordan de la matrice (et la matrice de passage correspondante)
 √ √ √ 
10 10 3 2
 2 − 25 50
0 −
10 
 
 
 √ √ √ 
 3 2 
 −2 10 2 + 10 0 − 
 25 25 5 
A=  
√ √ 
 
 1 
 −3 2 3 2
2 √ 
 5 10 10 
 
 
0 0 0 2

en calculant d’abord les valeurs propres de A puis son polynôme minimal.


b) En déduire la décomposition de Dunford-Jordan de A.
Indication On peut obtenir cette décomposition de manière simple, sans effectuer de produits
matriciels.
c) Calculer A10 .

2) Calculer une réduction de Schur de la matrice


 
1 2 −1
M = 0 4 3 
0 −4 −3

3) a) Expliquer comment on construit une décomposition en valeurs singulières d’une B ∈


Mn,m (R).
b) On choisit pour B la matrice
 
√1 1 1
2
 1 
B =  − √12 1 
3 3
0 − 2
√ √
2

143
144 CHAPITRE 9. PROBLÈMES

Calculer une décomposition en valeurs singulières de la matrice B.


c) Donner kBk1 ,kBk2 , kBk∞ et kBkF .

4) Calculer une réduction de Gauss et la signature de la forme quadratique q sur R4

q(x) = 4x21 + 4x1 x2 + 4x1 x3 + 8x1 x4 + x22 + x23 + 4x24 18x3 x4 + 4x24

Exercice 2
1) a) Montrer que pour tout matrice A de Mn (R) symétrique et définie positive, il existe une
matrice B de Mn (R) symétrique et définie positive, telle que

B 2 = A. (9.1)

Indication On diagonalisera A en justifiant que c’est possible.

2) Soient B une matrice symétrique définie positive et ν1 , . . . , νn ses valeurs propres.


a) Montrer qu’il existe un polynôme P de degré ≤ n − 1 tel que P (νi2 ) = νi pour 1 ≤ i ≤ n.
b) Montrer que P (B 2 ) = B.
c) En déduire que B symétrique et définie positive vérifiant (9.1) est unique.

3) Soit A ∈ Mn (C) une matrice inversible. Montrer que A peut s’écrire sous la forme

A = U B, (9.2)

où U est unitaire et B est hermitienne définie positive.


Indication Pour montrer l’existence d’une telle décomposition, on partira d’une décomposition
SVD de A.

4) Soient B1 et B2 deux matrices hermitiennes définies positives et U1 et U2 deux matrices


unitaires telles que A = U1 B1 = U2 B2 .
a) Montrer que B12 = B22 .
b) En déduire que B1 = B2 puis que U1 = U2 .
c) Que peut-on dire de B et U satisfaisant (9.2) ?

Exercice 3
Soit A une matrice de Mn (R) antisymétrique, c’est à dire telle que

AT = −A.

a) Montrer que A (vue comme une matrice de Mn (C)) est diagonalisable.


b) Montrer que toutes ses valeurs propres sont imaginaires pures.
c) En déduire que pour tout réel α, In + αA est inversible.
d) Montrer que les matrices (In − A)−1 et (In + A) commutent, puis que (In − A)−1 (In + A) est
orthogonale.
9.1. PARTIEL DU 25 NOVEMBRE 2002 145

Exercice 4
Soit Q une matrice orthogonale de M3 (R)
a) Montrer que
det(Q) = ±1
b)Expliquer pourquoi Q (vue comme matrice de M3 (C)) est diagonalisable et pourquoi ses
valeurs propres sont de module 1.
c) En déduire qu’il existe p ∈ {0, 1} et θ ∈ [0, 2π[ tel que Q est semblable à la matrice
 
(−1)p 0 0
 0 cos θ sin θ 
0 − sin θ cos θ

Exercice 5
Montrer que A ∈ Cn×n est normale si et seulement si

∀x ∈ Cn , kAxk2 = kA∗ xk2 .


146 CHAPITRE 9. PROBLÈMES

9.2 Partiel du 25 Novembre 2003.

Exercice 1 : Formes Quadratiques


1) Calculer la décomposition de Gauss de la forme quadratique sur R4 .

q(x) = 2(x1 x2 − 4x1 x3 + x2 x4 + 4x3 x4 ) (9.3)

Calculer la signature de q.

2) Donner une base orthogonale pour q.

3) (question indépendante des précédentes) On considère un entier n > 4. Démontrer que la


forme quadratique sur Rn :
n
X n−1
X n−2
X
q(x) = 6 x2i − 8 xi xi+1 + 2 xi xi+2
i=1 i=1 i=1

est définie positive.


Suggestion On pourra calculer (xi − 2xi+1 + xi+2 )2 et sommer de i = 1 à n − 2.

Exercice 2 : Décomposition en Valeurs Singulières


1) Donner une décomposition en valeurs singulières P T AQ = D de la matrice
 √ 
1 3√3 −12 3
A= , (9.4)
5 4 3 9 4

on calculera D, P et Q, et on donnera les valeurs singulières de A.

Exercice 3 : Décomposition de Jordan


1) Donner le polynôme minimal et une décomposition de Jordan de la matrice
 3

2 5 0
A =  − 45 2 3
5
. (9.5)
4
0 5 2

2) Résoudre l’équation différentielle dans R3 :


dU
dt (t)= AU (t) t > 0,
(9.6)
U (0) = (1, 1, 1)T .

Exercice 4 : Inverses Généralisés


Soit A une matrice de Mm,n (C), le but de ce problème est l’étude des “inverses généralisés”
de A.
9.2. PARTIEL DU 25 NOVEMBRE 2003. 147

1. (a) On désigne par rang(A) le rang de A, montrer que

ker (A∗ A) = ker (A), rang(A∗ A) = rang(A), et Im(A∗ A) = Im(A∗ ).

(b) Montrer que A∗ A est inversible lorsque rang(A) = n. Montrer que dans ce cas, la
matrice AL = (A∗ A)−1 A∗ vérifie AL A = In , matrice identité de Mn (C). On dit que
AL est une inverse à gauche de A. Montrer que pour toute matrice V ∈ Mm,n (C)
telle que rang(A∗ V A) = n, la matrice AV,L = (A∗ V A)−1 A∗ V est aussi une inverse à
gauche de A.
(c) Formuler et démontrer une proposition analogue quand rang(A) = m.
2. On se place maintenant dans le cas général où rang(A) ≤ min(m, n). Montrer que pour
toute matrice B ∈ Mn,m (C), les propriétés suivantes sont équivalentes :
(a) Pour tout c ∈ Im(A), x = Bc est une solution de Ax = c.
(b) ABA = A.
(c) La matrice C = BA est idempotente (i.e. C 2 = C) et rang(C) = rang(A). Sugges-
tions. On rappelle qu’une matrice C ∈ Mn (C) idempotente vérifie Im(C)⊕ker (C) =
Cn . On pourra comparer ker (BA) à ker (A) pour A vérifiant 2b.
(d) La matrice D = AB est idempotente et rang(D) = rang(A). Suggestions. On pourra
utiliser le fait que ABA = A ⇔ A∗ B ∗ A∗ = A∗ et utiliser le point 2c.
Une matrice qui vérifie une de ces propriétés est appelée inverse généralisé de A.
3. Soit B une inverse généralisée de A, montrer que
(a) rang(B) ≥ rang(A).
(b) Les solutions x de l’équation Ax = 0 sont les vecteurs x = (In − BA)z avec z ∈
Cn . Suggestions. On pourra montrer que Im(In − BA) ⊕ ker (In − BA) = Cn ,
Im(In − BA) ⊂ ker (A), et que ker (In − BA) ⊂ Im(BA).
Quel est le rang de In − BA ?
(c) Une condition nécessaire et suffisante pour que l’équation Ax = c admette une solu-
tion x est que ABc = c. Trouver alors toutes les solutions x de Ax = c.
4. On pose rang(A) = r. On sait que A a r valeurs singulières non nulles, donc on peut
trouver une décomposition SVD de A : V ∗ AU = Σ, telle que
 
S 0 l r
Σ=  
0 0 l m−r (9.7)
↔ ↔
r n−r

où S ∈ Mr,r (R) est diagonale inversible. Soit Σ+ la matrice


 −1 
S 0 l r
Σ+ =  
0 0 l n−r
↔ ↔
r m−r

Montrer que U Σ+ V ∗ est un inverse généralisé de A.


148 CHAPITRE 9. PROBLÈMES

9.3 Partiel 2004


Exercice 1 : Décomposition en Valeurs Singulières
Donner une décomposition en valeurs singulières QT AP = D de la matrice
 
12 12
 5 5 
 
 
 9 9 
A= ; (9.8)
 5 5 
 
 
−5 5

on calculera D, P et Q, et on donnera les valeurs singulières de A.

Exercice 2 : Réduction de Schur


Donner une décomposition de Schur de la matrice
 
54 15 −3
A= 0 50 0  . (9.9)
−28 20 71

Exercice 3 : Théorème de Hamilton-Cayley


Soit p matrices Ai ∈ Mn (R), i = 1, . . . , p telles que
p
X
Ai = In , (9.10)
i=1

et
Ai Aj = 0 si i 6= j. (9.11)

a) Montrer que le polynôme X 2 − X annule les matrices Ai , i = 1, . . . , p.


b) En déduire que les matrices Ai sont diagonalisables dans une même base.
9.3. PARTIEL 2004 149

Exercice 4
Soit deux réels λ et µ non tous nuls. Soit A ∈ Mn (R) telle qu’il existe B ∈ Mn (R),
C ∈ Mn (R) telles que
A = λB + µC, (9.12)
2 2 2
A = λ B + µ C, (9.13)
3 3 3
A = λ B + µ C, (9.14)

1) Soit P un polynôme de degré inférieur ou égal à 3 et tel que P (0) = 0. Montrer que
P (A) = P (λ)B + P (µ)C.

2) En déduire un polynôme scindé avec des racines simples qui annule A. On distinguera les
cas
– 0, λ, µ sont deux à deux distincts
– deux des trois réels 0, λ, µ coincident.

3) En déduire que A est diagonalisable.

4) En supposant que λµ(λ − µ) 6= 0,


a) Exprimer A3 en fonction de A2 et A (on pourra utiliser la question 2)), puis A4 en fonction
de A et A2 .
b) Exprimer B et C en fonction de A et A2 .
c) En déduire que B 2 = B et C 2 = C, puis que BC = CB = 0.
d) Montrer que ker(B) ⊕ Im(B) = Rn et que ker(C) ⊕ Im(C) = Rn .
e) Montrer que Im(B) ⊕ Im(C) ⊕ (ker(B) ∩ ker(C)) = Rn .

Exercice 5 : Scilab
1) M étant une matrice, écrire une intruction scilab permettant de construire la matrice dia-
gonale D dont la diagonale est celle de M .

2) On considère les lignes suivantes en langage scilab


for i=1:5
for j=1:10
t(i,j)=i/j;
end
end
a) Modifier ces lignes en utilisant une opération vectorielle de manière à supprimer la boucle
interne.
b) Obtenir la même matrice en utilisant uniquement des opérations vectorielles et la multiplica-
tion matricielle.

3) Écrire un programme scilab pour trouver la décomposition en valeurs singulières de la


matrice A donnée par (9.8). Indication En annexe, on donne le résultat de la commande
help svd
150 CHAPITRE 9. PROBLÈMES

Annexe
Scilab Function
svd - singular value decomposition
Calling Sequence

s=svd(X)

[U,S,V]=svd(X)

[U,S,V]=svd(X,0) (obsolete)

[U,S,V]=svd(X,"e")

[U,S,V,rk]=svd(X [,tol])

Parameters

O X : a real or complex matrix


O s : real vector (singular values)
O S : real diagonal matrix (singular values)
O U,V : orthogonal or unitary square matrices (singular vectors).
O tol : real number

Description

[U,S,V] = svd(X) produces a diagonal matrix S , of the same dimension as X and


with nonnegative diagonal elements in decreasing order,
and unitary matrices U and V so that X = U*S*V’ .

[U,S,V] = svd(X,0) produces the "economy size" decomposition.


If X is m-by-n with m > n, then only the first n columns of U are computed
and S is n-by-n.

s = svd(X) by itself, returns a vector s containing the singular values.

[U,S,V,rk]=svd(X,tol) gives in addition rk , the numerical rank of X


i.e. the number of singular values larger than tol .
The default value of tol is the same as in rank .
9.4. PARTIEL DU 18 NOVEMBRE 2005 151

9.4 Partiel du 18 Novembre 2005


Exercice 1 : Valeurs singulières d’une matrice
1) Trouver la décomposition en valeurs singulières de la matrice A :
 
12 −60 16
A=
9 80 12
On donnera la décomposition complète, c’est-à-dire deux matrices unitaire et une matrice dia-
gonale. On indiquera les valeurs singulières de A.
Indication Les valeurs propres de la matrice
 
32 −36
−36 53
sont 5 et 80. Pour travailler avec les plus petits entiers possibles, on aura le plus souvent intérêt
à factoriser au maximum les expressions (en facteurs premiers).

2) On note  
11 −2
B= .
−5 10
Calculer kBk1 , kBk2 , kBk∞ , kBkF .

Exercice 2 : Programmation en Scilab


Écrire en langage Scilab une fonction effectuant l’orthonormalisation au moyen de l’algo-
rithme de Gram-Schmidt d’un ensemble de n vecteurs de Rn . La fonction prendra comme argu-
ment la matrice formée par les n vecteurs mis en colonnes et renverra la matrice formée par les
n vecteurs orthonormalisés mis en colonnes. On veillera à afficher à l’écran un message dans le
cas où l’orthonormalisation est impossible.

Exercice 3 : Rang numérique d’une matrice


Soit A ∈ Md (C). Le rang numérique de A est l’ensemble des nombres complexes
 ∗ 
x Ax d
R(A) = , x ∈ C \{0} .
x∗ x

1)
a) Montrer que R(A) contient les valeurs propres de A.
b) Montrer que pour tout α ∈ C

R(A + αId ) = {µ + α, µ ∈ R(A)},

et que
R(αA) = αR(A).
c) Montrer que pour toute matrice unitaire U ,

R(U ∗ AU ) = R(A).
152 CHAPITRE 9. PROBLÈMES

2) On suppose que le rang numérique de la matrice A est inclus dans le disque de centre c et
de rayon r, i.e.
R(A) ⊂ {z ∈ C; |z − c| ≤ r},
avec 0 < r < |c|.
a) Montrer en utilisant les résultats de 1.b) que
   
1 r
R Id − A ⊂ z ∈ C, |z| ≤
c |c|

b )En déduire que  n


1
lim Id − A = 0.
n→∞ c

3) On suppose que A est une matrice normale. Soient λ1 , . . . , λd les valeurs propres de A, (les
λi ne sont pas forcément deux à deux distincts).
Montrer que  
X d mi ∈ [0, 1] ∀i, 1 ≤ i ≤ d, 

R(A) = mi λi ; .
 Pd 

i=1 mi = 1.
i=1

Exercice 4 : Localisation des valeurs propres d’une matrice


Soit A ∈ Md (C), A = (ai,j )1≤i,j≤d .

1) Soit λ une valeur propre de A et v ∈ Cd , v 6= 0, un vecteur propre associé : Av = λv. Soit


i0 tel que |vi0 | = kvk∞ .
Montrer que
Xd
|λ − ai0 ,i0 | ≤ |ai0 ,j |.
j=1,j6=i0

2) En déduire que le spectre de A (i.e. l’ensemble des valeurs propres de A) est contenu dans
l’ensemble  
[d  d
X 
z ∈ C, |z − ai,i | ≤ |ai,j | .
 
i=1 j=1,j6=i

Quelle est la nature géométrique de cet ensemble ?

3)
a) En utilisant la définition du polynôme caractéristique et le fait que pour toute matrice B ∈
Md (C), det(B ∗ ) = det(B), montrer que λ est valeur propre de A si et seulement si λ̄ est valeur
propre de A∗ .
b) En déduire que le spectre de A est contenu dans l’ensemble
 
d 
[ Xd 
z ∈ C, |z − ai,i | ≤ |aj,i | .
 
i=1 j=1,j6=i
9.5. EXAMEN DU 30 JANVIER 2003. 153

9.5 Examen du 30 Janvier 2003.

Exercice 1
Soit B la matrice  
√1 1 1
2
 − √12 1 1 
B= 
0 − √32 √3
2

Calculer une décomposition en valeurs singulières de la matrice B.


c) Donner kBk1 ,kBk2 , kBk∞ et kBkF .

Exercice 2
On veut résoudre au sens des moindres carrés le système d’équations linéaires
 √   √ 
  3 0 3
x 2
A = 0  où A= 3
−1  (9.15)
y 5
4
1 5 − 21

a) Donner la factorisation de Cholesky de AT A.


b) Écrire et résoudre l’équation normale associée au problème aux moindres carrés.

Exercice 3
Soit λ ∈ R et soit A la matrice
 
2 λ 0
A= λ 2 λ  (9.16)
0 λ 2

a) Écrire les matrices d’itérations LJ et LGS des méthodes de Jacobi et de Gauss-Seidel pour
résoudre un système Ax = b.
b) Discuter la convergence de ces deux méthodes en fonction de λ.

Exercice 4
Soit A une matrice de Mn (R) à diagonale strictement dominante et dont les coefficients
extra-diagonaux sont négatifs ou nuls. On dit que A est une M-matrice.
Soit D la matrice diagonale construite à partir de la diagonale de A. On appelle −L la matrice
triangulaire inférieure stricte obtenue à partir de A en annulant les coefficients de A au dessus de
la diagonale (diagonale comprise), et U la matrice triangulaire supérieure telle que A = D−L−U .
Soient deux matrices L1 et L2 triangulaires inférieures strictes à coefficients positifs ou nuls telles
que L = L1 + L2 . De même, soient deux matrices U1 et U2 triangulaires supérieures strictes à
coefficients positifs ou nuls telles que U = U1 + U2 .
On pourra appeler l1,i,j les coefficients de L1 et l2,i,j les coefficients de L2 . De même, on pourra
appeler u1,i,j les coefficients de U1 et u2,i,j les coefficients de U2 . On a ai,j = −l1,i,j − l2,i,j si
154 CHAPITRE 9. PROBLÈMES

i > j et ai,j = −u1,i,j − u2,i,j si i < j.


a) Montrer que
k(D − L1 − U1 )−1 (L2 + U2 )k∞ < 1
Pour montrer l’inégalité ci-dessus, on montrera qu’il existe une constante c ∈ R, 0 < c < 1 telle
que pour tout x ∈ Rn , x 6= 0, on a kyk∞ ≤ ckxk∞ où y est défini par

(D − L1 − U1 )y = (L2 + U2 )x,

en écrivant les équations de ce système linéaire.


On a de la même manière

k(D − L2 − U2 )−1 (L1 + U1 )k∞ < 1

b) En déduire que pour résoudre le système AX = F , la méthode itérative


1
(D − L1 − U1 )X n+ 2 = F + (L2 + U2 )X n
1
(D − L2 − U2 )X n+1 = F + (L1 + U1 )X n+ 2
converge.

Exercice 5
On considère une matrice A ∈ Mn (R), symétrique définie positive. Soient λ1 ≤ · · · ≤ λn les
valeurs propres de A. Pour x ∈ Rn , on note r(x) le quotient de Rayleigh

xT Ax
r(x) = . (9.17)
xT x

1) Montrer que
λ1 = min r(x), et λn = max r(x). (9.18)
x∈Rn ,x6=0 x∈Rn ,x6=0

T T ko(w)k2
2) Soit x 6= 0. Montrer que r(x + w) − r(x) = 2 wxTAx
x
− 2r(x) wxT xx + o(w), où kwk2 → 0 quand
w → 0. En déduire que
2
grad r(x) = T (Ax − r(x)x). (9.19)
x x

Remarque 9.1 On remarque que grad r(x) ∈ Vect(x, Ax).

3) Soient (q1 , . . . , qj ) une famille orthonormée de vecteurs de Rn et Hj = Vect(q1 , . . . , qj ). On


note Mj et mj les réels

Mj = max r(y) et mj = min r(y) (9.20)


y∈Hj ,y6=0 y∈Hj ,y6=0

Expliquer pourquoi on peut parler de max et de min dans (9.20) et montrer que

Mj ≤ λn et que m j ≥ λ1 . (9.21)

On notera uj et vj des vecteurs uj , vj ∈ Hj pour lesquels le maximum et le minimum dans (9.20)


sont respectivement atteints : r(uj ) = Mj , r(vj ) = mj .
9.5. EXAMEN DU 30 JANVIER 2003. 155

4) Montrer que si grad r(uj ) 6= 0 et si qj+1 est tel que

grad r(uj ) ∈ Hj+1 = Vect(q1 , . . . , qj , qj+1 ), (9.22)

alors on a l’inégalité stricte


Mj+1 > Mj . (9.23)

De même, on peut vérifier que si grad r(vj ) 6= 0 et si qj+1 est tel que

grad r(vj ) ∈ Hj+1 , (9.24)

alors
mj+1 < mj . (9.25)

On va donc chercher à construire le vecteur qj+1 tel que la famille (q1 , . . . , qj+1 ) soit orthonormée
et tel que les conditions (9.22) et (9.24) soient vérifiées : si on y arrive, on a

λ1 ≤ mj+1 < mj < . . . m1 = M1 < · · · < Mj < Mj+1 ≤ λn

Il est alors raisonnable de penser que la suite Mj (respectivement mj ) converge vers λn (respec-
tivement λ1 ).
A priori, les conditions (9.22) et (9.24) semblent trop fortes pour définir le vecteur qj+1 , mais
on va voir qu’il n’en est rien.

5) On choisit un vecteur normé q1 et on appelle Kj l’espace Kj = Vect(q1 , Aq1 , . . . , Aj−1 q1 )


pour 1 ≤ j ≤ n.
a) On va commencer par construire q2 en fonction de q1 : en supposant que Aq1 n’est pas
colinéaire à q1 , montrer que pour que les conditions (9.22) et (9.24) soient vérifiées pour j = 1,
il faut que q2 ∈ K2 . En déduire les choix possibles pour q2 si dim (K2 ) = 2 et montrer qu’on a
alors H2 = K2 .
b) On suppose que pour tout j ≤ k, on a Hj = Kj et que dim (Hj ) = j. En supposant que
Ak q1 6∈ Hk , montrer que pour que les conditions (9.22) et (9.24) soient vérifiées pour j = k, il
faut que
Hk+1 = Kk+1 . (9.26)

6) On suppose que pour 1 ≤ j ≤ n, les sous-espaces Kj vérifient dim (Kj ) = j.


a) Montrer par récurrence que l’on peut choisir deux familles (α1 , . . . , αn−1 ) et (β1 , . . . , βn−1 ),
les βi étant pris strictement positifs, telles que les vecteurs définis par

Aqj = βj−1 qj−1 + αj qj + βj qj+1 , j<n (9.27)

(en posant q0 = 0 et β0 = 0) forment une famille orthonormale. Il est clair qu’on obtient ainsi
qj+1 ∈ Kj+1 pour que
Aqn = βn−1 qn−1 + αn qn , (9.28)

c) Montrer que si Q ∈ Mn (R) est la matrice unitaire

Q = (q1 , q2 , . . . , qn )
156 CHAPITRE 9. PROBLÈMES

et si T ∈ Mn (R) est la matrice tridiagonale


 
α1 β1 0 ... ... 0
 .. .. 
 β1 α2 β2 . . 
 
 .. 
 0 ... ... ..
.
..
. . 
T =  .. . . .. .. ..


 . . . . . 0 
 
 .. .. .. .. 
 . . . . βn−1 
0 ... ... 0 βn−1 αn

alors T = QT AQ. En déduire que A et T ont les mêmes valeurs propres.


L’intérêt de l’algorithme ci-dessus, appelé algorithme de Lanczos, est qu’on se ramène à trouver
les valeurs propres d’une matrice tridiagonale symétrique définie positive, ce qui peut être fait
facilement à l’aide d’une méthode QR.
9.6. EXAMEN DU 28 JANVIER 2004. 157

9.6 Examen du 28 Janvier 2004.


Exercice 1
a) Montrer que la matrice  
4 2 2
A =  2 10 7 
2 7 21
est symétrique définie positive.
b) Calculer la factorisation de Cholesky de A.
c) Résoudre Ax = b avec b = (0, 0, 96)T en utilisant b).

Exercice 2
Soit A une matrice de Mn (R) inversible. On utilise la notation A = D − E − F où D est
la matrice diagonale construite à partir de la diagonale de A, −E est la matrice triangulaire
inférieure stricte obtenue à partir de A en annulant les coefficients de A au dessus de la diagonale
(diagonale comprise), et −F la matrice triangulaire supérieure obtenue à partir de A en annulant
les coefficients de A au dessous de la diagonale (diagonale comprise).
Soit ω un nombre réel non nul.
Pour résoudre le système Ax = b, on considère la méthode itérative
1 1−ω
Dx(k+1) = b + ( D + E + F )x(k) . (9.29)
ω ω

1) En quoi s’agit-il d’une généralisation de la méthode de Jacobi ? Quelle condition doit vérifier
A pour que cette méthode puisse être appliquée ?

2) Établir une relation entre la matrice d’itération Lω de cette méthode et la matrice d’itération
de la méthode de Jacobi LJ . En déduire une relation entre les valeurs propres de Lω et celles de
LJ .

3) Soit µ un réel non nul et M (µ) la matrice tridiagonale de Mn (R)


 
b1 µ−1 c1 0 ... ... 0
 . .. 
 µa2 b2 µ−1 c2 .. . 
 
 . .. . .. . .. . .. .
.. 
 0 
M (µ) = 
 .. .. .. .. ..


 . . . . . 0 
 
 .. .. 
 . . µa n−1 b n−1 µ−1 c n−1 
0 ... ... 0 µan bn
3.a) Montrer qu’il existe une matrice diagonale inversible Q(µ) telle que M (µ)Q(µ) = Q(µ)M (1).
3.b) En déduire que le déterminant de M (µ) ne dépend pas de µ.

4) Dans toute la suite de l’exercice, la matrice A est tridiagonale et symétrique définie positive.
Montrer en utilisant la question précédente que 2D − A est symétrique définie positive. Indi-
cation On pourra montrer que toutes les valeurs propres de 2D − A sont positives. En déduire
que la méthode de Jacobi converge, et donc que ρ(LJ ) < 1.
158 CHAPITRE 9. PROBLÈMES

5) Déduire aussi de la question 3) que si λ est valeur propre de LJ alors −λ l’est aussi.

6) Montrer alors que la méthode (9.29) converge si et seulement si ω appartient à l’intervalle


2
]0, 1+ρ(L J)
[.

Exercice 3 : Méthode de résidu minimum généralisé


On considère une matrice inversible A ∈ Mn (R) (sans symétrie particulière), et on veut
étudier une méthode itérative appelée méthode de résidu minimum généralisé (ou GMRES dans
la littérature anglo-saxonne) pour résoudre le système linéaire Ax = b, où b ∈ Rn . On approche
donc la solution x par une suite (x(k) )k∈N . L’utilisateur choisit le vecteur x(0) .

1) Principe de la méthode
On appelle résidu à la kème itération, le vecteur

r (k) = b − Ax(k) .

On note K (k) l’espace de Krylov

K (k) = Vect(r (0) , . . . , Ak−1 r (0) ). (9.30)

On cherche le vecteur x(k) sous la forme x(k) = x(0) + z (k) où z (k) résout le problème de moindres
carrés
z (k) ∈ K (k) réalise le minimum sur K (k) de z 7→ kr (0) − Azk22 . (9.31)
1.a) Montrer que si z (k) vérifie Az (k) = r (0) , alors x(k) = x.
dim(K (k) ) = k, soit (v (1) , . . . , v (k) ) une base de K (k) . On peut chercher z (k) sous la forme
1.b) Si P
z = kj=1 yj v (j) . Montrer qu’une condition nécessaire et suffisante pour que z (k) soit solution
(k)

de (9.31) est que


k
X
yj (v (i) )T AT Av (j) = (v (i) )T AT r (0) , ∀i = 1, . . . , k (9.32)
j=1

1.c) Écrire (9.32) sous la forme d’un système (équations normales)

M Y = F, (9.33)

où Y = (y1 , . . . , yk )T , en précisant la matrice M et le second membre F .


1.d) Montrer que la matrice M est inversible.

2. Méthode d’Arnoldi Si la base (v (j) )1≤j≤k de K (K) ci-dessus est quelconque, la matrice
M dans (9.33) n’a pas de structure particulière, et la complexité algorithmique de la résolution
du système (9.33) rend la méthode inefficace. L’idée est de construire une base orthonormée
(v (j) )1≤j≤k de K (k) par une méthode de Gram-Schmidt.
(0)
Si r (0) 6= 0, on pose v (1) = krr(0) k , et on utilise la relation de récurrence
2

Pi 
Av (i) − j=1 (v (i) )T AT v (j) v (j)
v (i+1) = Pi  , (9.34)
kAv (i) − j=1 (v (i) )T AT v (j) v (j) k2
9.6. EXAMEN DU 28 JANVIER 2004. 159

quand la division est possible. Nous allons montrer qu’une division par zéro dans (9.34) signifie
que la solution x de Ax = b appartient à K (i) , et qu’on a donc pas à calculer v (i+1) .
2.a) Soit k ≥ 1 un entier tel que v (1 , . . . , v (k) sont définis. Montrer par récurrence que (v (1 , . . . , v (j) )
est une base orthonormée de K (j) , pour tout j, 1 ≤ j ≤Pk. En déduire qu’ilexiste un (unique)
entier p ≤ n tel que v (1 , . . . , v (p) sont définis et Av (p) − pj=1 (v (p) )T AT v (j) v (j) = 0.
2.b) Montrer que
AK (p) ⊂ K (p) . (9.35)
2.c) Pour j = 1, . . . , p, soit V (j) ∈ Mn,j (R) la matrice dont les colonnes sont les vecteurs
v (1) , . . . , v (j) . Déduire de 2.a) et de (9.35) qu’il existe une matrice H ∈ Mp (R) telle que

AV (p) = V (p) H. (9.36)

2.d) Montrer que H est inversible, en utilisant l’inversibilité de A.


2.e) Montrer que pour 1 ≤ j ≤ p, V (j) vérifie

(V (j) )T V (j) = Ij . (9.37)

2.f) Déduire
Pp des questions précédentes
 (j) et de (9.31) que r (p) = 0. On a donc montré que
(p)
Av − j=1 (v ) A v (p) T T (j) v = 0 implique r (p) = 0, et il est alors inutile de construire
K (p+1) .
2.g) Conclure que la méthode itérative donne la solution x en au plus n itérations.

3. Méthode des moindres carrés dans K (k)


3.a) Soit k < p, où p est défini dans 2.a). Montrer que

AV (k) = V (k+1) H (k) , (9.38)

en donnant la matrice H (k) ∈ Mk+1,k (R). On notera qu’on a en particulier


(k)
Hl,m = 0 si l > m + 1. (9.39)

3.b) Soit β ∈ R tel que r (0) = βv (1) = βV (k+1) e1 , où (ej )j=1,...,k+1 est la base canonique de Rk+1 .
Montrer en utilisant (9.37) que le problème aux moindres carrés (9.31) est équivalent à trouver
un vecteur Y ∈ Rk tel que
(H k )T H (k) Y = β(H (k) )T e1 . (9.40)

4. Conclusion (cette partie ne contient pas de question)


À partir de l’observation (9.39), on peut très facilement factoriser H (k) sous la forme

H (k) = Q(k) R(k)

où
– Q(k) ∈ Mk+1 (R) est une matrice unitaire (produit de k + 1 rotations planes)
– R(k) ∈ Mk+1,k (R) est une matrice triangulaire supérieure.
On peut alors résoudre le système (9.40) avec une complexité algorithmique de l’ordre de k2 .
160 CHAPITRE 9. PROBLÈMES

9.7 Examen du 3 Septembre 2003.

Exercice 1
Soit B la matrice  
3 32 24
− −
 5 25 25 
 
 
 4 24 18 
B=
 5

 25 25 

 
 3 4 
0 −
5 5

1) Calculer les valeurs singulières de la matrice B. Indication On admettra que le noyau de


B T B − I a pour base ((1, 0, 0)T ; (0, 3, −4)T ).

2) Donner kBk1 , kBk2 , kBk∞ et kBkF .

Exercice 2
1) Montrer comment obtenir une factorisation

A = UL

d’une matrice A ∈ MN (R) où U est triangulaire supérieure avec des 1 sur la diagonale et L est
triangulaire inférieure. On pourra procéder en N − 1 étapes en annulant les coefficients de A
colonne par colonne en commençant par la dernière colonne.

2) Donner une condition nécessaire et suffisante pour qu’une matrice A ∈ MN (R) inversible
possède une factorisation U L avec U est triangulaire supérieure avec des 1 sur la diagonale et L
est triangulaire inférieure inversible.

3) Calculer la factorisation U L de la matrice


 
4 4 3
 4 2 4 .
1 0 1

Exercice 3
Étant donnée une matrice A ∈ MN (R) symétrique définie positive décomposée sous la
forme A = D − L − U , (D diagonale, L strictement triangulaire inférieure, et U = LT ), on étudie
la méthode itérative de résolution du système linéaire Ax = b : étant donné x(0) arbitraire, on
définit la suite x(k) par :
1
(D − L)x(k+ 2 ) = U x(k) + b,
1
(D − U )x(k+1) = Lx(k+ 2 ) + b,
9.7. EXAMEN DU 3 SEPTEMBRE 2003. 161

1) Écrire le vecteur x(k+1) sous la forme

x(k+1) = Bx(k) + c,

en donnant la matrice B et le vecteur c.

2) Soit λ une valeur propre de B : il existe p ∈ Cn , p 6= 0 tel que Bp = λp.


a) Montrer que
L(D − L)−1 U p = λ(A + L)p (9.41)
b) En déduire que
LD−1 U p + LD−1 L(D − L)−1 U p = λ(A + L)p, (9.42)
c) De (9.41) et (9.42), déduire que

LD−1 U p + λLD −1 (A + L)p = λ(A + L)p, (9.43)

puis que
(1 − λ)LD−1 U p = λAp, (9.44)

3)
a) En multipliant (9.44) à gauche par p∗ , montrer que λ est un réel et que 0 < λ < 1.
b) En déduire la convergence de la méthode. Cette méthode est une version symétrisée de la
méthode de Gauss-Seidel.

Exercice 4
Soit β un réel strictement positif.
On considère la suite de vecteurs de RN construite par la récurrence

E (m) = (I − βA)E (m−1) , m > 0,

où E (0) est donné et A est la matrice tridiagonale dont les coefficients sont

Aj,j = 2a + c, j = 1, . . . , N,
Aj,j+1 = −a − b, j = 1, . . . , N − 1,
Aj,j−1 = −a + b, j = 2, . . . , N,

où a > 0, c ≥ 0 et b est un réel tel que a2 > b2 .

1) Vérifier que pour l = 1, . . . , N , si Wl est le vecteur de RN :


 1  k  N !T
a−b 2 lπ a−b 2 lkπ a−b 2 N lπ
Wl = sin( ), . . . , sin( ), . . . , sin( )
a+b N +1 a+b N +1 a+b N +1

alors on a √
AWl = λl Wl , λl = c + 2a − 2 a2 − b2 cos( Nlπ+1 ). (9.45)

2) En déduire que si β > 2(c + 2a + 2 a2 − b2 )−1 , alors pour N assez grand, la suite E (m)
diverge en général.
162 CHAPITRE 9. PROBLÈMES

3) a) Montrer que pour tout U ∈ RN , U T AU ≥ 0.


b) Montrer que pour tout réel positif β, I + βA est inversible.
c) Montrer qu’il existe λ > 0 tel que pour tout U ∈ RN , U T AU ≥ λkU k22 .
d) En déduire que que pour tout réel positif β,

k(I + βA)−1 k2 < 1

e) Que peut on dire de la suite de vecteurs de RN construite par la récurrence

F (m) = (I + βA)−1 F (m−1) , m > 0,

où F (0) est donné ?


9.8. EXAMEN JANVIER 2005 163

9.8 Examen Janvier 2005


Exercice 1
On considère le système d’équations linéaire :
3x −√31 y = 6,
4 5

3 y = 3 5,
4x + 4y = 11
2

Résoudre ce système au sens des moindres carrés. On devra utiliser la méthode de Choleski pour
résoudre l’équation normale.

Exercice 2
Soit n, m deux entiers tels que n ≥ m > 0. Soient
– C1 ∈ Mn,n (R) une matrice symétrique définie positive,
– C2 ∈ Mm,m (R) une matrice symétrique semi-définie positive,
– D ∈ Mn,m (R) une matrice de rang m.
Montrer qu’il existe
– une unique matrice L11 ∈ Mn,n (R) triangulaire inférieure avec des coefficients strictement
positifs sur sa diagonale,
– une unique matrice L21 ∈ Mm,n (R)
– une unique matrice L22 ∈ Mm,m (R) triangulaire inférieure avec des coefficients strictement
positifs sur sa diagonale,
telles que   T   
L11 0 L11 LT21 C1 D
= .
L21 −L22 0 LT22 DT −C2
L’unicité devra être soigneusement démontrée.

Exercice 3
On considère la matrice inversible A ∈ Md (R) et on veut résoudre le système Au = b par la
méthode semi-itérative décrite ci-dessous.
On considère la décomposition A = M −N où M est inversible. Pour résoudre le système Au = b,
on part de la méthode itérative

M u(n+1) = N u(n) + b, (9.46)

qui est équivalente, en posant L = M −1 N , à

u(n+1) = Lu(n) + (Id − L)u. (9.47)

On se donne des paramètres réels αn,j , n ∈ N, j = 0, . . . , n, et on construit la suite (y (n) )n∈N


par
Xn
y (n) = αn,j u(j) . (9.48)
j=0

On veut choisir les coefficients réels αn,j , n ∈ N, j = 0, . . . , n pour que la suite (y (n) )n∈N converge
vers la solution u du système si possible plus vite que la suite (u(n) )n∈N .
164 CHAPITRE 9. PROBLÈMES

1) On dit que la méthode est consistante si pour tous vecteurs u, b tels que Au = b, pour la
suite u(n) construite par (9.47) et la suite y (n) construite par (9.48), on a, pour tout n ∈ N,
 
∀i, 0 ≤ i ≤ n, u(i) = u ⇒ y (n) = u.

Montrer que la méthode est consistante si et seulement si

n
X
∀n ∈ N, αn,i = 1. (9.49)
i=0

2) a) On supposera désormais que la condition (9.49) est vérifiée. Montrer que la méthode
semi-itérative (9.48) s’écrit

y (n) = pn (L)u(0) + (Id − pn (L))u, (9.50)

où (pn )n∈N est une suite de polynômes tels que

degré(pn ) ≤ n, et pn (1) = 1. (9.51)

On donnera pn en fonction des coefficients αn,j , 0 ≤ j ≤ n.


b) Exprimer l’erreur e(n) = u − y (n) en fonction de pn , de L et de e(0) .
c) En déduire qu’une condition nécessaire et suffisante pour que la méthode semi-itérative (9.48)
(supposée consistante) converge vers la solution u quelle que soit l’initialisation u(0) est que

lim pn (L) = 0.
n→∞

d) Soit k.k une norme vectorielle sur Rd . On note aussi k.k la norme matricielle subordonnée.
Que dire de la convergence de y (n) vers u si
1
lim kpn (L)k n = r < 1?
n→∞

e) On appelle ρ(pn (L)) le rayon spectral de pn (L). Montrer que si L est normale, alors pn (L)
1
l’est aussi. Montrer alors que si la suite (ρ(pn (L))) n admet une limite quand n tend vers +∞,
alors
1 1
lim kpn (L)k n = lim (ρ(pn (L))) n . (9.52)
n→∞ n→∞

Indication : on pourra utiliser une norme particulière et utiliser la relation d’équivalence avec
k.k.
f) Supposons que 1 n’est pas une valeur propre de L. Montrer que pour n ≥ d, le polynôme

det(xId − L)
pn (x) =
det(Id − L)

vérifie (9.51) et pn (L) = 0.


On ne peut cependant pas utiliser ce polynôme car son calcul est plus coûteux que la résolution
approchée du problème de départ et car on souhaite utiliser moins de d itérations de (9.48).
9.8. EXAMEN JANVIER 2005 165

4) a) Montrer qu’à toute suite de réels non nuls (µn )n≥1 et à toute suite de réels (νn )n≥1 , on
peut associer une suite de polynômes pn par la récurrence
1 1
p0 (x) = 1, p1 (x) = (1− ν1 )x+ ν1 , pn (x) = (µn x+νn )pn−1 (x)+(1−µn −νn )pn−2 (x), n ≥ 2
2 2
qui vérifie (9.51).
b) Montrer que la suite y (n) correspondante vérifie la relation de récurrence
1 1
y (0) = u(0) , y (1) = (1 − ν1 )(Lu(0) + M −1 b) + ν1 u(0) ,
2 2 (9.53)
(n) (n−1) −1 (n−2) (n−1)
y = µn (Ly +M b−y ) + νn (y − y (n−2) ) + y (n−2) .
c) Expliquer pourquoi (9.53) est plus utilisable en pratique que (9.48).

5) Jusqu’à la fin du problème, on suppose que L est normale et que les valeurs propres de L
sont réelles. Soient a ≤ b deux réels tels que, pour toute valeur propre λ de L, on a a ≤ λ ≤ b.
On rappelle que la méthode itérative (9.46) converge si et seulement si chaque valeur propre λ
vérifie −1 < λ < 1. Jusqu’à la fin du problème, on supposera donc que −1 < a ≤ b < 1.
a) Démontrer que les fonctions tn : R 7→ R définies par
tn (z) = cos (n arccos(z)) si |z| ≤ 1,
tn (z) = cosh (n arg cosh(z)) si z ≥ 1, (9.54)
tn (z) = (−1)n tn (|z|) si z < −1,
sont telles que ∀z ∈ R,

t0 (z) = 1, t1 (z) = z, ∀n > 1, tn (z) + tn−2 (z) = 2ztn−1 (z). (9.55)

En déduire que tn est un polynôme de degré n, dont le coefficient de degré n est 2n−1 si n ≥ 1.
Ces polynômes sont appelés polynômes de
√ Chebyshev.
b) On rappelle que arg cosh(z) = ln(z + z 2 − 1) si z > 1. Montrer que si z > 1,
1 p p 
tn (z) = (z + z 2 − 1)n + (z + z 2 − 1)−n . (9.56)
2
c) On définit le polynôme
 
1 2x − (a + b)
pn (x) =   tn . (9.57)
tn 2−(a+b) b−a
b−a

Montrer que pn vérifie (9.51) et que


1 2
max |pn (x)| =   = √ √ 2n √ √ −2n . (9.58)
x∈[a,b] 2−(a+b) 1−a+ 1−b 1−a+ 1−b
tn b−a √ + √
b−a b−a

6) La méthode semi-itérative (9.48) ou de manière équivalente (9.50) où pn est donné par
(9.57) est appelée méthode semi-itérative de Chebyshev. On va étudier ses propriétés :
a) Calculer en fonction de b
1
lim kpn (L)k n (9.59)
n→∞
dans le cas où a = 0, b = ρ(L) < 1.
b) Dans le cas précédent avec l’hypothèse supplémentaire b = ρ(L) = 1−h avec h ≪ 1, comparer
les convergences de la méthode semi-itérative de Chebyshev et de la méthode (9.46).
166 CHAPITRE 9. PROBLÈMES
Bibliographie

[1] William L. Briggs, Van Emden Henson, and Steve F. McCormick. A multigrid tutorial.
Society for Industrial and Applied Mathematics (SIAM), Philadelphia, PA, second edition,
2000.
[2] P.G. Ciarlet. Introduction a l’analyse numerique matricielle et a l’optimisation. Masson,
1988.
[3] G. Golub and C. Van Loan. Matrix computations (second edition). John Hopkins, 1989.
[4] D. Luenberger. Introduction to Linear and Nonlinear Programming. Addison Wesley, 1973.
[5] G. Meurant. Computer solution of large linear systems, volume 28 of Studies in Mathematics
and its Applications. North-Holland Publishing Co., Amsterdam, 1999.
[6] Alfio Quarteroni. Méthodes Numériques pour le Calcul Scientifique. collection IRIS. Springer-
Verlag France, 2000.
[7] Jacques Rappaz and Marco Picasso. Introduction à l’analyse numérique. Presses Polytech-
niques et Universitaires Romandes, Lausanne, 1998.
[8] Saad Y. Iterative Methods for Sparse Linear Systems. PWS Publishing company, 1996.

167

You might also like