Prove: $\operatorname{rank} A \leq 1$ iff $A=xy^T$ for some $x,y \in \mathbb{R}^{n \times 1}$. Let $A \in \mathbb{R}^{n \times n}$. Then $\operatorname{rank} A \leq 1$ if and only if $A = xy^T$ for some $x, y \in \mathbb{R}^{n \times 1}$.
Need help. I can't find sufficient facts nor theorems to support my proof on the statement.
 A: $(\Rightarrow)$ Suppose $\operatorname{rank}(A)\leq 1$. Then $\operatorname{rank}(A)=0$ or $\operatorname{rank}(A)=1$. The former case then implies $A=0=00^T$, so we're done. For any $x\in\Bbb R^n$ The latter case gives $Ax=kv$ for some constant $k\in\Bbb R$ and some fixed $v\in\Bbb R^n$. So we look at $x\in\{e_1,\ldots,e_n\}$ (i.e. $x$ is one of the standard basis vectors). Then we find that the columns of $A$ are all multiples of $v$ since $Ae_i=kv$ and $Ae_i$ is the $i$-th column of $A$. Hence, $A=(c_1v,\ldots,c_nv)=v(c_1,\ldots,c_n)=vc^T$ where $c_i\in\Bbb R$ are constants and $c=(c_1,\ldots,c_n)$. Set $x=v$ and $y=c$ and we're done.
$(\Leftarrow)$ Now suppose $A=xy^T$ for some $x,y\in\Bbb R^n$. First assume $A\neq 0$. Then for any $u\in\Bbb R^n$ we have $Au=(xy^T)u=x(y^Tu)=xk$ where $k\in\Bbb R$ since $y^Tu\in\Bbb R$ is an inner product. Hence, $Au=kx$ for any $u\in\Bbb R^n$, so $\operatorname{rank}(A)=1$. Now if $A=0$ we have $\operatorname{rank}(A)=0\leq 1$. So we're done.
A: That $\operatorname{rank} xy^T = 1$ is trivial.
Now suppose $\operatorname{rank} A=1.$ Then every column of $A$ is a scalar multiple of one nonzero column. Let $x$ be that one column and $y$ be the vector of scalars by which you multiply it to get the other columns. (Those scalars appear in the same order in $y$ as that in which the corresponding columns appear.)
(The case in which $\operatorname{rank}A=0$ is trivial.)
