13.4 Théorème de décomposition spectrale
Le Théorème Spectral

Un des résultats importants de l'algèbre linéaire:

Théorème: [Théorème spectral] Soit \(A\) une matrice de taille \(n\times n\). Alors \(A\) symétrique si et seulement si elle peut se diagonaliser à l'aide d'une matrice de changement de base orthogonale.

On dit que les matrices symétriques sont orthogonalement diagonalisables.

\(^{{\color{red} \star}}\) \(\Leftarrow\)) Supposons que \(A\) peut se diagonaliser à l'aide d'une matrice de changement de base \(G\) orthogonale: \(A=GDG^T\). Alors \[ A^T=(GDG^T)^T= (G^T)^TD^TG^T=GDG^T=A\,, \] donc \(A\) est symétrique.

\(\Rightarrow\)) Pour montrer ce résultat on va utiliser le résultat suivant.

Lemme: Soit \(A\) une matrice de taille \(n\times n\) symétrique. Alors \(A\) possède un vecteur propre \(\boldsymbol{v} \in \mathbb{R}^n\) avec valeur propre \(\lambda \in \mathbb{R}\).

Pour \(0\lt s\lt r\), soient \(C_{s,r} := \{ \boldsymbol{x} \in \mathbb{R}^n : s \leqslant \|\boldsymbol{x}\| \leqslant r \}\) et l'application \(f : \mathbb{R}^n \setminus\{ \boldsymbol{0} \} \rightarrow \mathbb{R}\) définie par \[ f(\boldsymbol{x}) = \frac{\boldsymbol{x} \cdotp (A\boldsymbol{x})}{\boldsymbol{x} \cdotp \boldsymbol{x}} = \frac{\sum\limits_{i,j=1}^{n} x_i A_{i,j} x_j}{\sum\limits_{j=1}^{n} x_j^2}\,. \] Alors, \(f\) est continue. Comme \(f\) est continue et \(C_{s,r}\) est fermé et borné, alors \(f\) admet un maximum \(\boldsymbol{v} \in C_{s,r}\) dans \(C_{s,r}\). En plus, comme \(f(t \boldsymbol{x}) = f(\boldsymbol{x})\) pour tout \(t \in \mathbb{R} \setminus \{0\}\) et \(\boldsymbol{x} \in \mathbb{R}^n\setminus\{ \boldsymbol{0} \}\), \(\boldsymbol{v}\) est un maximum de \(f\) dans \(\mathbb{R}^n \setminus\{ \boldsymbol{0} \}\), vu que, pour tout \(\boldsymbol{x} \in \mathbb{R}^n \setminus\{ \boldsymbol{0} \}\), \[ f(\boldsymbol{x}) = f\left(s\frac{\boldsymbol{x}}{\|\boldsymbol{x}\|}\right) \leqslant f(\boldsymbol{v})\,. \] En conséquence, étant donné \(\boldsymbol{w} \in \mathbb{R}^n\), l'application \(f_{\boldsymbol{v},\boldsymbol{w}} : \mathbb{R} \rightarrow \mathbb{R}\) donnée par \(f(t) = f_{\boldsymbol{v},\boldsymbol{w}}(\boldsymbol{v}+t\boldsymbol{w})\) admet un maximum local en \(t=0\), ce qui nous dit que \[ 0 = f_{\boldsymbol{v},\boldsymbol{w}}'(0) = 2 \frac{\boldsymbol{w} \cdotp \big(A\boldsymbol{v} - f(\boldsymbol{v})\boldsymbol{v}\big)}{\boldsymbol{v} \cdotp \boldsymbol{v}} = 2 \boldsymbol{w} \cdotp \bigg( \frac{A\boldsymbol{v} - f(\boldsymbol{v})\boldsymbol{v}}{\boldsymbol{v} \cdotp \boldsymbol{v}}\bigg)\,, \] où l'on a utilisé la règle de dérivation en chaîne. Comme cette identité est vrai pour tout \(\boldsymbol{w} \in \mathbb{R}^n\), on conclut que \[ \frac{A\boldsymbol{v} - f(\boldsymbol{v})\boldsymbol{v}}{\boldsymbol{v} \cdotp \boldsymbol{v}} = \boldsymbol{0}, \] ce qui nous dit que \(A\boldsymbol{v} - f(\boldsymbol{v})\boldsymbol{v} = \boldsymbol{0}\), i.e. \(A\boldsymbol{v} = f(\boldsymbol{v})\boldsymbol{v}\). En conséquence, \(\boldsymbol{v}\) est un vecteur propre avec valeur propre \(\lambda = f(\boldsymbol{v})\), comme on voulait démontrer.

On revient à la preuve du théorème. Il suffit de montrer qu'il existe une base orthogonale \(\{ \boldsymbol{v}_1, \dots, \boldsymbol{v}_n \}\) de \(\mathbb{R}^n\) formée de vecteurs propres de \(A\), car dans ce cas la matrice \[ G = \left[\frac{\boldsymbol{v}_1}{\|\boldsymbol{v}_1\|} \hskip 0.6mm \cdots \hskip 0.6mm \frac{\boldsymbol{v}_n}{\|\boldsymbol{v}_n\|}\right] \] est orthogonale et \(G^T A G\) est diagonale. On va le démontrer par induction sur la taille \(n\) de la matrice \(A\). Si \(n = 1\), le résultat suit du lemme précédent. On suppose que le théorème est vrai pour tout entier positif strictement inférieur à \(n > 1\), et on va le démontrer pour \(n\). D'après le lemme précédent, \(A\) possède un vecteur propre \(\boldsymbol{v} \in \mathbb{R}^n\) avec valeur propre \(\lambda \in \mathbb{R}\). Comme \(\boldsymbol{v} \in \mathbb{R}^n\) est un vecteur propre, il es non nul, ce qui nous dit que \(\mathrm{Vect}{\{\boldsymbol{v}\}}\) a dimension \(1\). On pose \(W = \mathrm{Vect}{\{\boldsymbol{v}\}}^{\perp} \subseteq \mathbb{R}^n\). En conséquence, d'après la dernière Proposition dans la Section (cliquer), on conclut que \(\dim(W) = n-1\). On note que \(A\boldsymbol{w} \in W\) pour tout \(\boldsymbol{w} \in W\), vu que \[ (A\boldsymbol{w}) \cdotp \boldsymbol{v} = \boldsymbol{w} \cdotp (A\boldsymbol{v}) = \boldsymbol{w} \cdotp (\lambda \boldsymbol{v}) = \lambda \boldsymbol{w} \cdotp \boldsymbol{v} = 0\,, \] où l'on a utilisé le lemme de la section précédente. Soit \(\{\boldsymbol{w}_1, \dots, \boldsymbol{w}_{n-1}\}\) une base orthonormée de \(W\) et soit \(Q \in \mathbb{M}_{n \times (n-1)}(\mathbb{R})\) la matrice orthogonale \[ Q = [\boldsymbol{w}_1 \hskip 0.6mm \cdots \hskip 0.6mm \boldsymbol{w}_{n-1}]\,. \] On définit aussi la matrice \(B = Q^T A Q \in \mathbb{M}_{n-1}(\mathbb{R})\). Alors, \(B\) est symétrique, vu que \[ B^T = (Q^T A Q)^T = Q^T A^T (Q^T)^T = Q^T A Q = B\,. \] Par hypothèse de la récurrence, il existe une base orthonormée \(\{ \boldsymbol{u}_1, \dots, \boldsymbol{u}_{n-1} \} \subseteq \mathbb{R}^{n-1}\) formée de vecteurs propres de \(B\). Comme \(Q\) est orthogonale, i.e. \(Q^TQ = I_{n-1}\), et \(\{ \boldsymbol{u}_1, \dots, \boldsymbol{u}_{n-1} \} \subseteq \mathbb{R}^{n-1}\) est orthonormée, on conclut que la famille \(\{ Q\boldsymbol{u}_1, \dots, Q\boldsymbol{u_{n-1}}\}\) est aussi orthonormée, vu que \[ (Q\boldsymbol{u}_i) \cdotp (Q\boldsymbol{u}_j) = (Q\boldsymbol{u}_i)^T (Q\boldsymbol{u}_j) = \boldsymbol{u}_i^T Q^T Q \boldsymbol{u}_j = \boldsymbol{u}_i^T \boldsymbol{u}_j = \boldsymbol{u}_i \cdotp \boldsymbol{u}_j = \delta_{i,j}\,. \] On affirme en plus que \(\{ Q\boldsymbol{u}_1, \dots, Q\boldsymbol{u_{n-1}}\} \subseteq W = \mathrm{Vect}{\{\boldsymbol{v}\}}^{\perp}\) est une famille de vecteur propres de \(A\). Pour le démontrer, on rappelle d'abord que \(Q Q^T\) est la matrice canonique de l'application linéaire \(\mathrm{proj}_W : \mathbb{R}^n \rightarrow \mathbb{R}^n\), d'après le Porisme de la Section (cliquer). Or, comme \(\boldsymbol{u}_j\) est un vecteur propre de \(B\) il existe \(\lambda_j \in \mathbb{R}\) tel que \(B \boldsymbol{u}_j = \lambda_j \boldsymbol{u}_j\), i.e. que \(Q^TAQ\boldsymbol{u}_j = \lambda_j \boldsymbol{u}_j\), ce qui implique \[ AQ\boldsymbol{u}_j= \mathrm{proj}_W(AQ\boldsymbol{u}_j) = QQ^TAQ\boldsymbol{u}_j = Q \lambda_j \boldsymbol{u}_j = \lambda_j Q\boldsymbol{u}_j\,, \] où la première égalité suit du fait que \(A\boldsymbol{w} \in W\) pour tout \(\boldsymbol{w} \in W\). En conséquence, \(\{ Q\boldsymbol{u}_1, \dots, Q\boldsymbol{u_{n-1}}\}\) est une famille de vecteur propres de \(A\). Comme \(\{ Q\boldsymbol{u}_1, \dots, Q\boldsymbol{u_{n-1}}\} \subseteq W = \mathrm{Vect}{\{\boldsymbol{v}\}}^{\perp}\), alors \(\{ Q\boldsymbol{u}_1, \dots, Q\boldsymbol{u_{n-1}},\boldsymbol{v}\} \subseteq \mathbb{R}^n\) est une famille orthogonale formée de vecteurs propres de \(A\), et donc une base orthogonale de \(\mathbb{R}^n\) par le Lemme de la Section (cliquer). On a ainsi montré qu'il existe une base orthogonale de \(\mathbb{R}^n\) formée de vecteurs propres de \(A\), comme on voulait démontrer.

Remarque: Pour être plus concret, donnons aussi la preuve dans le cas \(n=2\). Soit \(A\) une matrice de taille \(2\times 2\) symétrique, que l'on écrit comme suit: \[ A= \begin{pmatrix} a&b\\ b&c \end{pmatrix}\,. \] Montrons que \(A\) est toujours diagonalisable, quelles que soient les valeurs de \(a,b,c\in\mathbb{R}\). Commençons donc par calculer les valeurs propres, à l'aide du polynôme caractéristique: \[\begin{aligned} P_A(\lambda) &=\det \begin{pmatrix} a-\lambda&b\\ b&c-\lambda \end{pmatrix}\\ &=(a-\lambda)(c-\lambda)-b^2\\ &=\lambda^2-(a+c)\lambda+(ac-b^2)\,. \end{aligned}\] Calculons le discriminant \[\Delta=(a+c)^2-4(ac-b^2)=(a-c)^2+4b^2\,.\] Cette dernière ligne montre que l'on a toujours \(\Delta \geqslant 0\), et donc toujours au moins une valeur propre. Distinguons les cas.

  1. Cas \(\mathbf{\Delta=(a-c)^2+4b^2=0}\). Ceci signifie que \(a=c\) et \(b=0\), et donc que \(A\) est en fait la matrice \[ A= \begin{pmatrix} a&0\\ 0&a \end{pmatrix}\,, \] qui est déjà diagonale! On peut évidemment l'écrire comme \(A=I_2A I_2^T\).
  2. Cas \(\mathbf{\Delta>0}\). Dans ce cas, \(P_A\) possède deux racines distinctes \[\lambda_\pm=\frac{a+c\pm\sqrt{\Delta}}{2}\,.\] Si on considère un vecteur propre quelconque \(\boldsymbol{v}_+\) associé à \(\lambda_+\), et un vecteur propre quelconque \(\boldsymbol{v}_-\) associé à \(\lambda_-\), on sait par le corollaire de la section précédente que \(\boldsymbol{v}_+\perp\boldsymbol{v}_-\). Ainsi, la matrice \[ G=\left[\frac{\boldsymbol{v}_+}{\|\boldsymbol{v}_+\|}\,\,\frac{\boldsymbol{v}_-}{\|\boldsymbol{v}_-\|}\right] \] est orthogonale, et permet de diagonaliser \(A\): \(A=GDG^T\), où \(D=\mathrm{diag}(\lambda_+,\lambda_-)\).

Exemple: La matrice \[ \begin{pmatrix} 1&\sqrt{2}&\sqrt{3}&\sqrt{5}&\sqrt{7}&\sqrt{8}&\sqrt{11}\\ \sqrt{2}&\sqrt{\pi}&\pi&\pi^2&\pi^3&\pi^2&\pi\\ \sqrt{3}&\pi&-1&e&-e&e&-e\\ \sqrt{5}&\pi^2&e&0&0&0&0\\ \sqrt{7}&\pi^3&-e&0&1&1&1\\ \sqrt{8}&\pi^2&e&0&1&2&2\\ \sqrt{11}&\pi&-e&0&1&2&3 \end{pmatrix} \] étant symétrique, le Théorème Spectral s'applique: elle est diagonalisable. Il existe une matrice diagonale \(D\) et une matrice orthogonale \(G\) telles que \(A=GDG^T\).

Décomposition spectrale

Voyons comment le Théorème Spectral permet de représenter l'application linéaire \(T:\mathbb{R}^n\to\mathbb{R}^n\) associée à une matrice symétrique \(A\) de taille \(n\times n\), \[ \boldsymbol{x}\mapsto T(\boldsymbol{x}):= A\boldsymbol{x}\,. \] En effet, le Théorème Spectral garantit que \(A\) peut être diagonalisée à l'aide d'une matrice de changement de base orthogonale: \[ A=GDG^{-1}=GDG^T\,. \] Ici, \(D=\mathrm{diag}(\lambda_1,\dots,\lambda_n)\) est formée de valeurs propres de \(A\) (pas forcément distinctes), et \(G\) est formée de vecteurs propres associés, formant une base orthonormale \(\{\boldsymbol{u}_1,\cdots, \,\boldsymbol{u}_n\}\) de \(\mathbb{R}^n\): \[ G=\bigl[\boldsymbol{u}_1\cdots \,\boldsymbol{u}_n\bigr]\,. \] On peut donc écrire, pour un \(\boldsymbol{x}\in\mathbb{R}^n\) quelconque, \[\begin{aligned} T(\boldsymbol{x})= A\boldsymbol{x}=GDG^T\boldsymbol{x}&= \bigl[\boldsymbol{u}_1\cdots \,\boldsymbol{u}_n\bigr]D \begin{pmatrix} \boldsymbol{u}_1^T\boldsymbol{x}\\ \vdots\\ \boldsymbol{u}_n^T\boldsymbol{x} \end{pmatrix}\\ &= \bigl[\lambda_1\boldsymbol{u}_1\cdots \,\lambda_n\boldsymbol{u}_n\bigr] \begin{pmatrix} \boldsymbol{u}_1^T\boldsymbol{x}\\ \vdots\\ \boldsymbol{u}_n^T\boldsymbol{x} \end{pmatrix}\\ &=\sum_{k=1}^n \lambda_k\boldsymbol{u}_k\boldsymbol{u}_k^T\boldsymbol{x}\\ &=\left(\sum_{k=1}^n \lambda_k\boldsymbol{u}_k\boldsymbol{u}_k^T\right)\boldsymbol{x}\,. \end{aligned}\] On peut donc écrire \(A\) comme une combinaison linéaire de matrices: \[ \boxed{ A=\sum_{k=1}^n\lambda_k\boldsymbol{u}_k\boldsymbol{u}_k^T\,. } \] On sait que chaque \(\boldsymbol{u}_k\boldsymbol{u}_k^T\) est une matrice de taille \(n\times n\), et représente le projecteur sur \(\boldsymbol{u}_k\) . En effet, comme chaque \(\boldsymbol{u}_k\) est unitaire, \[ \boldsymbol{u}_k\boldsymbol{u}_k^T\boldsymbol{x}= (\boldsymbol{x}\cdotp \boldsymbol{u}_k)\boldsymbol{u}_k =\frac{\boldsymbol{x}\cdotp \boldsymbol{u}_k}{\|\boldsymbol{u}_k\|^2}\boldsymbol{u}_k =\mathrm{proj}_{\boldsymbol{u}_k}(\boldsymbol{x})\,. \] On a donc pu récrire l'applications linéaire \(T\) comme la combinaison linéaire de projecteurs: \[ \boxed{ T=\sum_{k=1}^n\lambda_k\mathrm{proj}_{\boldsymbol{u}_k}\,. } \]

Les représentations de \(A\) et \(T\) à l'aide de projecteurs sur les espaces propres de \(A\) sont appelées décompositions spectrales.

Remarque: La représentation spectrale dépend bien-sûr du choix des vecteurs propres pour la matrice; elle n'est donc pas unique.

Une décomposition spectrale fournit une interprétation très géométrique de comment \(A\) agit sur un vecteur \(\boldsymbol{x}\).

En effet, l'expression \[ A\boldsymbol{x}=\sum_{k=1}^n\lambda_k\mathrm{proj}_{\boldsymbol{u}_k}(\boldsymbol{x}) \] montre que \(A\boldsymbol{x}\) est une somme vectorielle, dans laquelle chaque terme, \(\lambda_k\mathrm{proj}_{\boldsymbol{u}_k}(\boldsymbol{x})\), a une interprétion très claire:

  1. projeter \(\boldsymbol{x}\) sur \(\boldsymbol{u}_k\);
  2. amplifier cette projection par la valeur propre \(\lambda_k\).

L'intérêt est que l'on peut travailler indépendamment pour chaque \(k=1,2,\dots,n\), puis les sommer.

Voyons comment réaliser concrètement cette décomposition, dans des cas particuliers.

Exemple: Considérons la matrice symétrique \[ A= \begin{pmatrix} 1&2\\ 2&1 \end{pmatrix}\,. \] On vérifie facilement que les valeurs propres de \(A\) sont \(\lambda_1=-1\), \(\lambda_2=3\), et que leurs espaces propres associés sont

(On observe à nouveau, comme on sait, que ces espaces sont orthogonaux.) Pour faire la décomposition spectrale, on a besoin de vecteurs propres unitaires. On peut par exemple prendre \[ \boldsymbol{u}_1:= \frac{\boldsymbol{v}}{\|\boldsymbol{v}\|}= \begin{pmatrix} 1/\sqrt{2}\\ -1/\sqrt{2} \end{pmatrix}\,,\qquad \boldsymbol{u}_2:= \frac{\boldsymbol{w}}{\|\boldsymbol{w}\|}= \begin{pmatrix} 1/\sqrt{2}\\ 1/\sqrt{2} \end{pmatrix}\,. \] Maintenant, la décomposition spectrale de \(A\) est donnée par \[\begin{aligned} A\boldsymbol{x} &=\sum_{k=1}^2\lambda_k\boldsymbol{u}_k\boldsymbol{u}_k^T\boldsymbol{x}\\ &=(-1)\boldsymbol{u}_1\boldsymbol{u}_1^T+3\boldsymbol{u}_2\boldsymbol{u}_2^T\\ &=(-1)\mathrm{proj}_{\boldsymbol{u}_1}(\boldsymbol{x}) +3\mathrm{proj}_{\boldsymbol{u}_2}(\boldsymbol{x})\,. \end{aligned}\] L'interprétation géométrique de la transformation \(\boldsymbol{x}\mapsto A\boldsymbol{x}\) devient limpide:
Vérifions encore, pourquoi pas: \[\begin{aligned} (-1)&\boldsymbol{u}_1\boldsymbol{u}_1^T+3\boldsymbol{u}_2\boldsymbol{u}_2^T =\\ &= (-1) \begin{pmatrix} \frac{1}{\sqrt{2}}\\ \frac{-1}{\sqrt{2}} \end{pmatrix} \begin{pmatrix} \frac{1}{\sqrt{2}}& \frac{-1}{\sqrt{2}} \end{pmatrix} +3 \begin{pmatrix} \frac{1}{\sqrt{2}}\\ \frac{1}{\sqrt{2}} \end{pmatrix} \begin{pmatrix} \frac{1}{\sqrt{2}}& \frac{1}{\sqrt{2}} \end{pmatrix}\\ &= (-1)\begin{pmatrix} \frac12&-\frac12\\ -\frac12&\frac12 \end{pmatrix} +3 \begin{pmatrix} \frac12&\frac12\\ \frac12&\frac12 \end{pmatrix}\\ &= \begin{pmatrix} 1&2\\ 2&1 \end{pmatrix} =A\,. \end{aligned}\]

Exemple: Considérons la matrice symétrique déjà étudiée plus haut: \[ A= \begin{pmatrix} 3&-2&4\\ -2&6&2\\ 4&2&3 \end{pmatrix}\,. \] \(A\) possède deux valeurs propres, \(\lambda_1=-2\) et \(\lambda_2=7\), et nous avions appliqué le procédé de Gram-Schmidt pour trouver

En normalisant ces vecteurs, \[ \boldsymbol{u}_1:=\frac{\boldsymbol{v}}{\|\boldsymbol{v}\|}\,,\qquad \boldsymbol{u}_2:=\frac{\boldsymbol{w}_1'}{\|\boldsymbol{w}_1'\|}\,,\qquad \boldsymbol{u}_3:=\frac{\boldsymbol{w}_2'}{\|\boldsymbol{w}_2'\|}\,, \] on obtient une matrice de passage qui est orthogonale de la forme \[R=\left[ \boldsymbol{u}_1\, \boldsymbol{u}_2\, \boldsymbol{u}_3 \right]\,,\] qui donne \(A=RDR^T\).

Donc la décomposition spectrale obtenue est \[ A=(-2)\boldsymbol{u}_1\boldsymbol{u}_1^T +7\boldsymbol{u}_2\boldsymbol{u}_2^T +7\boldsymbol{u}_3\boldsymbol{u}_3^T\,. \]

Quiz 13.4-1 : Soit \(A\) une matrice \(n\times n\). Vrai ou faux?
  1. Si \(A\) est symétrique, elle possède au moins une valeur propre.
  2. Si \(A\) n'est pas symétrique, alors elle n'est pas diagonalisable.
  3. Si \(A\) n'est pas diagonalisable, c'est qu'il existe au moins une paire \(1\leqslant i,j\leqslant n\) telle que \(a_{ij}\neq a_{ji}\).
  4. Si \(A\) est symétrique, alors il existe des nombres \(\lambda_1,\dots,\lambda_n\), tous distincts, et une matrice orthogonale \(G\) telle que \[A=G\,\mathrm{diag}(\lambda_1,\dots,\lambda_n)G^{-1}\,.\]
  5. Si \(A\) est symétrique, alors il existe une base orthonormée de \(\mathbb{R}^n\), formée entièrement de vecteurs propres de \(A\).
  6. Si \(A\) est symétrique, alors il existe une infinité de bases orthonormées de \(\mathbb{R}^n\), formées entièrement de vecteurs propres de \(A\).