행렬의 랭크는 주어진 행렬을 다루기 쉬운 꼴로 변환함으로써 쉽게 계산해 낼 수 있다. 행렬을 RREF로 변환하는 데 성공했다면 자연스럽게 linearly independent column들을 쉽게 찾아낼 수 있으므로, 단순히 그 개수를 셈으로써 행렬의 랭크를 계산할 수 있다.
Theorem 1
Theorem 1. The rank of any matrix equals the maximum number of its linearly independent columns.
Proof. Let A∈Mm×n(F). Consider B:={LA(e1),...,LA(en)}={[A]1,...,[A]n} where [A]i is the ith column of A.
Denote ∀v∈Fn,v=(v1⋯vn)t. Then LA(v)=∑vi[A]i∈⟨B⟩, i.e., R(LA) ⊆⟨B⟩. Clearly, ⟨B⟩⊆R(LA). Thus ⟨B⟩=R(LA).
⟹ ∃C⊆B such that C is a basis for R(LA).
⟹ |C|= rank(LA) = rank(A).
Note that |C| is the maximum number of linearly independet columns of A. ◼
Corollary. Let A∈Mm×n(F). Then rank(A) = 0 ⟺ A=O.
Theorem 2
Theorem 2. Let A∈Mm×n(F) such that rank(A) = r. Then
(1) r≤m,r≤n,
(2) By means of a finite number of elementary operations, A can be transformed into the matrix D=(IrO1O2O3) where O1,O2,O3 are zero matrices.
Proof. If A=O, then r=0. Thus D=A=O. Suppose that A≠O and r>0.
The proof is by the mathematical induction on m.
i) m=1
By means of at most one type 1 column operation and at most one type 2 column operation, and at most n−1 type 3 column operation, A can be transformed into (10⋯0).
ii) m−1
Assume that the theorem holds for any matrix with at most m−1 rows for some m>1.
iii) m
If n=1, then the theorem can be established in a manner analogous to the case m=1.
Now suppose that n>1. Since A≠O,Aij≠0 for some i,j. By means of at most one type 1 row and column operations, at most on type 2 operation, and at most m−1,n−1 type 3 row and column operations, respectively, we can transform A into B=[10⋯00⋮B′0], where B′∈B(m−1)×(n−1)(F).
-Claim: rank(B′) = r−1.
: Note that the first column of B is one of the linearly independent columns. Since rank(B) = r, there is the r−1 linearly independent columns in other columns of B. Thus rank(B′) = r−1.
Then r−1≤m−1,r−1≤n−1
⟹ r≤m,r≤n
Also, B′ can be transformed into D′=(Ir−1O4O5O6).
Let D=[10⋯00⋮D′0]. Then we can transform B into D by means of finite elementary operations. Hence A can be transformed into D=(IrO1O2O3). ◼
Corollary 1
Corollary 1. Let A∈Mm×n(F) such that rank(A) = r. Then ∃B∈Mm×m(F),C∈Mn×n(F) such that B,C are invertible and D=BAC, where D=(IrO1O2O3).
Proof. By The Thm 2, we can transform A into D by means of a finite number of elementary row and column operations. Then we can write as D=Rp(Im)⋯R1(Im)AC1(In)⋯Cq(In). Define B:=Rp(Im)⋯R1(Im) and C:=C1(In)⋯Cq(In). Then D=BAC. Since elementary matrix is invertible, B and C are invertible. ◼
위 정리들을 이용해 정리 1과 같이 행렬의 column 뿐만 아니라 row를 통해서도 동일한 방법으로 랭크를 계산할 수 있다.
Corollary 2
Corollary 2. Let A∈Mm×n(F). Then
(a) rank(At) = rank(A),
(b) The rank of any matrix equals the maximum number of its linearly independent rows,
(c) The rows and columns of any matrix generate subspaces of the same dimension.
Proof.
(a) By Corollary 1, ∃B∈Mm×m(F),C∈Mn×n(F) such that B,C are invertible and D=BAC, where D=(IrO1O2O3) (r = rank(A)).
⟹Dt=CtAtBt. Since Ct,Bt are invertible, rank(Dt) = rank(CtAtBt) = rank(At). Note that Dt is an n×m matrix with the form of D. Thus rank(At) = rank(Dt) = rank(D) = rank(A) = r.
(b), (c) By (a), it is clear. ◼
Corollary 3
Corollary 3. Every invertible matrix is a product of elementary matrices.
Proof. Let A be invertible n×n matrix. Then rank(A) = n. By corollary 1, ∃ invertible matrices B,C such that D=BAC=In. Actually, B=Rp(Im)⋯R1(Im) and C=C1(In)⋯Cq(In). Then A=B−1DC−1=R−11(Im)⋯R−1p(Im)DC−1q(In)⋯C−11(In). Thus A is a product of elementary matrices. ◼