Lilliput Steps

小さな一歩から着実に. 数学やプログラミングのことを書きます.

半正定値行列の平方根行列の存在と一意性

 n次の対称行列 A \in \mathbb{S}^{n} を考えます。 Aが任意の \boldsymbol{x} \in \mathbb{R}^nに対して

 \boldsymbol{x}^\top A \boldsymbol{x} \geq 0

を満たすとき、 Aを半正定値(対称)行列といい、 Aが半正定値(対称)行列であるとき A \succeq Oと表記します。

 A \succeq Oのとき、ある B \succeq O があり A = B^2が成り立ちます。このような Bは一意に存在し、 A平方根行列といいます。 A \succeq O平方根行列を \sqrt{A}と表記します。今回はこの事実を証明します。

 Bが存在すること

 Aが対称行列なので、直交行列 Uが存在し、

 A = U \Lambda U^\top

と書くことができます。ここで \Lambda = {\rm diag}(\lambda_1, \ldots, \lambda_n) A固有値 \lambda_1, \ldots, \lambda_nを並べた対角行列です。
ここで、 Aが対称行列であることから \lambda_iは実数です。また、 Aが半正定値行列であることから、各 iに対して \lambda_i \geq 0となることが従います。したがって、
 R := {\rm diag}(\sqrt{\lambda_1}, \ldots, \sqrt{\lambda_n})

とおき、
 B = U R U^\top

とすると、
 B^2 = U R U^\top U R U^\top = U R^2 U^\top = U \Lambda U^\top = A

が成り立ちます。

 Bの一意性

 B, C \succeq O B^2 = C^2 = Aをみたすとき B = Cであることを示します。 B \neq Cと仮定します。すると、非零固有値 \lambda及び固有ベクトル \boldsymbol{u}が存在し

 (B - C)\boldsymbol{u} = \lambda\boldsymbol{u}

が成立します。( B - Cは対称行列なので全ての固有値は実数で、ある直交行列 \tilde{U}により対角化できます。すべての固有値 0 だとすると、 B - C = \tilde{U} O \tilde{U}^\top = Oとなり B \neq Cに矛盾します。)

このとき、任意の \boldsymbol{x} \in \mathbb{R}^nに対して \boldsymbol{x}^\top BC \boldsymbol{x} = \boldsymbol{x}^\top CB \boldsymbol{x} が成り立つことに注意すると、

 \begin{aligned}\boldsymbol{u}^\top (B^2 - C^2) \boldsymbol{u} &= \boldsymbol{u}^\top(B + C)(B - C)\boldsymbol{u} \\ &= \lambda \boldsymbol{u}^\top (B + C) \boldsymbol{u}\\ &=  \lambda \boldsymbol{u}^\top (B - C + 2C) \boldsymbol{u} \\ &= \lambda \boldsymbol{u}^\top (B - C)\boldsymbol{u} + 2 \boldsymbol{u}^\top C \boldsymbol{u}\\ &\geq \lambda^2 \boldsymbol{u}^\top \boldsymbol{u} > 0\end{aligned}

となりますが、これは B^2 - C^2 = Oであることに矛盾します。したがって B = Cであることが示されました。

この事実を紹介した背景

昔、院試の勉強をしている頃に友人たちとこの事実の証明をしていて、一意性の証明にいろいろな方法があり、どれも面白かったのでその中で好きなものを紹介しました。
また、この事実を使うと半正定値行列が絡む非自明な不等式をいろいろ示すことができて面白いです。たとえば以下の不等式を証明できます:

 A \succ O, B \succeq O のとき、 {\rm det}(A + B) \geq {\rm det}(A) + {\rm det}(B)

ここで、 A \succ O Aは正定値行列 (任意の \boldsymbol{x} \in \mathbb{R}^n \setminus \{\boldsymbol{0}\} \boldsymbol{x}^\top A \boldsymbol{x} > 0が成り立つ行列) であることを表す記法です。

証明としては、示したい不等式の両辺に {\rm det}(\sqrt{A}^{-1}) > 0を左右からかけた不等式

 {\rm det}(I + \sqrt{A}^{-1}B\sqrt{A}^{-1}) \geq {\rm det}(I) + {\rm det}(\sqrt{A}^{-1}B\sqrt{A}^{-1})

が示せれば十分です。上記の式は  \sqrt{A}^{-1}B\sqrt{A}^{-1} \succeq Oであることと、  \sqrt{A}^{-1}B\sqrt{A}^{-1}固有値 \lambda_1, \ldots, \lambda_nであるとき  I + \sqrt{A}^{-1}B\sqrt{A}^{-1}固有値 1 + \lambda_1, \ldots, 1 + \lambda_nとなることからすぐに従います。