Université de Yaoundé-1.
Département de Mathématiqe Avril 2025
UE Mat112 (Algèbre Linéaire I) Par : Dr. Bertrand Nguefack
Annexe : Ch II : Matrices et Systèmes linéaires, résolution de
systèmes linéaires par la méthode d’échelonnement, le rang
Définition 2.1. Une matrice d’ordre (m, n) et à coefficients dans K est une famille A = (ai,j )1≤i≤m
1≤j≤n
doublement indexées de scalaires dans K. Très habituellement, on écrira une matrice sous forme de
tableau ayant m lignes et n colonnes : a a ··· a
© 1,1 1,2 1,n ª
a 2,1 a 2,2 · · · a 2,n ®®
®
A=
..
.
®
®
®
am,1 am,2 · · · am,n ¬
®
«
La paire (m, n) est encore appelé la dimension (ou taille ou format) de A, qu’on note aussi par m × n.
Pour i ∈ J1 , mK, j ∈ J1 , nK, la i-ème ligne et la j-ème colonne de sont donnée par :
© a 1,j ª
a 2,j ®®
®
`i (A) = (ai,1 , ai,2 , . . . , ai,n ) ∈ Kn et cj (A) = m
.. ®®aussi regardé comme une vecteur-colonne dans K .
. ®
am,j
®
« ¬
Remplissant la matrice A ligne par ligne, ou colonne par colonne, ` (A)
© 1
`2 (A)
ª
on a : A = [c1 (A) c2 (A) · · · cn (A)] = .. ®.
®
.
®
®
« `m (A) ¬
On Pose Mm,n (K) l’ensemble des matrices de format (m, n) et à coefficients dans K. Mm,n (K) est
naturellement un K-espace vectoriel pour les opérations d,additions et de multiplication scalaire
définies composante par composantes : Pour A = (ai,j )i,j , B = (bi,j )i,j et λ ∈ K on a :
A + B = (ai,j + bi,j )i,j et λA = (λai,j )i,j .
On voit toute suite que la base canonique de Mm,n (K) est E = Ei,j : (i, j) ∈ J1 , mK × J1 , nK où
la matrice élémentaire Ei,j = (δi,k δ j,l )k,l est la matrice dont la (i, j)-composante vaut 1 et toutes les
autres composantes valent 0. Ainsi, dimK Mm,n (K) = mn.
Transposition, quelques types de matrices. Soit A = (ai,j )i,j ∈ Mm,n (K).
(a) La transposée de A est la matrice tA = (al,k 0 )
l,k ∈ Mn,m (K) telle que pour 1 ≤ i ≤ m et 1 ≤ j ≤ n
on a : a j,i = ai,j . Ainsi, la j-ème ligne de A est justement la j-ème colonne de A, et de façon
0 t
équivalente, la i-ème colonne de tA est justement la i-ème ligne de A.
1. A est dite carrée si m = n (le nombre de lignes est égal à celui de colonnes). On note Mn (K) =
Mn,n (K) le K-espace vectoriel des matrices carrées d’ordre n.
On verra plus tard après l’introduction du produit matriciel que Mn (K) est en fait un anneau.
2. Une matrice carrée M est dite symétrique si tM = M. De même, pour car(K) , 2, la matrice M
est dite anti-symétrique si tM = −M.
Espace-Ligne, Espace Image ou espace colonne, noyau d’une matrice A ∈ Mm,n (K).
Définition 2.2. Abrégeons par `1 , `2 , . . . , `m les (vecteurs) lignes de A (dans Kn ), et par les vecteurs
colonnes de A (dans Km ).
m L’espace-Ligne de A est le sous-espace vectoriel de Kn donnée par : Lig(A) = Vect(`1 , `2 , . . . , `m ).
item L’espace-colonne de A, encore appelé espace image de A, est le sous-espace vectoriel de Km
donnée par : ImA = Col(A) = Vect(c1 , c2 , . . . , cn ).
Ín
m Le noyau de A est le sous-espace vectoriel de Kn donné par : ker(A) = (x 1 , . . . , xn ) ∈ Kn : j=1 x j cj = 0n .
Définition 2.3. Un système (S) de m équations à n inconnues x 1 , . . . , xn (et à coefficients) dans K
est une famille d’équations
a 1,1x 1 + a 1,2x 2 + · · · + a 1,n xn = b1
a 2,1x 1 + a 2,2x 2 + · · · + a 2,n xn = b2
.. , ai,j , b j ∈ K donnés, 1 ≤ i ≤ m, 1 ≤ j ≤ n.
(S) . (2.0.1)
.. .
am,1x 1 + am,2x 2 + · · · + am,n xn = bm
De façon plus brève, on parle simplement de système linéaire. Ne retenant que les coefficients du
système (S), la matrice de (S) et la matrice augmentée de (S) sont données respectivement par
a 1,1 a 1,2 · · · a 1,n a a 1,2 · · · a 1,n | b1
© ª © 1,1
a 2,1 a 2,2 · · · a 2,n a 2,1 a 2,2 · · · a 2,n | b2 ®
® ª
A= A = (A|b) = .. . ®.
®
.. ® et
| .. ®®
®
. .
®
®
am,1 am,2 · · · am,n ¬ « am,1 am,2 · · · am,n | bm ¬
®
«
A = (A|b) sera encore appelée écriture compacte ou représentation matricielle de (S).
— Le membre de droite de (S) est le vecteur-colonne b =t (b1 , . . . , bm ).
— Le système homogène associé (S 0 ) est obtenu de (S) en remplaçant les bi par les 0. En particu-
lier, A est aussi la matrice de (S 0 ).
L’écriture vectorielle de (S) est donnée par l’équation linéaire vectorielle suivante dans Km :
n
Õ
x j cj (A) = x 1 c1 (A) + x 2 c2 (A) + · · · + xn cj (A) = b. (2.0.2)
j=1
Espace de solutions d’un système linéaire.
L’ensemble des solutions de systèmes
linéaires fournissent, comme on l’a déjà vu en TD, ’tous’ les es-
paces affines dans K . Notons E = x = (x 1 , x 2 , . . . , xn ) ∈ K : ∀i ∈ J1 , mK, nj=1 ai,j x j = bi l’en-
n n Í
semble des solutions du système (S).
Proposition 2.1. Si le système (S) possède au moins une solution, disons, ω = (α 1 , α 2 , . . . , αn ) ∈ Kn ,
l’ensemble-solution de (S) est l’espace affine dans Kn donné par : E = V + ω où V = ker(A) est le
sous-espace vectoriel formé de toutes les solutions du système homogène (S 0 )associé à (S).
2
2.1 Résolution de Systèmes d’équations linéaires,
échelonnement et rang
Deux systèmes linéaires de la forme 2.0.1 sont dits équivalents s’ils ont les mêmes solutions. La mé-
thode de résolution par combinaisons linéaires, objet de cette section, consistera à appliquer au système
(S) ou simplement à sa représentation matricielle des opérations dites élémentaires sur les lignes,
qui ne changent pas l’ensemble des solutions de ce dernier. Pour cela, on verra dans cette section
comment transformer (S) en un système équivalent plus facile à résoudre : la forme cherchée s’ap-
pelle forme échelonnée. Nous commençons donc par considérer les systèmes (et les matrices) sous
forme échelonnée.
2.1.1 Systèmes et matrices sous forme (ligne-)échelonnée
Comme plus haut, soit (S) un système linéaire dont la matrice est A et la matrice augmentée est
Ā = (A|b).
Définition 2.4. (a) Le système linéaire (S) est échelonné (sur les lignes), ou encore sa matrice A
est ligne-échelonnée si : le nombre de zéros à gauche sur les lignes non nulles de (S 0 ) (ou de A) croît
strictement avec le numéro de la ligne, et les lignes nulles (si il en existe) sont toutes en bas. Notons
qu’on ne regarde pas le membre de droite dans (S).
(a0) Pareillement, la matrice A est colonne-échelonnée (ou échelonnée sur les colonnes) si tA est
ligne-échelonnée ; i.e, le nombre de zéros en haut dans les colonnes non nulles de A croît strictement
avec le numéro de la colonne, et les colonnes nulles (si il en existe) sont toutes à droite.
(b) Rang et pivots de systèmes ou de matrice échelonnées, forme totalement échelonnée ou éche-
lonnée réduite. On suppose que (S) est échelonnée, et donc la matrice A est ligne-échelonnée.
1. Le rang de (S) (ou de A) est alors le nombre de lignes non nulles de (S 0 ) (ou de A).
2. Le premier coefficient non nul de chaque ligne non nulle est appelé pivot, et la colonne corres-
pondante (dans la représentation matricielle) est appelée colonne pivotale.
3. Le système (S) est dit totalement échelonné (ou encore échelonné réduit) si :
— (S) est échelonné, et
— chaque pivot vaut 1 et est le seul coefficient non nul sur la colonne pivotale correspon-
dante.
Ainsi la représentation matricielle d’un système totalement échelonné est de la forme
Ici, les ∗ représentent des scalaires quelconques, les colonnes pivotales sont k 1 , . . . , kr , on a :
rang(S) = rang(A) = r = (nbre de ligne non nulles de A) = (nbr de colonne pivotales).
3
Remarque 2.1. On voit clairement qu’un système sous la forme échelonnée ci-dessus, avec rang(S) =
rang(A) = r , est soluble si et seulement si rang(A) = rang(A|b), i.e, si pour r < i ≤ m on a bi = 0.
Lorsque le système échelonné est soluble, il se résout du bas vers le haut. Notons les colonnes
pivotales par k 1 , . . . , kr .
— Les variables libres (n’ayant pas de relation de dépendance linéaire entre elles) correspondent
aux colonnes non-pivotales : il y en a n − r = n − rang(A), ce sont les x js avec 1 ≤ s ≤ n − r et
où on a posé : J1 , nK \ {k 1 , . . . , kr } = {j 1 , . . . , jn−r } avec j 1 < j 2 < · · · < jn−r .
— En fonction des variables libres, on exprime alors successivement les variables-pivot : xkr , xkr −1 , . . . , xk1 .
— Si le système est déjà totalement échelonné, les solutions se lisent immédiatement. On aura :
Õ
xki = bi − ai,js x js ; i = 1, . . . , r .
1≤s≤r
js >ki
Une base de l’espace vectoriel de solutions du système homogène associé est rapidement ob-
tenu, comme dans le second volet du lemme suivant.
Lemme 2.2. Soit A ∈ Mm,n (K) une matrice sous forme échelonnée, de rang r (le nombre de ligne non
nulles).
(a) Alors le sous-espace ligne Lig(A) := Vect(`j (A), 1 ≤ i ≤ m) ⊂ Kn et le sous-espace colonne Im(A) =
Col(A) = Vect(cj (A), 1 ≤ j ≤ n) ⊂ Km sont tous deux de dimension r = rang(A). On a donc la
relation :
dimK (Lig(A)) = rang(A) = dimK (Im(A)).
Dans ce cas, une base de Lig(A) est formée des lignes non nulle de A, et une base de Im(A) est formée
par les colonnes pivotales de A.
(a) Notant V = ker(A) le sous-espace vectoriel de Kn formé des solutions du système homogène (S 0 )
défini par A, on a : dim(V ) = n − rang(A) (le nombre de variable libres). Et si de plus A est totalement
échelonnées, notant k 1 < k 2 < · · · < kr les colonnes pivotales, et j 1 < j 2 < · · · < jn−r les colonnes
non-pivotales, alors une base B = (v 1 , . . . , vn−r ) de V = ker(A) se déduit directement, avec :
ms
Õ
vs = e j s − ai,js eki où ms = max {i : 1 ≤ i ≤ r et ki < js } , 1 ≤ s ≤ n − r .
i=1
En résumé, pour un système sous la forme échelonnée ci-dessus avec rang(S) = rang(A) = r , les
situations mutuellement exclusives suivantes ont lieu.
(a) Le système est soluble si et seulement si rang(A) = rang(A|b), i.e, si pour r < i ≤ m on a bi = 0.
(b) Si r = rang(A|b) = n alors on a une unique solution.
(c) Si r = rang(A|b) < n, alors on a (en caractéristique nulle) une infinité de solutions, le sous-espace
affine solution est de dimension n − r (le nombre de variables libres).
2.1.2 Opération élémentaires et algorithme d’échelonnement (ou de
réduction)
Numérotons les lignes du système (S) (ou encore de sa représentation matricielle Ā = (A|b)) par
`i , 1 ≤ i ≤ n. La résolution par combinaisons linéaires consiste à appliquer les opérations élémen-
taires ci-après sur les lignes. Soient i, j, k ∈ J1 , mK donnés distincts et 0 , λ ∈ K :
4
1. Opérations de type Comb : Remplacer (échanger) une ligne `i par une combinaison linéaire
(admissible) de lignes dans laquelle la ligne `i apparaît avec un coefficient non nul : Cette
opération se note symboliquement :
p
Õ p
Õ
Comb(i, k 1 , . . . , kp ; µ, λ 1 , . . . , λp ) ou `i ← µ`i + λs `ks ou encore `i µ`i + λs `ks
s=1 s=1
avec m ∈ J1 , n − 1K, 0 , µ, λs ∈ K et i , ks ∈ J1 , nK, 1 ≤ s ≤ m, les ks étant deux-à-deux distincts.
Cette opération est en fait la composition des opérations (plus) élémentaires suivantes (en
posant m = 0 et µ , 1, ou (µ, m) = (1, 1).
a) L’opération Comb(i, k; λ) := Comb(i, k; 1, λ) : `i ← `i + λ`k ;
b) L’opération Multλ,i = Comb(i; λ) : `i ← λ`i consiste à multiplier Li par un scalaire non
nul et distincts de 1 !.
2. L’opération de permutation de deux lignes : permuti,j notée `i ←→ `j est la permutation
des lignes `i et `j .
Nous tenons maintenant notre promesse de ramener tout système (resp. toute matrice) à un système
(ou à une matrice) équivalent sous forme (totalement) (ligne-)échelonnée.
Théorème 2.3. Tout système (S 0) obtenu en appliquant à (S) une série d’opérations élémentaires reste
équivalent au systèmes initial (S). Tout système linéaire (resp., toute matrice A) peut être transformé
en un système (resp., en une matrice) sous forme totalement ligne-échelonnée en appliquant une série
d’opérations élémentaires sur les lignes du type permuti,j , Comb(i, k; λ) ou Multλ,i , avec i, j, k ∈ J1 , mK
distincts,0 , λ ∈ K.
Démonstration. (Du théorème 2.3). ... exposé cours magistral
Une version de l’algorithme de Gauss-Jordan pour l’échelonnement total
Rappelons que A = (A|b) est la représentation matricielle de (S). L’idée est de procéder de façon
itérative sur le numéro k = 1, 2, . . . m de lignes de A.
1. Initialisation : k = 1 ; variable indiquant le numéro de la ligne courante.
2. Repérer le premier indice j tel que la colonne C j de A ait au moins un coefficient non nul à
partir de la ligne numéro k.
a) Si ak,j , 0 (on a notre pivot), faire : `s ← ak,j `s − as,j `k pour tout s , k
Note : pour l’algorithme de Gauss : on peut d’abord multiplier la Ligne `k par ak,j
−1 si ce
dernier n’est pas déjà 1, puis faire `s ← `s − as,j `k pour tout s , k.
b) Si ak,j = 0, repérer une ligne `r avec r > k telle que ar ,j , 0. Puis permuter les lignes `k
et `r pour avoir un système comme au point (a), et appliquer le point (a).
3. On incrémente la valeur de k de 1 (i.e, on avance vers la prochaine ligne vers le bas), et on
recommence le point (2) tant que k ≤ m
4. Après l’étape (3), notre système est échelonné, presque totalement sauf que les pivots ne valent
pas nécessairement 1. Il reste simplement a multiplier chaque ligne non nulle par l’inverse du
pivot si ce dernier n’est pas déjà 1.
Note 2.2. Dans cet algorithme, nous faisons exprès (dans le point (2.a) de ne pas diviser trop tôt si cela
va introduire les fractions (lorsqu’on travaille sur R ou C), lesquelles rendent les calculs fastidieux
et facilitent les erreurs.
5
2.2 Théorie du rang pour les matrices
Définition 2.5. Soit F une famille de vecteurs dans un K-espace vectoriel E. Le rang de F est
formellement donnée par la quantité
rang(F ) = dimK (Vect(F )), c’est donc la dimension sur K du sous-espace vectoriel engendré par F .
Maintenant, une matrice A = (ai,j )i,j ∈ Mm,n (K) donne deux sous-espaces vectoriels dans des espaces
vectoriels à priori distinct, selon que l’on considère les lignes ou les colonnes de A : On a le sous-
espace ligne (dans Kn ) et le sous-espace image ou colonne de A (dans Km ) :
Lig(A) = Vect(`1 , `2 , . . . , `m ) et ImA = Vect(c1 , c2 , . . . , cn ).
C’est un résultat important que ces deux sous-espace (quoique pouvant être très différents) ont même
dimension.
Théorème 2.4. Soit A = (ai,j )i,j ∈ Mm,n (K). Alors pour toute matrice A0 ∈ Mm,n (K) obtenue de A
en appliquant une série d’opérations élémentaires sur les lignes, on a Lig(A) = Lig(A0) et dim Im(A) =
dim Im(A0). En particulier si A0 est une forme ligne-échelonnée de A, alors on a :
Lig(A) = Lig(A0) et dimK (Lig(A)) = dimK (Lig(A0)) = dimK (Im(A0)) = dimK (Im(A)).
Remarque 2.3. a.) Échelonner sur les colonnes de A revient à échelonner sur les lignes de la trans-
posée tA de A. Donc la version-colonne du théorème tient et s,’énonce comme il suit. Soit A00 ∈
Mm,n (K) obtenue de A en appliquant une série d’opérations élémentaires sur les colonnes de A,
on a Im(A) = Im(A00) et dim Lig(A) = dim Lig(A00). En particulier si A00 est une forme colonne-
échelonnée de A, alors on a :
Im(A) = Im(A00) et dimK (Im(A)) = dimK (Im(A00)) = dimK (Lig(A00)) = dimK (Lig(A)).
b.) Si B ∈ Mm,n (K) est obtenue de A en appliquant une série d’opérations élémentaires sur les lignes
ou les colonnes, alors on a : rang(A) = rang(B). Ainsi, rang(A) = r si et seulement si une série
d’opérations élémentaires sur les lignes ou sur les colonnes transforment A en une matrice de la
forme
© 1 0 ··· 0 ··· ··· 0 ª
. . . . . . .. .. ®®
0
. . ®®
. . .
! .. .. .. 0
®
Ir
®
0r ,n−r ®
= 0 · · · ®.
®
0m−r,r 0m−r,n−r 0 1 0 · · · 0 ®
0 ··· ··· 0 0 · · · 0
®
®
. . . .. ®®
®
. .
. . ®
®
« 0 ··· 0 ¬
Ir
0r ,n−r
La matrice , où r = rang(A), s’appelle la forme normale d’Hermite de A
0m−r,r 0m−r,n−r
Définition 2.6. La valeur commune dimK (Lig(A)) = dimK (Im(A)) s’appelle le rang de la matrice A.
D’après le théorème, rang(A) peut se calculer en recherchant une forme ligne-échelonnée ou colonne-
échelonnée de A. De même, le rang de tout système S = {v 1 , . . . , vm } de vecteurs dans E peut se
calculer de manière très pratique comme il suit, si B = (e 1 , . . . , en ) est une base de E.
6
Ín
— On écrit chaque vecteur vi dans la base B, par exemple, vi = j=1 ai,j e j et on considère le
vecteur Xi = (ai,1 , . . . , ai,n ) ∈ Kn des coordonnées de vi dans B.
— En disposant ces vecteurs en ligne, on obtient une matrice A = (ai,j )i,j ∈ Mm,n (K) dont les
vecteur-lignes sont précisément X 1 , X 2 , . . . , Xm .
— Puis par les opérations élémentaires sur les lignes, on transforme A en une matrice ligne-
échelonnée A0.
1. On au aura alors : rang(S) = dim Vect(S) = rang(A) = r le nombre de ligne non nulle de A0.
2. Une base de Vect(S). Cette approche donne aussi une base de Vect(S) en considérant les
vecteurs (dont les coordonnées dans la base de travail B sont ) donnés par les lignes non nulles
de A0, ceci puisque Lig(A) = Lig(A0). Mais avec cette approche si l’on veut plutôt une base de
Vect(S) extraite du système initial S, il faut tenir compte de permutations éventuelles de
lignes dans la série des opérations effectuées pour savoir quelles lignes de A correspondent au
lignes non-nulles de A0. Par exemple, si on n’a effectué aucune permutation de ligne et si le
rang est r , alors les r premiers vecteurs de S forment une base de Vect(S).
Corollaire 2.5 (Théorème du rang matriciel). Soit A ∈ Mm,n (K). Alors dim ker(A) + rang(A) = n.