Matrices : transformations élémentaires

publicité
MPSI-Éléments de cours
Matrices : transformations élémentaires
24 mars 2017
Matrices : transformations élémentaires
Rédaction incomplète. Version beta
Plan
I.
Algorithmes . . . . . . . . . . . .
1. Algorithme de Gauss . . . . . . . .
1. Opérations élémentaires . . . . .
2. Principe général . . . . . . . .
2. Algorithme I : pivot partiel . . . . .
3. Algorithme I’ : pivot partiel étendu . .
4. Algorithme II : pivot total . . . . . .
II. Matrices et opérations élémentaires . . .
III. Applications . . . . . . . . . . . .
1. Invariants . . . . . . . . . . . .
2. Inversibilité d’une matrice carrée . . .
3. Inversion d’une matrice carrée inversible .
4. Résolution d’une équation linéaire . . .
5. Calcul d’un rang . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
1
1
2
2
3
4
4
4
5
5
6
6
Index
–
–
–
–
–
I.
Algorithmes
1.
Algorithme de Gauss
1.
–
–
–
–
–
algorithme de Gauss, 1
algorithme du pivot partiel, 2
algorithme du pivot partiel étendu, 2
algorithme du pivot total, 3
invariant par équivalence, 4
invariant par transformation élémentaire, 4
matrices d’opérations élémentaires, 4
opérations élémentaires, 1
pivot, 1
système de Cramer, 6
Opérations élémentaires
On appelle opérations élémentaires les transformations suivantes d’une matrice à p lignes et q colonnes en une
matrice à p lignes et q colonnes.
– Permuter deux lignes.
– Permuter deux colonnes.
– Pour i et i0 entre 1 et p et λ scalaire quelconque : ajouter à la ligne i la ligne i0 multipliée par λ. Bien noter
que seule la ligne i est modifiée.
– Pour j et j 0 entre 1 et q et λ scalaire quelconque : ajouter à la colonne j la ligne j 0 multipliée par λ. Bien
noter que seule la colonne j est modifiée.
– Multiplier une ligne par un scalaire λ non nul.
– Multiplier une colonne par un scalaire λ non nul.
Les opérations élémentaires sont réversibles ; c’est à dire que si A est la matrice de départ et A0 une matrice
obtenue à partir de A par une opération élémentaire, on peut, par opération élémentaire, transformer A0 en A.
Par exemple, pour le troisième type, il suffit d’ajouter −λ fois la ligne i0 à la ligne i.
2.
Principe général
L’algorithme de Gauss transforme une matrice en utilisant exclusivement des opérations élémentaires.
Le diagramme de la figure 1 présente un algorithme de Gauss très général utilisant des procédures Pivot, Nettoie et
Permute. Les diverses variantes s’obtiennent en modifiant ces procédures. Un tableau à deux dimensions représente
une matrice à p lignes et q colonnes. Il est commode d’utiliser des variables globales (par exemple A, p, q) pour
désigner le tableau et ses dimensions. Les variables i et cle sont locales.
– La procédure Pivot(i) renvoie une clé du tableau dont la valeur (appelée pivot) est non nulle. Cette clé est
cherchée dans une partie de la matrice. Plusieurs stratégies sont possibles.
1
Cette création est mise à disposition selon le Contrat
Paternité-Pas d’utilisations commerciale-Partage des Conditions Initiales à l’Identique 2.0 France
disponible en ligne http://creativecommons.org/licenses/by-nc-sa/2.0/fr/
Rémy Nicolai C2234
MPSI-Éléments de cours
Matrices : transformations élémentaires
24 mars 2017
i <−− 1
i<−− i+1
V
i <= min(p,q)
V
cle <> 0
cle <−− Pivot(i)
Nettoie(i)
F
F
retour
Permute(i,cle)
fin
retour
Fig. 1: Algorithme de Gauss
– La procédure Permute(i,cle) échange des lignes (et éventuellement des colonnes) pour placer la valeur
pivot en position (i, i).
– La procédure Nettoie fait apparaitre des 0 dans une partie de la colonne i. Pour cela elle utilise exclusivement
des transformations élémentaires. de la forme
Lj ←− Lj + λLi
Les procédures, la forme de la matrice à la fin et ce que renvoie l’algorithme sont précisés dans les variantes.
Il est important de noter que l’algorithme s’arrête soit parceque le i dépasse p ou q soit parceque la recherche d’un
pivot non nul échoue.
2.
Algorithme I : pivot partiel
La procédure Pivot(i) cherche une valeur pivot non nulle dans la bas de la colonne courante c’est dire parmi
les termes ai,i , ai+1,i , · · · ap,i . Pusieurs stratégies sont possibles. Par exemple, pour un calcul « à la main », on
préfèrera une valeurcomme 1 ou −1. Dans le cadre d’un calcul numérique, il vaut mieux choisir le pivot le plus
grand possible pour minimiser les erreurs d’arrond.
La procédure Nettoie (figure 2) fait apparaitre des 0 dans le bas de la colonne courante. Pour cela elle effectue
Li0 ← Li0 −
ai0 ,i
Li
ai,i
pour i0 de i + 1 à p.
Trois formes sont possibles pour la matrice finale suivant que l’algorithme termine avec i > p, i > q ou par l‘échec
de la recherche d’un pivot non nul.




