{{위키데이터 속성 추적}}
[[선형대수학]]에서, [[선형 변환]]의 '''계수'''(階數, {{llang|en|rank}})는 선형 변환의 비(非) [[퇴화 선형 변환|퇴화]] 정도를 나타내는 [[기수 (수학)|기수]]이다. 기호는 <math>\operatorname{rank}</math> 또는 <math>\operatorname{rk}</math>.<ref>Howard Anton, Robert C. Busby, 고형준 외 공역, 《최신선형대수》, 학술정보, 2004, 495쪽.</ref>

== 정의 ==
[[체 (수학)|체]] <math>K</math> 위의 [[벡터 공간]] <math>V</math> 위의 [[선형 변환]] <math>T\colon V\to V</math>의 '''계수''' <math>\operatorname{rank}T</math>는 <math>T</math>의 [[상 (수학)|상]]의 [[차원 (선형대수학)|차원]]이다.
:<math>\operatorname{rank}T=\dim T(V)\in\operatorname{Card}</math>
체 <math>K</math> 위의 <math>m\times n</math> 행렬 <math>A</math>의 '''계수''' <math>\operatorname{rank}A</math>는 다음과 같은 여러 가지 정의를 가지며, 이들은 모두 서로 [[동치]]이다.
* 열벡터의 왼쪽에 <math>A</math>를 곱하는 선형 변환 <math>A\cdot\colon K^n\to K^m</math>의 계수. 즉, [[열공간]]의 차원.
*:<math>\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</math>
* 행벡터의 오른쪽에 <math>A</math>를 곱하는 선형 변환 <math>\cdot A\colon K^m\to K^m</math>의 계수. 즉, [[행공간]]의 차원.
*:<math>\operatorname{rank}A=\operatorname{rank}(\cdot A)=\dim\{x^\operatorname TA\colon x\in K^m\}=\dim\operatorname{Span}\{(A_{i1},\dots,A_{in})\}_{i=1}^m</math>
* 열벡터 집합의 극대 선형 독립 집합의 원소 개수. 즉, 열벡터로 이루어진 선형 독립 집합 가운데, 열벡터를 하나라도 더 추가하면 선형 종속 집합이 되는 것의 원소 개수. 이러한 집합은 항상 존재하며, 일반적으로 유일하지 않다. 그러나 이러한 집합들의 원소 개수는 항상 같다.
*:<math>\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))</math>
* 행벡터 집합의 극대 선형 독립 집합의 원소 개수. 즉, 행벡터로 이루어진 선형 독립 집합 가운데, 행벡터를 하나라도 더 추가하면 선형 종속 집합이 되는 것의 원소 개수. 이러한 집합은 항상 존재하며, 원소 개수는 항상 같다.
*:<math>\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))</math>
* 0이 아닌 소행렬식의 최대 차수
*:<math>\operatorname{rank}A=\max\{|I|=|J|\colon\det(A_{I,J})\ne0,\;I\subseteq\{1,\dots,m\},\;J\subseteq\{1,\dots,n\}\}</math>

== 성질 ==
계수는 행렬의 여러 성질과 관련되며, 계수가 높을수록 행렬의 퇴화 정도가 덜하다. 체 <math>K</math> 위의 <math>m\times n</math> 행렬 <math>A</math>에 대하여, 다음 두 조건이 서로 동치이다.
* <math>A</math>는 [[영행렬]]이다.
* <math>\operatorname{rank}A=0</math>
또한, <math>A</math>에 대하여, 다음 두 조건이 서로 동치이다.
* <math>A\cdot\colon x\mapsto Ax</math>는 [[단사 함수]]이다.
* <math>\operatorname{rank}A=n</math>
또한, <math>A</math>에 대하여, 다음 두 조건이 서로 동치이다.
* <math>A\cdot\colon x\mapsto Ax</math>는 [[전사 함수]]이다.
* <math>\operatorname{rank}A=m</math>
특히, <math>n\times n</math> 행렬 <math>A</math>에 대하여, 다음 두 조건이 서로 동치이다.
* <math>A</math>는 [[가역 행렬]]이다.
* <math>\operatorname{rank}A=n</math>

=== 계수-퇴화차수 정리 ===
{{본문|계수-퇴화차수 정리}}
체 <math>K</math> 위의 <math>m\times n</math> 행렬 <math>A</math>에 대하여, 다음의 '''계수-퇴화차수 정리'''({{llang|en|rank-nullity inequality}})가 성립한다.
:<math>\dim\ker A+\operatorname{rank}A=n</math>

