余因子行列
数学の線形代数学において、n次正方行列 A の余因子行列(よいんしぎょうれつ、adjugate matrix)あるいは古典随伴行列(こてんずいはんぎょうれつ、classical adjoint matrix)とは、(i, j)成分が (i, j)余因子である行列の転置行列のことであり、記号で \operatorname{adj}(A), \operatorname{Cof}(A), \widetilde{A} などで表す。これはn次正方行列になる。
単に (i, j)成分が (i, j)余因子である行列(転置をしない)を「余因子行列」と呼ぶ場合もある。随伴行列や随伴作用素とは異なる。
余因子行列により、正則行列の逆行列を具体的に成分表示することができる。
可換環 R 上の n次正方行列 A  (ai,j) の余因子行列とは、(i, j)成分が (j, i)余因子である n次正方行列のことであり、記号で \operatorname{adj}(A), \widetilde{A} などで表す。
A の (i,j)小行列式を Mi,j で表すことにする。これは、A の第i行、第j列を除いてできる (n − 1)次小正方行列の行列式である:
\operatorname{adj}(A) = (b_{i,j}), \quad b_{i,j} =(-1)^{i+j} M_{j,i}
A の (i,j)余因子を ai,j で表すと、
\widetilde{a}_{i,j} = (-1)^{i+j} M_{i,j}
\operatorname{adj}(A) = (b_{i,j}), \quad b_{i,j} = (\widetilde{a}_{j,i})
A を余因子展開は、A の余因子行列 A により、次のように表せる:
A\widetilde{A} = \widetilde{A}A = (\det (A))I
ここで I は単位行列である。
A が特に正則行列のとき、A の逆行列は余因子行列 A で表せる:
A^{-1} = \frac{1}{\det(A)} \widetilde{A}
1次正方行列 A  (a) の余因子行列は、A が零行列でないときは、1次単位行列
I = \begin{bmatrix}1\end{bmatrix}
である。\operatorname{adj}(0) は慣習上 0 とする。
A = \begin{bmatrix}
a &b \\
c &d
\end{bmatrix}
\operatorname{adj}(A) = \begin{bmatrix}
d  &-b \\
-c &a
\end{bmatrix}
なお、この 2次の場合は \operatorname{adj}\operatorname{adj} A=A が成り立つ。
A = \begin{bmatrix}
a_{11} &a_{12} &a_{13} \\
a_{21} &a_{22} &a_{23} \\
a_{31} &a_{32} &a_{33}
\end{bmatrix}
の余因子行列を考える。(i, j)成分に (i, j)余因子を並べたものは、
C = \begin{bmatrix}
+\begin{vmatrix} a_{22} &a_{23} \\ a_{32} &a_{33} \end{vmatrix}
&-\begin{vmatrix} a_{21} &a_{23} \\ a_{31} &a_{33} \end{vmatrix}
&+\begin{vmatrix} a_{21} &a_{22} \\
a_{31} &a_{32} \end{vmatrix} \\
& & \\
-\begin{vmatrix} a_{12} & a_{13} \\ a_{32} &a_{33} \end{vmatrix}
&+\begin{vmatrix} a_{11} & a_{13} \\ a_{31} &a_{33} \end{vmatrix}
&-\begin{vmatrix} a_{11} & a_{12} \\ a_{31} &a_{32} \end{vmatrix} \\
& & \\
+\begin{vmatrix} a_{12} &a_{13} \\ a_{22} &a_{23} \end{vmatrix}
&-\begin{vmatrix} a_{11} &a_{13} \\ a_{21} &a_{23} \end{vmatrix}
&+\begin{vmatrix} a_{11} &a_{12} \\ a_{21} &a_{22} \end{vmatrix}
\end{bmatrix},
\begin{vmatrix}
a_{im} &a_{in} \\
a_{jm} &a_{jn}
\end{vmatrix}=\det\begin{bmatrix}
a_{im} &a_{in} \\
a_{jm} &a_{jn}
\end{bmatrix}=\det\begin{vmatrix}
a_{im} &a_{in} \\
a_{jm} &a_{jn}
\end{vmatrix}
である。余因子行列はこれの転置行列であるから、
\operatorname{adj}(A) = C^\mathsf{T} = \begin{bmatrix}
+\begin{vmatrix} a_{22} &a_{23} \\ a_{32} &a_{33} \end{vmatrix}
&-\begin{vmatrix} a_{12} &a_{13} \\ a_{32} &a_{33} \end{vmatrix}
&+\begin{vmatrix} a_{12} &a_{13} \\ a_{22} &a_{23} \end{vmatrix} \\
& & \\
-\begin{vmatrix} a_{21} &a_{23} \\ a_{31} &a_{33} \end{vmatrix}
&+\begin{vmatrix} a_{11} &a_{13} \\ a_{31} &a_{33} \end{vmatrix}
&-\begin{vmatrix} a_{11} &a_{13} \\ a_{21} &a_{23} \end{vmatrix} \\
& & \\
+\begin{vmatrix} a_{21} &a_{22} \\ a_{31} &a_{32} \end{vmatrix}
&-\begin{vmatrix} a_{11} &a_{12} \\ a_{31} &a_{32} \end{vmatrix}
&+\begin{vmatrix} a_{11} &a_{12} \\ a_{21} &a_{22} \end{vmatrix}
\end{bmatrix}
例えば、実3次正方行列
A= \begin{bmatrix}
-3 &2  &-5 \\
-1 &0  &-2 \\
3 &-4 &1
\end{bmatrix}
の余因子行列は、
\operatorname{adj} A = \begin{bmatrix}
-8 &18 &-4 \\
-5 &12 &-1 \\
4 &-6 & 2
\end{bmatrix}
となる。実際、余因子行列の (2,3)成分は (3,2)余因子であり、それは (3,2)小行列式(第3行、第2列を除いた小行列の行列式)に符号を掛けたものに等しい:
(-1)^{3+2}\operatorname{det}\begin{bmatrix}
-3 &-5 \\
-1 &-2
\end{bmatrix}=-(-3 \cdot -2 - -5 \cdot -1)=-1
A を n次正方行列とする。
\operatorname{adj}(O) = O(O は零正方行列)
\operatorname{adj}(I) = I(I は単位行列)
\operatorname{adj}(cA) = c^{n-1}\operatorname{adj}(A)(c はスカラー)
\operatorname{adj}(A^\mathsf{T}) = \operatorname{adj}(A)^\mathsf{T}(T は転置を表す)
\det(\operatorname{adj}(A)) = (\det A)^{n-1}
A が正則なら、\operatorname{adj}(A) = (\det A) A^{-1}
これから次が導かれる:
adj(A−1) = adj(A)−1.
adj(A) の各成分は A の成分の多項式である。特に、実数体または複素数体上では、adj(A) の各成分は、A の成分の滑らかな関数である。
複素数体上では、
\operatorname{adj}(\overline{A}) = \overline{\operatorname{adj}(A)}(   は複素共役を表す)
\operatorname{adj}A^* = (\operatorname{adj}A)^*(* は随伴行列を表す)
B をもう1つの n次正方行列とする。
\operatorname{adj}(AB) = \operatorname{adj}(B)\operatorname{adj}(A)
この証明には、2つの方法がある。1つは、コーシー・ビネの公式により直接計算する方法である。もう1つの方法は、正方行列 A, B に余因子展開の等式を利用する方法である:
\begin{align}
(\det AB)\widetilde{AB} &=(\det A)I \times (\det B)I \times \widetilde{AB} \\
&=(\det A)I \times \widetilde{B}B \times \widetilde{AB} \\
&=\widetilde{B} \times (\det A)I \times B \times\widetilde{AB} \\
&=\widetilde{B} \times \widetilde{A}A \times B \times \widetilde{AB} \\
&=\widetilde{B}\widetilde{A} \times (AB)\widetilde{AB} \\
&=\widetilde{B}\widetilde{A} \times \det(AB)I \\
&=\det(AB)\widetilde{B}\widetilde{A} \\
\end{align}
両辺を多項式として det AB で割ると AB  BA を得る。(証明終)
これより、行列の冪乗について次が成り立つ:
\operatorname{adj}(A^k) = (\operatorname{adj} A)^k(k は 0 以上の整数)
A が正則なら、この等式は k が負の整数の場合についても成り立つ。
A\operatorname{adj}(A+B)B=B\operatorname{adj}(A+B)A
(A+B)\operatorname{adj}(A+B)B = \det(A+B)B = B\{\operatorname{adj}(A+B)\}(A+B)
から導かれる。
(A のある小行列式は 0 でない、故に adj(A) は 0 でなく、したがって、階数は 1 以上である。等式 adj(A) A = 0 は、adj(A) の核の次元は n − 1 以上であることを意味する。故に、adj(A) の階数は 1 以下である。)
このとき、adj(A) は次のように表せる:
adj(A) = xyT(x, y は A\boldsymbol{x} = \boldsymbol{o} かつ {}^tA\boldsymbol{y} = \boldsymbol{o} を満たすベクトルである)
A の列ベクトル表示を
A = (\boldsymbol{a}_1 \ \cdots \ \boldsymbol{a}_n)
とし、b を n次列ベクトルとする。固定された 1 ≤ j ≤ n に対し、A の第 j列を b で置き換えた行列を次の記号で定義する:
(A \stackrel{j}{\leftarrow} \boldsymbol{b})\ \stackrel{\text{def}{=}\ \begin{pmatrix}
\boldsymbol{a}_1 &\cdots &\boldsymbol{a}_{j-1} &\boldsymbol{b} &\boldsymbol{a}_{j+1} &\cdots & \boldsymbol{a}_n
\end{pmatrix}
この行列の行列式を第j列に関して余因子展開し、それらを集めてできる列ベクトルは、積 adj(A)b に等しくなる:
\left(\det(A \stackrel{j}{\leftarrow} \boldsymbol{b})\right)_{j=1}^n = \operatorname{adj}(A)\boldsymbol{b}
この等式は、具体的な結果を生む。線形方程式系
A\boldsymbol{x} = \boldsymbol{b}
を考える。A を正則と仮定する。この方程式に左から adj(A) を掛け、det(A) (≠ 0) で割ると
\boldsymbol{x} = \frac{1}{\det A} (\operatorname{adj}A) \boldsymbol{b}
ここでクラメルの公式を適用すると、
x_i = \frac{\det(A \stackrel{i}{\leftarrow} \boldsymbol{b})}{\det A}
ここで xi は x の第i成分である。
A の固有多項式を
p(s) = \det(sI-A) = \textstyle\sum\limits_{i=0}^n p_i s^i \in R[s]
とすると、
p の第一差商は、n − 1次対称式になる:
\Delta p(s,t) = \frac{p(s)-p(t)}{s-t} = \textstyle\sum\limits_{0 \le j+k<n} p_{j+k+1} s^j t^k \in R[s, t]
sI − A の余因子行列積は、ケイリー・ハミルトンの定理 p(A)  O より、
\operatorname{adj}(sI-A) = \Delta p(sI,A)
特に、A の レゾルベントは次の式で定義される:
R(z;A) = (zI-A)^{-1}
さらに上記の等式より、これは次の式に等しい:
R(z;A) = \frac{\Delta p(zI, A)}{p(z)}
行列式を微分すると、ヤコビの公式 (Jacobi's formula) により、余因子行列が現れる。A(t) は連続的微分可能なら、
\frac{d}{dt}(\det A(t)) = \operatorname{tr}\left(\operatorname{adj}(A(t)) A'(t)\right)
これより、行列式の全微分は、余因子行列の転置になる:
d(\det A)_{A_0} = \operatorname{adj}(A_0)^{\mathsf{T}
pA(t) を線形変換 A の固有多項式とする。ケイリー・ハミルトンの定理とは、t を A に置き換えて得られる正方行列が零行列になることをいう:
p_A (A) = O
定数項を分離し両辺に adj(A) を掛けることで、余因子行列は A と pA(t) の係数だけで表される。完全指数関数的ベル多項式を使うと、これらの係数はA の冪の跡の項で具体的に表せ、次のようになる:
\operatorname{adj}(A) = \textstyle\sum\limits_{s=0}^{n-1} A^s \sum\limits_{k_1, \cdots, k_{n-1} \prod\limits_{\ell=1}^{n-1} \dfrac{(-1)^{k_\ell+1}{\ell^{k_\ell}k_{\ell}!}\operatorname{tr}(A^\ell)^{k_\ell}
ここで n は A の次数、総和 ∑ の s, 数列 kl ≥ 0 は次の 1次ディオファントス方程式を満たしながら取るものとする:
s+\textstyle\sum\limits_{\ell=1}^{n-1} \ell k_\ell = n-1
特に 2次の場合は、次のようになる:
\operatorname{adj}(A)=I_2\left(\operatorname{tr} A\right) -A
\operatorname{adj}(A)=\frac{1}{2}I_3\left( (\operatorname{tr}A)^2-\operatorname{tr}A^2\right) -A\left(\operatorname{tr} A\right) + A^2
\operatorname{adj}(A)=
\frac{1}{6}I_4 \left((\operatorname{tr}A)^3 -3\operatorname{tr}A\operatorname{tr}A^2 +2\operatorname{tr}A^3 \right)
- \frac{1}{2} A\left((\operatorname{tr}A)^2 -\operatorname{tr}A^2 \right)
+ A^2 \left(\operatorname{tr}A\right)
- A^3
上記の表示式は、A の固有多項式を効率良く求めることのできる、Faddeev–LeVerrier algorithmの最後の段階からも直接導出することができる。
余因子行列は、外積代数の抽象的な用語を使うことで表示することができる。V を n次元ベクトル空間とする。ベクトルの外積により双線形対が得られる:
V \times \wedge^{n-1} V \to \wedge^n V
ベクトルの外積は完全対である。それ故、それは同型写像を引き起こす:
\phi \colon V\ \xrightarrow{\cong}\ \operatorname{Hom}(\wedge^{n-1} V, \wedge^n V)
明示すると、この対は、v ∈ V を \phi_{\boldsymbol{v} に写す:
\phi_\boldsymbol{v}(\alpha) = \boldsymbol{v} \wedge \alpha \qquad (\alpha \in \wedge^{n-1} V)
T : V → V を線形変換とする。T の(n − 1)次外冪による引き戻しは線形変換空間の射を作る。このとき T の余因子変換は次の合成で定義される:
V\ \xrightarrow{\phi}\ \operatorname{Hom}(\wedge^{n-1} V, \wedge^n V)\ \xrightarrow{(\wedge^{n-1} T)^*}\ \operatorname{Hom}(\wedge^{n-1} V, \wedge^n V)\ \xrightarrow{\phi^{-1}\ V
V = Rn に 基底 (e1, …, en) が与えられていて、T のこの基底に関する表現行列は A であるとき、T の余因子変換は A の余因子行列である。何故正しいのか考えてみるに、\wedge^{n-1} \mathbb{R}^n の基底を取る:
\{ \boldsymbol{e}_1 \wedge \dots \wedge \hat\boldsymbol{e}_k \wedge \dots \wedge \boldsymbol{e}_n \}_{k=1}^n
Rn の基底元 ei を固定する。ei の \phi による像は、\wedge^{n-1} \mathbb{R}^n の基底ベクトルの移る先を決定する:
\phi_{\boldsymbol{e}_i}(\boldsymbol{e}_1 \wedge \dots \wedge \hat\boldsymbol{e}_k \wedge \dots \wedge \boldsymbol{e}_n)
= \begin{cases}
(-1)^{i-1} \boldsymbol{e}_1 \wedge \dots \wedge \boldsymbol{e}_n, &\text{if}\ k=i, \\
0 &\text{otherwise.}
\end{cases}
この基底で、T の (n − 1)次外冪 (\wedge^{n-1} T)^* は次のように表せる:
\boldsymbol{e}_1 \wedge \dots \wedge \hat\boldsymbol{e}_j \wedge \dots \wedge \boldsymbol{e}_n \mapsto \textstyle\sum\limits_{k=1}^n (\det A_{jk}) \,\boldsymbol{e}_1 \wedge \dots \wedge \hat\boldsymbol{e}_k \wedge \dots \wedge \boldsymbol{e}_n
これらのそれぞれの項の \phi_{\boldsymbol{e}_i} による像は、k = i の項を除いて 0 になる。それ故、\phi_{\boldsymbol{e}_i} の引き戻しは次の線形写像になる:
\boldsymbol{e}_1 \wedge \dots \wedge \hat\boldsymbol{e}_j \wedge \dots \wedge \boldsymbol{e}_n \mapsto (-1)^{i-1} (\det A_{ji}) \boldsymbol{e}_1 \wedge \dots \wedge \boldsymbol{e}_n
これは次に等しくなる:
\textstyle\sum\limits_{j=1}^n (-1)^{i+j} (\det A_{ji})\phi_{\boldsymbol{e}_j}
\phi の逆写像を適用することより、T の余因子変換は次の式で与えられる線形変換であると分かる:
\boldsymbol{e}_i \mapsto \textstyle\sum\limits_{j=1}^n (-1)^{i+j}(\det A_{ji})\boldsymbol{e}_j
故に、その表現行列は A の余因子行列である。
V に内積と体積形式が与えられていたら、この写像 φ はさらに分解される。この場合、φ はホッジ双対と双対化の合成ととらえることができる。特に、ω が体積形式のとき、それは内積とともに同型写像を引き起こす:
\omega^\vee \colon \wedge^n V \to \mathbb{R}
これは同型写像を引き起こす:
\operatorname{Hom}(\wedge^{n-1} \mathbb{R}^n, \wedge^n \mathbb{R}^n) \cong \wedge^{n-1} (\mathbb{R}^n)^\vee
v ∈ Rn は次の線型汎函数に一致する:
(\alpha \mapsto \omega^\vee(\mathbf{v} \wedge \alpha)) \in \wedge^{n-1} (\mathbb{R}^n)^\vee
ホッジ双対の定義により、この線型汎函数は *v と双対である。つまり、ω∨ ∘ φ は v ↦ *v∨ と見なせる。
A を n次正方行列とし、r ≥ 0 を固定する。A の r階余因子行列とは、\textstyle\binom{n}{r} 次正方行列であり、adjr A で表す。その成分は 1, …, m の r 個元からなる部分集合 I, J から番号を取るものとする。Ic, Jc はそれぞれ I, J の補集合を表すものとする。A_{I^c, J^c} は、行番号、列番号がそれぞれ Ic, Jc から取られる、A の小行列を表すとする。adjr A の (I, J) 成分は次の式で定義される:
(-1)^{\sigma(I) + \sigma(J)} \det A_{J^c, I^c}
ここで σ(I), σ(J) はそれぞれ I, J の元の総和を表すとする。
高階余因子行列の基本的な性質として以下がある:
\operatorname{adj}_r (A) C_r (A) = C_r (A) \operatorname{adj}_r (A) = (\det A) I_{\binom{n}{r}(Cr(A) は r次複合行列を表す)
高階余因子行列は通常の余因子行列と同様に、抽象代数学の言葉を用いても定義できる。V, \wedge^{n-1} V をそれぞれ \wedge^r V, \wedge^{n-r} V に置き換えることでできる。
正則行列 A について、余因子行列の反復合成を取ることにより、r次余因子行列を考えることができる:
\underbrace{\operatorname{adj}\cdots\operatorname{adj}_k \,A = (\det A)^{\frac{(n-1)^k-(-1)^k}n} A^{(-1)^k}
\det(\underbrace{\operatorname{adj}\cdots\operatorname{adj}_k \,A) = (\det A)^{(n-1)^k}
例えば、
\operatorname{adj} \operatorname{adj} A = (\det A)^{n-2} A
\det(\operatorname{adj} \operatorname{adj} A) = (\det A)^{(n-1)^2}