6= 0
6= 0




..
 0

6= 0
 0

.
6= 0
.
. .






.
 0



.
.
.
6= 0
. .


.
.
.
0



. 6= 0
.


 ..



.


.
.
.


 .
.
. . 6= 0
. .
0
0
 ..






..
..
0
···
0 6= 0 . .



.
. . .
0
0
0
0
0 . .
3.
Algorithme I’ : pivot partiel étendu
La différence avec la version précédente porte uniquement sur la procédure Nettoie. L’appel Nettoie(i)
procède comme dans la première version
ai0 ,i
Li
Li0 ← Li0 −
ai,i
mais pour tous les i0 de 1 à p sauf i. Pour la ligne i, elle effectue
Li ←
1
Li
ai,i
2
Cette création est mise à disposition selon le Contrat
Paternité-Pas d’utilisations commerciale-Partage des Conditions Initiales à l’Identique 2.0 France
disponible en ligne http://creativecommons.org/licenses/by-nc-sa/2.0/fr/
Rémy Nicolai C2234
MPSI-Éléments de cours
···
a1 1
Matrices : transformations élémentaires
a1 i−1 a1 i
24 mars 2017
a1 p−1 a1 p
a1 i+1
...
0
···
0
···
0
ai i
0
···
0
ai+1 i ai+1 i+1
ai+1 p−1 ai+1 p
0
···
0
ai+2 i ai+2 i+1
ai+2 p−1 ai+2 p
ai−1 p−1 ai−1 p
ai−1 i−1 ai−1 i ai−1 i+1
· · · ai p−1
ai i+1
ai p
Ligne i
..
.
···
0
ap i
0
ap i+1
ap p−1
ap p
Fig. 2: Procédure « Nettoie »pour l’algorithme I
Ainsi la colonne i ne contient que des 0 sauf un 1 en position i, i.
La forme de la matrice à la fin est, pour les trois cas possibles,

1

0

.
 ..
0
4.
0
0
..
.
1
..
···
.
0
0
1

.
.
.

. 


. 
.
.
.

1
0 1



0

.
.
.


0

..
.
..
.






1


0

1

0

 ..
.





0
..
.
..
.
0

1
0
..
.









.
.
0
0
..
.
.
0 .
Algorithme II : pivot total
L’algorithme du pivot total se différencie des algorithmes précédents par la zone de recherche du pivot non nul
et par la procédure de permutation.
L’appel Pivot(i) cherche une valeur pivot non nulle dans tout le bas de la matrice et pas seulement dans la
colonne i. La procédure renvoie donc un couple (i0 , j0 ) tel que i ≤ i0 ≤ p, i ≤ j0 ≤ q et ai0 ,j0 6= 0.
La procédure de permutation échange les lignes i et i0 et les colonnes i et j0 de manière à placer la valeur pivot
non nulle en position i, i.
La procédure de nettoyage est la même que pour le pivot partiel.
3
Cette création est mise à disposition selon le Contrat
Paternité-Pas d’utilisations commerciale-Partage des Conditions Initiales à l’Identique 2.0 France
disponible en ligne http://creativecommons.org/licenses/by-nc-sa/2.0/fr/
Rémy Nicolai C2234
MPSI-Éléments de cours
Matrices : transformations élémentaires
24 mars 2017
La matrice à la fin de l’algorithme est de la forme suivante

6= 0
.
 0
=
6
0

 ..
 .
0
II.
···
..
.
0

. .
. .


. .
6 0 . .
=

6= 0
 0
6 0
=



0

 .
 ..


0

..
.
..
.






6= 0


0

6= 0

 0

 ..
 .





0

..
.
..
.
6= 0 .
.
0
0 ···
..
..
.
.
0
0 ···




.

0

