읽기일기

선형대수 (3)


선형대수, George Nakos 지음, 김철언 외 옮김/인터비젼

3. 행렬

3.1 행렬연산

  • 행열은 수평 열과 수직 열에 원소를 사각형을 배열 한 것, 성분(entity) $a_{ij}$, i행(row), j열(column)
  • 열 행렬 혹은 열 벡터
  • 성분이 모두 0인 행렬을 영행렬 = 0 으로 표시
  • $a_{ii}$를 주 대각선(main diagonal)이라고 하고, 주대각선 아래의 성분이 모두 0이면 위삼각(upper triangular), 위가 모두 0이면 아래 삼각(lower triangular)이라고 한다.
  • 주 대각선 위와 아래의 성분이 모두 0이면 대각(diagonal)하다고 한다.
  • 행렬 A가 스칼라이다 라는 것은 모든 대각 성분이 일치하는 대각행렬일 때.
  • 두 행렬이 일치한다라는 것은 행렬의 크기가 같고 대응하는 성분이 일치할 때.

행렬 더하기와 스칼라 곱

같은 크기의 두 행렬 A와 B의 합 A+B는 행렬의 대응하는 성분의 합으로 얻어짐.

임의의 스칼라 c에 대하여 스칼라 곱(scalar product) $ cA $는 A의 각 성분에 c를 곱하여 얻어지는 행렬

정리 1 더하기와 스칼라곱의 법칙

A, B, C를 임의의 m * n 행렬 a, b, c를 임의의 스칼라라면 다음이 성립한다.

  1. $ (A + B) + C = A + (B + C) $
  2. $ A + B = B + A $
  3. $ A + 0 = 0 + A = A $
  4. $ A + (-A) = (-A) + A = 0 $
  5. $ c ( A + B) = cA + cB $
  6. $ (a + b) C = aC + bC $
  7. $ (ab) C = a (bC) = b(aC) $
  8. $ 1A = A $
  9. $ 0A = 0 $

간단한 행렬 방정식

2X - 4B = 3A 의 행렬로 방정식을 표현하여 X를 구할 수 있다.

행렬 곱

정의 행렬 곱

A를 m * k 행렬, B를 k * n 행렬이라고 하자. 곱 AB는 열이 $ A b_1, \dots, A b_n $인 m * n 행렬이다. 여기서 $ b_1, \dots, b_n $은 B의 열이다.

AB의 행-열 계산

만약 $ C = [ c_{ij} ] = AB $ 이면 성분 $ c_{ij} $는 A의 i행과 B의 j열의 닷곱이다.

정리 행렬 곱의 법칙

A를 m * n행렬이라 하고 B, C는 아래의 연산이 수행될 수 있는 행렬, a는 임의의 스칼라라고 하면 다음이 성립한다.

  1. $ (AB) C = A (BC) $
  2. $ A ( B+ C) = AB + AC $
  3. $(B + C) A = BA + BC $
  4. $a(BC) = (aB)C = B(aC) $
  5. $ i_mA = A I_n = A $
  6. $ 0A = 0, A0 = 0$

정사각행렬의 거듭제곱

정리 3

임의의 양의 정수 n, m에 대하여 $ A^n A^m = A^{n+m}, (A^n)^m = A^{nm}, (cA)^n = c^n A^n $ 가 성립한다.

행렬곱의 불편

  1. 만약 AB가 정의되더라도 BA가 반드시 정의될 필요는 없다.
  2. AB와 BA가 정의되더라도 크기가 같아야만 하는 것은 아니다.
  3. AB와 BA가 모두 정의되고 같은 크기라도 두 행렬이 일치해야 하는 것은 아니다.
  4. AB = 0 라고 하더라도 항상 A = 0, B =0 인 상황은 아니다.
  5. CA = CB 이더라도 항상 A = B 인 것은 아니다.
  6. AC = BC가 항상 A = B인 것은 아니다
  7. $ A^2 = I $이더라도 $ A= \pm I$이지는 않는다
  8. $ (AB)^n \neq A^n B^n $이다.

