앞선 글에서 우리는 벡터공간 사이의 선형사상은 본질적으로 행렬과 완전히 같은 것임을 알게 되었다. 이러한 관점에서 우리는 두 \(m\times n\) 행렬 \(A,B\)가 적당한 두 가역행렬 \(P,Q\)에 대하여 다음의 식

\[B=PAQ\tag{1}\]

을 만족한다면 이들 행렬 \(A,B\)가 본질적으로 같은 행렬인 것으로 생각하고 싶을 것이나, 이 행렬들 \(L_A, L_B: V\rightarrow W\)이 작용하는 두 벡터공간 \(V,W\)의 basis를 택할 자유를 완전하게 허용한다면, rank가 같은 두 행렬은 모두 같은 행렬으로 취급해야 한다는 것을 보았다. 이 때문에 우리는 §선형대수학의 기본정리, ⁋정의 8에서 이보다 더 세밀한 동치관계를 정의해야만 했다. 대략적으로 이야기하여, 위의 식 (1)에서 행렬 \(A\)가 담고 있는 정보가 오직 \(A\)의 rank 뿐이라고 한다면 나머지 정보들은 행렬 \(P,Q\), 즉 \(V\)에서 \(V\), 혹은 \(W\)에서 \(W\)로의 linear operator선형연산자에 담겨있을 것이며 이들을 살펴보기 위해 \(V\) (혹은 \(W\))의 basis를 하나 고정한다고 생각하면 이 동치관계가 그리 어색하지 않다. 따라서 당분간 우리의 논의는 벡터공간 \(V\)와 basis \(\mathcal{B}\)를 고정한 상태로 진행할 것이다. 다른 말로 하면, 우리는 \(n\times n\) 행렬에 대해 살펴볼 것이다. 이를 위한 강력한 도구는 다음 글에서 정의할 행렬식이다.

한편, 우리는 임의의 행렬 \(A\)가 가역이기 위해서는 반드시 이 행렬은 정사각행렬이어야 한다는 것을 행렬의 대각합을 이용하여 증명하였으며 (§행렬, ⁋정의 7) 행렬과 선형사상은 같다는 것을 알게 된 지금 이 결과는 §동형사상, ⁋정리 4에 의하여 자명한 것이다. 그러나 아직 우리는 이 역행렬을 계산하는 방법을 살펴보지 않았다. 이 방법은 단순한 것이므로 §행렬 직후에 살펴볼 수도 있었겠지만, 본격적으로 \(n\times n\) 행렬을 살펴보기 시작한 지금 이 과정을 간략히 소개하기로 한다.

우선 다음의 간단한 보조정리를 보이자.

보조정리 1 행렬 \(A\in\Mat_n(\mathbb{K})\)에 대하여, 다음 세 조건이 모두 동치이다.

  1. \(A\)가 가역이다.
  2. 적당한 \(B\in\Mat_n(\mathbb{K})\)가 존재하여 \(AB=I\)이다.
  3. 적당한 \(B\in\Mat_n(\mathbb{K})\)가 존재하여 \(BA=I\)이다.

뿐만 아니라 둘째, 셋째 조건이 성립할 경우 \(B=A^{-1}\)이다.

증명

첫 번째 조건이 각각 두 번째와 세 번째를 함의하는 것은 자명하므로, 반대방향만 보이면 충분하다.

우선 적당한 \(B\in\Mat_n(\mathbb{K})\)가 존재하여 \(AB=I\)가 성립한다고 가정하자. 그럼 선형대수학의 기본정리에 의하여

\[L_A\circ L_B=\id_{\mathbb{K}^n}\]

이 성립한다. 이제 \(\id_{\mathbb{K}^n}\)이 전단사함수라는 것으로부터 \(L_A:\mathbb{K}^n\rightarrow \mathbb{K}^n\)이 전사함수라는 것을 안다. ([집합론] §Retraction과 section, ⁋명제 3) 따라서 다음의 식 (§동형사상, ⁋정리 7)

