✖

Rang d’une matrice

Le rang d’une matrice est le nombre de lignes ou de colonnes indépendantes de la matrice.

Définition

Le rang d’une matrice est le nombre maximal de lignes (ou de colonnes) linéairement indépendantes de la matrice. La matrice nulle a un rang nul, toute autre matrice a un rang au moins égal à 1. Une matrice de taille m × n a un rang au plus égal à min(m ; n). Donc si une matrice a moins de lignes que de colonnes, son rang est au plus égal au nombre de lignes. Même chose pour les colonnes.

On note rg(A) le rang de la matrice A (en anglais, on utilise le mot « rank »). On écrit alors rg(A) = x.

Comment calculer le rang

Voyons maintenant comment on calcule le rang d’une matrice. C’est assez simple. Il faut transformer la matrice en une forme où l’on voit clairement quelles lignes sont linéairement indépendantes. On le fait le plus souvent en passant à la forme échelonnée (des zéros sous la diagonale), et on voit alors où en est la matrice. Passons tout de suite à un exemple : prenons cette matrice.

(12111−1133)

On veut déterminer son rang. Il faut d’abord remarquer un détail. Si deux lignes ne contiennent que des nombres non nuls, elles peuvent en théorie être linéairement dépendantes, et il faudrait le vérifier par le calcul. Mais si l’une des lignes a un zéro à une certaine position alors que l’autre n’a pas de zéro à cette même position, on peut affirmer avec certitude qu’elles ne sont pas dépendantes. En effet, aucun nombre ne permet de multiplier ce zéro (et donc toute la ligne) pour obtenir à cet endroit le même nombre que dans l’autre ligne. C’est pourquoi on cherche toujours à transformer les matrices en forme échelonnée, afin d’y faire apparaître ces zéros.

On peut écrire le paragraphe précédent ainsi. Si α1, α2 ≠ 0, alors :

α1(123)+α2(023)≠(0ab)

On cherche donc à mettre la matrice sous une forme semblable, afin de voir facilement les dépendances. Observe cet exemple :

(4−51072003)

C’est une matrice échelonnée, et aucune ligne n’est linéairement dépendante. Tu ne peux pas exprimer la troisième ligne à l’aide des deux premières, car si les coefficients α sont non nuls, il te restera toujours un nombre non nul dans les premières positions.

On procède en général ainsi : on obtient d’abord des zéros dans la première colonne (sauf sur la première ligne). Puis on continue pour obtenir des zéros dans la deuxième colonne, puis dans la troisième, et ainsi de suite, jusqu’à obtenir une forme échelonnée. On compte les lignes non nulles, et voilà le rang de la matrice. On peut utiliser les opérations suivantes sans changer le rang de la matrice :

  • Échanger deux lignes quelconques.
  • Multiplier une ligne par une expression non nulle quelconque.
  • Ajouter une ligne à une autre.
  • Toutes les opérations précédentes peuvent aussi s’appliquer aux colonnes.

Exemple

Dans notre matrice précédente, on effectue les opérations ainsi. On regarde la relation entre les éléments a11 et a21. Ils sont égaux, donc pour obtenir un zéro à la position a21, il faut ajouter −1 fois la première ligne. On ajoute −1 fois la première ligne à la deuxième ligne (autrement dit, on retranche la première ligne de la deuxième) :

(1210−1−2133)

Nous avons maintenant un zéro là où nous le voulions. Il faut encore obtenir un zéro à la position a31. Il y a de nouveau un 1, donc on retranche simplement la première ligne :

(1210−1−2012)

Nous avons maintenant des zéros dans la première colonne, donc attaquons-nous à la deuxième. Les nombres a22 et a32 sont opposés, il suffit donc d’additionner les lignes :

(1210−1−2000)

Nous avons obtenu une ligne nulle. Les opérations sont terminées, nous sommes arrivés à une forme échelonnée. Il ne reste qu’à compter les lignes non nulles pour obtenir le rang : rg(A) = 2. Cette matrice a donc un rang égal à 2.

Deuxième exemple

