m×n阶矩阵A的秩是p,当且仅当存在m×p阶满秩矩阵X和n×p阶满秩矩阵Y使得A=XY′。
证明(→)如果A的秩是p,设a1,a2,…,an是A的列向量,则在A的列向量中一定可以找到由p个向量ai1,ai2,…,aip组成它的最大线性无关组,这个向量组和A的列向量全体构成的向量组等价,即可以互相线性表出。记
Xk=aik,k=1,2,…,p
则矩阵X=(x1,x2,…,xp)一定是列满秩的,X的秩是p.
由于A的列向量均可用B的列向量线性表出,则有
ai=yi1b1+yi2b2+…+ yipbp, i=1,2,…,n
记Y=(yij)是n×p阶矩阵,则A= XY′
下面仅需证明Y的秩是p即可,由于矩阵Y的第i1,i2,…,in行恰组成一个p阶单位阵,于是有Y的秩≥p,,又Y的秩≤它的列数p,故有Y的秩是p.
(←)如果存在m×p阶满秩矩阵X和n×p阶满秩矩阵Y使得A=XY′,两个矩阵乘积的秩不超过其中任意一个矩阵的秩,故A的秩≤p,对式A=XY′两边左乘X的转置得,X′A= X′XY′,由于X 是列满秩的,则X′X 是可逆的,(参看网页:
http://hi.baidu.com/lca001/blog/item/e0f24c2b88848a355243c1ed.html),
故得(X′X)^-1X′A= Y′,同样的理由Y′的秩p≤A的秩,故A的秩为p.
利用结论,rank(T)=P,当且仅当存在可逆矩阵M,N使得
T=M*diag(Ip,0)*N
必要性:如果rank(A)=p,由结论存在可逆矩阵P,Q,使得
A=P*diag(Ip,0)*Q
把P分成两列P=(P1,P2),Q分成两行Q=(Q1,Q2),相乘即可得到A=P1*Q1
取X=P1,Y'=Q1即可。P1,Q1是可逆阵的列阵,都是列满枝的。
充分性:X:m*p 的秩是p,存在P1,Q1,使得
X=P1×(Ip,0)'*Q1, Y=P2×(Ip,0)'*Q2,
A=XY'=P1×[[Q1Q2',0],[0,0]]*P2'
P1,P2'可逆,所以
rank(A)=rank(P1×[[Q1Q2',0],[0,0]]*P2')=rank([[Q1Q2',0],[0,0]])=rank(Q1*Q2')=p
Ip是p阶单位阵。