Gram–Schmidtの直交化(Gram–Schmidt process)とは、内積空間の線形独立なベクトル $v_1,\dots,v_m$ から、各 $v_j$ よりそれまでに作ったベクトルの方向の成分を引き去って、互いに直交するベクトル $w_1,\dots,w_m$ を順に作る手続きである。各段で $\operatorname{span}\{w_1,\dots,w_j\}=\operatorname{span}\{v_1,\dots,v_j\}$ が保たれ、長さで割れば正規直交基底が得られる。$\|w_j\|$ は $v_j$ から前のベクトルの張る空間までの距離で、その 2 乗の積は Gram 行列式に等しく、これから Hadamard の不等式 $|\det A|\le\prod_j\|a_j\|$ が従う。線形従属な族では途中で $w_j=0$ となり、従属性が検出される。
$\mathbb{R}^3$ のベクトル $v_1=(1,1,1)$、$v_2=(0,1,1)$、$v_3=(0,0,1)$ は基底をなすが、互いに直交していない。そこで $v_1$ はそのまま $w_1:=v_1$ とし、$v_2$ からは $w_1$ の方向の成分を、$v_3$ からは $w_1,w_2$ の方向の成分を引き去ると
$$
w_1=(1,1,1),\qquad w_2=\Bigl(-\tfrac23,\tfrac13,\tfrac13\Bigr),\qquad w_3=\Bigl(0,-\tfrac12,\tfrac12\Bigr)
$$
となり、$w_1,w_2,w_3$ は互いに直交する。各 $w_j$ を長さで割れば正規直交基底が得られる。この「前に作ったベクトルの方向の成分を順に引き去る」手続きが Gram–Schmidt の直交化 である。上の例では $\|w_1\|^2\|w_2\|^2\|w_3\|^2=3\cdot\frac23\cdot\frac12=1$ であり、これは $v_1,v_2,v_3$ を列に並べた行列の行列式の絶対値の 2 乗に等しい。この記事では、$\|w_j\|$ が距離であること、出力の一意性、線形従属な族への拡張、Gram 行列式と Hadamard の不等式、修正 Gram–Schmidt 法、正規直交基底による上三角化を証明する。
以下、$F$ は実数体 $\mathbb{R}$ または複素数体 $\mathbb{C}$ とし、$V$ を $F$ 上の内積空間とする。内積 $\langle\cdot,\cdot\rangle$ は第 1 変数について線形、第 2 変数について共役線形とし(内積空間 の記事の約束と同じ)、$\|x\|:=\sqrt{\langle x,x\rangle}$ と書く。$F^n$ には標準内積 $\langle x,y\rangle=\sum_kx_k\overline{y_k}$ を入れる。
$v_1,\dots,v_m\in V$ を線形独立なベクトルとする。$w_1,\dots,w_m$ を帰納的に
$$
w_1:=v_1,\qquad w_j:=v_j-\sum_{k=1}^{j-1}\frac{\langle v_j,w_k\rangle}{\|w_k\|^2}\,w_k\qquad(j=2,\dots,m)
$$
で定め、さらに $e_j:=w_j/\|w_j\|$ とおく。$v_1,\dots,v_m$ から $w_1,\dots,w_m$ を作る操作を Gram–Schmidt の直交化(Gram–Schmidt process)、$e_1,\dots,e_m$ まで作る操作を Gram–Schmidt の正規直交化 という。
係数 $\langle v_j,w_k\rangle$ は第 1 変数に $v_j$ を入れる(複素数の場合に順序を逆にすると直交しない。ex-gs-complex)。$\|w_k\|$ は正の実数なので $\frac{\langle v_j,w_k\rangle}{\|w_k\|^2}w_k=\langle v_j,e_k\rangle e_k$ であり、定義の式は
$$
w_j=v_j-\sum_{k=1}^{j-1}\langle v_j,e_k\rangle e_k
$$
とも書ける。これは 内積空間 の記事の定理「Gram–Schmidtの直交化法」の式と同じである。
この手続きの基本定理は次のとおりで、証明は 内積空間 の記事の同じ定理にある(Axl24 6.32、Bee15 Theorem GSP)。
def-gs-process の記号で、すべての $j$ について $w_j\ne0$ であり(したがって $e_j$ は定義される)、$w_1,\dots,w_m$ は互いに直交し、$e_1,\dots,e_m$ は正規直交系である。さらに各 $j=1,\dots,m$ について
$$
\operatorname{span}\{w_1,\dots,w_j\}=\operatorname{span}\{e_1,\dots,e_j\}=\operatorname{span}\{v_1,\dots,v_j\}
$$
が成り立つ。とくに有限次元の内積空間は正規直交基底をもち、その任意の正規直交系は正規直交基底に延長できる。
この定理は、線形独立な族 $v_1,\dots,v_m$ から、各段の張る部分空間を保ったまま正規直交系を作れることを述べる。線形独立という仮定は $w_j\ne0$ を保証するために使われ、族が線形従属だと $e_j$ が定義できない段が現れる(thm-gs-dependent)。各段の部分空間が保たれることは、基底の変換行列が上三角行列になることを意味する。
以下、$W_j:=\operatorname{span}\{v_1,\dots,v_j\}$($W_0:=\{0\}$)と書く。基本定理により $e_1,\dots,e_j$ は $W_j$ の正規直交基底であり、定義の式を移項すると
$$
v_j=\|w_j\|\,e_j+\sum_{k=1}^{j-1}\langle v_j,e_k\rangle e_k
$$
である。$v_j$ を $e_1,\dots,e_j$ で表したときの $e_j$ の係数が正の実数 $\|w_j\|$ になることを、後で一意性(thm-gs-uniqueness)と Gram 行列式(thm-gs-gram)で使う。
$w_j$ は、$v_j$ から「すでに作った方向」の成分をすべて取り除いた残り、すなわち $W_{j-1}$ への直交射影を $P$ として $w_j=v_j-Pv_j$ である(prop-gs-projection)。平面上の $v_1,v_2$ なら、$w_2$ は $v_2$ の先端から $v_1$ の直線へ下ろした垂線で、$\|v_1\|\,\|w_2\|$ は $v_1,v_2$ の張る平行四辺形の面積である。$\|w_j\|^2$ の積が「平行体の体積の 2 乗」にあたる Gram 行列式であり(thm-gs-gram)、$\|w_j\|\le\|v_j\|$ から Hadamard の不等式が出る(cor-gs-hadamard)。
出力は入力の順序に依存する(ex-gs-order)。この「各段で張る空間を保つ」性質が、行列の QR分解 や、上三角行列を正規直交基底で実現する定理(thm-gs-triangular)の源である。
冒頭の $v_1=(1,1,1)$、$v_2=(0,1,1)$、$v_3=(0,0,1)$ では $\|w_1\|^2=3$、$\|w_2\|^2=\frac23$、$\|w_3\|^2=\frac12$ である。
$\langle v_2,w_1\rangle=2$ なので $w_2=(0,1,1)-\frac23(1,1,1)=(-\frac23,\frac13,\frac13)$ である。$\langle v_3,w_1\rangle=1$、$\langle v_3,w_2\rangle=\frac13$ なので $w_3=(0,0,1)-\frac13(1,1,1)-\frac{1/3}{2/3}(-\frac23,\frac13,\frac13)=(0,-\frac12,\frac12)$ である。$\langle w_1,w_2\rangle=\langle w_1,w_3\rangle=\langle w_2,w_3\rangle=0$ を直接確かめられる。
実数係数で次数 $2$ 以下の多項式の空間に内積 $\langle p,q\rangle:=\int_0^1p(t)q(t)\,dt$ を入れ、$1,x,x^2$ を直交化すると
$$
w_1=1,\quad w_2=x-\tfrac12,\quad w_3=x^2-x+\tfrac16,\qquad \|w_1\|^2=1,\quad\|w_2\|^2=\tfrac1{12},\quad\|w_3\|^2=\tfrac1{180}
$$
である。
$\langle x,1\rangle=\frac12$ なので $w_2=x-\frac12$、$\|w_2\|^2=\int_0^1(t-\frac12)^2dt=\frac1{12}$ である。$\langle x^2,1\rangle=\frac13$、$\langle x^2,x-\frac12\rangle=\frac14-\frac16=\frac1{12}$ なので $w_3=x^2-\frac13-\frac{1/12}{1/12}(x-\frac12)=x^2-x+\frac16$ であり、$\|w_3\|^2=\int_0^1(t^2-t+\frac16)^2dt=\frac1{180}$ である。
$\mathbb{C}^2$ の $v_1=(1,i)$、$v_2=(i,0)$ を考える。$\|w_1\|^2=|1|^2+|i|^2=2$、$\langle v_2,w_1\rangle=i\cdot\overline1+0\cdot\overline{i}=i$ なので、正しい計算は
$$
w_2=(i,0)-\tfrac i2(1,i)=\Bigl(\tfrac i2,\tfrac12\Bigr),\qquad\langle w_2,w_1\rangle=\tfrac i2\cdot1+\tfrac12\cdot\overline{i}=0
$$
である。係数に $\langle w_1,v_2\rangle=\overline{i}=-i$ を使うと $w_2'=(i,0)+\frac i2(1,i)=(\frac{3i}2,-\frac12)$ となり、$\langle w_2',w_1\rangle=\frac{3i}2+\frac i2=2i\ne0$ である。この計算は「係数を $\langle v_j,w_k\rangle$(第 1 変数に $v_j$)にとる」を満たさないので、直交性が崩れる。実内積空間では $\langle v,w\rangle=\langle w,v\rangle$ なので、この違いは現れない。
(i) $\mathbb{R}^2$ の $v_1=(1,0)$、$v_2=(2,0)$ では $w_2=(2,0)-\frac21(1,0)=0$ となり、$e_2=w_2/\|w_2\|$ が定義できない。$v_1,v_2$ は「線形独立」を満たさず、thm-gs-basic の $w_j\ne0$ が崩れる。$w_j=0$ となる段を飛ばせば、どんな族でも扱える(thm-gs-dependent)。
(ii) $\mathbb{R}^2$ 上の対称双線形形式 $(x,y)\mapsto x_1y_1-x_2y_2$ は正値性を満たさず、内積でない(内積空間 の記事の注意「反例」)。この形式で同じ式を使うと、線形独立な $v_1=(1,1)$、$v_2=(1,0)$ について $v_1$ と自分自身との値が $1-1=0$ となり、$w_2$ の式で $0$ で割ることになって手続きが実行できない。この例は「内積が正値である」を満たさないので、線形独立な族でも手続きが途中で止まる。
$\mathbb{R}^2$ の $v_1=(1,0)$、$v_2=(1,1)$ を直交化すると $e_1=(1,0)$、$e_2=(0,1)$ である。順序を入れ替えて $v_2,v_1$ の順に直交化すると $e_1'=\frac1{\sqrt2}(1,1)$、$e_2'=\frac1{\sqrt2}(1,-1)$ である。どちらも $\mathbb{R}^2$ の正規直交基底だが別のものである。この例は、Gram–Schmidt の直交化が「集合」ではなく「並べた族」に対する操作であり、$\operatorname{span}\{e_1\}=\operatorname{span}\{v_1\}$ のような段ごとの条件が順序に依存することを示す。
| 外す条件 | 反例 | 成り立たなくなること |
|---|---|---|
| 族が線形独立 | $(1,0),(2,0)$ | $w_j\ne0$、正規化 $e_j$ の定義 |
| 内積が正値 | $x_1y_1-x_2y_2$ のもとの $(1,1),(1,0)$ | 手続きの実行($0$ で割る) |
| 係数を $\langle v_j,w_k\rangle$ にとる | $\mathbb{C}^2$ の $(1,i),(i,0)$ で $\langle w_1,v_2\rangle$ を使う | $w_2\perp w_1$ |
| 入力の順序を固定する | $(1,0),(1,1)$ と $(1,1),(1,0)$ | 出力の一致 |
| 計算が正確 | ex-gs-rounding の丸めた計算 | 出力の直交性(古典的な順序の計算) |
$v_1,\dots,v_m$ を線形独立とし、$W_{j-1}$ への直交射影を $P_{j-1}$ とする($P_0=0$)。各 $j$ について次が成り立つ。
要点:$e_1,\dots,e_{j-1}$ は $W_{j-1}$ の正規直交基底なので、内積空間 の記事の定理「直交分解と最良近似」がそのまま使え、3 は三平方の定理 $\|v_j\|^2=\|w_j\|^2+\|P_{j-1}v_j\|^2$ から従う。
1:thm-gs-basic により $e_1,\dots,e_{j-1}$ は $W_{j-1}$ の正規直交基底なので、同定理の 2 により $P_{j-1}v_j=\sum_{k< j}\langle v_j,e_k\rangle e_k$ であり、定義の式と比べて $w_j=v_j-P_{j-1}v_j\in W_{j-1}^{\perp}$ である。$x\in v_j+W_{j-1}$ が $W_{j-1}^{\perp}$ に入るとすると、$v_j=(v_j-x)+x$ は $W_{j-1}$ の元と $W_{j-1}^{\perp}$ の元の和であり、この分解はただ 1 通りなので $x=w_j$ である。
2:同定理の 3(最良近似)を $x=v_j$、$W=W_{j-1}$ に当てはめたものである。
3:$w_j\perp P_{j-1}v_j$ なので、三平方の定理(内積空間 の記事の命題「内積とノルムの基本性質」の 4)により $\|v_j\|^2=\|w_j\|^2+\|P_{j-1}v_j\|^2\ge\|w_j\|^2$ である。等号は $P_{j-1}v_j=0$、すなわち $\langle v_j,e_k\rangle=0$($k< j$)のときに限り、これは $v_j$ が $W_{j-1}$ の正規直交基底のすべてと、したがって $W_{j-1}$ のすべての元と直交することである。$\square$
1 により、$w_j$ は $e_1,\dots,e_{j-1}$ の選び方によらず、部分空間 $W_{j-1}$ と $v_j$ だけで決まる。2 は $\|w_j\|$ が「$v_j$ から $W_{j-1}$ までの距離」であることを述べている。
$v_1,\dots,v_m$ を線形独立とする。$V$ の正規直交系 $f_1,\dots,f_m$ が、各 $k=1,\dots,m$ について
$$
\operatorname{span}\{f_1,\dots,f_k\}=\operatorname{span}\{v_1,\dots,v_k\}\quad\text{かつ}\quad\langle v_k,f_k\rangle\ \text{は正の実数}
$$
を満たすなら、$f_k=e_k$($k=1,\dots,m$)である。すなわち Gram–Schmidt の正規直交化の出力は、この 2 つの条件でただ 1 つに決まる。
$k$ を 1 つ固定する。$f_k\in W_k$ で、$e_1,\dots,e_k$ は $W_k$ の正規直交基底なので、$f_k=\sum_{i=1}^k\langle f_k,e_i\rangle e_i$ である(内積空間 の記事の命題「正規直交系の性質」の 2)。$i< k$ なら $e_i\in W_{i}\subset W_{k-1}=\operatorname{span}\{f_1,\dots,f_{k-1}\}$ であり、$f_k$ は $f_1,\dots,f_{k-1}$ と直交するので $\langle f_k,e_i\rangle=0$ である($k=1$ のときはこの段階は不要)。よって $c:=\langle f_k,e_k\rangle$ とおくと $f_k=c\,e_k$ であり、$|c|=\|f_k\|=1$ である。
次に、def-gs-process の後の式 $v_k=\|w_k\|e_k+\sum_{i< k}\langle v_k,e_i\rangle e_i$ と $e_i\perp e_k$($i< k$)から $\langle v_k,e_k\rangle=\|w_k\|>0$ である。したがって
$$
\langle v_k,f_k\rangle=\langle v_k,c\,e_k\rangle=\overline{c}\,\langle v_k,e_k\rangle=\overline{c}\,\|w_k\|
$$
である。左辺は仮定により正の実数なので $\overline{c}$ は正の実数であり、$|c|=1$ と合わせて $c=1$、すなわち $f_k=e_k$ である。$\square$
条件「$\langle v_k,f_k\rangle$ が正の実数」を外すと、各 $f_k$ を絶対値 $1$ のスカラー倍だけ取り替えた $\varepsilon_1e_1,\dots,\varepsilon_me_m$($|\varepsilon_k|=1$)も段ごとの条件を満たし、一意性は崩れる。この定理は Axl24 の §6B の演習 9・10(p. 208)にあたり、行列の言葉では、正則行列 $A$ を ユニタリ行列 $Q$ と対角成分が正の上三角行列 $R$ の積 $A=QR$ に書く QR分解 の一意性である(正規直交基底 の記事の定理「正則行列のQR分解の存在と一意性」)。
$v_1,\dots,v_m\in V$ を任意のベクトルとし、$w_1,\dots,w_m$ を帰納的に
$$
w_j:=v_j-\sum_{\substack{k< j\\ w_k\ne0}}\frac{\langle v_j,w_k\rangle}{\|w_k\|^2}\,w_k
$$
で定める($0$ になった $w_k$ は和から除く)。このとき各 $j$ について次が成り立つ。
$j=1$ では $w_1=v_1$ なので 1 と 2 は明らかで、3 は「$w_1=0\iff v_1\in\{0\}$」である。$j\ge2$ とし、$j-1$ まで 1 と 2 が正しいとする。$N:=\{k< j\mid w_k\ne0\}$、$U:=\operatorname{span}\{v_1,\dots,v_{j-1}\}$ とおくと、帰納法の仮定の 2 により $U=\operatorname{span}\{w_k\mid k\in N\}$ である。
1:$i\in N$ について、帰納法の仮定($k\ne i$ なら $\langle w_k,w_i\rangle=0$)により
$$
\langle w_j,w_i\rangle=\langle v_j,w_i\rangle-\sum_{k\in N}\frac{\langle v_j,w_k\rangle}{\|w_k\|^2}\langle w_k,w_i\rangle=\langle v_j,w_i\rangle-\langle v_j,w_i\rangle=0
$$
である。$i< j$ で $w_i=0$ なら $\langle w_j,w_i\rangle=0$ は明らかである。
2:$u:=\sum_{k\in N}\frac{\langle v_j,w_k\rangle}{\|w_k\|^2}w_k\in U$ とおくと $w_j=v_j-u$、$v_j=w_j+u$ である。よって $w_j\in\operatorname{span}\{v_1,\dots,v_j\}$ かつ $v_j\in\operatorname{span}\{w_1,\dots,w_j\}$ であり、帰納法の仮定の 2 と合わせて両側の包含が成り立つ。
3:$w_j=0$ なら $v_j=u\in U$ である。逆に $v_j\in U$ なら $w_j=v_j-u\in U$ であり、1 により $w_j$ は $U$ を張る $w_k$($k\in N$)のすべてと直交するので、$U$ のすべての元と直交する。とくに $\langle w_j,w_j\rangle=0$ なので $w_j=0$ である。
後半は、$0$ でない直交系が線形独立であることと 1〜3 から従う。
$0$ でない $w_j$ たちは互いに直交するので線形独立であり(内積空間 の記事の命題「正規直交系の性質」の 1)、2 により $\operatorname{span}\{v_1,\dots,v_m\}$ を張るので、その基底である。$v_1,\dots,v_m$ が線形独立なら、どの $v_j$ も他のベクトルの張る空間に入らない(線形独立 の記事の定理「線形独立性の同値条件」の 2)ので、3 によりすべての $w_j\ne0$ である。逆にすべての $w_j\ne0$ なら、$\operatorname{span}\{v_1,\dots,v_m\}$ の次元は $m$ で、$m$ 個の $v_j$ がこれを張るので基底であり(基底と次元 の記事の命題「有限次元空間における独立系と生成系」の 2)、線形独立である。このとき和から除く項はないので、定義は def-gs-process と一致する。$\square$
この定理により、Gram–Schmidt の直交化は線形独立性の判定と、張る空間の直交基底の計算を一度に行う方法にもなる(Axl24 §6B の演習 13、p. 209)。
$\mathbb{R}^3$ の $v_1=(1,1,0)$、$v_2=(2,2,0)$、$v_3=(1,0,1)$ に thm-gs-dependent の手続きを施すと、$w_1=(1,1,0)$、$w_2=(2,2,0)-\frac42(1,1,0)=0$ であり、$v_2\in\operatorname{span}\{v_1\}$ が検出される。$w_2$ を除いて $w_3=(1,0,1)-\frac12(1,1,0)=(\frac12,-\frac12,1)$ となり、$w_1,w_3$ が $\operatorname{span}\{v_1,v_2,v_3\}$ の直交基底で、この部分空間は $2$ 次元である。
$v_1,\dots,v_k\in V$ に対し、$(i,j)$ 成分が $\langle v_j,v_i\rangle$ の $k$ 次正方行列 $\Gamma(v_1,\dots,v_k)$ を Gram行列、その行列式 $G(v_1,\dots,v_k):=\det\Gamma(v_1,\dots,v_k)$ を Gram 行列式 という($k=0$ では $G:=1$ とする)。$F^n$ の列ベクトル $a_1,\dots,a_n$ を並べた行列を $A$ とすると、$\langle a_j,a_i\rangle=a_i^{*}a_j$ なので $\Gamma(a_1,\dots,a_n)=A^{*}A$ である($A^{*}:=\overline{A}^{\top}$ は共役転置。転置行列 の記事の注意「複素数の行列と共役転置」)。
$v_1,\dots,v_k\in V$ とする。
1:$r_{ij}:=\langle v_j,e_i\rangle$($i< j$)、$r_{jj}:=\|w_j\|$、$r_{ij}:=0$($i>j$)とおき、$R:=(r_{ij})$ とする。$R$ は上三角行列で、対角成分は正の実数 $\|w_1\|,\dots,\|w_k\|$ である。def-gs-process の後の式により $v_j=\sum_{i=1}^{k}r_{ij}e_i$ なので、$e_1,\dots,e_k$ の正規直交性から
$$
\langle v_j,v_l\rangle=\sum_{i,i'}r_{ij}\overline{r_{i'l}}\langle e_i,e_{i'}\rangle=\sum_{i}\overline{r_{il}}\,r_{ij}=(R^{*}R)_{lj}
$$
である。よって $\Gamma(v_1,\dots,v_k)=R^{*}R$ である。$R^{*}$ は対角成分が $\overline{\|w_j\|}=\|w_j\|$ の下三角行列なので、行列式 の記事の定理「積の行列式」と命題「三角行列と区分三角行列の行列式」の 1 により
$$
G(v_1,\dots,v_k)=\det R^{*}\det R=\prod_{j=1}^{k}\|w_j\|^2
$$
である。$v_1,\dots,v_{k-1}$ も線形独立で、その直交化は $w_1,\dots,w_{k-1}$ なので、比をとると $\|w_k\|^2$ が得られる。これが距離の 2 乗であることは prop-gs-projection の 2 による。
2:すべては $0$ でない $c_1,\dots,c_k\in F$ で $\sum_jc_jv_j=0$ となるものがある。$c:=(c_1,\dots,c_k)^{\top}$ とすると、$\Gamma c$ の第 $l$ 成分は
$$
\sum_j\langle v_j,v_l\rangle c_j=\Bigl\langle\sum_jc_jv_j,\,v_l\Bigr\rangle=0
$$
なので $\Gamma c=0$、$c\ne0$ である。よって $\Gamma$ は正則でなく(正則行列 の記事の定理「正則性の同値条件」)、$\det\Gamma=0$ である。$\square$
$k=2$ では $G(v_1,v_2)=\|v_1\|^2\|v_2\|^2-|\langle v_1,v_2\rangle|^2$ であり、1 と 2 から Cauchy–Schwarz の不等式とその等号条件(内積空間 の記事の定理「内積のCauchy–Schwarz不等式」)がもう一度得られる。実内積空間では $\sqrt{G(v_1,v_2)}=\|v_1\|\,\|w_2\|$ は $v_1,v_2$ の張る平行四辺形の「底辺×高さ」である。
要点:線形独立なら $G=\prod\|w_j\|^2\le\prod\|v_j\|^2$(thm-gs-gram の 1 と prop-gs-projection の 3)であり、2 は $G(a_1,\dots,a_n)=\det(A^{*}A)=|\det A|^2$ から従う。
1:線形従属なら左辺は $0$ で、不等式は成り立つ(thm-gs-gram の 2)。線形独立なら上の要点のとおりで、等号はすべての $j$ で $\|w_j\|=\|v_j\|$、すなわち各 $v_j$ が $v_1,\dots,v_{j-1}$ と直交するときに限る。$v_j$ がすべて $0$ でなく線形従属なら左辺は $0$、右辺は正なので等号は成り立たず、このとき $v_j$ は互いに直交しない($0$ でない直交系は線形独立なので)。
2:$\Gamma(a_1,\dots,a_n)=A^{*}A$ である。$A^{*}=\overline{A}^{\top}$ で、転置で行列式は変わらず(行列式 の記事の命題「転置と行列式」)、行列式は成分の積の和なので成分をすべて共役にすると共役になる。よって $\det A^{*}=\overline{\det A}$ で、$G(a_1,\dots,a_n)=\overline{\det A}\det A=|\det A|^2$ である。1 から不等式を得る。ある列が $0$ なら両辺とも $0$ で等号が成り立ち、列がすべて $0$ でないときは、1 の等号条件により、等号は列が互いに直交するときに限る。$\square$
ex-gs-r3 では $|\det A|=1<\sqrt3\cdot\sqrt2\cdot1=\|v_1\|\|v_2\|\|v_3\|$ である。$\mathbb{R}^n$ では $|\det A|$ は列ベクトルの張る平行体の体積であり、この不等式は「辺の長さを決めたとき、体積が最大になるのは辺が互いに直交する箱のときである」ことを述べている。
def-gs-process では $v_j$ の成分を $e_1,\dots,e_{j-1}$ の方向について一度に引く。これに対し、1 方向ずつ引いてから次の係数を計算し直す手続きを 修正 Gram–Schmidt 法(modified Gram–Schmidt)という。すなわち、$e_1,\dots,e_{j-1}$ まで作ったところで
$$
u^{(0)}:=v_j,\qquad u^{(i)}:=u^{(i-1)}-\langle u^{(i-1)},e_i\rangle e_i\quad(i=1,\dots,j-1),\qquad e_j:=\frac{u^{(j-1)}}{\|u^{(j-1)}\|}
$$
と定める。係数を元の $v_j$ ではなく、途中まで引いた $u^{(i-1)}$ から計算するところだけが違う。
$v_1,\dots,v_m$ が線形独立なら、正確に計算した修正 Gram–Schmidt 法の $u^{(j-1)}$ と $e_j$ は、def-gs-process の $w_j$ と $e_j$ に一致する。
要点:$e_i$ は前の $e_l$($l< i$)と直交するので、途中まで引いた $u^{(i-1)}$ から計算しても係数は $\langle u^{(i-1)},e_i\rangle=\langle v_j,e_i\rangle$ のままである。
$j$ についての帰納法で、$e_1,\dots,e_{j-1}$ が def-gs-process のものと一致すると仮定する($j=1$ では $e_1=v_1/\|v_1\|$ で同じ)。$i=0,1,\dots,j-1$ について $u^{(i)}=v_j-\sum_{l\le i}\langle v_j,e_l\rangle e_l$ であることを $i$ についての帰納法で示す。$i=0$ は定義である。$i\ge1$ なら、仮定と $\langle e_l,e_i\rangle=0$($l< i$)により $\langle u^{(i-1)},e_i\rangle=\langle v_j,e_i\rangle-\sum_{l< i}\langle v_j,e_l\rangle\langle e_l,e_i\rangle=\langle v_j,e_i\rangle$ なので、$u^{(i)}=v_j-\sum_{l\le i}\langle v_j,e_l\rangle e_l$ である。$i=j-1$ とすると $u^{(j-1)}=w_j$ であり、$e_j$ も一致する。$\square$
正確な計算では 2 つの手続きは同じだが、丸めのある計算では結果が大きく変わることがある。
$\varepsilon>0$ を小さい数とし、$\mathbb{R}^4$ の線形独立な $v_1=(1,\varepsilon,0,0)$、$v_2=(1,0,\varepsilon,0)$、$v_3=(1,0,0,\varepsilon)$ を考える。計算の中で $1+\varepsilon^2$ だけを $1$ に丸め、ほかは正確に計算するとする(倍精度の浮動小数点数で $\varepsilon=10^{-8}$ とすると、実際にこの丸めが起きる)。すると def-gs-process の順序では $e_3=\frac1{\sqrt2}(0,-1,0,1)$ となって $\langle e_2,e_3\rangle=\frac12$ であり、修正 Gram–Schmidt 法では $e_3=\frac1{\sqrt6}(0,-1,-1,2)$ となって $\langle e_2,e_3\rangle=0$ である($e_2=\frac1{\sqrt2}(0,-1,1,0)$ は共通)。この例では、同じ丸めのもとで、元の順序の計算は直交性を大きく失い、修正版は $e_2\perp e_3$ を保つ。
$\|v_1\|=1$ と丸められて $e_1=v_1$ であり、$\langle v_2,e_1\rangle=1$ から $w_2=(0,-\varepsilon,\varepsilon,0)$、$e_2=\frac1{\sqrt2}(0,-1,1,0)$ である。元の順序では、$\langle v_3,e_1\rangle=1$、$\langle v_3,e_2\rangle=0$ なので $w_3=(0,-\varepsilon,0,\varepsilon)$ である。修正版では、$u^{(1)}=v_3-e_1=(0,-\varepsilon,0,\varepsilon)$ から係数 $\langle u^{(1)},e_2\rangle=\frac{\varepsilon}{\sqrt2}$ を計算し直すので $u^{(2)}=(0,-\frac\varepsilon2,-\frac\varepsilon2,\varepsilon)$ である。
有限次元の $V$ 上の線形変換 $T$ と基底 $b_1,\dots,b_n$ について、$T$ の表現行列が上三角行列であることは、各 $k$ で $Tb_k\in\operatorname{span}\{b_1,\dots,b_k\}$ であること(表現行列の第 $k$ 列は $Tb_k$ の座標なので、第 $k+1$ 行以下が $0$ であること)と同じである。
$V$ を有限次元の内積空間、$T\colon V\to V$ を線形変換とする。$V$ のある基底 $v_1,\dots,v_n$ に関する $T$ の表現行列が上三角行列なら、$v_1,\dots,v_n$ を Gram–Schmidt の正規直交化して得られる正規直交基底 $e_1,\dots,e_n$ に関する $T$ の表現行列も上三角行列である。
基底 $b_1,\dots,b_n$ に関する表現行列が上三角であることは、各 $k$ で $\operatorname{span}\{b_1,\dots,b_k\}$ が $T$ で不変($T$ で自分自身の中へ移る)であることと同値である。
不変なら $Tb_k\in\operatorname{span}\{b_1,\dots,b_k\}$ である。逆に各 $i$ で $Tb_i\in\operatorname{span}\{b_1,\dots,b_i\}$ なら、$i\le k$ について $Tb_i\in\operatorname{span}\{b_1,\dots,b_k\}$ で、$T$ の線形性から $\operatorname{span}\{b_1,\dots,b_k\}$ 全体が中へ移る。
複素内積空間では、有限次元空間上のすべての線形変換がある基底で上三角の表現行列をもつ(Axl24 5.47、p. 160。この記事では証明しない)。これと thm-gs-triangular を合わせると、有限次元の複素内積空間上のすべての線形変換は、ある正規直交基底で上三角の表現行列をもつ(Schur の定理、Axl24 6.38、p. 204)。行列の言葉では、任意の $A\in M_n(\mathbb{C})$ に対し、ユニタリ行列 $U$ で $U^{*}AU$ が上三角行列になるものがある($U$ は、$x\mapsto Ax$ を上三角にする正規直交基底を列に並べた行列で、表現行列は $U^{-1}AU=U^{*}AU$ である。線形代数学 の記事の定理「表現行列と基底の取り替え」)。実数の場合、$\begin{pmatrix}0&-1\\1&0\end{pmatrix}$ は実の固有値をもたないので、どの実基底でも上三角にならない(上三角なら $b_1$ が固有ベクトルになる)。この例は「複素数上で考える」を満たさないので、上三角化の前提が崩れる。
式は $v_j$ より前のベクトルしか使わないので、線形独立な無限列 $v_1,v_2,\dots$ にも適用でき、各 $j$ で thm-gs-basic の結論を満たす正規直交列が得られる。Hilbert空間 でこれが完全な正規直交系になるかどうかは、張る空間が稠密かどうかを別に確かめる必要がある。
手続きの定義と基本定理は Axl24 6.32(§6B、p. 201)、正規直交基底の存在と延長は 6.35・6.36(pp. 202–203)、正規直交基底による上三角化は 6.37(p. 203)、Schur の定理は 6.38(p. 204)にある。同書の 6.32 は本記事の $w_j$ を $f_j$ と書き、係数を $\langle v_k,f_j\rangle/\|f_j\|^2$ としている。一意性と線形従属の検出は同書 §6B の演習 9・10(p. 208)・13(p. 209)である。Bee15 は $\mathbb{C}^m$ の場合を Section O の Theorem GSP(p. 121)で扱うが、同書の内積は第 1 変数について共役線形なので、係数の中の順序が本記事と逆になる。
Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する