\[\rank L_A+\nullity L_A=\dim \mathbb{K}^n=n\]

으로부터 \(\nullity L_A=0\)임을 안다. 즉 \(L_A\)는 단사함수이기도 하고, 따라서 \(L_A\)는 전단사함수이고 행렬 \(A\)는 가역이다. 이제 식 \(AB=I\)의 양 변의 왼쪽에 \(A^{-1}\)을 곱하면 \(B=A^{-1}\)을 얻는다.

비슷하게 셋째 조건이 첫째 조건을 함의한다는 것을 증명할 수 있다.

물론, 이는 다시 행렬과 선형사상이 같은 것임을 생각하면, 함수의 역함수가 같은 성질을 만족하므로 자명하다.

이제 임의의 \(n\times n\) 가역행렬 \(B\)가 주어졌다 하자. \(B\)를 \(\mathbb{K}^n\)에서 \(\mathbb{K}^n\)으로의 linear map으로 생각하면, \(B\)는 \(\mathbb{K}^n\)의 basis \(e_1,\ldots, e_n\)을 어디로 옮기는지에 의해 완전하게 결정된다. 따라서 행렬 \(A^{-1}\)를 계산하기 위해서는 \(A^{-1}\)이 basis \(e_i\)를 어디로 옮기는지를 알면 된다. 이 값을 벡터 \(v_i\)라 하면, 행렬 \(A\)는 \((v_1\mid v_2\mid\cdots\mid v_n)\)으로 주어질 것이며, 이 때 각각의 \(v_i\)들은 다음의 식

\[v_i=A^{-1}e_i\iff Av_i=e_i\tag{2}\]

으로 정의된다.

가우스-요르단 소거법

이제 다음의 일차연립방정식

\[\begin{aligned}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\\\hspace{10pt}\vdots&\\a_{mn}x_1+a_{m2}x_2+\cdots+a_{mn}x_n&=b_m\end{aligned}\tag{3}\]

이 주어졌다 하자. 그럼 §행렬, ⁋정의 2에 의해 위의 식은 다음의 행렬들

\[A=\begin{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}\end{pmatrix},\quad x=\begin{pmatrix}x_1\\x_2\\\vdots\\x_n\end{pmatrix},\quad b=\begin{pmatrix}b_1\\b_2\\\vdots\\b_m\end{pmatrix}\]

에 대하여 \(Ax=b\)으로 쓸 수 있다. 만일 \(m=n\)이고, 행렬 \(A\)의 역행렬이 존재한다면 이 연립방정식의 해는 다음의 식

\[x=A^{-1}b\iff Ax=b\]

을 통해 유일하게 결정되고 이는 정확히 우리가 역행렬을 구하기 위해 필요한 식이다. 만일 \(m\neq n\)이거나 혹은 \(A\)의 역행렬이 존재하지 않으면 위의 일차연립방정식의 해는 존재하지 않을 수도 있고, 무한히 많을 수도 있다. 우리는 이 경우에도 유용하게 사용할 수 있는 가우스 소거법을 살펴본다.

식 (3)의 계수들 중 \(a_{ji}=0\)이 모든 \(j\)에 대해 성립하도록 하는 \(1\leq i\leq n\)이 존재한다 가정하자. 이 경우, 만일

\[x_1=c_1,\quad x_2=c_2,\quad \ldots,\quad x_i=c_i,\quad\ldots,\quad x_n=c_n\]

이 식 (3)의 하나의 해라면 \(x_i\)의 값을 임의의 \(d_i\)로 바꾼 다음의 순서쌍

\[x_1=c_1,\quad x_2=c_2,\quad\ldots,\quad x_i=d_i,\quad\ldots,\quad x_n=c_n\]

또한 식 (3)의 해가 된다. 따라서 만일 \(a_{ij}\)들이 모두 \(0\)이라면, \(b\)가 영벡터일 경우 식 (3)은 임의의 \(\mathbb{K}^n\)의 순서쌍을 모두 해로 가지며, 그렇지 않을 경우 해가 존재하지 않는다. 이와 같은 자명한 경우를 피하기 위해, 적어도 하나의 \(a_{ij}\)는 0이 아니라 가정한다.

