# Is it possible to decompose a matrix as the product of two vectors?

This question maybe stupid to some of you, but I would like to know whether it is possible to decompose a matrix $M_{m\times n}$ as the product of two vectors, i.e.

$$M_{m\times n} = \vec{y}_{m\times 1}\times\vec{x}_{1\times n}+const.$$

Obviously, this should be true for some cases, but I am not sure whether this conclusion is always hold. Meanwhile, I want to know at what condition, we can do this decomposition and how to find the vectors $\vec{y}$ and $\vec{x}$?

• You should look into the singular value decomposition, which is essentially a way to write a rank-$k$ matrix as a sum of $k$ such terms, $\mathbf M=\sum\limits_{i=1}^k\sigma_i\mathbf u_i\mathbf v_i^T$. In particular, you can write $\mathbf M$ as a single term $\sigma\mathbf u\mathbf v^T$ if and only if $\mathbf M$ is rank $1$. (If you don't like the presence of the extra scalar $\sigma$, you can think of $\sigma\mathbf u$ and $\mathbf v$, or $\mathbf u$ and $\sigma\mathbf v$, as your two vectors.)
– user856
Mar 10, 2013 at 2:02
• Much better than either of the proposed answers, IMO. Mar 10, 2013 at 2:31
• @RahulNarain: Well, or rank zero. :-) Mar 10, 2013 at 3:31
• possible duplicate of Factorize a Symmetric matrix as an 'Approximation' with an outer product. May 25, 2014 at 22:05
• @TimSeguine That question is specific to symmetric matrices, and the answer there uses that assumption. Here we have a rectangular matrix.
– user147263
May 25, 2014 at 22:26

If you by $\times$ mean the cross product, then this of course doesn't make sense.
If you mean a matrix product, then this also will not work. Take for example $$\pmatrix{1 & 0 \\ 0 & 1}$$ and assume that $$\pmatrix{1 & 0 \\ 0 & 1} = \pmatrix{a \\ b}\pmatrix{c & d} = \pmatrix{ac & da \\ bc & bd}.$$ You see that $ac \neq 0$ and that $bd \neq 0$, so $a, b, c, d\neq 0$. So $da\neq 0$ and $bc\neq 0$. (I assume that your constant is zero, otherwise you would just take that constant to be $M$ and $x$ and $y$ both zero vectors.)
In general, rank $n$ matrix can be expressed as sum of $n$ rank 1 matrix using singular value decomposition.
When the matrix is rank 1 we can express as you suggested in your question. If it is $>1$, we can't express like that.
No, simply because the space of matrices is $mn$-dimensional, and the space of pairs of vectors is $(m+n)$-dimensional, which can be much smaller. The best thing one can do is decompose into a sum of $\min(m,n)$ products, and this decomposition is of course not even close to being unique.
• Thank you for your answer. What if we have $M_{m,m}$ is a symmetric matrix, which I believe we can write it as  Mar 10, 2013 at 1:34