Algorithmique algébrique MHT 631

publicité
Algorithmique algébrique
MHT 631
Jean-Paul Cerri
2008-2009
2
Table des matières
1 Algèbre linéaire, préliminaires
1.1 Gerschgörin-Hadamard . . . . . . . . . . . .
1.2 Normes sur Mn,n (K) . . . . . . . . . . . . .
1.3 Suites de matrices, convergence . . . . . . .
1.3.1 Généralités . . . . . . . . . . . . . .
1.3.2 Exponentielle de matrices . . . . . .
1.3.3 Généralisation. Autres exemples . . .
1.3.4 Application aux systèmes différentiels
2 Le pivot de Gauss
2.1 Rappels sur les matrices de permutations
2.2 Exemples concrets, le principe . . . . . .
2.3 Le théorème principal . . . . . . . . . . .
2.4 Le coût . . . . . . . . . . . . . . . . . . .
2.5 Mise en oeuvre effective et variantes . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
6
9
14
14
17
19
22
.
.
.
.
.
27
27
28
33
33
34
3 Conditionnement
37
3.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.2 Erreurs relatives . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.3 Propriétés élémentaires . . . . . . . . . . . . . . . . . . . . . . 40
4 Méthodes itératives
4.1 Le lemme fondamental . . . . . . . .
4.2 La méthode de Jacobi . . . . . . . .
4.3 La méthode de Gauss-Seidel . . . . .
4.4 Relaxation . . . . . . . . . . . . . . .
4.5 Programmation . . . . . . . . . . . .
4.5.1 Jacobi . . . . . . . . . . . . .
4.5.2 Gauss-Seidel . . . . . . . . . .
4.5.3 Relaxation avec Gauss-Seidel
3
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
43
43
44
45
48
48
49
49
50
4
TABLE DES MATIÈRES
5 Calculs effectifs divers
5.1 Polynôme caractéristique . . . .
5.2 Valeurs propres . . . . . . . . .
5.2.1 Méthode des puissances
5.2.2 Méthode de la déflation
5.2.3 Méthode QR . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
51
51
54
54
56
57
6 Espaces euclidiens
59
6.1 introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
6.2 Orthogonalisation de Schmidt . . . . . . . . . . . . . . . . . . 64
7 Décompositions
67
7.1 Décomposition QR . . . . . . . . . . . . . . . . . . . . . . . . 67
7.2 Décomposition de Cholesky . . . . . . . . . . . . . . . . . . . 69
7.3 La méthode QR . . . . . . . . . . . . . . . . . . . . . . . . . . 71
8 Méthodes de calcul
8.1 Cholesky pratique . . . . . .
8.1.1 Gram-Schmidt . . .
8.1.2 Identification . . . .
8.1.3 Variante . . . . . . .
8.1.4 Méthode de Gauss .
8.2 Moindres carrés . . . . . . .
8.3 La méthode de Householder
8.3.1 Préliminaires . . . .
8.3.2 La méthode . . . . .
.
.
.
.
.
.
.
.
.
73
73
73
74
75
76
77
79
80
81
.
.
.
.
.
.
85
85
86
88
88
91
91
10 Compléments
10.1 Extensions de certains résultats aux matrices “quelconques” . .
10.2 Décomposition en valeur singulière (SVD) . . . . . . . . . . .
10.3 Pseudo-inverse . . . . . . . . . . . . . . . . . . . . . . . . . . .
93
93
93
93
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
9 Polynômes orthogonaux
9.1 Généralités . . . . . . . . . . . .
9.2 Un cas particulier . . . . . . . . .
9.3 Exemples . . . . . . . . . . . . .
9.3.1 Polynômes de Tchebycheff
9.3.2 Polynômes de Legendre . .
9.3.3 Polynômes de Hermite . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Chapitre 1
Algèbre linéaire, préliminaires
Éléments supposés connus en algèbre linéaire
• Corps commutatif K : ici, sauf mention explicite, K = R ou C ;
• K-espace vectoriel, sous-espace vectoriel, familles libres, familles génératrices, bases ;
• K espace vectoriel de dimension finie n , sous-espaces, bases ;
• Déterminant d’une famille de vecteurs d’un K-espace vectoriel (suivant
une base), propriétés du déterminant ;
• L(E, F ) où E et F sont deux K-ev, propriétés de L(E, F ) ;
– L(E, F ) est un K-ev ;
– Noyau Kerf et image Imf d’un élément f de L(E, F ) ;
– Propriétés et lien avec surjectivité et injectivité de f ;
– Théorème du rang en dimension finie ;
• L(E) où E est un K-ev, propriétés de L(E) ;
– L(E) est une algèbre en général non commutative ;
– Éléments inversibles : GL(E) ;
– Cas de la dimension finie : lien avec image, noyau (une condition
suffit) ;
– Déterminant d’un élément de L(E) et lien avec l’inversibilité ;
– Valeur propre et vecteur propre d’un élément de L(E) ;
– Polynômes minimal et caractéristique d’un élément de L(E) ;
– Théorème de Cayley-Hamilton ;
– Critères de diagonalisabilité ;
• Matrices associées aux éléments de L(E, F ) (si E et F sont de dimensions finies et si une base de E et une base de F sont fixées) ;
• Notations Mp,q (K), et isomorphismes standards, opérations dans les
espaces de matrices ;
5
6
CHAPITRE 1. ALGÈBRE LINÉAIRE, PRÉLIMINAIRES
• Changement de bases, similitude ;
• Noyau, image, rang, déterminant, polynômes minimal et caractéristique, valeurs propres et vecteurs propres d’une matrice de Mn,n (K) ;
• Pratique de la diagonalisation, de la triangularisation ;
• Autres éléments de la théorie de la réduction (Dunford, Jordan) ;
• Matrices symétriques, matrices orthogonales. Diagonalisation des matrices symétriques.
1.1
Gerschgörin-Hadamard
Théorème 1.1. (Premier théorème de Gerschgörin-Hadamard) Soit
A ∈ Mn,n (K). Pour tout k, 1 ≤ k ≤ n posons
Rk =
X
|akj |
j6=k
et
n
o
Dk = z ∈ C; |z − akk | ≤ Rk .
Alors on a
Spec A ⊂
n
[
Dk
k=1
i.e. pour toute valeur propre λ de A, il existe k tel que λ ∈ Dk .
Preuve. Soit λ ∈ Spec A et soit X 6= 0 un vecteur propre associé. On a pour
tout i :
n
X
(1.1)
aij xj = λxi .
j=1
Soit k tel que |xk | = max |xj |. On a |xk | > 0 car X 6= 0. De plus Par (1.1) on
j
a
X
(λ − akk )xk =
akj xj ,
j6=k
d’où l’on tire
|λ − akk | ≤
X
j6=k
|akj |
|xj | X
≤
|akj | = Rk .
|xk |
j6=k
1.1. GERSCHGÖRIN-HADAMARD
7
Remarque 1.2. Comme A et At ont le même polynôme caractéristique (en
effet det(A − XIdn ) =det(A − XIdn )t =det(At − XIdtn ) =det(At − XIdn )),
elles ont mêmes valeurs propres et le résultat est encore vrai si l’on remplace
les Dk par les Dk0 définis par
n
o
Dk0 = z ∈ C; |z − akk | ≤ Rk0 ,
où
Rk0 =
X
|ajk |.
j6=k
Définition 1.3. Soit A ∈ Mn,n (K). On appelle rayon spectral de A et on
note ρ(A) le réel positif ou nul défini par
ρ(A) = max |λ|.
λ∈Spec A
Corollaire 1.4. Soit A ∈ Mn,n (K). Alors on a
n
X
ρ(A) ≤ max
1≤i≤n
|aij |.
j=1
Preuve. Pour tout λ ∈ Spec A, il existe k tel que
X
|λ − akk | ≤
|akj |
j6=k
par le théorème 1.1. Ceci implique que
|λ| ≤
n
X
n
X
|akj | ≤ max
1≤i≤n
j=1
|aij |.
j=1
Remarque 1.5. En lien avec la remarque 1.2, on peut remplacer ici
max
1≤i≤n
n
X
|aij |
j=1
par
max
n
X
1≤i≤n
|aji |,
j=1
et l’on a donc
ρ(A) ≤ min
max
1≤i≤n
n
X
j=1
|aij |, max
1≤i≤n
n
X
j=1
|aji | .
8
CHAPITRE 1. ALGÈBRE LINÉAIRE, PRÉLIMINAIRES
Corollaire 1.6. Soit A ∈ Mn,n (K). Avec les notations précédentes, on a
0 6∈
n
[
Dk ⇒ A ∈ GLn (K).
k=1
Preuve. Par contraposition, si A n’est pas inversible, 0 est valeur propre de
A et par le théorème 1.1, appartient à l’un des Dk .
Remarque 1.7. Toujours en lien avec la remarque 1.2, on peut remplacer
ici les Dk par les Dk0 .
Remarque 1.8. La condition est suffisante mais non nécessaire comme le
montre l’exemple
1 1
A=
.
1 0
Ici on a D1 = {z; |z − 1| ≤ 1} et D2 = {z; |z| ≤ 1}. Ainsi 0 ∈ D1 ∪ D2 et
pourtant A est inversible.
Définition 1.9. Soit A ∈ Mn,n (K). On dit que A est à diagonale dominante
(par rapport aux lignes) si pour tout k,
X
|akj |,
|akk | ≥
j6=k
et que A est à diagonale strictement dominante (par rapport aux lignes) si
pour tout k,
X
|akj |.
|akk | >
j6=k
Corollaire 1.10. Soit A ∈ Mn,n (K) à diagonale strictement dominante,
alors A ∈ GLn (K).
Preuve. C’est en fait une reformulation du corollaire 1.6 car
X
|akk | >
|akj | ⇐⇒ 0 6∈ Dk .
j6=k
Remarque 1.11. En revanche, une matrice à diagonale dominante n’est pas
nécessairement inversible comme le montre l’exemple élémentaire
1 1
A=
.
1 1
1.2. NORMES SUR MN,N (K)
9
Corollaire 1.12. Soit A ∈ Mn,n (K) à diagonale strictement dominante.
Supposons que pour tout k, on ait akk ∈ R+ . Alors, toute valeur propre λ de
A vérifie <(λ) > 0.
Preuve. Il est facile deP
voir que les akk étant sur la demi-droite réelle {(x, 0); x >
0} (car |akk | = akk > j6=k |akj | ≥ 0) et les Rk vérifiant Rk < akk , les diques
Dk sont inclus dans le demi-plan <(z) > 0. Le théorème 1.1 donne la conclusion.
Remarque 1.13. On aurait pu aussi bien définir les notions de diagonale
dominante ou strictement dominante par rapport aux colonnes. On aurait
alors eu des résultats similaires (voir remarque 1.2 et suivantes).
1.2
Normes sur Mn,n(K)
Définition 1.14. Soit E un K-espace vectoriel. On appelle norme de E
toute application N : E −→ R+ vérifiant :
(i) N (x) = 0 ⇐⇒ x = 0 ;
(ii) N (λx) = |λ|N (x) pour tout (λ, x) ∈ K × E ;
(iii) N (x + y) ≤ N (x) + N (y) pour tout (x, y) ∈ E × E.
Proposition 1.15. (exemples standards) Si E = K n (où n ≥ 1), les
applications suivantes sont des normes de E.

kxk∞ = max |xi | ;


i



n

P
kxk1 =
|xi | ;
i=1

rn


P


 kxk2 =
|xi |2 .
i=1
Preuve. Tout est trivial à l’exception de l’inégalité triangulaire pour k k2 . Il
faut établir que pour tout x, y ∈ K n on a
v
v
v
u n
u n
u n
uX
uX
uX
t
|xi + yi |2 ≤ t
|xi |2 + t
|yi |2 .
i=1
i=1
i=1
Après élévation au carré, développement et simplification, on voit que cela
équivaut à
v
u n
n
n
X
X
uX
2
t
|xi |
|yi |2 ,
(1.2)
(xi yi + xi yi ) ≤ 2
i=1
i=1
i=1
10
CHAPITRE 1. ALGÈBRE LINÉAIRE, PRÉLIMINAIRES
le calcul dans C généralisant évidemment celui que l’on ferait sur R avec
z = z. Or on a
n
n
X
X
(xi yi + xi yi ) ≤ 2
|xi yi |.
i=1
i=1
Pour établir (1.2) il suffit donc d’établir
n
X
(1.3)
v
u n
n
X
uX
|xi |2
|yi |2 .
|xi yi | ≤ t
i=1
i=1
i=1
Considérons alors le polynôme de R[X] défini par
P (t) =
n
X
(t|xi | + |yi |)2
i=1
2
= t
n
X
2
|xi | + 2t
i=1
n
X
|xi yi | +
i=1
n
X
|yi |2
i=1
Ce polynôme qui est positif pour tout t réel a son discriminant négatif ou
nul. On a donc
n
n
n
X
2 X
X
2
|xi yi | −
|xi |
|yi |2 ≤ 0,
i=1
i=1
i=1
d’où l’on tire (1.3).
Définition 1.16. Soient N et N 0 deux normes d’un K-espace vectoriel E.
On dit que N 0 est équivalente à N s’il existe deux réels α, β > 0 tels que pour
tout x ∈ E on ait
αN (x) ≤ N 0 (x) ≤ βN (x).
Proposition 1.17. Il s’agit d’une relation d’équivalence.
Preuve. Élémentaire.
Ceci autorise à parler de normes équivalentes. Pour exprimer que N et
N 0 sont équivalentes on notera
N ∼ N 0.
Proposition 1.18. Les normes k k∞ , k k1 et k k2 définies dans la proposition 1.15 sont équivalentes.
1.2. NORMES SUR MN,N (K)
11
Preuve. Il suffit par exemple d’établir k k1 ∼ k k∞ et k k2 ∼ k k∞ . Or on
a trivialement pour tout x de K n ,
kxk∞ ≤ kxk1 ≤ nkxk∞
et
kxk∞ ≤ kxk2 ≤
√
nkxk∞ .
Ce résultat est en fait une conséquence immédiate du théorème suivant.
Théorème 1.19. Si E est un K-espace vectoriel de dimension finie (avec
K = R ou C), toutes les normes de E sont équivalentes.
Preuve. En TD numéro 2.
Remarque 1.20. L’hypothèse sur la dimension et l’hypothèse sur le corps
de base sont essentielles. Voir des contre-exemples en TD.
Des considérations topologiques élémentaires (si k k est une norme sur
K n , et si A ∈ Mn,n (K), x 7−→ Ax est continue sur K n et {x ∈ K n ; kxk = 1}
est compact) montrent que la définition suivante est licite.
Définition 1.21. Soit k k une norme sur K n et soit A ∈ Mn,n (K). On pose
kAk = sup kAxk.
kxk=1
Il s’agit d’un réel positif ou nul et l’application k k ainsi définie sur Mn,n (K)
est appelée la « norme »induite par (ou subordonnée à) la norme k k de K n .
Remarque 1.22. Il est facile de vérifier que
kAk = sup
x6=0
kAxk
= sup kAxk.
kxk
kxk≤1
Théorème 1.23. Avec les notations précédentes la norme induite par k k
est bien une norme de Mn,n (K). En outre, elle vérifie :
(i) kAxk ≤ kAk · kxk pour tout (x, A) ∈ K n × Mn,n (K) ;
(ii) kABk ≤ kAk · kBk pour tout (A, B) ∈ Mn,n (K) × Mn,n (K) ;
(iii) kAk k ≤ kAkk pour tout (k, A) ∈ N × Mn,n (K).
Preuve. Élémentaire.
12
CHAPITRE 1. ALGÈBRE LINÉAIRE, PRÉLIMINAIRES
Définition 1.24. Une norme k k de Mn,n (K) vérifiant la condition (ii)
ci-dessus est appelée norme matricielle.
Proposition 1.25. Soit k k une norme matricielle de Mn,n (K). Alors k k
vérifie également (iii).
Preuve. Élémentaire.
Remarque 1.26. Attention une norme sur Mn,n (K) n’est pas nécessairement matricielle. Voir au moins un contre-exemple en TD numéro 3. De même
une norme matricielle k k ne vérifie pas forcément N (AX) ≤k A k N (X) où
N est la norme de K n . En revanche, on peut construire aisément une norme
sur K n vérifiant cette identité (prendre N (X) =k [AX, 0, . . . , 0] k). Pour plus
de détails voir l’exercice sur les normes compatibles en TD.
Théorème 1.27. Si k k∞ est la norme induite sur Mn,n (K) par k k∞ ,
alors pour tout A ∈ Mn,n (K) on a
kAk∞ = max
i
n
X
|aij |.
j=1
Preuve. Soit x ∈ K n vérifiant kxk∞ = 1. On a
X
X
kAxk∞ = max aij xj ≤ max
|aij ||xj |
i
≤ max
i
i
j
X
j
|aij |kxk∞ = max
i
j
X
|aij |.
j
On a donc
kAk∞ ≤ max
i
X
|aij |.
j
Pour montrer qu’ilP
y a égalité, il suffit de trouver x ∈ K n vérifiant kxk∞ = 1
et kAxk∞ = maxi j |aij |.
Tout d’abord si aij = 0 pour
Ptout j, l’égalité est triviale. Sinon, soit
P tout i et
i0 un indice tel que maxi j |aij | = j |ai0 j |. Prenons alors x défini par
0
si ai0 j = 0
xj =
ai0 j /|ai0 j | si ai0 j 6= 0.
Il y a au moins un indice j tel que ai0 j 6= 0 car on a écarté le cas A = 0.
Ainsi le vecteur x vérifie kxk∞ = 1 et l’on a
X
X
X
kAxk∞ ≥ ai0 j xj =
|ai0 j | =
|ai0 j |.
j
D’où la conclusion.
j
ai j 6=0
0
j
1.2. NORMES SUR MN,N (K)
13
Théorème 1.28. Si k k1 est la norme induite sur Mn,n (K) par k k1 , alors
pour tout A ∈ Mn,n (K) on a
kAk1 = max
j
n
X
|aij |.
i=1
Preuve. Soit x ∈ K n vérifiant kxk1 = 1. On a
XX
X X
kAxk1 =
aij xj ≤
|aij ||xj |
i
≤
j
XX
j
i
|aij ||xj | ≤
i
j
X
|xj | max
X
j
j
|aij | = max
i
j
X
|aij |.
i
On a donc
kAk1 ≤ max
j
X
|aij |.
i
Pour montrer qu’ilPy a égalité, il suffit de trouver x ∈ K n vérifiant kxk1 = 1
et kAxk1 = maxj i |aij |.
P
P
Soit j0 un indice tel que maxj i |aij | = j0 |aij0 |. Prenons alors x défini par
xj =
1
0
si j = j0
sinon.
Le vecteur x vérifie kxk1 = 1. On a alors
X
kAxk1 =
|aij0 |,
i
et la conclusion.
Corollaire 1.29. Si A ∈ Mn,n (K) on a kAk1 = kAt k∞ .
Remarque 1.30. Le corollaire 1.4 et la remarque 1.5 montre que l’on a
ρ(A) ≤ kAk1 et ρ(A) ≤ kAk∞ . Nous verrons en TD numéro 3 que si N est
une norme matricielle (ce qui est le cas pour k k1 et k k∞ ) on a ρ(A) ≤ N (A).
Théorème 1.31. Si k k2 est la norme induite sur Mn,n (K) par k k2 , alors
pour tout A ∈ Mn,n (K) on a
q
t
kAk2 = ρ(A A).
Preuve. La démonstration fera l’objet d’un exercice de TD numéro 3.
14
CHAPITRE 1. ALGÈBRE LINÉAIRE, PRÉLIMINAIRES
Corollaire 1.32. Par conséquent
t
• Pour toute A ∈ Mn,n (K), on a kAk2 = kA k2 ;
• Si A ∈ Mn,n (K) est symétrique ou hermitienne (suivant que K = R ou
C), on a kAk2 = ρ(A) ;
t
t
Preuve. Le premier point vient du fait que ρ(A A) = ρ(AA ) (il est bien
connu que deux matrices de C, D ∈ Mn,n (K) étant données on a χCD = χDC
et donc que CD et DC ont les mêmes spectres).
Le second point découle de
q
p
p
t
kAk2 = ρ(A A) = ρ(A2 ) = ρ(A)2 = ρ(A).
2
Remarque 1.33. Si l’on identifie Mn,n (K) avec K n via la base (Eij )1≤i,j≤n
définie par
(Eij )kl = δi,k δj,l
où δ est le symbole de Kronecker, on pourrait définir k k∞ , k k1 et k k2 par

|aij |

 kAk∞ = max
i,j

P

 kAk
=
|aij |
1
i,j
rP



|aij |2 .
kAk
=

2

i,j
Nous éviterons par la suite ces notations qui pourraient prêter à confusion.
Elles ne sont pas en effet égales aux normes induites pour lesquelles nous
avons utilisé ces notations. Considérer Idn pour s’en convaincre avec k k1 et
k k2 et Idn + Eij avec i 6= j pour k k∞ .
1.3
1.3.1
Suites de matrices, convergence
Généralités
On définit classiquement la convergence d’une suite d’éléments (uk ) d’un
K-espace vectoriel E pour la norme N vers u par
lim N (uk − u) = 0.
k→∞
Or si E est un K-espace vectoriel (avec K = R ou C) de dimension finie,
toutes les normes sont équivalentes. Ainsi si N et N 0 sont deux normes de
1.3. SUITES DE MATRICES, CONVERGENCE
15
E et si une suite (uk ) converge vers u pour N , il en est de même pour N 0 .
Ceci autorise à parler de convergence sans préciser la norme utilisée. On aura
donc
lim uk = u ⇐⇒
k→∞
⇐⇒
lim N (uk − u) = 0 pour toute norme N
k→∞
lim N (uk − u) = 0 pour une norme N.
k→∞
Ce sera bien sûr le cas pour E = K n (de dimension n) ou E = Mn,n (K) (de
dimension n2 ).
Remarque 1.34. Notons que si (Ak ) est une suite de matrices de Mn,n (K)
convergeant vers A, alors pour tout v ∈ K n on a limk Ak v = Av. En effet
prenons une norme quelconque N de K n et considérons la norme induite par
N sur Mn,n (K) encore notée N . On a N (Ak v − Av) ≤ N (Ak − A)N (v) et
comme N (Ak − A) tend vers 0 quand k tend vers l’infini, il en est de même
de N (Ak v − Av).
Donnons maintenant quelques résultats utiles concernant la convergence
de certaines suites (ou séries) de vecteurs et de matrices.
Lemme 1.35. Soit A ∈ Mn,n (K) et soit ε > 0. Il existe sur K n une norme
N telle que la norme induite par N sur Mn,n (K) encore notée N vérifie
N (A) ≤ ρ(A) + ε.
Preuve. On triangularise A dans

λ1
0
.

P −1 AP =  ..
.
 ..
0
C. Il existe P ∈ GLn (C) telle que

t1,2 t1,3 · · ·
t1,n
λ2 t2,3 · · ·
t2,n 
.. 
... ...

0
. .

..
.
λn−1 tn−1,n 
0 ···
0
λn
On prend
D = diag(1, δ, δ 2 , . . . , δ n−1 ),
où δ est un réel positif qui sera choisi ultérieurement.

λ1 δt1,2 δ 2 t1,3 · · ·
 0 λ2 δt2,3 · · ·
.
...
...

−1
0
(P D) A(P D) =  ..
.
..
 ..
.
λn−1
0
0
···
0
On a alors

δ n−1 t1,n
δ n−2 t2,n 
.. 

. .

δtn−1,n 
λn
16
CHAPITRE 1. ALGÈBRE LINÉAIRE, PRÉLIMINAIRES
Choisissons δ de telle sorte que pour tout 1 ≤ i ≤ n − 1 on ait
n
X
|δ j−i ti,j | ≤ ε.
j=i+1
Posons alors pour tout B ∈ Mn,n (C),
N (B) = k(P D)−1 B(P D)k∞ .
La fonction N est une norme sur Mn,n (C) et elle est induite par la norme de
Cn définie par
N (v) = k(P D)−1 vk∞ .
Or on a par le théorème 1.27
kCk∞ = max
i
n
X
|cij |,
j=1
ce qui entraîne ici
N (A) ≤ max |λi | + ε ≤ ρ(A) + ε.
i
Théorème 1.36. Soit A ∈ Mn,n (K). Les affirmations suivantes sont équivalentes :
(i) (Ak )k≥0 converge vers 0 ;
(ii) Pour tout v ∈ K n , (Ak v)k≥0 converge vers 0 ;
(iii) ρ(A) < 1 ;
(iv) Il existe une norme induite N pour laquelle N (A) < 1.
Preuve. Montrons (i)⇒(ii)⇒(iii)⇒(iv)⇒(i).
(i)⇒(ii) : c’est une conséquence directe de la remarque 1.34.
(ii)⇒(iii) : soit λ une valeur propre de A et v 6= 0 un vecteur propre associé
à λ. On a Ak v = λk v et donc limk→∞ λk v = 0. Ceci n’est possible que si
|λ| < 1. On en déduit ρ(A) < 1.
(iii)⇒(iv) : si ρ(A) < 1, en prenant ε suffisamment petit, on sait par le lemme
1.35 qu’il existe une norme induite N telle que N (A) < 1.
(iv)⇒(i) : Si N est induite, c’est une norme matricielle. On a alors N (Ak ) ≤
N (A)k et donc limk→∞ Ak = 0.
Remarque 1.37. On pouvait ajouter une autre condition équivalente
1.3. SUITES DE MATRICES, CONVERGENCE
17
(v) : Il existe une norme matricielle N pour laquelle N (A) < 1.
Corollaire 1.38. Soit k k une norme matricielle de Mn,n (K). Alors pour
tout matrice A ∈ Mn,n (K), on a
lim kAk k1/k = ρ(A).
k→∞
Preuve. Soit k k une norme matricielle. Comme indiqué dans la remarque
1.30, on a : ρ(M ) ≤ kM k pour toute matrice M (voir preuve en TD numéro
3). Avec M = Ak , cela donne ρ(A)k = ρ(Ak ) ≤ kAk k et en prenant les racines
k-ièmes on obtient
ρ(A) ≤ kAk k1/k .
Pour avoir la conclusion il suffit d’établir que pour tout ε > 0, il existe k0 tel
que pour tout k ≥ k0 , on a
kAk k1/k ≤ ρ(A) + ε.
Posons
B=
A
.
ρ(A) + ε
On a trivialement ρ(B) < 1, et par le théorème 1.36 on a limk→∞ B k = 0.
Ceci entraîne en particulier l’existence d’un k0 tel que pour tout k ≥ k0 , on
ait kB k k ≤ 1. Or
kAk k
,
kB k k =
(ρ(A) + ε)k
et
kB k k ≤ 1 =⇒ kAk k1/k ≤ ρ(A) + ε,
ce qui est précisément ce que l’on veut.
1.3.2
Exponentielle de matrices
Théorème 1.39. Pour toute A ∈ Mn,n (K) la suite (AN ) définie par
N
X
1 k
AN =
A
k!
k=0
converge.
Preuve. On choisit sur Mn,n (K) une norme matricielle, par exemple induite.
P
PN
k
k
La série est absolument convergente car N
k=0 k1/k!A k ≤
k=0 1/k!kAk ≤
exp kAk. Comme Mn,n (K) est complet, en tant que K-espace vectoriel de dimension finie (car K = R ou C est complet), toute série absolument convergente est convergente et on a le résultat.
18
CHAPITRE 1. ALGÈBRE LINÉAIRE, PRÉLIMINAIRES
On note exp A la limite de la suite (AN ). On a donc
exp A =
∞
X
1 k
A .
k!
k=0
Exemple 1.40. Donnons quelques exemples élémentaires :
• Si D = diag(d1 , . . . , dn ) est une matrice diagonale, alors on a
exp D = diag(exp d1 , . . . , exp dn ) ;
• Si A et B sont semblables avec B = P AP −1 et P ∈ GLn (K) alors
exp B = P (exp A)P −1 ;
• Si A est nilpotente, on An = 0 (cf TD) et
n−1
X
1 k
exp A =
A .
k!
k=0
Proposition 1.41. Si A et B commutent, on a
exp(A + B) = exp A exp B = exp B exp A.
Preuve. En TD.
Remarque 1.42. Nous verrons en TD numéro 5 des exemples de matrices A
et B (qui ne commutent pas) et pour lesquelles on a exp A exp B 6= exp(A+B)
et exp A exp B 6= exp B exp A.
Procédé général de calcul. On se sert d’un décomposition de Dunford de
A : A = D + N où D est diagonalisable, N nilpotente et où DN = N D. Si
D = P dP −1 (avec d=diag(d1 , . . . , dn ) diagonale et P ∈ GLn (K)), on a alors
par ce qui précède
exp A = P diag(exp d1 , . . . , exp dn )P
−1
n−1
X
1 k
N
k!
k=0
n−1
X
1 k
=
N P diag(exp d1 , . . . , exp dn )P −1
k!
k=0
Donnons enfin un résultat élémentaire.
Proposition 1.43. La fonction exp est continue sur Mn,n (K).
Preuve. Exercice.
1.3. SUITES DE MATRICES, CONVERGENCE
1.3.3
19
Généralisation. Autres exemples
Soit
f (z) =
∞
X
ak z k
k=0
une série entière de rayon de convergence R > 0 (on peut avoir R = ∞). Si
elle est définie on note
∞
X
f (A) =
k
ak A = lim
p→∞
k=0
p
X
a k Ak .
k=0
Théorème 1.44. On considère sur Mn,n (K) une norme matricielle k k.
Pour tout A ∈ Mn,n (K) vérifiant k A k< R, f (A) est définie.
Preuve. Classiquement désormais, Mn,n (K) est complet (indépendamment
de la norme choisie) et il suffit de prouver que la série est absolument convergente pour une norme donnée. Prenons k k. Par propriété des séries entières,
∞
X
|ak |rk < ∞
k=0
si 0 ≤ r < R. Or comme
p
X
k=0
k
k ak A k=
p
X
k
|ak | k A k≤
k=0
p
X
|ak | k A kk ,
k=0
car k k est matricielle, la série converge absolument pour k
k A k< R.
k dès que
Remarque 1.45. Ce résultat généralise ce qu’on a vu à propos de l’exponentielle, cas dans lequel on a R = ∞.
Remarque 1.46. Suppososons que R < ∞. Alors on peut avoir convergence
même si k A k≥ R. On peut en effet avoir N (A) < R pour une autre norme
matricielle N . À titre d’exemple considérons
f (z) =
∞
X
zk
k=1
(de rayon de convergence 1) et
A=
2/3 2/3
.
0
0
20
CHAPITRE 1. ALGÈBRE LINÉAIRE, PRÉLIMINAIRES
On a
2
4
> 1 mais k A k1 = < 1.
3
3
De fait f (A) est bien définie est vaut
2 2
.
0 0
k A k∞ =
Ceci conduit au critère plus explicite suivant.
Théorème 1.47. Soit A ∈ Mn,n (K). Si ρ(A) < R, f (A) est définie et si
ρ(A) > R, f (A) n’est pas définie.
Preuve. Si ρ(A) < R, il existe une norme induite donc matricielle N telle
que N (A) < R par le lemme 1.35. Le théorème 1.44 donne la convergence.
Si ρ(A) > R il existe une valeur propre de A, λ telle que |λ| > R. Soit v 6= 0
un vecteur propre associé à λ. On a
p
X
k
ak A v =
k=0
p
X
ak λ k v
k=0
P
et comme ( pk=0 ak λk )p≥0 diverge par
P propriété générale des séries entières,
on ne peut avoir convergence de ( pk=0 ak Ak )p≥0 dans Mn,n (K) (voir remarque 1.34).
Remarque 1.48. En revanche si ρ(A) = R < ∞ on ne peut rien dire. Si
par exemple
∞
X
zk
f (z) =
k
k=1
alors f (Idn ) n’est pas définie mais f (B) l’est si
−1 0
B=
.
0 −1
On a bien ici ρ(Idn ) = ρ(B) = R = 1.
Exemple 1.49. On aurait pu définir à l’instar de exp A les fonctions ch A,
sh A, cos A, sin A et log A de la façon suivante.
• Posons
∞
X
1 2k
chA =
A .
2k!
k=0
Elle est définie pour toute A.
1.3. SUITES DE MATRICES, CONVERGENCE
21
• Posons
shA =
∞
X
k=0
1
A2k+1 .
2k + 1!
Elle est définie pour toute A.
• Posons
cos A =
∞
X
(−1)k
k=0
Elle est définie pour toute A.
• Posons
∞
X
sin A =
(−1)k
k=0
1 2k
A .
2k!
1
A2k+1 .
2k + 1!
Elle est définie pour toute A.
• Posons
∞
X
(−1)k+1
log A =
(A − Idn )k .
k
k=1
Elle est bien définie par exemple si k k est une norme matricielle et si
k A − Idn k< 1 ou encore si ρ(A − Idn ) < 1.
On pourrait alors prouver certaines propriétés de ces fonctions similaires à
celles dont elles jouissent sur les nombres mais ce n’est pas l’objet ici.
Citons pour finir quelques propriétés élémentaires qui peuvent servir.
Proposition 1.50. Soient f et g des séries entières.
1. Si f (A) est définie, on a Af (A) = f (A)A ;
2. Si f (A) et g(A) sont définies on a f (A)g(A) = g(A)f (A) ;
3. Soit f une série entière de rayon de convergence R > 0 (on peut avoir
R = ∞) et k k une norme matricielle. Alors f (au sens matriciel) est
continue sur
{A ∈ Mn,n (K); k A k< R}.
Preuve. Élémentaire. En particulier le point (3) généralise ce qui a été dit
pour exp.
22
CHAPITRE 1. ALGÈBRE LINÉAIRE, PRÉLIMINAIRES
1.3.4
Application aux systèmes différentiels
L’exponentielle de matrices intervient dans la résolution de systèmes différentiels de la forme :



 

y10 (t)
y1 (t)
b1 (t)
 y 0 (t) 
 y2 (t)   b2 (t) 
 2 

 

 ..  = A  ..  +  ..  ,
 .   . 
 . 
yn0 (t)
yn (t)
bn (t)
où A ∈ Mn,n (R) et où les bi et yi sont des fonctions à valeurs réelles, dérivables
sur un intervalle I ⊆ R, système que l’on peut écrire avec des notations
évidentes :
Y 0 = AY + B.
Remarque 1.51. On pourrait prendre A ∈ Mn,n (C), et les bi et yi à valeurs
complexes sur I. Cela ne changerait rien.
Commençons par traiter le cas homogène B = 0.
Lemme 1.52. L’application R −→ Mn,n (K) définie par g(t) = exp(tA) est
dérivable sur R et l’on a
g 0 (t) = A exp(tA).
Preuve. Si t0 6= t on a
∞
X
1 0k
g(t ) − g(t) =
(t − tk )Ak ,
k!
k=1
0
d’où
∞
g(t0 ) − g(t) X t0k−1 + t0k−2 t + · · · + t0 tk−2 + tk−1 k
=
A .
t0 − t
k!
k=1
On en déduit que
∞ 0k−1
X
g(t0 ) − g(t)
t
+ t0k−2 t + · · · + tk−1 − ktk−1 k
−
A
exp(tA)
=
A
t0 − t
k!
k=1
=
∞ 0k−1
X
t
+ t0k−2 t + · · · + tk−1 − ktk−1
k=2
k!
Or
t0k−1 + t0k−2 t + · · · + tk−1 − ktk−1
Ak .
1.3. SUITES DE MATRICES, CONVERGENCE
23
est égal à
(t0k−1 − tk−1 ) + (t0k−2 − tk−2 )t + · · · + (t0 − t)tk−2
et en se servant de l’inégalité
p−1
|t0p − tp | ≤ p|t0 − t| |t| + |t0 |
directement issue du théorème des accroissements finis, on voit que
k−2
k(k − 1) 0
0k−1
0k−2
k−1
k−1
0
|t
+t
t + ··· + t
− kt | ≤
|t − t| |t| + |t |
.
2
On en déduit que si k k est une norme matricielle, on a
k
|t0 − t|
g(t0 ) − g(t)
2
0
−
A
exp(tA)
k≤
k
A
k
exp
(|t|
+
|t
|)
k
A
k
,
t0 − t
2
et
g(t0 ) − g(t)
− A exp(tA) k= 0,
t →t
t0 − t
par continuité de exp. D’où la conclusion.
lim
k
0
Théorème 1.53. La solution générale de Y 0 (t) = AY (t) est
Y (t) = exp(tA)C
où C ∈ Rn .
Preuve. On pose
H(t) = exp(−tA)Y (t).
On a alors par le lemme 1.52,
H 0 (t) = −A exp(−tA)Y (t) + exp(−tA)Y 0 (t) = 0
pour tout t ∈ R. On en déduit que la fonction H est une constante C ∈ Rn
et la conclusion par multiplication à gauche par exp(tA).
Qu’advient-il maintenant dans le cas non homogène ? Posons de nouveau
H(t) = exp(−tA)Y (t). Il vient
H 0 (t) = exp(−tA)B(t).
et si H(t) = (h1 (t), . . . , hn (t) on a pour tout i
(1.4)
h0i (t) = fi (t)
24
CHAPITRE 1. ALGÈBRE LINÉAIRE, PRÉLIMINAIRES
où

 

b1 (t)
f1 (t)

 

exp(−tA)  ...  =  ...  .
bn (t)
fn (t)
Il suffit alors d’intégrer (1.4) pour avoir les hi . On en déduit alors Y (t) =
exp(tA)H(t).
En fait, il suffit même d’obtenir une solution particulière hi de chaque
(1.4) ce qui donne une solution particulière du système. En effet toute solution
du système est la somme de cette solution particulière et d’une solution du
système homogène facile à intégrer, comme on l’a vu.
Exemple 1.54. Soit à résoudre la système
0
x (t) = 5x(t) + y(t) + exp t
y 0 (t) = −4x(t) + y(t) + exp(−t).
On a
tA =
5t t
.
−4t t
On calcule facilement
χtA (X) = x2 − 6tx + 9t2 = (x − 3t)2
et 3t est valeur propre double. Ainsi pour t 6= 0, tA n’est pas diagonalisable,
sinon on aurait tA = 3t Id2 . Il convient de rechercher une décomposition de
Dunford de tA pour calculer son exponentielle. Un vecteur propre de tA pour
3t est f1 = (1, −2). Complétons en (f1 , f2 ) avec f2 = (0, 1). Si
1 0
1 0
−1
P =
d’inverse P =
,
−2 1
2 1
on a
0
A =P
−1
(tA)P =
3t t
.
0 3t
Ainsi une décomposition de Dunford de A0 est
0
A = t(3 Id2 + N ) avec N =
0 1
.
0 0
Comme N 2 = 0 on obtient facilement
0
exp A = exp(3t)(Id2 + tN ) =
exp(3t) t exp(3t)
,
0
exp(3t)
1.3. SUITES DE MATRICES, CONVERGENCE
d’où l’on tire
0
exp(tA) = P exp A P
−1
=
(1 + 2t) exp(3t)
t exp(3t)
.
−4t exp(3t)
(1 − 2t) exp(3t)
La solution générale du système homogène est donc
x(t) = (1 + 2t) exp(3t)C1 + t exp(3t)C2
y(t) = −4t exp(3t)C1 + (1 − 2t) exp(3t)C2 ,
avec (C1 , C2 ) ∈ R2 .
Passons maintenat au système non homogène. Posons
h1 (t)
x(t)
H(t) =
= exp(−tA)
.
h2 (t)
y(t)
Il vient
exp t
(1 − 2t) exp(−2t) − t exp(−4t)
H (t) = exp(−tA)
=
.
exp(−t)
4t exp(−2t) + (1 + 2t) exp(−4t)
0
Une solution particulière est facile à trouver et l’on obtient par exemple
exp(−4t)
h1 (t) = exp(−2t) + 4t+1
16
exp(−4t).
h2 (t) = −(2t + 1) exp(−2t) − 4t+3
8
On en déduit une solution particulière du système non homogène
1
xp (t) = (−2t2 + t + 1) exp t + 16
exp(−t)
yp (t) = (4t2 − 4t − 1) exp t − 38 exp(−t)
et la solution générale du système :
x(t) = xp (t) + (1 + 2t) exp(3t)C1 + t exp(3t)C2
y(t) = yp (t) − 4t exp(3t)C1 + (1 − 2t) exp(3t)C2 .
25
26
CHAPITRE 1. ALGÈBRE LINÉAIRE, PRÉLIMINAIRES
Chapitre 2
Le pivot de Gauss
2.1
Rappels sur les matrices de permutations
Définition 2.1. Soit σ ∈ Sn une permutation de {1, . . . , n}. On appelle
matrice de σ et on note Pσ la matrice de (pi,j ) ∈ Mn,n (Z) définie par
pi,j = δi,σ(j) .
Exemple 2.2. Soit σ ∈ S4 définie par
1 2 3 4
σ=
.
2 3 4 1
Alors

0
1
Pσ = 
0
0
0
0
1
0
0
0
0
1

1
0
.
0
0
Remarque 2.3. Une autre définition possible eût été : matrice dont chaque
ligne et chaque colonne ne comporte qu’un coefficient non nul valant 1.
Proposition 2.4. On a les propriétés élémentaires suivantes.
1. Pσ ei = eσ(i) (où (ei )1≤i≤n est la base canonique de Rn )
2. Pσ◦σ0 = Pσ Pσ0
3. PId{1,...,n} = Idn .
4. Pσ est inversible d’inverse Pσ−1 = Pσt . Ainsi Pσ est orthogonale.
Preuve. Exercice.
27
28
CHAPITRE 2. LE PIVOT DE GAUSS
Un exemple fondamental est celui des matrices de transpositions. Si τ =
(i, j) est une transposition, Pτ est la matrice dont la diagonale comporte des
1 partout sauf en lignes i et j où le coefficient est nul, tous les coefficients non
diagonaux étant nuls sauf les coefficients indexés par (i, j) et (j, i) qui valent
1. En s’appuyant sur les propriétés des transpositions, on peut montrer que :
1. Toute Pσ est produit d’au plus n − 1 matrices de transpositions.
2. Si τ est une transposition det Pτ = −1.
3. Pour toute permutation σ ∈ Sn , det Pσ = sign (σ).
Remarque 2.5. Il est facile de voir que multiplier à gauche une matrice A
par une matrice de permutation Pσ revient à permuter les lignes de A suivant
σ (la ligne i de A est envoyée en ligne σ(i)) et que multiplier à droite une
matrice A par une matrice de permutation Pσ revient à permuter les colonnes
de A suivant σ −1 (la colonne i de A est envoyée en colonne σ −1 (i) ou, si l’on
préfère, la colonne i de APσ est la colonne σ(i) de A).
2.2
Exemples concrets, le principe
Soient A ∈ GLn (K), B ∈ K n (vu comme vecteur colonne). On désire
résoudre AX = B. En théorie, on dispose de plusieurs approches.
• Calculer A−1 ;
• Les formules de Cramer :
xi =
det Ai
,
det A
où Ai est la matrice A avec B à la place de la i-ème colonne.
Mais tout ceci est très coûteux en pratique. Une idée élémentaire consiste à
transformer A de manière à se ramener à un système triangulaire. Donnons
quelques exemples concrets.
Exemple 2.6. Soient


2 1 1
A = 4 1 3
6 5 2
 
1

et B = 4 .
2
On veut donc résoudre


2x + y + z = 1
4x + y + 3z = 4

6x + 5y + 2z = 2
2.2. EXEMPLES CONCRETS, LE PRINCIPE
29
1. On considére le pivot 2 de la première ligne et on fait L2 ←− L2 − 2L1
puis L3 ←− L3 − 3L1 . On obtient le système équivalent :

1
 2x + y + z =
−y + z =
2

2y − z = −1
2. On considère le pivot −1 de la deuxième ligne et on fait L3 ←− L3 +2L2 .
On obtient le système équivalent :

 2x + y + z = 1
−y + z = 2

z = 3
que l’on résout facilement en remontant : z = 3, y = 1, x = −3/2.
C’est l’idée de base que nous interprétons maintenant matriciellement. On a
successivement fait les choses suivantes.
1. On a utilisé la matrice




1 0 0
1 0 0
L01 = −2 1 0 d’inverse L1 = 2 1 0
−3 0 1
3 0 1
et on s’est ramené au système
L01 AX = L01 B.
2. On a utilisé la matrice


1 0 0
L02 = 0 1 0
0 2 1


1 0 0
d’inverse L2 = 0 1 0
0 −2 1
et on s’est ramené au système
L02 L01 AX = L02 L01 B.
En posant
U = L02 L01 A
qui est triangulaire supérieure on s’est donc ramené au système plus simple
U X = L02 L01 B.
On a donc implicitement utilisé la fait que A = L1 L2 U se décompose sous la
forme
A = LU,
où L = L1 L2 est triangulaire inférieure ne comportant que des 1 sur la
diagonale et où U est triangulaire supérieure.
30
CHAPITRE 2. LE PIVOT DE GAUSS
Mais cela n’est pas toujours aussi simple et l’on peut par exemple tomber
sur un pivot nul (cas extrême : a1,1 = 0). On joue alors sur les permutations
de lignes. Donnons un nouvel exemple pour illustrer ce cas.
Exemple 2.7. Soient


2
1
0
4
−4 −2 3 −7

A=
4
1 −2 8 
0 −3 −12 −1


2
−9

et B = 
 2 .
2
1. Servons-nous du pivot 2 et faisons L2 ←− L2 + 2L1 et L3
Avec les notations précedentes on a



1 0 0 0
1 0



2 1 0 0
−2 1
L01 = 
−2 0 1 0 d’inverse L1 =  2 0
0 0 0 1
0 0
←− L3 − 2L1 .

0
0
.
0
1
0
0
1
0
Ce qui conduit à

A(1)

2 1
0
4
0 0
3
1

= L01 A = 
0 −1 −2 0 
0 −3 −12 −1

et B (1)

2
−5

= L01 B = 
−2 ,
2
(1)
et au système A(1) X = B (1) . Mais alors le pivot suivant a2,2 est nul.
2. L’idée naturelle est d’échanger les lignes 2 et 3, ce qui revient à multiplier à gauche par la matrice de transposition Pτ avec τ = (2, 3) (voir
section précédente) :


1 0 0 0
0 0 1 0

Pτ = 
0 1 0 0 .
0 0 0 1
On est alors ramené au système A(2) X = B (2) où


2 1
0
4
0 −1 −2 0 

A(2) = Pτ L01 A = 
0 0
3
1
0 −3 −12 −1
2.2. EXEMPLES CONCRETS, LE PRINCIPE
et
31

B (2)

2
−2

= Pτ L01 B = 
−5 .
2
3. On peut alors poursuivre. On fait L4 ←− L4 − 3L2 ce qui revient à
utiliser




1 0 0 0
1 0 0 0
0 1 0 0


 d’inverse L2 = 0 1 0 0 .
L02 = 
0 0 1 0
0 0 1 0
0 −3 0 1
0 3 0 1
On obtient alors le système A(3) X = B (3) où


2 1
0
4
0 −1 −2 0 

A(3) = L02 Pτ L01 A = 
0 0
3
1
0 0 −6 −1
et

B (3)

2
−2

= L02 Pτ L01 B = 
−5 .
8
4. Finalement on fait L4 ←− L4 + 2L3 ce qui revient à utiliser




1 0 0 0
1 0 0 0
0 1 0 0
0 1 0 0



L03 = 
0 0 1 0 d’inverse L3 = 0 0 1 0 .
0 0 2 1
0 0 −2 1
On obtient alors le système A(4) X = B (4)

2

0
A(4) = L03 L02 Pτ L01 A = 
0
0
et
où

1
0 4
−1 −2 0

0
3 1
0
0 1

B (4)

2
−2

= L03 L02 Pτ L01 B = 
−5 .
−2
La résolution en cascade mène à : x4 = −2, x3 = −1, x2 = 4 et x1 = 3.
32
CHAPITRE 2. LE PIVOT DE GAUSS
Quid d’une éventuelle décomposition LU de A ? Posons U = A(4) . C’est une
matrice triangulaire supérieure. On a
U = L03 L02 Pτ L01 A
= L03 L02 Pτ L01 Pτ−1 Pτ A
= L03 L02 L04 Pτ A,
où
L04 = Pτ L01 Pτ−1
= Pτ L01 Pτ

1 0
−2 1
= 
2 0
0 0
0
0
1
0

0
0

0
1
d’inverse

1
2
L4 = 
−2
0
0
1
0
0
0
0
1
0

0
0
.
0
1
Ceci donne
Pτ A = LU
avec L = L4 L2 L3 triangulaire inférieure dont la diagonale ne comporte que
des 1 :


1 0 0 0
 2 1 0 0

L=
−2 0 1 0 .
0 3 −2 1
Remarque 2.8. Il est intéressant de noter que les L0i qui sont égales à l’identité, aux coefficients d’une seule colonne près, situés sous la diagonale, s’inversent facilement : il suffit de prendre les opposés de ces coefficients. Par
ailleurs, si l’on calcule un produit de telles matrices, ces matrices étant ordonnées de gauche à droite, de la plus haute sous-colonne non nulle vers la
plus basse (ces sous-colonnes ayant toutes des hauteurs différentes), il suffit
en fait de recopier les sous-colonnes pour obtenir le produit recherché. Ainsi
L est obtenue sans calcul.
2.3. LE THÉORÈME PRINCIPAL
2.3
33
Le théorème principal
Donnons maintenant le théorème qui généralise ce que l’on vient de voir.
Théorème 2.9. Soit A ∈ GLn (K). Il existe P matrice de permutation (pas
nécessairement transposition), L triangulaire inférieure à termes diagonaux
égaux à 1 et U triangulaire supérieure telles que
P A = LU.
De plus, P étant fixée, L et U sont uniques.
Preuve. Voir TD numéro 8.
Corollaire 2.10. Si on connaît une telle décomposition avec P = Pσ , on
peut calculer A−1 et det A de façon très pratique. En effet il est facile de voir
que
A−1 = U −1 L−1 P
et
det A = sign(σ)
n
Y
ui,i .
i=1
Notons que la procédure de résolution de AX = B qui se dégage de
ce résultat consiste à factoriser A sous la forme P A = LU puis à résoudre
AX = B par LY = P B puis U X = Y . Ce qui est d’autant plus intéressant
qu’on a plusieurs B à tester.
2.4
Le coût
Quel est le coût de cette procédure pour un seul B ? On a trois phases :
factorisation LU , résolution de LY = B puis résolution de U X = Y .
1. À l’étape k (1 ≤ k ≤ n − 1) de la factorisation :
• n − k multiplications ou divisions pour déterminer L0k , ce qui donne
Lk sans calcul ;
• (n − k)2 additions et multiplications pour calculer L0k A(k−1) (avec la
convention A(0) = A) ;
• Les permutations n’induisent pas d’opérations.
À la fin on a U , et L s’obtient sans calcul (par recopiage). En tout on
a donc
n−1
X
k=1
2
(n − k) +
n−1
X
1
1
1
(n − k) = n(n − )(n − 1) + n(n − 1) opérations.
3
2
2
k=1
34
CHAPITRE 2. LE PIVOT DE GAUSS
2. La résolution d’un système triangulaire nécessite n(n − 1)/2 additions
et multiplications et n divisions par les pivots (ou multiplications si les
inverses ont été stockés en amont) et ces dernières opérations ne sont
pas nécessaires pour LY = P B car les termes diagonaux de L valent
1. D’où en tout pour les deux systèmes
n(n − 1) + n = n2
opérations.
Finalement, quand n est grand on a une complexité algébrique qui vaut
1
1
1
1
n(n − )(n − 1) + n(n − 1) + n2 ∼ n3
3
2
2
3
.
2.5
Mise en oeuvre effective et variantes
Le problème auquel on est concrètement inévitablement confronté est
celui de la précision des calculs. Car quand bien même il serait possible de
travailler exactement (par exemple si A ∈ Mn (Z) auquel cas tous les calculs
peuvent se faire dans Q), la taille des nombres (ou seulement des parties
des fractions manipulées) peut exploser. Il est alors intéressant de pouvoir
majorer l’erreur globale en fonction d’un erreur d’arrondi tolérée sur chaque
opération élémentaire. Citons sans preuve.
Théorème 2.11. Soit K le plus grand coefficient en valeur absolue des matrices A(k) intervenant dans la factorisation de Gauss. Soit ε une majoration
de l’erreur d’arrondi sur chaque opération élémentaire. si Lc et Uc sont les
matrices effectivement calculées, on a
P A = Lc Uc + E
où, avec une notation naturelle,

0
1

1

|E| ≤ 3Kε 1

 ..
.
1

0 ··· ···
0
1 ··· ···
1 

2 2 ···
2 

.
2 3 ···
3 

.. ..
.. 
. .
. 
2 3 ··· n − 1
Le problème est avant tout tout de savoir juguler K. Et le moyen d’y
parvenir est d’utiliser des variantes appropriées permettant de ne pas avoir
à manipuler des pivots trop petits. Il en existe essentiellement deux.
2.5. MISE EN OEUVRE EFFECTIVE ET VARIANTES
35
(k−1)
• Le pivot partiel. Si à la k-ième étape, le pivot standard (Ak,k ) est
petit on choisit comme ligne-pivot la ligne d’indice p telle que
(k−1)
(k−1)
|Ap,k | = max |Ai,k
k≤i≤n
|.
• Le pivot total. On choisit le plus grand des coefficients en valeurs absolues. Pour cela, on est conduit à échanger des lignes et des colonnes,
ce qui conduit à une factorisation P AQ = LU (avec P et Q matrices
de permutations).
Donnons un exemple très simple.
Exemple 2.12. Soit à résoudre
−20 10
1
x
1
=
.
1
1
y
2
Le choix standard conduit à
−20
10
1
x
1
=
0
1 − 1020
y
2 − 1020
que l’on pourrait arrondir à
−20
10
1
x
1
=
.
0
−1020
y
−1020
Ceci conduirait à y = 1, x = 0.
Le choix du pivot partiel conduit à
0 1 − 10−20
x
1 − 2.10−20
=
,
1
1
y
2
qui en arrondissant conduit à (1, 1) quelque chose d’assez proche de la vraie
solution.
Remarque 2.13. Si A est symétrique définie positive, les coefficients des
A(k) restent bornés sans permutation. Ceci conduit à une programmation
sans permutation de la décomposition A = LDLt (ou Cholesky). Voir TD
pour plus de détails.
36
CHAPITRE 2. LE PIVOT DE GAUSS
Chapitre 3
Conditionnement
3.1
Définition
Un autre problème est celui des données approximatives. Quelle est l’incidence sur la qualité des calculs du recours à une approximation de A ou de
B lorsqu’on résout AX = B ? Pour cela on note A + ∆A la matrice utilisée
et B + ∆B le vecteur utilisé, A et B étant les valeurs exactes théoriques. Soit
X la vraie solution et soit X + ∆X la solution obtenue. Peut-on estimer la
marge d’erreur ∆X ?
Exemple 3.1. Soient

10
7
A=
8
7

7 8 7
5 6 5

6 10 9 
5 9 10
 
32
23

et B = 
33 .
31
Soient


0
0
0.1
0.2
 0.08
0.04
0
0 

∆A = 
 0
−0.02 −0.11
0 
−0.01 −0.01
0
−0.02
Si l’on résout AX = B + ∆B on obtient


0.82
−1.36

∆X ≈ 
 0.35 
−0.21
37


0.01
−0.01

et ∆B = 
 0.01  .
−0.01
38
CHAPITRE 3. CONDITIONNEMENT
alors que la solution est
 
1
1

X=
1 .
1
Si l’on résout (A + ∆A)X = B on obtient


−82
 136 

∆X ≈ 
−35 .
21
Ici une perturbation relative du second membre de l’ordre de 3.10−4 entraîne
une perturbation relative de la solution de l’ordre de 0.8. Une perturbation
relative de la matrice de l’ordre de 10−2 entraîne une perturbation relative
de la solution de l’ordre de 80 !
La notion qui va nous permettre d’anticiper sur l’erreur commise est celle
de conditionnement.
Définition 3.2. On considère Mn,n (K) muni d’une norme matricielle (par
exemple induite, mais ce n’est pas nécessaire) notée k k. Soit A ∈ GLn (K).
Le conditionnement de A est le nombre réel positif défini par
Condk k (A) =k A k × k A−1 k .
Notation. Si la norme considérée est k kp avec p = 1, 2 ou ∞ (voir p entier
≥ 3), on notera Condp le conditionnement associé à cette norme. Dans ce qui
suit, pour simplifier, on notera Cond pour Condk k .
3.2
Erreurs relatives
Intéressons nous désormais à l’incidence des perturbations en termes d’erreurs relatives. Et pour simplifier on suppose que la norme matricielle considérée est induite. On notera commme d’habitude k k pour la norme de K n
et pour celle de Mn,n (K) qu’elle induit.
Proposition 3.3. (perturbation de B). Soit ∆X l’erreur commise sur X si
on perturbe B de ∆B. Supposons que B 6= 0 et donc que X 6= 0. Alors on a
k ∆X k
k ∆B k
≤ Cond(A)
.
kXk
kBk
3.2. ERREURS RELATIVES
39
Preuve. On a A∆X = ∆B d’où ∆X = A−1 ∆B. Comme k k est induite, on
en déduit que
k ∆X k≤k A−1 k . k ∆B k .
(3.1)
Mais on a aussi k B k≤k A k . k X k d’où
kAk
1
≤
.
kXk
kBk
(3.2)
Les inégalités (3.1), (3.2) et la définition de Cond(A) donnent le résultat.
Proposition 3.4. (perturbation de A). Soit ∆X l’erreur commise sur X si
on perturbe A de ∆A. Supposons que X + ∆X 6= 0. Alors on a
k ∆A k
k ∆X k
≤ Cond(A)
.
k X + ∆X k
kAk
Preuve. Comme B = AX = (A + ∆A)(X + ∆X) on a
A∆X + ∆A(X + ∆X) = 0.
On en tire
∆X = −A−1 ∆A(X + ∆X).
La norme k k étant induite on obtient
k ∆X k≤k A−1 k . k ∆A k . k X + ∆X k,
d’où la conclusion par définition de Cond(A).
Proposition 3.5. (inverse). Supposons que A est perturbée de ∆A et considérons l’inverse de A + ∆A. On a
k ∆A k
k (A + ∆A)−1 − A−1 k
≤ Cond(A)
.
−1
k (A + ∆A) k
kAk
Preuve. De (A + ∆A)−1 (A + ∆A) = Idn on tire (A + ∆A)−1 (Idn + ∆AA−1 ) =
A−1 . Ceci donne
(A + ∆A)−1 − A−1 = −(A + ∆A)−1 ∆AA−1 .
La norme k k étant induite on a alors
k (A + ∆A)−1 − A−1 k≤k (A + ∆A)−1 k . k ∆A k . k A−1 k
et le résultat par définition de Cond(A).
De ces trois propositions découle évidemment le fait que le conditionnement est un bon critère de contrôle : plus il est petit, moins les perturbations
auront d’effet.
40
3.3
CHAPITRE 3. CONDITIONNEMENT
Propriétés élémentaires
Donnons maintenant quelques propriétés du conditionnement pour une
norme induite. Dans ce qui suit, les matrices considérées sont inversibles.
Proposition 3.6. (propriétés du conditionnement). Le conditionnement vérifie :
1. Si α 6= 0, Cond(αA) = Cond(A).
2. Cond(AB) ≤ Cond(A) × Cond(B).
3. Cond(A) ≥ 1.
4. Si la norme considérée est k k2 on a
v
u
u max{|λ|; λ ∈ Spec(At A)}
Cond2 (A) = t
.
t
min{|λ|; λ ∈ Spec(A A)}
En particulier si A est symétrique réelle ou hermitienne complexe,
Cond2 (A) =
max{|λ|; λ ∈ Spec(A)}
.
min{|λ|; λ ∈ Spec(A)}
Preuve. (1) vient de k αA k= |α| k A k et de
k (αA)−1 k=k α−1 A−1 k= |α−1 | k A−1 k .
(2) : on a
k AB k≤k A k × k B k
car la norme est matricielle. De même
k (AB)−1 k=k B −1 A−1 k≤k B −1 k × k A−1 k,
et on a la conclusion par produit.
(3) : on a
k Idn k≤k A k × k A−1 k= Cond(A)
car la norme est matricielle. Mieux, elle est induite et k Idn k= 1 d’où la
conclusion.
(4) : par le cours on a
q
q
t
t
k A k2 = ρ(A A) = max{|λ|; λ ∈ Spec(A A)}.
De même
kA
−1
q
k2 =
ρ(A−1
t
A−1 )
q
=
t
max{|λ|; λ ∈ Spec(A−1 A−1 )}.
3.3. PROPRIÉTÉS ÉLÉMENTAIRES
41
t
Mais λ est valeur propre de A−1 A−1 si et seulement s’il existe X 6= 0 tel
t
t
que A−1 A−1 X = λX ce qui équivaut à X = λAA X. Ceci signifie que λ est
t −1
t
valeur propre de A−1 A si et seulement si 1/λ est valeur propre de AA . Or
t
t
AA et A A ont même valeurs propres car même polynôme caractéristique,
d’où la conclusion.
Remarque 3.7. Calculer Cond(A) pose problème au moins car il faudrait
pour bien faire calculer A−1 , à supposer qu’on puisse le faire exactement !
En réalité et fort heureusement, il existe des algorithmes qui donnent une
bonne approximation de Cond(A) (entre Cond(A)/10 voire Cond(A)/2 et
Cond(A)). Ces algorithmes s’appuient sur la détermination de bons B pour
lesquels k A−1 B k / k B k est proche de k A−1 k.
42
CHAPITRE 3. CONDITIONNEMENT
Chapitre 4
Méthodes itératives
4.1
Le lemme fondamental
Nous allons étudier ici un autre principe de résolution du système AX =
B où B ∈ K n et A ∈ GLn (K). Quitte à s’y ramener par permutations on
supposera que l’on a
ai,i 6= 0 pour tout i.
L’idée générale est de partir d’un X (0) quelconque et de construire une suite
(X (k) ) définie par une relation de récurrence X (k+1) = M X (k) + C dans
laquelle M et C sont choisis de telle sorte que (X (k) ) converge vers la solution
X.
Lemme 4.1. Soit la suite (X (k) )k≥0 définie par la donnée de X (0) et la relation de récurrence X (k+1) = M X (k) + C où M ∈ Mn,n (K) et C ∈ K n . Les
deux assertions suivantes sont équivalentes.
1. ρ(M ) < 1 ;
2. Idn − M est inversible et pour tout X (0) la suite (X (k) ) converge (nécessairement vers (Idn − M )−1 C).
Preuve. L’implication =⇒ a été vue partiellement en TD. Rappelons en toutefois brièvement la preuve. Le noyau de Idn − M est réduit à {0} sinon
M admettrait 1 pour valeur propre ce qui contredit ρ(M ) < 1. Par suite
Idn − M est inversible. Toutes les normes sur K n sont équivalentes. On peut
donc l’équiper de la norme qu’on veut pour étudier la convergence de (X (k) ).
Or on a vu dans le théorème 1.36 que si ρ(M ) < 1, il existe une norme induite N pour laquelle N (M ) < 1. Posons ε = N (M ). On a alors facilement
X (k+1) − X (k) = M k (X (1) − X (0) ) d’où N (X (k+1) − X (k) ) ≤ εk N (X (1) − X (0) )
si l’on note encore N la norme dont est issue N . Mais ceci implique que
43
44
CHAPITRE 4. MÉTHODES ITÉRATIVES
(X (k) ) est de Cauchy pour N (voir pourquoi). Comme K = R ou C, K n
est complet (pour n’importe quelle norme - elles sont toutes équivalentes) et
(X (k) ) converge vers une limite L qui doit donc vérifier L = M L + C d’où la
valeur de L.
Passons maintenant à ⇐=. Posons Y (k) = (Idn − M )X (k) − C. Par hypothèse
pour tout X (0) , la suite (Y (k) ) converge vers 0. Or on a
Y (k+1) =
=
=
=
=
(Idn − M )X (k+1) − C
(Idn − M )(M X (k) + C) − C
M X (k) − M 2 X (k) − M C
M (X (k) − M X (k) − C)
M Y (k) .
Soit λ une valeur propre de M et soit Y un vecteur propre associé. Choisissons
X (0) = (Idn −M )−1 (Y +C). La suite (Y (k) ) vérifie Y (0) = Y et Y (k) = M k Y =
λk Y . Comme elle converge vers 0 on a nécessairement |λ| < 1 et finalement
ρ(M ) < 1.
Notations. Soit A la matrice du système à résoudre. Dans tout ce qui suit
on décompose A sous la forme
A = L + D + U,
où
• L est triangulaire inférieure à diagonale nulle ;
• D est diagonale (et di,i = ai,i 6= 0 pour tout i par hypothèse initiale) ;
• U est triangulaire supérieure à diagonale nulle.
Attention L et U n’ont évidemment aucun rapport avec une éventuelle décomposition LU de A.
4.2
La méthode de Jacobi
Ici on part comme convenu d’un X (0) quelconque et on utilise la relation
X (k+1) = (Idn − D−1 A)X (k) + D−1 B
ou encore
X (k+1) = −D−1 (L + U )X (k) + D−1 B.
4.3. LA MÉTHODE DE GAUSS-SEIDEL
45
Remarque 4.2. Si (X (k) ) converge vers Y , on a DY = −(L + U )Y + B et
on obtient bien AY = B.
Remarque 4.3. Si on traduit en termes de coefficients, cela s’écrit :
X
1 (k+1)
(k)
(4.1)
Xi
=
bi −
pour tout i.
ai,j Xj
ai,i
j6=i
Proposition 4.4. La suite (X (k) ) converge vers la solution X du système
pour tout choix de X (0) si et seulement si
ρ(Idn − D−1 A) = ρ D−1 (L + U ) < 1.
Preuve. On applique le lemme 4.1 et la remarque 4.2.
Corollaire 4.5. Si A est à diagonale strictement dominante, la méthode de
Jacobi converge (pour tout X (0) ).
Preuve. On a

a1,2
a1,1
0
 a2,1
a
2,2
Idn − D A = 
 ..
 .
−1
an,1
an,n
0
..
.
···
..
.
..
.
···
an,n−1
an,n
a1,n
a1,1

..
.


.
an−1,n 

an−1,n−1
0
Comme A est à diagonale strictement dominante, pour tout k on a
X |ak,j |
j6=k
|ak,k |
< 1.
Le théorème de Gerschgörin-Hadamard (théorème 1.1) montre que toute valeur propre λ de Idn − D−1 A est de module < 1. En effet tous les termes diagonaux sont nuls et tous les disques de Gerschgörin sont des disques centrés
en 0, fermés et de rayon Rk < 1, donc inclus dans le disque unité ouvert.
4.3
La méthode de Gauss-Seidel
Ici, on va introduire une variante de la méthode de Jacobi. En fait à
(k)
chaque étape k ≥ 1 on calcule les Xi suivant les i croissants et au lieu de
faire comme dans Jacobi
X
1 (k+1)
(k)
Xi
=
bi −
ai,j Xj
pour tout i,
ai,i
j6=i
46
CHAPITRE 4. MÉTHODES ITÉRATIVES
(k+1)
on se sert des Xj
donne
(4.2)
(k+1)
Xi
=
(k+1)
(j < i) déjà calculés lorsqu’on détermine Xi
. Cela
X
X
1 (k+1)
(k)
pour tout i,
bi −
ai,j Xj
−
ai,j Xj
ai,i
j<i
j>i
ce qui se traduit matriciellent par
X (k+1) = −(D + L)−1 U X (k) + (D + L)−1 B.
Remarque 4.6. Si (X (k) ) converge vers Y , on a (D + L)Y = −U Y + B et
on obtient bien AY = B.
Proposition 4.7. La suite (X (k) ) converge vers la solution X du système
pour tout choix de X (0) si et seulement si
ρ (D + L)−1 U < 1.
Preuve. Comme pour Jacobi, on applique le lemme 4.1 et la remarque 4.6.
Corollaire 4.8. Si A est à diagonale strictement dominante, la méthode de
Gauss-Seidel converge (pour tout X (0) ).
Preuve. On a
(D + L)−1 U = (Idn + D−1 L)−1 D−1 U.
En posant

0
 a2,1
a
2,2
L =D L=
 ..
 .
0
−1
an,1
an,n
et
···
..
.
...
···
···
an−1,n
an,n
1,2
0 aa1,1
···
. .
.. ...
 ..
0
−1

U = D U = .
...
 ..
0 ··· ···

...
a1,n
a1,1

0
.. 
.

.. 
.
0

..
.


,
an−1,n 

an−1,n−1
0
on a
ρ (D + L)−1 U = ρ (Idn + L0 )−1 U 0 .
On a alors
χ(Idn +L0 )−1 U 0 = det XIdn − (Idn + L0 )−1 U 0
= det(Idn + L0 ) det XIdn − (Idn + L0 )−1 U 0
= det (Idn + L0 )X − U 0 .
4.3. LA MÉTHODE DE GAUSS-SEIDEL
47
Soit maintenant λ ∈ Spec (Idn + L0 )−1 U 0 . Par ce qui précède on doit avoir
det λ(Idn + L0 ) − U 0 = 0.
Or

λ
 a2,1
λ
 a2,2

0
0
λ(Idn + L ) − U =  ...

 ..
 .
n,1
λ aan,n
1,2
···
− aa1,1
..
.
λ
...
...
···
...
..
···
.
λ
an,n−1
· · · λ an,n
− aa1,n
1,1
..
.
..
.





.

an−1,n 
− an−1,n−1 
λ
Comme A est à diagonale strictement dominante, pour tout k on a
1>
X |ak,j |
j6=k
|ak,k |
,
ce qui implique que pour tout k on a
|λ| >
X
j6=k
|λ|
|ak,j |
.
|ak,k |
Supposons |λ| ≥ 1. On a alors
|λ| >
|λ| > |λ|
|a1,n |
|a1,2 |
+ ··· +
,
|a1,1 |
|a1,1 |
|a2,1 | |a2,3 |
|a2,n |
+
+ ··· +
,
|a2,2 | |a2,2 |
|a2,2 |
et de même sur les ligne suivantes.
Ainsi λ(Idn + L0 ) − U 0 est à diagonale strictement dominante, donc de déterminant non nul. Contradiction.
Nécessairement |λ| < 1 et
ρ (Idn + L0 )−1 U 0 < 1.
48
CHAPITRE 4. MÉTHODES ITÉRATIVES
4.4
Relaxation
Il s’agit d’une généralisation des deux méthodes précédemment étudiées.
On fixe un paramètre ω > 0. Admettons que X (k) ait été calculé. Soit X (k+1)
le vecteur que l’on obtiendrait en appliquant Jacobi ou Gauss-Seidel. Il y
a donc deux variantes suivant le choix de la méthode auxiliaire. On définit
alors X (k+1) par
X (k+1) = ωX (k+1) + (1 − ω)X (k) .
Si l’on se sert de Jacobi cela donne l’expression matricielle :
X (k+1) = (Idn − ωD−1 A)X (k) + ωD−1 B.
On retrouve bien Jacobi quand ω = 1.
Si l’on se sert de Gauss-Seidel cela donne l’expression matricielle :
X (k+1) = (D + ωL)−1 (1 − ω)D − ωU X (k) + ω(D + ωL)−1 B.
On retrouve bien Gauss-Seidel quand ω = 1.
En général, la première méthode n’apporte pas grand chose. On se sert en
général de la variante qui prend appui sur Gauss-Seidel.
Proposition 4.9. On a
1. Pour que la méthode de relaxation prenant appui sur Gauss-Seidel
converge (pour tout X (0) ), il faut que 0 < ω < 2.
2. Si A est à diagonale strictement dominante et si 0 < ω ≤ 1, cette
méthode converge.
Preuve. Voir la preuve en TD.
4.5
Programmation
Les méthodes de Jacobi et Gauss-Seidel sont particulièrement faciles à
programmer. On traduit les formules (4.1) et (4.2).
4.5. PROGRAMMATION
4.5.1
49
Jacobi
Algorithm 1. Jacobi
Input: A, B et un X (0) quelconque.
Output: Une solution approchée X 0 du système AX = B.
1: for i from 1 to n do
2:
X[i] = X (0) [i] {initialisation}
3: for i from 1 to n do
4:
s = B[i]
5:
for j from 1 to n do
6:
s = s − A[i, j]X[j]
7:
Y [i] = X[i] + s/A[i, i] {nouvel X}
8: t=0
9: for i from 1 to n do
10:
t = t + (X[i] − Y [i])2 {norme pour test d’arrêt}
11: if t < ε then
12:
Return Y
13: for i from 1 to n do
14:
X[i] = Y [i] and goto 3.
Remarque 4.10. Ici le test d’arrêt peut être modifié et n’intervenir qu’au
bout d’un certain nombre d’itérations. On peut également avoir recours à
deux boucles successives avec saut de i dans le calcul de Y [i]. C’est plus long
à écrire mais il y a moins de calculs.
4.5.2
Gauss-Seidel
Avec le même test d’arrêt naïf on a le programme suivant.
50
CHAPITRE 4. MÉTHODES ITÉRATIVES
Algorithm 2. Gauss-Seidel
Input: A, B et un X (0) quelconque.
Output: Une solution approchée X 0 du système AX = B.
1: for i from 1 to n do
2:
X[i] = X (0) [i] {initialisation}
3: for i from 1 to n do
4:
Y [i] = X[i] {sauvegarde de X}
5: for i from 1 to n do
6:
s=0
7:
for j from 1 to n do
8:
s = s + A[i, j]X[j]
9:
r = B[i] − s
10:
X[i] = X[i] + r/A[i, i] {nouvel X}
11: t=0
12: for i from 1 to n do
13:
t = t + (X[i] − Y [i])2 {norme pour test d’arrêt}
14: if t < ε then
15:
Return X
16: goto 3.
Remarque 4.11. On remarquera que dans la boucle “principale” (lignes 5 à
10), on n’a besoin que du tableau X dans Gauss-Seidel, alors que pour Jacobi,
on a besoin dans la même boucle (lignes 3 à 7) d’un tableau auxiliaire.
4.5.3
Relaxation avec Gauss-Seidel
Ici le programme est le même quer pour Gauss-Seidel, à la différence près
qu’il faut écrire X[i] = X[i] + ωr/A[i, i] au lieu de X[i] = X[i] + r/A[i, i] en
ligne 10.
Chapitre 5
Calculs effectifs divers
5.1
Polynôme caractéristique
Soit A ∈ Mn,n (K), avec K = R ou C. Posons
χA (X) = det(XIdn − A) =
n
X
ak X k .
k=0
Nous voulons un algorithme qui calcule les ak sans passer par le calcul du
déterminant qui peut être très coûteux. Désignons par Com(M ) la comatrice
(transposée de la matrice des cofacteurs) d’une matrice M ∈ Mn,n (K) et plus
généralement d’une matrice à coefficients dans K[X].
Lemme 5.1. Soit M ∈ Mn,n (C). On a
d
det(XIdn − M ) = Tr Com(XIdn − M ) .
dX
Preuve. Notons Nj (X) les colonnes de XIdn − M . Par multilinéarité du déterminant on a
dN (X)
d
1
det(XIdn − M ) = det
, N2 (X), . . . , Nn (X) +
dX
dX
dN2 (X)
dNn (X) det N1 (X),
, . . . , Nn (X) +· · ·+det N1 (X), N2 (X), . . . ,
.
dX
dX
Or
dNi (X)
= (0, . . . , 0, 1, 0, . . . , 0)t
dX
avec 1 en i-ième position. On en déduit, par développement suivant ces colonnes, que
n
X
d
det(XIdn − M ) =
det Bi (X)
dX
i=1
51
52
CHAPITRE 5. CALCULS EFFECTIFS DIVERS
où Bi (X) est la matrice XIdn − M privée de la ligne i et de la colonne i. Or
on a évidemment
Com(XIdn − M )
= (−1)2i det Bi (X) = det Bi (X),
i,i
d’où le résultat.
Une alternative consiste à triangulariser M dans Mn,n (C). On voit alors qu’il
suffit d’établir l’égalité pour une matrice triangulaire et cela se fait aisément.
Les détails de cette preuve sont laissés aux bons soins du lecteur.
Théorème 5.2. (Souriau). Soit A ∈ Mn,n (K). Posons bn = 1, Qn = Idn
puis construisons les suites (bi ) et (Qi ) par :


 bn−1 = −Tr(A) = −Tr(AQn )


Qn−1 = AQn + bn−1 Idn





bn−2 = −Tr(AQn−1 )/2




Qn−2 = AQn−1 + bn−2 Idn



..


.

bk


Qn










b1




Q1



b0
= −Tr(AQk+1 )/(n − k)
= AQk+1 + bk Idn
..
.
= −Tr(AQ2 )/(n − 1)
= AQ2 + b1 Idn
= −Tr(AQ1 )/n.
Alors pour tout k on a ak = bk .
Preuve. Les coefficients de Com(XIdn −A) sont des polynômes de degré n−1
en X. Posons
Com(XIdn − A) = Q0n X n−1 + Q0n−1 X n−2 + · · · Q02 X + Q01 ,
où les Q0i ∈ Mn,n (K). On a
(XIdn −A)Com(XIdn −A) = det(XIdn −A)Idn = χA (X)Idn =
n
X
k=0
avec an = 1. Par identification, on
 0
=
 Qn
Q0k − AQ0k+1 =

−AQ01
=
obtient
Idn
ak Idn pour 1 ≤ k ≤ n − 1
a0 Idn
ak X k Idn ,
5.1. POLYNÔME CARACTÉRISTIQUE
53
Mais d’un autre côté, en identifiant la trace de Com(XIdn −A) et dχA (X)/dX
(voir lemme 5.1) on a
Tr(Q0n ) = n
Tr(Q0k ) = kak pour 1 ≤ k ≤ n − 1
On obtient ainsi les formules
an−1 = −Tr(A)
ak
= −Tr(AQ0k+1 )/(n − k) pour 0 ≤ k ≤ n − 2.
Ainsi les Q0i et les ai sont égaux aux Qi et bi du théorème et on a la conclusion.
Remarque 5.3. On peut vérifier que
k
an = 1 et an−k
1X
=−
an−k−j Tr(Aj ),
k j=1
pour tout k > 0. Ceci donne une formule explicite (dite formule des traces)
et un autre programme nécessitant le calcul préliminaire des Tr(Aj ).
Preuve. (de la remarque). Notons ck les coefficients obtenus par la formule
des traces et bk ceux que renvoie la méthode de Souriau. On a
cn = bn = 1 et Qn = Idn
à l’étape initiale. Supposons que l’on ait
cn−k = bn−k
et Qn−k = bn Ak + · · · + bn−k Idn
pour n > k ≥ 0. Alors bn−k−1 = −Tr(AQn−k )/(k + 1) et Qn−k−1 = AQn−k +
bn−k−1 Idn d’où l’on tire
1
bn−k−1 = −
Tr(bn Ak+1 + · · · + bn−k A)
k+1
k+1
1 X
= −
bn−1−k+j Tr(Aj )
k + 1 j=1
k+1
1 X
= −
cn−1−k+j Tr(Aj )
k + 1 j=1
= cn−k−1 ,
et la première relation est vraie pour n − k − 1. De même
Qn−k−1 = A(bn Ak + · · · + an−k Idn ) + bn−k−1 Idn
= bn Ak+1 + · · · + bn−k−1 Idn ,
et la seconde relation est vraie pour n − k − 1.
54
CHAPITRE 5. CALCULS EFFECTIFS DIVERS
5.2
5.2.1
Valeurs propres
Méthode des puissances
Commençons par un cas particulier de la méthode dite des puissances.
Théorème 5.4. Soit A ∈ Mn,n (K) et supposons qu’il existe une seule valeur
propre λ de A telle que |λ| = ρ(A) (elle peut être multiple mais il n’y en
a pas d’autre de même module). Soit X (0) un vecteur1 non orthogonal au
sous-espace propre de At pour λ, vérifiant en outre k X (0) k= 1. Posons
Y (k+1) = AX (k)
et X (k+1) =
1
kY
(k+1)
k
Y (k+1) .
Alors
1. limk→∞ k Y (k) k= ρ(A).
(k+1)
(k)
/Xj .
2. Il existe 1 ≤ j ≤ n tel que λ = limk→∞ Yj
3. La suite (λ/|λ|)k X (k) k converge vers un vecteur propre de A pour λ,
unitaire.
Preuve. Pour simplifier, nous établirons la preuve sous l’hypothèse que A est
diagonalisable et λ valeur propre simple. Le cas général se traite globalement
de la même manière. On a donc
|λ| = |λ1 | > |λ2 | ≥ · · · ≥ |λn | ≥ 0.
Notons (fi ) une base de vecteurs propres associés aux λi . Il est facile de voir
que
1
X (k) =
(5.1)
k
Ak X (0)
Posons
X
(0)
=
n
X
k
Ak X (0) .
ai fi
i=1
avec ai ∈ K pour tout i. On a
k
A X
(0)
=
n
X
ai λki fi
i=1
= λ
1
un tel vecteur existe toujours.
k
n
λ k X
i
fi ,
a1 f1 +
ai
λ
i=2
5.2. VALEURS PROPRES
55
avec |λi /λ| < 1 pour i ≥ 2. On en déduit
1 k (0)
A X = a1 f1 .
k→∞ λk
lim
(5.2)
Soit Y un vecteur propre de At pour λ. Le vecteur Y est orthogonal aux fi
pour i ≥ 2. En effet on a alors
Y t Afi = Y t λi fi = λi (Y t fi )
et
Y t Afi = (At Y )t fi = (λY )t fi = λ(Y t fi )
et comme λ 6= λi ce n’est possible que si Y t fi = 0. On a donc
Y t X (0) = a1 Y t f1
et comme X (0) n’est pas orthogonal à au moins un tel Y on a
a1 6= 0.
De (5.2) on tire
Ak X (0) ∼k→∞ λk a1 f1
donc
k Ak X (0) k∼k→∞ |λ|k k a1 f1 k
et finalement par (5.1)
X
(k)
∼k→∞
λ k
1
a1 f1 .
|λ| k a1 f1 k
On en déduit le point 3.
Comme f1 est valeur propre pour λ, on a
AX (k) ∼k→∞ λ
λ
1
a1 f1 .
|λ| k a1 f1 k
D’où
lim k AX (k) k= |λ| = ρ(A)
k→∞
et le point 1.
Enfin si
1
a1 f1 = (p1 , p2 , . . . , pn )
k a1 f1 k
56
CHAPITRE 5. CALCULS EFFECTIFS DIVERS
on a
(k)
Xj
∼k→∞
λ k
pj ,
|λ|
(k+1)
Yj
∼k→∞
(k)
et si pj 6= 0 (il y en a au moins un), on aura Xj
en faisant le quotient
(k+1)
Yj
lim
=λ
k→∞ X (k)
j
λ k
λ
pj
|λ|
6= 0 pour k assez grand et
ce qui donne le point 2.
Remarque 5.5. Le même argument appliqué à A−1 , sous certaines hypothèses, permet aussi de calculer minλ∈Spec(A) |λ|. On parle alors de méthode
de la puissance inverse. De même, en travaillant avec A − λIdn où λ est une
constante fixée, on peut, sous certaines hypothèses, calculer la valeur propre
la plus éloignée ou la plus proche de λ.
5.2.2
Méthode de la déflation
On va supposer que les modules de toutes les valeurs propres de A sont
distincts :
|λ1 | > · · · > |λn |.
La méthode de la déflation est la suivante.
1. On utilise la méthode de la puissance pour déterminer λ1 et un vecteur
propre associé u1 .
2. On construit une matrice P ∈ GLn (K) telle que P u1 = e1 premier
vecteur de la base canonique.
3. On a alors
P AP −1 e1 = P Au1 = λ1 P u1 = λ1 e1
et e1 est vecteur propre associé à λ1 pour P AP −1 . Mais P AP −1 a les
mêmes valeurs propres que A et par ce qui précède on a


λ1 ∗ · · · ∗
0



−1
P AP =  ..
.
.
A1 
0
4. A1 ∈ Mn−1,n−1 (K) a pour valeurs propres λ2 , . . . , λn . On recommence
le processus avec A1 et on obtient λ2 .
5. En continuant on obtient toutes les valeurs propres de A.
5.2. VALEURS PROPRES
5.2.3
57
Méthode QR
Nous aborderons plus tard une autre méthode qui peut, sous certaines
hypothèses donner toutes les valeurs propres de A. Mais avant de décrire
cette méthode il faut savoir ce qu’est la décomposition QR, notion qui sera
abordée dans la parie consacrée aux espaces euclidiens.
58
CHAPITRE 5. CALCULS EFFECTIFS DIVERS
Chapitre 6
Espaces euclidiens, généralités
6.1
introduction
Définition 6.1. Soit E un R-espace vectoriel de dimension finie.
1. Une forme bilinéaire b sur E est une application de E × E dans R telle
que si x ∈ E est fixé y 7→ b(x, y) est une forme linéaire sur E et telle
que si x ∈ E est fixé y 7→ b(y, x) est une forme linéaire sur E.
2. Une telle forme est dite symétrique si b(x, y) = b(y, x) pour tout (x, y) ∈
E × E.
3. Une forme quadratique q sur E est une application de E dans R telle
que l’application b définie par
1
b(x, y) =
q(x + y) − q(x) − q(y)
2
soit une forme bilinéaire (nécessairement symétrique) et telle que pour
tout λ ∈ R et tout x ∈ E on ait
q(λx) = λ2 q(x).
b est dite forme bilinéaire associée à q.
Exemple 6.2. Exemples élémentaires.
• E = R, q(x) = x2 , b(x, y) = xy.
2
• E = C, q(x) = |x|
y) = (xy + xy)/2 = <(xy).
P, b(x,
n
• E = R , q(x) = λRi x2i , où (λ1 , . . . , λn ) ∈ Rn .
1
• E = Rn [X], q(P ) = 0 P 2 (t)dt.
Dans tout ce qui suit, E est un R-espace vectoriel de dimension finie.
Proposition 6.3. On a les propriétés suivantes.
59
60
CHAPITRE 6. ESPACES EUCLIDIENS
1. Soit q une forme quadratique sur E. Soit b la forme bilinéaire associée
à q. Pour tout x ∈ E on a
q(x) = b(x, x).
2. Soit b une forme bilinéaire symétrique sur E. L’égalité q(x) = b(x, x)
définit une forme quadratique à laquelle b est associée. On dit aussi que
q est associée à b.
3. Soit q une forme quadratique sur E. Soit b la forme bilinéaire associée
à q. Pour tout (x, y) ∈ E × E on a
1
b(x, y) = (q(x + y) + q(x − y)).
4
4. Soit q une forme quadratique sur E. Soit b la forme bilinéaire associée
à q. Pour tout (x, y) ∈ E × E on a
q(x + y) + q(x − y) = 2(q(x) + q(y)).
Équation connue sous le nom d’égalité du parallélogramme.
Preuve. Élémentaire.
Définition 6.4. Définitions complémentaires.
1. Une forme quadratique q sur E est positive si pour tout x on a q(x) ≥ 0.
2. Une forme quadratique q sur E est définie positive si pour tout x 6= 0
on a q(x) > 0.
3. Une forme bilinéaire b sur E est un produit scalaire sur E si la forme
quadratique associée à b est définie positive.
Proposition 6.5. Soit q une forme quadratique définie positive sur E et
soit b la forme bilinéaire associée à q. Si x ∈ E vérifie b(x, y) = 0 pour tout
y ∈ E, alors x = 0.
Preuve. En effet b(x, x) = q(x) = 0.
Théorème 6.6. (Inégalité de Cauchy-Schwartz). Soit q une forme quadratique définie positive sur E et soit b la forme bilinéaire associée à q. Pour
tout (x, y) ∈ E × E on a
b(x, y)2 ≤ q(x)q(y).
De plus on a égalité si et seulement si x et y sont linéairement dépendants.
6.1. INTRODUCTION
61
Preuve. Si y = 0, l’inégalité est triviale. Supposons y 6= 0 et donc q(y) > 0.
Soit P ∈ R[t] défini par P (t) = q(x + ty). On a P (t) ≥ 0 pour tout t. Or il
est facile de voir que
P (t) = t2 q(y) + 2tb(x, y) + q(x).
Ce polynôme de degré 2 est de signe constant et son discriminant est donc
négatif ou nul. Ici, cela se traduit par
b(x, y)2 − q(x)q(y) ≤ 0,
ce que l’on veut.
Supposons maintenant qu’on ait l’égalité. Si y 6= 0, le discriminant de P est
nul, P a une racine double et donc qu’il existe t tel que q(x + ty) = 0, ce qui
implique x + ty = 0 et la relation de dépendance escomptée. Par ailleurs, si
y = 0, x et y sont évidemment dépendants.
Réciproquement, si y = 0 l’égalité est triviale. Si y 6= 0 et si x et y sont
liés on a x = ty pour un certain t ∈ R, d’où q(x)q(y) = t2 q(y)2 et b(x, y) =
tb(y, y) = tq(y) d’où l’égalité voulue.
Remarque 6.7. L’inégalité de Cauchy-Schwartz est encore vraie si l’on suppose seulement q positive (voir la preuve ci-dessus en traitant le cas q(y) = 0
à part encore à l’aide de P ). La seconde assertion en revanche n’est pas
nécessairement vraie.
Proposition 6.8. Soit q une forme quadratique définie positive sur E. Posons pour tout x ∈ E
p
k x k= q(x).
Alors k k est une norme sur E.
Preuve. Seule l’inégalité triangulaire est non triviale. Mais k x + y k≤k x k
+ k y k équivaut par élévation au carré à
p
q(x + y) ≤ q(x) + q(y) + 2 q(x)q(y)
et comme q(x + y) = q(x) + q(y) + 2b(x, y) cela équivaut à
p
b(x, y) ≤ q(x)q(y).
p
Or l’inégalité de Cauchy-Schwartz implique |b(x, y)| ≤ q(x)q(y) donc le
résultat.
Définition 6.9. Un R-espace vectoriel de dimension finie muni d’une forme
quadratique définie positive (ou d’un produit scalaire) est dit euclidien.
62
CHAPITRE 6. ESPACES EUCLIDIENS
Exemple 6.10. L’espace Rn muni de b(x, y) =
euclidien standard) est un espace euclidien
P
xi yi (produit saclaire
Proposition 6.11. Soit E un espace euclidien de dimension n. Soit F un
sous-espace vectoriel de E. Alors
F ⊥ = {y ∈ E; b(x, y) = 0 pour tout x ∈ F }
est un sous-espace vectoriel de E appelé orthogonal de F et
F ⊕ F ⊥ = E.
Preuve. Exercice.
Dans un espace euclidien E de dimension n et de produit scalaire b, une
famille (x1 , . . . , xk ) ∈ E k est dite orthogonale si pour tout i et tout j 6= i, on
a b(xi , xj ) = 0. Il est facile de voir que l’on a nécessairement k ≤ n.
Corollaire 6.12. Soit E un espace euclidien de dimension n. E admet une
base (ei ) dite orthonormale, vérifiant b(ei , ej ) = δi,j où δ est le symbole de
Kronecker.
Preuve. Exercice.
Définition 6.13. Soit E euclidien de dimension n et soit b son produit
scalaire. Soit (ε1 , . . . , εn ) une famille d’éléments de E. La matrice de Gram
de cette famille est la matrice symétrique M = (mi,j ) ∈ Sn (R) ⊂ Mn,n (R)
définie par mi,j = b(εi , εj ). Si (ε1 , . . . , εn ) est une base de E on parle aussi de
matrice de Gram associée à b dans la base en question.
Proposition 6.14. Soient E euclidien de dimension n, b son produit scalaire
et q la forme quadratique associée. Soient (εP
bas e de E et Q
1 , . . . , εn ) une P
la matrice de Gram correspondante. Si x =
xi εi et y =
yi εi sont deux
éléments quelconques de E on a
b(x, y) = Y t QX = X t QY,
où X et Y désignent les vecteurs (xi ) et (yi ). En particulier q(x) = X t QX.
Preuve. On a
X
X
b(x, y) = b
x i εi ,
y j εj
X
=
xi yj b(εi , εj )
i,j
par bilinéarité de b.
6.1. INTRODUCTION
63
Proposition 6.15. Sous les mêmes hypothèses, si (η1 , . . . , ηn ) est une autre
base de E et si P est la matrice de passage dont les colonnes expriment les
coordonnées des ηj dans (εi ), alors la matrice de Gram de (η1 , . . . , ηn ) est
P t QP .
Preuve. On a
X
X
b(ηi , ηj ) = b
pk,i εk ,
pl,j εl
X
=
pk,i pl,j b(εk , εl )
k,l
=
X
pk,i pl,j qk,l ,
k,l
et il est facile de voir que
X
pl,j qk,l = (QP )k,j
l
puis que
(P t QP )i,j =
X
pk,i pl,j qk,l .
k,l
Remarque 6.16. Rappelons que si X est le vecteur des coordonnées d’un
élément de E dans (εi ), ce vecteur a pour coordonnées P −1 X dans (ηj ).
Proposition 6.17. Soit E euclidien de dimension n et soit (ε1 , . . . , εn ) une
famille de E. Soit M sa matrice de Gram.
1. Si cette famille est liée, on a det M = 0.
2. Si elle est libre on a det M > 0 et M est définie positive, i.e. X t M X > 0
pour tout X ∈ Rn non nul.
P
Preuve. Si la famille est liée, il existe (λ1 , . . . , λn ) ∈ Rn tel que
λj εj = 0.
Ceci implique que pour tout j, si l’on note Mj la j-ième colonne de M on a
X
X
X
λj M j =
λj b(εi , εj ) = b(εi ,
λj εj ) = 0.
j
j
i
j
i
Les colonnes de M sont liées et det M = 0.
Supposons maintenant que la famille soit libre. C’est donc une base de E.
Soit (e1 , . . . , en ) une base orthonormée de E, qui existe par le corollaire 6.12.
La matrice de Gram de (ei ) est Idn et par la proposition 6.15, on a M = P t P
64
CHAPITRE 6. ESPACES EUCLIDIENS
où P est la matrice dont la j-ième colonne est constituée par les coordonnées
de εj dans la base (ei ). Elle est inversible. On a donc
det M = (det P )2 > 0.
Par ailleurs
X tM X = X tP tP X = Y tY
avec Y = P X. Mais Y t Y > 0 sauf si Y = 0 ce qui équivaut à X = 0 par
inversibilité de P . D’où la deuxième assertion.
6.2
Orthogonalisation de Schmidt
Dans tout ce qui suit E est un espace euclidien et l’on notera b(x, y) sous
la forme (x | y).
Définition 6.18. Si (bi ) est une base de E on dit que (b∗i ) est une base
orthogonale de Gram-Schmidt associée à (bi ) si
1. (b∗i ) est orthogonale pour ( | ) i.e. (b∗i | b∗j ) = 0 si i 6= j.
2. La matrice de passage de (bi ) à (b∗i ) est triangulaire supérieure à éléments diagonaux > 0.
Remarque 6.19. La seconde condition signifie que


b∗1 = a1,1 b1


 b∗ = a1,2 b1 + a2,2 b2
2
(6.1)
..

.


 b∗ = a b + · · · + a b
n
1,n 1
n,n n
avec ai,i > 0 pour tout i.
Remarque 6.20. On parle souvent d’orthonormalisée de Schmidt. Nous ne
le ferons pas ici car il y a en fait deux façons de normaliser :
1. Imposer que pour tout i on ait q(b∗i ) = 1 (l’orthonormalisation usuelle).
2. Imposer que dans (6.1) on ait ai,i = 1 pour tout i.
Théorème 6.21. Soit (bi ) une base de E.
1. Il existe une unique base orthogonale de Gram-Schmidt associée à (bi )
telle que dans (6.1) on ait ai,i = 1 pour tout i.
2. De même, il existe une unique base orthogonale de Gram-Schmidt associée à (bi ) telle que q(b∗i ) = 1 pour tout i.
6.2. ORTHOGONALISATION DE SCHMIDT
65
Preuve. Nous ne le ferons que pour le premier cas. L’autre preuve est identique.
Tout d’abord on a nécessairement b∗1 = b1 . Soit j ≥ 2 et supposons b∗1 , . . . , b∗j−1
construits. On doit avoir
b∗j
= bj +
j−1
X
x i bi .
i=1
Mais Vect(b1 , . . . , bj−1 ) = Vect(b∗1 , . . . , b∗j−1 ). On cherche donc un vecteur b∗j
de la forme
j−1
X
∗
yi b∗i .
bj = bj +
i=1
On désire en outre que ce vecteur vérifie (b∗j | b∗i ) = 0 pour tout i < j. Ceci
équivaut à
(bj | b∗i ) + yi (b∗i | b∗i ) = 0
pour tout i < j. On en déduit que
yi = −
(bj | b∗i )
.
(b∗i | b∗i )
Finalement il existe un et un seul vecteur convenable défini par
b∗j
j−1
X
(bj | b∗i ) ∗
b.
= bj −
∗
∗ i
(b
|
b
)
i
i
i=1
D’où la conclusion par induction.
p
Remarque 6.22. Si on voulait le cas (2) il suffirait de prendre les b∗i / (b∗i | b∗i ).
66
CHAPITRE 6. ESPACES EUCLIDIENS
Chapitre 7
Décompositions
7.1
Décomposition QR
Dans ce qui suit On (R) désigne le groupe des matrices orthogonales de
++
(R) l’espace vectoriel
Mn,n (R) i.e. les matrices O vérifiant Ot O = Idn et Tn,s
des matrices triangulaires supérieures de Mn,n (R) à éléments diagonaux >
0. Rappelons qu’une matrice O appartient à On (R) si et seulement si elle
transforme une base orthonormée pour le produit scalaire euclidien standard
de Rn en une base orthonormée. Son déterminant vaut nécessairement ±1.
Théorème 7.1. Soit M ∈ GLn (R). Alors il existe un unique couple (Q, R) ∈
++
(R) tel que M = QR.
On (R) × Tn,s
Preuve. Équipons Rn du produit scalaire euclidien standard
hx, yi =
n
X
xi yi .
i=1
Soit bi ∈ Rn les vecteurs colonnes de M . Comme M est inversible, ils constituent une base de Rn . Soit (b∗i ) une orthonormalisée au sens usuel de (bi )
(voir thórème 6.21, point 2). Notons R la matrice de passage des (bi ) aux
++
(b∗i ). On a R ∈ Tn,s
(R). Notons Q la matrice de passage des (b∗i ) aux (ei ),
où (ei ) est la base canonique de Rn . Cette matrice qui transforme une base
orthonormée pour b en une base orthnormée pour b est orthogonale. Comme
M peut être vue comme la matrice de passage des (bi ) aux (ei ) on a en fait
M = QR et la décomposition souhaitée.
Reste à prouver l’unicité. Si QR = Q0 R0 on a Q0−1 Q = R0 R−1 . Posons
Ω = Q0−1 Q. On a
++
Ω ∈ On (R) ∩ Tn,s
(R).
67
68
CHAPITRE 7. DÉCOMPOSITIONS
Or
(7.1)
++
On (R) ∩ Tn,s
(R) = {Idn },
et l’on a la conclusion. L’égalité (7.1) est facile car si M est dans l’intersection
on a
++
(R).
M t = M −1 ∈ Tn,s
Mais
++
M t ∈ Tn,i
(R)
++
où Tn,i
(R) désigne l’espace vectoriel des matrices triangulaires inférieures
de Mn,n (R) à éléments diagonaux > 0. On en déduit que M est diagonale
à éléments diagonaux positifs. On a alors M −1 = M t = M , M 2 = Idn ,
mi,i = ±1 et mi,i > 0 d’où la propriété voulue.
Corollaire 7.2. (Décomposition d’Iwasawa). Soit M ∈ GLn (R). Alors on
peut décomposer de façon unique M sous la forme M = QDU , avec Q ∈
On (R), D diagonale à éléments diagonaux > 0 et U triangulaire supérieure
à termes diagonaux valant 1.
Preuve. Application directe.
Corollaire 7.3. (Inégalité d’Hadamard). Soit M ∈ Mn,n (R). Alors on a
v
n uX
Y
u n 2
t
ai,j ,
| det M | ≤
i=1
j=1
et l’on peut permuter i et j dans somme et produit.
Preuve. Si M n’est pas inversible, c’est trivial. Sinon, soit M = QR la décomposition QR de M . On a
Y
det M = det Q det R = ± det R = ±
Ri,i .
Or, avec les notations de la preuve du théorème 7.1, Ri,i = hbi , b∗i i > 0. On
en déduit
n
Y
| det M | =
hbi , b∗i i
i=1
n
Y
p
≤
hbi , bi ihb∗i , b∗i i
≤
i=1
n
Y
i=1
p
hbi , bi i
7.2. DÉCOMPOSITION DE CHOLESKY
69
par Cauchy-Schwartz et car (b∗i ) est orthonormée pour h , i. On en tire
l’inégalité recherchée. La dernière remarque s’explique car det M = det M t .
7.2
Décomposition de Cholesky
Rappelons qu’une matrice symétrique M à coefficients réels est dite définie positive si la forme quadratique définie par M est définie positive, i.e. si
X t M X > 0 sauf si X = 0. Rappelons que l’on a déjà vu qu’une matrice de
Gram associée à une base de Rn est définie positive (voir proposition 6.17).
En fait la réciproque est exacte.
Théorème 7.4. Soit S ∈ Sn (R) définie positive. Alors il existe R triangulaire
supérieure telle que
S = Rt R.
Si de plus on impose ri,i > 0 pour tout i, alors R est unique.
Preuve. La matrice S symétrique est diagonalisable dans une base orthonormée (pour la norme euclidienne standard), i.e. il existe Ω ∈ On (R) et D
diagonale telles que
S = Ωt DΩ.
Ce résultat classique a été vu en L1 -L2 . La matrice S étant définie positive,
on a forcément di,ip> 0 pour tout i (prendre X = Ωt ei dans X t SX > 0). Soit
pour tout i, λi = di,i > 0 et posons
D0 = diag(λ1 , . . . , λn ).
On a
S = Ωt D02 Ω
= Ωt D0t D0 Ω
= B t B,
avec
B = D0 Ω ∈ GLn (R).
Soit QR la décomposition QR de B. On a alors
S = Rt Qt QR
= Rt R,
70
CHAPITRE 7. DÉCOMPOSITIONS
où R est triangulaire supérieure à termes diagonaux > 0. Ainsi R répond au
problème.
Passons à l’unicité. Supposons que
S = R1t R1 = R2t R2
où les Ri sont triangulaires supérieures à termes diagonaux > 0. Les Ri sont
inversibles et si l’on pose R = R1 R2−1 on peut écrire
Rt R = Idn ,
++
ce qui prouve que R ∈ On (R). Mais R1 et R2−1 appartiennent à Tn,s
(R) ce
++
qui implique R ∈ Tn,s (R). Ainsi
R ∈ On (R) ∩ Tn,s (R).
Mais ceci implique R = Idn (voir preuve du théorème 7.1), et l’on obtient
R1 = R2 .
Remarque 7.5. La première partie du théorème est encore vraie pour S
symétrique positive (voir preuve).
Définition 7.6. Soit S symétrique définie positive. On appelle décomposition de Cholesky de S toute factorisation de la forme Rt R avec R triangulaire
supérieure. Si les coefficients diagonaux de R sont > 0 on parle de décomposition de Cholesky positive.
Corollaire 7.7. Soit S symétrique définie positive. Il existe U triangulaire
supérieure à termes diagonaux valant 1 et D diagonale à termes diagonaux
> 0 telles que
S = U t DU.
En outre, il y a unicité de cette décomposition.
Preuve. Si R = (rij ), poser d = diag(rii ), D = d2 , U = d−1 R.
Remarque 7.8. Attention, les coefficients de D n’ont rien à voir avec les
valeurs propres de S. Soit par exemple
4 −1
S=
.
−1 4
Alors
R=
et
2 √
−1/2
15/2
0
D=
4
0
0 15/4
alors que
Spec(S) = {3, 5}.
7.3. LA MÉTHODE QR
7.3
71
La méthode QR
Il s’agit d’une procédure itérative permettant de déterminer les valeurs
propres d’une matrice. Donnons-en d’abord le principe. Soit A ∈ GLn (R).
Posons
A1 = A.
A1 admet une décomposition QR : A1 = Q1 R1 . Posons alors
A2 = R1 Q1 = Q−1
1 AQ1 .
A2 ∈ GLn (R) admet à son tour une décomposition QR : A2 = Q2 R2 . Posons
alors
A3 = R2 Q2 = (Q1 Q2 )−1 A(Q1 Q2 ).
Continuons ainsi. La formule générale est
Ak+1 = Rk Qk = (Q1 · · · Qk )−1 A(Q1 · · · Qk ),
où Qk Rk = Ak .
Alors sous certaines hypothèses, la suite (Ak ) donne les valeurs propres de
A.
Théorème 7.9. Supposons que A ∈ GLn (R) ait ses valeurs propres de modules distincts :
|λ1 | > |λ2 | > · · · > |λn |.
A est en particulier diagonalisable sur R et il existe P ∈ GLn (R) telle que
A = P DP −1 où D = diag(λ1 , . . . , λn ). Supposons en outre que P −1 admette
une décomposition LU . Alors
lim (Ak )i,i = λi
k→∞
et
lim (Ak )i,j = 0 si 1 ≤ j < i ≤ n.
k→∞
Preuve. Donnons ici les grandes étapes de la preuve. On pose
Q0k = Q1 Q2 . . . Qk .
• Montrer que
Ak = Q0k Rk0
avec Rk0 = Rk Rk−1 . . . R1 .
• Soit QR la décomposition QR de P . Montrer que
Ak = QR(Dk LD−k )Dk U
et
lim Dk LD−k = Idn .
k→∞
72
CHAPITRE 7. DÉCOMPOSITIONS
• On pose Dk LD−k = Idn + Fk . Montrer que
RDk LD−k = (Idn + RFk R−1 )R
et que pour k assez grand, Idn + RFk R−1 est inversible.
• On note alors Q̃k R̃k la décomposition QR de Idn + RFk R−1 . Montrer
qu’il existe une suite extraite (Q̃φ(k) ) qui converge vers un élément Q̃ de
On (R) et que (R̃φ(k) ) converge vers une matrice triangulaire supérieure
R̃ vérifiant
Idn = Q̃R̃.
• En déduire que
Q̃ = R̃ = Idn
et qu’en fait
lim Q̃k = Idn
k→∞
et
lim R̃k = Idn .
k→∞
• Montrer que
Ak = QQ̃k R̃k RDk U
et en déduire qu’il existe Dk diagonale à termes diagonaux ±1 telle que
Q0k = QQ̃k Dk .
• Montrer que
Ak+1 = Dk Q̃tk RDR−1 Q̃k Dk .
• Montrer que

lim
k→∞
Q̃tk RDR−1 Q̃k
λ1

0
=.
 ..
0
∗

··· ∗
.
..
. .. 
λ2

,
..
..
. ∗
.
· · · 0 λn
où lim est un abus de langage car la partie “étoilée” peut être instable.
• Conclure.
Remarque 7.10. On peut affaiblir les hypohèses du théorème et étendre le
résultat au cas complexe. On est alors amené à utiliser une généralisation de la
t
décomposition QR, avec Q unitaire (Q = Q−1 ) et R triangulaire supérieure
à termes diagonaux réels positifs. On peut également l’étendre à des matrices
non inversibles (R peut avoir des termes diagonaux nuls).
Chapitre 8
Méthodes de calcul
8.1
Méthodes de calcul de la décomposition de
Cholesky
Il y a plusieurs méthodes pour obtenir la décomposition S = Rt R. Passonsen quelques-unes en revue.
8.1.1
Gram-Schmidt
La première procédure consiste à orthonormaliser au sens usuel la base
canonique (ei ) pour le produit scalaire défini par S. Si (e∗i ) est la base obtenue
et si U est la matrice dont les colonnes sont les coordonnées des (e∗i ) dans la
base (ei ) alors on a
U t SU = Idn .
On en déduit que R = U −1 convient.
Exemple 8.1. Reprenons
S=
4 −1
.
−1 4
Notons (e01 , e02 ) la base orthonormalisée comme dans la preuve du théorème
6.21. On a trivialement e01 = e1 = (1, 0). Pour e02 on a la formule
e02 = e2 −
(e2 | e01 ) 0
e
(e01 | e01 ) 1
où (x | y) = xt Sy. On en tire
1 1
e02 = e2 + e1 =
,1 .
4
4
73
74
CHAPITRE 8. MÉTHODES DE CALCUL
Finalement
e∗1 = p
et
1
(e01 | e01 )
1
e∗2 = p
(e02 | e02 )
On a donc
U=
e02 =
8.1.2
1
2
,0
1
2 √ ,√
.
2 15 15
√ 1/2 1/2√ 15
.
0
2/ 15
On en déduit
R=U
e01 =
−1
=
2 √
−1/2
.
0
15/2
Identification
Il s’agit de résoudre
si,j =
n
X
rk,i rk,j ,
k=1
avec ri,j = 0 si i > j et accessoirement ri,i > 0. On commence par résoudre
les équations issues des identifications des coefficients de la première ligne.
On a alors
2
r1,1
= s1,1 , r1,1 r1,2 = s1,2 , . . . , r1,1 r1,n = s1,n ,
ce qui donne successivement
s1,n
s1,2
√
, . . . , r1,n =
.
r1,1 = s1,1 , r1,2 =
r1,1
r1,1
On passe ensuite à la deuxième ligne, etc.
Si les lignes 1, 2, . . . , m − 1 ont été traitées donnant les ri,j pour i < m, la
ligne m donne
v
u
m−1
X
u
rm,m = tsm,m −
r2
k,m
k=1
et pour j > m,
rm,j =
1 rm,m
sm,j −
m−1
X
rk,m rk,j .
k=1
Exemple 8.2. Reprenons le même exemple que précédemment. On obtient
2
r1,1
r1,1 r1,2
4 −1
r1,1 0
r1,1 r1,2
=
=
.
2
2
−1 4
r1,2 r2,2
0 r2,2
r1,1 r1,2 r1,2
+ r2,2
√
On en tire successivement r1,1 = 2, r1,2 = −1/2 et r2,2 = 15/2.
8.1. CHOLESKY PRATIQUE
8.1.3
75
Variante
Une variante consiste à chercher la décomposition S = U t DU avec D
diagonale à termes diagonaux > 0 et U triangulaire supérieure à termes
diagonaux valant 1. Cela conduit à résoudre
si,j =
n
X
dk uk,i uk,j
k=1
avec ui,i = 1, ui,j = 0 si i > j et di > 0. Par analogie avec l’approche
précédente, on obtient les relations
dm = sm,m −
m−1
X
dk u2k,m
k=1
et si j > m,
m−1
um,j
X
1 sm,j −
dk uk,m uk,j .
=
dm
k=1
Pour obtenir R il suffit de calculer
p
p
R = diag( d1 , . . . , dn )U.
L’avantage est le suivant :
• on ne calcule pas de racines carrées en cours de route ;
• cela marche aussi bien pour S symétrique inversible, non nécessairement définie positive (les di ne sont pas forcément positifs). On se
content alors bien sûr de la décomposition U t DU , S n’admettant pas
de décomposition de Cholesky si l’un des di est négatif.
Exemple 8.3. Reprenons encore le même exemple. On veut
d1
d1 u1,2
4 −1
1 0
d1 0
1 u1,2
=
=
.
d1 u1,2 d1 u21,2 + d2
−1 4
u1,2 1
0 d2
0 1
On en tire d1 = 4, u1,2 = −1/4 et d2 = 15/4. D’où finalement
R=
2 √0
2 √
−1/2
1 −1/4
=
.
0
1
0
15/2
0
15/2
76
CHAPITRE 8. MÉTHODES DE CALCUL
8.1.4
Méthode de Gauss
Cette méthode consiste à travailler directement sur la formule définissant
la forme quadratique associée à S :
X
q(x1 , . . . , xn ) =
si,j xi xj .
i,j
Le principe est le suivant. Suivant les k croissants
• si sk,k 6= 0, on écrit
X
X si,k 2 X si,k 2 2
xi −
xi
.
sk,k xk + 2
si,k xi xk = sk,k xk +
s
s
k,k
k,k
i>k
i>k
i>k
et l’on est ramené à décomposer une forme quadratique en les xi avec
i > k.
• si sk,k = 0, on considère un couple (k, m) avec m > k tel que sk,m 6= 0.
On pose alors
02
xk xm = x02
k − xm
où x0k =
xk + xm
xk − xm
et x0m =
,
2
2
et on fait le changement de variable xk = x0k + x0m et xm = x0k − x0m
dans l’expression de la forme quadratique. On obtient alors une nouvelle
forme q 0 pour laquelle s0k,k 6= 0 (c’est 2sk,m ) ainsi que s0m,m 6= 0 (c’est
−2sk,m ). On recommence alors comme plus haut. À la fin on remplace
x0k et x0m par leurs valeurs en fonction de xk et xm .
On peut alors déduire par simple lecture de la décomposition obtenue les
valeurs de D, U et R. L’avantage de cette procédure est qu’elle marche également si S est symétrique non inversible et pas forcément positive.
Exemple 8.4. Avec l’exemple déjà vu cela donne :
1 2
1 2
2
2
4x1 − 2x1 x2 + 4x2 = 4 x1 − x2 − x2 + 4x22
4
16
2
15
1
= 4 x1 − x2 + x22 .
4
4
On a donc
D=
4
0
0 15/4
et U =
1 −1/4
,
0
1
ce qui donne
R=
2 √0
2 √
−1/2
1 −1/4
=
.
0
1
0
15/2
0
15/2
8.2. MOINDRES CARRÉS
77
Donnons un autre exemple pour illustrer le second point.
Exemple 8.5. Soit


0 1 1
S = 1 0 1 .
1 1 0
On a
q(x1 , x2 , x3 ) = 2x1 x2 + 2x1 x3 + 2x2 x3
0
0
0
0
02
= 2(x02
1 − x2 ) + 2(x1 + x2 )x3 + 2(x1 − x2 )x3
où l’on a posé
x01 =
x1 + x2
2
et x02 =
x1 − x2
.
2
On en déduit
0
02
q(x1 , x2 , x3 ) = 2x02
1 + 4x1 x3 − 2x2
2
= 2(x01 + x3 )2 − 2x02
2 − 2x3
x + x
2
x − x 2
1
2
1
2
= 2
+ x3 − 2
− 2x23
2
2
1
1
2
=
(x1 + x2 + 2x3 ) − (x1 − x2 )2 − 2x23 .
2
2
Dans ce cas, q n’est pas définie positive mais on a au moins une décomposition
S = U t DU avec




1 1 2
1/2
0
0
U = 1 −1 0 et D =  0 −1/2 0  .
0 0 1
0
0
−2
Remarquons qu’ici U n’est pas triangulaire. En revanche, par rapport aux
variables auxiliaires x01 , x02 et x3 , la décomposition obtenue est bien triangulaire.
8.2
Moindres carrés
Soit M ∈ Mn,p (R) avec n ≥ p. Supposons pour simplifier que les p colonnes de M , notées Ci , soient indépendantes, i.e. que M soit de rang p. Soit
B ∈ Rn .
Problème. On cherche X ∈ Rp tel que
k M X − B k soit minimal.
78
CHAPITRE 8. MÉTHODES DE CALCUL
Théorème 8.6. Le vecteur X est solution du problème si et seulement si
l’une des deux propositions suivantes est vérifiée.
1. Pour tout j, 1 ≤ j ≤ p, (Cj | M X − B) = 0 ;
2. M t M X = M t B.
Preuve. Considérons dans Rn la projection orthogonale p sur F = Vect(C1 , . . . , Cp ).
Comme p(B) − B est orthogonal à F qui contient M X pour tout X, par Pythagore on a
k M X − B k2 =k M X − p(B) k2 + k p(B) − B k2 ,
quel que soit X ∈ Rn . Ainsi k M X − B k est minimal si et seulement si
M X = p(B) ce qui équivaut encore à
M X − B est orthogonal à F.
Or
M X − B est orthogonal à F ⇐⇒
⇐⇒
⇐⇒
⇐⇒
(M X − B | Cj ) = 0, ∀j
Cjt (M X − B) = 0, ∀j
M t (M X − B) = 0
M t M X = M t B.
Lemme 8.7. La matrice M t M ∈ Mp,p (R) est symétrique définie positive.
Preuve. On a évidemment X t M t M X = (M X)t M X ≥ 0 pour tout X ∈ Rp .
De plus si X t M t M X = 0 on a k M X k2 = 0 et
X ∈ KerM.
Mais comme M est de rang p, KerM ⊆ Rp est de dimension p − p = 0 par le
théorème du rang. On a donc KerM = {0} et X = 0.
Conséquence. On a une méthode de résolution pratique et effective.
1. On veut résoudre M t M X = M t B ;
2. On calcule M t M = S qui est définie positive et M t B = Y ;
++
3. On calcule T ∈ Tp,s
telle que T t T = S (décomposition de Cholesky
positive) ;
4. On résout T t T X = Y en deux temps : T t Z = Y puis T X = Z. Il s’agit
de deux systèmes triangulaires faciles à résoudre.
8.3. LA MÉTHODE DE HOUSEHOLDER
79
Exemple 8.8. Soient


2 1
M = 1 2
1 1
 
1

et B = 2 .
0
On cherche X ∈ R2 tel que
k M X − B k soit minimal.
On a
t
S=M M =
6 5
5 6
4
et Y = M B =
.
5
t
On cherche une décomposition de Cholesky de S et on obtient facilement
√ √
6 p
5/ 6
t
.
S = T T avec T =
0
11/6
La résolution de T t Z = Y conduit à
√ 4/
p 6
Z=
5 2/33
et celle de T X = Z conduit à
X=
−1/11
.
10/11
Et
√
inf 2 k M X − B k=
X∈R
8.3
99
.
11
La méthode de Householder
Revenons à l’orthogonalisation de Schmidt ou encore à la décomposition
QR. On sait que cette dernière permet aussi d’obtenir celle de Cholesky (voir
la sous-section 8.1.1). La preuve fournit une première méthode, réputée numériquement instable : si les bi sont les colonnes de la matrice dont on cherche
la décomposition, on calcule l’orthonormalisée de Schmidt de la famille (bi )
notée (b∗i ). Alors Q est la matrice de passage des (b∗i ) à la base canonique et
R est la matrice de passage des (bi ) aux (b∗i ).
Nous allons ici développer une méthode différente, stable et efficace pour
obtenir la décomposition QR. Dans ce qui suit, ( | ) désigne le produit scalaire
euclidien standard de Rn .
80
8.3.1
CHAPITRE 8. MÉTHODES DE CALCUL
Préliminaires
Proposition 8.9. Soit V 6= 0 un vecteur de Rn . Soit
H = (RV )⊥ = {X ∈ Rn ; (X | V ) = X t V = V t X = 0}
l’hyperplan orthogonal à V . Si X ∈ Rn , le symétrique de X par rapport à H
parallèlement à V est donné par
SV (X) = X − 2
(X | V )
V.
(V | V )
La matrice de la symétrie considérée est
PV = Idn −
2
V V t.
V tV
Elle est symétrique et orthogonale.
Preuve. Soit Y le projeté (orthogonal) de X sur H parallèlement à V . On a
X = Y + kV où k ∈ R et (Y | V ) = 0. Ceci implique
k=
(X | V )
(V | V )
et
SV (X) = Y − kV = X − 2kV = X − 2
(X | V )
V.
(V | V )
Si PV est la matrice correspondante
2
V tX
t
PV X = X − 2 t V = Idn − t V V X
V V
V V
car V t XV = V V t X. D’où
PV = Idn −
2
V V t.
t
V V
Elle est symétrique car PVt = PV . De plus comme la symétrie est involutive
on a PV2 = PVt PV = Idn , ce que l’on peut vérifier directement :
PV2 = Idn +
4
t V )2
V V tV V t −
4
VVt
t
V V
(V
4
4
= Idn + t V V t − t V V t
V V
V V
= Idn .
8.3. LA MÉTHODE DE HOUSEHOLDER
81
Définition 8.10. La matrice PV porte le nom de matrice de Householder.
Lemme 8.11. Soit C ∈ Rn quelconque. Il existe une matrice de Householder
P telle que P C soit colinéaire à e1 = (1, 0, . . . , 0).
Preuve. Notons k k la norme euclidienne. Si C = 0, c’est trivial. Sinon, on
veut avoir P C = ke1 , ce qui implique
k ke1 k=k P C k=k C k
car P est orthogonale. Donc k = ± k C k et comme V = C − P C peut
convenir pour définir P , on peut prendre
V = C± k C k e1 .
Vérifions qu’un tel V convient. Soit c1 la première coordonnée de C. On a
k V k2 = 2 k C k2 ±c1 k C k
et
2
V V tC
k V k2
2
= C−
V (k C k2 ±c1 k C k)
2
kV k
= C −V
= ∓ k C k e1 .
PV C = C −
Ainsi V convient bien.
8.3.2
La méthode
Ceci nous conduit à la description de l’algorithme. Soit A ∈ GLn (R) la
matrice que l’on veut décomposer sous la forme QR.
• Soit A1 la première colonne (non nulle) de A. Par le lemme 8.11, il
existe une matrice de Houseolder P1 ∈ On (R) telle que P1 A1 = ke1
avec k ∈ R. On a alors


r1,1 ∗ · · · ∗
 0



P1 A =  ..

(1)
 .

A
0
où r1,1 6= 0 et où A(1) est une matrice de GLn−1 (R). En effet det A =
r1,1 det A(1) 6= 0.
82
CHAPITRE 8. MÉTHODES DE CALCUL
• Le même lemme appliqué à A(1) montre qu’il existe une matrice de
Houseolder d’ordre n − 1 notée P20 telle que


r2,2 ∗ · · · ∗
 0



0 (1)
P2 A =  ..

(2)

 .
A
0
où r2,2 6= 0 et où A(2) est une matrice de GLn−2 (R). Posons


1 0 ··· 0
0



P2 =  ..
.
0
.

P2
0
On a alors P2 ∈ On (R) et
r1,1 ∗ · · ·
 0 r2,2 ∗
 .

0
P2 P1 A =  ..
 .
..
 ..
.
0
0

···
···
A(2)

∗
∗


.


• Et on continue. Au bout de n − 1 étape on a obtenu


r1,1 ∗ · · ·
···
∗
.. 

.
 0 r2,2 . .
. 
 .
.. 
0
.
.
..
..
Pn−1 · · · P2 P1 A = R = 
0
. 
 ..
,
 .

..
...
 ..
.
rn−1,n−1 ∗ 
0
0 ···
0
rn,n
où les ri,i sont non nuls et où les Pi ∈ On (R). Si on pose
Q0 = (Pn−1 · · · P2 P1 )−1 = P1 P2 · · · Pn−1 ∈ On (R)
on a presque la décomposition QR recherchée. Le seul paramètre négligé
est celui du signe des ri,i , mais cela se règle facilement en considérant
la matrice Ω ∈ On (R) définie par


sgn(r1,1 )
0
···
0
..
.


0
sgn(r2,2 ) . .
.


Ω=
,
..
..
..


.
.
.
0
0
···
0 sgn(rn,n )
8.3. LA MÉTHODE DE HOUSEHOLDER
83
où sgn(x) = 1 si x > 0, et −1 si x < 0. On a alors la décomposition
voulue en posant Q = Q0 Ω et R = ΩR0 .
Remarque 8.12. La méthode est stable car les Pi sont orthogonales donc
de faible conditionnement. Précisons. On a
p
k P i k2 =
ρ(Pit Pi )
p
ρ(Idn )
=
= 1.
Comme Pi−1 = Pi , on en déduit que
Cond2 (Pi ) = 1.
Or on sait que si k k est induite, ce qui est le cas de k k2 , on a
Condk
k
≥ 1.
On a donc ici un conditionnement optimal.
84
CHAPITRE 8. MÉTHODES DE CALCUL
Chapitre 9
Polynômes orthogonaux
9.1
Généralités
On étend facilement la notion de produit scalaire à un R-espace vectoriel E quelconque : forme bilinéaire définie positive. Et dans ce qui suit, on
s’intéresse au cas E = R[X]. Soit ( | ) un produit scalaire sur R[X].
Théorème 9.1. Il existe une unique suite de polynômes Pn ∈ R[X] vérifiant :
1. Pour tout n, Pn est unitaire et de degré n ;
2. Si m 6= n on a (Pm | Pn ) = 0.
Preuve. Il s’agit bien sûr d’une application de Gram-Schmidt à la nuance
près qu’on ne travaille pas ici en dimension finie. Refaisons pour le plaisir la
preuve dans ce cas particulier. On a évidemment P0 = 1. Supposons que les
Pm pour m < n aient été construits (n ≥ 1). La famille (Pm )m<n est une base
de Rn−1 [X] pour une raison évidente de degré. Le polynôme Pn se décompose
sous la forme
n−1
X
n
Pn = X +
λ j Pj .
j=0
On doit avoir (Pn | Pm ) = 0 pour tout m < n ce qui équivaut à
(X n | Pm ) + λm (Pm | Pm ) = 0.
Le polynôme recherché existe et est unique. Il est donné par
n−1
X
(X n | Pj )
Pj .
Pn = X −
(Pj | Pj )
j=0
n
Définition 9.2. La suite (Pn ) définie par le théorème 9.1 est appelée suite
des polynômes orthogonaux associés à ( | ).
85
86
CHAPITRE 9. POLYNÔMES ORTHOGONAUX
9.2
Un cas particulier
Soient a, b ∈ R tels que a < b (on peut avoir a = −∞ ou b = ∞). Soit ω
une fonction définie sur ]a, b[ à valeurs réelles, vérifiant
1. ω est continue sur ]a, b[ ;
2. Pour tout x ∈]a, b[, ω(x) ≥ 0 ;
3. ω n’est pas identiquement nulle ;
4. Pour tout entier n ≥ 0, l’intégrale
Rb
a
ω(x)xn dx converge.
Si P, Q ∈ R[X], on pose
Z
(P | Q)ω =
b
ω(x)P (x)Q(x)dx.
a
Proposition 9.3. ( | )ω est bien définie et c’est un produit scalaire sur
R[X].
Preuve. La forme considérée est bien définie par (4) et développement. Elle
est trivialement symétrique et bilinéaire. Enfin par (2) on a
(P | P )ω ≥ 0
pour tout P ∈ R[X]. Reste à montrer que (P | P )ω = 0 =⇒ P = 0. Mais
Z
(P | P )ω =
b
ω(x)P (x)2 dx
a
et ωP 2 ≥ 0 étant continue sur ]a, b[ par (1), ceci implique ωP 2 (x) = 0 pour
tout x ∈]a, b[. Or ω est non identiquement nulle par (3) et continue, donc non
nulle sur un intervalle ouvert non vide de ]a, b[. Pour tout x de cet intervalle,
on a P (x) = 0. P qui a une infinté de zéros est forcément le polynôme nul.
Définition 9.4. On parlera de suite de polynômes orthogonaux associés à
ω pour désigner la suite des polynômes orthogonaux associés à ( | )ω .
Proposition 9.5. Soit (Pn ) la suite des polynômes orthogonaux associés à
ω. Les Pn ont toutes leurs racines réelles simples et dans ]a, b[.
Preuve. Si ce n’était pas le cas, on aurait
Pn = (X − α1 ) · · · (X − αr )Q(X)
9.2. UN CAS PARTICULIER
87
où les αi sont les zéros réels d’ordre impair de Pn et où Q 6= 0 est de signe
constant sur ]a, b[, avec 0 ≤ r < n (le cas r = 0 est possible avec Pn = Q).
Mais alors
Pn | (X − α1 ) · · · (X − αr ) = 0
ω
ce qui implique
Z
b
ω(x)(X − α1 )2 · · · (X − αr )2 Q(x)dx = 0,
a
ce qui est impossible par l’argument classique de positivité et continuité.
Pour alléger la notation on écrit désormais ( | ) pour ( | )ω .
Théorème 9.6. Soit (Pn ) la suite des polynômes orthogonaux associés à ω.
Pour n ≥ 2, les Pn vérifient la relation de récurrence d’ordre 2 :
Pn = (X − an )Pn−1 − bn Pn−2
avec
an =
(Pn−1 | XPn−1 )
(Pn−1 | Pn−1 )
et bn =
(Pn−1 | Pn−1 )
.
(Pn−2 | Pn−2 )
Preuve. Soit n ≥ 2. Posons
Q = Pn − XPn−1 .
Il s’agit d’un polynôme de degré < n. On a donc
(9.1)
Q=
n−1
X
λj P j
avec λj =
j=0
(Q | Pj )
.
(Pj | Pj )
Or pour j ≤ n − 3 on a
(Q | Pj ) = (−XPn−1 | Pj )
= −(Pn−1 | XPj )
= 0.
Ainsi a-t-on
Q = λn−1 Pn−1 + λn−2 Pn−2 .
Faisons j = n − 2 dans (9.1). Comme
(Q | Pn−2 ) = (Pn − XPn−1 | Pn−2 )
= −(Pn−1 | XPn−2 )
= −(Pn−1 | Pn−1 )
88
CHAPITRE 9. POLYNÔMES ORTHOGONAUX
car XPn−2 = Pn−1 + polynôme de degré < n − 1, on obtient
λn−2 = −
(Pn−1 | Pn−1 )
.
(Pn−2 | Pn−2 )
Faisons j = n − 1 dans (9.1). Comme
(Q | Pn−1 ) = (Pn − XPn−1 | Pn−1 )
= −(XPn−1 | Pn−1 )
on a
λn−1 = −
(Pn−1 | XPn−1 )
(Pn−1 | Pn−1 )
et la relation recherchée.
9.3
9.3.1
Exemples
Polynômes de Tchebycheff
Théorème 9.7. Il existe des polynômes Tn , Un ∈ Z[X] tels que
cos nx = Tn (cos x)
sin nx = sin x Un (cos x),
pour tout (n, x) ∈ Z × R. Ils sont uniques, et vérifient :
1. T−n = Tn et U−n = −Un ,
2. Si n ≥ 1, deg Tn = n et deg Un = n − 1,
3. Plus précisément, si n ≥ 1, le terme dominant de Tn est 2n−1 X n et
celui de Un est 2n−1 X n−1 .
Preuve. L’unicité est évidente car si pour tout x, P (cos x) = Q(cos x), P − Q
a une infinité de zéros (tous les éléments de [−1, 1]) donc est nul. De même
si pour tout x, sin x P (cos x) = sin x Q(cos x), P − Q a une infinité de zéros
(tous les éléments de ] − 1, 1[) donc est nul.
Montrons l’existence pour n ≥ 0 ainsi que les propriétés 2 et 3 annoncées
pour n ≥ 1, par récurrence sur n.
Pour n = 0, T0 = 1 et U0 = 0 conviennent.
De même pour n = 1, T1 = X et U1 = 1 conviennent. Remarquons que dans
ce cas, les propriétés 2 et 3 sont vérifiées.
Supposons que Tn et Un soient définis pour n ≥ 1, appartiennent à Z[X]
9.3. EXEMPLES
89
et que les termes dominants de Tn et Un soient respectivement 2n−1 X n et
2n−1 X n−1 . On a
cos(n + 1)x = cos nx cos x − sin nx sin x
= Tn (cos x) cos x − Un (cos x) sin2 x
= Tn (cos x) cos x + Un (x) cos2 x − Un (cos x).
Posons
Tn+1 = Tn X + Un X 2 − Un .
Ce polynôme qui vérifie Tn+1 (cos x) = cos(n + 1)x est dans Z[X] et a pour
terme dominant 2n−1 X n+1 + 2n−1 X n+1 = 2n X n+1 .
De même,
sin(n + 1)x = sin nx cos x + cos nx sin x
= Un (cos x) sin x cos x + Tn (cos x) sin x
= (Un (cos x) cos x + Tn (x)) sin x
et l’on voit que
Un+1 = Un X + Tn
convient, appartient à Z[X] et vérifie les propriétés 2 et 3.
Reste à prouver l’existence pour n < 0. Mais il est facile de voir que, comme
cos nx = cos(−nx) et sin nx = − sin(−nx), Tn = T−n et Un = −U−n
conviennent. Ce qui au passage donne la propriété 1.
Proposition 9.8. Soient a = −1, b = 1. Alors les fonctions
ω1 (x) = √
1
1 − x2
et ω2 (x) =
√
1 − x2
vérifient les propriétés standards permettant de définir un produit scalaire
(voir début de section 9.2).
Preuve. Ces deux fonctions sont définies sur ] − 1, 1[, positives, continues et
non identiquement
nulles. Reste
R1
R 1 à vérifier que pour tout entier n ≥ 0, les
intégrales −1 ω1 (x)xn dx et −1 ω2 (x)xn dx convergent. Pour ω2 c’est évident
car ω2 est en fait définie et continue sur [−1, 1]. Pour ω1 , il suffit de voir qu’en
posant x = 1 − h (0 < h < 1) on a
ω1 (x)xn = √
xn
(1 − h)n
1
=√
∼h→0+ √ ,
1 − x2
2h − h2
2h
90
CHAPITRE 9. POLYNÔMES ORTHOGONAUX
ce qui établit la convergence de l’intégrale en 1− . De même si l’on pose
x = −1 + h (0 < h < 1) on a
(−1)n
ω1 (x)xn ∼h→0+ √ ,
2h
ce qui établit la convergence de l’intégrale en −1+ .
Théorème 9.9. Soient (Pn ) et (Qn ) les suites de polynômes orthogonaux
unitaires associées respectivement à ω1 et ω2 . Alors
1. pour n ≥ 1 on a
Pn =
1
2n−1
Tn ,
2. pour n ≥ 0 on a
Qn =
1
Un+1 .
2n
Preuve. Comme pour n ≥ 0, deg Tn = deg Un+1 = n et comme les termes
dominants de Tn et Un+1 sont respectivement 2n−1 X n (pour n ≥ 1) et 2n X n
(pour n ≥ 0), il suffit de prouver que les familles {Tn ; n ≥ 0} et {Un+1 ; n ≥
0} sont orthogonales respectivement pour ω1 et ω2 . Ceci sera en particulier
assuré si l’on établit que pour tout m ≥ 0 et tout n ≥ 0 avec m 6= n on a
Z
1
Tm (x)Tn (x) √
−1
1
dx = 0
1 − x2
et
Z
1
√
Um (x)Un (x) 1 − x2 dx = 0.
−1
Posons x = cos t. Ces deux égalités sont équivalentes à
Z
π
cos(mt) cos(nt)dt = 0
0
et
Z
π
sin(mt) sin(nt)dt = 0.
0
Or ceci se prouve facilement par linéarisation.
9.3. EXEMPLES
9.3.2
91
Polynômes de Legendre
Définition 9.10. Pour n ≥ 0 on appelle n-ième polynôme de Legendre le
polynôme Ln défini par
Ln (X) =
1 dn 2
n
(X
−
1)
.
2n n! dX n
Citons sans preuve le résultat principal.
Théorème 9.11. Soit ω définie sur ] − 1, 1[ par ω(x) = 1. Soit (Pn ) la suite
de polynômes orthogonaux unitaires associée à ω. Pour tout n on a Ln (1) = 1
et
2n
Pn = 2n Ln .
n
9.3.3
Polynômes de Hermite
Définition 9.12. Pour n ≥ 0 on appelle n-ième polynôme de Hermite le
polynôme Hn défini par
Hn (X) = (−1)n exp(X 2 /2)
dn 2
exp(−X
/2)
.
dX n
Citons sans preuve le résultat principal.
Théorème 9.13. Soit ω définie sur ] − ∞, ∞[ par
1
ω(x) = √ exp(−X 2 /2).
2π
Alors (Hn ) est la suite de polynômes orthogonaux unitaires associée à ω.
92
CHAPITRE 9. POLYNÔMES ORTHOGONAUX
Chapitre 10
Compléments
10.1
Extensions de certains résultats aux matrices “quelconques”
10.2
Décomposition en valeur singulière (SVD)
10.3
Pseudo-inverse
93
Téléchargement