만약 두 행렬 A, B 가 AB = BA를 만족한다면 두 행렬은 가환이라고 한다.

블록 행렬

행렬의 부분행렬(submatrix)은 그 행렬에서 임의의 행 혹은 열을 소거해서 얻어지는 행렬이다. 쉽게 다루기 힘든 큰 행렬을 부분 행렬의 블록으로 자주 분할한다. 이렇게 부분행렬로 이루어지는 행렬을 블록행렬이라고 한다.

$$A = \begin{bmatrix} A_{11} & A_{12} & A_{13} \\ A_{21} & A_{22} & A_{23} \end{bmatrix}$$

여기서 성분인 $ A_{ij} $는 A의 부분행렬이다.

블록행렬은 두 블록행렬의 블록 크기가 같을 때 보통 행렬인 것처럼 연산을 수행할 수 있다.

3.2 행렬의 역

정의

n * n 행렬 A가 가역(invertible) 또는 정칙(nonsingular)라는 것은 $AB = I, BA = I $인 행렬 A의 역인 행렬 B가 존재하는 것이다.

역을 가지지 않는 정사각행렬을 비가약(noninvertible), 또는 특이행렬(singular)이라고 한다.

정리 4

2 * 2행렬 A가 가역일 필요충분조건은 행렬식이 0이 아닌 것이다.

정리 5

만약 n * n 행렬 A가 가역이면 각각의 n-벡터 b에 대하여 연립방정식 Ax = b는 꼭 하나의 해를 가진다. 이 해는 $ x = A^{-1} b $ 로 주어진다.

정리 6 역의 성질

  1. 가역인 두 행렬의 곱은 가역이다. 그 역은 각각의 역을 역순으로 곱한 것이다. $ (AB)^{-1} = B^{-1} A^{-1} $
  2. 가역행렬의 역 또한 가역이다. $ (A^{-1})^{-1} = A $
  3. 가역행렬의 임의의 영 아닌 상수곱은 가역이다. 그 역은 상수의 역수와 역행렬의 스칼라 곱이다. $ (cA)^{-1} = \frac{1}{c} A^{-1} $

정리 7 거듭제곱의 성질

A를 k * k인 가역행렬, m과 n을 임의의 두 정수, c를 영 아닌 스칼라라고 하면, $ A^n $은 가역이고 다음이 성립한다.

  1. $ (A^n)^{-1} = (A^{-1})^n $
  2. $ (A^n)^m = A^{nm} $
  3. $ A^n A^m = A^{n + m} $
  4. $ (cA)^n = c^n A^n $

정리 8 소거법칙

만약 C가 가역이면 다음이 성립한다.

  1. $ CA = CB \Rightarrow A = B$
  2. $ AC = BC \Rightarrow A = B $

간단한 행렬곱 방정식

예를 들면 행렬방정식 $ CXA - B = 0 $$ X = A^{-1} B C^{-1} $와 같은 꼴로 변환하여 행렬방정식을 풀 수 있다.

$A^{-1}$의 계산

알고리즘 1 역행렬 알고리즘

역행렬이 존재한다면, $ A^{-1} $을 구하기 위해 다음을 하여라.

  1. 행렬 [A : I]의 간소화된 행 사다리꼴 [ B : C]을 구한다.
  2. B가 영행을 가지면 A는 비가역이다.
  3. 간소화된 행렬을 $ \big[ I : A^{-1} \big] $꼴로 만들면 역핼열을 구할 수 있다.

전치와 행렬연산

A의 전치행렬 $ A^T$는 A의 행과 열을 바꾸어 놓은 행렬이다. 자신의 전치행렬과 일치하는 행렬을 대칭행렬이라한다.

