Rank factorization

From testwiki
Jump to navigation Jump to search

In mathematics, given a field 𝔽, non-negative integers m,n, and a matrix Aβˆˆπ”½mΓ—n, a rank decomposition or rank factorization of Template:Mvar is a factorization of Template:Mvar of the form Template:Math, where Cβˆˆπ”½mΓ—r and Fβˆˆπ”½rΓ—n, where r=rankA is the rank of A.

Existence

Every finite-dimensional matrix has a rank decomposition: Let A be an mΓ—n matrix whose column rank is r. Therefore, there are r linearly independent columns in A; equivalently, the dimension of the column space of A is r. Let 𝐜1,𝐜2,…,𝐜r be any basis for the column space of A and place them as column vectors to form the mΓ—r matrix C=[𝐜1𝐜2β‹―πœr]. Therefore, every column vector of A is a linear combination of the columns of C. To be precise, if A=[𝐚1𝐚2β‹―πšn] is an mΓ—n matrix with 𝐚j as the j-th column, then

𝐚j=f1j𝐜1+f2j𝐜2+β‹―+frj𝐜r,

where fij's are the scalar coefficients of 𝐚j in terms of the basis 𝐜1,𝐜2,…,𝐜r. This implies that A=CF, where fij is the (i,j)-th element of F.

Non-uniqueness

If A=C1F1 is a rank factorization, taking C2=C1R and F2=Rβˆ’1F1 gives another rank factorization for any invertible matrix R of compatible dimensions.

Conversely, if A=F1G1=F2G2 are two rank factorizations of A, then there exists an invertible matrix R such that F1=F2R and G1=Rβˆ’1G2.[1]

Construction

Rank factorization from reduced row echelon forms

In practice, we can construct one specific rank factorization as follows: we can compute B, the reduced row echelon form of A. Then C is obtained by removing from A all non-pivot columns (which can be determined by looking for columns in B which do not contain a pivot), and F is obtained by eliminating any all-zero rows of B.

Note: For a full-rank square matrix (i.e. when n=m=r), this procedure will yield the trivial result C=A and F=B=In (the nΓ—n identity matrix).

Example

Consider the matrix

A=[1314273915311208]∼[10βˆ’20011000010000]=B.

B is in reduced echelon form.

Then C is obtained by removing the third column of A, the only one which is not a pivot column, and F by getting rid of the last row of zeroes from B, so

C=[134279151128],F=[10βˆ’2001100001].

It is straightforward to check that

A=[1314273915311208]=[134279151128][10βˆ’2001100001]=CF.

Proof

Let P be an nΓ—n permutation matrix such that AP=(C,D) in block partitioned form, where the columns of C are the r pivot columns of A. Every column of D is a linear combination of the columns of C, so there is a matrix G such that D=CG, where the columns of G contain the coefficients of each of those linear combinations. So AP=(C,CG)=C(Ir,G), Ir being the rΓ—r identity matrix. We will show now that (Ir,G)=FP.

Transforming A into its reduced row echelon form B amounts to left-multiplying by a matrix E which is a product of elementary matrices, so EAP=BP=EC(Ir,G), where EC=(Ir0). We then can write BP=(IrG00), which allows us to identify (Ir,G)=FP, i.e. the nonzero r rows of the reduced echelon form, with the same permutation on the columns as we did for A. We thus have AP=CFP, and since P is invertible this implies A=CF, and the proof is complete.

Singular value decomposition

If π”½βˆˆ{ℝ,β„‚}, then one can also construct a full-rank factorization of A via a singular value decomposition

A=UΞ£Vβˆ—=[U1U2][Ξ£r000][V1βˆ—V2βˆ—]=U1(Ξ£rV1βˆ—).

Since U1 is a full-column-rank matrix and Ξ£rV1βˆ— is a full-row-rank matrix, we can take C=U1 and F=Ξ£rV1βˆ—.

Consequences

rank(A) = rank(AT)

Template:See also An immediate consequence of rank factorization is that the rank of A is equal to the rank of its transpose A𝖳. Since the columns of A are the rows of A𝖳, the column rank of A equals its row rank.[2]

Proof: To see why this is true, let us first define rank to mean column rank. Since A=CF, it follows that A𝖳=F𝖳C𝖳. From the definition of matrix multiplication, this means that each column of A𝖳 is a linear combination of the columns of F𝖳. Therefore, the column space of A𝖳 is contained within the column space of F𝖳 and, hence, rank(A𝖳)≀rank(F𝖳).

Now, F𝖳 is nΓ—r, so there are r columns in F𝖳 and, hence, rank(A𝖳)≀r=rank(A). This proves that rank(A𝖳)≀rank(A).

Now apply the result to A𝖳 to obtain the reverse inequality: since (A𝖳)𝖳=A, we can write rank(A)=rank((A𝖳)𝖳)≀rank(A𝖳). This proves rank(A)≀rank(A𝖳).

We have, therefore, proved rank(A𝖳)≀rank(A) and rank(A)≀rank(A𝖳), so rank(A)=rank(A𝖳).

Notes

Template:Reflist

References

Template:Refbegin

Template:Refend