본문 바로가기

Mathematics/선형대수학

(선형대수학) 10-3. Block Matrices -> Block Determinants

지금부터는 각 원소별이 아닌, Block Matrix에 대한 내용으로 Determinant를 생각해보자.

먼저, Block Matrix란 -> Matrix를 Matrix로 표현한다고 생각하면 된다.

 

ex) Block Matrix

 

이 경우에도, "사이즈" 만 잘 맞추면, 행렬 덧셈과 곱(Block Multiplication)이 그대로 성립한다. 

 

(Block Multiplication)

Block 곱을 할 때에는 사이즈(특히 곱셈 순서, 더할 때 행렬의 사이즈가 일치하는지)에 주의해야 한다!

 


이번에는 이 Block Matrix로 Gauss-Jordan Elimination을 한번 진행시켜보자!!

 

(Gauss-Jordan Elimination of Block Matrix)

주어진 Block Matrix X가 다음과 같다고 생각하자. 이 때, A,B,C,D의 사이즈는 다음과 같다고 가정하자...(최대한 일반화하였음)

=> Upper Triangular Matrix를 만들어보자!!!

=> X에서 C를 없애면 된다!!

=> (Row 2)-(Row 1)*(C/A)한 것을 집어 넣으면 됨!!

=> 이렇게 X에서 Upper Triangular Matrix를 만들어 줄 수 있다. (물론 A가 Invertible해야 한다!)

=> 이 때, 저 빨간 색 Matrix식을 Schur Complement라고 한다!

=> 이 Schur Complement는 Block Matrix를 다루다보면 가끔씩 등장한다!


이 때, Determinant를 생각해보자...

(X가 정사각행렬이어야 한다. 즉, k=m => A, D가 적어도 정사각행렬!)

 

1. 먼저, 위 식에서 왼쪽의 Lower Triangular Matrix는

=> Block 관점이 아니라, 그냥 원소 하나하나만 보아도 Lower Triangular Matrix이다!! 

(대각성분에 있는 I가 Lower Triangular Matrix이므로)

=> 그러면, 우리가 이미 본대로..


2. 오른쪽 Upper Triangular Matrix의 Determinant를 어떻게 계산할지 생각해보자...

Determinant가 Pivot의 곱과 동일했으므로...

=> 저 Full Upper Triangular Matrix를 LDU Decomposition을 하였을 때의 Pivot은

=> 각각 A와 E를 LDU Decomposition을 했을 때의 Pivot을 합친 것과 동일할 것이다!!!

 

그러므로,

부호는 다음과 같이 결정하면 된다.

(a) A 혹은 E가 Invertible이 아닐 경우...

=> 어차피 determinant값이 0이 되므로 상관이 없다!

(b) A와 E가 모두 Invertible인 경우

=> 이 경우에 부호가 바뀌는 이유는 LDU Decomposition을 할 때 

뒤에 숫자는 남는데, Pivot 자리에 0이 등장해서 행의 순서를 바꿔야 하는데, 이 때 부호가 바뀐다...

=> 이러한 것을 생각한다면,

Full Upper Triangular Matrix에서 LDU Decomposition을 할 때의 행의 자리 바꿈

각각 A와 E를 LDU Decomposition을 할 때의 행의 자리 바꿈은 동일하다!

=> 그러므로, 둘의 Determinant의 부호는 같다!!

이 식은 Block Matrix가 나올 때에 자주 등장하니, 꼭 기억하자!!!

이를 조금 더 일반화하면

(위의 논리대로 생각해보면 된다!!!)

 


다시 우리의 문제로 돌아오면, Block Matrix의 Determinant를 계산할 수 있다!!

(Determinant of Block Matrix)

(물론, Note에 나온 것이 성립하는 경우도 있지만, 이는 특수한 경우!)

 


또한, 이 관계를 이용한다면, (Block Matrix => 그냥 일반적인 Matrix)의 LDU Decomposition에서도 다음과 같은 성질을 알 수 있다.

k가 1씩 늘어난다면, LDU Decomposition에서 Pivot도 하나씩 늘어나게 되는 것이므로...

Pivot을 각각 d_1,d_2,...,d_n이라고 한다면,

즉, Pivot을 Determinant를 이용해서 구할 수 있다!

(다만, 이 경우에는 행 자리바꿈이 있다면, 부호가 바뀌거나 Pivot 순서가 바뀌므로 주의!!)

 


여기까지 Block Matrix와 Determinant 사이의 관계에 대해서 알아보았다.