Essayons maintenant de calculer le rang d’une matrice un peu plus grande :

(7251135−74−5102810−9)

Le rang d’une matrice est le nombre maximal de lignes linéairement indépendantes, donc on peut se permettre de mélanger les lignes comme on veut. Ici, il serait pratique d’avoir tout en haut une ligne qui commence par 1, pour faciliter les calculs. On peut donc échanger sans crainte la première et la deuxième ligne :

(135−772514−5102810−9)

On procède maintenant comme dans l’exemple précédent. Il faut n’avoir que des zéros dans la première colonne (sauf sur la première ligne), donc on ajoute à la deuxième ligne −7 fois la première, à la troisième −4 fois la première et à la dernière −2 fois la première. La première ligne reste inchangée :

(135−70−19−30500−17−19280205)

On échange de nouveau des lignes : cette fois, on met la dernière ligne à la place de la deuxième, à cause du 2 en deuxième position. On échange la deuxième et la quatrième ligne :

(135−702050−17−19280−19−3050)

Mais sous le 2, nous avons les nombres −17 et −19. Aucun des deux n’est divisible par 2, ce qui est bien peu pratique, voire franchement désagréable. On multiplie donc la troisième et la quatrième ligne par 2 :

(135−702050−34−38560−38−60100)

On peut maintenant continuer pour annuler la deuxième colonne. On ajoute à la troisième ligne 17 fois la deuxième ligne et à la quatrième 19 fois la deuxième :

(135−7020500−3814100−60195)

Nous voilà avec des nombres peu pratiques pour la suite, mais nous allons nous en sortir. Divisons la troisième ligne par −38 :

(135−70205001−141/3800−60195)

Multiplions maintenant la troisième ligne par 60 et ajoutons-la à la quatrième ligne :

(135−70205001−141/38000195−60⋅14138)∼(135−70205001−141/38000−52519)

Le nombre obtenu n’est pas joli, mais il est non nul. La matrice a donc un rang égal à 4 : elle ne contient aucune ligne linéairement dépendante.

Exemple avec un paramètre

Quel est le rang de la matrice A en fonction du paramètre q ?

A=(1817q58413)

Cet exercice est un peu plus compliqué, car il y a un paramètre q. Il faut trouver pour quelles valeurs de q la matrice a le rang maximal, s’il y en a, et pour lesquelles son rang est plus petit. On procède de façon classique, sauf que parfois, au lieu de valeurs concrètes, on calcule avec le q abstrait. Dans un premier temps, on déplace le paramètre q vers un endroit plus agréable, tout en bas à droite. On échange donc la deuxième ligne avec la troisième, puis la première colonne avec la dernière :

(1817q58413)∼(1817413q58)∼(178131485q)

Le paramètre est maintenant à un endroit où il gênera peu. Mais la première colonne contient des nombres peu pratiques ; en revanche, il y a un 1 au milieu : on le déplace en haut à gauche, c’est-à-dire qu’on échange la première et la deuxième ligne, puis la première et la deuxième colonne :

(178131485q)∼(314178185q)∼(134817158q)

Voilà une jolie matrice. On multiplie la première ligne par −8 et on l’ajoute à la deuxième ligne :

(134817158q)∼(1340−7−3158q)

On multiplie la première ligne par −5 et on l’ajoute à la troisième ligne :

(1340−7−3158q)∼(1340−7−310−7q−20)

Bien, la première colonne est comme on la voulait. On ajoute maintenant −1 fois la deuxième ligne à la troisième :

(1340−7−310−7q−20)∼(1340−7−3100q+11)

Les opérations sur la matrice sont terminées. Les deux premières lignes sont certainement linéairement indépendantes, mais la troisième peut être dépendante. Elle l’est si elle est entièrement nulle, c’est-à-dire si on choisit le paramètre q de façon que l’expression q + 11 soit égale à zéro. Visiblement, pour q = −11, la ligne est nulle, donc linéairement dépendante.

Conclusion : pour q = −11, la matrice a un rang égal à 2 ; sinon, son rang est égal à 3.