라플라스 전개

선형대수학에서 **라플라스 전개**(-展開, ) 또는 **여인자 전개**(餘因子展開, )는 행렬식을 더 작은 두 행렬식과 그에 맞는 부호를 곱한 것들의 합으로 전개하는 것이다.

## 내용
### 소행렬식과 여인자

 정사각행렬 의  **소행렬식** 는 의 행과 열을 지워서 얻어진 행렬식이다. 의 **여인자** 는 거기에 1 또는 -1을 값으로 하는 계수 를 곱한 것이다. 즉,

:C_{ij} = (-1)^{i+j}M_{ij}

예를 들어 행렬

:A =
\begin{bmatrix}
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9
\end{bmatrix}

의  소행렬식과 여인자는 각각 다음과 같다.

:M_{23} =
\begin{vmatrix}
1 & 2 & \Box \\
\Box & \Box & \blacksquare \\
7 & 8 & \Box
\end{vmatrix} = \begin{vmatrix}
1 & 2 \\
7 & 8
\end{vmatrix} = -6

:C_{23} = (-1)^{2+3}
\begin{vmatrix}
1 & 2 \\
7 & 8
\end{vmatrix}
= -\begin{vmatrix}
1 & 2 \\
7 & 8
\end{vmatrix} = 6

### 라플라스 전개
 행렬 의 행렬식은 고정된 행의 각 항과 그의 여인자의 곱으로 전개할 수 있다.

:|A| = \sum_{j=1}^n a_{ij}C_{ij}

비슷하게, 고정된 열에 대하여 전개할 수 있다.

:|A| = \sum_{i=1}^n a_{ij}C_{ij}

### 고전적 수반 행렬
서로 다른 행의 항과 여인자를 붙여 전개하면 0이 된다.

:\sum_{j=1}^n a_{ij}C_{kj} = 0\qquad(i\ne k)

비슷하게, 서로 다른 열의 항과 여인자를 붙여 전개하면 0이 된다.

:\sum_{i=1}^n a_{ij}C_{ik} = 0\qquad(j\ne k)

즉,

:\sum_{j=1}^n a_{ij}C_{kj} = \delta_{ik}|A|
:\sum_{i=1}^n a_{ij}C_{ik} = \delta_{jk}|A|

여기서 \delta는 크로네커 델타이다. 정리하면, 행렬과 그 고전적 수반 행렬의 곱은 다음과 같다.

:A\operatorname{adj}A=(\operatorname{adj}A)A=|A|I

### 여러 행에 대한 전개
라플라스 전개는 임의의 개의 행에 대한 전개로 일반화할 수 있다. 즉, 다음과 같은 대상들이 주어졌다고 하자.

* , 는 의 원소 부분 집합이다. 즉, 개의 행과 열을 뜻한다.
* 는 에서 행 첨수가 에, 열 첨수가 에 있는 원소만을 골라내어 얻는 행렬식이다.
* 는 에서 행 첨수가 에, 열 첨수가 에 있는 원소만을 제거하여 얻는 행렬식이다.

그렇다면, 행렬식은 고정된 개의 행 에 대하여 다음과 같이 전개된다.

:|A| = \sum_{|J|=k} (-1)^{\sum I+\sum J} A_{I,J}M_{I,J}

비슷하게, 행렬식은 고정된 개의 열 에 대하여 다음과 같이 전개된다.

:|A| = \sum_{|I|=k} (-1)^{\sum I+\sum J} A_{I,J}M_{I,J}

여러 행에 대한 라플라스 전개는 필산하기에 복잡하나, 이론적으로 유용하다.

## 예
3 × 3 행렬

:A = \begin{bmatrix}
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9 \end{bmatrix}

의 행렬식은 1행에 대한 라플라스 전개를 통해 다음과 같이 계산할 수 있다.

:\begin{align}|A|
&= (-1)^{1+1}1\begin{vmatrix}
5 & 6 \\
8 & 9 \end{vmatrix}+(-1)^{1+2}2\begin{vmatrix}
4 & 6 \\
7 & 9 \end{vmatrix}+(-1)^{1+3}3\begin{vmatrix}
4 & 5 \\
7 & 8 \end{vmatrix} \\
&= 1(-3) - 2(-6) + 3(-3) \\
&= 0\end{align}

