계수 (선형대수학)

선형대수학에서, 선형 변환의 계수(階數, 영어: rank)는 선형 변환의 비(非) 퇴화 정도를 나타내는 기수이다. 기호는 rank {\displaystyle \operatorname {rank} } 또는 rk {\displaystyle \operatorname {rk} } . 체 K {\displaystyle K} 위의 벡터 공간 V {\displaystyle V} 위의 선형 변환 T : V → V {\displaystyle T\colon V\to V} 의 계수 rank ⁡ T {\displaystyle \operatorname {rank} T} 는 T {\displaystyle T} 의 상의 차원이다. rank ⁡ T = dim ⁡ T ( V ) ∈ Card {\displaystyle \operatorname {rank} T=\dim T(V)\in \operatorname {Card} } 체 K {\displaystyle K} 위의 m × n {\displaystyle m\times n} 행렬 A {\displaystyle A} 의 계수 rank ⁡ A {\displaystyle \operatorname {rank} A} 는 다음과 같은 여러 가지 정의를 가지며, 이들은 모두 서로 동치이다. 열벡터의 왼쪽에 A {\displaystyle A} 를 곱하는 선형 변환 A ⋅ : K n → K m {\displaystyle A\cdot \colon K^{n}\to K^{m}} 의 계수. 즉, 열공간의 차원. rank ⁡ A = rank ⁡ ( A ⋅ ) = dim ⁡ { A x : x ∈ K n } = dim ⁡ Span ⁡ { ( A 1 j , … , A m j ) } j = 1 n {\displaystyle \operatorname {rank} A=\operatorname {rank} (A\cdot )=\dim\{Ax\colon x\in K^{n}\}=\dim \operatorname {Span} \{(A_{1j},\dots ,A_{mj})\}_{j=1}^{n}} 행벡터의 오른쪽에 A {\displaystyle A} 를 곱하는 선형 변환 ⋅ A : K m → K m {\displaystyle \cdot A\colon K^{m}\to K^{m}} 의 계수. 즉, 행공간의 차원. rank ⁡ A = rank ⁡ ( ⋅ A ) = dim ⁡ { x T A : x ∈ K m } = dim ⁡ Span ⁡ { ( A i 1 , … , A i n ) } i = 1 m {\displaystyle \operatorname {rank} A=\operatorname {rank} (\cdot A)=\dim\{x^{\operatorname {T} }A\colon x\in K^{m}\}=\dim \operatorname {Span} \{(A_{i1},\dots ,A_{in})\}_{i=1}^{m}} 열벡터 집합의 극대 선형 독립 집합의 원소 개수. 즉, 열벡터로 이루어진 선형 독립 집합 가운데, 열벡터를 하나라도 더 추가하면 선형 종속 집합이 되는 것의 원소 개수. 이러한 집합은 항상 존재하며, 일반적으로 유일하지 않다. 그러나 이러한 집합들의 원소 개수는 항상 같다. rank ⁡ A = | S | ( S ⊆ { ( A 1 j , … , A m j ) } j = 1 n , ∀ s ∈ S : s ∉ Span ⁡ ( S ∖ { s } ) , ∀ s ∈ { ( A 1 j , … , A m j ) } j = 1 n : s ∈ Span ⁡ ( S ) ) {\displaystyle \operatorname {rank} A=|S|\qquad (S\subseteq \{(A_{1j},\dots ,A_{mj})\}_{j=1}^{n},\;\forall s\in S\colon s\not \in \operatorname {Span} (S\setminus \{s\}),\;\forall s\in \{(A_{1j},\dots ,A_{mj})\}_{j=1}^{n}\colon s\in \operatorname {Span} (S))} 행벡터 집합의 극대 선형 독립 집합의 원소 개수. 즉, 행벡터로 이루어진 선형 독립 집합 가운데, 행벡터를 하나라도 더 추가하면 선형 종속 집합이 되는 것의 원소 개수. 이러한 집합은 항상 존재하며, 원소 개수는 항상 같다. rank ⁡ A = | S | ( S ⊆ { ( A i 1 , … , A i n ) } i = 1 m , ∀ s ∈ S : s ∉ Span ⁡ ( S ∖ { s } ) , ∀ s ∈ { ( A i 1 , … , A i n ) } i = 1 m : s ∈ Span ⁡ ( S ) ) {\displaystyle \operatorname {rank} A=|S|\qquad (S\subseteq \{(A_{i1},\dots ,A_{in})\}_{i=1}^{m},\;\forall s\in S\colon s\not \in \operatorname {Span} (S\setminus \{s\}),\;\forall s\in \{(A_{i1},\dots ,A_{in})\}_{i=1}^{m}\colon s\in \operatorname {Span} (S))} 0이 아닌 소행렬식의 최대 차수 rank ⁡ A = max { | I | = | J | : det ( A I , J ) ≠ 0 , I ⊆ { 1 , … , m } , J ⊆ { 1 , … , n } } {\displaystyle \operatorname {rank} A=\max\{|I|=|J|\colon \det(A_{I,J})\neq 0,\;I\subseteq \{1,\dots ,m\},\;J\subseteq \{1,\dots ,n\}\}} 계수는 행렬의 여러 성질과 관련되며, 계수가 높을수록 행렬의 퇴화 정도가 덜하다. 체 K {\displaystyle K} 위의 m × n {\displaystyle m\times n} 행렬 A {\displaystyle A} 에 대하여, 다음 두 조건이 서로 동치이다. A {\displaystyle A} 는 영행렬이다. rank ⁡ A = 0 {\displaystyle \operatorname {rank} A=0} 또한, A {\displaystyle A} 에 대하여, 다음 두 조건이 서로 동치이다. A ⋅ : x ↦ A x {\displaystyle A\cdot \colon x\mapsto Ax} 는 단사 함수이다. rank ⁡ A = n {\displaystyle \operatorname {rank} A=n} 또한, A {\displaystyle A} 에 대하여, 다음 두 조건이 서로 동치이다. A ⋅ : x ↦ A x {\displaystyle A\cdot \colon x\mapsto Ax} 는 전사 함수이다. rank ⁡ A = m {\displaystyle \operatorname {rank} A=m} 특히, n × n {\displaystyle n\times n} 행렬 A {\displaystyle A} 에 대하여, 다음 두 조건이 서로 동치이다. A {\displaystyle A} 는 가역 행렬이다. rank ⁡ A = n {\displaystyle \operatorname {rank} A=n} 체 K {\displaystyle K} 위의 m × n {\displaystyle m\times n} 행렬 A {\displaystyle A} 에 대하여, 다음의 계수-퇴화차수 정리(영어: rank-nullity inequality)가 성립한다. dim ⁡ ker ⁡ A + rank ⁡ A = n {\displaystyle \dim \ker A+\operatorname {rank} A=n} 행렬의 계수는 행의 수와 열의 수 이하이다. 즉, 체 K {\displaystyle K} 위의 m × n {\displaystyle m\times n} 행렬 A {\displaystyle A} 에 대하여, 다음이 성립한다. rank ⁡ A ≤ min { m , n } {\displaystyle \operatorname {rank} A\leq \min\{m,n\}} 체 K {\displaystyle K} 위의 m × n {\displaystyle m\times n} 행렬 A {\displaystyle A} , B {\displaystyle B} 에 대하여, 다음이 성립한다. rank ⁡ ( A + B ) ≤ rank ⁡ A + rank ⁡ B {\displaystyle \operatorname {rank} (A+B)\leq \operatorname {rank} A+\operatorname {rank} B} 체 K {\displaystyle K} 위의 m × n {\displaystyle m\times n} 행렬 A {\displaystyle A} 및 n × p {\displaystyle n\times p} 행렬 B {\displaystyle B} 에 대하여, 다음이 성립한다. rank ⁡ ( A B ) ≤ min { rank ⁡ A , rank ⁡ B } {\displaystyle \operatorname {rank} (AB)\leq \min\{\operatorname {rank} A,\operatorname {rank} B\}} 체 K {\displaystyle K} 위의 m × n {\displaystyle m\times n} 행렬 A {\displaystyle A} 및 n × p {\displaystyle n\times p} 행렬 B {\displaystyle B} 에 대하여, 다음의 실베스터 부등식(영어: Sylvester's inequality)이 성립한다. rank ⁡ ( A B ) ≥ rank ⁡ A + rank ⁡ B − n {\displaystyle \operatorname {rank} (AB)\geq \operatorname {rank} A+\operatorname {rank} B-n} 체 K {\displaystyle K} 위의 m × n {\displaystyle m\times n} 행렬 A {\displaystyle A} 및 n × p {\displaystyle n\times p} 행렬 B {\displaystyle B} 및 p × q {\displaystyle p\times q} 행렬 C {\displaystyle C} 에 대하여, 다음의 프로베니우스 부등식(영어: Frobenius' inequality)이 성립한다. rank ⁡ ( A B C ) ≥ rank ⁡ ( A B ) + rank ⁡ ( B C ) − rank ⁡ B {\displaystyle \operatorname {rank} (ABC)\geq \operatorname {rank} (AB)+\operatorname {rank} (BC)-\operatorname {rank} B} 실수체 R {\displaystyle \mathbb {R} } 위의 m × n {\displaystyle m\times n} 행렬 A {\displaystyle A} 에 대하여, 다음이 성립한다. rank ⁡ A = rank ⁡ A T = rank ⁡ ( A T A ) = rank ⁡ ( A A T ) {\displaystyle \operatorname {rank} A=\operatorname {rank} A^{\operatorname {T} }=\operatorname {rank} (A^{\operatorname {T} }A)=\operatorname {rank} (AA^{\operatorname {T} })} 복소수체 C {\displaystyle \mathbb {C} } 위의 m × n {\displaystyle m\times n} 행렬 A {\displaystyle A} 에 대하여, 다음이 성립한다. rank ⁡ A = rank ⁡ A ¯ = rank ⁡ A T = rank ⁡ A ∗ = rank ⁡ ( A ∗ A ) = rank ⁡ ( A A ∗ ) {\displaystyle \operatorname {rank} A=\operatorname {rank} {\bar {A}}=\operatorname {rank} A^{\operatorname {T} }=\operatorname {rank} A^{*}=\operatorname {rank} (A^{*}A)=\operatorname {rank} (AA^{*})} A {\displaystyle A} 의 계수를 계산하는 가장 간단한 방법은 가우스 소거법을 이용하는 것이다. 가우스 소거법을 행하여 행렬을 행 사다리꼴 형태로 만들어도 계수는 보존된다. 이때 0이 아닌 행의 숫자가 곧 행렬의 계수가 된다. 예를 들어 다음과 같은 4×4 행렬에서 A = [ 2 4 1 3 − 1 − 2 1 0 0 0 2 2 3 6 2 5 ] {\displaystyle A={\begin{bmatrix}2&4&1&3\\-1&-2&1&0\\0&0&2&2\\3&6&2&5\\\end{bmatrix}}} 첫 번째 열과 세 번째 열은 선형독립이지만, 두 번째 열은 첫 번째 열의 두 배와 같고 네 번째 열은 첫 번째 열과 세 번째 열의 합과 같으므로 A {\displaystyle A} 의 계수는 2이다. 가우스 소거법을 통해 다음과 같이 나타낼 수 있다. A = [ 1 2 0 1 0 0 1 1 0 0 0 0 0 0 0 0 ] {\displaystyle A={\begin{bmatrix}1&2&0&1\\0&0&1&1\\0&0&0&0\\0&0&0&0\\\end{bmatrix}}} 이때 0이 아닌 행이 두개임을 확인할 수 있다. 컴퓨터에서 부동소수점 연산을 행할 때 가우스 소거법은 부정확한 결과를 내놓을 확률이 높으므로, 특이값 분해를 통해 계수를 계산할 수 있다. 혹은 가우스 소거법보다 좀 더 안정적이고 특이값 분해보다는 빠른 QR 분해를 사용할 수도 있다. 행렬의 동치 표준형은 그 계수에 따라 완전히 결정된다. 즉, 두 행렬이 동치일 필요충분조건은 계수가 같은 것이다. 체 K {\displaystyle K} 위의 m × n {\displaystyle m\times n} 행렬 A {\displaystyle A} 의 동치 표준형은 다음과 같다. ( I rank ⁡ A 0 0 0 ) {\displaystyle {\begin{pmatrix}I_{\operatorname {rank} A}&0\\0&0\end{pmatrix}}} 계수 정리 Howard Anton, Robert C. Busby, 고형준 외 공역, 《최신선형대수》, 학술정보, 2004, 495쪽. 같은 책, 494쪽. “Rank”. 《Encyclopedia of Mathematics》 (영어). Springer-Verlag. 2001. ISBN 978-1-55608-010-4.  Weisstein, Eric Wolfgang. “Matrix rank”. 《Wolfram MathWorld》 (영어). Wolfram Research.  “Rank of a matrix”. 《PlanetMath》 (영어).  “Rank of a linear mapping”. 《PlanetMath》 (영어).