という問題を出してました。正解を述べておくと
皆さんの回答を見ると(f)が同じだと思ってしまった人が少し多かったです。
前回の授業の「感想・コメント」の欄に書かれたことと、それに対する返答は、
にあります。
感想の中で「行列式」という言葉を「行列を使った式」という意味で使っている人が何人かいました。
後で出てくるのですが、「行列式」というのは別の意味がある、一つの式の名前なのです。だから「行列を使った式」という意味で「行列式」と言うのは、誤解を生みかねない言葉になってます。
前回の授業のコメントの中で「回転とずらしがよくわからない」という声がありました。回転については後で一章ぐらい掛けてやる予定なので、ここではずらしがどうしてああいう式(ああいう行列)になるのかを説明しておきましょう。以下のビデオを見てください。
あとで「ベクトル」という言葉の意味をより広く定義しなおすことになるのだが、ここでのベクトルの定義は(後でやるよりは)狭く考える。まずは幾何的な定義(図形での定義)を行う。
まずベクトルを「空間的移動を表現する矢印」のような図形的な量として定義していくことにしよう。ベクトル(vector)という単語のもともとの意味は「運ぶもの」であり、「A地点からB地点への移動」を$\vec v_{{\rm A}\to {\rm B}}$あるいは$\vec v_{\rm AB}$(あるいは$\overrightarrow{\rm AB}$)のように記述することから始まった。移動の表現と考えると
「$\vec v_{{\rm A}\to{\rm B}}$:A地点からB地点への移動」と
「$\vec v_{{\rm B}\to{\rm C}}$:B地点からC地点への移動」を【合成】すれば
「$\vec v_{{\rm A}\to{\rm C}}$:A地点からC地点への移動」になる。
というシンプルな「移動と移動の合成」を考えることができる。これを「ベクトルの足し算(加法)」の定義だとしよう。
すなわち、この移動の合成を、のように「ベクトルの和の規則」を定める。$+\vec b$という演算は、「ベクトルの矢印の先を$\vec b$の分だけ移動させる」演算だと考えてもよい。この足し算の定義は「2つの運ぶ動作の足し算」を行っていると思えばいいだろう。
同じことをのような操作だと考えてもよい。このベクトルの足し算のやり方を「平行四辺形の法則」などと呼ぶ。
上で平行四辺形の法則を使うときに、ベクトル$\vec b$を平行移動している。移動前の$\vec b$も移動後の$\vec b$も、どちらも同じ「$\vec b$」であることに注意しよう。ここのベクトルの定義では、矢印の根本と先(移動と考えたときの移動前地点と移動後地点)を同時に同じだけ移動させたものは同じベクトルとみなすことになっている。
平行移動する前のベクトルと後のベクトルを同じとみなすかどうかは、単に定義の問題であり、以下で考える計算ではその方が楽なのでそうする。平行移動の前後は違うベクトルだと考える定義を採用することもある。どちらの定義を採用するにしても、終始一貫していることが重要である(途中でふらふら変えると混乱する)。
たとえば物理でよく使われる「位置ベクトル」は矢印の根元は原点に固定されて動かさない(このようなタイプのベクトルを「束縛ベクトル」と呼んで区別することもある)。また別の例としては力学における「力」がある。力というベクトルは作用点が矢印の根本であるが、作用点が違えば力は違うなお、力の場合、作用点を「力の向きに移動」させた場合はその力学的内容は同じであるので、束縛ベクトルよりは束縛が少し緩い。このタイプのベクトルを「sliding vector」(適切な日本語訳がない)と表現する場合もある。ので、根元の位置は重要である。
たとえば地球上(地球は球面と考えよう)で「北へ100km進む」「東へ100km進む」という移動を考えると、その移動の意味するところは場所によって違う(極端な話、北極や南極ではそのような移動は「定義不可能」である。右の図では球面上で一定距離北もしくは東に進む移動を表現した。場所により、その移動の持つ意味が違っていることがわかる。こういう状況で「平行移動とはなにか?」ということはナイーブには決まらない。
このような「曲がった面」(あるいは曲がった空間)はとりあえず考えないことにしよう。なお、こういう場合でもある一点に限って考えればちゃんとベクトルの加法は定義できる(離れた場所のベクトルを足すことが面倒になるだけである)。
次に、「ベクトルの定数倍」という演算を考えよう。通常の数(「ベクトル」に対比して「スカラー」と呼ぶ)の数式として$\xcol{x}+\xcol{x}=2\xcol{x}$が成り立つように、ベクトルでも$\vec a+\vec a=2\vec a$と考えよう。すると、のように図を描くことで、「ベクトルを2倍する」とは「向きを変えずに長さを2倍にする」ことだとわかる。同様に「3倍」「4倍」を順に定義していけば、「ベクトルの整数倍」という演算が定義できる。この逆を考えて${1\over2}\vec a+{1\over 2}\vec a=\vec a$が成り立つように「${1\over 2}$倍」「${1\over 3}$倍」を順に定義することで「ベクトルの${1\over 整数}$倍」が定義される。こうやって拡張していけば、任意の有理数$\lambda$に関して「ベクトルを$\lambda$倍する」とは「向きを変えずに長さを$\lambda$倍にする」としよう。ここまでくれば$\lambda$が任意の実数に対してこの定義を使ってよいだろう。
実数$\lambda$で割るという計算も「${1\over \lambda}$倍する」という計算で実現する($\lambda=0$を除く)。
ベクトル$\vec a$の長さを$|\vec a|$と書くことにする「ベクトル$\vec a$の長さは$a$」のように、ベクトルの矢印記号を取ったもので長さを表現するという流儀もある。と、${1\over |\vec a|}\vec a$の長さは1になる。長さが1のベクトルは「\newwordE{たんいべくとる}{単位ベクトル}{unit vector}」と呼び、本書では$\ve_{}$という記号$\ve_x$で「$x$方向の単位ベクトル」を表すように、添字で向きを表現することにする。本によっては同じベクトルを$\hat x$で表現する場合などもある。また、$x,y,z$方向の単位ベクトルをそれぞれ$\mathbf{i},\mathbf{j},\mathbf{k}$で表す記法もよく使われる。\本書 では使用しない。で表すことにする。単位ベクトルの向きは下付きの添字で表し、$\ve_x$は「$\xcol{x}$軸方向を向いている単位ベクトル」である。${1\over |\vec a|}\vec a$は「$\vec a$は「$\vec a$の方向を向いている単位ベクトル」なので、$\ve_{\vec a}$と書く。
差の方は、のように「逆向きにしてから足す」と考えてもよいし、
のように「$-\opcol{\vec b}$とは、ベクトルの矢印の根本を$\vec b$の分だけ移動させる演算だ」と考えてもよい。こう定義すれば、 \begin{align} \vec a-\vec b+\vec b=\vec a \end{align} が成り立っていることはすぐにわかる。要は$-\opcol{\vec b}$という演算は$+\opcol{\vec b}$という演算を打ち消す。
逆向きにしてから足す」という考え方なら、 のように「行って戻る」ことで打ち消すと考えればよい。
「根本を移動させる」という考え方なら、 のように「根本も先も動かせば、平行移動したのと同じ(何も変わってない)」から打ち消すことになると考えればよい。
こう定義したことの御利益は、数の場合、 \begin{equation} a+b=c~~~~ならばa=c-b \end{equation} といういわゆる「移項(要は両辺から$b$を引いているだけのことだが)」ができるが、ベクトルでも \begin{equation} \vec a+\vec b=\vec c~~~~ならば\vec a=\vec c-\vec b \end{equation} が成立するようになることである。
こうして「加法(足し算)」と「定数倍」を考えることができるので、その組合せとして「線形結合(linear combination)」を考えよう。
線形結合とは『「線形」は平たくいえば「1次式」もしくは「グラフで描くと直線」』という意味だと前に述べたが、ここでの意味も同じ。線形結合するときは、元のベクトルに関して1次式となるような計算だけをする。「1次結合」と呼ぶこともある。、複数のベクトルにスカラー倍と加法という演算だけを行って別のベクトルを作る操作である。たとえば上の図は「$\xcol{\vec a}$を2倍し、$\ycol{\vec b}$を3倍したものと足す」という操作を行っている。その操作の結果の新しいベクトルを「$\xcol{\vec a}$と$\ycol{\vec b}$の線型結合」のように呼ぶ。たとえば、三つのベクトル$\vec x,\xcol{\vec a},\ycol{\vec b}$の間に、ある実数または複素数の係数$\alpha,\beta$を使った \begin{align} \vec v=\alpha\xcol{\vec a}+\beta\ycol{\vec b}\label{linearcombi} \end{align} なる関係があるとき、「$\vec v$は$\xcol{\vec a}$と$\ycol{\vec b}$の線形結合である」と言う。
平面のベクトルの場合、二つのベクトルがあればその線形結合で任意のベクトルを作ることができる。それはいろんなベクトルの場合で平面上に上のような図を描いてみれば直感的には理解できる。
二つのベクトルもちろんこの二つは「独立」という条件を満たしているものとする。$\xcol{\vec a},\ycol{\vec b}$は一定(「定数」ならぬ、「定ベクトル」と呼ぶべき量)だとすると、$\alpha,\beta$という二つの数を適切に決めれば、どんなベクトル$\vec x$でも表現できる(三つめのベクトル$\vec c$が必要になったりしない)。これを、「平面上のベクトルは自由度が2だ」あるいは「平面上のベクトルは2次元の量である」と言う。「自由度(degree of freedom)」も「次元(dimension)」ややこしいことに、物理では「次元」が別の意味を持つこともある。も「ある集合の要素から一つを特定するには、いったい何個の量を指定すればよいか」を示す。
今は平面を考えているので任意のベクトルを指定するには2個の実数が必要である。もちろん、先立って2本の定ベクトルを選ぶことは済んでいるものとする。このように「ベクトルを表現するために使われる定ベクトルの組」のことを「基底ベクトル(basis vector)」または短く「基底(basis)」と言う。
基底ベクトルは互いに線形独立この言葉については後で説明するが、今考えている2次元ベクトルの場合に限って言えば「線形独立ではない」という言葉の意味は、上の【問い】の答えである。なベクトルの組になっている必要があり、単位ベクトルでかつ互いに直交するように取ることが多い(「多い」であって、そうでないとり方もやってよい)。
平面上のベクトルは「$\xcol{x}$成分と$\ycol{y}$成分」の二つの数字を使って指定できるが、それは基底を「$\xcol{x}$軸方向を向いた単位ベクトル$\ve_x$」と「$\ycol{y}$軸方向を向いた単位ベクトル$\ve_y$」に選んだからである基底は人間が(そのときそのときの状況に応じて)選ぶものである。。
このとき任意のベクトルは \begin{equation} \vec A=A_x\ve_x+A_y\ve_z\label{whatiskiteivector} \end{equation} のように表現され、ベクトルの成分への分解は右の図のように行われる(図には、$A_x=5,A_y=3$の場合を示した)。
こうして、平面上のベクトルを表現するのに、図を描いて考える以外に、成分$A_x,A_y$を指定するという方法があることがわかった。
空間ベクトルの場合は3次元となり、成分も3つ必要となり、 \begin{align} \vec r= \xcol{x}\ve_x+\xcol{y}\ve_y+\zcol{z}\ve_z \end{align} のように三つの基底ベクトルを使って表現する(上の場合、基底ベクトルは$\xcol{x},\ycol{y},\zcol{z}$軸を向いた単位ベクトルを選んだが、こうしなくてはいけないわけでは全くない)。
こうして、ベクトルを「成分と呼ばれる数$N$個(2次元なら2個、3次元なら3個)で表現されたもの」と考えることもできるようになる。次ではその考え方に従ってベクトルの演算を定義しよう。
ここでベクトルの定義を、図形を離れてやり直そう。
$N$次元のベクトルとは実数を$N$個並べたものである(ただそれだけではなく、以下に示す演算の規則が満たされているものをベクトルと呼ぶ)。
まずは\文中式{$N=3$}の場合を考えよう。$\mtx[ccc]{\xcol{x}&\ycol{y}&\zcol{z}}$または$\mtx[c]{\xcol{x}\\[-1mm] \ycol{y}\\[-1mm] \zcol{z}}$のように「$\xcol{x}$成分、$\ycol{y}$成分、$\zcol{z}$成分」(各成分の名前はどうでもよい)と並べて表現する。前節で図形から定義した空間内のベクトル$\vec v$を$\xcol{x},\ycol{y},\zcol{z}$軸方向の基底ベクトルの線形結合として表現すると$v_x\ve_x+v_y\ve_y+v_z\ve_z$のようになるが、これと三つの数字を並べたベクトルとしてのベクトル$\mtx[c]{v_x\\[-1mm]v_y\\[-1mm]v_z}$が対応していることになる。しかし、数ベクトルは特に「矢印」のような図形的定義がなくても書き下すことができるので、こっちの方が「広い」のである。実際、これから先で使うことになる「ベクトル」は平面や空間内で定義されたものとは限らない。これまでに出てきた例でも、$\mtx[c]{りんごの数\\バナナの数}$というのは立派なベクトルなのだ(矢印ではないけれど)。
ベクトルを$\mtx[c]{a_x\\[-1mm]a_y\\[-1mm]a_z}$のように縦に並べるのを「列ベクトル(column vector)」(または「縦ベクトル」)、$\mtx[ccc]{a_x&a_y&a_z}$のように横に並べるのを「行ベクトル(raw vector)」(または「横ベクトル」)と呼ぶ。行と列のどっちが行でどっちが列かわからなくなる、という人は漢字を思い出そう。横線を含む漢字が「行」で、縦線を含む漢字が「列」である。
本講義では、ベクトルは主に$\mtx{a&b\\[-1mm]c&d}\mtx[c]{v_x\\[-1mm] v_y}$のように「行列が掛かる相手」として登場するので、縦ベクトルを基本にし、ベクトルを一文字で$\vec v$と表すときは縦ベクトルだとする。よって$\vec v=\mtx[c]{v_x\\[-1mm]v_y}$}と書く。なお、$\vec v$と書いたときは表現をどのようにするかを指定してない、抽象的なベクトルであり、$\mtx[c]{v_x\\[-1mm]v_y}$と書いたときはある表現を指定した上で(つまり、$x$成分とか$y$成分とは何であるかを指定した上で)「$x$成分は$v_x$、$y$成分は$v_y$」と示している。よってこの二つは数式を書くときの「文脈」が違うので、等号で結ぶのは厳密には正しくない、と言う立場もある。ここでは細かいことは言わずに$=$で書いてしまった。
行列やベクトルの「縦$\leftrightarrow$横」の取り替える操作を「転置(transpose)」と呼び、横ベクトルは「縦ベクトルを転置(transpose)したもの」と解釈する。転置を記号${}^t$を右に付けることで表現するので、$(\vec v)^t=\mtx[cc]{v_x & v_y}$である。
実数の足算(加法)と掛算(乗法)については以下のような法則が成り立つ。
実数の和の満たす法則
\begin{equation} \begin{array}{rl} 交換法則:&a+b=b+a\\ 結合法則:&(a+b)+c=a+(b+c)\\ 分配法則:&a(b+c)=ab+ac \end{array} \end{equation}ベクトルの和と実数倍に関しても以下が成立する。
ベクトルの和と実数倍の満たす法則
\begin{equation} \begin{array}{rl} 交換法則:&\vec a+\vec b=\vec b+\vec a\\ 結合法則:&(\vec a+\vec b)+\vec c=\vec a+(\vec b+\vec c)\\ ベクトル和の分配法則:&\lambda(\vec a+\vec b)=\lambda\vec a+\lambda\vec b\\ スカラー和の分配法則:&(\lambda_1+\lambda_2)\vec a=\lambda_1\vec a+\lambda_2\vec a \end{array} \end{equation}
ここで、通常の数を「スカラー」と呼んでいる。今の場合は実数である(複素数に拡張したりする話は、後でやる)。これらの法則は図を描いて確認することができるだろう。
以下は$\alpha,\beta$およびベクトルの成分が実数の場合を考えよう。
ベクトルは成分を並べて$\vec a=\mtx[c]{a_x,a_y}$と表現してもよい本書ではベクトルを成分表示したときの括弧は(行列の括弧と同様)色を変えて$\mtx[c]{}$のように表現し、演算の順序を指定するための括弧とは区別する。成分と成分の間にコンマ(,)を入れる場合$\mtx[c]{a_x,a_y}$と入れない場合$\mtx{a_x&a_y}$がある。また、縦に並べて$\mtx[c]{a_x\\a_y}$のように表現してもよい。。これを「成分表示」と呼ぶ。こうして分解すると、 \begin{equation} \begin{array}{rl} \vec a+\vec b=&a_x\ve_x+a_y\ve_y+b_x\ve_x+b_y\ve_y\\ =&(a_x+b_x)\ve_x+(a_y+b_y)\ve_y \end{array} \end{equation} となり、ベクトルの足算は成分をそれぞれ足算すればよい。成分表示で書くと上の式は \begin{equation} \mtx[c]{a_x\\a_y}+\mtx[c]{b_x\\b_y}=\mtx[c]{a_x+b_x\\a_y+b_y} \end{equation} である。ベクトルから$\xcol{x}$成分と$\ycol{y}$成分を求める方法については、後で考えよう。
ベクトルを成分で表現したときの引算は \begin{equation} \begin{array}{rl} \vec a-\vec b=&a_x\ve_x+a_y\ve_y-b_x\ve_x-b_y\ve_y\\ =&(a_x-b_x)\ve_x+(a_y-b_y)\ve_y\\ &または\\ \mtx[c]{a_x\\a_y}-\mtx[c]{b_x\\b_y}=&\mtx[c]{a_x-b_x\\a_y-b_y} \end{array} \end{equation} のように成分どうしで引算をすればよい。
ベクトルの線形結合を作るという操作は \begin{align} \goverbrace{\mtx[c]{V_x\\ V_y}}^{\vec V} =\alpha\goverbrace{\mtx[c]{a_x\\ a_y}}^{\vec a}+\beta\goverbrace{\mtx[c]{b_x\\ b_y}}^{\vec v} =\mtx[c]{\alpha a_x+\beta b_y\\ \alpha a_y+\beta b_y} \end{align} と書くことができる。実はこれは、 \begin{align} \mtx[c]{V_x\\ V_y}=\mtx[cc]{a_x&b_x\\ a_y&b_y}\mtx[c]{\alpha\\ \beta} \end{align} という行列計算とやっていることは同じである。ここに現れた行列$\mtx[cc]{a_x&b_x\\ a_y&b_y}$は、$\mtx[cc]{\tatevec{\begin{array}{c}a_x\\a_y\end{array}}&\tatevec{\begin{array}{c}b_x\\b_y\end{array}}}$のように縦ベクトルを二つ並べたものと考えることができる。
$k$個のベクトル$\vec a_i=(\vec a_1,\vec a_2,\cdots\vec a_k)$があって、どんな0ではない係数$ \alpha_i$を持ってきて線形結合を作っても0ベクトルにできないとき、つまり \begin{align} \sum_{i=1}^k \alpha_i\vec a_i= \alpha_1\vec a_1+\alpha_2\vec a_2+\cdots+\alpha_k\vec a_k =\vec 0 \end{align} となるのは全ての$\alpha_i$が0である場合だけであるとき、この$k$個のベクトル$\vec a_i$は「線形独立(linearly independent)」または「一次独立」だと言う。逆に、適当に係数$\allc{\alpha_*}$を本講義では、$\alpha_1,\alpha_2,\cdots,\alpha_k$とずらっと$\alpha_{なんとか}$を並べるのが面倒なときは$\allc{\alpha_*}$と書くことにする。$*$は「ここには任意の数/記号が入る」という意味。もってくれば上の式が成り立つようにできるとき、これらのベクトル$\allc{{\vec v}_*}$は「線形従属(linearly dependent)」または「一次従属」だと言う。
平面のベクトルの場合、2本のベクトル$\vec a,\vec b$が同じ方向を向いてなければ線形独立である。同じ方向を向いていれば、$\vec a=k\vec b$($k$はある定数)が成り立つということで、この場合$\vec a,\vec b$は線形従属である。以上は図形のベクトルの経験から納得できるだろう。数ベクトルで同じことを考えると、ベクトル$\mtx[c]{a_x\\[-1mm]a_y}$と$\mtx[c]{b_x\\[-1mm]b_y}$を考えて \begin{align} \alpha\mtx[c]{a_x\\a_y}+\beta\mtx[c]{b_x\\b_y}\stackrel{?}{=}\mtx[c]{0\\0} \end{align} で等号が成り立つようにしようとすると、$\alpha a_x+\beta b_x=0$にしなくてはいけないから$\beta=-{\alpha a_x\over b_x}$と決まってしまう。すると、 \begin{align} \alpha\mtx[c]{a_x\\a_y}-{\alpha a_x\over b_x}\mtx[c]{b_x\\b_y} = \mtx[c]{0\\\alpha a_y-{\alpha a_x\over b_x}b_y} = \mtx[c]{0\\\alpha \left( a_y-{a_x\over b_x}b_y \right)} \end{align} となるが、$a_y-{a_x\over b_x}b_y=0$が成り立たないと右辺は零ベクトルにならない。この条件は${a_x\over b_x}={a_y\over b_y}=k$と書き直すことができるから、つまりは$\vec a$が$\vec b$の定数倍(今の場合は$k$倍)であるときには(そのときに限り)線形従属である。
$N$次元のベクトルの$k$本の線形結合$\alpha_1\vec v_1+\alpha_2\vec v_2+\cdots \alpha_k\vec v_k$は行列を使って表現すると \begin{align} \mtx[cccc]{\tatevec{\begin{array}{c}\\\vec v_1\\ \\\end{array}}&\tatevec{\begin{array}{c}\\\vec v_2\\ \\\end{array}}&\cdots&\tatevec{\begin{array}{c}\\\vec v_k\\ \\\end{array}}}\mtx[c]{\alpha_1\\\alpha_2\\\vdots\\\alpha_k} \end{align} と書くことができる。このベクトル$\allc{{\vec v}_*}$が線形従属なら、上の式の計算結果が$\vec 0$になることがある。線形従属かどうかを判定するにはどうすればよいかというと、この行列の性質を調べればよい。その性質とはなにかについては、後でじっくり説明しよう。
3次元以上については線形従属の条件は単純に「定数倍」とはならない(たとえば、3本のベクトルが互いに平行ではないが\文中式{$\vec a+\vec b+\vec c=0$}になっている状況は考えられる)。$N$次元のベクトル空間では、線形独立なベクトルは$N$個しかない。定義から、$N$次元なら任意のベクトルを(基底を$\vec v_1,\vec v_2,\cdots,\vec v_N$として)$\vec V=\alpha_1\vec v_1+\alpha_2\vec v_2+\cdots \alpha_N\vec v_N$と表すことができる($\alpha_1,\alpha_2,\cdots,\alpha_N$は適切に選ばれた係数)。
なお、webClassに情報を載せていますが、授業があった日の午後7時より約1時間、オンラインオフィスアワーとしてzoomを開いてます。質問や相談などがある人は来て話してください。
webclassでのアンケートによる、感想・コメントなどをここに記します。
青字は受講者からの声、赤字は前野よりの返答です。
主なもの、代表的なもののみについて記し、回答しています。