Éducation Nationale Française · ECGapprofondies
Systèmes linéaires
Beaucoup de questions concrètes — équilibrer une équation chimique, déterminer les concentrations d'un mélange, faire passer une courbe par des points donnés, équilibrer l'offre et la demande sur plusieurs marchés — reviennent à résoudre simultanément plusieurs équations linéaires à plusieurs inconnues. Ce chapitre met en place le langage des systèmes linéaires et une unique technique fiable pour tous les résoudre : la méthode du pivot de Gauss. L'idée est simple : remplacer le système par un système équivalent — mêmes solutions — assez simple pour se lire directement. On retrouve en chemin le fait structurel qu'un système linéaire a toujours une solution, aucune solution, ou une infinité, et le chapitre se termine en réécrivant tout système sous forme matricielle \(AX = Y\), puis en utilisant le même pivot de Gauss comme algorithme pour calculer \(A^{-1}\). Les inconnues et les coefficients sont réels tout au long ; le vocabulaire matriciel, le produit matriciel, l'inverse \(A^{-1}\) et l'ensemble \(\mathrm{GL}_n(\mathbb{R})\) sont importés tels quels du chapitre précédent, Matrices.
I
Équations et systèmes linéaires
I.1
Équation linéaire et solution
La brique de base est l'équation linéaire : chaque inconnue n'apparaît qu'à la puissance un, sans produit de deux inconnues et sans autre fonction qui leur soit appliquée. Les coefficients peuvent être n'importe quels réels, \(0\) compris.
Définition — Équation linéaire
Soit \(p \in \mathbb{N}^{*}\). Une équation linéaire aux \(p\) inconnues \(x_1, \dots, x_p\) est une équation de la forme $$a_1 x_1 + a_2 x_2 + \dots + a_p x_p = b,$$ où les coefficients \(a_1, \dots, a_p\) et le second membre \(b\) sont des réels fixés. Une solution est un \(p\)-uplet \((x_1, \dots, x_p) \in \mathbb{R}^p\) qui rend l'égalité vraie. L'ensemble des solutions est noté \(S\). Si tous les coefficients sont nuls (\(a_1 = \dots = a_p = 0\)), l'équation se réduit à \(0 = b\), qui a pour solution tout \(p\)-uplet si \(b = 0\), et aucune solution si \(b \neq 0\). Exemple
L'équation \(2x - 3y + z = 4\) est linéaire en \((x, y, z)\), et \((2, 0, 0)\) en est une solution car \(2 \cdot 2 - 3 \cdot 0 + 0 = 4\). En revanche \(xy = 1\) (produit d'inconnues) et \(x^2 + y = 0\) (carré) ne sont pas linéaires. Exemple
Une seule équation linéaire \(2x + y = 4\) à deux inconnues a une infinité de solutions : pour toute valeur de \(x\), on pose \(y = 4 - 2x\). Ses solutions sont les points d'une droite du plan, \(S = \{(x, 4 - 2x) \mid x \in \mathbb{R}\}\). Compétences à pratiquer
- Reconnaître des équations linéaires
- Vérifier une solution
I.2
Systèmes linéaires
Réunir plusieurs équations linéaires, toutes à satisfaire en même temps, donne un système linéaire. On convient d'une écriture compacte et de ce que veut dire le résoudre.
Définition — Système linéaire
Soient \(n, p \in \mathbb{N}^{*}\). Un système linéaire de \(n\) équations à \(p\) inconnues est une liste de \(n\) équations linéaires à satisfaire simultanément : $$\left\{ \begin{array}{rcl} a_{11} x_1 + \dots + a_{1p} x_p &=& b_1 \\
\vdots & & \vdots \\
a_{n1} x_1 + \dots + a_{np} x_p &=& b_n. \end{array} \right.$$ On l'appelle système \(n \times p\). La \(i\)-ème équation est notée \(L_i\) (sa ligne). Une solution est un \(p\)-uplet satisfaisant toutes les \(n\) équations ; résoudre le système, c'est décrire l'ensemble \(S\) de toutes ses solutions. Définition — Système homogène
Un système linéaire est homogène lorsque tous les seconds membres sont nuls (\(b_1 = \dots = b_n = 0\)). Un système homogène admet toujours au moins la solution nulle \((0, \dots, 0)\). Exemple
Le système \(2 \times 2\) $$\left\{ \begin{array}{rcl} 2x + 3y &=& 8 \\
x - y &=& -1 \end{array} \right.$$ a l'unique solution \((1, 2)\) : en effet \(2 \cdot 1 + 3 \cdot 2 = 8\) et \(1 - 2 = -1\). Exemple
Le système homogène \(3 \times 3\) $$\left\{ \begin{array}{rcl} x + y + z &=& 0 \\
2x - y &=& 0 \\
x + y - z &=& 0 \end{array} \right.$$ admet la solution nulle \((0, 0, 0)\) par substitution directe. On verra plus bas s'il en a d'autres. Proposition — Lecture géométrique d'un système deux par deux non dégénéré
On considère un système \(2 \times 2\) dans lequel chacune des deux équations a au moins un coefficient non nul (non dégénéré). Chaque équation est alors l'équation d'une droite du plan, et les solutions du système sont les points communs aux deux droites. Exactement trois configurations se produisent : - les deux droites se coupent en un point : le système a exactement une solution ;
- les deux droites sont parallèles distinctes : le système n'a aucune solution ;
- les deux droites sont confondues : le système a une infinité de solutions.
Deux droites du plan sont soit sécantes (un point d'intersection), soit parallèles distinctes (aucune intersection), soit confondues (une infinité de points d'intersection) : ces trois configurations épuisent les possibilités pour deux droites du plan. Comme l'ensemble des solutions du système est exactement l'intersection des deux droites correspondantes, ces mêmes trois configurations décrivent l'ensemble des solutions du système.
Exemple
Les trois configurations, dessinées pour deux droites du plan :
Compétences à pratiquer
- Lire un système
- Détecter un système homogène
- Lire le cas géométrique en dimension 2
II
Systèmes équivalents et opérations élémentaires
II.1
Systèmes équivalents
Résoudre un système repose sur un seul principe : le remplacer par un système plus simple ayant les mêmes solutions. Deux systèmes ayant le même ensemble de solutions sont dits équivalents.
Définition — Systèmes équivalents
Deux systèmes linéaires aux mêmes inconnues sont équivalents lorsqu'ils ont exactement le même ensemble de solutions. On note le passage de l'un à l'autre par le symbole \(\Longleftrightarrow\) placé entre les deux systèmes. Exemple
Multiplier une équation par un nombre non nul donne un système équivalent : $$\left\{ \begin{array}{rcl} x + y &=& 3 \\
2x - y &=& 0 \end{array} \right. \Longleftrightarrow \left\{ \begin{array}{rcl} 3x + 3y &=& 9 \\
2x - y &=& 0. \end{array} \right.$$ Les deux ont l'unique solution \((1, 2)\). Exemple
Deux systèmes équivalents peuvent sembler très différents. Les deux systèmes $$\left\{ \begin{array}{rcl} x + y &=& 3 \\
3y &=& 6 \end{array} \right. \quad \text{et} \quad \left\{ \begin{array}{rcl} x + y &=& 3 \\
2x + 5y &=& 12 \end{array} \right.$$ ont tous deux \((1, 2)\) pour unique solution et sont équivalents — le second s'obtient à partir du premier en ajoutant \(2 L_1\) à \(L_2\), opération qui sera justifiée juste en dessous. Compétences à pratiquer
- Vérifier une équivalence par une opération élémentaire
II.2
Opérations élémentaires
Trois opérations sur les équations d'un système ne changent jamais ses solutions. On adopte les notations du programme : \(L_j \leftrightarrow L_i\) pour un échange, et la forme combinée \(L_i \leftarrow a L_i + b L_j\) avec \(a \neq 0\) et \(i \neq j\) pour l'opération de dilatation-combinaison qui effectue l'élimination. L'enchaînement de ces opérations est tout le moteur de la méthode du pivot.
Définition — Opérations élémentaires
Les opérations élémentaires sur un système linéaire sont : - l'échange : permuter deux équations, noté \(L_j \leftrightarrow L_i\) (avec \(i \neq j\)) ;
- la dilatation-combinaison combinée : remplacer une équation par un multiple non nul d'elle-même plus un multiple d'une autre, noté \(L_i \leftarrow a L_i + b L_j\) avec \(a \neq 0\) et \(i \neq j\).
- la dilatation, lorsque \(b = 0\) : \(L_i \leftarrow a L_i\) avec \(a \neq 0\) ;
- la combinaison, lorsque \(a = 1\) : \(L_i \leftarrow L_i + b L_j\) avec \(i \neq j\), qui ajoute \(b\) fois \(L_j\) à \(L_i\) sans changer le « poids » de \(L_i\) elle-même.
Proposition — Les opérations élémentaires conservent les solutions
Chaque opération élémentaire transforme un système linéaire en un système équivalent. De plus toute opération élémentaire se défait par une opération élémentaire de même type.
On vérifie les deux types d'opération.
- Échange. L'opération \(L_j \leftrightarrow L_i\) ne fait que réordonner la liste des équations ; les conditions imposées à un \(p\)-uplet sont inchangées, donc les ensembles de solutions coïncident. Le même échange \(L_j \leftrightarrow L_i\) effectué une seconde fois rétablit l'ordre initial.
- Opération combinée \(L_i \leftarrow a L_i + b L_j\) avec \(a \neq 0\). Notons \((S)\) le système initial et \((S')\) le nouveau système (dans lequel seule \(L_i\) a changé ; toute autre ligne est identique). Pour un \(p\)-uplet \(X = (x_1, \dots, x_p)\) : $$\begin{aligned} X \text{ est solution de } (S) &\iff \text{chaque } L_k(X) = b_k && \text{(définition)} \\ &\implies a L_i(X) + b L_j(X) = a b_i + b b_j && \text{(combinaison linéaire)} \\ &\iff (a L_i + b L_j)(X) = a b_i + b b_j && \text{(linéarité de } L_i, L_j \text{)} \\ &\iff X \text{ satisfait la nouvelle } L_i && \text{(c'est la nouvelle ligne),} \end{aligned}$$ donc \(X \in S\) implique \(X \in S'\). Réciproquement, \(X \in S'\) implique \(X \in S\) car l'opération inverse \(L_i \leftarrow \tfrac{1}{a} L_i - \tfrac{b}{a} L_j\) restitue la \(L_i\) initiale (et cette opération est encore de la même forme combinée, puisque le coefficient de \(L_i\) vaut \(\tfrac{1}{a} \neq 0\)). Ainsi \(S = S'\).
Les conditions \(a \neq 0\) et \(i \neq j\) sont essentielles
La condition \(a \neq 0\) interdit de multiplier \(L_i\) par \(0\), ce qui effacerait \(L_i\) et pourrait ajouter des solutions. La condition \(i \neq j\) est ce qui garantit, dans l'énoncé inconditionnel ci-dessus, que la nouvelle \(L_i\) conserve l'information de \(L_i\) elle-même : lorsque \(i = j\) l'opération devient \(L_i \leftarrow (a + b) L_i\), qui ne préserve l'équivalence que si \(a + b \neq 0\) — hypothèse supplémentaire que la forme du programme \(L_i \leftarrow a L_i + b L_j\) évite précisément en imposant \(i \neq j\). Bref, les deux conditions de la définition sont nécessaires pour que l'équivalence soit inconditionnelle.
Exemple
Sur le système ci-dessous, la combinaison \(L_2 \leftarrow L_2 - 2 L_1\) (c'est \(L_2 \leftarrow 1 \cdot L_2 + (-2) L_1\), de la forme combinée avec \(a = 1\)) élimine \(x\) de la deuxième équation : $$\left\{ \begin{array}{rcl} x + y &=& 3 \\
2x + 5y &=& 12 \end{array} \right. \Longleftrightarrow \left\{ \begin{array}{rcl} x + y &=& 3 \\
3y &=& 6. \end{array} \right.$$ La deuxième équation donne maintenant \(y = 2\), puis la première donne \(x = 1\). Exemple
Un échange est parfois utile pour placer un coefficient égal à \(1\) en haut. Sur le système \(\{ 2x + 3y = 8,\ x - y = -1 \}\), l'opération \(L_1 \leftrightarrow L_2\) donne \(\{ x - y = -1,\ 2x + 3y = 8 \}\), dont la première équation a maintenant un coefficient principal \(1\), ce qui simplifie les opérations suivantes. Méthode — Éliminer une inconnue d'une ligne à l'aide d'une autre
Pour retirer une inconnue \(x\) de l'équation \(L_i\) à l'aide de l'équation \(L_j\) où \(x\) a le coefficient \(\alpha \neq 0\) : notons \(\gamma\) le coefficient de \(x\) dans \(L_i\), puis appliquons \(L_i \leftarrow \alpha L_i - \gamma L_j\) (forme combinée, avec \(a = \alpha \neq 0\)). Le coefficient de \(x\) dans la nouvelle \(L_i\) vaut \(\alpha \gamma - \gamma \alpha = 0\), et le système reste équivalent. Compétences à pratiquer
- Appliquer une opération élémentaire
- Éliminer une inconnue d'une ligne
III
La méthode du pivot de Gauss
III.1
Forme échelonnée
Le but des opérations élémentaires est d'atteindre une forme en escalier, la forme échelonnée, dans laquelle chaque équation commence plus à droite que celle du dessus. On y lit directement les solutions.
Définition — Pivot et forme échelonnée
Dans une équation non nulle, le coefficient dominant est le coefficient de la première inconnue qui apparaît avec un coefficient non nul, et cette inconnue est le pivot de l'équation. Une équation de la forme \(0 = b\) (tous les coefficients nuls) n'a pas de pivot et est appelée ligne triviale : \(0 = 0\) est « toujours vraie » et peut être supprimée, tandis que \(0 = b\) avec \(b \neq 0\) est « impossible » et signale un système incohérent. Un système linéaire est sous forme échelonnée lorsque, de haut en bas, les équations non triviales sont disposées de telle sorte que chaque pivot soit strictement à droite du pivot du dessus, et que les lignes triviales soient placées en bas. Exemple
Le système ci-dessous est sous forme échelonnée. Les pivots sont \(x\) dans \(L_1\), \(y\) dans \(L_2\), \(z\) dans \(L_3\), chacun strictement à droite du précédent : $$\left\{ \begin{array}{rcl} x + 2y - z &=& 1 \\
y + 3z &=& 4 \\
2z &=& 6. \end{array} \right.$$ Exemple
Le système ci-dessous est aussi sous forme échelonnée, avec deux équations non triviales et une ligne triviale en bas. Les pivots sont \(x\) dans \(L_1\) et \(y\) dans \(L_2\) ; la ligne \(L_3\) est \(0 = 0\), toujours vraie : $$\left\{ \begin{array}{rcl} x + y - z &=& 1 \\
3y - 3z &=& 1 \\
0 &=& 0. \end{array} \right.$$ L'inconnue \(z\) n'a pas de pivot — elle jouera un rôle particulier au section 4. Compétences à pratiquer
- Reconnaître la forme échelonnée
III.2
Pivot de Gauss — par l'exemple
Le pivot de Gauss est la façon de procéder qui amène les systèmes rencontrés sous forme échelonnée ; ensuite une remontée depuis la dernière ligne donne les solutions (ou conclut \(S = \emptyset\)). À ce niveau on le présente comme une façon de travailler à travers des exemples résolus, et non comme un algorithme formel.
Méthode — Le pivot de Gauss
Descente. On regarde la première colonne (coefficients de \(x_1\)). Si tous les coefficients sont nuls, l'inconnue \(x_1\) n'apparaît pas dans le système : on saute la colonne et on passe à \(x_2\), en répétant le test. Sinon, on choisit une équation à coefficient non nul pour l'inconnue courante, on l'amène en haut (par \(L_j \leftrightarrow L_i\) si besoin), et on l'utilise comme pivot. Par des opérations combinées \(L_i \leftarrow \alpha L_i + b L_1\) (avec \(\alpha = a_{11}\) au pivot et \(b = -a_{i1}\), le choix étant imposé par la ligne à éliminer), on annule l'inconnue courante dans toutes les équations du dessous. On met \(L_1\) de côté et on recommence sur les équations restantes : on parcourt les colonnes restantes de gauche à droite, on saute toute colonne entièrement nulle, et on utilise la première colonne à coefficient non nul (en dessous) comme colonne pivot suivante. Lecture. On s'arrête à la forme échelonnée (plus de colonne à traiter, ou seulement des lignes triviales restantes). Alors, soit une ligne triviale \(0 = b\) avec \(b \neq 0\) apparaît (aucune solution), soit une remontée depuis la dernière équation non triviale exprime chaque inconnue pivot en fonction des inconnues non pivots. Exemple
Résoudre dans \(\mathbb{R}\) : $$\left\{ \begin{array}{rcl} x + y + z &=& 6 \\
2x - y + z &=& 3 \\
x + 2y - z &=& 2. \end{array} \right.$$
On prend \(x\) dans \(L_1\) comme premier pivot. On annule \(x\) en dessous par \(L_2 \leftarrow L_2 - 2 L_1\) et \(L_3 \leftarrow L_3 - L_1\) (toutes deux de la forme combinée avec \(\alpha = 1\)) : $$\left\{ \begin{array}{rcl} x + y + z &=& 6 \\
-3y - z &=& -9 \\
y - 2z &=& -4. \end{array} \right.$$ On prend \(y\) dans la nouvelle \(L_2\) comme pivot suivant (coefficient \(-3 \neq 0\)). On annule \(y\) dans \(L_3\) par \(L_3 \leftarrow 3 L_3 + L_2\) (forme combinée avec \(\alpha = 3 \neq 0\)) : $$\left\{ \begin{array}{rcl} x + y + z &=& 6 \\
-3y - z &=& -9 \\
-7z &=& -21. \end{array} \right.$$ Le système est échelonné, avec trois pivots (\(x\), \(y\), \(z\)). La remontée donne $$\begin{aligned} z &= 3 && \text{(dernière équation)} \\
y &= \frac{9 - z}{3} = \frac{9 - 3}{3} = 2 && \text{(deuxième équation)} \\
x &= 6 - y - z = 6 - 2 - 3 = 1 && \text{(première équation).} \end{aligned}$$ L'unique solution est \((1, 2, 3)\), et l'on vérifie que les trois équations initiales sont satisfaites. Ainsi \(S = \{(1, 2, 3)\}\).
Exemple
Résoudre dans \(\mathbb{R}\) : $$\left\{ \begin{array}{rcl} x + y - z &=& 1 \\
2x - y + z &=& 3. \end{array} \right.$$
On prend \(x\) dans \(L_1\) comme pivot. On annule \(x\) dans \(L_2\) par \(L_2 \leftarrow L_2 - 2 L_1\) : $$\left\{ \begin{array}{rcl} x + y - z &=& 1 \\
-3y + 3z &=& 1. \end{array} \right.$$ Le système est sous forme échelonnée avec deux pivots (\(x\), \(y\)) ; l'inconnue \(z\) n'a pas de pivot. Posons \(z = t\) avec \(t \in \mathbb{R}\) (paramètre libre). Alors $$\begin{aligned} y &= z - \tfrac{1}{3} = t - \tfrac{1}{3} && \text{(deuxième équation)} \\
x &= 1 - y + z = 1 - \left(t - \tfrac{1}{3}\right) + t = \tfrac{4}{3} && \text{(première équation).} \end{aligned}$$ Donc \(S = \left\{ \left(\tfrac{4}{3},\ t - \tfrac{1}{3},\ t\right) \mid t \in \mathbb{R} \right\}\) : une infinité de solutions, décrites par l'unique paramètre \(t\).
Exemple
Résoudre dans \(\mathbb{R}\) : $$\left\{ \begin{array}{rcl} x + y + z &=& 1 \\
2x + 2y + 2z &=& 3. \end{array} \right.$$
On prend \(x\) dans \(L_1\) comme pivot. On annule \(x\) dans \(L_2\) par \(L_2 \leftarrow L_2 - 2 L_1\) : $$\left\{ \begin{array}{rcl} x + y + z &=& 1 \\
0 &=& 1. \end{array} \right.$$ La deuxième ligne est \(0 = 1\), impossible. Le système est incohérent et \(S = \emptyset\).
Choix du pivot, coefficients dépendant d'un paramètre
Tout coefficient non nul de la colonne courante peut servir de pivot ; choisir un coefficient égal à \(1\) lorsqu'il y en a un garde des calculs simples et évite les fractions le plus longtemps possible. Lorsqu'aucun tel \(1\) n'est disponible, les multiplications \(L_i \leftarrow \alpha L_i + b L_1\) (avec \(\alpha = a_{11}\) au pivot de tête) multiplient la ligne \(L_i\) par \(\alpha\), puis ajoutent un multiple de \(L_1\) ; en fin de calcul on peut diviser toute la ligne par \(\alpha\) pour retrouver des coefficients à l'échelle initiale.
Attention si les coefficients dépendent d'un paramètre \(m\). La condition \(\alpha \neq 0\) dans \(L_i \leftarrow \alpha L_i + b L_j\) est ce qui garantit l'équivalence. Lorsque \(\alpha\) dépend d'un paramètre réel \(m\), appliquer une opération de la forme \(L_i \leftarrow m L_i + b L_j\) exige de discuter le cas \(m = 0\) séparément : l'opération n'est légitime que sur l'ensemble \(\{m \neq 0\}\), et le système à \(m = 0\) doit être résolu par un autre chemin (souvent il est alors bien plus simple). Oublier ce cas est une erreur fréquente dans les systèmes à paramètre.
Attention si les coefficients dépendent d'un paramètre \(m\). La condition \(\alpha \neq 0\) dans \(L_i \leftarrow \alpha L_i + b L_j\) est ce qui garantit l'équivalence. Lorsque \(\alpha\) dépend d'un paramètre réel \(m\), appliquer une opération de la forme \(L_i \leftarrow m L_i + b L_j\) exige de discuter le cas \(m = 0\) séparément : l'opération n'est légitime que sur l'ensemble \(\{m \neq 0\}\), et le système à \(m = 0\) doit être résolu par un autre chemin (souvent il est alors bien plus simple). Oublier ce cas est une erreur fréquente dans les systèmes à paramètre.
Méthode — Calculer en Python : résoudre numériquement un système
Le module numpy de Python fournit la commande numpy.linalg.solve(A, Y), qui renvoie une approximation numérique (en virgule flottante) de la solution \(X\) du système \(A X = Y\), à condition que \(A\) soit carrée et que le système admette une unique solution (on verra au section 5 que c'est exactement le cas où \(A\) est inversible). Pour les systèmes ayant plusieurs solutions ou aucune solution, cette commande n'est pas adaptée et l'on utilise le pivot de Gauss exact ci-dessus — à la main, ou en le programmant sur un exemple (chaque étape est une opération \(L_i \leftarrow \alpha L_i + b L_j\), qui s'écrit naturellement comme une boucle sur les colonnes). L'inventaire des commandes numpy est celui introduit dans Matrices. Compétences à pratiquer
- Résoudre par le pivot de Gauss — unique solution
- Résoudre par le pivot de Gauss — infinité
- Résoudre par le pivot de Gauss — aucune solution
IV
Forme de l'ensemble des solutions
IV.1
Les trois cas
La forme échelonnée indique aussitôt laquelle des trois formes prend l'ensemble des solutions. Tout dépend du nombre de pivots et de l'apparition ou non d'une ligne triviale impossible.
Proposition — Les trois cas
Un système linéaire admet exactement l'un des trois cas suivants : une unique solution, une infinité de solutions, ou aucune solution. Sur une forme échelonnée du système, les trois cas se lisent ainsi : - si une ligne triviale \(0 = b\) avec \(b \neq 0\) apparaît, le système n'a aucune solution (\(S = \emptyset\)) ;
- sinon, si toutes les inconnues sont des pivots, le système a exactement une solution ;
- sinon (aucune ligne impossible et au moins une inconnue sans pivot), le système a une infinité de solutions, décrites par les inconnues sans pivot prises comme paramètres libres.
On travaille sur une forme échelonnée du système, obtenue en exécutant le pivot de Gauss ; le fait que les systèmes rencontrés à ce niveau atteignent toujours une telle forme en un nombre fini d'opérations élémentaires est présenté (selon le programme) à travers des exemples résolus, donc on l'admet ici. Les équations non triviales de la forme échelonnée sont exactement les équations pivots (une par pivot) et les lignes triviales sont \(0 = b_k\) pour certains \(b_k \in \mathbb{R}\).
- Si une ligne triviale est \(0 = b_k\) avec \(b_k \neq 0\), cette seule équation n'a aucune solution, donc le système entier n'en a aucune : \(S = \emptyset\).
- Sinon, toute ligne triviale est \(0 = 0\) et peut être supprimée. Deux sous-cas apparaissent alors, selon que toutes les inconnues sont des pivots ou non :
- si toutes les inconnues sont des pivots, la dernière équation pivot fixe la dernière inconnue de manière unique ; en remontant, chaque équation pivot fixe son inconnue pivot en fonction des inconnues du dessous, déjà fixées. La solution est unique.
- si au moins une inconnue n'a pas de pivot, on attribue à ces inconnues sans pivot des valeurs réelles quelconques (paramètres libres) ; la remontée détermine alors les inconnues pivots comme expressions linéaires des paramètres. Des choix distincts de paramètres donnent des solutions distinctes, donc une infinité.
Proposition — Cas homogène
Un système linéaire homogène admet exactement l'un des deux cas suivants : exactement une solution (nécessairement la solution nulle), ou une infinité de solutions. Le cas « aucune solution » est exclu.
Le \(p\)-uplet nul \((0, \dots, 0)\) est toujours solution d'un système homogène (chaque \(L_k(0, \dots, 0) = 0 = b_k\) puisque \(b_k = 0\)). Donc \(S \neq \emptyset\). De plus, le pivot de Gauss ne fait qu'ajouter des combinaisons linéaires d'équations dont les seconds membres sont nuls, donc tout second membre reste nul au cours de la descente : aucune ligne \(0 = b\) avec \(b \neq 0\) ne peut apparaître. D'après la Proposition des trois cas, le système a donc soit exactement une solution, soit une infinité.
Compétences à pratiquer
- Identifier le cas
- Raisonner sur un système homogène
IV.2
Lire l'ensemble des solutions sur la forme échelonnée
Une fois une forme échelonnée atteinte, la recette pour écrire \(S\) est uniforme. On sépare les inconnues entre celles à pivot (dites principales) et les autres (dites secondaires, ou paramètres libres), puis on remonte.
Définition — Inconnues principales et secondaires
Étant donné un système sous forme échelonnée sans ligne impossible, les inconnues qui sont des pivots sont les inconnues principales ; les inconnues restantes (celles qui ne sont pas des pivots) sont les inconnues secondaires, aussi appelées libres ou paramètres. On donne aux inconnues secondaires des valeurs réelles quelconques, puis on calcule les inconnues principales en fonction d'elles par remontée. Exemple
Le système échelonné aux trois inconnues $$\left\{ \begin{array}{rcl} x + y - z &=& 1 \\
3y - 3z &=& 1 \end{array} \right.$$ a deux pivots (\(x\), \(y\)) et une inconnue sans pivot (\(z\)). Les inconnues principales sont \(x\) et \(y\), l'inconnue secondaire est \(z\) ; il y a une inconnue secondaire, donc l'ensemble des solutions sera décrit par un paramètre. Méthode — Lire l'ensemble des solutions sur une forme échelonnée
Après exécution du pivot de Gauss jusqu'à la forme échelonnée : (1) si une ligne triviale \(0 = b\) avec \(b \neq 0\) est présente, conclure \(S = \emptyset\) ; (2) sinon supprimer les lignes triviales \(0 = 0\), puis identifier les inconnues principales (pivots) et les inconnues secondaires (les autres) ; (3) nommer chaque inconnue secondaire par un paramètre (\(t\), \(s\), \(\dots \in \mathbb{R}\)) ; (4) remonter depuis la dernière équation non triviale pour exprimer chaque inconnue principale comme fonction linéaire des paramètres ; (5) écrire \(S\) comme l'ensemble de tous les \(p\)-uplets obtenus. Exemple
Résoudre dans \(\mathbb{R}\) : $$\left\{ \begin{array}{rcl} x + 2y + z &=& 4 \\
2x + 4y + 3z &=& 9. \end{array} \right.$$
On annule \(x\) dans \(L_2\) par \(L_2 \leftarrow L_2 - 2 L_1\) : $$\left\{ \begin{array}{rcl} x + 2y + z &=& 4 \\
z &=& 1. \end{array} \right.$$ Le système est échelonné. Pivots : \(x\) dans \(L_1\), \(z\) dans \(L_2\) (à noter : \(L_2\) ne contient pas \(y\), donc l'inconnue de tête dans \(L_2\) est \(z\), strictement à droite de \(x\)) ; les inconnues principales sont \(x\) et \(z\), et la seule inconnue secondaire est \(y\). Posons \(y = t\) avec \(t \in \mathbb{R}\). Alors $$\begin{aligned} z &= 1 && \text{(deuxième équation)} \\
x &= 4 - 2y - z = 4 - 2t - 1 = 3 - 2t && \text{(première équation).} \end{aligned}$$ Donc \(S = \{(3 - 2t,\ t,\ 1) \mid t \in \mathbb{R}\}\) : une infinité de solutions, paramétrées par \(t\).
Compétences à pratiquer
- Paramétrer l'ensemble des solutions
V
Écriture matricielle et inverse par Gauss
V.1
Écriture matricielle d'un système
Un système linéaire est une seule équation matricielle \(A X = Y\), où \(A\) rassemble les coefficients, \(X\) les inconnues (matrice colonne), et \(Y\) les seconds membres. Cela reformule en langage matriciel toutes les sections précédentes et fait le lien direct avec les outils matriciels du chapitre précédent, Matrices.
Définition — Écriture matricielle \(A X \equal Y\)
Soient \(n, p \in \mathbb{N}^{*}\). Le système linéaire \(n \times p\) $$\left\{ \begin{array}{rcl} a_{11} x_1 + \dots + a_{1p} x_p &=& b_1 \\
\vdots & & \vdots \\
a_{n1} x_1 + \dots + a_{np} x_p &=& b_n \end{array} \right.$$ s'écrit sous forme matricielle \(A X = Y\), où $$A = (a_{ij}) \in \mathcal{M}_{n,p}(\mathbb{R}), \qquad X = \begin{pmatrix} x_1 \\
\vdots \\
x_p \end{pmatrix} \in \mathcal{M}_{p,1}(\mathbb{R}), \qquad Y = \begin{pmatrix} b_1 \\
\vdots \\
b_n \end{pmatrix} \in \mathcal{M}_{n,1}(\mathbb{R}).$$ La matrice \(A\) est la matrice du système, \(X\) la colonne des inconnues, \(Y\) la colonne des seconds membres. Une solution du système est une colonne \(X\) telle que \(A X = Y\). Exemple
Le système \(3 \times 3\) $$\left\{ \begin{array}{rcl} x + y + z &=& 6 \\
2x - y + z &=& 3 \\
x + 2y - z &=& 2 \end{array} \right.$$ s'écrit \(A X = Y\) avec $$A = \begin{pmatrix} 1 & 1 & 1 \\
2 & -1 & 1 \\
1 & 2 & -1 \end{pmatrix}, \quad X = \begin{pmatrix} x \\
y \\
z \end{pmatrix}, \quad Y = \begin{pmatrix} 6 \\
3 \\
2 \end{pmatrix}.$$ La solution trouvée au Pivot de Gauss — par l'exemple est la colonne \(X = \begin{pmatrix} 1 \\ 2 \\ 3 \end{pmatrix}\). Proposition — Cas carré inversible
Soit \(A \in \mathcal{M}_n(\mathbb{R})\) une matrice carrée. Si \(A\) est inversible, alors pour tout \(Y \in \mathcal{M}_{n,1}(\mathbb{R})\) le système \(A X = Y\) a l'unique solution $$X = A^{-1} Y.$$
Supposons \(A\) inversible.
- Existence. La colonne \(X_0 = A^{-1} Y\) vérifie \(A X_0 = A (A^{-1} Y) = (A A^{-1}) Y = I_n Y = Y\), donc \(X_0\) est solution.
- Unicité. Si \(X\) est une solution quelconque de \(A X = Y\), on multiplie par \(A^{-1}\) à gauche : \(A^{-1} (A X) = A^{-1} Y\), soit \((A^{-1} A) X = A^{-1} Y\), donc \(X = A^{-1} Y = X_0\).
Exemple
Prenons \(A = \begin{pmatrix} 1 & 2 \\ 3 & 4 \end{pmatrix} \in \mathcal{M}_2(\mathbb{R})\) et \(Y = \begin{pmatrix} 5 \\ 11 \end{pmatrix}\). Le déterminant \(2 \times 2\) de \(A\) vaut \(\det(A) = 1 \cdot 4 - 2 \cdot 3 = -2 \neq 0\), donc d'après la formule d'inverse \(2 \times 2\) de Matrices, \(A\) est inversible et $$A^{-1} = \frac{1}{-2} \begin{pmatrix} 4 & -2 \\
-3 & 1 \end{pmatrix} = \begin{pmatrix} -2 & 1 \\
\tfrac{3}{2} & -\tfrac{1}{2} \end{pmatrix}.$$ Résolution de \(A X = Y\) : $$X = A^{-1} Y = \begin{pmatrix} -2 & 1 \\
\tfrac{3}{2} & -\tfrac{1}{2} \end{pmatrix} \begin{pmatrix} 5 \\
11 \end{pmatrix} = \begin{pmatrix} -10 + 11 \\
\tfrac{15}{2} - \tfrac{11}{2} \end{pmatrix} = \begin{pmatrix} 1 \\
2 \end{pmatrix}.$$ Vérification : \(A X = \begin{pmatrix} 1 + 4 \\ 3 + 8 \end{pmatrix} = \begin{pmatrix} 5 \\ 11 \end{pmatrix} = Y\). Compétences à pratiquer
- Écrire la forme matricielle
- Résoudre \(A X \equal Y\) via \(A^{-1}\) en taille 2
V.2
Calcul de \(A^{-1}\) par le pivot de Gauss
Le pivot de Gauss fournit un moyen algorithmique de calculer \(A^{-1}\) pour une matrice carrée \(A\) : résoudre le système \(A X = Y\) en gardant \(Y\) symbolique, et lire \(A^{-1}\) sur les formules linéaires exprimant \(X\) en fonction de \(Y\). Si au cours de la descente une ligne qui s'avère impossible pour certains \(Y\) apparaît, alors \(A\) n'est pas inversible. C'est exactement le chemin privilégié par le programme (« Calcul de l'inverse de la matrice \(A\) par la résolution du système \(A X = Y\) »).
Proposition — Test d'inversibilité par le pivot de Gauss
Soit \(A \in \mathcal{M}_n(\mathbb{R})\). On exécute le pivot de Gauss sur le système \(A X = Y\) avec \(Y = \begin{pmatrix} y_1 \\ \vdots \\ y_n \end{pmatrix}\) gardé symbolique. Deux cas se produisent : - la descente atteint une forme échelonnée avec \(n\) pivots (un par inconnue) et aucune ligne ne se ramène à une contrainte linéaire non triviale sur les \(y_i\) : la remontée donne un unique \(X\) dépendant linéairement de \(y_1, \dots, y_n\), soit \(X = B Y\) pour une matrice \(B \in \mathcal{M}_n(\mathbb{R})\) lue sur les formules. Alors \(A\) est inversible et \(A^{-1} = B\) ;
- la descente produit une ligne \(0 = (\text{combinaison linéaire des } y_i)\) qui n'est pas trivialement \(0 = 0\) (contrainte non triviale sur \(Y\)) : alors \(A\) n'est pas inversible.
On traite les deux cas.
- Premier cas : \(n\) pivots, aucune contrainte sur \(Y\). La remontée donne \(X = B Y\) pour une matrice \(B \in \mathcal{M}_n(\mathbb{R})\), valable pour tout \(Y \in \mathcal{M}_{n,1}(\mathbb{R})\). En reportant dans \(A X = Y\) : $$A B Y = Y \quad \text{pour tout } Y \in \mathcal{M}_{n,1}(\mathbb{R}).$$ En prenant pour \(Y\) chaque colonne canonique \(E_k\) (avec \(1\) en ligne \(k\) et \(0\) ailleurs), on obtient \((A B) E_k = E_k\), qui est la \(k\)-ème colonne de \(I_n\). Donc \(A B\) et \(I_n\) ont les mêmes colonnes, soit \(A B = I_n\). D'après la Remarque sur les inverses unilatéraux de Matrices, cette unique vérification suffit : \(A\) est inversible et \(A^{-1} = B\).
- Second cas : contrainte non triviale sur \(Y\). Choisissons un \(Y \in \mathcal{M}_{n,1}(\mathbb{R})\) particulier qui viole la contrainte linéaire (un tel \(Y\) existe toujours, car une forme linéaire non nulle sur \(\mathbb{R}^n\) prend des valeurs non nulles). Pour ce \(Y\), le système \(A X = Y\) n'a aucune solution. Si \(A\) était inversible, \(X = A^{-1} Y\) serait solution de \(A X = Y\) — contradiction. Donc \(A\) n'est pas inversible.
Méthode — Calculer \(A^{-1}\) en résolvant \(A X \equal Y\)
Soit \(A \in \mathcal{M}_n(\mathbb{R})\). (1) Écrire le système \(A X = Y\) avec \(Y = (y_1, \dots, y_n)^{\top}\) gardé symbolique. (2) Exécuter le pivot de Gauss, en gardant explicitement les combinaisons linéaires des \(y_i\) aux seconds membres. (3) Si à un moment une ligne devient \(0 = \) (combinaison linéaire non triviale des \(y_i\)), conclure que \(A\) n'est pas inversible. (4) Sinon, remonter : chaque \(x_i\) s'écrit comme combinaison linéaire de \(y_1, \dots, y_n\). (5) Les coefficients de cette combinaison linéaire sont les coefficients de \(A^{-1}\), ligne par ligne. Exemple
Calculer \(A^{-1}\) pour \(A = \begin{pmatrix} 1 & 1 & 0 \\ 0 & 1 & 1 \\ 1 & 0 & 1 \end{pmatrix} \in \mathcal{M}_3(\mathbb{R})\), en résolvant \(A X = Y\) avec \(Y = \begin{pmatrix} y_1 \\ y_2 \\ y_3 \end{pmatrix}\) symbolique.
Le système \(A X = Y\) s'écrit $$\left\{ \begin{array}{rcl} x_1 + x_2 &=& y_1 \\
x_2 + x_3 &=& y_2 \\
x_1 + x_3 &=& y_3. \end{array} \right.$$ On prend \(x_1\) dans \(L_1\) comme premier pivot. On annule \(x_1\) dans \(L_3\) par \(L_3 \leftarrow L_3 - L_1\) (\(L_2\) ne contient déjà pas \(x_1\)) : $$\left\{ \begin{array}{rcl} x_1 + x_2 &=& y_1 \\
x_2 + x_3 &=& y_2 \\
-x_2 + x_3 &=& y_3 - y_1. \end{array} \right.$$ On prend \(x_2\) dans \(L_2\) comme second pivot. On annule \(x_2\) dans \(L_3\) par \(L_3 \leftarrow L_3 + L_2\) : $$\left\{ \begin{array}{rcl} x_1 + x_2 &=& y_1 \\
x_2 + x_3 &=& y_2 \\
2 x_3 &=& y_2 + y_3 - y_1. \end{array} \right.$$ Le système est échelonné avec trois pivots, sans contrainte sur \(Y\). Remontée : $$\begin{aligned} x_3 &= \tfrac{1}{2}(- y_1 + y_2 + y_3) && \text{(troisième équation)} \\
x_2 &= y_2 - x_3 = y_2 - \tfrac{1}{2}(- y_1 + y_2 + y_3) = \tfrac{1}{2}(y_1 + y_2 - y_3) && \text{(deuxième équation)} \\
x_1 &= y_1 - x_2 = y_1 - \tfrac{1}{2}(y_1 + y_2 - y_3) = \tfrac{1}{2}(y_1 - y_2 + y_3) && \text{(première équation).} \end{aligned}$$ La lecture des coefficients de \(y_1, y_2, y_3\) ligne par ligne donne $$A^{-1} = \frac{1}{2} \begin{pmatrix} 1 & -1 & 1 \\
1 & 1 & -1 \\
-1 & 1 & 1 \end{pmatrix}.$$ Vérification : \(A \cdot A^{-1} = I_3\) par produit direct (les coefficients diagonaux donnent \(\tfrac{1}{2}(1 + 1) = 1\) chacun ; les coefficients hors-diagonale valent \(0\)).
Exemple
Appliquer la même méthode à \(A = \begin{pmatrix} 1 & 2 \\ 2 & 4 \end{pmatrix} \in \mathcal{M}_2(\mathbb{R})\) pour montrer que \(A\) n'est pas inversible.
Le système \(A X = Y\) s'écrit $$\left\{ \begin{array}{rcl} x_1 + 2 x_2 &=& y_1 \\
2 x_1 + 4 x_2 &=& y_2. \end{array} \right.$$ On applique \(L_2 \leftarrow L_2 - 2 L_1\) : $$\left\{ \begin{array}{rcl} x_1 + 2 x_2 &=& y_1 \\
0 &=& y_2 - 2 y_1. \end{array} \right.$$ La deuxième ligne donne la contrainte \(y_2 = 2 y_1\), contrainte linéaire non triviale sur \(Y\). D'après la Proposition, \(A\) n'est pas inversible. Cela coïncide avec le critère du déterminant \(2 \times 2\) de Matrices : \(\det(A) = 1 \cdot 4 - 2 \cdot 2 = 0\).
Pour aller plus loin
Le pivot de Gauss est l'outil central qui réapparaît dans tous les chapitres d'algèbre suivants : appliqué aux colonnes d'une matrice, il calcule un rang et teste l'inversibilité ; appliqué à une famille de vecteurs de \(\mathbb{R}^n\), il teste si la famille est libre et engendre un sous-espace donné. Le fait structurel qu'un système homogène ayant plus d'inconnues que d'équations non triviales admet une solution non nulle est la pierre angulaire de l'algèbre linéaire en dimension finie — un argument récurrent dès le chapitre suivant. Et lorsqu'un coefficient du système dépend lui-même d'un paramètre \(m\), la même descente révèle pour quelles valeurs de \(m\) le système a une, aucune, ou une infinité de solutions : discussion que l'on retrouvera avec le langage matriciel.
Compétences à pratiquer
- Calculer l'inverse par le pivot de Gauss
- Décider l'inversibilité par le pivot
VI
Pour aller plus loin
Compétences à pratiquer
- Discuter un système à paramètre
- Modéliser par un petit système linéaire
- Combiner \(A^{-1}\) et un paramètre
Aller à la section