Physicist, Programmer. What you eat, how you think, and most importantly what you have done become who you are. Who are you? and who will you be?
[Physics/Math]/Math
선형 대수학 간단한 정리들 (Linear Algebra)
kipid2024. 9. 18. 08:02
728x90
반응형
# 선형 대수학 간단한 정리들 (Linear Algebra)
정리가 엉망이지만 우선 posting. 천천히 고치겠습니다.
## PH
2015-11-25 : 지금보니까 글이 왜이렇게 중2병 스타일 같지;;; 시간날때 좀 고쳐야 할듯.
추가해야 할건, 역행렬 존재여부는 어떻게 알아낼지. determinant가 0이 아니면 됨. 근데 이걸 정확히 어떻게 증명하지?ㅋ. 난감하네 ㅡㅡ.
일반 mn 행렬 특성들이랑 쓰임새, eigen vector 이야기들과 그 의미. Hermitian이야기. similarity transform과 그 의미. 정리할거 왜케 많니 ㅡㅡ.
2011-10-18 : 질문 1-3 증명과정이 엉망이네 -ㅇ-;; 천천히 고칠께요ㅋ;; 질문 1-3 증명이 엉망인 이유는 행렬 A랑 B가 같지 않더라도 A와 B의 왼쪽에 행렬 C (0행렬은 아닌) 를 곱할경우 같아지는 경우도 있기 때문에.
## TOC
## 행렬의 연산
선형 대수학에서 대부분 제대로 짚고 넘어가지 않는 기본적인 개념들을 정리해보려고 한다. 물리학이나 경제쪽, 기타 여러가지 방면에 두루두루 쓰이는 것이 선형 대수학이다. 뭐 많은 곳에서 선형적인 일이 많이 일어나기 때문이기도 하고, 복잡한 문제도 단순화 혹은 근사시켜서 선형으로 만들면 (선형은 풀리긴 하니까..) 선형 대수학으로 많은 것을 근사적으로라도 설명할 수 있기 때문이다. 우선은 행렬 (Matrix) 부터 시작해보자.
선형 대수학 (Linear Algebra) 은 대부분 행렬 (Matrix) 로 표현된다. 굳이 행렬이 아니라 Linear 한 Operation 은 다 선형 대수에 속하지만, 개념적으로라도 행렬로 시각화해서 알고 있으면 편하니 행렬로부터 시작해서 선형 대수를 배워보자. 일반적으로 m \times n (m-by-n) 행렬 \mathbf{A} 는 다음과 같이 표시된다.
\mathbf{A} = \begin{pmatrix}
\mathbf{A}_{11} & \mathbf{A}_{12} & \cdots & \mathbf{A}_{1n} \\
\mathbf{A}_{21} & \mathbf{A}_{22} & \cdots & \mathbf{A}_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
\mathbf{A}_{m1} & \mathbf{A}_{m2} & \cdots & \mathbf{A}_{mn} \\
\end{pmatrix}
m 행 (rows) 과 n 열 (columns) 로 이루어져 있고 각 항들 (matrix elements) 은 일반적으로 복소수 (complex number) 이다. 뭐 더 일반적으로는 선형대수적인 연산이 가능한 그 어떤 element 가 들어와도 된다. (곱셈은 commute 해야 하나? 너무 복잡해지니 이런 일반화는 나중에 고민하기로 하고 우선 사칙연산이 잘 정의되어 있는 실수, 복소수라고 하고 넘어가자.)
행렬에서의 덧셈(+), 뺄셈(-), 등호(=), 곱셈(\times), 나눗셈(/) 등을 정의해야 하겠지만, 여기선 element by element 일반적인 복소수 (complex number) 연산 (operation) 으로 설명할테니, 행렬연산이 어떻게 정의될지는 잘 유추해 보기 바란다. (이걸로 선형 대수 공부를 시작한다면, 처음에 좀 알려줘야 하겠지만... 그런분들은 거의 없을 것이므로;;ㅋ. 선형 대수를 배우면서 대충 넘어갔던 사실들과 증명들을 참고하는 목적으로 보시길...)
## 정사각 행렬부터... (From square matrices)
### 역행렬의 종류와 갯수?
n \times n 정사각 행렬 (n-by-n Square Matrix) 부터 생각해보자.
\mathbf{A} = \begin{pmatrix}
\mathbf{A}_{11} & \mathbf{A}_{12} & \cdots & \mathbf{A}_{1n} \\
\mathbf{A}_{21} & \mathbf{A}_{22} & \cdots & \mathbf{A}_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
\mathbf{A}_{n1} & \mathbf{A}_{n2} & \cdots & \mathbf{A}_{nn} \\
\end{pmatrix}
행렬의 왼쪽 역행렬 (Left Inverse Matrix) 이 있다면 아래식을 만족한다. 왼쪽 역행렬의 정의라고도 할 수 있다.
\sum_{i=1}^n \mathbf{A}_{li}^{\textrm{L}-1} \mathbf{A}_{ij} = \delta_{lj}
행렬의 오른쪽 역행렬 (Right Inverse Matrix) 이 있다면 아래식을 만족한다. 오른쪽 역행렬의 정의라고도 할 수 있다.
\sum_{j=1}^n \mathbf{A}_{ij} \mathbf{A}_{jk}^{\textrm{R}-1} = \delta_{ik}
질문 1-1: 역행렬은 항상 있을까? 역행렬 (왼쪽 역행렬이든 오른쪽 역행렬이든) 이 존재할 조건 (가역 (invertible) 조건) 은 무엇일까? In which conditions is a matrix invertible?
질문 1-2: 역행렬은 여러개 존재할 수 있을까? How many inverse matrices are there for a specific matrix?
질문 1-3: 왼쪽 역행렬이 있으면 오른쪽 역행렬도 있을까? 오른쪽 역행렬이 있으면 왼쪽 역행렬도 있을까? If there is a left inverse, is there a right inverse too? and vice versa?
답 1-3: 왼쪽 역행렬은 있고, 오른쪽 역행렬은 없다고 가정하자.
\sum_{i} \mathbf{A}_{li}^{\textrm{L}-1} \mathbf{A}_{ij} = \delta_{lj}\sum_{j} \mathbf{A}_{ij} \mathbf{B}_{jk} \neq \delta_{ik}
\qquad \textrm{for any matrix }\mathbf{B}
오른쪽 역행렬이 없다면 임의의 행렬에 대해 위 식을 만족하므로, \mathbf{B}를 \mathbf{A}^{\textrm{L}-1}로 잡고 왼쪽에 \mathbf{A}^{\textrm{L}-1} 곱해주면,
\begin{split}
\sum_{i,j} \mathbf{A}_{li}^{\textrm{L}-1} \mathbf{A}_{ij} \mathbf{A}_{jk}^{\textrm{L}-1}
&\neq \mathbf{A}_{li}^{\textrm{L}-1} \delta_{ik} \\
\sum_{j} \delta_{lj} \mathbf{A}_{jk}^{\textrm{L}-1}
&\neq \mathbf{A}_{lk}^{\textrm{L}-1} \\ \mathbf{A}_{lk}^{\textrm{L}-1}
&\neq \mathbf{A}_{lk}^{\textrm{L}-1}
\end{split}
모순된 결과가 나오므로 한쪽 역행렬만 있다는 가정이 잘못되었다는 뜻이다. 왼쪽 오른쪽을 바꿔서 가정해도 비슷한 결론이 나오므로, 역행렬은 양쪽 다 같이 존재하거나 양쪽이 같이 존재하지 않는다는 결론이 나온다. (뭔가 증명이 부족함. Matrix 연산에서 양쪽이 같지 않아도 0 이 아닌 matrix 를 곱해서 같아질수도 있을거 같은데...)
답 1-4: 왼쪽 역행렬과 오른쪽 역행렬이 둘 다 존재한다면,
\begin{split}
\sum_{i,j} \mathbf{A}_{li}^{\textrm{L}-1} \mathbf{A}_{ij} \mathbf{A}_{jk}^{\textrm{R}-1}
&= \sum_{j} \delta_{lj} \mathbf{A}_{jk}^{\textrm{R}-1}
= \mathbf{A}_{lk}^{\textrm{R}-1} \\
&= \sum_{i} \mathbf{A}_{li}^{\textrm{L}-1} \delta_{ik}
= \mathbf{A}_{lk}^{\textrm{L}-1}
\end{split}왼쪽 역행렬과 오른쪽 역행렬이 같다는 결론이 나온다.
질문 1-2 again: 역행렬은 여러개 존재할 수 있을까?
답 1-2: 양쪽 역행렬이 둘 다 있는 경우, 한쪽(오른쪽) 역행렬이 여러개라고 가정해보자.
\begin{split}
\sum_{i,j} \mathbf{A}_{li}^{\textrm{L}_i-1} \mathbf{A}_{ij} \mathbf{A}_{jk}^{\textrm{R}_{1,2}-1}
&= \sum_{j} \delta_{lj} \mathbf{A}_{jk}^{\textrm{R}_{1,2}-1}
= \mathbf{A}_{lk}^{\textrm{R}_{1,2}-1} \\
&= \sum_{i} \mathbf{A}_{li}^{\textrm{L}_i-1} \delta_{ik}
= \mathbf{A}_{lk}^{\textrm{L}_i-1}
\end{split}\mathbf{A}_{lk}^{\textrm{R}_{1,2}-1} \\
= \mathbf{A}_{lk}^{\textrm{L}_i-1}
오른쪽 역행렬 두 개 모두 i번째 왼쪽 역행렬과 같다는 결론이 나오므로, 오른쪽 역행렬 두 개는 같아야 한다. 양쪽을 바꿔서 한번더 생각해보면, 양쪽 역행렬은 같고 이 역행렬은 여러개 존재할 수 없다는 결론이 나온다. 따라서 \mathbf{A}의 역행렬이 존재한다면 왼쪽 역행렬, 오른쪽 역행렬, 몇번째 역행렬 구분할 필요없이 하나의 역행렬이 모든 역할을 한다. 따라서 역행렬 표기는 \mathbf{A}^{-1}로 통일해서 쓰기로 하자. 어차피 왼쪽, 오른쪽, 몇번째 구분이 없어지니까.
### 역행렬은 어떻게 구할까? Determinant와 역행렬.
이제 역행렬이 있다면 찾기만 하면 된다. 어떻게 찾을 것인가? 위 결론들로 봤을때, 한개를 우연찮게 때려맞추면 그것이 유일한 역행렬이란걸 알 수 있는데... 어떻게 잘 때려맞출지를 고민해 봐야 한다.
\sum_{j} \mathbf{A}_{ij} \mathbf{A}_{jk}^{-1} = \delta_{ik}
뚫어져라 잘 쳐다보자. 벡터의 내적과 비슷한걸 알 수 있다. \vec{v}_i = \sum_j A_{ij} \hat{e}_j vector들이 있을 때, 아래와 같은 조건을 만족시키는 \vec{w}_k = \sum_j A_{jk}^{-1} \hat{e}_j vector들을 찾아내는 문제로 볼 수 있는데,
\vec{v}_i \cdot \vec{w}_k = \delta_{ik}
이는 역격자 벡터(reciprocal lattice vector)들을 찾는 문제이다. 뭐, 이리 말하면 그냥 나혼자 솰라솰라 하는 꼴이 될거 같긴한데... 아무튼 아시는 분들은 reciprocal lattice vector를 어떻게 찾았는지 참조해 보면서 역행렬을 어떻게 찾을지 고민해 보시고, 여기서 더 길게 설명해도 어차피 결론은 때려 맞췄다는 것이기 때문에 그냥 때려 맞췄다는 식으로 설명을 이어가겠다. (더 근사한 설명을 가지고 계신 분들을 공유해 주시면 감사하겠습니다.)
우선 \vec{v}_i vector들로 이뤄진 n-dimensional 부피를 생각해 보면,
V = \sum_{i,j,k,\cdots} \epsilon_{ijk\cdots}
(\vec{v}_1 \cdot \hat{e}_{i})
(\vec{v}_2 \cdot \hat{e}_{j})
(\vec{v}_3 \cdot \hat{e}_{k}) \cdots
로 구해지는 걸 알 수 있다. 제 블로그 글 텐서(Tensor)와 상대론(Relativity) - 0. 텐서(Tensor)란? 참조 하시라! 아무튼 fully anti-symmetric한 Levi-Civita tensor가 중요한 역할을 한다는 것을 알 수 있다. 행렬로 돌아와서 생각해보면,
V = \sum_{i,j,k,\cdots}
\epsilon_{\phantom{(}ijk\cdots}^{(123\cdots)}
\mathbf{A}_{1i} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots
where
\epsilon_{\phantom{(}ijk\cdots}^{(123\cdots)} = \left\{
\begin{array}{ll}
(-1)^{\#} & \textrm{when i,j,k,}\cdots\textrm{ are \#-th permutation of (1,2,3,}\cdots\textrm{).} \\
0 & \textrm{otherwise (when any pair of i,j,k,}\cdots\textrm{ have the same value.)} \\
\end{array} \right.
이걸 결정식(determinant)이라고 정의한다. 왜 이런 해괴망측한 것을 정의한 것일까? 그 이유는 determinant의 특징들을 하나씩 알아보면서 파헤쳐 나가보자. \{i,j,k,\cdots\}들의 위치를 바꿀때마다(permutation마다) -1, +1로 순차적으로 바뀌는데, 바로 옆에 있는 것끼리만 바꿀 수 있는 것이 아니고 아무 위치에 있는 두개의 index를 바꿀 수 있다. 똑같은 위치의 두 index를 두번 바꾸면 원래의 값이 돌아오는 것도 확인 할 수 있다. 위와 같은 Levi-Civita tensor의 특징으로부터 다음과 같은 determinant의 성질들을 알아낼 수 있는데, 여러 책에서 determinant를 구하는 여러가지 방법들을 알려준다.
행을 하나 잡거나 열을 하나 잡고 열(행)을 증가시키면서 그 행과 열을 뺀 나머지의 determinant를 그 항과 곱해서 어쩌구 저쩌구... 2-by-2 matrix의 determinant를 ad-bc로 정의하고 iterative하게 n-by-n matrix의 determinant로 확장한다던지... 행을 잡고 구한거랑 열을 잡고 구한거랑 결과값이 같긴 한거야? 왜 determinant를 이따구로 정했지? 등등 수많은 궁금증이 피어나오는데도 제대로 된 설명을 못봤던거 같다. 이미 알고 있는 사람들은 남들 이해시킬 정도로 정리해서 설명해주기 귀찮아서 일수도 있고, 선형 대수를 사용하면서도 그냥 유명한 수학자가 맞다니까 그런가보다 하고 넘어갔을 것이다. 약간 머리좀 써야하는거라 한걸음 한걸음씩 나가자. (잉여력 발동 안하면 솔직히 나도 이렇게 정리하면서 누구한테 설명해주기 귀찮다;;ㅋ)
우선 Levi-Civita tensor의 특징 파악이 급선무다. determinant의 정의식을 풀어쓰면서 분석에 들어가보자.
\begin{split}
\det(\mathbf{A})
&= \sum_{i,j,k,\cdots=1}^{n} \epsilon_{\phantom{(}ijk\cdots}^{(123\cdots)} \mathbf{A}_{1i} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \\
&= \bigg( \epsilon_{\phantom{(}111\cdots}^{(123\cdots)} \mathbf{A}_{11} \mathbf{A}_{21} \mathbf{A}_{31} \cdots \bigg) + \cdots +
\bigg( \epsilon_{\phantom{(}112\cdots}^{(123\cdots)} \mathbf{A}_{11} \mathbf{A}_{21} \mathbf{A}_{32} \cdots \bigg) + \cdots \\
&~~+ \bigg( \epsilon_{\phantom{(}123\cdots}^{(123\cdots)} \mathbf{A}_{11} \mathbf{A}_{22} \mathbf{A}_{33} \cdots \bigg) + \cdots +
\bigg( \epsilon_{\phantom{(}213\cdots}^{(123\cdots)} \mathbf{A}_{12} \mathbf{A}_{21} \mathbf{A}_{33} \cdots \bigg) + \cdots
\end{split}
Summation에서 \{i,j,k,\cdots\}들은 n^n개의 set을 가질 수 있다. 이 중 한 쌍이라도 값이 같을 경우는 Levi-Civita tensor 값이 0이 되므로 summation에 영향을 안준다. 따라서 summation이 n!개로 줄어들었다. 우선 식이 너무 길어져서 3차원 행렬을 가정하고 전개해 나가겠다. n-dimensional로의 일반적인 확장은 금새 눈치챌 수 있으리라 믿는다. 0이 안되는 값들만 모아보자.
\begin{split}
\det(\mathbf{A})
&= \bigg( \epsilon_{\phantom{(}123}^{(123)} \mathbf{A}_{11} \mathbf{A}_{22} \mathbf{A}_{33} \bigg)
+ \bigg( \epsilon_{\phantom{(}132}^{(123)} \mathbf{A}_{11} \mathbf{A}_{23} \mathbf{A}_{32} \bigg) \\
&~~+ \bigg( \epsilon_{\phantom{(}213}^{(123)} \mathbf{A}_{12} \mathbf{A}_{21} \mathbf{A}_{33} \bigg)
+ \bigg( \epsilon_{\phantom{(}231}^{(123)} \mathbf{A}_{12} \mathbf{A}_{23} \mathbf{A}_{31} \bigg) \\
&~~+ \bigg( \epsilon_{\phantom{(}312}^{(123)} \mathbf{A}_{13} \mathbf{A}_{21} \mathbf{A}_{32} \bigg)
+ \bigg( \epsilon_{\phantom{(}321}^{(123)} \mathbf{A}_{13} \mathbf{A}_{22} \mathbf{A}_{31} \bigg)
\end{split}
모든 과정을 다 보여주면 졸려질테니, 이제부턴 약간의 힌트만 주면서 넘어가겠다. (쉽게쉽게 설명하려고 했는데, 점점 산으로 가는 -ㅇ-;;) Levi-Civita tensor(quasi-tensor? 이것이 진정한 tensor인지는 텐서와 상대론 - 0. Tensor란?편에서 다루겠다.)는 다음과 같이 generalize 될 수 있다.
\epsilon_{\phantom{(}ijk\cdots}^{(lmn\cdots)\pm} = \left\{
\begin{array}{ll}
(\pm 1)^{\#} & \textrm{when i,j,k,}\cdots\textrm{ are \#-th permutation of (l,m,n,}\cdots\textrm{).} \\
0 & \textrm{otherwise} \\
\end{array} \right.
+1의 경우는 여기서는 상관없으니 넘어가기로 하고 -1인 경우의 특성들을 찾아보자.
\epsilon_{\phantom{(}ijk\cdots}^{(lmn\cdots)} = \left\{
\begin{array}{ll}
(-1)^{\#} & \textrm{when i,j,k,}\cdots\textrm{ are \#-th permutation of (l,m,n,}\cdots\textrm{).} \\
0 & \textrm{otherwise} \\
\end{array} \right.
\{i,j,k,\cdots\} 중에 어느 한쌍만 같아도 값은 0이다. (그 쌍에 대한 permutation이 있어도 같은 set이므로 같은 값을 가져야 하는데 부호가 바뀌면 같아질 수 없으므로.)
permutation의 기준이 되는 \{l,m,n,\cdots\} 중에 어느 한쌍만 같더라도 값이 0이 된다. (증명은 위와 마찬가지.)
위 아래 동시에 permutation을 가하면 값은 유지된다.(꼭 위아래 같은 위치의 index쌍을 바꿀 필요는 없다.)
\epsilon_{\phantom{(}ijk\cdots}^{(lmn\cdots)}
= \epsilon_{\phantom{(}ikj\cdots}^{(lnm\cdots)}
= \epsilon_{\phantom{(}jik\cdots}^{(mln\cdots)}
= \epsilon_{\phantom{(}jki\cdots}^{(mnl\cdots)}
= \epsilon_{\phantom{(}kij\cdots}^{(nlm\cdots)}
= \epsilon_{\phantom{(}kji\cdots}^{(nml\cdots)}
위든 아래든 한번씩 permutation을 할 때마다 부호가 바뀐다.
\epsilon_{\phantom{(}ijk\cdots}^{(lmn\cdots)}
= -\epsilon_{\phantom{(}ikj\cdots}^{(lmn\cdots)}
= \epsilon_{\phantom{(}ikj\cdots}^{(mln\cdots)}
위 아래 set을 뒤바꿔도 값이 같다.
\epsilon_{\phantom{(}ijk\cdots}^{(lmn\cdots)} = \epsilon_{\phantom{(}lmn\cdots}^{(ijk\cdots)}
위 특성들을 적절히 이용하면,
\begin{split}
\det(\mathbf{A}) &= \sum_{i,j,k,\cdots} \epsilon_{\phantom{(}ijk\cdots}^{(123\cdots)} \mathbf{A}_{1i} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \\
&= \sum_{l,m,n,\cdots} \epsilon_{\phantom{(}123\cdots}^{(lmn\cdots)} \mathbf{A}_{l1} \mathbf{A}_{m2} \mathbf{A}_{n3} \cdots \\
\end{split}
가 됨을 알 수 있다. (잘 설명할 수 있을거라 생각했는데, 생각보다 어렵군요;;ㅋ. 이해 안되신 분들 많은듯 ㅡㅡ;;; 여기저기 손으로 가리키면서 요골 여기로 옮기면서(permutation 하면서) 부호하나 바꾸고, 한번더 permutation하면서 부호 바꾸고 이렇게 설명을 해야 하는데... 글로 쓰려다보니 힘드네요;;) 위 식으로부터 행렬의 두 행이나 열이 똑같을 경우 determinant가 0인 것을 알 수 있고, 한 행에 다른행을 더하거나 빼도 determinant는 변하지 않음을 알 수 있다. 즉,
\begin{split}
\det(\mathbf{A}) &= \sum_{i,j,k,\cdots} \epsilon_{\phantom{(}ijk\cdots}^{(123\cdots)} \mathbf{A}_{1i} \mathbf{A}_{1j} \mathbf{A}_{3k} \cdots \\
&= \sum_{l,m,n,\cdots} \epsilon_{\phantom{(}123\cdots}^{(lmn\cdots)} \mathbf{A}_{l1} \mathbf{A}_{m2} \mathbf{A}_{n2} \cdots \\ &=0
\end{split}
\begin{split}
\det(\mathbf{A}) &= \sum_{i,j,k,\cdots} \epsilon_{\phantom{(}ijk\cdots}^{(123\cdots)} \mathbf{A}_{1i} (\mathbf{A}_{2j} + c \mathbf{A}_{1j}) \mathbf{A}_{3k} \cdots \\
&= \sum_{i,j,k,\cdots} \epsilon_{\phantom{(}ijk\cdots}^{(123\cdots)} \mathbf{A}_{1i} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \\
&= \sum_{l,m,n,\cdots} \epsilon_{\phantom{(}123\cdots}^{(lmn\cdots)} \mathbf{A}_{l1} \mathbf{A}_{m2} (\mathbf{A}_{n3} + d \mathbf{A}_{n2}) \cdots \\
&= \sum_{l,m,n,\cdots} \epsilon_{\phantom{(}123\cdots}^{(lmn\cdots)} \mathbf{A}_{l1} \mathbf{A}_{m2} \mathbf{A}_{n3} \cdots \\ &=0
\end{split}
더 풀어나가 보자. i summation만 따로 풀어서 써보면,
\begin{split}
\det(\mathbf{A}) &= \mathbf{A}_{11} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}1jk\cdots}^{(123\cdots)} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \bigg) \\
&~~+ \mathbf{A}_{12} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}2jk\cdots}^{(123\cdots)} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \bigg) \\
&~~+ \mathbf{A}_{13} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}3jk\cdots}^{(123\cdots)} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \bigg) \\\\
&= \mathbf{A}_{11} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}1jk\cdots}^{(123\cdots)} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \bigg) \\
&~~- \mathbf{A}_{12} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}2jk\cdots}^{(213\cdots)} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \bigg) \\
&~~- \mathbf{A}_{13} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}3jk\cdots}^{(132\cdots)} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \bigg) \\\\
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
&= \mathbf{A}_{11} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}1jk\cdots}^{(123\cdots)} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \bigg) \\
&~~- \mathbf{A}_{12} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}2jk\cdots}^{(213\cdots)} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \bigg) \\
&~~+ \mathbf{A}_{13} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}3jk\cdots}^{(312\cdots)} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \bigg) \\\\
\end{split}
\begin{split}
\det(\mathbf{A}) &= \mathbf{A}_{11} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}jk\cdots}^{(23\cdots)} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \bigg) \\
&~~- \mathbf{A}_{12} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}jk\cdots}^{(13\cdots)} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \bigg) \\
&~~+ \mathbf{A}_{13} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}jk\cdots}^{(12\cdots)} \mathbf{A}_{2j} \mathbf{A}_{3k} \cdots \bigg) \\\\
\end{split}
위와 같이 n \times n matrix의 determinant는 한단계 낮은(행,열을 하나씩 지운) (n-1) \times (n-1) matrix들의 determinant로부터 iterative하게 구해질 수 있는 것이다. 지금까지 제대로 이해했다면 뽑아내는 행,열이 어떠한 값이라도 어떻게 determinant를 구할 수 있을지 알 것이다.
이해를 돕기위해 j summation만 따로 풀어서 쓴 경우도 보이겠다.
\begin{split}
\det(\mathbf{A}) &= \mathbf{A}_{21} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}i1k\cdots}^{(123\cdots)} \mathbf{A}_{1i} \mathbf{A}_{3k} \cdots \bigg) \\
&~~+ \mathbf{A}_{22} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}i2k\cdots}^{(123\cdots)} \mathbf{A}_{1i} \mathbf{A}_{3k} \cdots \bigg) \\
&~~+ \mathbf{A}_{23} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}i3k\cdots}^{(123\cdots)} \mathbf{A}_{1i} \mathbf{A}_{3k} \cdots \bigg) \\\\
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
&= -\mathbf{A}_{21} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}i1k\cdots}^{(213\cdots)} \mathbf{A}_{1i} \mathbf{A}_{3k} \cdots \bigg) \\
&~~+ \mathbf{A}_{22} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}i2k\cdots}^{(123\cdots)} \mathbf{A}_{1i} \mathbf{A}_{3k} \cdots \bigg) \\
&~~- \mathbf{A}_{23} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}i3k\cdots}^{(132\cdots)} \mathbf{A}_{1i} \mathbf{A}_{3k} \cdots \bigg) \\\\
\end{split}
\begin{split}
\det(\mathbf{A}) &= -\mathbf{A}_{21}
\bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}ik\cdots}^{(23\cdots)} \mathbf{A}_{1i} \mathbf{A}_{3k} \cdots \bigg) \\
&~~+ \mathbf{A}_{22} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}ik\cdots}^{(13\cdots)} \mathbf{A}_{1i} \mathbf{A}_{3k} \cdots \bigg) \\
&~~- \mathbf{A}_{23} \bigg( \sum_{j,k,\cdots} \epsilon_{\phantom{(}ik\cdots}^{(12\cdots)} \mathbf{A}_{1i} \mathbf{A}_{3k} \cdots \bigg) \\\\
\end{split}
Defining \mathbf{A}'s minors \mathbf{M}_{ij} as the determinant of the (n-1)\times(n-1) matrix that results from \mathbf{A} by removing the i-th row and the j-th column.
\begin{split}
\det(\mathbf{A})
&= \sum_{k} (-1)^{k+j} \mathbf{A}_{kj} \mathbf{M}_{kj} \\
&= \sum_{k} (-1)^{i+k} \mathbf{A}_{ik} \mathbf{M}_{ik} \\
\end{split}
which is an independent value of i and j.
지금까지 잘 따라왔다면, 대부분의 선형 대수학 책에서 자세한 증명없이 determinant의 특성이다라고만 알려졌던 것들이 왜 그런지를 이해하셨으리라 생각한다. (그냥 저만의 희망사항일듯;;; 선형 대수는 글로 설명하기 너무 힘들군요;;;)
이제 이 determinant로 역행열을 어떻게 찾아야 할지 고민할 차례다. determinant들의 특성들을 잘 살펴보다 보면, 역행렬로 시도해 볼만한 행렬이 번뜩! 떠오르게 된다.(약간 억지스럽나?ㅋ) 역행렬의 정의가 되는 식을 우선 다시 보자.
\sum_{j} \mathbf{A}_{ij} \mathbf{A}_{jk}^{-1} = \delta_{ik}i와 k가 같을 때만 1이고 나머지 경우는 다 0이 되어야 한다. Matrix의 determinant를 구할 때 두 행이나 열을 같은 것으로 쓸 경우 0이 나온다는 성질과 잘 연관시켜보자. 잘 연관시켰다면(열심히 고민한다면) 다음과 같은 답을 얻을 수 있을 것이다.
\sum_{j} \mathbf{A}_{ij} (-1)^{k+j} \mathbf{M}_{kj} = \delta_{ik} \det(\mathbf{A})\sum_{j} \mathbf{A}_{ij} \bigg( \frac{(-1)^{k+j} \mathbf{M}_{kj}} {\det(\mathbf{A})} \bigg) = \delta_{ik}\sum_{i} \bigg( \frac{(-1)^{i+k} \mathbf{M}_{ik}} {\det(\mathbf{A})} \bigg) \mathbf{A}_{ij} = \delta_{ki}
Levi-Civita tensor의 마법을 잘 부릴 줄 안다면 이와같은 결론들을 스스로 내릴 수 있을 것이다. 그럼 이제 일반 행렬로 넘어가기에 앞서 자주 쓰이는 determinant의 특성 한가지만 더 짚고 넘어가자.
\begin{split}
\det(\mathbf{A} \mathbf{B})
&= \det \bigg( \sum_{k} \mathbf{A}_{ik} \mathbf{B}_{kj} \bigg) \\
&= \sum_{i,j,k,\cdots} \epsilon_{\phantom{(}ijk\cdots}^{(123\cdots)}
\bigg( \sum_{l} \mathbf{A}_{1l} \mathbf{B}_{li} \bigg)
\bigg( \sum_{m} \mathbf{A}_{2m} \mathbf{B}_{mj} \bigg)
\bigg( \sum_{n} \mathbf{A}_{3n} \mathbf{B}_{nk} \bigg) \cdots \\
&= \sum_{i,j,k,\cdots,l,m,n,\cdots} \mathbf{A}_{1l} \mathbf{A}_{2m} \mathbf{A}_{3n}
~~\epsilon_{\phantom{(}ijk\cdots}^{(123\cdots)}
\mathbf{B}_{li} \mathbf{B}_{mj} \mathbf{B}_{nk} \cdots \\
&= \sum_{l,m,n,\cdots} \mathbf{A}_{1l} \mathbf{A}_{2m} \mathbf{A}_{3n}
\sum_{i,j,k,\cdots} \epsilon_{\phantom{(}ijk\cdots}^{(123\cdots)}
\mathbf{B}_{li} \mathbf{B}_{mj} \mathbf{B}_{nk} \cdots \\
&= \sum_{l,m,n,\cdots} \mathbf{A}_{1l} \mathbf{A}_{2m} \mathbf{A}_{3n}
~~\epsilon_{\phantom{(}lmn\cdots}^{(123\cdots)} \det(\mathbf{B}) \\
&= \det(\mathbf{A}) \det(\mathbf{B}) \\
\end{split}
질문 1-1 again: 역행렬은 항상 있을까? 역행렬이 존재할 조건(가역(invertible) 조건)은 무엇일까? In which conditions is a matrix invertible?
우선 위의 결과들로부터 determinant가 0만 아니라면 역행렬이 위와같이 구해진다는걸 알 수 있다. 그렇다면 determinant가 0일땐 역행렬이 없는 것일까?
이제 전체에 determinant를 취해보자. 오른쪽은 단위행렬이므로 determinant가 1이 나온다.
\det \bigg( \sum_{j} \mathbf{A}_{ij} \mathbf{A}_{jk}^{-1} \bigg) = \det( \delta_{ik} ) =1
바로 위에서 증명한 성질을 이용하면,
\det(\mathbf{A}) \det(\mathbf{A}^{-1}) =1
따라서 \det(\mathbf{A})가 정확히 0일 때에는 역행렬이 불가능 함을 알 수 있다. 결론적으로 역행렬이 존재할 조건은 determinant가 0이 아닌것이고, 반대로 determinant가 0이라면 역행렬이 존재하지 않음을 알 수 있다.