이제 정수 \(k\)를 $a_{jk}\neq 0$이도록 하는 $1\leq j\leq m$이 존재하는 정수들 중 가장 작은 것으로 정의하고, 이렇게 고정된 \(k\)에 대하여 \(a_{jk}\neq 0\)를 만족하는 가장 작은 정수 \(j\)를 택하자. 이제 \(j\)번째 식

\[a_{j1}x_1+a_{j2}x_2+\cdots+a_{jk}x_k+\cdots+a_{nk}x_n=b_j\]

을 식의 가장 위쪽으로 올려

\[\begin{aligned}a_{j1}x_{1}+a_{j2}x_2+\cdots+a_{jn}x_n&=b_j\\a_{11}x_1+a_{12}x_2+\cdots+a_{1n}x_n&=b_1\\\hspace{10pt}\vdots&\\a_{mn}x_1+a_{m2}x_2+\cdots+a_{mn}x_n&=b_m\end{aligned}\]

으로 쓰면 \(a_{jk}\)의 정의로부터 \(a_{j1},a_{j2},\ldots, a_{j,(k-1)}\)과, 그 밑에 있는 계수들은 모두 \(0\)이 되어야 한다. 이제 식

\[a_{i1}x_1+a_{i2}x_2+\cdots+a_{in}x_n=b_i\]

마다, 첫째 식에 \(-a_{ik}/a_{jk}\)를 곱하여 더해주면

\[\left(a_{i1}-\frac{a_{ik}}{a_{jk}}a_{j1}\right)x_1+\left(a_{i2}-\frac{a_{ik}}{a_{jk}}a_{j2}\right)x_2+\cdots+\left(a_{ik}-\frac{a_{ik}}{a_{jk}}a_{jk}\right)x_k+\cdots+\left(a_{in}-\frac{a_{ik}}{a_{jk}}a_{jn}\right)x_n=b_i-\frac{a_{ik}}{a_{jk}}b_k\]

이 된다. 위의 식에서 \(x_1,\ldots, x_{k-1}\)의 계수는 원래부터 모두 0이었으며, 방금 전의 연산을 통해 \(x_k\)의 계수 또한 0이 된다. 즉, 이 과정을 거치면 \(x_1,\ldots, x_{k-1}\)의 계수는 모두 0이며, \(x_k\)의 계수들 중 0이 아닌 것은 오직 첫 번째 행에만 존재하게 된다.

이제 두 번째 행부터 마지막 행까지의 \(n-1\)개 식에 대해 이 과정을 반복하고, 다시 세 번째 행부터 마지막 행까지의 \(n-2\)개 식에 대해 이 과정을 반복한다. 이를 계속하여 마지막 행에 도착하면 위의 식 (3)은 최종적으로 다음 두 조건 (*)을 만족한다.

  1. 만일 모든 계수가 0인 식이 있다면, 이 식은 연립방정식의 가장 밑에 위치한다.
  2. 모든 계수가 0은 아닌 식에 대해, 이 식에서 처음으로 등장하는 0이 아닌 계수는 위의 식에서 이러한 성질을 만족하는 계수보다 오른쪽에 있다.

예시 2 다음 연립방정식은 위의 두 조건을 만족한다.

\[\begin{aligned}x_1+2x_2+4x_3+3x_4&=2\\\phantom{x_1+}3x_2\phantom{+2x_3}+6x_4&=3\\\phantom{x_1+2x_2+}x_3+5x_4&=1\end{aligned}\]

약간의 조작을 추가로 가하면 이 식으로부터 연립방정식의 해를 바로 구해낼 수 있다. 각 식에서 0이 아닌 최초의 계수를 선행계수leading coefficient라 부르자. 위의 식을 예시로 들면, 첫째 식의 선행계수는 \(x_1\)의 계수인 1이고, 둘째 식의 선행계수는 \(x_2\)의 계수인 3, 그리고 마지막 식의 선행계수는 \(x_3\)의 선행계수인 1이다.

