의미
역행렬(Inverse Matrix)이란, 어떤 정방행렬 A에 대해 다른 행렬 A−1이 존재하여 아래 조건을 만족할 때:
A⋅A−1=A−1⋅A=I
여기서 I는 단위행렬(Identity matrix)로, 곱셈에 대해 항등원 역할을 한다.
A−1을 A에 대한 역행렬이라고 한다.
즉, 역행렬은 원래의 행렬 곱을 "되돌려주는" 역할을 한다.
역행렬이 존재하는 조건
역행렬은 다음 조건을 모두 만족해야 한다.
1. 정방행렬 (nxn) 이어야 함
2. 행렬식 det(A)=0 이어야 함
→ 0이면 선형독립이 아니며, 되돌릴 수 없음
이런 행렬을 가역 행렬(invertible matrix) 또는 비특이 행렬(non-singular matrix)이라고 부른다.
2×2 행렬의 역행렬
A=[acbd]
det(A)=ad−bc
A−1=ad−bc1[d−c−ba]
단, ad−bc=0이어야 역행렬이 존재한다.
3×3 이상의 행렬: 역행렬 구하는 방법
1. 가우스-조던 소거법 (Gauss-Jordan Elimination)
- A 옆에 단위행렬 I를 붙여 [A∣I] 형태로 만들고
- 행 연산을 통해 A를 단위행렬로 바꾸면, 그때 오른쪽에 남는 행렬이 A−1이 된다.
예:
A=⎣⎢⎡211130120⎦⎥⎤
[A ∣ I] 형태로 시작한다.
⎣⎢⎡211130120100010001⎦⎥⎤
Step 1: 첫 번째 열의 피벗을 1로 만든다
행 1을 2로 나눈다:
R1←21R1⇒⎣⎢⎡1110.5300.5200.500010001⎦⎥⎤
Step 2: 첫 열 아래 원소들을 0으로 만든다
- R2←R2−R1
- R3←R3−R1
⇒⎣⎢⎡1000.52.5−0.50.51.5−0.50.5−0.5−0.5010001⎦⎥⎤
Step 3: 두 번째 피벗을 1로 만든다
R2←2.51R2
⇒⎣⎢⎡1000.51−0.50.50.6−0.50.5−0.2−0.500.40001⎦⎥⎤
Step 4: 두 번째 열의 나머지를 0으로 만든다
- R1←R1−0.5⋅R2
- R3←R3+0.5⋅R2
결과:
⎣⎢⎡1000100.20.6−0.20.6−0.2−0.6−0.20.40.2001⎦⎥⎤
Step 5: 세 번째 피벗을 1로 만든다
R3←R3/(−0.2)
⇒⎣⎢⎡1000100.20.610.6−0.23−0.20.4−100−5⎦⎥⎤
Step 6: 세 번째 열의 나머지를 0으로 만든다
- R1←R1−0.2⋅R3
- R2←R2−0.6⋅R3
결과:
⎣⎢⎡1000100010−2301−113−5⎦⎥⎤
➡ 왼쪽이 단위행렬, 오른쪽이 A−1이 된다.
2. 여인자(cofactor)와 수반행렬(adjugate) 이용
A−1=det(A)1⋅adj(A)
- adj(A): A의 수반행렬 (cofactor 행렬을 전치시킨 것)
- 이 방식은 공식적으로 정의되지만, 계산량이 많아서 고차 행렬에서는 실용성이 떨어진다.
예시:
A=[4276]⇒det(A)=4⋅6−2⋅7=10
수반행렬:
adj(A)=[6−2−74]
A−1=101[6−2−74]