5장. 행렬

IT 전공자를 위한 기초수학

5

5.1 행렬의 정의

5.2 행렬의 연산

5.3 행렬식

5.4 역행렬

5.5 행렬과 연립방정식

5.6 고유치와 고유벡터

5.7 행렬의 응용

5.1

행렬의 정의

5.1.1  행렬이란

행렬(matrix): [eqn: m]개의 행과 [eqn: n]개의 열의 크기를 가지는 숫자들의 모임

- 행렬의 가로줄을 행(row), 세로줄을 열(column)이라 한다.

- 임의의 실수 [eqn: a_ij `(i=1,```2,```...,```m,~j=1,```2,```...,```n)]를 원소로 가지는 [eqn: m×n] 크기의 행렬을 [eqn: A`]라고 하면

[eqn: A = pmatrix {``a_11&a_12& CDOTS &a_1n#``a_21&a_22& CDOTS & a_2n # VDOTS & VDOTS & DDOTS & VDOTS#``a_m1&a_m2& CDOTS&a_mn ``}] = [eqn: (a_ij `)_m×n]

- 성분 [eqn: a_ij]는 [eqn: i]번째 행, [eqn: j]번째 열의 원소

- [eqn: m TIMES n] 행렬 (또는 ([eqn: m], [eqn: n]) 행렬): [eqn: m]개의 행과 [eqn: n]개의 열을 갖는 행렬

- [eqn: n]차 정방행렬(square matrix): 행의 수와 열의 수가 모두 [eqn: n]인 행렬

- 주대각선(main diagonal line): 정방행렬에서 행의 위치([eqn: i])와 열의 위치([eqn: j])가 [eqn: i=j]로 같은 성분들

- 대각행렬(diagonal matrix): 정방행렬에서 주대각선 이외의 모든 성분이 0인 사각행렬

(Ex) 다음 행렬의 [eqn: a_11 , ```a_22 , ```..., ```a_nn] 성분들이 주대각선이 된다.

[eqn: pmatrix {a_11&a_12& CDOTS &a_1n#a_21&a_22& CDOTS & a_2n # VDOTS & VDOTS & DDOTS & VDOTS#a_n1&a_n2& CDOTS&a_nn }]

예제 5.1

다음 행렬의 행과 열의 수는 얼마인가?

[eqn: A=pmatrix { 1&2&3&4 # 5&6&7&8}]

풀이

행렬 [eqn: A]는 행의 수는 2, 열의 수는 4인 2 × 4 행렬이다.

예제 5.2

다음 행렬들을 행과 열의 수 그리고 성분의 값이란 특징에 따라 구분하여라.

[eqn: A= pmatrix{1&2&3#5&6&7}], [eqn: B= pmatrix{4&3&5#3&2&7#5&7&0}], [eqn: C= pmatrix{3&0&0#0&6&0#0&0&8}]

풀이

행렬 [eqn: A]는 2 × 3 행렬, [eqn: B]는 3차 정방행렬, [eqn: C]는 3차 대각행렬이다.

5.1.2  행렬의 성질

전치 연산: 행렬의 행과 열의 위치를 바꾸는 연산

전치행렬(transpose matrix): 행렬 [eqn: A=(a _{ij} ``) _{m TIMES n}]에 대하여 행의 위치와 열의 위치를 바꾸어 놓은 행렬 ([eqn: A ^{t} =(a _{ji} ``) _{n TIMES m}])

정의 5.1

예제 5.3

다음 행렬의 전치행렬을 구하여라.

[eqn: A= pmatrix{``1``2``3``#``4``5``6``}], [eqn: B= pmatrix{``4&3&5``#``1&-2&0``#``3&5&8``}]

풀이

행렬 [eqn: A]는 2 × 3 행렬이므로 전치행렬 [eqn: A ^{t}]는 3 × 2 행렬이 된다.

행렬 [eqn: B`]는 3차 정방행렬이므로 이의 전치행렬도 3 × 3 정방행렬이 된다.

[eqn: A ^{t} = pmatrix{``1&4``#``2&5``#``3&6``}], [eqn: B ^{t} = pmatrix{``4&1&3``#``3&-2&5``#``5&0&8``}]

대칭행렬(symmetric matrix): [eqn: A``=``A^t]인 행렬

정의 5.2

- [eqn: A=(a_ij ``)_n×n]가 대칭행렬이면 [eqn: (a_ij `)=(a_ji `)]이다.

예제 5.4

다음 행렬이 대칭행렬이 되도록 [eqn: a, ```b,``` c]의 값을 구하여라.

[eqn: A=pmatrix { ``4&`3`&5`` # ``a&`2`&b`` #`` c&`1`&8 ``}]

풀이

[eqn: A^t =pmatrix { ``4&`a`&c`` # ``3&`2`&1`` #`` 5&`b`&8 ``}]      [eqn: therefore ~A=pmatrix { ``4&`3`&5`` # ``3&`2`&1`` #`` 5&`1`&8 ``}]

[eqn: a=3], [eqn: b=1], [eqn: c=5]

임의의 [eqn: m` TIMES `n] 행렬 [eqn: A=(a _{ij} ``)]와 [eqn: B=(b _{ij} ``)]에 대하여, [eqn: a _{ij} =b _{ij} `( FORALL i,~j`,~1 LEQ i LEQ m,~][eqn: 1 LEQj LEQn)]일 때 행렬 [eqn: A]와 [eqn: B]는 상등이라 하고, [eqn: A=B]로 나타낸다.

정의 5.3

예제 5.5

다음 수식이 성립하도록 [eqn: a, ```b, ```c, ```d]의 값을 구하여라.

[eqn: pmatrix { a+b&~~-1 # -2&b } = pmatrix { 3&~~b-c # -d&2 }]

풀이

두 행렬이 상등이라는 사실로부터,

[eqn: a＋b=3], [eqn: -1=b-c], [eqn: -2=`-d], [eqn: b=2]가 된다.

즉 [eqn: b=d=2]이므로, [eqn: a=1], [eqn: c=3]이다.

5.1.3  행벡터와 열벡터

행벡터(row vector): 가로로 나열한 수들의 모임

열벡터(column vector): 세로로 나열한 수들의 모임

차원 = 행벡터와 열벡터를 구성하는 원소의 수

(Ex) [eqn: n]-차원 행벡터

[eqn: pmatrix { a_1 `` a_2 ``` ...``` a_n }]

[eqn: n]-차원 열벡터

[eqn: pmatrix { ``a_1`` #`` a_2 ``# ``vdots`` #`` a_n ``}]

- 행벡터와 열벡터의 덧셈연산

[eqn: A=pmatrix { a_1 & a_2 `` ...`` a_n }], [eqn: B=pmatrix { b_1 `` b_2 `` ... ``b_n }]에 대하여

[eqn: A+B=pmatrix { a_1 + b_1 & a_2 + b_2 `` ... ``a_n + b_n }]

[eqn: A`=`pmatrix { ``a_1`` # ``a_2 ``# ``vdots``# ``a_n`` }], [eqn: B``=pmatrix {`` b_1 ``# ``b_2 ``# ``vdots`` #`` b_n`` }]에 대하여

[eqn: A`+B``=`pmatrix {`` a_1 + b_1`` # ``a_2 + b_2`` #`` vdots`` #`` a_n + b_n ``}]

- 행벡터와 열벡터의 뺄셈연산

[eqn: A=pmatrix { a_1 & a_2 & ... ``a_n }], [eqn: B=pmatrix { b_1 & b_2 & ... ``b_n }]에 대하여
[eqn: A-B=pmatrix { a_1 - b_1 & ~a_2 - b_2 &~ ... `` ~a_n - b_n }]

[eqn: A=pmatrix { ``a_1 ``# ``a_2 ``# ``vdots``#`` a_n ``}], [eqn: B``=`pmatrix {`` b_1`` #`` b_2`` # ``vdots`` #`` b_n ``}]에 대하여
[eqn: A-B```=pmatrix {`` a_1 - b_1 ``# ``a_2 - b_2 ``# ``vdots`` #`` a_n - b_n ``}]

예제 5.6

다음 두 개의 행벡터에 대하여 덧셈연산과 뺄셈연산을 수행하여라.

[eqn: A=pmatrix { 3 `` -2 ``` 6 }], [eqn: B=pmatrix { 1 `` 4 `` 5 }]

풀이

[eqn: A+B=pmatrix { 4 ```` 2 ``` 11 }]

[eqn: A-B=pmatrix { 2 ```` -6 ```` 1 }]

예제 5.7

다음의 열벡터 [eqn: A], [eqn: B], [eqn: C`]에 대하여 [eqn: A-B=C] 연산을 만족하도록 하는 실수 [eqn: a], [eqn: b]의 값을 구하여라.

[eqn: A=pmatrix { a-1 # 3b+2 }], [eqn: B=pmatrix { 2 # -a }], [eqn: C=pmatrix { b-1 # a+b }]

풀이

[eqn: A-B&=pmatrix { a-1 # 3b+2 } - pmatrix { 2 # -a } ##&= pmatrix { a-1-2 # 3b+2+a } ##&= pmatrix { b-1 # a+b } =C]

[eqn: a-3=b-1], [eqn: a+3b+2=a+b]로부터

[eqn: a=b+2], [eqn: 2+2b=0]이 되므로

[eqn: THEREFORE`` a=1, ```b=-1]

5.2

행렬의 연산

5.2.1  행렬의 덧셈과 뺄셈

두 행렬 [eqn: A]와 [eqn: B]가 다음과 같이 주어져 있을 때,

[eqn: A = pmatrix {a_11&a_12& CDOTS &a_1n#a_21&a_22& CDOTS & a_2n # VDOTS & VDOTS & DDOTS & VDOTS #a_m1&a_m2& CDOTS&a_mn }], [eqn: B = pmatrix {b_11&b_12& CDOTS &b_1n#b_21&b_22& CDOTS & b_2n \ # VDOTS & VDOTS & DDOTS & VDOTS# it b_m1&b_m2& CDOTS&b_mn }]

[eqn: A+B ````= `` pmatrix {a_11 +b_11&a_12 +b_12& CDOTS &a_1n +b_1n #a_21 +b_21&a_22 +b_22& CDOTS & a_2n +b_2n # VDOTS & VDOTS & DDOTS & VDOTS #a_m1 +b_m1&a_m2 +b_m2& CDOTS&a_mn +b_mn }]	(5.1)

[eqn: A-B ````=``` pmatrix {a_{11}-b_{11}&a_{12}-b_{12}& CDOTS&a_{1n}-b_{1n} #a_{21}-b_{21}&a_{22}-b_{22}& CDOTS&a_{2n}-b_{2n} # VDOTS & VDOTS & DDOTS&VDOTS #a_{m1}-b_{m1}&a_{m2}-b_{m2}&CDOTS&a_{mn}-b_{mn} }]	(5.2)

예제 5.8

다음 두 행렬의 합 행렬 [eqn: A+B]를 구하여라.

[eqn: A=pmatrix {`` 1``&2&3 ``#`` 4&5&-6``}], [eqn: B=pmatrix { ``6&3&5`` #`` 0&7&4 ``}]

풀이

[eqn: A+B= pmatrix{``7``&5&8``#``4&12&-2``}]

예제 5.9

다음 두 행렬의 차 행렬 [eqn: A-B]를 구하여라.

[eqn: A=pmatrix { ``11``&3&10`` # ``4&5&-1``}], [eqn: B=pmatrix { ``6``&12&5 ``# ``0&7&-2 ``}]

풀이

[eqn: A-B= pmatrix{``5&-9``&5``#``4&-2&1``}]

정리 5.1

임의의 [eqn: m`times `n] 행렬 [eqn: A=(a_ij `),```B=(b_ij `),```C=(c_ij `)]에 대하여

(1) [eqn: A+B``=B＋A]	(덧셈의 교환법칙)

(2) [eqn: A+(B+C)=(A+B)+C]	(덧셈의 결합법칙)

(3) [eqn: A+O=O+A=A]인 [eqn: O]가 존재	(덧셈에 관한 항등원)

(4) [eqn: A+X=X+A=O]인 [eqn: X]가 존재	(덧셈에 관한 역원)

예제 5.10

임의의 [eqn: 2 TIMES 2] 행렬 [eqn: A]의 덧셈에 대한 항등원 [eqn: O]와 역원 [eqn: X]를 다음과 같이 정의하고, 이를 구해 보아라.

[eqn: A=pmatrix { ``a_11&a_12`` #`` a_21&a_22 ``}], [eqn: O=pmatrix { ``o_11&o_12 ``# ``o_21&o_22 ``}], [eqn: X=pmatrix { ``x_11&x_12 ``# ``x_21&x_22 ``}]

풀이

[eqn: A+O = pmatrix{``a_11 + o_11&a_12 + o_12``#``a_21 + o_21&a_22 + o_22``}]

그러므로 [eqn: A+O=A]를 만족시키는 행렬 [eqn: O= pmatrix{``0&0``#``0&0``}].

[eqn: A+X= pmatrix{a _{11} +x _{11}&a _{12} +x _{12}#a _{21} +x _{21}&a _{22} +x _{22}}]

그러므로 [eqn: A+X=O]를 만족시키는 행렬 [eqn: X= pmatrix{-a _{11}&````-a _{12}#-a _{21}&````-a _{22}} ``=``- pmatrix{a _{11}&a _{12}#a _{21}&a _{22}}`` =``-A].

5.2.2  행렬의 곱셈

두 행렬 [eqn: A=(a _{ik} `) _{m TIMES r} `]와 [eqn: B``=(b _{kj} `) _{r TIMES n}]이 각각 아래와 같이 주어졌을 때,

[eqn: A=pmatrix{``a_11&a_12&cdots&a_1r`` #``a_21&a_22&cdots&a_2r`` #``vdots&vdots&ddots&vdots`` #``a_m1&a_m2&cdots&a_mr``},] [eqn: B=pmatrix{``b_11&b_12&cdots&b_1n`` #``b_21&b_22&cdots&b_2n`` #``vdots&vdots&ddots&vdots`` #``b_r1&b_r2&cdots&b_rn``}]

두 행렬의 곱 [eqn: AB=C]는

[eqn: AB= pmatrix{a _{11}&a _{12}&CDOTS &a _{1r} #a _{21}&a _{22}&CDOTS &a _{2r} #VDOTS &VDOTS &DDOTS &VDOTS #``a _{m1}&a _{m2}&CDOTS &a _{mr}``} `` ```` pmatrix{b _{11}&b _{12}&CDOTS &b _{1n} #``b _{21}&b _{22}&CDOTS &b _{2n}`` #``VDOTS &VDOTS &DDOTS &VDOTS `` #``b _{r1}&b _{r2}&CDOTS &b _{rn}``}]
[eqn: ``````````````= pmatrix{``sum _{k=1} ^{r} a_1k b_k1&sum _{k=1} ^{r} a_1k b_k2&cdots&sum _{k=1} ^{r} a_1k b_kn`` #``sum _{k=1} ^{r} a_2k b_k1&sum _{k=1} ^{r} a_2k b_k2&cdots&sum _{k=1} ^{r} a_2k b_kn`` #``vdots&vdots&ddots&vdots`` #``sum _{k=1} ^{r} a_mk b_k1&sum _{k=1} ^{r} a_mk b_k2&cdots&sum _{k=1} ^{r} a_mk b_kn``}]	(5.3)
[eqn: ```````````````= pmatrix{``c_11&c_12&CDOTS &c_1n`` #``c_21&c_22&CDOTS &c_2n`` #``VDOTS &VDOTS &DDOTS &VDOTS `` #``c_m1&c_m2&CDOTS &c_mn``}]
[eqn: ```````````````=(c_ij `)_m×n =C]

- 두 행렬의 곱에서 앞 행렬 [eqn: A]의 열의 수와 뒤 행렬 [eqn: B]의 행의 수가 같아야 한다.

- 행렬 [eqn: C]의 행의 수는 행렬 [eqn: A]의 행의 수 [eqn: m], 열의 수는 행렬 [eqn: B]의 열의 수 [eqn: n]이 된다.

예제 5.11

다음 두 행렬의 곱을 계산하여라.

[eqn: A=pmatrix {`` 1&3&5 ``#`` 4&6&8``}], [eqn: B=pmatrix { ``6&3 ``#`` -1&7 # 0&2 ``}]

풀이

[eqn: AB= pmatrix{``1 TIMES 6+3 TIMES (-1)+5 TIMES 0&~~1 TIMES 3+3 TIMES 7+5 TIMES 2``#``4 TIMES 6+6 TIMES (-1)+8 TIMES 0&~~4 TIMES 3+6 TIMES 7+8 TIMES 2``} = pmatrix{``3&34``#``18&70``}]

예제 5.12

다음 두 행렬의 곱을 계산하여라.

[eqn: A=pmatrix { ``1&~~3``}], [eqn: B=pmatrix { ``-4 # 2 ``}]

풀이

[eqn: AB=pmatrix { ``1 & ~~3`` } pmatrix {``-4 # 2`` } = 1×(-4) + 3×2=2]

단위행렬(identity matrix): [eqn: n]차의 정방행렬 중에서 대각선 성분이 모두 1이고, 나머지 성분은 모두 0인 행렬

- 단위행렬은 보통 [eqn: I`] 또는 [eqn: I_n]이라고 표시한다.

[eqn: I_2] (2차 단위행렬) = [eqn: pmatrix { ``1&`0 ``#`` 0&1 ``}]

[eqn: I_3] (3차 단위행렬) = [eqn: pmatrix {`` 1`&`0`&0 ``#`` 0&1&0`` #`` 0&0&1 ``}]

정리 5.2

임의의 행렬 [eqn: A]의 곱셈에 관한 항등원은 단위행렬이 된다.

증명 >>>

임의의 2차원 행렬 [eqn: A= pmatrix{``a&b#c&d``}], [eqn: I= pmatrix{``1&0#0&1``}]일 때,

[eqn: AI= pmatrix{``a&b#c&d``} pmatrix{``1&0#0&1``} = pmatrix{``a&b#c&d``} =A]이 되고,

[eqn: IA= pmatrix{``1&0#0&1``} pmatrix{``a&b#c&d``} = pmatrix{``a&b#c&d``} =A]이므로

[eqn: AI=IA=A]가 성립한다.

예제 5.13

2차원 행렬 [eqn: A], 3차원 행렬 [eqn: B]에 대하여 [eqn: AI=A,``BI=B]가 성립함을 보여라.

[eqn: A= pmatrix{2&-1#3&0}], [eqn: B= pmatrix{2&-7&5#-3&10&4#6&8&-9}]

풀이

2차원 행렬 [eqn: A]에 대하여, [eqn: AI= pmatrix{2&-1#3&0} pmatrix{1&0#0&1} = pmatrix{2&-1#3&0} =A]

3차원 행렬 [eqn: B]에 대하여, [eqn: BI= pmatrix{2&-7&5#-3&10&4#6&8&-9} pmatrix{1&0&0#0&1&0#0&0&1} = pmatrix{2&-7&5#-3&10&4#6&8&-9} =B]

정리 5.3

행렬 [eqn: A], [eqn: B], [eqn: C`]의 곱셈에 관한 배분법칙과 결합법칙

(1) [eqn: A(B+C)=AB+AC]	(배분법칙)

(2) [eqn: A(BC`)=(AB)C]	(결합법칙)

예제 5.14

행렬 [eqn: A], [eqn: B], [eqn: C`]에 대하여 [eqn: A(B+C)=AB+AC`]가 성립함을 증명하여라.

[eqn: A=pmatrix { a_11&a_12 # a_21&a_22 }], [eqn: B=pmatrix { b_11&b_12 # b_21&b_22 }], [eqn: C=pmatrix { c_11&c_12 # c_21&c_22 }]

풀이

[eqn: A(B+C)&=pmatrix{a_11&a_12#a_21&a_22}`` pmatrix{b_11 + c_11 & b_12 + c_12 #b_21 + c_21 & b_22 + c_22}]

[eqn: = pmatrix{a _{11} b _{11} +a _{11} c _{11} +a _{12} b _{21} +a _{12} c _{21}&~~a _{11} b _{12} +a _{11} c _{12} +a _{12} b _{22} +a _{12} c _{22}#a _{21} b _{11} +a _{21} c _{11} +a _{22} b _{21} +a _{22} c _{21}&~~a _{21} b _{12} +a _{21} c _{12} +a _{22} b _{22} +a _{22} c _{22}}]

[eqn: AB=pmatrix{a_11 b_11 + a_12 b_21 & ~~a_11 b_12 + a_12 b_22 #a_21 b_11 + a_22 b_21 & ~~a_21 b_12 + a_22 b_22}]

[eqn: AC=pmatrix{a_11 c_11 + a_12 c_21 &~~a_11 c_12 + a_12 c_22 #a_21 c_11 + a_22 c_21 &~~a_21 c_12 + a_22 c_22}]

[eqn: AB+AC&=pmatrix{a_11 b_11 + a_12 b_21 & ~~a_11 b_12 + a_12 b_22 #a_21 b_11 + a_22 b_21 & ~~a_21 b_12 + a_22 b_22} + pmatrix{a_11 c_11 + a_12 c_21 &~~a_11 c_12 + a_12 c_22 #a_21 c_11 + a_22 c_21 &~~a_21 c_12 + a_22 c_22}]

[eqn: &=pmatrix{a_11 b_11 + a_11 c_11 + a_12 b_21 + a_12 c_21 &~~a_11 b_12 + a_11 c_12 + a_12 b_22 + a_12 c_22 #a_21 b_11 + a_21 c_11 + a_22 b_21 + a_22 c_21 &~~a_21 b_12 + a_21 c_12 + a_22 b_22 + a_22 c_22}]

[eqn: THEREFORE A(B+C)=AB+AC]

예제 5.15

행렬 [eqn: A], [eqn: B], [eqn: C`]에 대하여  [eqn: A(BC)=(AB)C`]가 성립함을 증명하여라.

[eqn: A=pmatrix { a_1&a_2 # a_3&a_4 }], [eqn: B=pmatrix { b_1&b_2 # b_3&b_4 }], [eqn: C=pmatrix { c_1&c_2 # c_3&c_4 }]

풀이

[eqn: BC = pmatrix{b_1 c_1 + b_2 c_3&~~b_1 c_2 + b_2 c_4 #b_3 c_1 + b_4 c_3&~~b_3 c_2 + b_4 c_4}]

[eqn: A(BC) = pmatrix{a_1&a_2#a_3&a_4} pmatrix{b_1 c_1 + b_2 c_3&~~b_1 c_2 + b_2 c_4 #b_3 c_1 + b_4 c_3&~~b_3 c_2 + b_4 c_4}]

[eqn: = pmatrix{a_1 b_1 c_1 + a_1 b_2 c_3 + a_2 b_3 c_1 + a_2 b_4 c_3 &~~a_1 b_1 c_2 + a_1 b_2 c_4 + a_2 b_3 c_2 + a_2 b_4 c_4 #a_3 b_1 c_1 + a_3 b_2 c_3 + a_4 b_3 c_1 + a_4 b_4 c_3 &~~a_3 b_1 c_2 + a_3 b_2 c_4 + a_4 b_3 c_2 + a_4 b_4 c_4 }]

[eqn: AB = pmatrix{a_1 b_1 + a_2 b_3&~~a_1 b_2 + a_2 b_4 #a_3 b_1 + a_4 b_3&~~a_3 b_2 + a_4 b_4}]

[eqn: (AB)C= pmatrix{a _{1} b _{1} +a _{2} b _{3}&~~a _{1} b _{2} +a _{2} b _{4}#a _{3} b _{1} +a _{4} b _{3}&~~a _{3} b _{2} +a _{4} b _{4}} pmatrix{c _{1}&c _{2}#c _{3}&c _{4}}]

[eqn: = pmatrix{a _{1} b _{1} c _{1} +a _{2} b _{3} c _{1} +a _{1} b _{2} c _{3} +a _{2} b _{4} c _{3}&~~a _{1} b _{1} c _{2} +a _{2} b _{3} c _{2} +a _{1} b _{2} c _{4} +a _{2} b _{4} c _{4}#a _{3} b _{1} c _{1} +a _{4} b _{3} c _{1} +a _{3} b _{2} c _{3} +a _{4} b _{4} c _{3}&~~a _{3} b _{1} c _{2} +a _{4} b _{3} c _{2} +a _{3} b _{2} c _{4} +a _{4} b _{4} c _{4}}]

[eqn: THEREFORE A(BC)=(AB)C]

정리 5.4

임의의 두 행렬 [eqn: A]와 [eqn: B]에 대하여 곱셈 연산의 교환법칙은 성립하지 않는다.

증명 >>>

예를 들어, [eqn: A= pmatrix{1&2#3&4}], [eqn: B= pmatrix{4&3#2&1}]일 때,

[eqn: AB= pmatrix{1&2#3&4} pmatrix{4&3#2&1} = pmatrix{8&5#20&13}]

[eqn: BA= pmatrix{4&3#2&1} pmatrix{1&2#3&4} = pmatrix{13&20#5&8}]

[eqn: THEREFORE`` AB```!=BA]이므로 행렬의 곱셈 연산에서는 교환법칙이 성립하지 않는다.

정리 5.5

임의의 두 행렬 [eqn: A]와 [eqn: B], 그리고 영행렬 [eqn: O]에 대하여 다음 두 가지 명제 [eqn: p]와 [eqn: q]는 동치가 아니다.

명제 [eqn: p] : [eqn: AB``=O]

명제 [eqn: q] : [eqn: A=O] 또는 [eqn: B=O]

증명 >>>

위의 사실에 대한 반례를 보이겠다.

먼저, [eqn: A!=`O]이고 [eqn: B!=O]이지만 [eqn: AB=O]이 성립하는 경우가 있다.

예를 들어, [eqn: A= pmatrix{4&2#2&1}]이고 [eqn: B= pmatrix{-1&3#2&-6}]인 경우,

[eqn: AB & = pmatrix{4&2#2&1} pmatrix{-1&3#2&-6}# # & = pmatrix{0&0#0&0}# # & =O]

그러나 역 명제인, ‘[eqn: A=O] 또는 [eqn: B=O]’이면 ‘[eqn: AB=O]’은 항상 성립한다.

따라서 ‘[eqn: AB=O]’은 ‘[eqn: A=O] 또는 [eqn: B=O]’이 되기 위한 필요조건이다.

5.2.3  행렬의 스칼라곱과 기본법칙

정의 5.4

임의의 행렬 [eqn: A=(a _{ij} `)]와 상수 [eqn: k]가 주어질 때, 모든 [eqn: i], [eqn: j]에 대하여 [eqn: k cdot a _{ij}]를 [eqn: ij]-성분으로 하는 새로운 행렬 [eqn: k cdot A`=`(k cdot a_ij )]을 상수 [eqn: k]와 행렬 [eqn: A]의 스칼라곱이라고 한다.

예제 5.16

다음과 같은 행렬의 스칼라곱 연산을 수행하여라.

[eqn: {1 OVER 2 } pmatrix { 2&-4&6 # -10&8&16 }]

풀이

[eqn: pmatrix { 1&-2&3 # -5&4&8 }]

정리 5.6

임의의 [eqn: m×n] 행렬 [eqn: A=(a_ij `)]와 영행렬 [eqn: O], 그리고 상수 [eqn: k]가 주어질 때, 행렬의 스칼라곱 연산에 대하여 다음과 같은 계산법칙이 성립한다.

(1) [eqn: (-1)A=`-A]            (2) [eqn: k cdot O=O]              (3) [eqn: 0 cdot A=O]

예제 5.17

아래의 행렬 [eqn: A]에 (-1)을 곱한 결과를 계산하여라.

[eqn: A=pmatrix { 3a&~~-2 # -5&~~b-4 }]

풀이

[eqn: (-1)A=pmatrix { -3a&2 # 5&-b+4 }]

5.3

행렬식

임의의 2차 정방행렬 [eqn: A= pmatrix { a&b` #c &d`` }]의 행렬식(determinant)은 다음과 같이 정의된다.

정의 5.5

[eqn: det(A) = |A| = dmatrix { a&b`` #c &d`` }=ad-bc]	(5.4)

(참고) 다음과 같은 이원일차연립방정식의 해를 구해 보기로 하자.

[eqn: cases{ ax+by=e&&①#cx+dy=f&&②}]

①×[eqn: d] － ②×[eqn: b]에서

[eqn: (ad-bc)x = ed-bf]

②×[eqn: a] － ①×[eqn: c]에서

[eqn: (ad-bc)y = af-ec]

[eqn: ad-bc``!=`0]이면

[eqn: x= { ed-bf} over {ad-bc }, ``````y= { af-ec} over {ad-bc }]

또는

[eqn: x= { dmatrix { e&b`` # f&d`` } } over { dmatrix { a&b`` # c&d`` } }, `````y= { dmatrix { a&e`` #c&f`` } } over { dmatrix { a&``b # c&d`` } } ~~LEFT(`` { dmatrix { a&b`` # c&d``} } !=0 일```때 RIGHT)]

- [eqn: n]차 정방행렬 [eqn: A=(a_ij `)]의 행렬식

[eqn: |A|= dmatrix { a_11&a_12 & CDOTS&a_1n #a_21 &a_22 & CDOTS & a_2n # VDOTS &VDOTS & DDOTS & VDOTS # a_n1&a_n2 &CDOTS &a_nn}]

[eqn: D_ij] = [eqn: a_ij]의 소행렬식(minor determinant)

정의 5.6

= [eqn: n]차 정방행렬 [eqn: A=(a_ij `)]의 [eqn: i]번째 행, [eqn: j]번째 열을 제외한 행렬([eqn: (n-1)]차 정방        행렬)의 행렬식

[eqn: A_ij] = [eqn: a_ij]의 여인수(cofactor)

= [eqn: (-1)^i+j D_ij]

[eqn: adj(A)] = 행렬 [eqn: A]의 수반행렬(adjoint matrix)

[eqn: adj(A)=(A_{ij})^{t}= pmatrix { A_11&A_21& CDOTS&A_n1 # A_12&A_22&cdots&A_n2#vdots&vdots&&vdots #A_1n&A_2n&cdots&A_nn }]	(5.5)

예제 5.18

3차 정방행렬 [eqn: A = pmatrix { ``2&3&4`` # ``1&0&5 ``#`` 3&2&6 ``}]의 1행 1열 성분인 ‘2’를 제외한 2차 정방행렬의 행렬식을 구해서 [eqn: a_11] 성분의 여인수 [eqn: A_11]을 계산하여라.

풀이

먼저, 1행 1열 성분인 ‘2’를 제외한 2차 정방행렬의 행렬식은

[eqn: D_11 = dmatrix { ``0&5`` #`` 2&6 ``}]

이제 [eqn: a_11]의 여인수 [eqn: A_11]을 구하면

[eqn: A _{11} =(-1) ^{1+1} D _{11} = dmatrix{`0&`5`#`2&`6`} =-10]

예제 5.19

행렬 [eqn: A = pmatrix { 2&3&4 # 1&0&5 # 3&2&6 }]의 수반행렬을 구하여라.

풀이

먼저, 모든 성분들의 여인수를 구하면 다음과 같다.

[eqn: A _{11} =(-1) ^{1+1} dmatrix{`0`&5`#`2`&6`} =-10,]	[eqn: A _{12} =(-1) ^{1+2} dmatrix{`1`&5`#`3`&6`} =9]

[eqn: A _{13} =(-1) ^{1+3} dmatrix{`1`&0`#`3&2`} =2,]	[eqn: A _{21} =(-1) ^{2+1} dmatrix{`3&4`#`2&6`} =-10]

[eqn: A _{22} =(-1) ^{2+2} dmatrix{`2&4`#`3&6`} =0,]	[eqn: A _{23} =(-1) ^{2+3} dmatrix{`2&3`#`3&2`} =5]

[eqn: A _{31} =(-1) ^{3+1} dmatrix{`3&4`#`0&5`} =15,]	[eqn: A _{32} =(-1) ^{3+2} dmatrix{`2&4`#`1&5`} =-6]

[eqn: A _{33} =(-1) ^{3+3} dmatrix{`2&3`#`1&0`} =-3]

그러면 수반행렬 [eqn: adj(A)]는

[eqn: adj(A)= pmatrix{A _{11}&A _{21}&A _{31}#A _{12}&A _{22}&A _{32}#A _{13}&A _{23}&A _{33}} = pmatrix{ -10&-10&15 # 9&0&-6 # 2&5&-3 }]

[eqn: n]차 정방행렬 [eqn: A=(a_ij `)]의 행렬식의 정의

정의 5.7

[eqn: det(A) =|A|= dmatrix { a_11&a_12 & CDOTS&a_1n #a_21 &a_22 & CDOTS & a_2n # VDOTS &VDOTS & DDOTS & VDOTS # a_n1&a_n2 &CDOTS &a_nn}]

[eqn: det(A) = |A| = a_11 A_11 + a_12 A_12 + CDOTS + a_1n A_1n]	(5.6)

(참고) 식 (5.6)에 기술된 [eqn: n]차 행렬식 정의의 부합성 (2차 정방행렬 [eqn: A]의 경우)

[eqn: A= pmatrix{a_11&a_12 # a_21&a_22 }]

[eqn: |A| &= dmatrix{a_11&a_12 # a_21&a_22 } #&= a_11 A_11 + a_12 A_12 #&= a_11 (-1)^1+1 |a_22 | + a_12 (-1)^1+2 |a_21 | #&= a_11 a_22 - a_12 a_21]

- 이 결과는 식 (5.4)의 이차 정방행렬의 행렬식 정의와 일치한다.

- 삼차 이상의 정방행렬에 대한 행렬식 정의도 마찬가지로 성립한다.

정리 5.7

[eqn: n]차 정방행렬 [eqn: A=(a_ij `)]의 행렬식은 반드시 1행으로 한정하여 전개되는 것은 아니며, 다음과 같이 각 행 [eqn: i`(1`≤`i`≤`n `)]에 대하여 전개할 수 있다.

[eqn: det(A)=∣A∣=a_i1 A_i1 + a_{i`2} A_{i`2} + ... + a_{i n} A_{i n}]	(5.7)

마찬가지로 [eqn: A=(a_ij `)]의 행렬식은 각 열 [eqn: j`(1`≤`j`≤`n `)]에 대해서도 전개할 수 있다.

[eqn: det(A)=∣A∣=a_1j `A_1j `+ a_{2j} `A_{2j} + ... + a_nj ```A_nj]	(5.8)

예제 5.20

다음 행렬 [eqn: A]의 행렬식의 값을 계산하여라.

[eqn: A = pmatrix {`` 2&3&4 ``# ``1&0&5 ``#`` 3&2&6 ``}]

풀이

(1) [eqn: A]의 행렬식을 1행 기준으로 계산

[eqn: |A|=a _{11} A _{11} +a _{12} A _{12} +a _{13} A _{13}]

[eqn: A _{11} =(-1) ^{1+1} dmatrix{0&5#2&6} =-10,] [eqn: A _{12} =(-1) ^{1+2} dmatrix{1&5#3&6} =9,] [eqn: A _{13} =(-1) ^{1+3} dmatrix{1&0#3&2} =2]

[eqn: therefore ~~|A|=2 TIMES (-10)+3 TIMES 9+4 TIMES 2=15]

(2) [eqn: A]의 행렬식을 2열 기준으로 계산

[eqn: |A|=a _{12} A _{12} +a _{22} A _{22} +a _{32} A _{32}]

[eqn: A _{12} =(-1) ^{1+2} dmatrix{1&5#3&6} =9,] [eqn: A _{22} =(-1) ^{2+2} dmatrix{2&4#3&6} =0,] [eqn: A _{32} =(-1) ^{3+2} dmatrix{2&4#1&5} =-6]

[eqn: therefore ~~|A|=3×9 + 0×0 + 2×(-6)=15]

- 두 번째 행이나 세 번째 열을 기준으로 전개해도 같은 결과를 얻는다.

(참고) 0을 성분으로 하는 행이나 열 기준으로 계산하면 계산이 간단해진다.

예제 5.21

다음 행렬 [eqn: A]의 행렬식의 값을 계산하여라.

[eqn: A = pmatrix {`` 4&0&1&0`` #`` 1&2&0&0 ``#`` 0&1&4&1 ``#`` 0&0&2&1 ``}]

풀이

먼저, [eqn: A]의 행렬식을 1행 기준으로 전개하여 계산한다.

[eqn: |A|=4A _{11} +0A _{12} +1A _{13} +0A _{14}]

전개식에서 알 수 있듯이, [eqn: A _{12}]와 [eqn: A _{14}]는 계산할 필요가 없다.

[eqn: A _{11} =(-1) ^{1+1} dmatrix{2&0&0#1&4&1#0&2&1} = dmatrix{2&0&0#1&4&1#0&2&1}] 이므로

이 소행렬식을 1행에 관하여 다시 전개하고 계산한다.

[eqn: A _{11} = dmatrix{2&0&0#1&4&1#0&2&1} =2(-1) ^{1+1} dmatrix{4&1#2&1} =2 TIMES 2=4]

[eqn: A _{13} =(-1) ^{1+3} dmatrix{1&2&0#0&1&1#0&0&1} = dmatrix{1&2&0#0&1&1#0&0&1}]이므로

이 소행렬식을 3행에 관하여 다시 전개해 보면,

[eqn: A _{13} = dmatrix{1&2&0#0&1&1#0&0&1} =1 TIMES (-1) ^{3+3} dmatrix{1&2#0&1} =1 TIMES 1=1]

[eqn: therefore ~~|A|=4 TIMES 4+1 TIMES 1=17]

5.4

역행렬

5.4.1  역행렬의 정의

정방행렬 [eqn: A]에 대하여 [eqn: AX=I] 또는 [eqn: XA=I``]를 만족하는 행렬 [eqn: X]가 존재할 때, [eqn: X]를 [eqn: A]의

역행렬(inverse matrix)이라 하고, 기호로 [eqn: X=A^-1]로 나타낸다.

- 단위행렬 [eqn: I``]는 행렬의 곱셈에 대한 항등원

- 역행렬 [eqn: A^-1]은 행렬 [eqn: A]의 곱셈에 대한 역원에 해당

- [eqn: AA^-1 =][eqn: A^-1 A=I``]

예제 5.22

행렬 [eqn: X]가 주어진 행렬 [eqn: A]에 대한 역행렬이 됨을 보여라.

[eqn: A=pmatrix { 3&-1 # -5&2 }], [eqn: X=pmatrix { 2&1 # 5&3 }]

풀이

행렬 [eqn: A]의 행렬식은 [eqn: LEFT | ``A`` RIGHT | =6-(-1)(-5)=1]

[eqn: AX & = pmatrix{3&-1#-5&2} pmatrix{2&1#5&3}]

[eqn: = pmatrix{6-5&~~3-3#-10+10&~~-5+6}]

[eqn: = pmatrix{1&0#0&1} =I]

[eqn: XA & = pmatrix{2&1#5&3} pmatrix{3&-1#-5&2}]

[eqn: = pmatrix{6-5&~~-2+2#15-15&~~-5+6}]

[eqn: = pmatrix{1&0#0&1} =I]

즉 [eqn: AX=XA=I``]가 성립하므로, [eqn: X]는 [eqn: A]의 역행렬이다.

예제 5.23

다음 행렬 [eqn: A]의 역행렬 [eqn: X]를 구하여라.

[eqn: A=pmatrix { 4&2 # 2&1 }], [eqn: X=pmatrix { a&b # c&d }]

풀이

행렬 [eqn: A]의 행렬식은 [eqn: LEFT | ``A`` RIGHT | =4-4=0]

[eqn: AX=pmatrix { 4&2 # 2&1 } pmatrix { a&b # c&d } = pmatrix { 4a+2c&~~4b+2d # 2a+c &~~2b+d } = pmatrix { 1&0 # 0&1 } = I]

[eqn: 4a+2c=1, &~~4b+2d=0, &~~2a+c=0, &~~2b+d=1]

첫 번째와 세 번째 수식만 놓고 보아도,

[eqn: cases{ 4a+2c=1&&①#2a+c=0&&②}]

식 ① ÷ 2하면 [eqn: 2a+c= 1over 2]이 되므로 식 ①과 ②를 동시에 만족하는 실수 [eqn: a`]와 [eqn: c`]값은 없다.

마찬가지 이유로 [eqn: b`]와 [eqn: d`]값도 구할 수 없다.

즉 행렬 [eqn: A]의 역행렬은 구할 수 없다.

이러한 결과가 발생하는 이유는 행렬 [eqn: A]의 행렬식 [eqn: LEFT | ``A`` RIGHT | ``=0]이기 때문이다.

- 예제 5.22의 행렬 [eqn: A]와 같이 역행렬을 가지는 행렬을 정칙행렬(regular matrix)이라 한다.

- 예제 5.23의 행렬 [eqn: A]와 같이 [eqn: LEFT | ``A`` RIGHT | ``=0]이 되는 행렬을 특이행렬(singular matrix)이라 하며, 이것은 역행렬을 갖지 못한다.

정리 5.8

임의의 [eqn: n]차 정방행렬 [eqn: A=(a _{ij} `)]가 정칙행렬일 필요충분조건은 [eqn: LEFT | ``A``RIGHT |`!=0]이어야 한다.

만약 [eqn: LEFT | ``A``RIGHT |`!=0]이 아닐 때 수반행렬 [eqn: adj(A)]를 이용하여 계산한 [eqn: A]의 역행렬 [eqn: A^-1]는

[eqn: A^-1 = 1 over ∣A∣ CDOT adj(A)]	(5.9)

이다.

증명 >>>

이해하기 쉽게 아래와 같은 2차 정방행렬 [eqn: A]를 대상으로 증명해보자.

[eqn: A= pmatrix{a&b#c&d}]에 대하여 [eqn: A]의 역행렬을 [eqn: A ^{-1} = pmatrix{x _{1}&x _{2}#x _{3}&x _{4}}]라고 하면,

[eqn: AA ^{-1} =I``]이므로 [eqn: pmatrix{a&b#c&d} pmatrix{x _{1}&x _{2}#x _{3}&x _{4}} = pmatrix{1&0#0&1}]이 된다.

[eqn: THEREFORE ~~pmatrix{ax _{1} +bx _{3}&~~ax _{2} +bx _{4}#cx _{1} +dx _{3}&~~cx _{2} +dx _{4}} = pmatrix{1&0#0&1}]

따라서 아래와 같이 2개의 연립방정식으로 구분할 수 있다.

[eqn: cases{ax _{1} +bx _{3} =1&CDOTS ①#cx _{1} +dx _{3} =0&CDOTS ②}]

[eqn: cases{ax _{2} +bx _{4} =0&CDOTS ③#cx _{2} +dx _{4} =1&CDOTS ④}]

[eqn: ① TIMES d-② TIMES b에서 & (ad-bc)x _{1} =d,]

[eqn: ① TIMES c-② TIMES a에서 & (bc-ad)x _{3} =c]

[eqn: ③ TIMES d-④ TIMES b에서 & (ad-bc)x _{2} =-b,]

[eqn: ③ TIMES c-④ TIMES a에서 & (bc-ad)x _{4} =-a]

여기서, 행렬 [eqn: A]의 행렬식 [eqn: |A|=ad-bc]이므로,

∙ [eqn: |A|=ad-bc != 0]일 때, [eqn: x _{1} ,```x _{2} ,```x _{3} ,```x _{4}]의 값이 확정되므로 [eqn: A]의 역행렬 [eqn: A ^{-1}]

가 존재한다.

이때, [eqn: x _{1} = {d} over {|A`|} , & ```x _{2} = {-b} over {|A`|} , & ```x _{3} = {-c} over {|A`|} , & ```x _{4=} {a} over {|A`|}]

또한 행렬 [eqn: A]의 수반행렬 [eqn: adj(A)]는

[eqn: A _{11} =(-1) ^{1+1} dmatrix{d} =d,] [eqn: A _{21} =(-1) ^{2+1} dmatrix{b} =-b,]

[eqn: A _{12} =(-1) ^{1+2} dmatrix{c} =-c,]  [eqn: A _{22} =(-1) ^{2+2} dmatrix{a} =a] 이므로

[eqn: THEREFORE A ^{-1} = pmatrix{x _{1}&x _{2}#x _{3}&x _{4}} = pmatrix{{d} over {|A|}&{-b} over {|A|}#{-c} over {|A|}&{a} over {|A|}} = {1} over {|A|} pmatrix{A _{11}&A _{21}#A _{12}&A _{22}} = {1} over {|A|} CDOT adj(A)]

∙ [eqn: |A|=ad-bc=0]일 때, [eqn: x _{1},``` x _{2} ,```x _{3} ,````x _{4}]의 값이 존재하지 않는다. 따라서 이 경우에는 [eqn: A]의 역 행렬이 존재하지 않는다.

- 역행렬을 가지기 위한 필요충분조건은 [eqn: n]차 정방행렬에 대해서도 마찬가지로 성립된다. ([eqn: LEFT | ``A``RIGHT |`!=0])

예제 5.24

다음 행렬 [eqn: A]에 대한 역행렬을 구하여라.

[eqn: A=pmatrix { 3&1 # 5&2 }]

풀이

[eqn: |``A``|=3` times`2-1`times`5=1]

[eqn: adj(A) = pmatrix{A _{11}&A _{21}#A _{12}&A _{22}} = pmatrix{2&-1#-5&3}]

[eqn: therefore ~~A^-1 = {1} over {|A|} CDOT adj(A)={1 OVER 1} pmatrix { 2&-1 # -5&3 } = pmatrix { 2&-1 # -5&3 }]

예제 5.25

다음 행렬 [eqn: B`]에 대한 역행렬을 구하여라.

[eqn: B = pmatrix { ``2&3&4 ``#`` 1&0&5 ``# ``3&2&6 ``}]

풀이

먼저, [eqn: B]의 행렬식을 1행 기준으로 전개하여 계산한다.

[eqn: |B`|=b_11 B_11 + b_12 B_12 + b_13 B_13]

[eqn: B _{11} =(-1) ^{1+1} dmatrix{`0&5`#`2&6`} =-10,] [eqn: B _{12} =(-1) ^{1+2} dmatrix{`1&5`#`3&6`} =9,] [eqn: B _{13} =(-1) ^{1+3} dmatrix{`1&0`#`3&2`} =2,]

[eqn: B _{21} =(-1) ^{1+2} dmatrix{`3&4`#`2&6`} =-10,] [eqn: B _{22} =(-1) ^{2+2} dmatrix{`2&4`#`3&6`} =0,] [eqn: B _{23} =(-1) ^{2+3} dmatrix{`2&3`#`3&2`} =5,]

[eqn: B _{31} =(-1) ^{3+1} dmatrix{`3&4`#`0&5`} =15,] [eqn: B _{32} =(-1) ^{3+2} dmatrix{`2&4`#`1&5`} =-6,] [eqn: B _{33} =(-1) ^{3+3} dmatrix{`2&3`#`1&0`} =-3]

[eqn: b_11 = 2,&b_12 = 3,&b_13 = 4]이므로,

[eqn: |B`|=2×(-10) + 3×9 + 4×2=15]

[eqn: B ^{-1} & = {1} over {|B`|} CDOT adj(B)# & = {1} over {|B`|} pmatrix{B _{11}&B _{21}&B _{31}#B _{12}&B _{22}&B _{32}#B _{13}&B _{23}&B _{33}}# & = {1} over {15} pmatrix{-10&-10&15#9&0&-6#2&5&-3}]

5.4.2  역행렬의 성질

정리 5.9

만약 어떤 행렬의 역행렬이 존재한다면, 반드시 하나만 존재한다.

증명 >>>

행렬 [eqn: A]의 역행렬이 [eqn: B]와 [eqn: C`]로서 두 개가 존재한다고 가정한다. 즉,

[eqn: AB=BA=I,```AC=CA=I]

라고 하면,

[eqn: B```=IB]	(행렬의 항등원 [eqn: IB```=B])

[eqn: =(CA)B]	(역행렬 기본성질 [eqn: C=A^-1], [eqn: CA=I`])

[eqn: =C(AB)]	(행렬의 곱셈에 관한 결합법칙)

[eqn: =CI]	(역행렬 기본성질 [eqn: B=A^-1], [eqn: AB=I`])

[eqn: =C]	(행렬의 항등원 [eqn: CI``＝C`])

즉 행렬 [eqn: B]와 [eqn: C]는 동일한 행렬이다.

정리 5.10

만약 어떤 행렬 [eqn: A]의 역행렬이 존재하면, [eqn: A^-1]의 역행렬은 행렬 [eqn: A]가 된다.

증명 >>>

행렬 [eqn: A]의 역행렬이 [eqn: A ^{-1}]로서 존재하면, [eqn: A ^{-1}]의 역행렬은 [eqn: (A ^{-1} ) ^{-1}]이라고 할 수 있다. 이때 역행렬의 정의에 따라,

[eqn: AA ^{-1} =A ^{-1} A=I]

이므로 다음의 수식도 성립한다.

[eqn: A ^{-1} (A ^{-1} ) ^{-1} =(A ^{-1} ) ^{-1} A ^{-1} =I]

따라서 [eqn: A ^{-1}]의 역행렬은 행렬 [eqn: A]가 될 수밖에 없다.

정리 5.11

행렬 [eqn: A]와 [eqn: B]가 [eqn: n]차의 정칙행렬이라면, 두 행렬의 곱인 [eqn: AB]도 역행렬이 존재하고 [eqn: (AB) ^{-1}=B ^{-1} A ^{-1}]이 된다.

증명 >>>

행렬 [eqn: A], [eqn: B]는 정칙행렬이므로 역행렬 [eqn: A ^{-1} ,``B ^{-1}]가 존재한다.

[eqn: (AB)(B ^{-1} A ^{-1} ) & =A(BB ^{-1} )A ^{-1}# & =AIA ^{-1}# & =AA ^{-1}# & =I# # (B ^{-1} A ^{-1} )(AB) & =B ^{-1} (A ^{-1} A)B# & =B ^{-1} IB# & =B ^{-1} B# & =I]

따라서 [eqn: AB]의 역행렬은 존재하고, [eqn: (AB) ^{-1} =B ^{-1} A ^{-1}]이다.

정리 5.12

행렬 [eqn: A]가 [eqn: n]차의 정칙행렬이고 [eqn: k]가 상수[eqn: (k != 0)]라면, 스칼라곱 [eqn: kA]의 역행렬은

[eqn: {1} over {k} A ^{-1}]이 된다.

증명 >>>

행렬 [eqn: A]는 정칙행렬이므로 역행렬 [eqn: A ^{-1}]이 존재한다.

[eqn: (kA)( {1} over {k} A ^{-1} ) & =(k TIMES {1} over {k} )(AA ^{-1} )# & =I# ( {1} over {k} A ^{-1} )(kA) & =( {1} over {k} TIMES k)(A ^{-1} A)# & =I]

따라서 [eqn: A]의 역행렬이 존재하고 [eqn: k != 0]라면, [eqn: kA]의 역행렬은 [eqn: {1} over {k} A ^{-1}]이다.

예제 5.26

행렬 [eqn: A], [eqn: B]가 다음과 같을 때, [eqn: (AB) ^{-1} =B ^{-1} A ^{-1}]가 되는지 보여라.

[eqn: A= pmatrix{3&1#5&2}], [eqn: B= pmatrix{5&3#2&1}]

풀이

[eqn: AB= pmatrix{3&1#5&2} pmatrix{5&3#2&1} = pmatrix{17&10#29&17}]이므로

[eqn: (AB) ^{-1} = {pmatrix{17&10#29&17}} ^{-1} =- {1} over {1} pmatrix{17&-10#-29&17} = pmatrix{-17&10#29&-17}]

[eqn: A ^{-1} = {pmatrix{3&1#5&2}} ^{-1} = pmatrix{2&-1#-5&3}],

[eqn: B ^{-1} = pmatrix{5&3#2&1} ^{-1} =- pmatrix{1&-3#-2&5} = pmatrix{-1&3#2&-5}]이므로

[eqn: B ^{-1} A ^{-1} = pmatrix{-1&3#2&-5} pmatrix{2&-1#-5&3} = pmatrix{-17&10#29&-17}]

[eqn: therefore ~~(AB) ^{-1} =B ^{-1} A ^{-1}]

5.5

행렬과 연립방정식

5.5.1  역행렬을 이용한 계산

임의의 일차연립방정식

[eqn: cases{a _{11} x _{1} +&a _{12} x _{2} +&CDOTS +&a _{1n} x _{n} =b _{1}#a _{21} x _{1} +&a _{22} x _{2} +&CDOTS +&a _{2n} x _{n} =b _{2}#``````` VDOTS &```````` VDOTS &VDOTS &````````````` VDOTS #a _{n1} x _{1} +&a _{n2} x _{2} +&CDOTS +&a _{nn} x _{n} =b _{n}}]

은 행렬을 이용하여 아래와 같이 나타낼 수 있다.

[eqn: pmatrix{a _{11}&a _{12}&CDOTS &a _{1n}#a _{21}&a _{22}&CDOTS &a _{2n}#VDOTS &VDOTS &DDOTS &VDOTS #a _{n1}&a _{n2}&CDOTS &a _{nn}} ~``pmatrix{x _{1}#x _{2}#VDOTS #x _{n}} ```=`` pmatrix{b _{1}#b _{2}#VDOTS #b _{n}}]	(5.10)

식 (5.10)에서 주어진 일차연립방정식의 변수들의 계수 [eqn: a _{ij}]로 이루어진 행렬을 [eqn: A], 변수 [eqn: x _{i}]로 이루어진 행렬을 [eqn: X], 상수항의 계수 [eqn: b _{i}]로 이루어진 행렬을 B라 하면,

[eqn: AX=B]

와 같이 나타낼 수 있다.

만약 행렬 [eqn: A]가 정칙행렬이라면 역행렬 [eqn: A ^{-1}]이 존재하므로, 양변에 역행렬 [eqn: A ^{-1}]를 곱하면

[eqn: A ^{-1} (AX)=A ^{-1} B]

이므로

[eqn: X=A ^{-1} B]

[eqn: therefore ~~X = pmatrix{x _{1}#x _{2}#VDOTS #x _{n}} = {1} over {|A|} CDOT adj(A) CDOT B = {1} over {|A|} pmatrix{A _{11}&A _{21}&CDOTS &A _{n1}#A _{12}&A _{22}&CDOTS &A _{n2}#VDOTS &VDOTS &DDOTS &VDOTS #A _{1n}&A _{2n}&CDOTS &A _{nn}} pmatrix{b _{1}#b _{2}#VDOTS #b _{n}}]	(5.11)

이 된다.

예제 5.27

다음 이원일차연립방정식의 해를 구하여라.

[eqn: cases{3x+2y=7#2x+3y=8}]

풀이

방정식을 행렬의 형태로 변환하면,

[eqn: A= pmatrix{3&2#2&3}], [eqn: X= pmatrix{x#y}], [eqn: B= pmatrix{7#8}]

이고 [eqn: |``A``|=3 TIMES 3-2 TIMES 2=5( != 0)].

[eqn: A^-1={1 OVER 5} pmatrix { 3&-2 # -2&3 }]이다.

따라서 연립방정식의 해는

[eqn: X & = pmatrix{x#y} =A ^{-1} B]

[eqn: = {1} over {5} pmatrix{3&-2#-2&3} pmatrix{7#8}]

[eqn: = {1} over {5} pmatrix{5#10}]

[eqn: = pmatrix{1#2}]

예제 5.28

다음 삼원일차연립방정식의 해를 구하여라.

[eqn: cases {`` 2x+3y+4z=3 #`` x+5z=3 # ``3x+2y+6z=2 }]

풀이

방정식을 행렬의 형태로 변환하면,

[eqn: A = pmatrix { 2&3&4 # 1&0&5 # 3&2&6 }], [eqn: X=pmatrix { x # y # z}], [eqn: B=pmatrix { 3 # 3 # 2 }]

이때, 행렬 [eqn: A]의 역행렬 [eqn: A ^{-1}]은 (예제 5.25 참조)

[eqn: A ^{-1} = {1} over {15} pmatrix{-10&-10&15#9&0&-6#2&5&-3}]

따라서 구하려는 연립방정식의 해는

[eqn: X & = pmatrix{x``#y``#z``}~=A ^{-1} B# & = {1} over {15} pmatrix{-10&-10&`````15#`````````````9&````````````0&-6#```````````2&```````````5&-3} pmatrix{3`#3`#2`}# & = {1} over {15} pmatrix{-30`#```````15`#``````15`}# & = pmatrix{-2`#````````1`#````````1`}]

5.5.2  가우스 소거법을 이용한 계산

- 가우스 소거법의 기본 아이디어

다음 연립방정식의 해는 [eqn: x=1,``y=2]이다. (예제 5.27 참조)

[eqn: cases{``3x+2y=7##``2x+3y=8}]

만일 위의 계수들과 변수들, 그리고 해를 모두 행렬로 표현하면,

[eqn: pmatrix { 3&2 # 2&3 } pmatrix { x # y } = pmatrix { 7 # 8 }]을 [eqn: pmatrix { 1&0 # 0&1 } pmatrix { x # y } = pmatrix { 1 # 2 }]로 변형하는 것과 같다.

즉 변수의 계수 행렬을 단위행렬로 변형하면 상수항의 계수 행렬이 바로 해가 된다.

이러한 과정을 체계적으로 정리한 이론이 바로 가우스 소거법(Gaussian elimination)이다.

-가우스 소거법의 과정

임의의 일차연립방정식

[eqn: cases{a _{11} x _{1} +&a _{12} x _{2} +&CDOTS +&a _{1n} x _{n} =b _{1}&#a _{21} x _{1} +&a _{22} x _{2} +&CDOTS +&a _{2n} x _{n} =b _{2}&#`````VDOTS &````VDOTS &&```` VDOTS &` VDOTS #a _{n1} x _{1} +&a _{n2} x _{2} +&CDOTS +&a _{nn} x _{n} =b _{n}&}]

[eqn: VDOTS]

을 식 (5.12)와 같이 나타낸다.

[eqn: [A``|`B``]=pmatrix{a_11 & a_12 & CDOTS &a_1n & &b_1 #a_21 & a_22 & CDOTS & a_2n & &b_2 #VDOTS & VDOTS & DDOTS &VDOTS & &VDOTS #a_n1 & a_n2 & CDOTS & a_nn & &b_n }]	(5.12)

이 행렬을 일차연립방정식의 확대행렬(augmented matrix)이라 부른다.

이 확대행렬에 기본 행 연산(elementary row operation)이라 부르는 세 가지 법칙

① 행렬의 두 행을 서로 교환

② 행렬의 한 행에 0이 아닌 상수를 곱하기

③ 행렬의 한 행에 0이 아닌 상수를 곱한 결과를 다른 행에 더하기

의 연산을 반복해도 결과는 동일하다.

따라서 위의 초기 확대행렬에 기본 행 연산을 반복해서 최종 형태가 식 (5.13)과 같아지면,

[eqn: [I```|X``]=pmatrix{1 & 0 & CDOTS &0 & & x_1 #0 & 1 & CDOTS & 0 & & x_2 #VDOTS & VDOTS & DDOTS &VDOTS & &VDOTS #0 & 0 & CDOTS & 1 & & x_n}]	(5.13)

단위행렬의 우측에 위치한 값

[eqn: X=pmatrix { x_1 # x_2 # VDOTS # x_n }]

이 바로 주어진 연립방정식의 해가 된다.

예제 5.29

다음 이원일차연립방정식의 해를 가우스 소거법으로 구하여라.

[eqn: cases {`` 2x-3y=12 ##`` 3x+4y=1 }]

풀이

위 연립방정식을 아래와 같이 나타낸다.

[eqn: pmatrix{2 & -3 & & 12 # 3 & 4 & & 1 } {CDOTS&①} atop {CDOTS&②}]

먼저, -3 × ①＋2 × ②를 수행하면,

[eqn: pmatrix{2 & -3 & & 12 # 0 & 17 & & -34 } {CDOTS&①} atop {CDOTS&②}]

여기에 [eqn: 1 over 2]× ①을 수행하면,

[eqn: pmatrix{1 & {-{3 over 2} } & & 6 # 0 & 17 & & -34 } {CDOTS&①} atop {CDOTS&②}]

이제 [eqn: 1 over 17]× ②를 수행하면,

[eqn: pmatrix{1 & {-{3 over 2} } & & 6 # 0 & 1 & & -2 } {CDOTS&①} atop {CDOTS&②}]

위 식에 다시 [eqn: 3 over 2]× ②＋①를 수행하면,

[eqn: pmatrix{1 & ~~0 & &3 # 0 & ~~1 & &-2 } {CDOTS&①} atop {CDOTS&②}]

따라서 연립방정식의 해는 [eqn: x=3, ``y=-2]가 된다.

예제 5.30

다음 연립방정식의 해를 가우스 소거법으로 구하여라. (예제 5.28 참조)

[eqn: cases {`` 2x+3y+4z=3 #`` x+5z=3 #`` 3x+2y+6z=2 }]

풀이

위 연립방정식을 아래와 같이 나타낸다.

[eqn: pmatrix{ ``2&3&4&&3 ``#`` 1&0&5&&3 ``#`` 3&2&6&&2``} ``pile{CDOTS ① #CDOTS ②#CDOTS ③}]

먼저, 기본 행 연산 중 첫 번째 규칙인 ①행과 ②를 서로 교환하면,

[eqn: pmatrix{ ``1&0&5&&3``# ``2&3&4&&3 ``# ``3&2&6&&2``} ``pile{CDOTS ① #CDOTS ②#CDOTS ③}]

여기에 -2×①＋②, -3×①＋③을 수행하면,

[eqn: pmatrix{`` 1&0&5&&3``# ``0&3&-6&&-3 ``#`` 0&2&-9&&-7``} ``pile{CDOTS ① #CDOTS ②#CDOTS ③}]

이제 [eqn: 1 over 3]× ②를 수행하면,

[eqn: pmatrix{`` 1&0&5&&3`# ``0&1&-2&&-1 ``#`` 0&2&-9&&-7``} ``pile{CDOTS ① #CDOTS ②#CDOTS ③}]

위 식에 다시 -2 × ②＋③을 수행하면,

[eqn: pmatrix{ ``1&0&5&&3``#`` 0&1&-2&&-1 ``#`` 0&0&-5&&-5``}``pile{CDOTS ① #CDOTS ②#CDOTS ③}]

[eqn: - 1 over 5]× ③을 수행하면,

[eqn: pmatrix{`` 1&0&5&&3``#`` 0&1&-2&&-1`` #`` 0&0&1&&1``}``pile{CDOTS ① #CDOTS ②#CDOTS ③}]

위 식에 다시 -5 × ③＋①, 2 × ③＋②를 수행하면,

[eqn: pmatrix{`` 1&0&0&&-2 ``#`` 0&1&0&&1 ``#`` 0&0&1&&1``} ``pile{CDOTS ① #CDOTS ②#CDOTS ③}]

따라서 연립방정식의 해는 [eqn: x=-2,```y=1,```z=1]이 된다.

5.6

고유치와 고유벡터 (생략)

고유치(eigenvalue)와 고유벡터(eigenvector)는 선형대수(linear algebra)에서 매우 중요한 개념 중의 하나이며, 이에 대한 자세한 내용과 다양한 응용에 대해서는 각자 전공에 대한 깊이 있는 공부를 하면서 다시 접할 기회가 있을 것이다. 대신, 여기서는 이러한 고유치와 고유벡터에 대한 기본개념을 간단한 예를 통하여 설명하기로 한다.

[eqn: n times n] 행렬 [eqn: A]가 존재할 때, 식 (5.14)가 만족한다고 하자.

[eqn: A`x= rm lambda `itx]	(5.14)

여기서 [eqn: x]는 열의 길이가 [eqn: n]인 벡터이고 [eqn: lambda]는 임의의 스칼라 값이다. 우선, [eqn: x=vec0]은 이 방정식의 해가 됨을 쉽게 알 수 있다. 다음으로, 위의 방정식을 만족하는 영이 아닌 벡터 [eqn: x]가 존재한다고 가정하자. 이때 [eqn: lambda]를 행렬 [eqn: A]의 고유치 혹은 특성값(characteristic value)이라 하고 [eqn: x]를 행렬 [eqn: A]의 고유벡터 혹은 특성벡터(characteristic vector)라 한다. 또한 식 (5.14)는 고유벡터 [eqn: x]에 행렬 [eqn: A]를 곱한 값은 벡터 [eqn: x]에 스칼라 값을 곱한 것과 같다는 것을 의미한다. 스칼라 값에 해당하는 [eqn: lambda]값은 1 이상이거나, 1과 0 사이의 값을 갖거나, 혹은 음의 값을 가질 수 있으며, [그림 5.1]과 같은 기하학적인 의미를 갖는다.

[그림 5.1]  고유치와 고유벡터의 기하학적인 의미

다음으로, 하나의 행렬이 주어졌을 때, 고유치와 고유벡터를 구하는 방법을 구체적인 예를 통

하여 살펴보기로 한다. 첫째, 행렬 [eqn: A= pmatrix{````````3&2#-1&0}]가 주어졌을 때, 고유치 값을 찾아보기로 한다.

우선 주어진 행렬값을 식 (5.14)에 대입함으로써 다음의 관계가 성립함을 알 수 있다.

[eqn: Ax= pmatrix{```````3&2#-1&0} pmatrix{x _{1}#x _{2}} = lambda pmatrix{x_1 # x_2}]	①

식 ①은 아래의 식 ②와 같이 전개될 수 있다.

[eqn: 3x _1 +2x _2 = lambda x _1 # -1x _1 +0x _2 = lambda x _2]	②

식 ②의 우측항의 값들을 좌측항으로 옮겨서 식 ③과 같이 정리할 수 있다.

[eqn: (3x _1 - lambda x _1 )+2x _2 = 0# ```````````````````-1x _1 - lambda x _2 =0]	③

식 ③의 좌변을 계수와 벡터 [eqn: x], 우변은 영벡터([eqn: O])로 나누어 정리해 보면,

[eqn: pmatrix{```3- lambda `&2#-1&- lambda ``} pmatrix{``x _{1}``#``x _{2}`} = pmatrix{``0``#``0``}]이 되고,

다시 [eqn: pmatrix{`3- lambda `&`````2#-1```&- lambda } = pmatrix{```````3`````&2#-1````&0} - lambda pmatrix{1````&0#0````&1}]이 된다. 따라서 식 ③은 최종적으로 식 (5.15)와 같이 정

리될 수 있으며, 이러한 형태의 식을 균질 선형 시스템(homogeneous linear system)이라 한다.

[eqn: (A- lambda I``)x= O]	(5.15)

균질 선형 시스템에서 [eqn: x!=O]인 해를 갖기 위해서는 [eqn: (A- lambda `I``)x= O]의 행렬식 값이 0이어야 한다. 그 이유를 지금부터 설명하겠다.

식 (5.15)의 열벡터 [eqn: x]를 구하기 위하여 좌변과 우변에 역행렬 [eqn: (A- lambda I``) ^{-1}]를 곱하면 식 ④와 같이 정리할 수 있다.

[eqn: (A- lambda I``) ^{-1} cdot (A- lambda I``) cdot x= rm (A- lambda I) ^{-1} cdot itO]	④

식 ④ 좌변의 [eqn: (A- lambda I``) ^{-1} cdot (A- lambda I``)= rm I]은 단위행렬 [eqn: I``]가 되므로 아래 식 ⑤로 정리된다.

[eqn: I `cdot x= rm (A- lambda I`) ^{-1} cdot it O]	⑤

이때 식 ⑤는 최종적으로 [eqn: x=O]이 된다. 즉 열벡터 [eqn: x]가 영벡터가 되어 균질 선형 시스템에서 [eqn: x!=0]인 해를 갖는다 조건에 모순된다. 이러한 모순이 발생한 이유는 행렬 [eqn: (A- lambda I`)]가 역행렬을 가진다고 가정하고 계산했기 때문이다. 따라서 행렬 [eqn: (A- lambda I`)]는 역행렬을 가질 수 없고,  [eqn: det(A－ lambda I```)＝0]을 만족해야 하며, 이때 전개된 식을 행렬 [eqn: A]에 대한 특성 방정식(characteristic equation)이라고 한다. 이 특성 방정식의 해를 행렬 [eqn: A]의 고유치라 하고, 주어진 행렬에 대해서 하나 이상의 고유치를 가질 수 있다. 앞의 예에서 식 ③을 정리하면 다음과 같은 특성 방정식을 구할 수 있으며, 이때 행렬 [eqn: A]의 고유치는 [eqn: lambda=1,~2]가 된다는 것을 알 수 있다.

[eqn: det(A- rm lambda I)= dmatrix{3- rm lambda &2#-1&- rm lambda } =(3- rm lambda )(- rm lambda )-2(-1)= rm lambda ^{2} -3 rm lambda +2=0]

다음으로, 구해진 고유치 값들을 바탕으로 고유벡터를 구하는 방법을 살펴보기로 한다. 위의 예에서 두 개의 고유치 값을 구하였으며, 아래에서는 이들 각각에 대한 고유벡터를 구해보도록 한다. 먼저 [eqn: lambda=1]일 경우에 해당하는 행렬 [eqn: A]의 고유벡터를 구해보자.

[eqn: 2x _{1} + 2x_2 = 0##-x_1 - x_2 = 0]

위의 이원일차연립방정식을 풀면 [eqn: x_1 = - x_2]인 해를 갖는다. [eqn: x_1]의 값이 어떤 값을 갖느냐에

따라서 하나 이상의 고유벡터 값이 존재할 수 있다. 예를 들어, [eqn: x_1 = 1]인 경우에는 [eqn: x= bmatrix{````````1#-1}]

라는 고유벡터 값을 갖고, [eqn: x_1 = 2]인 경우에는 [eqn: x= bmatrix{````````2#-2}]라는 고유벡터 값을 갖는다. 구한 고유

벡터 값이 올바른지를 검증하기 위해서 식 (5.14)에 대입해 보면, [eqn: x= bmatrix{````````1#-1}]인 경우에 [eqn: Ax=]

[eqn: pmatrix{```````3&2#-1&0} pmatrix{```````1`#-1`} = pmatrix{```````1`#-1`}, ```` lambda _1 x=1 pmatrix{````````1#-1} = pmatrix{```````1 # -1}]이므로 식 (5.14)가 만족됨을 알 수 있고 [eqn: x= bmatrix{````````2#-2}]

경우에도 만족됨을 알 수 있다.

다음으로, [eqn: lambda = 2]인 경우에 해당하는 행렬 [eqn: A]의 고유벡터를 구해보자.

[eqn: x _{1} +2x _{2} =0## -x _{1} -2x _{2} =0]

위의 식을 풀면 [eqn: x _{1} =-2x _{2}]이며, [eqn: x_1 = 1]인 경우에는 [eqn: x= bmatrix{````````1#- 1over2}]인 고유벡터 값을 갖는다.

끝으로, 아래의 정리 5.13을 통하여 위에서 설명한 고유치와 고유벡터에 대한 내용을 요약하도록 한다.

정리 5.13

[eqn: n times n] 행렬 [eqn: A]가 주어질 때, 아래의 내용은 같은 의미를 갖는다.

(1) [eqn: Ax= lambdax]를 만족하는 0이 아닌 벡터 [eqn: x]가 존재한다.

(2) [eqn: (A－ lambda`I```)x＝O]은 [eqn: x!=O]해를 갖는다.

(3) [eqn: lambda]는 행렬 [eqn: A]의 고유치이며, [eqn: x]는 고유벡터이다.

(4) [eqn: lambda]는 특성방정식 [eqn: det(A－ lambda `I``)＝0]의 해이다.

5.7

행렬의 응용 (생략)

일상생활에는 행과 열 형태로 자료가 배치되는 예가 많이 있다. 좌석 예약, 공연장 예매, 출석부, 바둑판, 서양 장기판 등 같은 성격의 많은 데이터를 처리해야 하는 사례가 많다. 예를 들어서 컴퓨터프로그래밍이라는 과목에서 대개는 [eqn: C] 언어의 기초를 배울 것이다. 그때 여기서 배운 내용을 컴퓨터로프로그래밍하여 확인해 보면 재미있을 것이다.

저자가 아는 내용 중에서 행렬이 많이 사용되는 분야 중 한가지로 컴퓨터 그래픽스를 들 수 있다. 그 가운데 앞에서 배운 삼각함수의 성질과 행렬에 대한 내용을 이용하면 2차원 평면 도형을 회전시키는 문제를 풀 수가 있다. 도형의 회전은 그래픽이나 영상처리에서는 자주 사용되는 기본적인 연산이다. 컴퓨터 그래픽스에서 회전 연산은 2단계로 수행된다.

단계 1  화소 값의 새로운 위치 계산

단계 2  보간법을 통해서 실수 좌표를 정수 좌표로 변환

여기서 화소(pixel)란 영상, 즉 컴퓨터 화면상의 한 점을 말한다. 쉽게 말해서, 우리가 사용하는 모니터 해상도가 1024×768이라면 모니터 전체화면을 1024×768개의 화소로 배열하여 본다는 뜻이다. 따라서 해상도가 높아질수록 영상이 선명해지고, 반대로 낮아질수록 영상이 흐릿해진다. 자신이 사용하는 컴퓨터의 제어판－디스플레이 메뉴 설정으로 확인해 보면 쉽게 이해가 될 것이다. 보간법이란 주어진 여러 개의 좌표 값을 이용하여 범위에 적합한 값으로 바꾸어주는 방법으로서, 공업수학, 컴퓨터 그래픽스, 수치해석 등과 같은 과목을 수강하면 배우게 될 것이므로, 여기서는 더 이상 언급하지 않겠다.

지금부터 우리가 관심을 갖고 있는 2차원 공간상의 회전 연산을 설명한다. 회전 연산의 요지는 단계 1에서 주어진 점 ([eqn: x], [eqn: y])가 [eqn: theta`]만큼 반시계 방향으로 이동했을 때, 새로운 점의 좌표 ([eqn: x'], [eqn: y'])이 행렬과 연관하여 어떻게 계산되는지를 보이는 것이다. [그림 5.2]에 2차원 [eqn: x-y] 공간상에 두 점이 배치된 상태를 보여준다. 이동한 점 ([eqn: x'], [eqn: y'`])이 원 점 ([eqn: x], [eqn: y])로부터 계산되는 과정을 자세히 살펴보기로 하자.

[그림 5.2]  2차원 공간상에서 점의 회전

[그림 5.2]에서 보듯이, 좌표축의 중심점을 원점([eqn: O])이라고 할 때, 임의의 점 ([eqn: x], [eqn: y])는 원점과의 거리 [eqn: r]과 각 [eqn: theta]가 아래와 같으므로

[eqn: theta = theta_1 - theta_2,] [eqn: r = root{x^2 + y^2} = root{(x')^2 + (y')^2}]

이를 이용하여 표현해 보면 식 (5.16)과 같다.

[eqn: cases{x = r cos theta_2 = r cos (theta_1 - theta)#y = r sin theta_2 = r sin (theta_1 - theta)}]	(5.16)

이때 점 ([eqn: x], [eqn: y])를 반시계 방향으로 [eqn: theta] 만큼 이동한 점 ([eqn: x'], [eqn: y'])의 좌표는 다음과 같이 계산된다.

[eqn: cases{ x' = r cos theta_1#y' = r sin theta_1}]	(5.17)

삼각함수의 사인 코사인 가법공식을 적용하여 회전 이동한 점 ([eqn: x'], [eqn: y'])의 좌표를 본래의 점 ([eqn: x], [eqn: y])의 좌표를 기준으로 계산해 보면,

[eqn: x' &= r cos theta_1 #&= r cos (theta + theta_2 ) #&= r cos theta BULLET cos theta_2 - r sin theta bullet sin theta_2 #&= x cos theta - y sin theta]	①

[eqn: y' &= r sin theta_1 #&= r sin (theta + theta_2 ) #&= r sin theta cdot cos theta_2 + r cos theta cdot sin theta_2 #&= x sin theta + y cos theta]	②

식 ①, ②에 의해 이동한 점 ([eqn: x'], [eqn: y'])을 원래 점 ([eqn: x], [eqn: y]) 기준으로 계산해 보면, 아래 식 (5.18)과 같이 된다.

[eqn: cases {x' = cos theta ⋅x + (-sin theta)⋅y# y' = sin theta⋅x + cos theta⋅y}]	(5.18)

위 식을 행렬로 표현하기 위해, 원래의 좌표는 열벡터 [eqn: X], 이동한 좌표는 열벡터 [eqn: Y], 각도 [eqn: theta]만큼 반시계 방향으로 이동시켜주는 변환은 행렬 [eqn: A]라 놓으면, 위 식은 아래와 같은 행렬 표기로 바뀐다.

[eqn: Y=AX]

[eqn: pmatrix { x' # y' } = pmatrix{cos theta&-sin theta#sin theta&cos theta}pmatrix{x#y}]	(5.19)

즉 2차원 공간상의 점을 회전 이동시키는데, 행렬 [eqn: A]가 사용됨을 확인할 수 있다. 만약 회전 이동한 점 ([eqn: x'], [eqn: y'])을 본래의 점 ([eqn: x], [eqn: y])으로 다시 이동시키려면 다음과 같은 역행렬 연산을 활용하면 된다.

[eqn: Y=AX]의 양변에 [eqn: A]의 역행렬 [eqn: A^-1]를 곱하면,

[eqn: A^-1 Y&=A^-1 AX#&=IX]

즉 [eqn: X=A^-1 Y]이므로 식 (5.20)과 같이 표현할 수 있다.

[eqn: pmatrix{x#y} = pmatrix{cos theta & sin theta#-sin theta&cos theta}pmatrix{x'#y'}]	(5.20)

[그림 5.3]에서는 주어진 도형 (a)를 반시계 방향으로 45° 회전시킨 후의 도형([그림 5.3(b)] 참조)과 반시계 방향으로 90° 회전시킨 후의 도형([그림 5.3(c)] 참조)을 비교하여 보여준다. 그림에서 볼 수 있듯이, 2차원 회전의 경우에 90° 회전이 아닌 경우에는 원 도형보다 영상의 크기가 커짐을 알 수 있다.

(a)	(b)	(c)

[그림 5.3]  도형의 회전

연습문제

1

다음에 주어진 행렬 [eqn: A], [eqn: B]에 대하여 [eqn: A=B]일 때, [eqn: a,```b,```c,```d]의 값을 구하여라.

연습문제

[eqn: A=pmatrix { 2a-b&a+b # c+d&c-d }], [eqn: B = pmatrix { 4&-1 # 3&1 }]

2

두 행렬 [eqn: A], [eqn: B]일 때, [eqn: 3A+2B], [eqn: A-4B] 연산을 수행하여라.

[eqn: A=pmatrix { 3&2&4 # -1&0&6 # 5&1&2}], [eqn: B = pmatrix { 1&-1&3 # 2&5&2 # 3&0&-4}]

3

행렬 [eqn: A]는 2차 정방행렬이고, [eqn: a,```b,```c,```d]가 임의의 실수인 상수일 때, 다음 수식을 만족하는 행렬 [eqn: A]를 구하여라.

[eqn: A pmatrix { a&b # c&d } = pmatrix { c&d # a&b }]

4

다음 행렬의 곱을 구하여라.

(1) [eqn: pmatrix { ````````2&3` # -1&4` } pmatrix { 6&````````2&`````1` # 5&-3&`````0 `}]

(2) [eqn: pmatrix { ````````2&3&1` # -1&4&2` # ````````3&0&1` } pmatrix { 4&```````1&````2 # 2`&-3&`````0` #3&````````6&`````1` }]

5

행렬 [eqn: A= pmatrix{-1&-2#2&4}]일 때 [eqn: AX=O]를 만족하는 행렬 [eqn: X= pmatrix{a&b`#c&d`}]를 구하여라.

6

[eqn: A], [eqn: B], [eqn: C`]가 모두 2차의 정방행렬이고 정칙행렬일 때, 다음 수식이 성립함을 증명하여라.

[eqn: (ABC) ^{-1} =C ^{-1} B ^{-1} A ^{-1}]

7

두 행렬 [eqn: A= pmatrix{-1&````````2#````````1&-2}], [eqn: B= pmatrix{a#b}]일 때, 방정식 [eqn: AB=cB]가 [eqn: a != 0,```b != 0]인 해를 갖도록 상수 를 정하여라.

8

세 가지 행렬 [eqn: A=pmatrix { -1&2 # -3&4 }], [eqn: B=pmatrix { 2&0 # 0&1 }], [eqn: P=pmatrix { a&b # c&d }]일 때, [eqn: B=P^-1 AP]가 성립할 조건을 구하여라.

9

다음 두 행렬의 수반행렬을 구하고, 행렬식도 계산하여라.

(1) [eqn: A=pmatrix { 2&4 # 1&3 }]	(2) [eqn: B=pmatrix { 4&5&0 # 3&3&1 # 3&-1&2}]

10

다음 행렬식의 값을 제 1행과 제 2열에 대하여 각각 전개해 보고, 그 결과가 같은지를 보여라.

[eqn: |A|= dmatrix{a _{11}&a_{12}&a_{13}#a_{21}&a_{22}&a_{23}#a_{31}&a_{32}&a_{33}}]

11

다음 행렬이 역행렬을 가질 수 있는지 밝히고, 역행렬을 가지는 경우에는 그 행렬을 구하여라.

(1) [eqn: A=pmatrix { 4&1 # 2&3 }]          (2) [eqn: B=pmatrix { 1&3&2 # 3&4&1 # 2&6&4}]          (3) [eqn: C=pmatrix{ 1&0&0&0 # 0&cos theta&sin theta&0 # 0&-sin theta&cos theta&0 # 0&0&0&1 }]

12

역행렬을 구해서 다음 연립방정식의 해를 구하여라.

[eqn: cases { x-y+z=4 # 2x+4y+3z=-3 # -x+3y+6z=-1 }]

13

가우스 소거법을 이용하여 다음 연립방정식의 해를 구하여라.

[eqn: cases { x-y+z=4 # 2x+4y+3z=-3 # -x+3y+6z=-1 }]

14

아래 행렬에 대한 특성방정식과 고유치를 구하여라.

(1) [eqn: pmatrix{-2&-7#````````1&`````````2}]	(2) [eqn: pmatrix{-5&```````2#``````2``&-2} ```]

(3) [eqn: pmatrix{1&0#``0&``1}]	(4) [eqn: pmatrix{0&0#`0&`0}]

15

문제 14의 각 행렬에 대한 고유벡터를 구하여라.

16

아래 행렬에 대한 고유치와 고유벡터를 구하여라.

(1) [eqn: pmatrix{``````4&0&1#-2&1&0#-2&0&1}]	(2) [eqn: pmatrix{-3&-2&0#-2&``````3&0#0&``````0&5}]

17

아래 그림과 같은 2차원 공간상의 도형을 원점을 기준으로 [eqn: x]축 방향 2배 확대, [eqn: y]축 방향으로 2배 확대하고 싶다. 어떤 행렬 연산을 적용하면 되는가?

[그림 5.4]  2차원 공간의 도형을 확대