定義域と値域の基底を 1 組ずつ固定すると、有限次元ベクトル空間の間の線形写像は行列と 1 対 1 に対応します。行列とは線形写像の「座標表示」であって、数の並びそのものに意味があるわけではありません。
行列の積は「行と列を掛けて足す」という奇妙な規則で定義されます。この規則は、写像の合成の表現行列を計算すると必然的に現れます。積が結合的なのも、合成が結合的だからです。
基底を取り替えると、同じ線形写像の表現行列は A ′ = Q − 1 A P A' = Q^{-1} A P A ′ = Q − 1 A P に変わります。行列の見た目の複雑さは、写像の性質ではなく基底の選び方の反映です。
連立一次方程式 A x = b A\boldsymbol{x} = \boldsymbol{b} A x = b は、「b \boldsymbol{b} b は線形写像 x ↦ A x \boldsymbol{x} \mapsto A\boldsymbol{x} x ↦ A x の像に入るか。入るなら逆像は何か」という問いに翻訳されます。
ガウスの消去法は、解集合を変えない変形だけで係数行列を簡約階段形へ直す手続きです。そこに現れるピボットの個数が階数 rank A \operatorname{rank} A rank A であり、像の次元に一致します。
解集合は空か、さもなければ「特殊解 1 つ + 核」という平行移動された部分空間で、次元は n − rank A n - \operatorname{rank} A n − rank A です。可解性は rank A = rank [ A ∣ b ] \operatorname{rank} A = \operatorname{rank} [A \mid \boldsymbol{b}] rank A = rank [ A ∣ b ] で判定できます。
連立一次方程式は古い主題です。中国の『九章算術』(1 世紀頃)の第 8 章「方程」には、算木を並べて係数を配置し、列どうしを引き算して未知数を消す手続きが記されています。実質的に掃き出し法です。19 世紀にはガウスが、小惑星の軌道決定にともなう最小二乗法の計算でこの方法を系統的に使いました。係数だけを並べて機械的に処理する発想は、行列という言葉より二千年近く古いのです。
では、行列という概念は何を付け加えたのでしょうか。「行列 (matrix)」という語は 1850 年に J. J. シルヴェスターが導入し、1858 年にケイリーが論文「行列論の覚書」で、行列そのものを足したり掛けたりする代数として扱いました。決定的だったのは積の定義です。ケイリーは行列の積を、一次変換(一次の変数変換)を続けて行った結果に対応するものとして定めました。ここで数表は、単なる係数の置き場所から、演算をもつ数学的対象へ格上げされます。
初めて行列を学ぶとき、多くの人が引っかかるのはこの積です。足し算は成分ごとなのに、掛け算はなぜ
( B A ) i j = ∑ k b i k a k j (BA)_{ij} = \sum_{k} b_{ik} a_{kj} ( B A ) ij = k ∑ b ik a k j
という込み入った形なのか。成分ごとに掛ければよいではないか、と。この疑問への答えは 1 つしかありません。行列は線形写像を表すためにあり、積は写像の合成を表すために定義されたから です。成分ごとの積(アダマール積)も定義はできますが、それは合成に対応しません。合成に対応させたいという要求が、あの和の形を強制するのです。
この記事では、まずその対応(表現行列)を作ります。行列は基底を決めたときの線形写像の顔であり、基底を変えれば顔は変わる。この視点に立つと、A x = b A\boldsymbol{x} = \boldsymbol{b} A x = b は「線形写像 f A f_A f A による b \boldsymbol{b} b の逆像を求めよ」という幾何の問題になります。解が 0 個か 1 個か無限個かという分類も、像と核という 2 つの部分空間の言葉で一度に片づきます。
以下、K K K は体を表し、K = R K = \mathbb{R} K = R または K = C K = \mathbb{C} K = C と思って読んで構いません。ベクトル空間、一次独立、基底、次元、線形写像、核と像については ベクトル空間と線形変換 で扱いました(線形独立・生成系・基底(定義 5.1)[ベクトル空間と線形変換] 、核と像(定義 7.1)[ベクトル空間と線形変換] )。ここでは以降で繰り返し使う 2 つの事実を、証明つきで確認しておきます。
V V V を K K K 上のベクトル空間、B = ( e 1 , … , e n ) \mathcal{B} = (\boldsymbol{e}_1, \ldots, \boldsymbol{e}_n) B = ( e 1 , … , e n ) をその基底(順序を込めて考えるので順序基底 といいます)とします。m × n m \times n m × n 行列全体の集合を M m , n ( K ) M_{m,n}(K) M m , n ( K ) 、n n n 次正方行列全体を M n ( K ) M_n(K) M n ( K ) 、n n n 次単位行列を I n I_n I n と書きます。K n K^n K n の元は列ベクトルとして扱い、転置は A T A^{\mathsf{T}} A T と書きます。
命題 2.1 (座標同型と、基底による線形写像の決定 )
V V V を K K K 上の n n n 次元ベクトル空間、B = ( e 1 , … , e n ) \mathcal{B} = (\boldsymbol{e}_1, \ldots, \boldsymbol{e}_n) B = ( e 1 , … , e n ) をその順序基底とする。
各 v ∈ V \boldsymbol{v} \in V v ∈ V に対し v = ∑ j = 1 n x j e j \boldsymbol{v} = \sum_{j=1}^{n} x_j \boldsymbol{e}_j v = ∑ j = 1 n x j e j と表す係数 ( x 1 , … , x n ) (x_1, \ldots, x_n) ( x 1 , … , x n ) はただ 1 通りに定まり、写像
φ B : V → K n , φ B ( v ) = ( x 1 , … , x n ) T \varphi_{\mathcal{B}} : V \to K^n, \qquad \varphi_{\mathcal{B}}(\boldsymbol{v}) = (x_1, \ldots, x_n)^{\mathsf{T}} φ B : V → K n , φ B ( v ) = ( x 1 , … , x n ) T は線形同型である。これを B \mathcal{B} B に関する座標同型 と呼ぶ。
2. W W W を K K K 上の任意のベクトル空間、w 1 , … , w n ∈ W \boldsymbol{w}_1, \ldots, \boldsymbol{w}_n \in W w 1 , … , w n ∈ W を任意の元とする。このとき f ( e j ) = w j ( j = 1 , … , n ) f(\boldsymbol{e}_j) = \boldsymbol{w}_j\ (j = 1, \ldots, n) f ( e j ) = w j ( j = 1 , … , n ) を満たす線形写像 f : V → W f : V \to W f : V → W がただ 1 つ存在する。
証明(命題 2.1)
B \mathcal{B} B は V V V を張るので、少なくとも 1 通りの表示 v = ∑ j x j e j \boldsymbol{v} = \sum_j x_j \boldsymbol{e}_j v = ∑ j x j e j があります。∑ j x j e j = ∑ j y j e j \sum_j x_j \boldsymbol{e}_j = \sum_j y_j \boldsymbol{e}_j ∑ j x j e j = ∑ j y j e j とすると ∑ j ( x j − y j ) e j = 0 \sum_j (x_j - y_j)\boldsymbol{e}_j = \boldsymbol{0} ∑ j ( x j − y j ) e j = 0 ですが、B \mathcal{B} B は一次独立なのですべての j j j で x j − y j = 0 x_j - y_j = 0 x j − y j = 0 、すなわち表示は一意です。したがって φ B \varphi_{\mathcal{B}} φ B は矛盾なく定義されます。
線形性を確かめます。v = ∑ j x j e j \boldsymbol{v} = \sum_j x_j \boldsymbol{e}_j v = ∑ j x j e j 、w = ∑ j y j e j \boldsymbol{w} = \sum_j y_j \boldsymbol{e}_j w = ∑ j y j e j 、c ∈ K c \in K c ∈ K とすると、ベクトル空間の公理から v + c w = ∑ j ( x j + c y j ) e j \boldsymbol{v} + c\boldsymbol{w} = \sum_j (x_j + c y_j)\boldsymbol{e}_j v + c w = ∑ j ( x j + c y j ) e j であり、表示の一意性よりこれが v + c w \boldsymbol{v} + c\boldsymbol{w} v + c w の座標です。ゆえに φ B ( v + c w ) = φ B ( v ) + c φ B ( w ) \varphi_{\mathcal{B}}(\boldsymbol{v} + c\boldsymbol{w}) = \varphi_{\mathcal{B}}(\boldsymbol{v}) + c\,\varphi_{\mathcal{B}}(\boldsymbol{w}) φ B ( v + c w ) = φ B ( v ) + c φ B ( w ) 。
全射性は、( x 1 , … , x n ) T ∈ K n (x_1, \ldots, x_n)^{\mathsf{T}} \in K^n ( x 1 , … , x n ) T ∈ K n に対し v = ∑ j x j e j \boldsymbol{v} = \sum_j x_j \boldsymbol{e}_j v = ∑ j x j e j が原像を与えることから従います。単射性は、φ B ( v ) = 0 \varphi_{\mathcal{B}}(\boldsymbol{v}) = \boldsymbol{0} φ B ( v ) = 0 なら v = ∑ j 0 ⋅ e j = 0 \boldsymbol{v} = \sum_j 0 \cdot \boldsymbol{e}_j = \boldsymbol{0} v = ∑ j 0 ⋅ e j = 0 であり、線形写像は核が { 0 } \{\boldsymbol{0}\} { 0 } のとき単射だからです。
存在: 1 の一意性を使って f ( ∑ j x j e j ) : = ∑ j x j w j f\left(\sum_j x_j \boldsymbol{e}_j\right) := \sum_j x_j \boldsymbol{w}_j f ( ∑ j x j e j ) := ∑ j x j w j と定めます。座標が一意なのでこの定義に曖昧さはありません。線形性は 1 と同じ計算です。e j \boldsymbol{e}_j e j の座標は第 j j j 成分だけが 1 1 1 で他が 0 0 0 なので f ( e j ) = w j f(\boldsymbol{e}_j) = \boldsymbol{w}_j f ( e j ) = w j です。
一意性: g : V → W g : V \to W g : V → W も線形で g ( e j ) = w j g(\boldsymbol{e}_j) = \boldsymbol{w}_j g ( e j ) = w j を満たすとすると、任意の v = ∑ j x j e j \boldsymbol{v} = \sum_j x_j \boldsymbol{e}_j v = ∑ j x j e j に対し g g g の線形性から g ( v ) = ∑ j x j g ( e j ) = ∑ j x j w j = f ( v ) g(\boldsymbol{v}) = \sum_j x_j g(\boldsymbol{e}_j) = \sum_j x_j \boldsymbol{w}_j = f(\boldsymbol{v}) g ( v ) = ∑ j x j g ( e j ) = ∑ j x j w j = f ( v ) となり g = f g = f g = f です。
∎
命題 2.1 の 2 は「線形写像は基底の行き先だけで決まり、しかもその行き先は自由に指定してよい」と読みます。無限個の点での値を決めるはずの写像が n n n 個のデータで決まる。これが、行列という有限のデータで写像を記述できる理由です。
定義 3.1 (表現行列 )
V V V を n n n 次元、W W W を m m m 次元の K K K ベクトル空間とし、B = ( e 1 , … , e n ) \mathcal{B} = (\boldsymbol{e}_1, \ldots, \boldsymbol{e}_n) B = ( e 1 , … , e n ) を V V V の、C = ( u 1 , … , u m ) \mathcal{C} = (\boldsymbol{u}_1, \ldots, \boldsymbol{u}_m) C = ( u 1 , … , u m ) を W W W の順序基底とする。線形写像 f : V → W f : V \to W f : V → W に対し、各 j j j について f ( e j ) ∈ W f(\boldsymbol{e}_j) \in W f ( e j ) ∈ W を C \mathcal{C} C で展開したときの係数を a i j a_{ij} a ij とおく。すなわち
f ( e j ) = ∑ i = 1 m a i j u i ( j = 1 , … , n ) . f(\boldsymbol{e}_j) = \sum_{i=1}^{m} a_{ij}\,\boldsymbol{u}_i \qquad (j = 1, \ldots, n). f ( e j ) = i = 1 ∑ m a ij u i ( j = 1 , … , n ) . このとき A = ( a i j ) ∈ M m , n ( K ) A = (a_{ij}) \in M_{m,n}(K) A = ( a ij ) ∈ M m , n ( K ) を、f f f の基底 B , C \mathcal{B}, \mathcal{C} B , C に関する表現行列 といい、M C B ( f ) M_{\mathcal{C}\mathcal{B}}(f) M CB ( f ) と書く。
添字に注意してください。a i j a_{ij} a ij の第 2 添字 j j j が「どの基底ベクトルを写したか」、第 1 添字 i i i が「その行き先の第何成分か」です。言い換えると
A の第 j 列 = φ C ( f ( e j ) ) A \text{ の第 } j \text{ 列} = \varphi_{\mathcal{C}}\bigl(f(\boldsymbol{e}_j)\bigr) A の第 j 列 = φ C ( f ( e j ) )
であり、表現行列の列は基底ベクトルの行き先を並べたもの です。行列を見たら、まず列を 1 本ずつ「どこへ行くベクトルか」として読んでください。
定理 3.2 (線形写像と行列の対応 )
V , W , B , C V, W, \mathcal{B}, \mathcal{C} V , W , B , C を 定義 3.1 のとおりとし、dim V = n \dim V = n dim V = n 、dim W = m \dim W = m dim W = m とする。x = ( x 1 , … , x n ) T ∈ K n \boldsymbol{x} = (x_1, \ldots, x_n)^{\mathsf{T}} \in K^n x = ( x 1 , … , x n ) T ∈ K n と A = ( a i j ) ∈ M m , n ( K ) A = (a_{ij}) \in M_{m,n}(K) A = ( a ij ) ∈ M m , n ( K ) に対し、A x ∈ K m A\boldsymbol{x} \in K^m A x ∈ K m を
( A x ) i = ∑ j = 1 n a i j x j ( i = 1 , … , m ) (A\boldsymbol{x})_i = \sum_{j=1}^{n} a_{ij} x_j \qquad (i = 1, \ldots, m) ( A x ) i = j = 1 ∑ n a ij x j ( i = 1 , … , m ) で定める。このとき次が成り立つ。
A = M C B ( f ) A = M_{\mathcal{C}\mathcal{B}}(f) A = M CB ( f ) とおくと、すべての v ∈ V \boldsymbol{v} \in V v ∈ V に対し φ C ( f ( v ) ) = A φ B ( v ) \varphi_{\mathcal{C}}\bigl(f(\boldsymbol{v})\bigr) = A\,\varphi_{\mathcal{B}}(\boldsymbol{v}) φ C ( f ( v ) ) = A φ B ( v ) が成り立つ。
写像 M C B : Hom ( V , W ) → M m , n ( K ) M_{\mathcal{C}\mathcal{B}} : \operatorname{Hom}(V, W) \to M_{m,n}(K) M CB : Hom ( V , W ) → M m , n ( K ) 、f ↦ M C B ( f ) f \mapsto M_{\mathcal{C}\mathcal{B}}(f) f ↦ M CB ( f ) は線形同型である。ここで Hom ( V , W ) \operatorname{Hom}(V,W) Hom ( V , W ) は V V V から W W W への線形写像全体のなすベクトル空間を表す。
特に dim Hom ( V , W ) = m n \dim \operatorname{Hom}(V, W) = mn dim Hom ( V , W ) = mn である。
証明(定理 3.2)
v ∈ V \boldsymbol{v} \in V v ∈ V を取り、φ B ( v ) = ( x 1 , … , x n ) T \varphi_{\mathcal{B}}(\boldsymbol{v}) = (x_1, \ldots, x_n)^{\mathsf{T}} φ B ( v ) = ( x 1 , … , x n ) T 、すなわち v = ∑ j x j e j \boldsymbol{v} = \sum_{j} x_j \boldsymbol{e}_j v = ∑ j x j e j とします。f f f の線形性と 定義 3.1 から
f ( v ) = f ( ∑ j = 1 n x j e j ) = ∑ j = 1 n x j f ( e j ) = ∑ j = 1 n x j ∑ i = 1 m a i j u i = ∑ i = 1 m ( ∑ j = 1 n a i j x j ) u i . \begin{aligned}
f(\boldsymbol{v})
&= f\Bigl(\sum_{j=1}^{n} x_j \boldsymbol{e}_j\Bigr)
= \sum_{j=1}^{n} x_j\, f(\boldsymbol{e}_j) \\
&= \sum_{j=1}^{n} x_j \sum_{i=1}^{m} a_{ij}\,\boldsymbol{u}_i
= \sum_{i=1}^{m} \Bigl(\sum_{j=1}^{n} a_{ij} x_j\Bigr) \boldsymbol{u}_i .
\end{aligned} f ( v ) = f ( j = 1 ∑ n x j e j ) = j = 1 ∑ n x j f ( e j ) = j = 1 ∑ n x j i = 1 ∑ m a ij u i = i = 1 ∑ m ( j = 1 ∑ n a ij x j ) u i . 最後の等号は有限和の順序交換です。命題 2.1 の 1 より C \mathcal{C} C に関する座標は一意なので、f ( v ) f(\boldsymbol{v}) f ( v ) の第 i i i 座標は ∑ j a i j x j = ( A x ) i \sum_j a_{ij}x_j = (A\boldsymbol{x})_i ∑ j a ij x j = ( A x ) i です。これが主張です。
なお、A x A\boldsymbol{x} A x の定義はこの計算結果を書き写したものにすぎません。行列とベクトルの積は、天下り式の規則ではなく「座標で書いた線形写像」そのものです。
線形性: f , g : V → W f, g : V \to W f , g : V → W と c ∈ K c \in K c ∈ K に対し ( f + c g ) ( e j ) = f ( e j ) + c g ( e j ) (f + cg)(\boldsymbol{e}_j) = f(\boldsymbol{e}_j) + c\,g(\boldsymbol{e}_j) ( f + c g ) ( e j ) = f ( e j ) + c g ( e j ) であり、右辺を C \mathcal{C} C で展開した係数は、それぞれの係数の和と c c c 倍です(命題 2.1 の 1 の線形性)。よって M C B ( f + c g ) = M C B ( f ) + c M C B ( g ) M_{\mathcal{C}\mathcal{B}}(f + cg) = M_{\mathcal{C}\mathcal{B}}(f) + c\,M_{\mathcal{C}\mathcal{B}}(g) M CB ( f + c g ) = M CB ( f ) + c M CB ( g ) 。
単射性: M C B ( f ) = O M_{\mathcal{C}\mathcal{B}}(f) = O M CB ( f ) = O (零行列)とすると、すべての j j j で f ( e j ) = ∑ i 0 ⋅ u i = 0 f(\boldsymbol{e}_j) = \sum_i 0 \cdot \boldsymbol{u}_i = \boldsymbol{0} f ( e j ) = ∑ i 0 ⋅ u i = 0 です。零写像もこの条件を満たすので、命題 2.1 の 2 の一意性から f = 0 f = 0 f = 0 。線形写像の核が { 0 } \{0\} { 0 } なので単射です。
全射性: A = ( a i j ) ∈ M m , n ( K ) A = (a_{ij}) \in M_{m,n}(K) A = ( a ij ) ∈ M m , n ( K ) を任意に取り、w j : = ∑ i = 1 m a i j u i ∈ W \boldsymbol{w}_j := \sum_{i=1}^{m} a_{ij}\boldsymbol{u}_i \in W w j := ∑ i = 1 m a ij u i ∈ W とおきます。命題 2.1 の 2 より f ( e j ) = w j f(\boldsymbol{e}_j) = \boldsymbol{w}_j f ( e j ) = w j を満たす線形写像 f f f が存在し、その表現行列はまさに A A A です。
最後に dim M m , n ( K ) = m n \dim M_{m,n}(K) = mn dim M m , n ( K ) = mn (成分がちょうど 1 つだけ 1 1 1 の行列 m n mn mn 個が基底をなす)ですから、同型により dim Hom ( V , W ) = m n \dim \operatorname{Hom}(V,W) = mn dim Hom ( V , W ) = mn です。
∎
定理 3.2 の 1 は、次の図式が可換であること、つまり「上を通っても下を通っても同じ」ことを主張しています。座標同型で V , W V, W V , W を K n , K m K^n, K^m K n , K m に取り替えると、抽象的な f f f が行列の掛け算に化けるわけです。
flowchart LR
V["V (基底 B)"] -->|"f"| W["W (基底 C)"]
V -->|"座標同型 φ_B"| Kn["K^n"]
W -->|"座標同型 φ_C"| Km["K^m"]
Kn -->|"x ↦ Ax"| Km 表現行列とは、座標同型で写した先での f のふるまいのこと
例 3.3 (平面の回転 )
V = W = R 2 V = W = \mathbb{R}^2 V = W = R 2 、E = ( e 1 , e 2 ) \mathcal{E} = (\boldsymbol{e}_1, \boldsymbol{e}_2) E = ( e 1 , e 2 ) を標準基底、f = R θ f = R_\theta f = R θ を原点のまわりの角 θ \theta θ の回転とします。表現行列を求めるには、基底ベクトルの行き先だけを見れば十分です。e 1 = ( 1 , 0 ) T \boldsymbol{e}_1 = (1,0)^{\mathsf{T}} e 1 = ( 1 , 0 ) T は単位円周上の角 0 0 0 の点なので、回転後は角 θ \theta θ の点、すなわち ( cos θ , sin θ ) T (\cos\theta, \sin\theta)^{\mathsf{T}} ( cos θ , sin θ ) T に移ります。e 2 = ( 0 , 1 ) T \boldsymbol{e}_2 = (0,1)^{\mathsf{T}} e 2 = ( 0 , 1 ) T は角 π / 2 \pi/2 π /2 の点なので、回転後は角 θ + π / 2 \theta + \pi/2 θ + π /2 の点、すなわち ( cos ( θ + π / 2 ) , sin ( θ + π / 2 ) ) T = ( − sin θ , cos θ ) T (\cos(\theta + \pi/2), \sin(\theta+\pi/2))^{\mathsf{T}} = (-\sin\theta, \cos\theta)^{\mathsf{T}} ( cos ( θ + π /2 ) , sin ( θ + π /2 ) ) T = ( − sin θ , cos θ ) T です。これらを列に並べて
M E E ( R θ ) = ( cos θ − sin θ sin θ cos θ ) . M_{\mathcal{E}\mathcal{E}}(R_\theta) = \begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix}. M EE ( R θ ) = ( cos θ sin θ − sin θ cos θ ) . 暗記すべきは行列ではなく「第 1 列は e 1 \boldsymbol{e}_1 e 1 の行き先」という読み方です。
例 3.4 (多項式の微分は行列である )
P n P_n P n を次数 n n n 以下の実係数多項式全体のなす空間とします。P 3 P_3 P 3 の基底として B = ( 1 , x , x 2 , x 3 ) \mathcal{B} = (1, x, x^2, x^3) B = ( 1 , x , x 2 , x 3 ) 、P 2 P_2 P 2 の基底として C = ( 1 , x , x 2 ) \mathcal{C} = (1, x, x^2) C = ( 1 , x , x 2 ) を取り、微分写像 D : P 3 → P 2 D : P_3 \to P_2 D : P 3 → P 2 、D ( p ) = p ′ D(p) = p' D ( p ) = p ′ を考えます。D D D が線形であることは微分の線形性そのものです。基底の行き先は
D ( 1 ) = 0 , D ( x ) = 1 , D ( x 2 ) = 2 x , D ( x 3 ) = 3 x 2 D(1) = 0, \quad D(x) = 1, \quad D(x^2) = 2x, \quad D(x^3) = 3x^2 D ( 1 ) = 0 , D ( x ) = 1 , D ( x 2 ) = 2 x , D ( x 3 ) = 3 x 2 ですから、これを C \mathcal{C} C の座標に直して列に並べると
M C B ( D ) = ( 0 1 0 0 0 0 2 0 0 0 0 3 ) ∈ M 3 , 4 ( R ) . M_{\mathcal{C}\mathcal{B}}(D) = \begin{pmatrix} 0 & 1 & 0 & 0 \\ 0 & 0 & 2 & 0 \\ 0 & 0 & 0 & 3 \end{pmatrix} \in M_{3,4}(\mathbb{R}). M CB ( D ) = 0 0 0 1 0 0 0 2 0 0 0 3 ∈ M 3 , 4 ( R ) . 確かめてみます。p ( x ) = 2 − x + 4 x 2 + x 3 p(x) = 2 - x + 4x^2 + x^3 p ( x ) = 2 − x + 4 x 2 + x 3 の座標は ( 2 , − 1 , 4 , 1 ) T (2, -1, 4, 1)^{\mathsf{T}} ( 2 , − 1 , 4 , 1 ) T で、
( 0 1 0 0 0 0 2 0 0 0 0 3 ) ( 2 − 1 4 1 ) = ( − 1 8 3 ) \begin{pmatrix} 0 & 1 & 0 & 0 \\ 0 & 0 & 2 & 0 \\ 0 & 0 & 0 & 3 \end{pmatrix}
\begin{pmatrix} 2 \\ -1 \\ 4 \\ 1 \end{pmatrix}
= \begin{pmatrix} -1 \\ 8 \\ 3 \end{pmatrix} 0 0 0 1 0 0 0 2 0 0 0 3 2 − 1 4 1 = − 1 8 3 となり、− 1 + 8 x + 3 x 2 -1 + 8x + 3x^2 − 1 + 8 x + 3 x 2 を表します。一方 p ′ ( x ) = − 1 + 8 x + 3 x 2 p'(x) = -1 + 8x + 3x^2 p ′ ( x ) = − 1 + 8 x + 3 x 2 ですから一致しました。微分という無限小の操作が、基底を選ぶだけで 3 × 4 3 \times 4 3 × 4 の数表になります。行列は数値計算だけの道具ではなく、線形な操作すべての共通言語です。
線形写像を 2 つ続けて施すとどうなるかを、表現行列の言葉で計算してみます。これが積の定義の出どころです。
U , V , W U, V, W U , V , W をそれぞれ p , n , m p, n, m p , n , m 次元の K K K ベクトル空間、順序基底を D = ( d 1 , … , d p ) \mathcal{D} = (\boldsymbol{d}_1, \ldots, \boldsymbol{d}_p) D = ( d 1 , … , d p ) 、B = ( e 1 , … , e n ) \mathcal{B} = (\boldsymbol{e}_1, \ldots, \boldsymbol{e}_n) B = ( e 1 , … , e n ) 、C = ( u 1 , … , u m ) \mathcal{C} = (\boldsymbol{u}_1, \ldots, \boldsymbol{u}_m) C = ( u 1 , … , u m ) とします。線形写像 f : U → V f : U \to V f : U → V と g : V → W g : V \to W g : V → W の表現行列を A = ( a k j ) = M B D ( f ) ∈ M n , p ( K ) A = (a_{kj}) = M_{\mathcal{B}\mathcal{D}}(f) \in M_{n,p}(K) A = ( a k j ) = M B D ( f ) ∈ M n , p ( K ) 、B = ( b i k ) = M C B ( g ) ∈ M m , n ( K ) B = (b_{ik}) = M_{\mathcal{C}\mathcal{B}}(g) \in M_{m,n}(K) B = ( b ik ) = M CB ( g ) ∈ M m , n ( K ) とおきます。合成 g ∘ f : U → W g \circ f : U \to W g ∘ f : U → W も線形ですから表現行列を持ちます。それを求めましょう。定義 3.1 に従って基底ベクトルの行き先を計算します。
( g ∘ f ) ( d j ) = g ( f ( d j ) ) = g ( ∑ k = 1 n a k j e k ) = ∑ k = 1 n a k j g ( e k ) = ∑ k = 1 n a k j ∑ i = 1 m b i k u i = ∑ i = 1 m ( ∑ k = 1 n b i k a k j ) u i . \begin{aligned}
(g \circ f)(\boldsymbol{d}_j)
&= g\bigl(f(\boldsymbol{d}_j)\bigr)
= g\Bigl(\sum_{k=1}^{n} a_{kj}\boldsymbol{e}_k\Bigr)
= \sum_{k=1}^{n} a_{kj}\, g(\boldsymbol{e}_k) \\
&= \sum_{k=1}^{n} a_{kj} \sum_{i=1}^{m} b_{ik}\,\boldsymbol{u}_i
= \sum_{i=1}^{m} \Bigl(\sum_{k=1}^{n} b_{ik} a_{kj}\Bigr) \boldsymbol{u}_i .
\end{aligned} ( g ∘ f ) ( d j ) = g ( f ( d j ) ) = g ( k = 1 ∑ n a k j e k ) = k = 1 ∑ n a k j g ( e k ) = k = 1 ∑ n a k j i = 1 ∑ m b ik u i = i = 1 ∑ m ( k = 1 ∑ n b ik a k j ) u i .
3 番目の等号で g g g の線形性を使いました。結果として、( g ∘ f ) (g\circ f) ( g ∘ f ) の表現行列の ( i , j ) (i,j) ( i , j ) 成分は ∑ k b i k a k j \sum_k b_{ik}a_{kj} ∑ k b ik a k j になります。この式を「積」と名づければ、表現行列の対応が合成と両立します。
定義 4.1 (行列の積 )
B = ( b i k ) ∈ M m , n ( K ) B = (b_{ik}) \in M_{m,n}(K) B = ( b ik ) ∈ M m , n ( K ) 、A = ( a k j ) ∈ M n , p ( K ) A = (a_{kj}) \in M_{n,p}(K) A = ( a k j ) ∈ M n , p ( K ) とする。B B B の列数と A A A の行数がともに n n n で一致しているとき、積 B A ∈ M m , p ( K ) BA \in M_{m,p}(K) B A ∈ M m , p ( K ) を
( B A ) i j = ∑ k = 1 n b i k a k j ( 1 ≤ i ≤ m , 1 ≤ j ≤ p ) (BA)_{ij} = \sum_{k=1}^{n} b_{ik} a_{kj} \qquad (1 \le i \le m,\ 1 \le j \le p) ( B A ) ij = k = 1 ∑ n b ik a k j ( 1 ≤ i ≤ m , 1 ≤ j ≤ p ) で定める。
p = 1 p = 1 p = 1 の場合が 定理 3.2 の行列とベクトルの積です。また定義から、B A BA B A の第 j j j 列は B ⋅ ( A の第 j 列 ) B \cdot (A \text{ の第 } j \text{ 列}) B ⋅ ( A の第 j 列 ) に等しいことがわかります(両辺の第 i i i 成分がともに ∑ k b i k a k j \sum_k b_{ik}a_{kj} ∑ k b ik a k j だからです)。この「列ごとに見る」性質は後で使います。
定理 4.2 (積は合成の表現行列 )
上の記号のもとで
M C D ( g ∘ f ) = M C B ( g ) M B D ( f ) M_{\mathcal{C}\mathcal{D}}(g \circ f) = M_{\mathcal{C}\mathcal{B}}(g)\; M_{\mathcal{B}\mathcal{D}}(f) M C D ( g ∘ f ) = M CB ( g ) M B D ( f ) が成り立つ。
証明(定理 4.2) 上で行った計算がそのまま証明です。( g ∘ f ) ( d j ) = ∑ i ( ∑ k b i k a k j ) u i (g\circ f)(\boldsymbol{d}_j) = \sum_{i} \bigl(\sum_k b_{ik}a_{kj}\bigr)\boldsymbol{u}_i ( g ∘ f ) ( d j ) = ∑ i ( ∑ k b ik a k j ) u i であり、命題 2.1 の 1 より C \mathcal{C} C に関する係数は一意に定まるので、M C D ( g ∘ f ) M_{\mathcal{C}\mathcal{D}}(g\circ f) M C D ( g ∘ f ) の ( i , j ) (i,j) ( i , j ) 成分は ∑ k b i k a k j \sum_k b_{ik}a_{kj} ∑ k b ik a k j です。これは 定義 4.1 により ( B A ) i j (BA)_{ij} ( B A ) ij に一致します。
∎
行列の積のわかりにくさは、合成写像のわかりにくさを引き受けたものです。そのぶん、写像の性質はそのまま行列の性質に翻訳されます。次の系はその典型で、成分計算を一切せずに証明できます。
系 4.3 (積の結合法則 )
A ∈ M n , p ( K ) A \in M_{n,p}(K) A ∈ M n , p ( K ) 、B ∈ M m , n ( K ) B \in M_{m,n}(K) B ∈ M m , n ( K ) 、C ∈ M l , m ( K ) C \in M_{l,m}(K) C ∈ M l , m ( K ) に対し ( C B ) A = C ( B A ) (CB)A = C(BA) ( C B ) A = C ( B A ) が成り立つ。
証明(系 4.3) 行列 A ∈ M n , p ( K ) A \in M_{n,p}(K) A ∈ M n , p ( K ) に対し線形写像 f A : K p → K n f_A : K^p \to K^n f A : K p → K n 、f A ( x ) = A x f_A(\boldsymbol{x}) = A\boldsymbol{x} f A ( x ) = A x を対応させます。K p , K n K^p, K^n K p , K n の標準基底に関する f A f_A f A の表現行列は A A A 自身です。実際、標準基底ベクトル e j \boldsymbol{e}_j e j に対し A e j A\boldsymbol{e}_j A e j の第 i i i 成分は ∑ k a i k ( e j ) k = a i j \sum_k a_{ik}(\boldsymbol{e}_j)_k = a_{ij} ∑ k a ik ( e j ) k = a ij 、つまり A e j A\boldsymbol{e}_j A e j は A A A の第 j j j 列だからです。
定理 4.2 を 2 回使うと、C ( B A ) C(BA) C ( B A ) は f C ∘ ( f B ∘ f A ) f_C \circ (f_B \circ f_A) f C ∘ ( f B ∘ f A ) の、( C B ) A (CB)A ( C B ) A は ( f C ∘ f B ) ∘ f A (f_C \circ f_B) \circ f_A ( f C ∘ f B ) ∘ f A の表現行列です。ところが写像の合成は結合的で、どちらも x ↦ f C ( f B ( f A ( x ) ) ) \boldsymbol{x} \mapsto f_C\bigl(f_B(f_A(\boldsymbol{x}))\bigr) x ↦ f C ( f B ( f A ( x )) ) という同一の写像です。表現行列は写像から一意に定まる(定理 3.2 の 2 の単射性)ので、C ( B A ) = ( C B ) A C(BA) = (CB)A C ( B A ) = ( C B ) A が従います。
∎
例 4.4 (回転の合成と三角関数の加法定理 )
例 3.3 の回転行列について、R α ∘ R β = R α + β R_\alpha \circ R_\beta = R_{\alpha + \beta} R α ∘ R β = R α + β は幾何的に明らかです(角 β \beta β 回してから角 α \alpha α 回すのは、角 α + β \alpha + \beta α + β 回すのと同じ)。定理 4.2 により、表現行列の側でも同じ等式が成り立たなければなりません。左辺を 定義 4.1 に従って計算すると
( cos α − sin α sin α cos α ) ( cos β − sin β sin β cos β ) = ( cos α cos β − sin α sin β − ( cos α sin β + sin α cos β ) sin α cos β + cos α sin β cos α cos β − sin α sin β ) \begin{pmatrix} \cos\alpha & -\sin\alpha \\ \sin\alpha & \cos\alpha \end{pmatrix}
\begin{pmatrix} \cos\beta & -\sin\beta \\ \sin\beta & \cos\beta \end{pmatrix}
=
\begin{pmatrix}
\cos\alpha\cos\beta - \sin\alpha\sin\beta & -(\cos\alpha\sin\beta + \sin\alpha\cos\beta) \\
\sin\alpha\cos\beta + \cos\alpha\sin\beta & \cos\alpha\cos\beta - \sin\alpha\sin\beta
\end{pmatrix} ( cos α sin α − sin α cos α ) ( cos β sin β − sin β cos β ) = ( cos α cos β − sin α sin β sin α cos β + cos α sin β − ( cos α sin β + sin α cos β ) cos α cos β − sin α sin β ) となります。右辺は R α + β R_{\alpha+\beta} R α + β 、すなわち ( 1 , 1 ) (1,1) ( 1 , 1 ) 成分が cos ( α + β ) \cos(\alpha+\beta) cos ( α + β ) 、( 2 , 1 ) (2,1) ( 2 , 1 ) 成分が sin ( α + β ) \sin(\alpha+\beta) sin ( α + β ) の行列です。成分を比較して
cos ( α + β ) = cos α cos β − sin α sin β , sin ( α + β ) = sin α cos β + cos α sin β \cos(\alpha+\beta) = \cos\alpha\cos\beta - \sin\alpha\sin\beta, \qquad
\sin(\alpha+\beta) = \sin\alpha\cos\beta + \cos\alpha\sin\beta cos ( α + β ) = cos α cos β − sin α sin β , sin ( α + β ) = sin α cos β + cos α sin β が得られます。加法定理は「回転の合成」を座標で書いたものにほかならない、というわけです。
同じ線形写像でも、基底を変えれば表現行列は変わります。ここを曖昧にしたまま先へ進むと、後の章で対角化の意味がわからなくなります。まず、基底の取り替え自体を行列で書きます。
定義 5.1 (基底変換行列 )
V V V を n n n 次元 K K K ベクトル空間、B = ( e 1 , … , e n ) \mathcal{B} = (\boldsymbol{e}_1, \ldots, \boldsymbol{e}_n) B = ( e 1 , … , e n ) と B ′ = ( e 1 ′ , … , e n ′ ) \mathcal{B}' = (\boldsymbol{e}'_1, \ldots, \boldsymbol{e}'_n) B ′ = ( e 1 ′ , … , e n ′ ) をその 2 組の順序基底とする。各 e j ′ \boldsymbol{e}'_j e j ′ を B \mathcal{B} B で展開して
e j ′ = ∑ i = 1 n p i j e i ( j = 1 , … , n ) \boldsymbol{e}'_j = \sum_{i=1}^{n} p_{ij}\,\boldsymbol{e}_i \qquad (j = 1, \ldots, n) e j ′ = i = 1 ∑ n p ij e i ( j = 1 , … , n ) と書くとき、P = ( p i j ) ∈ M n ( K ) P = (p_{ij}) \in M_n(K) P = ( p ij ) ∈ M n ( K ) を B ′ \mathcal{B}' B ′ から B \mathcal{B} B への基底変換行列 という。定義から P = M B B ′ ( i d V ) P = M_{\mathcal{B}\mathcal{B}'}(\mathrm{id}_V) P = M B B ′ ( id V ) である。
P P P は恒等写像の表現行列であり、定理 3.2 の 1 を f = i d V f = \mathrm{id}_V f = id V に適用すると、すべての v ∈ V \boldsymbol{v} \in V v ∈ V について
φ B ( v ) = P φ B ′ ( v ) \varphi_{\mathcal{B}}(\boldsymbol{v}) = P\,\varphi_{\mathcal{B}'}(\boldsymbol{v}) φ B ( v ) = P φ B ′ ( v )
が成り立ちます。つまり P P P は「新しい座標を入れると古い座標が出てくる」変換です。基底の変換 B → B ′ \mathcal{B} \to \mathcal{B}' B → B ′ と座標の変換 B ′ → B \mathcal{B}' \to \mathcal{B} B ′ → B が逆向きになるので、ここは混乱しやすいところです。
注意
1 次元の例で向きを確認します。V = R V = \mathbb{R} V = R (長さ)、e 1 = 1 m \boldsymbol{e}_1 = 1\,\text{m} e 1 = 1 m 、e 1 ′ = 1 cm \boldsymbol{e}'_1 = 1\,\text{cm} e 1 ′ = 1 cm とすると e 1 ′ = 0.01 e 1 \boldsymbol{e}'_1 = 0.01\,\boldsymbol{e}_1 e 1 ′ = 0.01 e 1 で P = ( 0.01 ) P = (0.01) P = ( 0.01 ) です。「3 m」の新座標(cm 単位)は 300 300 300 、旧座標は 3 3 3 で、確かに 3 = 0.01 × 300 3 = 0.01 \times 300 3 = 0.01 × 300 。基底を細かくすると座標の数値は大きくなります。
定理 5.2 (表現行列の変換則 )
f : V → W f : V \to W f : V → W を線形写像とする。V V V に 2 組の順序基底 B , B ′ \mathcal{B}, \mathcal{B}' B , B ′ を、W W W に 2 組の順序基底 C , C ′ \mathcal{C}, \mathcal{C}' C , C ′ を取り、P = M B B ′ ( i d V ) P = M_{\mathcal{B}\mathcal{B}'}(\mathrm{id}_V) P = M B B ′ ( id V ) 、Q = M C C ′ ( i d W ) Q = M_{\mathcal{C}\mathcal{C}'}(\mathrm{id}_W) Q = M C C ′ ( id W ) を基底変換行列とする。このとき P , Q P, Q P , Q は正則で、
M C ′ B ′ ( f ) = Q − 1 M C B ( f ) P M_{\mathcal{C}'\mathcal{B}'}(f) = Q^{-1}\, M_{\mathcal{C}\mathcal{B}}(f)\, P M C ′ B ′ ( f ) = Q − 1 M CB ( f ) P が成り立つ。
証明(定理 5.2) まず M B B ( i d V ) = I n M_{\mathcal{B}\mathcal{B}}(\mathrm{id}_V) = I_n M BB ( id V ) = I n です。実際 i d V ( e j ) = e j \mathrm{id}_V(\boldsymbol{e}_j) = \boldsymbol{e}_j id V ( e j ) = e j なので、定義 3.1 の係数は a i j = δ i j a_{ij} = \delta_{ij} a ij = δ ij (i = j i = j i = j のとき 1 1 1 、それ以外は 0 0 0 )です。
P ∗ : = M B ′ B ( i d V ) P^{\ast} := M_{\mathcal{B}'\mathcal{B}}(\mathrm{id}_V) P ∗ := M B ′ B ( id V ) とおくと、定理 4.2 を i d V ∘ i d V = i d V \mathrm{id}_V \circ \mathrm{id}_V = \mathrm{id}_V id V ∘ id V = id V に適用して
P P ∗ = M B B ′ ( i d V ) M B ′ B ( i d V ) = M B B ( i d V ) = I n , P P^{\ast} = M_{\mathcal{B}\mathcal{B}'}(\mathrm{id}_V)\, M_{\mathcal{B}'\mathcal{B}}(\mathrm{id}_V) = M_{\mathcal{B}\mathcal{B}}(\mathrm{id}_V) = I_n, P P ∗ = M B B ′ ( id V ) M B ′ B ( id V ) = M BB ( id V ) = I n , 同様に P ∗ P = M B ′ B ′ ( i d V ) = I n P^{\ast} P = M_{\mathcal{B}'\mathcal{B}'}(\mathrm{id}_V) = I_n P ∗ P = M B ′ B ′ ( id V ) = I n となるので、P P P は正則で P − 1 = M B ′ B ( i d V ) P^{-1} = M_{\mathcal{B}'\mathcal{B}}(\mathrm{id}_V) P − 1 = M B ′ B ( id V ) です。Q Q Q についても同じです。
次に f = i d W ∘ f ∘ i d V f = \mathrm{id}_W \circ f \circ \mathrm{id}_V f = id W ∘ f ∘ id V と書き、定理 4.2 を 2 回使います。
M C ′ B ′ ( f ) = M C ′ C ( i d W ) M C B ( f ) M B B ′ ( i d V ) = Q − 1 M C B ( f ) P . M_{\mathcal{C}'\mathcal{B}'}(f) = M_{\mathcal{C}'\mathcal{C}}(\mathrm{id}_W)\; M_{\mathcal{C}\mathcal{B}}(f)\; M_{\mathcal{B}\mathcal{B}'}(\mathrm{id}_V) = Q^{-1} M_{\mathcal{C}\mathcal{B}}(f)\, P . M C ′ B ′ ( f ) = M C ′ C ( id W ) M CB ( f ) M B B ′ ( id V ) = Q − 1 M CB ( f ) P . ここで最後の等号に、いま示した M C ′ C ( i d W ) = Q − 1 M_{\mathcal{C}'\mathcal{C}}(\mathrm{id}_W) = Q^{-1} M C ′ C ( id W ) = Q − 1 を使いました。
∎
例 5.4 (射影 — 良い基底では対角行列になる )
R 2 \mathbb{R}^2 R 2 で、直線 ℓ = span { a } \ell = \operatorname{span}\{\boldsymbol{a}\} ℓ = span { a } (a = ( 2 , 1 ) T \boldsymbol{a} = (2,1)^{\mathsf{T}} a = ( 2 , 1 ) T )の上への、直線 span { b } \operatorname{span}\{\boldsymbol{b}\} span { b } (b = ( − 1 , 2 ) T \boldsymbol{b} = (-1,2)^{\mathsf{T}} b = ( − 1 , 2 ) T )に沿った射影 p p p を考えます。a \boldsymbol{a} a と b \boldsymbol{b} b は直交していて一次独立なので B ′ = ( a , b ) \mathcal{B}' = (\boldsymbol{a}, \boldsymbol{b}) B ′ = ( a , b ) は基底です。p p p は定義から p ( a ) = a p(\boldsymbol{a}) = \boldsymbol{a} p ( a ) = a 、p ( b ) = 0 p(\boldsymbol{b}) = \boldsymbol{0} p ( b ) = 0 を満たし、命題 2.1 の 2 によりこの 2 条件で一意に定まります。基底 B ′ \mathcal{B}' B ′ に関する表現行列は、基底ベクトルの行き先を並べるだけで
A ′ = M B ′ B ′ ( p ) = ( 1 0 0 0 ) A' = M_{\mathcal{B}'\mathcal{B}'}(p) = \begin{pmatrix} 1 & 0 \\ 0 & 0 \end{pmatrix} A ′ = M B ′ B ′ ( p ) = ( 1 0 0 0 ) です。射影という操作の本質(片方の方向は残し、もう片方は潰す)が、そのまま見えています。
では標準基底 E \mathcal{E} E での表現行列 A = M E E ( p ) A = M_{\mathcal{E}\mathcal{E}}(p) A = M EE ( p ) は何でしょうか。基底変換行列は、新しい基底 a , b \boldsymbol{a}, \boldsymbol{b} a , b の標準座標を列に並べた
P = ( 2 − 1 1 2 ) , P − 1 = 1 5 ( 2 1 − 1 2 ) P = \begin{pmatrix} 2 & -1 \\ 1 & 2 \end{pmatrix}, \qquad
P^{-1} = \frac{1}{5}\begin{pmatrix} 2 & 1 \\ -1 & 2 \end{pmatrix} P = ( 2 1 − 1 2 ) , P − 1 = 5 1 ( 2 − 1 1 2 ) です(P P − 1 = I 2 P P^{-1} = I_2 P P − 1 = I 2 は直接計算で確かめられます)。注意 5.3 の式 A ′ = P − 1 A P A' = P^{-1}AP A ′ = P − 1 A P を A A A について解くと A = P A ′ P − 1 A = P A' P^{-1} A = P A ′ P − 1 なので
A = ( 2 − 1 1 2 ) ( 1 0 0 0 ) ⋅ 1 5 ( 2 1 − 1 2 ) = ( 2 0 1 0 ) ⋅ 1 5 ( 2 1 − 1 2 ) = 1 5 ( 4 2 2 1 ) . A = \begin{pmatrix} 2 & -1 \\ 1 & 2\end{pmatrix}\begin{pmatrix} 1 & 0 \\ 0 & 0\end{pmatrix} \cdot \frac{1}{5}\begin{pmatrix} 2 & 1 \\ -1 & 2\end{pmatrix}
= \begin{pmatrix} 2 & 0 \\ 1 & 0 \end{pmatrix}\cdot \frac{1}{5}\begin{pmatrix} 2 & 1 \\ -1 & 2\end{pmatrix}
= \frac{1}{5}\begin{pmatrix} 4 & 2 \\ 2 & 1 \end{pmatrix}. A = ( 2 1 − 1 2 ) ( 1 0 0 0 ) ⋅ 5 1 ( 2 − 1 1 2 ) = ( 2 1 0 0 ) ⋅ 5 1 ( 2 − 1 1 2 ) = 5 1 ( 4 2 2 1 ) . 検算します。A a = 1 5 ( 4 ⋅ 2 + 2 ⋅ 1 , 2 ⋅ 2 + 1 ⋅ 1 ) T = 1 5 ( 10 , 5 ) T = ( 2 , 1 ) T = a A\boldsymbol{a} = \frac{1}{5}(4\cdot 2 + 2\cdot 1,\; 2\cdot 2 + 1\cdot 1)^{\mathsf{T}} = \frac{1}{5}(10, 5)^{\mathsf{T}} = (2,1)^{\mathsf{T}} = \boldsymbol{a} A a = 5 1 ( 4 ⋅ 2 + 2 ⋅ 1 , 2 ⋅ 2 + 1 ⋅ 1 ) T = 5 1 ( 10 , 5 ) T = ( 2 , 1 ) T = a 、A b = 1 5 ( − 4 + 4 , − 2 + 2 ) T = 0 A\boldsymbol{b} = \frac{1}{5}(-4+4,\; -2+2)^{\mathsf{T}} = \boldsymbol{0} A b = 5 1 ( − 4 + 4 , − 2 + 2 ) T = 0 となり、確かに p p p の表現行列です。
同じ写像が、良い基底では diag ( 1 , 0 ) \operatorname{diag}(1,0) diag ( 1 , 0 ) 、標準基底では分数の入った行列になりました。行列が複雑なのではなく、基底が写像に合っていないのです。写像に合った基底を探す作業が、固有値と固有ベクトル と 対角化とジョルダン標準形 の主題になります。
m m m 個の一次方程式からなる n n n 変数の連立一次方程式
{ a 11 x 1 + a 12 x 2 + ⋯ + a 1 n x n = b 1 a 21 x 1 + a 22 x 2 + ⋯ + a 2 n x n = b 2 ⋮ a m 1 x 1 + a m 2 x 2 + ⋯ + a m n x n = b m \begin{cases}
a_{11}x_1 + a_{12}x_2 + \cdots + a_{1n}x_n = b_1 \\
a_{21}x_1 + a_{22}x_2 + \cdots + a_{2n}x_n = b_2 \\
\qquad\qquad\qquad \vdots \\
a_{m1}x_1 + a_{m2}x_2 + \cdots + a_{mn}x_n = b_m
\end{cases} ⎩ ⎨ ⎧ a 11 x 1 + a 12 x 2 + ⋯ + a 1 n x n = b 1 a 21 x 1 + a 22 x 2 + ⋯ + a 2 n x n = b 2 ⋮ a m 1 x 1 + a m 2 x 2 + ⋯ + a mn x n = b m
は、A = ( a i j ) ∈ M m , n ( K ) A = (a_{ij}) \in M_{m,n}(K) A = ( a ij ) ∈ M m , n ( K ) 、x = ( x 1 , … , x n ) T \boldsymbol{x} = (x_1,\ldots,x_n)^{\mathsf{T}} x = ( x 1 , … , x n ) T 、b = ( b 1 , … , b m ) T \boldsymbol{b} = (b_1,\ldots,b_m)^{\mathsf{T}} b = ( b 1 , … , b m ) T とおけば、定理 3.2 で定めた行列とベクトルの積を使って A x = b A\boldsymbol{x} = \boldsymbol{b} A x = b と一行で書けます。A A A を係数行列 、A A A の右に b \boldsymbol{b} b を 1 列付け加えた m × ( n + 1 ) m \times (n+1) m × ( n + 1 ) 行列 [ A ∣ b ] [A \mid \boldsymbol{b}] [ A ∣ b ] を拡大係数行列 といいます。
この一行の式には 3 通りの読み方があり、場面によって使い分けます。
読み方 式の見方 幾何的な意味 行で読む 各行 ∑ j a i j x j = b i \sum_j a_{ij}x_j = b_i ∑ j a ij x j = b i を 1 本の式と見る K n K^n K n 内の m m m 枚の超平面の共通部分を求める列で読む x 1 a 1 + ⋯ + x n a n = b x_1 \boldsymbol{a}_1 + \cdots + x_n \boldsymbol{a}_n = \boldsymbol{b} x 1 a 1 + ⋯ + x n a n = b (a j \boldsymbol{a}_j a j は A A A の第 j j j 列)b \boldsymbol{b} b を列ベクトルの一次結合で表せるか写像で読む f A ( x ) = b f_A(\boldsymbol{x}) = \boldsymbol{b} f A ( x ) = b 、f A ( x ) = A x f_A(\boldsymbol{x}) = A\boldsymbol{x} f A ( x ) = A x 線形写像 f A f_A f A による b \boldsymbol{b} b の逆像 f A − 1 ( b ) f_A^{-1}(\boldsymbol{b}) f A − 1 ( b ) を求める
高校までの「2 直線の交点」は行の読み方ですが、理論で強力なのは後の 2 つです。列の読み方が正しいことは積の定義から確かめられます。A x A\boldsymbol{x} A x の第 i i i 成分 ∑ j a i j x j \sum_j a_{ij}x_j ∑ j a ij x j は ∑ j x j a j \sum_j x_j \boldsymbol{a}_j ∑ j x j a j の第 i i i 成分と同じだからです。つまり
A x = x 1 a 1 + x 2 a 2 + ⋯ + x n a n A\boldsymbol{x} = x_1\boldsymbol{a}_1 + x_2\boldsymbol{a}_2 + \cdots + x_n\boldsymbol{a}_n A x = x 1 a 1 + x 2 a 2 + ⋯ + x n a n
がすべての x \boldsymbol{x} x で成り立ちます。行列とベクトルの積は、列ベクトルの一次結合である 。この一言は覚えておく価値があります。
ベクトル空間と線形変換 で線形写像の核と像を定義しました。行列 A ∈ M m , n ( K ) A \in M_{m,n}(K) A ∈ M m , n ( K ) に対しては、線形写像 f A : K n → K m f_A : K^n \to K^m f A : K n → K m の核と像をそのまま A A A の核・像と呼び、
Ker A = { x ∈ K n : A x = 0 } ⊆ K n , Im A = { A x : x ∈ K n } ⊆ K m \operatorname{Ker} A = \{\boldsymbol{x} \in K^n : A\boldsymbol{x} = \boldsymbol{0}\} \subseteq K^n, \qquad
\operatorname{Im} A = \{A\boldsymbol{x} : \boldsymbol{x} \in K^n\} \subseteq K^m Ker A = { x ∈ K n : A x = 0 } ⊆ K n , Im A = { A x : x ∈ K n } ⊆ K m
と書きます。どちらも部分空間です(核と像の基本性質(命題 7.2)[ベクトル空間と線形変換] の特別な場合です)。上で示した一次結合の表示から
Im A = span { a 1 , … , a n } \operatorname{Im} A = \operatorname{span}\{\boldsymbol{a}_1, \ldots, \boldsymbol{a}_n\} Im A = span { a 1 , … , a n }
すなわち像は A A A の列ベクトルが張る部分空間(列空間 )に一致します。この言葉で、可解性の問題は「b ∈ Im A \boldsymbol{b} \in \operatorname{Im}A b ∈ Im A か」という 1 つの問いに集約されます。
命題 6.1 (解集合の構造 )
A ∈ M m , n ( K ) A \in M_{m,n}(K) A ∈ M m , n ( K ) 、b ∈ K m \boldsymbol{b} \in K^m b ∈ K m とし、S = { x ∈ K n : A x = b } S = \{\boldsymbol{x} \in K^n : A\boldsymbol{x} = \boldsymbol{b}\} S = { x ∈ K n : A x = b } とおく。
b ∉ Im A \boldsymbol{b} \notin \operatorname{Im}A b ∈ / Im A ならば S = ∅ S = \varnothing S = ∅ である。
x 0 ∈ S \boldsymbol{x}_0 \in S x 0 ∈ S が 1 つ存在すれば、S = x 0 + Ker A : = { x 0 + z : z ∈ Ker A } S = \boldsymbol{x}_0 + \operatorname{Ker}A := \{\boldsymbol{x}_0 + \boldsymbol{z} : \boldsymbol{z} \in \operatorname{Ker}A\} S = x 0 + Ker A := { x 0 + z : z ∈ Ker A } である。
証明(命題 6.1)
は Im A \operatorname{Im}A Im A の定義そのものです。S ≠ ∅ S \ne \varnothing S = ∅ なら、その元 x \boldsymbol{x} x について b = A x ∈ Im A \boldsymbol{b} = A\boldsymbol{x} \in \operatorname{Im}A b = A x ∈ Im A となります。
まず ⊇ \supseteq ⊇ を示します。z ∈ Ker A \boldsymbol{z} \in \operatorname{Ker}A z ∈ Ker A に対し、f A f_A f A の線形性から
A ( x 0 + z ) = A x 0 + A z = b + 0 = b A(\boldsymbol{x}_0 + \boldsymbol{z}) = A\boldsymbol{x}_0 + A\boldsymbol{z} = \boldsymbol{b} + \boldsymbol{0} = \boldsymbol{b} A ( x 0 + z ) = A x 0 + A z = b + 0 = b なので x 0 + z ∈ S \boldsymbol{x}_0 + \boldsymbol{z} \in S x 0 + z ∈ S です。
次に ⊆ \subseteq ⊆ を示します。x ∈ S \boldsymbol{x} \in S x ∈ S とし z : = x − x 0 \boldsymbol{z} := \boldsymbol{x} - \boldsymbol{x}_0 z := x − x 0 とおくと、線形性から A z = A x − A x 0 = b − b = 0 A\boldsymbol{z} = A\boldsymbol{x} - A\boldsymbol{x}_0 = \boldsymbol{b} - \boldsymbol{b} = \boldsymbol{0} A z = A x − A x 0 = b − b = 0 なので z ∈ Ker A \boldsymbol{z} \in \operatorname{Ker}A z ∈ Ker A であり、x = x 0 + z ∈ x 0 + Ker A \boldsymbol{x} = \boldsymbol{x}_0 + \boldsymbol{z} \in \boldsymbol{x}_0 + \operatorname{Ker}A x = x 0 + z ∈ x 0 + Ker A です。
∎
命題 6.1 は理論のほとんどを先取りしています。非斉次系の解集合は、空でない限り、斉次系の解集合(核)を特殊解 1 つ分だけ平行移動したものです。核は原点を通る部分空間、解集合はその平行移動(アフィン部分空間 )です。
O z x₀ x₀ + z Ker A(Ax = 0 の解) Ax = b の解集合 解集合は核を特殊解だけ平行移動したもの
図の状況では dim Ker A = 1 \dim\operatorname{Ker}A = 1 dim Ker A = 1 なので、解は 1 次元分の自由度をもちます。核が { 0 } \{\boldsymbol{0}\} { 0 } だけなら解は高々 1 つ、核が正の次元をもち解が 1 つでもあれば解は無限個です(K K K が無限体のとき)。「解は 0 個・1 個・無限個のいずれか」という高校で習う事実は、核の次元の問題に還元されました。あとは核の次元を計算する手段、すなわちガウスの消去法です。
連立方程式を解くとき、私たちは「式を何倍かして別の式に足す」「式を入れ替える」といった操作をします。これが許されるのは解集合を変えないからです。同じ操作を拡大係数行列の行への操作として定式化し、どこまで簡単にできるかを突き詰めたのが掃き出し法です。
定義 7.1 (基本行変形と行同値 )
行列 A A A に対する次の 3 種類の操作を基本行変形 という。
(型 I)第 p p p 行と第 q q q 行を入れ替える(p ≠ q p \ne q p = q )。
(型 II)第 p p p 行を c ≠ 0 c \ne 0 c = 0 倍する。
(型 III)第 q q q 行の c c c 倍を第 p p p 行に加える(p ≠ q p \ne q p = q 、c ∈ K c \in K c ∈ K )。
A A A に有限回の基本行変形を施して A ′ A' A ′ が得られるとき、A A A と A ′ A' A ′ は行同値 であるという。
補題 7.2 (基本行変形の三つの性質 )
A ∈ M m , n ( K ) A \in M_{m,n}(K) A ∈ M m , n ( K ) とし、A A A に 1 回の基本行変形 o o o を施した行列を o ( A ) o(A) o ( A ) と書く。
E o : = o ( I m ) E_o := o(I_m) E o := o ( I m ) (単位行列に同じ変形を施した行列。基本行列 という)とおくと、任意の A ∈ M m , n ( K ) A \in M_{m,n}(K) A ∈ M m , n ( K ) に対し o ( A ) = E o A o(A) = E_o A o ( A ) = E o A が成り立つ。
E o E_o E o は正則であり、その逆行列もまた基本行列である。したがって行同値な行列は、正則行列を左から掛けて移り合う。
[ A ′ ∣ b ′ ] [A' \mid \boldsymbol{b}'] [ A ′ ∣ b ′ ] が [ A ∣ b ] [A \mid \boldsymbol{b}] [ A ∣ b ] と行同値ならば、A x = b A\boldsymbol{x} = \boldsymbol{b} A x = b と A ′ x = b ′ A'\boldsymbol{x} = \boldsymbol{b}' A ′ x = b ′ の解集合は一致する。
証明(補題 7.2)
鍵になるのは次の観察です。任意の E ∈ M m ( K ) E \in M_m(K) E ∈ M m ( K ) 、A ∈ M m , n ( K ) A \in M_{m,n}(K) A ∈ M m , n ( K ) に対し、定義 4.1 より ( E A ) i j = ∑ k = 1 m e i k a k j (EA)_{ij} = \sum_{k=1}^{m} e_{ik}a_{kj} ( E A ) ij = ∑ k = 1 m e ik a k j なので、
E A の第 i 行 = ∑ k = 1 m e i k ( A の第 k 行 ) EA \text{ の第 } i \text{ 行} = \sum_{k=1}^{m} e_{ik}\,\bigl(A \text{ の第 } k \text{ 行}\bigr) E A の第 i 行 = k = 1 ∑ m e ik ( A の第 k 行 ) が成り立ちます。つまり左から行列を掛けると、各行が元の行の一次結合に置き換わり、その係数は掛ける行列の行に書かれている わけです。あとは 3 つの型それぞれで E o = o ( I m ) E_o = o(I_m) E o = o ( I m ) の行を読めば済みます。
型 I では o ( I m ) o(I_m) o ( I m ) の第 p p p 行が I m I_m I m の第 q q q 行(第 q q q 成分だけが 1 1 1 )なので、E o A E_oA E o A の第 p p p 行は A A A の第 q q q 行、第 q q q 行は A A A の第 p p p 行、他は不変です。型 II では第 p p p 行が「第 p p p 成分が c c c 」なので E o A E_oA E o A の第 p p p 行は A A A の第 p p p 行の c c c 倍。型 III では第 p p p 行が「第 p p p 成分が 1 1 1 、第 q q q 成分が c c c 」なので E o A E_oA E o A の第 p p p 行は(A A A の第 p p p 行)+ c ⋅ + c \cdot + c ⋅ (A A A の第 q q q 行)。いずれも主張どおりです。
各基本行変形には、同じ型の逆変形があります。型 I の逆は同じ入れ替え、型 II(c c c 倍)の逆は c − 1 c^{-1} c − 1 倍(c ≠ 0 c \ne 0 c = 0 だから可能)、型 III(第 q q q 行の c c c 倍を加える)の逆は第 q q q 行の − c -c − c 倍を加える操作です。この逆変形を o ′ o' o ′ とし E o ′ = o ′ ( I m ) E_{o'} = o'(I_m) E o ′ = o ′ ( I m ) とおくと、1 より
E o ′ E o = E o ′ ( E o I m ) = o ′ ( o ( I m ) ) = I m E_{o'}E_o = E_{o'}\,\bigl(E_o I_m\bigr) = o'\bigl(o(I_m)\bigr) = I_m E o ′ E o = E o ′ ( E o I m ) = o ′ ( o ( I m ) ) = I m です(I m I_m I m に o o o を施してから o ′ o' o ′ を施すと元に戻るため)。同様に E o E o ′ = I m E_oE_{o'} = I_m E o E o ′ = I m なので E o E_o E o は正則で E o − 1 = E o ′ E_o^{-1} = E_{o'} E o − 1 = E o ′ です。行同値なら A ′ = E o s ⋯ E o 1 A A' = E_{o_s}\cdots E_{o_1}A A ′ = E o s ⋯ E o 1 A と書け、正則行列の積は正則(( E o s ⋯ E o 1 ) − 1 = E o 1 − 1 ⋯ E o s − 1 (E_{o_s}\cdots E_{o_1})^{-1} = E_{o_1}^{-1}\cdots E_{o_s}^{-1} ( E o s ⋯ E o 1 ) − 1 = E o 1 − 1 ⋯ E o s − 1 )なので後半も従います。
1 回の基本行変形について示せば十分です(有限回の繰り返しは帰納法)。定義 4.1 の直後に述べた「積の第 j j j 列は左の行列と右の行列の第 j j j 列の積」より E [ A ∣ b ] = [ E A ∣ E b ] E[A \mid \boldsymbol{b}] = [EA \mid E\boldsymbol{b}] E [ A ∣ b ] = [ E A ∣ E b ] ですから、A ′ = E A A' = EA A ′ = E A 、b ′ = E b \boldsymbol{b}' = E\boldsymbol{b} b ′ = E b (E = E o E = E_o E = E o )です。A x = b A\boldsymbol{x} = \boldsymbol{b} A x = b なら両辺に左から E E E を掛けて A ′ x = E A x = E b = b ′ A'\boldsymbol{x} = E A\boldsymbol{x} = E\boldsymbol{b} = \boldsymbol{b}' A ′ x = E A x = E b = b ′ 。逆に A ′ x = b ′ A'\boldsymbol{x} = \boldsymbol{b}' A ′ x = b ′ なら、2 で示した正則性より両辺に E − 1 E^{-1} E − 1 を掛けて A x = b A\boldsymbol{x} = \boldsymbol{b} A x = b 。よって解集合は一致します。
∎
3 が掃き出し法の正当性そのものです。どれだけ変形しても解集合は動かない。ならば読み取りやすい形まで変形してしまえばよい、というのが次の定義と定理です。
定義 7.3 (階段形と簡約階段形 )
行列 R R R が次の 2 条件を満たすとき**(行)階段形**であるという。
零ベクトルでない行は、すべての零行より上にある。
零でない各行について、左端の 0 0 0 でない成分(その行の主成分 、またはピボット という)の列番号は、行が下に進むにつれて真に増加する。
さらに次の 2 条件も満たすとき、R R R は簡約階段形 であるという。
すべてのピボットの値が 1 1 1 である。
ピボットを含む列は、そのピボット以外の成分がすべて 0 0 0 である。
定理 7.4 (掃き出し法 )
任意の A ∈ M m , n ( K ) A \in M_{m,n}(K) A ∈ M m , n ( K ) は、有限回の基本行変形により簡約階段形に変形できる。さらに、A A A と行同値な簡約階段形はただ 1 つに定まる。
証明(定理 7.4) ここでは存在を、具体的な手続き(ガウス・ジョルダンの消去法)によって示します。一意性の証明は Appendix に回します。
作業行を表す変数 r r r を用意し、r = 1 r = 1 r = 1 から始めます。列 j = 1 , 2 , … , n j = 1, 2, \ldots, n j = 1 , 2 , … , n の順に、次を実行します。
r > m r > m r > m ならば終了する。
第 j j j 列の第 r r r 行以下の成分がすべて 0 0 0 ならば、何もせず次の列へ進む。
そうでなければ、a i j ≠ 0 a_{ij} \ne 0 a ij = 0 となる i ≥ r i \ge r i ≥ r を 1 つ選び、第 i i i 行と第 r r r 行を入れ替える(型 I)。次に第 r r r 行を a r j − 1 a_{rj}^{-1} a r j − 1 倍して、( r , j ) (r,j) ( r , j ) 成分を 1 1 1 にする(型 II)。さらに、i ≠ r i \ne r i = r であるすべての行 i i i から、第 r r r 行の a i j a_{ij} a ij 倍を引く(型 III)。これで第 j j j 列は ( r , j ) (r,j) ( r , j ) 成分だけが 1 1 1 、他は 0 0 0 になる。r r r を 1 1 1 増やして次の列へ進む。
各列を高々 1 回処理するので、高々 n n n 段階、各段階は高々 m + 1 m+1 m + 1 回の基本行変形で終わります。
出力が簡約階段形であることを確かめます。ピボットを立てるたびに r r r と j j j がともに真に増えるので、ピボットの列番号は行が下がるにつれ真に増加します(条件 2)。ここで重要なのは、第 j j j 列でピボットを立てるとき第 r r r 行の第 1 , … , j − 1 1, \ldots, j-1 1 , … , j − 1 成分がすべて 0 0 0 である点です(0 0 0 でない成分があれば、その列を処理した段階でピボットが立っていたはずです)。したがって型 III で第 r r r 行の定数倍を他の行に加えても、整えた左側は壊れません。終了時、ピボットのある行が上に並び残りは零行なので条件 1、正規化により条件 3、掃き出しにより条件 4 が成り立ちます。
∎
例 7.6 (掃き出し法の実行 )
次の連立一次方程式を解きます。
{ x 1 + 2 x 2 − x 3 + 3 x 4 = 1 2 x 1 + 4 x 2 − x 3 + 8 x 4 = 5 − x 1 − 2 x 2 + 2 x 3 − x 4 = 2 \begin{cases}
x_1 + 2x_2 - x_3 + 3x_4 = 1 \\
2x_1 + 4x_2 - x_3 + 8x_4 = 5 \\
-x_1 - 2x_2 + 2x_3 - x_4 = 2
\end{cases} ⎩ ⎨ ⎧ x 1 + 2 x 2 − x 3 + 3 x 4 = 1 2 x 1 + 4 x 2 − x 3 + 8 x 4 = 5 − x 1 − 2 x 2 + 2 x 3 − x 4 = 2 拡大係数行列は次のとおりです。
[ A ∣ b ] = ( 1 2 − 1 3 1 2 4 − 1 8 5 − 1 − 2 2 − 1 2 ) [A \mid \boldsymbol{b}] = \left(\begin{array}{cccc|c}
1 & 2 & -1 & 3 & 1 \\
2 & 4 & -1 & 8 & 5 \\
-1 & -2 & 2 & -1 & 2
\end{array}\right) [ A ∣ b ] = 1 2 − 1 2 4 − 2 − 1 − 1 2 3 8 − 1 1 5 2 第 1 列のピボットは ( 1 , 1 ) (1,1) ( 1 , 1 ) 成分の 1 1 1 です。第 2 行から第 1 行の 2 2 2 倍を引き、第 3 行に第 1 行を加えます(型 III を 2 回)。
⟶ ( 1 2 − 1 3 1 0 0 1 2 3 0 0 1 2 3 ) \longrightarrow \left(\begin{array}{cccc|c}
1 & 2 & -1 & 3 & 1 \\
0 & 0 & 1 & 2 & 3 \\
0 & 0 & 1 & 2 & 3
\end{array}\right) ⟶ 1 0 0 2 0 0 − 1 1 1 3 2 2 1 3 3 第 2 列は第 2 行以下がすべて 0 0 0 なので、ピボットを立てずに飛ばします。第 3 列に移り、( 2 , 3 ) (2,3) ( 2 , 3 ) 成分の 1 1 1 をピボットとして、第 3 行から第 2 行を引き、第 1 行に第 2 行を加えます。
⟶ ( 1 2 0 5 4 0 0 1 2 3 0 0 0 0 0 ) \longrightarrow \left(\begin{array}{cccc|c}
1 & 2 & 0 & 5 & 4 \\
0 & 0 & 1 & 2 & 3 \\
0 & 0 & 0 & 0 & 0
\end{array}\right) ⟶ 1 0 0 2 0 0 0 1 0 5 2 0 4 3 0 これが簡約階段形です。ピボットは第 1 列と第 3 列にあり、その個数は 2 2 2 です。ピボットのある列に対応する変数 x 1 , x 3 x_1, x_3 x 1 , x 3 を従属変数 、残りの x 2 , x 4 x_2, x_4 x 2 , x 4 を自由変数 と呼びます。補題 7.2 の 3 より、この行列が表す方程式
{ x 1 + 2 x 2 + 5 x 4 = 4 x 3 + 2 x 4 = 3 \begin{cases} x_1 + 2x_2 + 5x_4 = 4 \\ x_3 + 2x_4 = 3 \end{cases} { x 1 + 2 x 2 + 5 x 4 = 4 x 3 + 2 x 4 = 3 の解集合は元の方程式の解集合と同じです。x 2 = s x_2 = s x 2 = s 、x 4 = t x_4 = t x 4 = t とおくと x 1 = 4 − 2 s − 5 t x_1 = 4 - 2s - 5t x 1 = 4 − 2 s − 5 t 、x 3 = 3 − 2 t x_3 = 3 - 2t x 3 = 3 − 2 t なので
x = ( 4 0 3 0 ) + s ( − 2 1 0 0 ) + t ( − 5 0 − 2 1 ) ( s , t ∈ R ) \boldsymbol{x} = \begin{pmatrix} 4 \\ 0 \\ 3 \\ 0\end{pmatrix} + s\begin{pmatrix} -2 \\ 1 \\ 0 \\ 0\end{pmatrix} + t\begin{pmatrix} -5 \\ 0 \\ -2 \\ 1 \end{pmatrix} \qquad (s, t \in \mathbb{R}) x = 4 0 3 0 + s − 2 1 0 0 + t − 5 0 − 2 1 ( s , t ∈ R ) が解の全体です。検算します。x 0 = ( 4 , 0 , 3 , 0 ) T \boldsymbol{x}_0 = (4,0,3,0)^{\mathsf{T}} x 0 = ( 4 , 0 , 3 , 0 ) T は元の 3 式に代入して 4 − 3 = 1 4 - 3 = 1 4 − 3 = 1 、8 − 3 = 5 8 - 3 = 5 8 − 3 = 5 、− 4 + 6 = 2 -4 + 6 = 2 − 4 + 6 = 2 。z 1 = ( − 2 , 1 , 0 , 0 ) T \boldsymbol{z}_1 = (-2,1,0,0)^{\mathsf{T}} z 1 = ( − 2 , 1 , 0 , 0 ) T は − 2 + 2 = 0 -2+2 = 0 − 2 + 2 = 0 、− 4 + 4 = 0 -4+4 = 0 − 4 + 4 = 0 、2 − 2 = 0 2-2 = 0 2 − 2 = 0 、z 2 = ( − 5 , 0 , − 2 , 1 ) T \boldsymbol{z}_2 = (-5,0,-2,1)^{\mathsf{T}} z 2 = ( − 5 , 0 , − 2 , 1 ) T は − 5 + 2 + 3 = 0 -5+2+3 = 0 − 5 + 2 + 3 = 0 、− 10 + 2 + 8 = 0 -10+2+8 = 0 − 10 + 2 + 8 = 0 、5 − 4 − 1 = 0 5-4-1 = 0 5 − 4 − 1 = 0 でともに核に属します。
命題 6.1 の言葉でいえば、x 0 \boldsymbol{x}_0 x 0 が特殊解、{ s z 1 + t z 2 } \{s\boldsymbol{z}_1 + t\boldsymbol{z}_2\} { s z 1 + t z 2 } が核で、解集合は R 4 \mathbb{R}^4 R 4 内の 2 次元アフィン部分空間です。自由変数の個数 2 2 2 が核の次元、ピボットの個数 2 2 2 が次節で定義する階数になります。
前節の例では、ピボットの個数 2 2 2 、自由変数の個数 2 2 2 、そして 2 + 2 = 4 = n 2 + 2 = 4 = n 2 + 2 = 4 = n という関係が現れました。これが偶然でないことを示すのが本節の目標です。まず、計算手続きに依存しない形で階数を定義します。
定義 8.1 (階数 )
A ∈ M m , n ( K ) A \in M_{m,n}(K) A ∈ M m , n ( K ) に対し、A A A の階数 を像の次元
rank A : = dim Im A = dim span { a 1 , … , a n } \operatorname{rank} A := \dim \operatorname{Im} A = \dim \operatorname{span}\{\boldsymbol{a}_1, \ldots, \boldsymbol{a}_n\} rank A := dim Im A = dim span { a 1 , … , a n } で定める(a j \boldsymbol{a}_j a j は A A A の第 j j j 列)。また、A A A の m m m 個の行ベクトルが張る K n K^n K n の部分空間を行空間 といい Row A \operatorname{Row}A Row A と書く。
なぜピボットの個数ではなく像の次元を定義に採るのか。計算手続きを参照しない定義であり、かつ幾何的な意味が明快だからです。f A f_A f A は K n K^n K n を K m K^m K m 内の rank A \operatorname{rank}A rank A 次元の部分空間へ写します。階数が小さいほど写像は空間を強く潰しており、rank A \operatorname{rank}A rank A は f A f_A f A を通り抜けて残る情報の次元だと言えます。以下、K m K^m K m の標準基底を ε 1 , … , ε m \boldsymbol{\varepsilon}_1, \ldots, \boldsymbol{\varepsilon}_m ε 1 , … , ε m と書きます。
定理 8.2 (階数はピボットの個数であり、行階数に等しい )
A ∈ M m , n ( K ) A \in M_{m,n}(K) A ∈ M m , n ( K ) とし、R R R を A A A と行同値な簡約階段形の 1 つ、そのピボットの個数を r r r とする。このとき
rank A = r = dim Row A \operatorname{rank} A = r = \dim \operatorname{Row} A rank A = r = dim Row A が成り立つ。特に r r r は変形の仕方によらず、また列ベクトルの張る空間の次元(列階数)と行ベクトルの張る空間の次元(行階数)は一致する。
証明(定理 8.2) 補題 7.2 の 2 より、正則行列 P ∈ M m ( K ) P \in M_m(K) P ∈ M m ( K ) が存在して R = P A R = PA R = P A と書けます。
第 1 段(R R R の階数) 。R R R のピボットの位置を ( 1 , j 1 ) , ( 2 , j 2 ) , … , ( r , j r ) (1, j_1), (2, j_2), \ldots, (r, j_r) ( 1 , j 1 ) , ( 2 , j 2 ) , … , ( r , j r ) (j 1 < j 2 < ⋯ < j r j_1 < j_2 < \cdots < j_r j 1 < j 2 < ⋯ < j r )とします。定義 7.3 の条件 3, 4 より、R R R の第 j t j_t j t 列はちょうど ε t \boldsymbol{\varepsilon}_t ε t です。また第 r + 1 r+1 r + 1 行以下は零行なので、R R R のどの列も第 r + 1 r+1 r + 1 成分以下が 0 0 0 であり、ε 1 , … , ε r \boldsymbol{\varepsilon}_1, \ldots, \boldsymbol{\varepsilon}_r ε 1 , … , ε r の一次結合として書けます。よって Im R = span { ε 1 , … , ε r } \operatorname{Im}R = \operatorname{span}\{\boldsymbol{\varepsilon}_1, \ldots, \boldsymbol{\varepsilon}_r\} Im R = span { ε 1 , … , ε r } であり、ε 1 , … , ε r \boldsymbol{\varepsilon}_1,\ldots,\boldsymbol{\varepsilon}_r ε 1 , … , ε r は一次独立ですから rank R = r \operatorname{rank}R = r rank R = r です。
第 2 段(正則行列を掛けても階数は変わらない) 。Im ( P A ) = { P A x : x ∈ K n } = P ( Im A ) \operatorname{Im}(PA) = \{PA\boldsymbol{x} : \boldsymbol{x} \in K^n\} = P\bigl(\operatorname{Im}A\bigr) Im ( P A ) = { P A x : x ∈ K n } = P ( Im A ) です。写像 y ↦ P y \boldsymbol{y} \mapsto P\boldsymbol{y} y ↦ P y は y ↦ P − 1 y \boldsymbol{y}\mapsto P^{-1}\boldsymbol{y} y ↦ P − 1 y を逆写像にもつ線形同型です。同型は部分空間の次元を保ちます。実際、( v 1 , … , v k ) (\boldsymbol{v}_1, \ldots, \boldsymbol{v}_k) ( v 1 , … , v k ) を Im A \operatorname{Im}A Im A の基底とすると、P v 1 , … , P v k P\boldsymbol{v}_1, \ldots, P\boldsymbol{v}_k P v 1 , … , P v k は P ( Im A ) P(\operatorname{Im}A) P ( Im A ) を張り(P ( ∑ c t v t ) = ∑ c t P v t P(\sum c_t\boldsymbol{v}_t) = \sum c_t P\boldsymbol{v}_t P ( ∑ c t v t ) = ∑ c t P v t による)、かつ一次独立です(∑ t c t P v t = 0 \sum_t c_t P\boldsymbol{v}_t = \boldsymbol{0} ∑ t c t P v t = 0 なら P ( ∑ t c t v t ) = 0 P(\sum_t c_t \boldsymbol{v}_t) = \boldsymbol{0} P ( ∑ t c t v t ) = 0 、P P P は単射だから ∑ t c t v t = 0 \sum_t c_t\boldsymbol{v}_t = \boldsymbol{0} ∑ t c t v t = 0 、基底の一次独立性から c t = 0 c_t = 0 c t = 0 )。よって rank A = rank ( P A ) = rank R = r \operatorname{rank}A = \operatorname{rank}(PA) = \operatorname{rank}R = r rank A = rank ( P A ) = rank R = r です。r r r が変形の仕方によらないのは、rank A \operatorname{rank}A rank A が A A A だけで決まる量だからです。
第 3 段(行空間) 。補題 7.2 の 1 より E A EA E A の各行は A A A の行の一次結合なので Row ( E A ) ⊆ Row ( A ) \operatorname{Row}(EA) \subseteq \operatorname{Row}(A) Row ( E A ) ⊆ Row ( A ) です。E E E は正則で A = E − 1 ( E A ) A = E^{-1}(EA) A = E − 1 ( E A ) ですから、同じ議論を E − 1 E^{-1} E − 1 に適用して Row ( A ) ⊆ Row ( E A ) \operatorname{Row}(A) \subseteq \operatorname{Row}(EA) Row ( A ) ⊆ Row ( E A ) 、すなわち等号が成り立ちます。これを繰り返して Row A = Row R \operatorname{Row}A = \operatorname{Row}R Row A = Row R を得ます。
R R R の零でない行を ρ 1 , … , ρ r \boldsymbol{\rho}_1, \ldots, \boldsymbol{\rho}_r ρ 1 , … , ρ r とすると、零行は和に寄与しないのでこれらは Row R \operatorname{Row}R Row R を張ります。一次独立性を見ます。∑ t = 1 r c t ρ t = 0 \sum_{t=1}^{r} c_t \boldsymbol{\rho}_t = \boldsymbol{0} ∑ t = 1 r c t ρ t = 0 とし、この等式の第 j u j_u j u 成分(u u u は 1 1 1 から r r r のいずれか)を取ると、第 1 段で見たように R R R の第 j u j_u j u 列は ε u \boldsymbol{\varepsilon}_u ε u なので ρ t \boldsymbol{\rho}_t ρ t の第 j u j_u j u 成分は t = u t = u t = u のとき 1 1 1 、それ以外は 0 0 0 です。したがって第 j u j_u j u 成分は c u c_u c u に等しく、c u = 0 c_u = 0 c u = 0 が全ての u u u で従います。ゆえに dim Row A = dim Row R = r \dim\operatorname{Row}A = \dim\operatorname{Row}R = r dim Row A = dim Row R = r です。
∎
行階数と列階数の一致は、よく考えると不思議な主張です。A A A の列は K m K^m K m の、行は K n K^n K n のベクトルで、住む空間が違います。それでも張る空間の次元だけは必ず一致する。両者を結んでいるのは「簡約階段形のピボットの個数」という共通の中継点です。
定理 8.3 (次元定理 )
A ∈ M m , n ( K ) A \in M_{m,n}(K) A ∈ M m , n ( K ) に対し
dim Ker A + rank A = n \dim \operatorname{Ker} A + \operatorname{rank} A = n dim Ker A + rank A = n が成り立つ。
証明(定理 8.3) R R R を A A A と行同値な簡約階段形とし、ピボットの列番号を j 1 < ⋯ < j r j_1 < \cdots < j_r j 1 < ⋯ < j r 、それ以外の列番号の集合(自由変数の添字集合)を F F F とします。∣ F ∣ = n − r |F| = n - r ∣ F ∣ = n − r です。定理 8.2 より rank A = r \operatorname{rank}A = r rank A = r なので、dim Ker A = n − r \dim\operatorname{Ker}A = n - r dim Ker A = n − r を示せば十分です。
まず Ker A = Ker R \operatorname{Ker}A = \operatorname{Ker}R Ker A = Ker R です。これは 補題 7.2 の 3 を b = 0 \boldsymbol{b} = \boldsymbol{0} b = 0 に適用すれば従います(基本行変形で 0 \boldsymbol{0} 0 は 0 \boldsymbol{0} 0 のままです)。
次に、射影 π : K n → K n − r \pi : K^n \to K^{n-r} π : K n → K n − r 、π ( x ) = ( x k ) k ∈ F \pi(\boldsymbol{x}) = (x_k)_{k \in F} π ( x ) = ( x k ) k ∈ F (自由変数の成分だけを取り出す写像)の Ker R \operatorname{Ker}R Ker R への制限を考えます。π \pi π は線形写像の制限なので線形です。これが同型であることを示します。
R R R の第 t t t 行(1 ≤ t ≤ r 1 \le t \le r 1 ≤ t ≤ r )が定める方程式は、定義 7.3 の条件 3, 4 より
x j t + ∑ k ∈ F , k > j t r t k x k = 0 x_{j_t} + \sum_{k \in F,\; k > j_t} r_{tk}\,x_k = 0 x j t + k ∈ F , k > j t ∑ r t k x k = 0 の形をしています(j t j_t j t より左の成分は階段形の条件から 0 0 0 、他のピボット列の成分は条件 4 から 0 0 0 )。第 r + 1 r+1 r + 1 行以下は零行なので何の条件も課しません。
単射性: x ∈ Ker R \boldsymbol{x} \in \operatorname{Ker}R x ∈ Ker R が π ( x ) = 0 \pi(\boldsymbol{x}) = \boldsymbol{0} π ( x ) = 0 、すなわちすべての自由変数の成分が 0 0 0 を満たすとすると、上の式から x j t = 0 x_{j_t} = 0 x j t = 0 がすべての t t t について従い、x = 0 \boldsymbol{x} = \boldsymbol{0} x = 0 です。
全射性: ( c k ) k ∈ F ∈ K n − r (c_k)_{k\in F} \in K^{n-r} ( c k ) k ∈ F ∈ K n − r を任意に取り、x \boldsymbol{x} x を「k ∈ F k \in F k ∈ F に対し x k = c k x_k = c_k x k = c k 、x j t = − ∑ k ∈ F , k > j t r t k c k x_{j_t} = -\sum_{k \in F, k > j_t} r_{tk}c_k x j t = − ∑ k ∈ F , k > j t r t k c k 」で定めると、R R R のすべての行の方程式が満たされるので x ∈ Ker R \boldsymbol{x} \in \operatorname{Ker}R x ∈ Ker R であり、π ( x ) = ( c k ) k ∈ F \pi(\boldsymbol{x}) = (c_k)_{k\in F} π ( x ) = ( c k ) k ∈ F です。
よって Ker A = Ker R ≅ K n − r \operatorname{Ker}A = \operatorname{Ker}R \cong K^{n-r} Ker A = Ker R ≅ K n − r で、dim Ker A = n − r \dim\operatorname{Ker}A = n - r dim Ker A = n − r です。
∎
次元定理は「潰れた分 + 残った分 = 元の次元」と読めます(抽象的なベクトル空間についての 次元定理(定理 7.3)[ベクトル空間と線形変換] を、行列の言葉で述べ直したものです)。f A f_A f A は K n K^n K n の dim Ker A \dim\operatorname{Ker}A dim Ker A 次元分を原点へ潰し、残りを像に忠実に写します。例 7.6 では n = 4 n = 4 n = 4 、r = 2 r = 2 r = 2 、自由変数 2 個で 2 + 2 = 4 2 + 2 = 4 2 + 2 = 4 でした。
定理 8.4 (可解条件と解の個数 )
A ∈ M m , n ( K ) A \in M_{m,n}(K) A ∈ M m , n ( K ) 、b ∈ K m \boldsymbol{b} \in K^m b ∈ K m とする。
A x = b A\boldsymbol{x} = \boldsymbol{b} A x = b が解をもつことと rank A = rank [ A ∣ b ] \operatorname{rank}A = \operatorname{rank}[A \mid \boldsymbol{b}] rank A = rank [ A ∣ b ] は同値である。解をもたないときは rank [ A ∣ b ] = rank A + 1 \operatorname{rank}[A\mid\boldsymbol{b}] = \operatorname{rank}A + 1 rank [ A ∣ b ] = rank A + 1 である。
解をもつとき、解集合は n − rank A n - \operatorname{rank}A n − rank A 次元のアフィン部分空間 x 0 + Ker A \boldsymbol{x}_0 + \operatorname{Ker}A x 0 + Ker A である。特に解がただ 1 つであることと rank A = n \operatorname{rank}A = n rank A = n は同値である。
すべての b ∈ K m \boldsymbol{b} \in K^m b ∈ K m に対して解をもつことと rank A = m \operatorname{rank}A = m rank A = m は同値である。
証明(定理 8.4)
A x = b A\boldsymbol{x} = \boldsymbol{b} A x = b が解をもつことは、定義から b ∈ Im A \boldsymbol{b} \in \operatorname{Im}A b ∈ Im A と同値です。一方 [ A ∣ b ] [A\mid\boldsymbol{b}] [ A ∣ b ] の列は a 1 , … , a n , b \boldsymbol{a}_1, \ldots, \boldsymbol{a}_n, \boldsymbol{b} a 1 , … , a n , b なので、定義 8.1 より Im [ A ∣ b ] = span { a 1 , … , a n , b } \operatorname{Im}[A\mid\boldsymbol{b}] = \operatorname{span}\{\boldsymbol{a}_1,\ldots,\boldsymbol{a}_n,\boldsymbol{b}\} Im [ A ∣ b ] = span { a 1 , … , a n , b } 、すなわち Im A \operatorname{Im}A Im A に b \boldsymbol{b} b を付け加えて張った空間です。
b ∈ Im A \boldsymbol{b} \in \operatorname{Im}A b ∈ Im A の場合、b \boldsymbol{b} b を付け加えても張る空間は増えないので Im [ A ∣ b ] = Im A \operatorname{Im}[A\mid\boldsymbol{b}] = \operatorname{Im}A Im [ A ∣ b ] = Im A 、両者の次元は等しくなります。
b ∉ Im A \boldsymbol{b} \notin \operatorname{Im}A b ∈ / Im A の場合、Im A \operatorname{Im}A Im A の基底 ( v 1 , … , v s ) (\boldsymbol{v}_1,\ldots,\boldsymbol{v}_s) ( v 1 , … , v s ) (s = rank A s = \operatorname{rank}A s = rank A )に b \boldsymbol{b} b を加えた組は一次独立です。実際 c b + ∑ t c t v t = 0 c\boldsymbol{b} + \sum_t c_t\boldsymbol{v}_t = \boldsymbol{0} c b + ∑ t c t v t = 0 で c ≠ 0 c \ne 0 c = 0 なら b = − c − 1 ∑ t c t v t ∈ Im A \boldsymbol{b} = -c^{-1}\sum_t c_t \boldsymbol{v}_t \in \operatorname{Im}A b = − c − 1 ∑ t c t v t ∈ Im A となって仮定に反するので c = 0 c = 0 c = 0 、すると基底の一次独立性から c t = 0 c_t = 0 c t = 0 です。この s + 1 s+1 s + 1 個のベクトルは Im [ A ∣ b ] \operatorname{Im}[A\mid\boldsymbol{b}] Im [ A ∣ b ] を張るので、rank [ A ∣ b ] = s + 1 = rank A + 1 \operatorname{rank}[A\mid\boldsymbol{b}] = s + 1 = \operatorname{rank}A + 1 rank [ A ∣ b ] = s + 1 = rank A + 1 です。
以上より、解をもつ場合と階数が一致する場合が過不足なく対応します。
前半は 命題 6.1 の 2 と 定理 8.3 から従います。解がただ 1 つであることは Ker A = { 0 } \operatorname{Ker}A = \{\boldsymbol{0}\} Ker A = { 0 } 、すなわち dim Ker A = 0 \dim\operatorname{Ker}A = 0 dim Ker A = 0 と同値で、定理 8.3 よりこれは rank A = n \operatorname{rank}A = n rank A = n と同値です。
すべての b \boldsymbol{b} b に対して解をもつことは Im A = K m \operatorname{Im}A = K^m Im A = K m と同値です。Im A ⊆ K m \operatorname{Im}A \subseteq K^m Im A ⊆ K m なので、これは dim Im A = m \dim\operatorname{Im}A = m dim Im A = m と同値です。実際、次元が等しい部分空間は全体と一致します(Im A \operatorname{Im}A Im A の基底は K m K^m K m の一次独立な m m m 個の組であり、m m m 次元空間ではそれ自体が基底になるからです)。
∎
定理 8.4 の内容を表にまとめておきます。実際の判定は、拡大係数行列を 1 回だけ簡約階段形に直せば、rank A \operatorname{rank}A rank A と rank [ A ∣ b ] \operatorname{rank}[A\mid\boldsymbol{b}] rank [ A ∣ b ] が同時に読み取れるので済みます。
階数の比較 解の様子 rank A < rank [ A ∣ b ] \operatorname{rank}A < \operatorname{rank}[A \mid \boldsymbol{b}] rank A < rank [ A ∣ b ] 解なし(不能) rank A = rank [ A ∣ b ] = n \operatorname{rank}A = \operatorname{rank}[A \mid \boldsymbol{b}] = n rank A = rank [ A ∣ b ] = n 解がただ 1 つ rank A = rank [ A ∣ b ] < n \operatorname{rank}A = \operatorname{rank}[A \mid \boldsymbol{b}] < n rank A = rank [ A ∣ b ] < n 解は n − rank A n - \operatorname{rank}A n − rank A 次元の自由度をもつ
例 8.5 (解をもたない例 )
例 7.6 と同じ係数行列 A A A に対し、右辺だけを b ′ = ( 1 , 5 , 3 ) T \boldsymbol{b}' = (1, 5, 3)^{\mathsf{T}} b ′ = ( 1 , 5 , 3 ) T に変えます。同じ手順で消去すると
( 1 2 − 1 3 1 2 4 − 1 8 5 − 1 − 2 2 − 1 3 ) ⟶ ( 1 2 − 1 3 1 0 0 1 2 3 0 0 1 2 4 ) ⟶ ( 1 2 − 1 3 1 0 0 1 2 3 0 0 0 0 1 ) \left(\begin{array}{cccc|c}
1 & 2 & -1 & 3 & 1 \\
2 & 4 & -1 & 8 & 5 \\
-1 & -2 & 2 & -1 & 3
\end{array}\right)
\longrightarrow
\left(\begin{array}{cccc|c}
1 & 2 & -1 & 3 & 1 \\
0 & 0 & 1 & 2 & 3 \\
0 & 0 & 1 & 2 & 4
\end{array}\right)
\longrightarrow
\left(\begin{array}{cccc|c}
1 & 2 & -1 & 3 & 1 \\
0 & 0 & 1 & 2 & 3 \\
0 & 0 & 0 & 0 & 1
\end{array}\right) 1 2 − 1 2 4 − 2 − 1 − 1 2 3 8 − 1 1 5 3 ⟶ 1 0 0 2 0 0 − 1 1 1 3 2 2 1 3 4 ⟶ 1 0 0 2 0 0 − 1 1 0 3 2 0 1 3 1 となります。最後の行は 0 = 1 0 = 1 0 = 1 という式で、これを満たす x \boldsymbol{x} x はありません。階数で見ると、A A A の側のピボットは 2 個で rank A = 2 \operatorname{rank}A = 2 rank A = 2 、拡大係数行列のピボットは第 1・第 3・第 5 列の 3 個で rank [ A ∣ b ′ ] = 3 \operatorname{rank}[A\mid\boldsymbol{b}'] = 3 rank [ A ∣ b ′ ] = 3 です。定理 8.4 の 1 のとおり階数が食い違い、解はありません。
幾何的には、b ′ \boldsymbol{b}' b ′ が列空間 Im A \operatorname{Im}A Im A (R 3 \mathbb{R}^3 R 3 内の 2 次元平面)から外れているということです。b = ( 1 , 5 , 2 ) T \boldsymbol{b} = (1,5,2)^{\mathsf{T}} b = ( 1 , 5 , 2 ) T はこの平面上にあり、b ′ = ( 1 , 5 , 3 ) T \boldsymbol{b}' = (1,5,3)^{\mathsf{T}} b ′ = ( 1 , 5 , 3 ) T はわずかに外れている。解けるかどうかは、右辺が平面に載っているかだけで決まります。
演習 9.1 易
P 2 P_2 P 2 を次数 2 2 2 以下の実係数多項式全体、B = ( 1 , x , x 2 ) \mathcal{B} = (1, x, x^2) B = ( 1 , x , x 2 ) をその基底とする。線形写像 T : P 2 → P 2 T : P_2 \to P_2 T : P 2 → P 2 を ( T p ) ( x ) = p ( x + 1 ) (Tp)(x) = p(x+1) ( T p ) ( x ) = p ( x + 1 ) で定める。
T T T の B \mathcal{B} B に関する表現行列 A = M B B ( T ) A = M_{\mathcal{B}\mathcal{B}}(T) A = M BB ( T ) を求めよ。
A 2 A^2 A 2 を計算し、それが ( T 2 p ) ( x ) = p ( x + 2 ) (T^2 p)(x) = p(x+2) ( T 2 p ) ( x ) = p ( x + 2 ) の表現行列に一致することを確かめよ。
解答
定義 3.1 に従い、基底の行き先を B \mathcal{B} B で展開します。
T ( 1 ) = 1 , T ( x ) = x + 1 = 1 + x , T ( x 2 ) = ( x + 1 ) 2 = 1 + 2 x + x 2 . T(1) = 1, \qquad T(x) = x + 1 = 1 + x, \qquad T(x^2) = (x+1)^2 = 1 + 2x + x^2 . T ( 1 ) = 1 , T ( x ) = x + 1 = 1 + x , T ( x 2 ) = ( x + 1 ) 2 = 1 + 2 x + x 2 . 係数を列に並べて
A = ( 1 1 1 0 1 2 0 0 1 ) . A = \begin{pmatrix} 1 & 1 & 1 \\ 0 & 1 & 2 \\ 0 & 0 & 1 \end{pmatrix}. A = 1 0 0 1 1 0 1 2 1 .
定義 4.1 に従って計算します。第 1 行は ( 1 , 1 , 1 ) (1,1,1) ( 1 , 1 , 1 ) と各列の積で ( 1 , 1 + 1 , 1 + 2 + 1 ) = ( 1 , 2 , 4 ) (1,\; 1+1,\; 1+2+1) = (1,2,4) ( 1 , 1 + 1 , 1 + 2 + 1 ) = ( 1 , 2 , 4 ) 、第 2 行は ( 0 , 1 , 2 ) (0,1,2) ( 0 , 1 , 2 ) と各列の積で ( 0 , 1 , 2 + 2 ) = ( 0 , 1 , 4 ) (0,\; 1,\; 2 + 2) = (0,1,4) ( 0 , 1 , 2 + 2 ) = ( 0 , 1 , 4 ) 、第 3 行は ( 0 , 0 , 1 ) (0,0,1) ( 0 , 0 , 1 ) と各列の積で ( 0 , 0 , 1 ) (0,0,1) ( 0 , 0 , 1 ) です。よって
A 2 = ( 1 2 4 0 1 4 0 0 1 ) . A^2 = \begin{pmatrix} 1 & 2 & 4 \\ 0 & 1 & 4 \\ 0 & 0 & 1\end{pmatrix}. A 2 = 1 0 0 2 1 0 4 4 1 . 一方 T 2 = T ∘ T T^2 = T \circ T T 2 = T ∘ T は ( T 2 p ) ( x ) = ( T p ) ( x + 1 ) = p ( x + 2 ) (T^2p)(x) = (Tp)(x+1) = p(x+2) ( T 2 p ) ( x ) = ( T p ) ( x + 1 ) = p ( x + 2 ) なので、基底の行き先は 1 ↦ 1 1 \mapsto 1 1 ↦ 1 、x ↦ x + 2 x \mapsto x + 2 x ↦ x + 2 、x 2 ↦ ( x + 2 ) 2 = 4 + 4 x + x 2 x^2 \mapsto (x+2)^2 = 4 + 4x + x^2 x 2 ↦ ( x + 2 ) 2 = 4 + 4 x + x 2 です。これを列に並べると上の A 2 A^2 A 2 に一致します。定理 4.2 の主張どおりです。
演習 9.2 標準
R 2 \mathbb{R}^2 R 2 の線形変換 f f f が
f ( 1 1 ) = ( 3 1 ) , f ( 1 − 1 ) = ( 1 3 ) f\begin{pmatrix} 1 \\ 1\end{pmatrix} = \begin{pmatrix} 3 \\ 1 \end{pmatrix}, \qquad
f\begin{pmatrix} 1 \\ -1\end{pmatrix} = \begin{pmatrix} 1 \\ 3 \end{pmatrix} f ( 1 1 ) = ( 3 1 ) , f ( 1 − 1 ) = ( 1 3 ) を満たすとする。p 1 = ( 1 , 1 ) T \boldsymbol{p}_1 = (1,1)^{\mathsf{T}} p 1 = ( 1 , 1 ) T 、p 2 = ( 1 , − 1 ) T \boldsymbol{p}_2 = (1,-1)^{\mathsf{T}} p 2 = ( 1 , − 1 ) T 、B ′ = ( p 1 , p 2 ) \mathcal{B}' = (\boldsymbol{p}_1, \boldsymbol{p}_2) B ′ = ( p 1 , p 2 ) 、E \mathcal{E} E を標準基底とする。
A ′ = M B ′ B ′ ( f ) A' = M_{\mathcal{B}'\mathcal{B}'}(f) A ′ = M B ′ B ′ ( f ) を求めよ。
A = M E E ( f ) A = M_{\mathcal{E}\mathcal{E}}(f) A = M EE ( f ) を求め、A ′ = P − 1 A P A' = P^{-1}AP A ′ = P − 1 A P (P P P は B ′ \mathcal{B}' B ′ から E \mathcal{E} E への基底変換行列)が成り立つことを確かめよ。
解答 p 1 , p 2 \boldsymbol{p}_1, \boldsymbol{p}_2 p 1 , p 2 は一次独立(一方が他方のスカラー倍でない)なので B ′ \mathcal{B}' B ′ は基底であり、命題 2.1 の 2 より与えられた 2 条件で f f f は一意に定まります。
行き先を B ′ \mathcal{B}' B ′ で展開します。( 3 , 1 ) T = a p 1 + b p 2 (3,1)^{\mathsf{T}} = a\boldsymbol{p}_1 + b\boldsymbol{p}_2 ( 3 , 1 ) T = a p 1 + b p 2 とすると a + b = 3 a + b = 3 a + b = 3 、a − b = 1 a - b = 1 a − b = 1 より a = 2 a = 2 a = 2 、b = 1 b = 1 b = 1 。( 1 , 3 ) T = a p 1 + b p 2 (1,3)^{\mathsf{T}} = a\boldsymbol{p}_1 + b\boldsymbol{p}_2 ( 1 , 3 ) T = a p 1 + b p 2 とすると a + b = 1 a+b = 1 a + b = 1 、a − b = 3 a - b = 3 a − b = 3 より a = 2 a = 2 a = 2 、b = − 1 b = -1 b = − 1 。よって
A ′ = ( 2 2 1 − 1 ) . A' = \begin{pmatrix} 2 & 2 \\ 1 & -1 \end{pmatrix}. A ′ = ( 2 1 2 − 1 ) .
e 1 = 1 2 ( p 1 + p 2 ) \boldsymbol{e}_1 = \frac{1}{2}(\boldsymbol{p}_1 + \boldsymbol{p}_2) e 1 = 2 1 ( p 1 + p 2 ) 、e 2 = 1 2 ( p 1 − p 2 ) \boldsymbol{e}_2 = \frac{1}{2}(\boldsymbol{p}_1 - \boldsymbol{p}_2) e 2 = 2 1 ( p 1 − p 2 ) なので、線形性から
f ( e 1 ) = 1 2 ( ( 3 , 1 ) T + ( 1 , 3 ) T ) = ( 2 , 2 ) T , f ( e 2 ) = 1 2 ( ( 3 , 1 ) T − ( 1 , 3 ) T ) = ( 1 , − 1 ) T . f(\boldsymbol{e}_1) = \tfrac{1}{2}\bigl((3,1)^{\mathsf{T}} + (1,3)^{\mathsf{T}}\bigr) = (2,2)^{\mathsf{T}}, \qquad
f(\boldsymbol{e}_2) = \tfrac{1}{2}\bigl((3,1)^{\mathsf{T}} - (1,3)^{\mathsf{T}}\bigr) = (1,-1)^{\mathsf{T}} . f ( e 1 ) = 2 1 ( ( 3 , 1 ) T + ( 1 , 3 ) T ) = ( 2 , 2 ) T , f ( e 2 ) = 2 1 ( ( 3 , 1 ) T − ( 1 , 3 ) T ) = ( 1 , − 1 ) T . よって A = ( 2 1 2 − 1 ) A = \begin{pmatrix} 2 & 1 \\ 2 & -1\end{pmatrix} A = ( 2 2 1 − 1 ) です。
基底変換行列は p 1 , p 2 \boldsymbol{p}_1, \boldsymbol{p}_2 p 1 , p 2 の標準座標を列に並べた P = ( 1 1 1 − 1 ) P = \begin{pmatrix} 1 & 1 \\ 1 & -1\end{pmatrix} P = ( 1 1 1 − 1 ) で、P 2 = 2 I 2 P^2 = 2I_2 P 2 = 2 I 2 より P − 1 = 1 2 P P^{-1} = \frac{1}{2}P P − 1 = 2 1 P です。実際に計算すると
A P = ( 2 1 2 − 1 ) ( 1 1 1 − 1 ) = ( 3 1 1 3 ) , P − 1 ( A P ) = 1 2 ( 1 1 1 − 1 ) ( 3 1 1 3 ) = 1 2 ( 4 4 2 − 2 ) = ( 2 2 1 − 1 ) AP = \begin{pmatrix} 2 & 1 \\ 2 & -1\end{pmatrix}\begin{pmatrix} 1 & 1 \\ 1 & -1\end{pmatrix} = \begin{pmatrix} 3 & 1 \\ 1 & 3\end{pmatrix}, \qquad
P^{-1}(AP) = \frac{1}{2}\begin{pmatrix} 1 & 1 \\ 1 & -1\end{pmatrix}\begin{pmatrix} 3 & 1 \\ 1 & 3\end{pmatrix} = \frac{1}{2}\begin{pmatrix} 4 & 4 \\ 2 & -2\end{pmatrix} = \begin{pmatrix} 2 & 2 \\ 1 & -1\end{pmatrix} A P = ( 2 2 1 − 1 ) ( 1 1 1 − 1 ) = ( 3 1 1 3 ) , P − 1 ( A P ) = 2 1 ( 1 1 1 − 1 ) ( 3 1 1 3 ) = 2 1 ( 4 2 4 − 2 ) = ( 2 1 2 − 1 ) となり、1 で求めた A ′ A' A ′ に一致します。定理 5.2 の確認になっています。
演習 9.3 標準
実数の定数 a , c a, c a , c を含む連立一次方程式
{ x + y + z = 1 x + 2 y + 3 z = 2 x + 3 y + a z = c \begin{cases}
x + y + z = 1 \\
x + 2y + 3z = 2 \\
x + 3y + az = c
\end{cases} ⎩ ⎨ ⎧ x + y + z = 1 x + 2 y + 3 z = 2 x + 3 y + a z = c について、係数行列 A A A と拡大係数行列の階数を a , c a, c a , c で場合分けして求め、解の個数を分類せよ。解が存在する場合は解を具体的に書け。
解答 拡大係数行列に基本行変形を施します。第 2 行から第 1 行を引き、第 3 行から第 1 行を引きます。
( 1 1 1 1 1 2 3 2 1 3 a c ) ⟶ ( 1 1 1 1 0 1 2 1 0 2 a − 1 c − 1 ) ⟶ ( 1 1 1 1 0 1 2 1 0 0 a − 5 c − 3 ) \left(\begin{array}{ccc|c} 1&1&1&1 \\ 1&2&3&2 \\ 1&3&a&c\end{array}\right)
\longrightarrow
\left(\begin{array}{ccc|c} 1&1&1&1 \\ 0&1&2&1 \\ 0&2&a-1&c-1\end{array}\right)
\longrightarrow
\left(\begin{array}{ccc|c} 1&1&1&1 \\ 0&1&2&1 \\ 0&0&a-5&c-3\end{array}\right) 1 1 1 1 2 3 1 3 a 1 2 c ⟶ 1 0 0 1 1 2 1 2 a − 1 1 1 c − 1 ⟶ 1 0 0 1 1 0 1 2 a − 5 1 1 c − 3 最後は第 3 行から第 2 行の 2 2 2 倍を引きました。補題 7.2 の 3 より、解集合は変わっていません。
(i) a ≠ 5 a \ne 5 a = 5 のとき。 第 3 行のピボットが ( 3 , 3 ) (3,3) ( 3 , 3 ) に立つので rank A = rank [ A ∣ b ] = 3 = n \operatorname{rank}A = \operatorname{rank}[A\mid\boldsymbol{b}] = 3 = n rank A = rank [ A ∣ b ] = 3 = n となり、定理 8.4 の 2 より解はただ 1 つです。下から順に解くと z = c − 3 a − 5 z = \dfrac{c-3}{a-5} z = a − 5 c − 3 、y = 1 − 2 z y = 1 - 2z y = 1 − 2 z 、x = 1 − y − z = z x = 1 - y - z = z x = 1 − y − z = z なので
( x , y , z ) = ( c − 3 a − 5 , 1 − 2 ( c − 3 ) a − 5 , c − 3 a − 5 ) . (x, y, z) = \left(\frac{c-3}{a-5},\; 1 - \frac{2(c-3)}{a-5},\; \frac{c-3}{a-5}\right). ( x , y , z ) = ( a − 5 c − 3 , 1 − a − 5 2 ( c − 3 ) , a − 5 c − 3 ) . たとえば a = 6 , c = 4 a = 6, c = 4 a = 6 , c = 4 なら ( 1 , − 1 , 1 ) (1, -1, 1) ( 1 , − 1 , 1 ) で、実際 1 − 1 + 1 = 1 1 - 1 + 1 = 1 1 − 1 + 1 = 1 、1 − 2 + 3 = 2 1 - 2 + 3 = 2 1 − 2 + 3 = 2 、1 − 3 + 6 = 4 1 - 3 + 6 = 4 1 − 3 + 6 = 4 と 3 式すべてを満たします。
(ii) a = 5 a = 5 a = 5 、c ≠ 3 c \ne 3 c = 3 のとき。 第 3 行は ( 0 , 0 , 0 ∣ c − 3 ) (0, 0, 0 \mid c - 3) ( 0 , 0 , 0 ∣ c − 3 ) で c − 3 ≠ 0 c - 3 \ne 0 c − 3 = 0 ですから、rank A = 2 \operatorname{rank}A = 2 rank A = 2 、rank [ A ∣ b ] = 3 \operatorname{rank}[A\mid\boldsymbol{b}] = 3 rank [ A ∣ b ] = 3 です。定理 8.4 の 1 より解は存在しません。
(iii) a = 5 a = 5 a = 5 、c = 3 c = 3 c = 3 のとき。 第 3 行は零行なので rank A = rank [ A ∣ b ] = 2 < 3 = n \operatorname{rank}A = \operatorname{rank}[A\mid\boldsymbol{b}] = 2 < 3 = n rank A = rank [ A ∣ b ] = 2 < 3 = n で、解は 3 − 2 = 1 3 - 2 = 1 3 − 2 = 1 次元の自由度をもちます。z = t z = t z = t を自由変数として y = 1 − 2 t y = 1 - 2t y = 1 − 2 t 、x = 1 − y − z = t x = 1 - y - z = t x = 1 − y − z = t なので
( x , y , z ) = ( 0 , 1 , 0 ) + t ( 1 , − 2 , 1 ) ( t ∈ R ) . (x,y,z) = (0,1,0) + t\,(1,-2,1) \qquad (t \in \mathbb{R}). ( x , y , z ) = ( 0 , 1 , 0 ) + t ( 1 , − 2 , 1 ) ( t ∈ R ) . 第 3 式で確かめると x + 3 y + 5 z = t + 3 − 6 t + 5 t = 3 = c x + 3y + 5z = t + 3 - 6t + 5t = 3 = c x + 3 y + 5 z = t + 3 − 6 t + 5 t = 3 = c となり成立します。( 0 , 1 , 0 ) (0,1,0) ( 0 , 1 , 0 ) が特殊解、span { ( 1 , − 2 , 1 ) T } \operatorname{span}\{(1,-2,1)^{\mathsf{T}}\} span {( 1 , − 2 , 1 ) T } が核で、命題 6.1 の形になっています。
演習 9.4 難
A ∈ M m , n ( K ) A \in M_{m,n}(K) A ∈ M m , n ( K ) 、B ∈ M n , p ( K ) B \in M_{n,p}(K) B ∈ M n , p ( K ) とする。
rank ( A B ) ≤ min { rank A , rank B } \operatorname{rank}(AB) \le \min\{\operatorname{rank}A,\; \operatorname{rank}B\} rank ( A B ) ≤ min { rank A , rank B } を示せ。また、等号が成り立たない例を挙げよ。
解答 rank ( A B ) ≤ rank A \operatorname{rank}(AB) \le \operatorname{rank}A rank ( A B ) ≤ rank A 。任意の x ∈ K p \boldsymbol{x} \in K^p x ∈ K p に対し ( A B ) x = A ( B x ) (AB)\boldsymbol{x} = A(B\boldsymbol{x}) ( A B ) x = A ( B x ) です(系 4.3 の結合法則、あるいは B x B\boldsymbol{x} B x を 1 列の行列と見て積の定義から)。よって Im ( A B ) ⊆ Im A \operatorname{Im}(AB) \subseteq \operatorname{Im}A Im ( A B ) ⊆ Im A であり、部分空間の包含は次元の不等号を与えるので rank ( A B ) ≤ rank A \operatorname{rank}(AB) \le \operatorname{rank}A rank ( A B ) ≤ rank A です。
rank ( A B ) ≤ rank B \operatorname{rank}(AB) \le \operatorname{rank}B rank ( A B ) ≤ rank B 。B x = 0 B\boldsymbol{x} = \boldsymbol{0} B x = 0 ならば ( A B ) x = A 0 = 0 (AB)\boldsymbol{x} = A\boldsymbol{0} = \boldsymbol{0} ( A B ) x = A 0 = 0 なので Ker B ⊆ Ker ( A B ) \operatorname{Ker}B \subseteq \operatorname{Ker}(AB) Ker B ⊆ Ker ( A B ) 、したがって dim Ker B ≤ dim Ker ( A B ) \dim\operatorname{Ker}B \le \dim\operatorname{Ker}(AB) dim Ker B ≤ dim Ker ( A B ) です。A B ∈ M m , p ( K ) AB \in M_{m,p}(K) A B ∈ M m , p ( K ) と B ∈ M n , p ( K ) B \in M_{n,p}(K) B ∈ M n , p ( K ) はともに列数が p p p なので、定理 8.3 を両方に適用して
rank ( A B ) = p − dim Ker ( A B ) ≤ p − dim Ker B = rank B . \operatorname{rank}(AB) = p - \dim\operatorname{Ker}(AB) \le p - \dim\operatorname{Ker}B = \operatorname{rank}B . rank ( A B ) = p − dim Ker ( A B ) ≤ p − dim Ker B = rank B . 等号が成り立たない例 。A = ( 0 1 0 0 ) A = \begin{pmatrix} 0 & 1 \\ 0 & 0\end{pmatrix} A = ( 0 0 1 0 ) 、B = ( 0 1 0 0 ) B = \begin{pmatrix} 0 & 1 \\ 0 & 0 \end{pmatrix} B = ( 0 0 1 0 ) とすると rank A = rank B = 1 \operatorname{rank}A = \operatorname{rank}B = 1 rank A = rank B = 1 (列空間はともに span { ( 1 , 0 ) T } \operatorname{span}\{(1,0)^{\mathsf{T}}\} span {( 1 , 0 ) T } )ですが、A B = O AB = O A B = O なので rank ( A B ) = 0 \operatorname{rank}(AB) = 0 rank ( A B ) = 0 です。B B B の像が A A A の核に含まれているため、2 段目でつぶれるわけです。
齋藤正彦『線型代数入門』東京大学出版会、1966 — 第 1 章・第 2 章。連立一次方程式と行列の基本変形を、日本語の標準的な流儀で丁寧に扱っています。
佐武一郎『線型代数学』裳華房、1958(新装版 2015)— 第 I 章・第 II 章。行列を線形写像の表現として扱う立場が明確です。
S. Axler, Linear Algebra Done Right , 4th ed., Springer, 2024 — Chapter 3 (Linear Maps). 行列式を使わずに線形写像から出発する構成で、表現行列と次元定理の位置づけが明快です。オープンアクセス版が linear.axler.net で公開されています。
G. Strang, Introduction to Linear Algebra , 5th ed., Wellesley-Cambridge Press, 2016 — 第 2 章・第 3 章。「列で読む」立場と四つの基本部分空間の説明が充実しています。講義は MIT OpenCourseWare 18.06 で公開されています。
G. H. Golub and C. F. Van Loan, Matrix Computations , 4th ed., Johns Hopkins University Press, 2013 — Chapter 3 (General Linear Systems). ピボット選択と数値的安定性、演算量の議論はここに詳しくあります。
A. Cayley, “A Memoir on the Theory of Matrices”, Philosophical Transactions of the Royal Society of London 148 (1858), 17–37. 行列の積を一次変換の合成として定めた原論文です。
定理 7.4 のうち、まだ証明していない一意性を示します。主張は A ∈ M m , n ( K ) A \in M_{m,n}(K) A ∈ M m , n ( K ) と行同値な簡約階段形はただ 1 つである というものです。消去の途中でどの行を選び、どの順に掃き出すかには任意性がありますが、最終形は A A A だけで決まります。
方針。 R , R ′ R, R' R , R ′ をともに A A A と行同値な簡約階段形とします。補題 7.2 の 3(b = 0 \boldsymbol{b} = \boldsymbol{0} b = 0 の場合)より Ker R = Ker A = Ker R ′ \operatorname{Ker}R = \operatorname{Ker}A = \operatorname{Ker}R' Ker R = Ker A = Ker R ′ です。そこで 簡約階段形の行列はその核だけから復元できる ことを示せば、R = R ′ R = R' R = R ′ が従います。以下 N = Ker R N = \operatorname{Ker}R N = Ker R と書き、R R R のピボット列を j 1 < ⋯ < j r j_1 < \cdots < j_r j 1 < ⋯ < j r 、自由変数の添字集合を F F F とします。
第 1 段: ピボット列の位置は核から決まる。 第 j j j 列がピボット列でないことは、「z j = 1 z_j = 1 z j = 1 かつ第 j + 1 j+1 j + 1 成分以降がすべて 0 0 0 である z ∈ N \boldsymbol{z} \in N z ∈ N が存在すること」と同値です。
実際、j ∈ F j \in F j ∈ F なら、定理 8.3 の証明の全射性の構成で「x j = 1 x_j = 1 x j = 1 、他の自由変数は 0 0 0 」と指定して得られる z ∈ N \boldsymbol{z} \in N z ∈ N がこの条件を満たします。j j j より右の成分は、自由変数なら 0 0 0 と指定され、ピボット変数 x j t x_{j_t} x j t (j t > j j_t > j j t > j )についてはその行の式 x j t + ∑ k ∈ F , k > j t r t k x k = 0 x_{j_t} + \sum_{k \in F,\, k > j_t} r_{tk}x_k = 0 x j t + ∑ k ∈ F , k > j t r t k x k = 0 の右側の自由変数がすべて 0 0 0 だから x j t = 0 x_{j_t} = 0 x j t = 0 となるためです。逆にそのような z \boldsymbol{z} z があって第 j j j 列がピボット列(ピボットは第 t t t 行)だとすると、R z = 0 R\boldsymbol{z} = \boldsymbol{0} R z = 0 の第 t t t 行は z j + ∑ k > j r t k z k = 0 z_j + \sum_{k > j} r_{tk}z_k = 0 z j + ∑ k > j r t k z k = 0 ですが、z j = 1 z_j = 1 z j = 1 かつ k > j k > j k > j で z k = 0 z_k = 0 z k = 0 なので 1 = 0 1 = 0 1 = 0 となり矛盾です。この条件は N N N だけで書かれているので、Ker R = Ker R ′ \operatorname{Ker}R = \operatorname{Ker}R' Ker R = Ker R ′ ならピボット列の位置は完全に一致します。
第 2 段: 成分も核から決まる。 ピボット列が一致したとします。定義 7.3 の条件 3, 4 より R R R の第 j t j_t j t 列は ε t \boldsymbol{\varepsilon}_t ε t で、R ′ R' R ′ でも同じです。残るのは自由変数の列です。
j ∈ F j \in F j ∈ F とし、z ∈ N \boldsymbol{z} \in N z ∈ N を「z j = 1 z_j = 1 z j = 1 、他の自由変数の成分はすべて 0 0 0 」を満たすものとします。これは N N N の中でただ 1 つです。2 つあればその差は N N N に属して自由変数の成分がすべて 0 0 0 ですから、定理 8.3 の証明の単射性により差は 0 \boldsymbol{0} 0 だからです。つまり z \boldsymbol{z} z は N N N と j j j だけで決まります。一方 R z = 0 R\boldsymbol{z} = \boldsymbol{0} R z = 0 の第 t t t 行は、他の自由変数の成分が 0 0 0 、他のピボット列の成分が条件 4 により 0 0 0 なので z j t + r t j z j = 0 z_{j_t} + r_{tj}z_j = 0 z j t + r t j z j = 0 、すなわち r t j = − z j t r_{tj} = -z_{j_t} r t j = − z j t です。第 r + 1 r+1 r + 1 成分以下は零行なので 0 0 0 。R ′ R' R ′ にも同じ式が成り立ち z \boldsymbol{z} z は共通ですから、第 j j j 列は一致します。
以上でピボット列も自由変数の列も一致し、R = R ′ R = R' R = R ′ が示されました。この一意性により、簡約階段形は行列の標準形として意味をもちます。2 つの行列が行同値であることと簡約階段形が一致することは同値です。なお簡約でない階段形は一意ではなく(第 2 行を 2 2 2 倍しても階段形のまま)、一意性には条件 3 と 4 の正規化が要ります。