.. 
.
0
Matrices et opérations élémentaires
Définition. Soit n un entier naturel non nuls. Toutes les matrices définies ici sont à n lignes et n colonnes. Elles
sont obtenues par des transformations élémentaires de la matrice identité In . On désigne par i et j des entiers
distincts entre 1 et n.
– Pi,j (n) est obtenue à partir de In en échangeant les lignes i et j.
– Ai,j,λ (n) est obtenue à partir de In en ajoutant à la ligne i la ligne j multipliée par λ (scalaire quelconque).
Elle est donc égale à In sauf pour le terme i, j qui est égal à λ.
– Di,λ (n) est obtenue à partir de In en multipliant par λ (scalaire non nul) la ligne i de In .
Les opérations élémentaires portant sur les lignes sont obtenues par multiplication à gauche par des matrices
particulières. Les opérations portant sur les colonnes sont obtenues par multiplication à droite.
Proposition. Soit M ∈ Mp,q (K). Les entiers i et j sont entre 1 et p quand ils figurent dans une matrice placée
à gauche et entre 1 et q quand ils figurent dans une matrice placée à droite.
– Pi,j (p)M est obtenue à partir de A en permutant les lignes i et j.
– M Pi,j (q) est obtenue à partir de A en permutant les colonnes i et j.
– Ai,j,λ (p)M est obtenue à partir de A en remplaçant Li (M ) par Li (M ) + λLj (M ) où λ est un scalaire
quelconque.
– M Ai,j,λ (p) est obtenue à partir de A en remplaçant Cj (M ) par Cj (M ) + λCi (M ) où λ est un scalaire
quelconque.
– Di,λ (p)M est obtenue à partir de A en multipliant la ligne i par λ (scalaire non nul).
– M Di,λ (q) est obtenue à partir de A en multipliant la colonne i par λ (scalaire non nul).
Preuve. On vérifie à partir des définitions. Il est utile de remarquer que toutes les lignes de Ai,j,λ (p) sont celles de
Ip sauf la i-eme mais que toutes les colonnes de Ai,j,λ (q) sont celles de Iq sauf la j-eme.
Proposition. Toutes les matrices de transformations élémentaires sont inversibles avec
Pi,j (p)−1 = Pi,j (p),
Ai,j,λ (n)−1 = Ai,j,−λ (n),
Di,λ (n)−1 = Di, λ1 (n)
Preuve. C’est facile en utilisant l’effet d’une multiplication par une matrice élémentaire.
III.
1.
Applications
Invariants
Un invariant par transformation élémentaire est un nombre (ou plus généralement un objet mathématique)
attaché à une matrice et qui est conservé par une transformation élémentaire.
Proposition. Deux matrices sont équivalentes si et seulement si elles sont obtenues l’une à partir de l’autre par
transformations élémentaires.
Les termes « invariant par transformation élémentaire » ou « invariant par équivalence » sont donc synonymes.
Proposition. Le noyau et l’image d’une matrice, leurs dimensions, le rang sont des invariants par équivalence.
Le caractère inversible d’une matrice carrée est un invariant par équivalence.
L’image d’une matrice est aussi le sous-espace engendré par ses colonnes ainsi que l’image de l’application linéaire
X ⇒ AX, sa dimension est donc aussi le rang de la matrice. Le noyau de la matrice est aussi le noyau de
l’application linéaire X ⇒ AX. Le théorème du rang donne
q = dim(ker A) + rg(A)
4
Cette création est mise à disposition selon le Contrat
Paternité-Pas d’utilisations commerciale-Partage des Conditions Initiales à l’Identique 2.0 France
disponible en ligne http://creativecommons.org/licenses/by-nc-sa/2.0/fr/
Rémy Nicolai C2234
MPSI-Éléments de cours
Matrices : transformations élémentaires
24 mars 2017
Par conséquent, si deux matrices de même taille ont des noyaux (ou des images) de même dimension, leurs images
(ou leur noyaux) sont aussi de même dimension.
Preuve. Pour P matrice inversible, les matrices A et P A ont le même noyau. Pour Q inversible les matrices A et
AQ ont la même image. à compléter
Par exemple pour une matrice carrée, la trace n’est pas un invariant par équivalence mais le caractère c’est un
invariant par similitude (deux matrices semblables ont la même trace).
2.
Inversibilité d’une matrice carrée
Proposition. Une matrice carrée A ∈ Mp (K) est inversible si et seulement si la matrice obtenue à partir de A
par l’algorithme I est de la forme


6= 0
 0

6= 0


T = .

.
.
.
 .

.
0
···
0 6= 0
Preuve. L’algorithme I conduit à une matrice P A où P est inversible car égal à un produit de matrices élémentaires.
Lorsque P A = T , comme T est clairement inversible car ses colonnes forment une famille libre, T est également
inversible.
Si la matrice P A n’est pas de la forme T , elle est de la forme