2열에 대하여 전개해도 결과는 같다.

:\begin{align}|A|
&= (-1)^{2+1}2\begin{vmatrix}
4 & 6 \\
7 & 9 \end{vmatrix}+(-1)^{2+2}5\begin{vmatrix}
1 & 3 \\
7 & 9 \end{vmatrix}+(-1)^{2+3}8\begin{vmatrix}
1 & 3 \\
4 & 6 \end{vmatrix} \\
&= - 2(-6) + 5(-12) - 8(-6) \\
&= 0\end{align}

물론, 는 1행과 3행의 합이 2행의 2배이므로, 특이 행렬이다. 따라서, 행렬식은 당연히 위 계산대로 0이다.

4 × 4 행렬

:A=\begin{bmatrix}
1 &  2 & 1 & 4 \\
0 & -1 & 2 & 1 \\
1 &  0 & 1 & 3 \\
0 &  1 & 3 & 1 \end{bmatrix}

의 행렬식은 1행에 대한 전개를 통해 계산할 수 있다. 먼저 소행렬식 M_{11}, M_{12}, M_{13}, M_{14}는 모두 3 × 3 행렬식이므로 역시 다음과 같이 라플라스 전개를 통해 계산할 수 있다.

:\begin{align}M_{11}&=\begin{vmatrix}
-1 &  2 &  1 \\
 0 &  1 &  3 \\
 1 &  3 &  1 \end{vmatrix}=-1\begin{vmatrix}
 1 &  3 \\
 3 &  1 \end{vmatrix} -2\begin{vmatrix}
 0 &  3 \\
 1 &  1 \end{vmatrix} +1\begin{vmatrix}
 0 &  1 \\
 1 &  3 \end{vmatrix}\\
&=-1(1-9)-2(0-3)+1(0-1)=13\end{align}

:\begin{align}M_{12}&=\begin{vmatrix}
 0 &  2 &  1 \\
 1 &  1 &  3 \\
 0 &  3 &  1 \end{vmatrix}=0\begin{vmatrix}
 1 &  3 \\
 3 &  1 \end{vmatrix} -2\begin{vmatrix}
 1 &  3 \\
 0 &  1 \end{vmatrix} +1\begin{vmatrix}
 1 &  1 \\
 0 &  3 \end{vmatrix}\\
&=-2(1-0)+1(3-0)=1\end{align}

:\begin{align}M_{13}&=\begin{vmatrix}
 0 & -1 &  1 \\
 1 &  0 &  3 \\
 0 &  1 &  1 \end{vmatrix}=0\begin{vmatrix}
 0 &  3 \\
 1 &  1 \end{vmatrix}-(-1)\begin{vmatrix}
 1 &  3 \\
 0 &  1 \end{vmatrix}+1\begin{vmatrix}
 1 &  0 \\
 0 &  1 \end{vmatrix}\\
&=1(1-0)+1(1-0)=2\end{align}

:\begin{align}M_{14}&=\begin{vmatrix}
 0 & -1 &  2 \\
 1 &  0 &  1 \\
 0 &  1 &  3 \end{vmatrix}=0\begin{vmatrix}
 0 &  1 \\
 1 &  3 \end{vmatrix}-(-1)\begin{vmatrix}
 1 &  1 \\
 0 &  3 \end{vmatrix}+2\begin{vmatrix}
 1 &  0 \\
 0 &  1 \end{vmatrix}\\
&=1(3-0)+2(1-0)=5\end{align}

따라서, 행렬식은 다음과 같다.

:|A| = 1M_{11} - 2M_{12} + 1M_{13} - 4M_{14} = 13 - 2 + 2 - 20 = -7

### 여러 행에 대한 전개
위 4 × 4 행렬

:A=\begin{bmatrix}
1 &  2 & 1 & 4 \\
0 & -1 & 2 & 1 \\
1 &  0 & 1 & 3 \\
0 &  1 & 3 & 1
\end{bmatrix}

