# Characterize matrix range

$$\DeclareMathOperator{\col}{\operatorname{col}}\DeclareMathOperator{\diag}{\operatorname{diag}}\DeclareMathOperator{\Range}{\operatorname{Range}}$$Let $$A \in \mathbb{R}^{n\times m}$$, $$D = \diag(d) = \diag (d_1,...,d_m)$$ such that $$d_i \geq 0$$ for all $$i = 1,...,m$$.

Consider the product $$X = ADA^\top$$. It is known that $$\Range(X)\subseteq \Range(A)$$. What are the conditions on $$D$$ and on the $$d_i$$ such that: $$\Range(X) = \Range(A).$$

I suppose it is something related to the support of $$d$$ being contained in the null space of $$A$$, but I am not completely sure about it.

• What if $A=0$? You need some condition on $A$. Oct 27 '20 at 7:41
• @NarutakaOZAWA If $A = 0$, then no conditions are needed. $X = A = 0$, so their ranges agree for any $D$. Oct 30 '20 at 22:33
• @user1504 - The question has changed since Narutaka made their comment. Oct 31 '20 at 17:57

Since $$\text{Range}(X)\subset\text{Range}(A)$$, $$\text{Range}(X)=\text{Range}(A)\Leftrightarrow \text{rank}(X)=\text{rank}(A)\Leftrightarrow \ker(X)=\ker(A^T).$$
For any $$M$$ we have $$MM^Tx=0\Leftrightarrow M^Tx=0$$. Indeed $$0=\langle x,MM^Tx\rangle = \langle M^Tx,M^Tx\rangle =\|M^Tx\|^2.$$ Therefore $$x\in \ker(X)\Leftrightarrow (AD^\frac{1}{2})(AD^\frac{1}{2})^Tx=0\Leftrightarrow D^\frac{1}{2}A^Tx=0$$ Conclusion $$:\text{Range}(X)=\text{Range}(A)\Leftrightarrow \ker(D)\cap\text{Range}(A^T)=\{0\}$$
• 2) Can you express $\ker(D)\cap\text{Range}(A^T)=\{0\}$ in terms of $d_i$? Oct 31 '20 at 21:37
• @Apprentice - Not just in terms of the $d_i$, no -- it depends on $A$. Do you want conditions that make the ranges equal for some $A$? For all $A$? Something else? Oct 31 '20 at 23:06
• $ker(D)$ is simply $Vect\{e_i:d_i=0\}$. The condition is that for all $a \in Range(A^T)$, $Supp(a)\cap \{i:d_i > 0\}\neq \emptyset$ Nov 1 '20 at 8:50
• @RaphaelB4, a last question. Why is $rank(𝑋)=rank(𝐴)⇔ker(𝑋)=ker(𝐴^𝑇)$ true? Nov 1 '20 at 16:43
• You have $ker(A^T)\subset ker(X)$, $rank(A^T)=rank(A)$ and $dim(ker(X))+rank(X)=n=dim(ker(A^T))+rank(A^T)$. Nov 1 '20 at 17:04