線形代数I/内積 のバックアップソース(No.6)

更新

[[線形代数I]]

#contents

培風館「教養の線形代数(五訂版)」に沿って行っている授業の授業ノート(の一部)です。

(カリキュラムと教科書との間のギャップを調整中の内容です)

* 実数ベクトルの標準内積 [#p13a5776]

&math(\bm a=\begin{bmatrix}a_1\\a_2\\\vdots\\a_n\end{bmatrix});,
&math(\bm b=\begin{bmatrix}b_1\\b_2\\\vdots\\b_n\end{bmatrix}\in \mathbb R^n);
に対して、その標準内積を

&math((\bm a,\bm b)=a_1b_1+a_2b_2+\dots+a_nb_n=\sum_{i=1}^na_ib_i);

として定義する。

* 実数ベクトルの内積の性質 [#vaef810c]

標準内積について以下の性質を容易に確かめられる。

+ &math((\bm a,\bm b)=(\bm b,\bm a));
+ &math((\bm a+\bm b,\bm c)=(\bm a,\bm c)+(\bm b,\bm c));
+ &math((k\bm a,\bm b)=k(\bm a,\bm b));
+ &math((\bm a,\bm a)\ge 0); かつ &math((\bm a,\bm a)=0);⇔&math(\bm a=\bm o);

数学的にはこの4つの性質を持つような任意の演算を「内積」と考えてよい。~
すなわち、内積の定義の仕方には標準内積以外にも様々な物がある。

例:&math((\bm a,\bm b)=a_1b_1+2a_2b_2+\dots+na_nb_n=\sum_{i=1}^nia_ib_i);
も内積を定義する。

例:すぐには分かりにくいが、2次のベクトルに対して、~
&math((\bm a,\bm b)=a_1b_1+a_1b_2+a_2b_1+2a_2b_2); も内積を定義する。
(確かめてみよ)

以下の話は上記4つの性質のみを使って定義・証明可能であるから、
「任意の内積」について成立する。

内積の定義されたベクトル空間を「内積空間」あるいは「計量空間」と呼ぶ。

(複素数ベクトルの内積については後に学ぶ)

* ベクトルのノルム [#zbc3a037]

内積の持つ性質 &math((\bm a,\bm a)\ge 0); より、任意の &math(\bm a); に対して

&math(\|\bm a\|=\sqrt{(\bm a,\bm a)}\ge 0);

を定義できる。これを &math(\bm a); のノルム(長さ・大きさ)と呼ぶ。

内積の定義より、&math(\bm a=\bm o); の時のみ &math(\|\bm a\|=0); となる。

● &math(\|\bm a\|^2=(\bm a,\bm a)); の書き換えは頻出するので覚えておくように。

* シュワルツ (Schwartz) の不等式 [#m7966132]

&math(|(\bm a,\bm b)|\le\|\bm a\|\|\bm b\|); 内積の絶対値は常にノルムの積以下である

(証明)

&math(\|t\bm a+\bm b\|^2);

&math(=(t\bm a+\bm b,t\bm a+\bm b));

&math(=(\bm a,\bm a)t^2+(\bm a,\bm b)t+(\bm b,\bm a)t+(\bm b,\bm b));

&math(=\|\bm a\|^2t^2+2(\bm a,\bm b)t+\|\bm b\|^2\ge 0);

この2次式が &math(t); の値に依らず負にならないためには、
判別式が負でなければならないから、

&math((\bm b,\bm a)^2-\|\bm a\|^2\|\bm b\|^2\le 0);

&math((\bm b,\bm a)^2\le\|\bm a\|^2\|\bm b\|^2);

両者の正の平方根を取れば、

&math(|(\bm a,\bm b)|\le\|\bm a\|\|\bm b\|);

与式を得る。

** 三角不等式 [#he02d623]

&math(\|\bm a+\bm b\|\le\|\bm a\|+\|\bm b\|); 三角形の一辺は他の二辺の和より短い

(証明)

&math(\|\bm a+\bm b\|^2=(\bm a+\bm b,\bm a+\bm b));

&math(=\|\bm a\|^2+2(\bm b,\bm a)+\|\bm b\|^2);

&math(<\|\bm a\|^2+2|(\bm b,\bm a)|+\|\bm b\|^2);

&math(<\|\bm a\|^2+2\|\bm a\|\|\bm b\|+\|\bm b\|^2);

&math(=\left(\|\bm a\|+\|\bm b\|\right)^2);

両辺とも正なので、平方根を取れば与式を得る。

* ベクトルの為す角 [#j0250396]

&math(\bm a,\bm b); が共にゼロでないとき、シュワルツの不等式より

&math(-1\le\frac{(\bm a,\bm b)}{\|\bm a\|\|\bm b\|}\le1);

したがって、

&math(\frac{(\bm a,\bm b)}{\|\bm a\|\|\bm b\|}=\cos \theta);
すなわち
&math((\bm a,\bm b)=\|\bm a\|\|\bm b\|\cos \theta);

を満たす &math(\theta); ただし &math(0\le\theta\le\pi); がただ一つ決まる。

この &math(\theta); を &math(\bm a,\bm b); の「為す角」と呼ぶ。

- ここまで、内積によりベクトルの長さと角度が定義されることが分かった~
(ベクトルの長さや角度は内積の定義に依存して決まる)

* ベクトルの直交 [#v83096b5]

&math(\cos \left(\pi/2\right)=0); より、

&math(\theta=\pi/2=90^\circ); のときに「内積がゼロ」になる

そこで、&math((\bm a,\bm b)=0); であることを 「&math(\bm a,\bm b); が直交する」と言う。

実は、&math(\bm a,\bm b); の一方または両方がゼロの時もやはり
&math((\bm a,\bm b)=0); となるが、&math(\theta); は定まらない。

だが、この場合も含めて「直交」を定義する。

&math((\bm a,\bm b)=0); ⇔ &math(\bm a \perp \bm b);

すなわち、ゼロベクトル &math(\bm o); は全てのベクトルに直交する。

* 正規化ベクトル [#de37b9ae]

正規ベクトル: ノルムが1のベクトルのこと

ゼロでない任意のベクトル &math(\bm a); に対して、
&math(\frac{1}{\|\bm a\|}\bm a); としてノルムを1にする操作を
「正規化」と呼ぶ。

* 正規直交系 [#ude8ebc8]

ベクトル &math(\bm a_1,\bm a_2,\dots,\bm a_n); が正規直交系である、とは

- 正規:すべてのベクトルのノルムが1である &math(\|\bm a_i\|=1); すなわち &math((\bm a_i,\bm a_i)=1);
- 直交:ベクトルは互いに直交する &math(i\ne j\rightarrow(\bm a_i,\bm a_j)=0);

の条件を満たすこと。

- 条件はまとめて &math((\bm a_i,\bm a_j)=\delta_{ij}); と書ける。
- 基本ベクトル &math(\bm e_1,\bm e_2,\dots,\bm e_n); は正規直交系である

** 正規直交系は一次独立である [#m48703a3]

&math(\bm a_1,\bm a_2,\dots,\bm a_n); が正規直交系であるとき、

&math(\sum_{k=1}^nc_k\bm a_k=\bm o); が成り立つとすると、両辺と &math(\bm a_i); との内積を取ることで、

&math((\bm a_i,\sum_{k=1}^nc_k\bm a_k));
&math(=\sum_{k=1}^nc_k(\bm a_i,\bm a_k));
&math(=\sum_{k=1}^nc_k\delta_{ik});
&math(=c_i=(\bm a_i,\bm o)=0);

したがって、すべての &math(i); について &math(c_i=0); となることが導かれる。

** 成分の導出 [#f4426604]

同様にして、基本ベクトル &math(\bm e_1,\bm e_2,\dots,\bm e_n); は正規直交系であるから、

&math(\bm x=\begin{bmatrix}x_1\\x_2\\\vdots\\x_n\end{bmatrix}=\sum_{k=1}^nx_k\bm e_k);

のとき、&math(\bm x); と &math(\bm e_k); との内積を取ることにより、

&math((\bm e_i,\bm x));
&math(=\sum_{k=1}^nx_k(\bm e_i,\bm e_k));
&math(=\sum_{k=1}^nx_k\delta_{ik});
&math(=x_i);

として &math(\bm e_i); 方向の成分を求めることができる。

すなわち、任意の &math(\bm x); について、

&math(\bm x=\sum_{k=1}^n(\bm e_i,\bm x)\bm e_k);

が成り立つ(結構重要)。

* グラム・シュミットの直交化法 [#i789773f]

[[線形代数I/要点/(グラム)シュミットの直交化法]]

* 直交変換 [#kde39428]

任意の &math(\bm x,\bm y); に対して、

&math((f(\bm x),f(\bm y))=(\bm x,\bm y)); ← 内積の値を保存する

を満たす一次変換 &math(f(\bm x)\ :\ \mathbb R^n\rightarrow \mathbb R^n);
を直交変換と呼ぶ。(なぜ直交?の答えは後ほど)

- 直交変換は &math(\|f(\bm x)\|=\|\bm x\|); を満たす。← ノルムを保存する~
(定義より、ほぼ明らか)~
こちらを直交変換の定義とする場合もある(同値な条件であるため)

練習:

&math(\|f(\bm x)\|=\|\bm x\|); から &math((f(\bm x),f(\bm y))=(\bm x,\bm y)); を導こう。

(証明)

条件より &math(\|f(\bm x-\bm y)\|=\|\bm x-\bm y\|);

(左辺)^^2^^

&math(=\|f(\bm x)-f(\bm y)\|^2);

&math(=\|f(\bm x)\|^2-2(f(\bm x),f(\bm y))+\|f(\bm y)\|^2);

&math(=\|\bm x\|^2-2(f(\bm x),f(\bm y))+\|\bm y\|^2);

(右辺)^^2^^

&math(=\|\bm x\|^2-2(\bm x,\bm y)+\|\bm y\|^2);

したがって、&math((f(\bm x),f(\bm y))=(\bm x,\bm y));

** 合同変換 [#v63bd062]

直交変換はすべてのベクトルの長さを保つから、それはすなわち「合同変換」である。~
合同変換 = 回転 ( + 反転 )

∵三角形の3辺の長さが等しければ合同であったのを思い出そう。

* R^^n^^ にて標準内積を取る場合 [#ic301bf7]

&math(\|\bm a\|=\sqrt{a_1^2+a_2^2+\dots+a_n^2}); である。

また、

&math((\bm a,\bm b)=a_1b_1+a_2b_2+\dots+a_nb_n=\begin{bmatrix}a_1&a_2&\dots&a_n\end{bmatrix}\begin{bmatrix}b_1\\b_2\\\dots\\b_n\end{bmatrix}=\transpose \bm a\bm b);

と書けるから、

&math((\bm a,A\bm b)=\transpose \bm a(A\bm b)=\transpose (\transpose \,A\bm a)\bm b=(\transpose A\bm a,\bm b));

したがって、&math(A); が対称行列 &math(\transpose A=A); の時に限り、

&math((\bm a,A\bm b)=(A\bm a,\bm b));

が成り立つ。

** 直交行列 [#u25e29f3]

標準内積を用いた場合、直交変換の標準行列 &math(R); は任意の &math(\bm a,\bm b); に対して、

&math((R\bm a,R\bm b)=(\bm a,\transpose R R\bm b)=(\bm a,\bm b));

を満たす。したがって、2つの基本ベクトルに対しても

&math((\bm e_i,\transpose R R\bm e_j)=(\bm e_i,\bm e_j)=\delta_{ij});

となるが、この左辺は行列 &math(\transpose R R); の (i,j) 成分に等しい。

すなわち、

&math(\transpose R R=[\delta_{ij}]=I);

であり、&math(R); は 

&math(\transpose R=R^{-1});

を満たす。

この条件を満たす &math(R); を直交行列と呼ぶ。

- 直交変換の表現行列は直交行列である

** なぜ直交? [#w75c4a00]

直交行列の列ベクトル分解を

&math(R=\Bigg[\bm r_1\ \bm r_2\ \dots\ \bm r_n\Bigg]);

と書くと、

&math(\transpose R R=\begin{bmatrix}\hspace{5mm}\transpose\bm r_1\hspace{5mm}\\ \transpose\bm r_2\\ \vdots\\ \transpose\bm r_n\end{bmatrix}\Bigg[\bm r_1\ \bm r_2\ \dots\ \bm r_n\Bigg]=\left[\left(\bm r_i,\bm r_j\right)\right]=[\delta_{ij}]=I);

すなわち、直交行列の列ベクトルは''正規直交系''を為す。

- 同様に、行ベクトルも正規直交系を為す

これが直交変換、直交行列の語源である。

以下の条件はすべて同値である。

- 直交行列
- &math(R^{-1}=\transpose R);
- 行ベクトルが正規直交系
- 列ベクトルが正規直交系

* (発展)標準内積が標準と呼ばれるわけ [#o1f07d04]

** 一般の内積 [#j8a75fcf]

任意の内積に対して、
- ノルム
- 為す角
- 直交

が定義される。

すなわち、任意の内積に対して正規直交系を定義可能である。

** 正規直交基底における内積の成分表示 [#f2cf718d]

&math(\bm e_1,\bm e_2,\dots,\bm e_n); を正規直交基底として、

成分表示を用いて
&math(\bm x=\sum_{i=1}^nx_i\bm e_i);、
&math(\bm y=\sum_{i=1}^ny_i\bm e_i); と表す。

このとき、

&math((\bm x,\bm y)=\sum_{i=1}^n\sum_{j=1}^nx_iy_j(\bm e_i,\bm e_j));
&math(=\sum_{i=1}^n\sum_{j=1}^nx_iy_j\delta_{ij});
&math(=\sum_{i=1}^nx_iy_i);

となる。

すなわち、任意に定義した内積について、
正規直交基底で成分表示した場合に
内積を成分に対する標準内積で求められる。

これが標準内積が標準と呼ばれる理由である。

* コメント [#p817b8d6]

#article_kcaptcha

Counter: 131395 (from 2010/06/03), today: 6, yesterday: 0