의 행렬식은 1행과 2행에 대한 라플라스 전개를 통해 다음과 같이 계산할 수 있다.

:\begin{array}{rcl}|A|
&=&(-1)^{1+2+1+2}\begin{vmatrix}1 & 2 \\ 0 & -1 \end{vmatrix}\begin{vmatrix}1 & 3 \\ 3 & 1 \end{vmatrix}
   +(-1)^{1+2+1+3}\begin{vmatrix}1 & 1 \\ 0 & 2 \end{vmatrix}\begin{vmatrix}0 & 3 \\ 1 & 1 \end{vmatrix}
   +(-1)^{1+2+1+4}\begin{vmatrix}1 & 4 \\ 0 & 1 \end{vmatrix}\begin{vmatrix}0 & 1 \\ 1 & 3 \end{vmatrix} \\
& &{}+(-1)^{1+2+2+3}\begin{vmatrix}2 & 1 \\ -1 & 2 \end{vmatrix}\begin{vmatrix}1 & 3 \\ 0 & 1 \end{vmatrix}
   +(-1)^{1+2+2+4}\begin{vmatrix}2 & 4 \\ -1 & 1 \end{vmatrix}\begin{vmatrix}1 & 1 \\ 0 & 3 \end{vmatrix}
   +(-1)^{1+2+3+4}\begin{vmatrix}1 & 4 \\ 2 & 1 \end{vmatrix}\begin{vmatrix}1 & 0 \\ 0 & 1 \end{vmatrix} \\
&=&(-1)(-8) - 2(-3) + 1(-1) + 51 -63 + (-7)1\\
&=&-7
\end{array}

## 증명
k\in\{1,\ldots,n\}에 대하여, 다음과 같은 함수 \mu_k를 정의하자.
:\mu_k\colon\{1,\ldots,n-1\}\to\{1,\ldots,n\}
:\mu_k\colon x\mapsto\begin{cases}x&x\in\{1,\ldots,k-1\}\\x+1&x\in\{k,\ldots,n-1\}\end{cases}
즉, \mu_k는 k 이상의 원소들을 뒤로 한 칸 밀며, 나머지 원소들은 움직이지 않는다. 그렇다면, 함수
:\{\sigma\in S_n\colon\sigma_i=j\}\to S_{n-1}
:\sigma\mapsto\mu_j^{-1}\sigma\mu_i
는 일대일 대응이다.

행렬식의 라이프니츠 공식 속, a_{ij}를 포함하는 항
:\sgn\sigma\,a_{1\sigma_1}\cdots a_{ij}\cdots a_{n\sigma_n}
을 생각하자. 또한,
:\tau=\mu_j^{-1}\sigma\mu_i\in S_{n-1}
:\tau'=\tau\mu_j^{-1}\sqcup\operatorname{id}_{\{j\}}\in S_n
라고 하자. 그렇다면,
:\sgn\tau=\sgn\tau'
이며,
:\sigma=\nu\tau'
:\nu=\begin{cases}\operatorname{id}_{\{1,\ldots,n\}}& i=j\\
(\sigma_j,\sigma_{j-1},\ldots,\sigma_{i+2},\sigma_{i+1},j)&ij\end{cases}\in S_n
이다. 또한, \nu는 |i-j|개의 호환으로 표현할 수 있으므로,
:\sgn\sigma=(-1)^\sgn\tau'=(-1)^{i+j}\sgn\tau
이다. 따라서,
:\begin{align}|A|
&=\sum_{\sigma\in S_n}\sgn\sigma\,a_{1\sigma_1}\cdots a_{n\sigma_n}\\
&=\sum_{j=1}^n\sum_{\sigma_i=j}\sgn\sigma\,a_{i\sigma_1}\cdots a_{ij}\cdots a_{n\sigma_n}\\
&=\sum_{j=1}^n\sum_{\tau\in S_{n-1}}(-1)^{i+j}\sgn\tau\,a_{i\sigma_1}\cdots a_{ij}\cdots a_{n\sigma_n}\\
&=\sum_{j=1}^n(-1)^{i+j}a_{ij}\sum_{\tau\in S_{n-1}}\sgn\tau\,a_{i\sigma_1}\cdots a_{i-1,\sigma_{i-1}}a_{i+1,\sigma_{i+1}}\cdots a_{n\sigma_n}\\
&=\sum_{j=1}^n(-1)^{i+j}a_{ij}M_{ij}\\
&=\sum_{j=1}^na_{ij}C_{ij}\end{align}