이제 각 행마다 선행계수 위에 있는 계수들을 모두 없애준다. 즉, 마지막 식의 선행계수 위에 있는 항인 \(4x_3\)을 없애야 하고, 둘째 식의 선행계수 위에 있는 항인 \(2x_2\)를 없애야 한다. 이를 위해서는 마지막 식에 4를 곱하여 첫째 식에서 빼 주고, 둘째 식에 \(2/3\)을 곱하여 첫째 식에서 빼 주면 된다. 또, 식을 깔끔하기 위해 둘째 식의 양변에 \(1/3\)을 곱해주면 그 결과는 다음과 같다.

\[\begin{aligned}x_1\phantom{+2x_2+4x_3}-21x_4&=-4\\\phantom{x_1+}x_2\phantom{+2x_3}+\phantom{1}2x_4&=1\\\phantom{x_1+2x_2+}x_3+\phantom{1}5x_4&=1\end{aligned}\]

이로부터 위의 연립방정식의 일반해는

\[x_1=-4+21x_4,\quad x_2=1-2x_4,\quad x_3=1-5x_4\]

임을 알 수 있다.

지금까지 설명한 과정을 통해 연립방정식을 푸는 방법을 가우스 소거법 혹은 가우스-요르단 소거법이라 부른다.

기본행연산과 가우스 소거법

