일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Dijkstra
- binary search
- DP
- Stored Procedure
- 이진탐색
- union find
- 그래프
- Hash
- String
- 다익스트라
- MYSQL
- Brute Force
- SQL
- 스토어드 프로시저
- Trie
- two pointer
- Two Points
- Today
- Total
codingfarm
기저와 차원, 계수(basis & dimension, rank) 본문
기저(basis)
$\mathbb R^n$의 부분공간 $S$에 대하여, $S$에 속하는 벡터들이
1) $S$를 생성한다.
2) 일차독립이다.
위 조건을 만족하면, 이런 벡터들의 집합을 부분공간 $S$에 대한 기저(basis)라고 한다.
$\bullet$ 부분공간은 $\mathbb R^3$에서 원점을 지나는 평면의 일반화 라는 직관적인 사고로부터 많은것을 얻을 수 있다.
$\bullet$ 원점을 지나는 평면은 그 평면에 평행하면서 서로 평행하지 않은 두 벡터에 의해 생성된다. 대수적인 용어로, 그런 두 벡터는 평면을 생성하고 일차독립이다.
$\bullet$ 평면을 생성하기 위한 조건을 만족한 최소한의 갯수만큼 있는 두 벡터의 집합을 기저라고 한다.
$\bullet$ 두 벡터보다 더 적은 개수로는 그런 역할을 할 수 없고 더 많이 필요하지도 않다. 이것이 부분공간에 대한 기저의 이론이다.
$\mathbb R^n$의 기본단위벡터 $e_1,e_2,\cdots ,e_n$은 일차독립이고 $\mathbb R^n$을 생성한다는 것을 알고있다. 따라서 이들은 $\mathbb R^n$에 대한 기저인데 이것을 표준기저(standard basis)라 한다.
주어진 벡터들의 부분공간에 대한 기저를 구하는법
1) 각 벡터들을 행 벡터 성분삼아 행렬로 만든다.
2) 행 변환을 통해 기약 행사다리꼴로 만든다.
3) 영 벡터를 제외한 나머지 벡터들의 집합이 기저이다.
$U$가 $A$의 행 사다리꼴이면, $U$의 영이아닌 행벡터는 $row(A)$에 대한 기저이다.
참고로 항상 기약 행사다리꼴을 구할 필요는 없다. 행사다리꼴이면 충분하며 이 접근법은 분수를 피할 수 있다는 장점이 있다.
행렬 $A$의 행공간(row space)에 대한 기저 구하기
1. 행렬 $A$의 기약 행 사다리꼴(reduced row echelon form)인 행렬 $R$을 구한다.
2. 행렬 $R$의 행벡터중 영벡터가 아닌 행벡터의 집합이 $row(A)$에 대한 기저가 된다.
행렬 $A$의 열공간(col space)에 대한 기저 구하기.
1. 행렬 $A$의 기약 행 사다리꼴(reduced row echelon form)인 행렬 $R$을 구한다.
2. 행렬 $R$의 열벡터에서 최우선 원소가 $1$이 되는 위치에 있는 행렬 $A$의 열벡터가 $row(A)$에 대한 기저가 된다.
이때 선행성분이 $1$인 성분과 같은 열에 있는 다른 모든 원소는 $0$이 되는 기약 행 사다리꼴의 특성에 의해 $R$의 열공간에 대한 기저는 단위벡터이다.
행렬 $A$의 영공간(null space)에 대한 기저 구하기
1. 행렬 $A$의 기약 행 사다리꼴(reduced row echelon form)인 행렬 $R$을 구한다.
2. $RX=0$을 첨가계수행렬로 표현하고 '독립변수의 수 = 행렬의 계수 - 미지수의 갯수' 임을 생각하며 벡터 $X$에 대한 식을 구한다.
3. 미지수벡터 $X$를 독립변수 벡터의 생성으로 표현하면 이때 각 벡터들이 $null(A)$에 대한 기저가 된다.
영공간에 대한 기저가 아닌 열공간이나 행공간에 대한 기저를 구하는거라면 기약 행 사다리꼴이 아닌 평범한 행 사다리꼴로 변형시켜도 된다.
행렬 $A$의 열공간이나 행공간에 대한 기저의 갯수 = $A$의 기약 행 사다리꼴의 계수(rank)
행렬 A의 열공간에 대한 기저 구하기
$\bullet$ 행렬을 전치시켜서 앞선 과정을 진행한 후 나온 벡터에 다시한번 전치 하면 열공간에 대한 벡터를 얻을 수 있다. 하지만 이는 전치를 해야하며 $A$와 $A^T$에 대한 기약 행사다리꼴 2개를 각기 따로 진행해야 $A$의 행공간과 열공간을 구할 수 있으므로 자원의 손실이 심하다.
$\bullet$ 대신에 다음과 같은 방법을 쓰면 이미 계산한 $A$의 기약행사다리꼴을 사용할 수 있다.
행렬 $A$와 벡터$X$는 $X$의 성분을 계수로 갖는 $A$의 열의 일차결합에 대응된다.
$$A=\begin{bmatrix}
\uparrow &\uparrow & & \uparrow \\
A_1 & A_2 & \cdots & A_k\\
\downarrow &\downarrow & & \downarrow \\
\end{bmatrix},\;\;\;\;\;\;
X= \begin{bmatrix} x_1 \\ x_2\\ \vdots \\ x_k \end{bmatrix}$$
$$AX=A_1X_1 + A_2X_2 + \cdots A_kX_k$$
그러므로 $AX=0$의 영이 아닌 해는 $A$의 열들 사이에서 종속관계를 표현한다.
기본 행변환은 해집합에 영향을 미치지 않기 때문에 만일 $A$가 기약 행사다리꼴$R$과 행동치이면 $A$의 열은 $R$의 열과 같은 종속관계를 갖는다.
가령 아래의 예를 보자
$A=\begin{bmatrix}
1 & 1 & 3 & 1 & 6 \\
2 & -1 & 0 & 1 & -1 \\
-3 & 2 & 1 & -2 & 1 \\
4 & 1 & 6 & 1 & 3
\end{bmatrix}
,\;\;\;\;\;
X=\begin{bmatrix}
a \\ b\\ c\\ d\\ e
\end{bmatrix}$
행렬 $A$의 종속관계를 알아보기 위해 선형 결합을 계산해보겠다.
$a \begin{bmatrix} 1 \\ 2 \\ -3 \\ 4 \end{bmatrix} +
b \begin{bmatrix} 1 \\ -1 \\ 2 \\ 1 \end{bmatrix} +
c \begin{bmatrix} 3 \\ 0 \\ 1 \\ 6 \end{bmatrix} +
d \begin{bmatrix} 1 \\ 1 \\ -2 \\ 1 \end{bmatrix}+
e \begin{bmatrix} 6 \\ -1 \\ 1 \\ 3 \end{bmatrix}=0$
위 식을 첨가 계수 행렬로 나타내면
$A= \left[ \begin{matrix}
1 & 1 & 3 & 1 & 6 \\
2 & -1 & 0 & 1 & -1 \\
-3 & 2 & 1 & -2 & 1 \\
4 & 1 & 6 & 1 & 3
\end{matrix} \right|
\left. \begin{matrix} 0\\ 0\\ 0\\ 0 \end{matrix} \right ]$
행소거를 통해 기약행사다리꼴로 나타내면
$R= \left[ \begin{matrix}
1 & 0 & 1 & 0 & -1 \\
0 & 1 & 2 & 0 & 3 \\
0 & 0 & 0 & 1 & 4 \\
0 & 0 & 0 & 0 & 0
\end{matrix} \right|
\left. \begin{matrix} 0\\ 0\\ 0\\ 0 \end{matrix} \right ]$
$R$에서 영벡터가 아닌 행벡터 중 처음 1이 나오는 열이 $1,2,4$이다.
그러므로 미지수벡터 $X$의 $a,b,d$는 선행변수가 되며 $c,e$가 독립변수가 된다.
즉, $a,b,d$는 $c,e$의 생성으로 표현 가능해짐을 미리 알 수 있다.
$rank(R)=3$, 미지수의 갯수 = $5$ 이므로
독립변수의 수 = $5-3$ = $2$개
$\begin{cases}
a+c-e=0\\
b+2c+3e=0\\
d+4e=0
\end{cases} \rightarrow
\begin{cases}
a=-c+e\\
b=-2c-3e\\
d=-4e
\end{cases}$
$A$와 $R$은 위 식과 같은 종속관계를 지닌다.
그렇기에 $R$의 열공간의 기저가 되는 열벡터의 위치와 $A$의 열공간의 기저가 되는 열벡터의 위치는 같다.
$\blacksquare$
기저정리(The Basis Theorem)
$S$가 $\mathbb R^n$의 부분공간이라 하자. 그러면 $S$에 대한 임의의 두 기저는 같은 수의 벡터를 같는다.
즉, 한 부분공간이 여러가지 다른 기저를 가지더라도, 각 기저는 같은 개수의 벡터를 갖는다.
증명
$\mathcal B=\{u_1,u_2,\cdots,u_r\}, \; \mathcal C=\{ v_1, v_2, \cdots, v_s \}$가 $S$에 대한 기저라고 하자.
여기서 $r=s$임을 보이면된다. 즉, $r<s$ 또는 $r>s$가 어느경우에도 가능하자 않음을 보여야한다.
우선 $r<s$라 가정하고, $\mathcal C$가 일차종속임을 보여서 기저가 될 수 없음을 유도한다.
$$c_1v_1 + c_2v_2 + \cdots + c_sv_s = 0 \;\;\;\;\;\;\;\;\;(1)$$
이라고 하자. 위 일차방정식을 만족하는 해 $c$가 무수히 많음을 보인다.
편 $\mathcal B$는 $S$에 대한 기저이므로, 각 $v_i$는 $u_j$의 일차결합
$$\begin{matrix}
v_1=a_{11}u_1+a_{12}u_2 + \cdots + a_{1r}u_r\\
v_2=a_{21}u_1+a_{22}u_2 + \cdots + a_{2r}u_r\\
\vdots\\
v_s=a_{s1}u_1+a_{s2}u_2 + \cdots + a_{sr}u_r
\end{matrix} \;\;\;\;\;\;\;\;(2)$$
로 나타낼 수 있다. 방정식(2)를 (1)에 대입하면
$c_1(a_{11}u_1 + \cdots + a_{1r}u_r)+ c_2(a_{21}u_1 + \cdots + a_{2r}u_r) + \cdots + c_s(a_{s1}u_1 + \cdots + a_{sr}u_r) = 0$
위 식을 다시 정리하면
$(c_1a_{11}+ c_2a_{21} + \cdots + c_sa_{s1})u_1 + (c_1a_{12}+ c_2a_{22} + \cdots + c_sa_{s2})u_2\\ + \cdots + (c_1a_{1r}+ c_2a_{2r} + \cdots + c_sa_{sr})u_r = 0$
한편 $\mathcal B$는 기저이므로 $u_j$는 일차독립이고, 그래서 위의 괄호안의 표현은 모두 0이 되어야 한다. 즉
$$c_1a_{11} + c_2a_{21} + \cdots + c_sa_{s1} = 0\\
c_1a_{12} + c_2a_{22} + \cdots + c_sa_{s2} = 0\\
\vdots \\
c_1a_{1r} + c_2a_{2r} + \cdots + c_sa_{sr} = 0$$
를 만족해야 한다.
위 식은 $r$개의 미지수 $c_1, c_2, \cdots , c_r$을 갖는 동차연립일차방정식이다. 하지만 가정에서 $r<s$이므로 동차연립일차방정식의 규칙에 의해 무수히 많은 비자명 해를 가진다. 특히 방정식 (1)에서도 비자명해가 무수히 많으므로 $\mathcal C$는 일차종속인 벡터의 집합이며 이 사실은 $\mathcal C$가 기저라는 사실 즉 일차독립이라는 사실에 모순이 된다. 그러므로 $r<s$는 될수 없으며 $\mathcal B$와 $\mathcal C$의 역할을 바꾸면 $r>s$도 모순이 된다.
따라서 $r=s$ 만이 참이된다.
$\blacksquare$
차원(dimension)
기저정리에 의하면 주어진 부분공간에 대한 모든 기저는 같은 수의 벡터를 가져야 한다. 이 숫자에 대한 다음의 정의를 할 수 있다.
$S$가 $\mathbb R^n$의 부분공간일 때, $S$에 대한 한 기저에 속하는 벡터의 개수를 $S$의 차원(dimension)이라고 하고 $\dim S$ 라고 표기한다.
주의
영벡터 $0$은 그 자체만으로 $\mathbb R^n$의 부분공간을 이룬다. 특히 영벡터에는 어떤 상수를 곱하더라도 무조건 영벡터 이므로 영벡터를 포함하는 임의의 집합은 무조건 일차종속이다. 그러므로 $\{0\}$은 기저가 될 수 없다.
따라서 $\{0\}$은 기저를 가질 수 없으므로 $\dim \{0\} = 0$으로 정의한다.
$\mathbb R^n$에 대한 표준기저는 $n$개의 벡터를 가지므로 $\dim \mathbb R^n = n$ 이다.
($n \leq 3$ 인 경우에는 직관적으로 알고 있는 차원과 일치한다.)
행렬 $A$의 행공간(row space)와 열공간(col space)는 같은 차원을 갖는다.
즉, 기저(basis)에 속하는 벡터의 갯수가 같다.
$A$의 행벡터는 $A^T$의 열벡터 이므로 임의의 행렬 $A$에 대해서
$$rank(A^T) = rank(A)$$
증명
$R$이 $A$의 기약 행 사다리꼴(reduced row echelon form) 이면, $R$은 $A$의 행동치(row equivalence) 이므로 $row(A) = row(R)$ 이고 다음을 만족한다.
$$\begin{align*}
dim(row(A)) &= dim(row(R))\\
&=R의\;영\;아닌\;행의\;수\\
&=R의\;선행성분\;1의\;수
\end{align*}$$
위 수를 $c$라 하자.
한편, $col(A) \neq col(R)$ 이지만 $A$와 $R$의 행은 동일한 종속관계를 갖는다. 그러므로 $dim(col(A)) = dim(col(R))$이다. 행벡터중 선행성분이 1인 성분이 $r$개 있으며 기약행사다리꼴의 특성에 의해서 $R$은 $r$개의 열이 기본 단위벡터 $e_1, e_2, \cdots, e_r$이다. $A$와 $R$이 $m \times n$ 행렬이면 이들은 $\mathbb R^m$의 벡터가 될것이다. 이들 $r$개의 벡터는 일차독립이고 $R$의 나머지 열은 이들의 일차 결합이다. 그러므로 $\dim(col(R)) = r$ 이고 $dim(col(R)) = r = dim(col(A))$ 이다.
$\blacksquare$
계수(rank)
행공간(row space)과 열공간(col space)의 차원을 행렬 $A$의 계수(rank)라 하고, $rank(A)$로 표기한다.
$$rank(A) = \dim(col(A)) = \dim(row(A^T)) = rank(A^T)$$
$rank(A)=dim(row(A))$
행렬 $A$의 rank는 행렬 $A$를 기약 행 사다리꼴(reduced row echelon form)로 표현했을때 영벡터가 아닌 행벡터들의 갯수임을 안다. 그리고 이는 $dim(row(AA)$와 일치함을 안다.
이는 기약 행사다리꼴로 표현시 0이 되는 행은 다른 행들의 일차 결합으로 표현 가능하다는 의미가 되며 남은 행들끼리는 그러지 못하기에 일차독립을 이루며 행공간의 기저가 되며 $row(A) = row(R)$이라는 개념과 일치한다.
$\blacksquare$
영공간의 차원을 행렬 $A$의 퇴화차수(nullity) 이라고 하고, $nullity(A)$ 라고 표기한다.
$nullity(A)=dim(null(A))$
즉, $nullity(A)$는 $AX=0$의 해공간의 차원이며 해에서 자유변수의 수와 같다.
$AX=0$의 해집합은 독립변수의 갯수$(n-r)$ 만크읨 벡터들의 생성으로 표현이 가능함을 안다.
행렬 $A$가 $m \times n$의 행렬이라면 $nullity(A) = n - rank(A)$이다.
이제 계수정리를 아래와 같이 새로 표현 할 수 있다.
계수정리
$A$가 $m \times n$행렬이면
$$rank(A) + nullity(A) = n$$
증명
$R$이 $A$의 기약 행 사다리꼴(reduced row echelon form)이라 하고 $rank(A) = r$ 이라 하자. 기존의 계수정리에 의해 $Ax=0$에서 $r$개의 선행변수와 $(n-r)$개의 자유변수가 존재한다. 즉, $\dim(null(A)) = n-r$ 이므로
$$rank(A) + nullity(A) = r + (n-r) = n$$
계수 정리를 통해 행렬 $A$의 영공간의 차원을 알기 위해 $Ax=0$의 해를 알 필요는 없다.
$\blacksquare$
가역행렬의 기본정리: 버전 $II$
$A$가 $n \times n$ 행렬이라고 하자. 다음 명제들은 동치이다.
a. $A$는 가역이다.
b. $\mathbb R^n$의 모든 $b$에 대하여, $Ax=b$는 유일한 해를 갖는다.
c. $Ax=0$의 해는 자명해 뿐이다.
d. $A$의 기약 행 사다리꼴은 $I_n$이다.
e. $A$는 기본행렬의 곱으로 표현된다.
f. $rank(A) = n$
g. $nullity(A)=0$
h. $A$의 열벡터들은 일차독립이다.
i. $A$의 열벡터들은 $\mathbb R^n$을 생성한다.
j. $A$의 열벡터들은 $\mathbb R^n$에 대한 기저이다.
k. $A$의 행벡터들은 일차독립이다.
l. $A$의 행벡터들은 $\mathbb R^n$을 생성한다.
m. $A$의 행벡터들은 $\mathbb R^n$에 대한 기저이다.
$A$가 $m \times n$ 행렬이라고 한다. 그러면
a. $rank(A^TA) = rank(A)$
b. $n \times n$ 행렬 $A^TA$가 가역이기 위한 필요충분조건은 $rank(A)=n$이다.
'수학 > 선형대수학' 카테고리의 다른 글
좌표(coordinate) (0) | 2020.06.13 |
---|---|
행 사다리꼴 행렬과 기약 행 사다리꼴 행렬 (1) | 2020.05.28 |
연립일차방정식의 해 (0) | 2020.05.07 |
부분공간 (0) | 2020.05.07 |
LU 분해(LU factorization) (2) | 2020.04.15 |