선형대수학 에서, 선형 변환 의 계수 (階數, 영어 : rank )는 선형 변환의 비(非) 퇴화 정도를 나타내는 기수 이다. 기호는
rank
{\displaystyle \operatorname {rank} }
또는
rk
{\displaystyle \operatorname {rk} }
.[ 1]
체
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 )이 성립한다.[ 2]
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 분해 를 사용할 수도 있다.
↑ Howard Anton, Robert C. Busby, 고형준 외 공역, 《최신선형대수》, 학술정보, 2004, 495쪽.
↑ 같은 책, 494쪽.