처음에 주어진 연립방정식 (3)은 행렬을 이용해 \(Ax=b\)로 간단하게 표현할 수 있었다. 가우스 소거법은 이 행렬 \(A\)와 \(b\)를 적절히 바꾸어 이 식을 \(A'x=b'\)로 쓸 수 있으며, 이 때 행렬 \(A'\)는 두 조건 (*)를 만족하도록 잡을 수 있다는 것을 보여준다.

정의 3 주어진 행렬 \(A\)에 대하여, 기본행연산elementary row operation, ERO은 다음 세 개의 연산을 뜻한다.

  1. 두 개의 행 전체를 위아래로 교환하는 연산,
  2. 한 행에 0이 아닌 상수를 곱하는 연산,
  3. 한 행의 배수를 다른 행에 더하는 연산.

우리가 구체적으로 살펴본 예시 2는 일차연립방정식을 적절히 조작하여 조건 (*)을 만족하도록 설정한 후 이를 특정한 방식으로 쓰는 것에 대한 것이었으나, 그 이전에 살펴본 계산 또한 본질적으로는 기본행연산(에 해당하는 식 조작)으로부터 얻어진다는 것을 눈여겨볼 필요가 있다.

또, 다음을 정의한다.

정의 4 \(m\times n\) 행렬 \(A\)가 주어졌다 하자. 임의의 \(1\leq i\leq m\)에 대해 정수 \(j_0(i)=\min\{j\leq n\mid a_{ij}\neq 0\}\)이 잘 정의된다면 \(a_{i,j_0(i)}\)를 \(i\)번째 행의 선행계수라 부른다. 추가적으로 만일 다음의 두 조건

  1. 만일 \(a_{i1}, a_{i2},\ldots, a_{in}=0\)이라면, \(i < k\)를 만족하는 모든 \(k\)에 대해 \(a_{k1}, a_{k2},\ldots, a_{kn}=0\)이다.
  2. 만일 \(i < i'\)이며 두 정수 \(j_0(i), j_0(i')\)이 모두 잘 정의된다면 반드시 \(j_0(i) < j_0(i')\)이다.

이 만족된다면, 행렬 \(A\)를 행사다리꼴행렬row échelon matrix, REF이라 부른다. 만일 추가적으로

  1. \(a_{i, j_0(i)}\)가 항상 1이고,
  2. 모든 \(i'\neq i\)에 대해 \(M_{i', j_0(i)}=0\)

이라면, \(A\)를 기약행사다리꼴행렬reduced row échelon matrix, RREF이라 부른다.

따라서 앞선 절에서의 논의를 종합하면 가우스 소거법은 행렬 \(A\)에서 기본행연산을 통해 행사다리꼴행렬, 혹은 더 나아가 기약행사다리꼴행렬을 만드는 과정이라 할 수 있다. 일반적으로 주어진 행렬 \(A\)에서 만들어지는 행사다리꼴은 여러가지가 될 수 있으나, 기약행사다리꼴행렬은 반드시 유일하게 결정된다는 사실이 잘 알려져 있다. 우리는 이 유일성을 사용할 일이 없으므로 증명하지 않는다.

다시 연립방정식 (3)으로 돌아오자. 각 식의 순서를 바꾸거나, 각 식의 양 변에 상수를 곱하는 것, 그리고 각 식의 배수를 다른 식에 더하는 것은 연립방정식을 처음 접했을 때부터 익숙한 풀이이므로 이상하지 않다. 그러나 같은 식을 행렬을 통해 \(Ax=b\)로 적는다면, \(A\)에 적용하는 기본행연산이 왜 \(b\)에도 같은 방식으로 영향을 미치는가는 명확하지 않다. 이제 임의의 \(m\times n\) 행렬이 주어졌다 하고, 몇 개의 \(m\times m\) 행렬을 생각하자.

우선 \(E_{i,j}\)는 \(m\times m\) 단위행렬 \(I\)에서 \(i\)번째와 \(j\)번째 행을 바꾸어 얻어지는 행렬이다. 예를 들어 \(E_{1,2}\)는 다음의 행렬

\[E_{1,2}=\begin{pmatrix}0&1&0&\cdots&0\\1&0&0&\cdots&0\\ 0&0&1&\cdots&0\\\vdots&\vdots&\vdots&\ddots&\vdots\\ 0&0&0&\cdots&1\end{pmatrix}\]

이 된다. 한편, \(E'_{i,r}\)은 \(m\times m\) 단위행렬 \(I\)의 \(i\)번째 행에 \(r\)을 곱하여 얻어지는 행렬이다. 예를 들어 \(E'_{1,r}\)은 다음의 행렬

\[E'_{1,r}=\begin{pmatrix}r&0&0&\cdots&0\\0&1&0&\cdots&0\\ 0&0&1&\cdots&0\\\vdots&\vdots&\vdots&\ddots&\vdots\\ 0&0&0&\cdots&1\end{pmatrix}\]

이 된다. 마지막으로 \(E''_{i,j,r}\)은 \(m\times m\) 단위행렬 \(I\)의 \(j\)행 \(i\)열 성분을 \(r\)로 바꾸어 얻어진 행렬이다. 예를 들어 \(E''_{1,2,r}\)은 다음의 행렬

\[E''_{1,2,r}=\begin{pmatrix}1&0&0&\cdots&0\\r&1&0&\cdots&0\\ 0&0&1&\cdots&0\\\vdots&\vdots&\vdots&\ddots&\vdots\\ 0&0&0&\cdots&1\end{pmatrix}\]

이 된다. 이들을 묶어서 기본행렬이라 부르기도 한다. 이제 \(E_{ij}A\), \(E'_{i,r}A\), \(E''_{i,j,r}A\)를 각각 계산해보면

  1. \(E_{ij}A\)는 \(A\)의 \(i\)번째 행과 \(j\)번째 행을 바꾸어 얻어진 행렬,
  2. \(E'_{i,r}A\)는 \(A\)의 \(i\)번째 행에 상수 \(r\)을 곱하여 얻어진 행렬,
  3. \(E''_{i,j,r}A\)는 \(A\)의 \(j\)번째 행에, (\(i\)행)\(\times r\)을 더하여 얻어진 행렬

이 된다는 것을 쉽게 확인할 수 있다. 즉, 행렬 \(A\)에 기본행연산을 행하는 것은 위에서 정의한 행렬 \(E_{ij}\), \(E_{i,r}'\), 혹은 \(E_{i,j,r}''\)를 곱하는 것과 같으며, 연립방정식 \(Ax=b\)에 위의 조작을 가하는 것은 양 변의 왼쪽에 해당하는 기본행렬 \(E\)를 곱하여 \((EA)x=(Eb)\)를 얻어내는 것과 같다.

기본행렬들 \(E\)는 모두 가역행렬이다. 이는 기본행렬에 해당하는 기본행연산이 수행된 행렬에 다시 기본행연산을 적용하여 원래의 행렬을 얻을 수 있다는 것으로부터 자명하다.

첨가행렬

이제 우리는 임의의 일차연립방정식이 주어졌을 때, 연립방정식을 조작하여 그 해를 구해낼 수 있다. 이 글을 시작하며 살펴봤듯, 임의의 \(n\times n\) 가역행렬의 역행렬을 구하는 것은 \(n\)개의 일차연립방정식을 푸는 것에 지나지 않으므로 역행렬을 구할 때 필요한 식 (1)을 위에서 소개한 방법대로 \(n\)번 반복하면 역행렬 또한 구해낼 수 있다. 지금부터 소개하는 첨가행렬은 오직 표기법상의 편리함과, 그로부터 오는 계산의 편리함을 위해서만 필요한 것이다.

기본적인 아이디어는 가우스 소거법을 행할 때 각 열들은 서로 섞이지 않는다는 것이며, 이는 기본행연산을 위에서 살펴본 기본행렬의 곱으로 생각한다면 행렬의 곱의 정의에 의하여 자명하다고 할 수도 있다. 뿐만 아니라, 가우스 소거법을 할 때, 상수가 존재하는 우변 또한 좌변과 같은 연산을 행하게 되므로, 우변의 성분들을 행렬에 추가하여 한 번에 계산할 수 있다.

예시 5 예시 2에서 주어진 연립방정식

\[\begin{aligned}x_1+2x_2+4x_3+3x_4&=2\\\phantom{x_1+}3x_2\phantom{+2x_3}+6x_4&=3\\\phantom{x_1+2x_2+}x_3+5x_4&=1\end{aligned}\]

을 그대로 사용하자. 우리는 이 연립방정식으로부터 다음의 첨가행렬

\[\begin{pmatrix} 1&2&4&3&2\\ 0&3&0&6&3\\ 0&0&1&5&1\end{pmatrix}\]

을 생각한다. 이 행렬의 가장 오른쪽 열은 연립방정식의 우변에 해당하는 것이며, 나머지는 연립방정식의 변수 앞의 계수에 해당하는 것이다. 이제 이 행렬에 예시 2에서의 연산들을 그대로 적용하자. 우선 마지막 행에 4를 곱한 것을 첫째 행에서 빼 주면 다음의 행렬

\[\begin{pmatrix}1&2&0&-17&-2\\ 0&3&0&6&3\\0&0&1&5&1\end{pmatrix}\]

을 얻는다. 이제 둘째 행에 \(2/3\)을 곱하여 이를 첫째 행에서 빼 주면 다음의 행렬

\[\begin{pmatrix}1&0&0&-21&-4\\0&3&0&6&3\\0&0&1&5&1\end{pmatrix}\]

을 얻고, 둘째 행에 \(1/3\)을 곱해주면

\[\begin{pmatrix}1&0&0&-21&-4\\0&1&0&2&1\\0&0&1&5&1\end{pmatrix}\]

을 얻는다. 이 첨가행렬로부터 다시 연립방정식을 복원하면 이것이 정확히 우리가 예시 2에서 얻은

\[\begin{aligned}x_1\phantom{+2x_2+4x_3}-21x_4&=-4\\\phantom{x_1+}x_2\phantom{+2x_3}+\phantom{1}2x_4&=1\\\phantom{x_1+2x_2+}x_3+\phantom{1}5x_4&=1\end{aligned}\]

임을 안다.

방금 살펴본 예시는 예시 2의 계산과 (편의성 면에서도) 본질적으로 차이가 없다. 유의미한 차이는 역행렬을 구할 때 이를 첨가행렬을 사용함으로써 얻어진다. 이를 위해 연립방정식 (3)을 정의하는 행렬 \(A\)가 \(n\times n\) 가역행렬인 경우를 생각하자. 우선 다음의 보조정리가 자명하다.

보조정리 6 임의의 \(n\times n\) 기약행사다리꼴행렬은 항등행렬이거나, \(0\)으로만 이루어진 열이 존재한다.

앞서 언급한 것처럼 기본행렬들은 모두 가역행렬이며, 우리는 주어진 행렬의 기약행사다리꼴에 우리가 취했던 기본행연산의 역행렬을 순서대로 곱하여 원래의 행렬을 복원할 수 있다. 즉, 만일 어떤 \(n\times n\) 행렬이 \(0\)으로만 이루어진 열을 갖는다면, 이 행렬은 가역행렬이 아니고 따라서 원래의 행렬은 가역행렬이 될 수 없다. 바꿔말하면, \(n\times n\) 행렬의 기약행사다리꼴은 항등행렬이다.

이제 임의의 \(n\times n\) 가역행렬이 주어졌을 때, 우리는 \(n\)개의 연립방정식 \(Av_i=e_i\)를 첨가행렬을 이용하여 한 번에 풀 수 있다. 즉, \(e_1,\ldots, e_n\)을 한 번에 첨가하여 \(2n\times n\) 행렬 \((A\mid I_n)\)을 만든 후, 이를 기약행사다리꼴로 변환하면 뒤쪽 \(n\times n\) 행렬이 원래 행렬의 역행렬이 될 것이다.

예시 7 다음 행렬

\[A=\begin{pmatrix}1&2&4\\ 0&3&0\\ 0&0&1\end{pmatrix}\]

의 역행렬을 구해보자. 첨가행렬은

\[(A\mid I_3)=\begin{pmatrix}1&2&4&1&0&0\\0&3&0&0&1&0\\ 0&0&1&0&0&1\end{pmatrix}\]

이며 우선 마지막 행에 4를 곱한 것을 첫째 행에서 빼 주면 다음의 행렬

\[\begin{pmatrix}1&2&0&1&0&-4\\ 0&3&0&0&1&0\\0&0&1&0&0&1\end{pmatrix}\]

을 얻는다. 이제 둘째 행에 \(2/3\)을 곱하여 이를 첫째 행에서 빼 주면 다음의 행렬

\[\begin{pmatrix}1&0&0&1&-2/3&-4\\0&3&0&0&1&0\\0&0&1&0&0&1\end{pmatrix}\]

을 얻고, 마지막으로 둘째 행에 \(1/3\)을 곱해주면

\[\begin{pmatrix}1&0&0&1&-2/3&-4\\0&1&0&0&1/3&0\\0&0&1&0&0&1\end{pmatrix}\]

을 얻는다. 즉 주어진 행렬 \(A\)의 역행렬은

\[A^{-1}=\begin{pmatrix}1&-2/3&-4\\0&1/3&0\\0&0&1\end{pmatrix}\]

이다.

그러나, (주로 작은 행렬의 경우) 어떠한 행렬이 가역인지 판단하기 위해 가우스 소거법을 매번 적용하는 것은 때때로 비효율적인 일이 될 수도 있다. 다음 글에서 살펴볼 행렬식은 주어진 \(n\times n\) 행렬이 가역인지 아닌지를 결정하는 방법을 알려준다. 그러나, (특히 복잡한 행렬의 경우) 행렬식을 가장 쉽게 계산하는 방법 중 하나는 여전히 가우스 소거법이다. (§행렬식의 존재성과 유일성, ⁋명제 9)


참고문헌

[Lee] 이인석, 선형대수와 군, 서울대학교 출판문화원, 2005.


댓글남기기