=== 항등식과 부등식 ===
* 행렬의 계수는 행의 수와 열의 수 이하이다. 즉, 체 <math>K</math> 위의 <math>m\times n</math> 행렬 <math>A</math>에 대하여, 다음이 성립한다.
*:<math>\operatorname{rank}A\le\min\{m,n\}</math>
* 체 <math>K</math> 위의 <math>m\times n</math> 행렬 <math>A</math>, <math>B</math>에 대하여, 다음이 성립한다.
*:<math>\operatorname{rank}(A+B)\le\operatorname{rank}A+\operatorname{rank}B</math>
* 체 <math>K</math> 위의 <math>m\times n</math> 행렬 <math>A</math> 및 <math>n\times p</math> 행렬 <math>B</math>에 대하여, 다음이 성립한다.
*:<math>\operatorname{rank}(AB)\le\min\{\operatorname{rank}A,\operatorname{rank}B\}</math>
* 체 <math>K</math> 위의 <math>m\times n</math> 행렬 <math>A</math> 및 <math>n\times p</math> 행렬 <math>B</math>에 대하여, 다음의 '''실베스터 부등식'''({{llang|en|Sylvester's inequality}})이 성립한다.<ref>같은 책, 494쪽.</ref>
*:<math>\operatorname{rank}(AB)\ge\operatorname{rank}A+\operatorname{rank}B-n</math>
*체 <math>K</math> 위의 <math>m\times n</math> 행렬 <math>A</math> 및 <math>n\times p</math> 행렬 <math>B</math> 및 <math>p\times q</math> 행렬 <math>C</math>에 대하여, 다음의 '''프로베니우스 부등식'''({{llang|en|Frobenius' inequality}})이 성립한다.
*:<math>\operatorname{rank}(ABC)\ge\operatorname{rank}(AB)+\operatorname{rank}(BC)-\operatorname{rank}B</math>
* [[실수체]] <math>\mathbb R</math> 위의 <math>m\times n</math> 행렬 <math>A</math>에 대하여, 다음이 성립한다.
*:<math>\operatorname{rank}A=\operatorname{rank}A^\operatorname T
=\operatorname{rank}(A^\operatorname TA)=\operatorname{rank}(AA^\operatorname T)</math>
* [[복소수체]] <math>\mathbb C</math> 위의 <math>m\times n</math> 행렬 <math>A</math>에 대하여, 다음이 성립한다.
*:<math>\operatorname{rank}A=\operatorname{rank}\bar A=\operatorname{rank}A^\operatorname T=\operatorname{rank}A^*
=\operatorname{rank}(A^*A)=\operatorname{rank}(AA^*)</math>

== 예 ==
<math>A</math>의 계수를 계산하는 가장 간단한 방법은 [[가우스 소거법]]을 이용하는 것이다. 가우스 소거법을 행하여 행렬을 행 사다리꼴 형태로 만들어도 계수는 보존된다. 이때 0이 아닌 행의 숫자가 곧 행렬의 계수가 된다.

예를 들어 다음과 같은 4×4 행렬에서
:<math>
  A =
  \begin{bmatrix}
    2 & 4 & 1 & 3 \\
    -1 & -2 & 1 & 0 \\
    0 & 0 & 2 & 2 \\
    3 & 6 & 2 & 5 \\
  \end{bmatrix}
</math>

첫 번째 열과 세 번째 열은 선형독립이지만, 두 번째 열은 첫 번째 열의 두 배와 같고 네 번째 열은 첫 번째 열과 세 번째 열의 합과 같으므로 <math>A</math>의 계수는 2이다. 가우스 소거법을 통해 다음과 같이 나타낼 수 있다.
:<math>
  A =
  \begin{bmatrix}
    1 & 2 & 0 & 1 \\
    0 & 0 & 1 & 1 \\
    0 & 0 & 0 & 0 \\
    0 & 0 & 0 & 0 \\
  \end{bmatrix}
</math>

이때 0이 아닌 행이 두개임을 확인할 수 있다.

컴퓨터에서 [[부동소수점]] 연산을 행할 때 가우스 소거법은 부정확한 결과를 내놓을 확률이 높으므로, [[특이값 분해]]를 통해 계수를 계산할 수 있다. 혹은 가우스 소거법보다 좀 더 안정적이고 특이값 분해보다는 빠른 [[QR 분해]]를 사용할 수도 있다.

== 응용 ==
=== 동치 표준형 ===
행렬의 [[동치 표준형]]은 그 계수에 따라 완전히 결정된다. 즉, 두 행렬이 동치일 필요충분조건은 계수가 같은 것이다. 체 <math>K</math> 위의 <math>m\times n</math> 행렬 <math>A</math>의 동치 표준형은 다음과 같다.
:<math>\begin{pmatrix}I_{\operatorname{rank}A}&0\\0&0\end{pmatrix}</math>

== 같이 보기 ==
* [[계수 정리]]

== 각주 ==
{{각주}}

== 외부 링크 ==
* {{eom|title=Rank}}
* {{매스월드|id=MatrixRank|title=Matrix rank}}
* {{플래닛매스|urlname=rankofamatrix|title=Rank of a matrix}}
* {{플래닛매스|urlname=rankofalinearmapping|title=Rank of a linear mapping}}

{{선형대수학}}

[[분류:선형대수학]]