가역행렬의 역행렬 계산
n×n 가역행렬 A와 항등행렬 In이 있다고 하자. 이 때 A의 열과 In의 열을 가로로 붙여 [A∣In]의 첨가행렬을 만들 수 있다.
이 때 A−1[A∣In]=[A−1A∣A−1In]=[In∣A−1]이다.
그런데 모든 가역행렬은 기본행렬의 곱으로 나타낼 수 있으므로, A−1=EkEk−1...E1이라고 하면 다음을 만족한다.
A−1[A∣In]=EkEk−1...E1[A∣In]=[EkEk−1...E1A∣EkEk−1...E1In]=[In∣A−1]
즉 A를 In으로 변환하는 기본행연산에 대응하는 기본행렬들의 곱이 곧 A의 역행렬이 된다.
따라서 [A∣In]으로 놓고 좌측의 A를 In으로 변환하는 기본행연산을 양 쪽에 진행하면 결과적으로 [In∣A−1]이 되므로 우측에서 A의 역행렬을 구할 수 있다.
행렬의 가역성 판단
n×n 행렬 A에 대해 [A∣In]에 기본행연산을 유한번 적용해서 [In∣B]의 꼴로 바꿔보자. 이 때 B는 n×n 행렬이다.
I) A가 가역행렬인 경우
B=EkEk−1...E1을 A를 In으로 바꾸는 행연산에 대응하는 기본행렬들의 곱이라고 하면, B[A∣In]=[BA∣BIn]=[In∣B]가 된다.
따라서 위에서 역행렬을 구했던 방법과 동일하므로 A−1=B이 존재한다.
II) A가 가역행렬이 아닌 경우
A가 가역행렬이 아닌 경우 rank(A)<n이다. 이 경우 [A∣In]을 [In∣B]의 꼴로 유한번의 기본행연산을 이용해 바꾸는 것이 불가능하다. 대신 A를 In으로 바꾸는 과정에서 성분이 모두 영으로만 이루어진 행이 발생한다.
증명)
귀류법을 이용해서 증명한다. A가 가역행렬이 아니고, [A∣In]을 [In∣B]의 꼴로 유한번의 기본행연산을 이용해 바꿀 수 있다고 가정하자.
A는 유한번의 기본행연산을 통해 In으로 변환된다. rank(A)<n이고, rank(In)=n인데, 기본행연산은 랭크를 보존하므로 rank(In)<n이라는 모순이 발생한다.
따라서 A가 가역행렬이 아닌 경우 [A∣In]을 [In∣B]의 꼴로 유한번의 기본행연산을 이용해 바꾸는 것이 불가능하다.