정리 9

  1. $ (A^T)^T = A $
  2. $ (A + B)^T = A^T + B^T $
  3. $(cA)^T = cA^T $
  4. $ (AB)^T = B^T A^T $
  5. 만약 A가 가역이면 $ A^T$도 가역이다. 이 때, $ (A^T)^{-1} = (A^{-1})^T $이다.

3.3 기본행렬과 가역행렬

기본행렬

정의 기본행렬

n * n 행렬이 기본 행렬이라는 것은 $ I_n$에서 단 한번의 행연산을 사용하여 만들어낼 수 있는 행렬이다.

만약 행렬 A의 왼쪽에 기본 행렬 E를 곱하면 그 곱 EA는 $I_n$에서 E를 만들 때 사용된 행 연산을 A에 사용한 것과 결과가 같다.

정리 10

모든 기본 행렬 E는 그 역을 가지고 역 또한 기본행렬이다. $ E^{-1} $$ I$ 에서 $ E $를 만드는 기본 행 연산의 역을 실행하여 $ I $ 로부터 얻어진다

정리 11

$ A \sim B $일 필요충분 조건은 기본행렬 $ E_1, \dots, E_k$가 존재하여 $ B = E_k \dots E_1 A $를 만족한다.

가역행렬의 특성

정리 12

정사각행렬 A의 간소화된 행사다리꼴 R은 I이거나 영행을 가진다.

정리 13

다음은 동치이다.

  1. A는 가역이다.
  2. $ A \sim I $
  3. A는 기본행렬의 곱이다.

역행렬 알고리즘

정리 14

A와 B를 m * n 행렬이라고 하자. 만약 AB = I 이면, A와 B는 가역이고 $ A^{-1} = B, B^{-1} = A$이다.

정리 15

A를 n * n 행렬이라고 하면 다음은 동치이다.

  1. A는 가역이다.
  2. $ A \sim I_n $
  3. A는 기본행렬의 곱이다.
  4. n * n 행렬 B가 존재하여 $ AB = I_n $이다.
  5. n * n 행렬 C가 존재하여 $ CA = I_n $이다.
  6. A의 각각의 열은 피보트열이다.
  7. A의 각각의 행은 피보트를 가진다.
  8. A의 열은 일차독립이다.
  9. A의 행은 일차독립이다.
  10. A의 열은 $ R^n $을 생성한다.
  11. A의 행은 $R^n $을 생성한다.
  12. 연립방정식 Ax = b는 각각의 n-벡터 b에 대하여 적어도 하나의 해를 가진다.
  13. 연립방정식 Ax = b는 각각의 n-벡터 b에 대하여 꼭 하나의 해를 가진다.
  14. 제차연립방정식 Ax = 0 은 자명해 만을 가진다.

정리 16

A와 B를 m * n 행렬이라고 할 때, A 또는 B가 비가역이면 AB도 비가역이다.

3.4 LU 인수분해

만약 m * n 행렬 A를 $ A = LU $으로 분해하는 방법을 안다고 가정하자. 여기서 L은 아래 삼각행렬이고 U는 행사다리꼴이다. 그러면 연립방정식 Ax = b 는 두단계로 풀 수 있다.

먼저 $ Ly = b $를 y에 관하여 푼다. 다음을 푼다.

$$Ux = y \\ LUx = L(Ux) = Ly = b$$

이렇게 A를 아래삼각행렬과 위삼각행렬 L, U의 곱으로 분해하는 것을 LU인수분해(LU factorization) 혹은 LU분할(LU decomposition)이라고 한다.

정리 17

A를 m * n 행렬로서 단지 소거만을 사용하여 m * n 사다리꼴 U로 간소화할 수 있다고 하자. 그러면 A는 LU 분해를 가진다. 여기서 L은 주대각선상에 1만 있는 m * m 아래삼각행렬이다. L의 i, j 성분 $ l_{ij}, (i > j) $는 간소화를 통해 이 위치가 0이 되게 할 때의 연산 $ R_i - l_{ij} F_j R_i $ 으로부터 나온다.


Add a Comment Trackback