I was reading the wikipedia page for symmetric matrices, and I noticed this part:

a real n×n matrix A is symmetric if and only if there is an orthonormal basis of Rn consisting of eigenvectors for A

Does this mean the eigenvectors of a symmetric matrix with real values always form an orthonormal basis, meaning that without changing them at all, they're always orthogonal and always have a norm of 1?

Or does it mean that based on the eigenvectors, we can manipulate them (e.g. divide them by their current norm) and turn them into vectors with a norm of 1?


There is no "the" eigenvectors for a matrix. That's why the statement in Wikipedia says "there is" an orthonormal basis...

What is uniquely determined are the eigenspaces. But you can make different choices of eigenvectors from the eigenspaces and make them orthogonal or not (and of course you can go in and out of "orthonormal" by multiplicating by scalars). In the special case where all the eigenvalues are different (i.e. all multiplicities are $1$) then any set of eigenvectors corresponding to different eigenvalues will be orthogonal.

As a side note, there is a small language issue that appears often. This is that matrices have eigenvalues, but to talk about eigenvectors you are seeing your matrix as a linear operator on a vector space (and that's of course where the notion of eigenvalue comes from)

To see a concrete example, consider the matrix $$ \begin{bmatrix}1&0&0\\ 0&0&0\\ 0&0&0\end{bmatrix} $$ The orthonormal basis the Wikipedia article is talking about is $\begin{bmatrix}1\\0\\0\end{bmatrix}$, $\begin{bmatrix}0\\1\\0\end{bmatrix}$, $\begin{bmatrix}0\\0\\1\end{bmatrix}$.

But as the multiplicity of zero as eigenvalue is $2$, we can choose a different basis for its eigenspace, and then $\begin{bmatrix}1\\0\\0\end{bmatrix}$, $\begin{bmatrix}0\\1\\1\end{bmatrix}$, $\begin{bmatrix}0\\2\\1\end{bmatrix}$ is another (not orthogonal) basis of eigenvectors.

Finally, if you don't want a basis, you can have an infinity of eigenvectors: for instance all vectors of the form $\begin{bmatrix}t\\0\\0\end{bmatrix}$, for any $t$, are eigenvectors. And all vectors $\begin{bmatrix}0\\t\\s\end{bmatrix}$, for any $t$ and $s$, are eigenvectors.

  • $\begingroup$ Forgive me for not following, but just to be clear, for a 3x3 matrix the eigenvectors will always be orthogonal (and can be scaled to be orthonormal) if the matrix has 3 DISTINCT eigenvalues. Is that correct? $\endgroup$ – chessofnerd Jul 31 '15 at 2:19
  • 2
    $\begingroup$ No. It will be like you say if the matrix is also selfadjoint (that is, symmetric in the real case). A $3/times 3$ matrix with three distinct eigenvalues will have a basis of eigenvectors, but not necessarily an orthogonal one. $\endgroup$ – Martin Argerami Jul 31 '15 at 2:23

There are two different things that might go wrong:

1) Eigenvectors can always be scaled. So if $v$ is an eigenvector then so is $av$ for $a\in k^\ast$. So the length one part is not automatic but can be forced easily - as you said yourself by dividing each eigenvector by it's length.

2) More importantly linear independent eigenvectors to the same eigenvalue do not need to be orthogonal. What is true however is that two eigenvectors to different eigenvalues of a symmetric matrix are orthogonal. So if each eigenvalue has multiplicity one a basis of eigenvectors is automatically orthogonal (and can be made orthonormal as above). In general we need to find an orthogonal basis of each eigenspace first, e.g. by Gram-Schmidt.

Edit: Part two is illustrated in @Martin's answer. The eigenvectors to the eigenvalue $1$ are always orthogonal to the eigenvectors to the eigenvalue $0$. However we can choose multifarious non-orthogonal bases of the eigenspace to $0$.

  • 1
    $\begingroup$ So then what it should really say is that a matrix is symmetric iff it's eigenspaces are orthogonal? $\endgroup$ – Robert S. Barnes Oct 31 '12 at 8:05

No, if $v$ is an eigenvector then $\alpha v$ is also an eigenvector for any $\alpha\in F$.

In order for $v$ to be a part of an orthormal basis it must hold that $||v||=1$, but multiplying in $\alpha$ changes the norm of the vector

  • $\begingroup$ which set of numbers is F? I'm not familiar with it $\endgroup$ – Neyo Jun 12 '12 at 15:01
  • $\begingroup$ $F$ is your field, I belive that in your case $F=\mathbb{R}$ $\endgroup$ – Belgi Jun 12 '12 at 15:02

While we normally talk about a finite set of eigenvectors for a matrix, this finite set is not uniquely determined, and you could replace any element of it by a scalar multiple. In other words, if $v$ is an eigenvector for $\lambda$, then so is $\mu v$ for any $\mu\ne0$ in the base field. Hence in general an eigenvector need not have norm $1$, but we can divide by the norm to obtain a parallel eigenvector which does have norm $1$.


Probably you should consider $E_n$ which has only one eigenvalue - that is $1$ and only eigenvectors. Not every basis for $\mathbb R^n$ is orthonormal.

  • $\begingroup$ Of course not every basis is orthonormal, I'm talking about basis of symmetric matrices here, not matrices in general. $\endgroup$ – Neyo Jun 12 '12 at 14:59
  • $\begingroup$ $E_n$ is symmetric $\endgroup$ – Blah Jun 12 '12 at 15:07
  • $\begingroup$ I presume that by $E_n$ you mean the identity matrix in $\mathbb{R}^{n\times n}$. $\endgroup$ – talmid Jun 12 '12 at 21:25

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.