6= 0


..
 0

.


 ..

.
. . 6= 0
 .

0
T =



0
0




..
..

.
. . .
0
0
0 . .
Notons s le nombre de termes non nuls sur le début de la diagonale. Il est clair que les s premières colonnes de
T 0 forment une base du sous-espace des matrices colonnes dont les p − s derniers termes sont nuls. D’autre part
Cs+1 (T 0 ) est dans ce sous-espace donc les s + 1 premières colonnes de T 0 forment une famille liée. La matrice T 0
n’est donc pas inversible ce qui entraı̂ne que A ne l’est pas non plus.
3.
Inversion d’une matrice carrée inversible
Proposition. Soit A ∈ Mp (K) inversible. On forme une matrice par blocs dans Mp,2p (K) en plaçant à droite
de A un bloc constitué de la matrice identité. L’algorithme du pivot partiel étendu (I’) conduit à une matrice dont
le bloc de droite est A−1 .
Algorithme I’ [A Ip ] −−−−−−−−−→ Ip A−1
Preuve. Les opérations élémentaires intervenant dans l’algorithme I’ sont les mêmes que l’on parte de A ou de
[A Ip . Notons P1 , P2 , · · · Ps les matrices élémentaires correspondant à ces opérations. Les algorithmes du pivot
partiels ne font intervenir que des opérations sur les lignes qui sont associées à des multiplications par des matrices
élémentaires placées à gauche. On a donc
Ip = Ps Ps−1 · · · P2 P1 A ⇒ A−1 = Ps Ps−1 · · · P2 P1 = Ps Ps−1 · · · P2 P1 Ip
Autrement dit, A−1 s’obtient à partir de Ip en subissant les mêmes transformations élémentaires que celles permettant de passer de A à Ip . En écrivant Ip à droite de A, cela se réalise automatiquement sans qu’il soit nécessaire
de mémoriser les transformations élémentaires.
Remarque. Attention, cette méthode est très séduisante mais il ne faut pas chercher à l’appliquer systématiquement.
Lorsqu’on fait des calculs à la main, les éventuelles erreurs de calcul sont difficiles à trouver. D’autres méthodes à
considérer sont
– Résoudre un système AX = Y avec une colonne X inconnue et une colonne Y formelle.
– Considérer A comme la matrice d’une famille A de vecteurs et chercher à exprimer les vecteurs de la base
comme combinaison linéaire de ceux de A.
5
Cette création est mise à disposition selon le Contrat
Paternité-Pas d’utilisations commerciale-Partage des Conditions Initiales à l’Identique 2.0 France
disponible en ligne http://creativecommons.org/licenses/by-nc-sa/2.0/fr/
Rémy Nicolai C2234
MPSI-Éléments de cours
4.
Matrices : transformations élémentaires
24 mars 2017
Résolution d’une équation linéaire
Proposition. Soit A ∈ GLp (K) et Y ∈ Mp,1 (K). Il existe un unique vecteur colonne X tel que AX = Y (système
de Cramer). Pour l’obtenir, on forme une matrice par bloc à p + 1 colonnes et l’on utilise l’algorithme du pivot
partiel étendu.
Algorithme I’
[A Y ] −−−−−−−−−→ [Ip X]
Remarque. Calculer d’abord A−1 puis multiplier ensuite X = A−1 Y est une mauvaise idée du point de vue du
coût du calcul. Inverser une matrice p × p, c’est résoudre p systèmes de Cramer (colonne après colonne).
Pour résoudre une équation AX = Y lorsque A n’est pas inversible (ni même carrée), on utilise les opérations
élémentaires de l’algorithme du pivot total au niveau du système d’équations. Il faut remarquer que permuter deux
colonnes revient à permuter deux inconnues. Lorsque l’algorithme s’arrête, on fait passer les inconnues qui restent
de l’autre côté, et on exprime les premières inconnues par substitution.
5.
Calcul d’un rang
Proposition. Le rang est invariant par opération élémentaire. Le rang d’une matrice A est le nombre de termes
non nuls sur la diagonale de la matrice obtenue à partir de A par l’algorithme du pivot total.
Preuve. En effet, une matrice obtenue à partir de A par des opérations élémentaires est de la forme P AQ où P et
Q sont des produits de matrices élémentaires. Elles sont donc inversibles. .... À rédiger
6
Cette création est mise à disposition selon le Contrat
Paternité-Pas d’utilisations commerciale-Partage des Conditions Initiales à l’Identique 2.0 France
disponible en ligne http://creativecommons.org/licenses/by-nc-sa/2.0/fr/
Rémy Nicolai C2234
Téléchargement