# Find the basis of a symmetric matrix, analytical expression

I have a problem and I am not able, so far, to find the solution.

I am trying to understand if there is a way, given a symmetric matrix $B$ (which is computed as $B=A^TA$ where I know the matrix $A$) to compute one of its basis in a closed form (analytical way).

I can easily solve my problem by the matlab command:

basis = orth(B)

Which gives me a basis of the matrix $B$.

The problem is that matlab, of course, uses a numerical way to find this basis while I was wondering if there is a closed form to express this basis.

thanks in advance for your help.

## 1 Answer

orht(B)


returns orthonormal basis for range of matrix. They doing it using Singular Value Decomposition. However what you are looking for is a Gram Schmidt process.

The orthonormal basis for range of matrix of a non singular matrix is all its columns. The Gram Schmidt process convert them into an orthogonal (or orthonormal if you do normalize them) basis. Furthermore, if the matrix is singular, you will get some of the vectors become zeros, i.e. you have to drop them.

ps: if you need it to be programmed - make sure you choose the numerically stable version of the algorithm. If you do a paper work both of them will give exactly the same result, but the regular one (the "non numerically stable") one is more convenient, i.e. easy to understand and less work.

• I looked more into your answer and I think it is not what I am searching for. Indeed what you are talking about is the Gram Schmidt process. This tool is useful to turn a whatever basis of a vectorial space in a orthonormal basis. Instead I want something to find an orthonormal basis of a subspace of which I know the kernel (or null-space). – kalmanIsAGameChanger Oct 29 '15 at 13:26
• The column vectors of the matrix $B$ span the image (of $Bx$) - i.e. they are the basis of the image after you get rid of the linearly dependent vectors. The kernel is the solution to the homogeneous system of equations, i.e. $Bx=0$. If this doesn't make sense, please edit your question and give a more detailed description of what you need or at least some example. – Michael Medvinsky Oct 29 '15 at 14:04