### 여러 행에 대한 전개
위 증명과 비슷하게, 다음 대상들을 정의하자. ([n]=\{1,\ldots,n\})
* k원소 집합 K\subseteq[n]에 대하여, \mu_K\colon[n-k]\to[n]은 의 원소들을 뒤로 밀어 K의 원소들에 공백이 생기도록 하는 함수이다.
* 일대일 대응
*:\{\sigma\in S_n\colon \sigma(I)=J\}\to S_k\times S_{n-k}
*:\sigma\mapsto(\mu_{\sigma([n]\setminus I)}^{-1}\sigma\mu_{[n]\setminus I},\mu_J^{-1}\sigma\mu_I)
행렬식의 라이프니츠 공식에서, \sigma(I)=J인 항
:\sgn\sigma\,a_{1\sigma_1}\cdots a_{n\sigma_n}
을 생각하자. 또한,
:\tau_1=\mu_{\sigma([n]\setminus I)}^{-1}\sigma\mu_{[n]\setminus I}\in S_k
:\tau_2=\mu_J^{-1}\sigma\mu_I\in S_{n-k}
를 정의하자. 그렇다면, \sigma는 다음과 같이 \operatorname{id}_n으로 환원된다.
* \sigma(I)의 원소를 순서대로 돌려 놓는다. 치환의 부호는 \sgn\tau_1과 같다.
* \sigma([n]\setminus I)의 원소를 순서대로 돌려 놓는다. 치환의 부호는 \sgn\tau_2와 같다.
* i\in I에 대하여, \sigma(i)를 i번째로 돌려 놓는다. 치환의 부호는 (-1)^{\sum I+\sum J}와 같다.
그러므로,
:\sgn\sigma=(-1)^{\sum I+\sum J}\sgn\tau_1\sgn\tau_2
이며, 따라서
:\begin{align}|A|
&=\sum_{\sigma\in S_n}\sgn\sigma\,a_{1\sigma_1}\cdots a_{n\sigma_n}\\
&=\sum_{|J|=k}\sum_{\sigma(I)=J}\sgn\sigma\,a_{1\sigma_1}\cdots a_{n\sigma_n}\\
&=\sum_{|J|=k}\sum_{\sigma(I)=J}(-1)^{\sum I+\sum J}\sgn\tau_1\sgn\tau_2\,a_{1\sigma_1}\cdots a_{n\sigma_n}\\
&=\sum_{|J|=k}(-1)^{\sum I+\sum J}\left(\sum_{\sigma(I)=J}\sgn\tau_1\prod_{i\in I}a_{i\sigma_i}\right)\left(\sum_{\sigma(I)=J}\sgn\tau_2\prod_{i\in[n]\setminus I}a_{i\sigma_i}\right)\\
&=\sum_{|J|=k}(-1)^{\sum I+\sum J}\left(\sum_{\tau_1\in S_k}\sgn\tau_1\prod_{i\in I}a_{i\sigma_i}\right)\left(\sum_{\tau_2\in S_{n-k}}\sgn\tau_2\prod_{i\in[n]\setminus I}a_{i\sigma_i}\right)\\
&=\sum_{|J|=k}(-1)^{\sum I+\sum J}A_{I,J}M_{I,J}\end{align}

## 역사
알렉상드르테오필 방데르몽드는 행렬식의 두 행에 대한 전개를 제시하였다. 피에르시몽 라플라스는 1772년 논문 《Recherches sur Ie calcul integral et sur Ie systeme
du monde,》에서 행렬식 전개를 임의 개수 행에 대한 전개로 일반화하였다. 오귀스탱 루이 코시는 라플라스의 전개 정리를 더 현대적인 용어로 서술·증명하였다.

## 같이 보기
* 행렬식
* 벡터곱

## 각주

## 참고 문헌
* 

분류:행렬론
분류:행렬식