On page 21 of Matrix Differential Calculus by Magnus and Neudecker (3rd ed, ISBN:0-471-98632-1), the book states, without any apparent justification, that to prove the statement:

If $A$ has $r$ non-zero eigenvalues, then rank($A$) $\geq r$.

We start by

...using [Schur Decomposition], $S^*AS=M$. We partition $M = \left( \begin{array}{cc}M_1 && M_2 \\ 0 && M_3 \end{array} \right)$ where $M_1$ is a non-singular upper triangular $r \times r$ matrix and $M_3$ is strictly upper triangular.

where $M$ is the upper diagonal matrix and $S$ is the unitary matrix resulting from Schur Decomposition. This statement is later repeated for Theorem 21.

Just looking at an arbitrary upper triangular matrix such as

$\left(\begin{array}{ccccc} 1 & 2 & 3 & 4 & 5\\ 0 & 0 & 1 & 2 & 3\\ 0 & 0 & 4 & 5 & 6\\ 0 & 0 & 0 & 7 & 8\\ 0 & 0 & 0 & 0 & 9 \end{array}\right)$

I can't see how this is generally possible. Is there a theorem regarding Schur Decomposition that I'm missing?

  • $\begingroup$ One thought is that we can manipulate $S$ in a way that "rearranges $M$". But I'm not sure how this would work. $\endgroup$
    – lycus
    Mar 27, 2016 at 21:54
  • $\begingroup$ I don't understand the Schur decomposition stuff. So, I give you another proof of this fact. The rank of a matrix $A$ is the dimension of its column space and so, the dimension of the image of $A$. If $A$ has $r$ non-zero eigenvalues, let $x_1,\ldots,x_r$ be corresponding eigenvectors. We know that $\{x_1,\ldots,x_r\}$ is linearly independent. If we now restrict $A$ (as a linear map) to the $r$-dimensional subspace spanned by the $x_k$ we easily see that this restriction is injective. So, $\operatorname{rank}(A)\ge\operatorname{rank}(A') = r$, where $A'$ is the restriction. $\endgroup$ Mar 27, 2016 at 21:58
  • $\begingroup$ @FriedrichPhilipp You may have an eigenvalue with multiplicity $k>1$ yet an eigenspace of dimension $<k$. That's the point of using the Schur decomposition I think: it always exists. $\endgroup$ Mar 27, 2016 at 22:08
  • $\begingroup$ Sure, you are right. Sometimes I am too fast. $\endgroup$ Mar 27, 2016 at 22:18
  • $\begingroup$ @lycus In your example, replace the second basis vector by $f = e_2+4e_3$. Then $Af = 14e_1 + 4f$ and $Ae_3 = 3e_1+f$. So, you swapped the diagonal entries $0$ and $4$. You can do this again and again until you have $0$ in the lower right corner. $\endgroup$ Mar 27, 2016 at 23:00

1 Answer 1


You can do as follows. Let $E=\bigoplus_{i|\lambda_i\not=0}\ker((A-\lambda I)^n),F=\ker(A^n)$; note that $A_{|E}\in L(E),A_{|F}\in L(F)$ and $E\bigoplus F=\mathbb{C}^n$. We choose an orthonormal basis of $E$ that triangularizes $A_{|E}$ and an orthonormal basis of $E^{\perp}$. The matrix $A$ becomes $B=\begin{pmatrix}M_1&N_2\\0&N_3\end{pmatrix}$ where $M_1$ is invertible triangular and $N_3$ is nilpotent. It remains to choose another orthonormal basis of $E^{\perp}$ that triangularizes $N_3$.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.