基底変換行列 | 基底を取り替えるときに使う遷移行列の理論の解説

基底変換行列-conversion-matrix-表紙

" 基底変換行列 “は、線形空間の基底を取り替えることを表す行列になります。一つの基底で、線形空間の各元を一次結合で表すことで、その元を列ベクトルを使って成分表示することができます。

他の基底でも、列ベクトルの成分表示をするとします。このときの列ベクトルの成分の変更を基底変換行列を用いて表します。

線形写像の行列表示の理論と合わせて、基底変換行列について押さえておくと良いかと思います。

まず、線形写像を行列で表すことを解説します。ここを押さえると、同じ要領で基底変換行列のことが分かります。

有限次元の線形空間についての線形写像の対応を、列ベクトルに行列を掛けることで表します。

このブログ記事の記号ですが、体 K の元を成分とする m 行 1 列の m 次列ベクトル全体を Km と表すことにします。

Km は K 上の m 次元線形空間となっています。

基底変換行列 :線形写像を行列で

V を体 K 上の m 次元ベクトル空間とし、W を体 K 上の n 次元ベクトル空間とします。

{v1, … , vm} を V の基底とし、
{w1, … , wn} を W の基底とします。

そして、f : V → W を、V から W への線形写像とします。

この f を行列の乗法を用いて表すことを考えます。

x ∈ V を任意にとってきたときに、x を V の基底の一次結合で表しておきます。

そして、v1 から vm のそれぞれについて、f による対応先である f(v1) から f(vn) を、W の基底の一次結合でも表しておきます。

x = Σj xjvj と、x を v1から vm の一次結合で表しました。j は 1 から m までの自然数を動きます。

※ この一次結合によって、x と m 次列ベクトル (xj) が対応しています。(xj) は j 行 1 列の成分が xj となっている列ベクトルのことです。

各 j (j = 1, … , m) について、
f(vj) = Σi kijwi とします。

ここで、i は 1 から n まで動きます。W における基底の一次結合で f(vj) を表しました。

つまり、V の基底を構成している各ベクトルの f による像を、W における基底の一次結合で表しています。

Kn において、(kij) という n 行 1 列の列ベクトルが、f(vj) に対応しています。

※ (kij) は i 行 1 列の成分が kij となっている列ベクトルです。

ここまでの内容から、x ∈ V の f による像を、W における基底の一次結合で表せます。

f(x) = Σj xjf(vj)
= Σj xji kijwi) = Σij kijxj)wi

f は線形写像なので、f(x) は、f(v1) から f(vn) の一次結合となりますが、この各 f(j) を W の基底の一次結合で表しておきます。

f(x) に対応する列ベクトルは、
j kijxj) です。

これは、i 行 1 列の成分が、Σj kijxj となっています。

こうすることで、x に対応する列ベクトルと、f(x) に対応する列ベクトルを基底の一次結合に現れたスカラー倍たちで作れます。

では、線形写像 f を行列の乗法を使って表します。

fを表す行列

x ∈ V と (xj) ∈ Km が対応し、
f(x) ∈ W と (Σj kijxj) ∈ Kn が対応しています。

A = (kij) と置きます。A は n 行 m 列の行列となっています。
(1 ≦ i ≦ n, 1 ≦ j ≦ m)

ここで、(xj) ∈ Km に左から行列 A を掛けると、
j kijxj) ∈ Kn となります。

つまり、A(xj) = (Σj kijxj)

左から A を掛けるということが、
Km から Kn への線形写像
となっています。

(xj) → (Σj kijxj) が、f : V → W に対応する線形写像です。

ここまでの内容は、有限階数の自由加群についても成立します。

その際は、体 K を環 R として、同じ議論をすることで、加群準同型写像の行列表示になります。

線形写像の行列表示に、さらに基底変換の内容を加味することもあります。

基底を取り替えるとはどういうことかということから説明をします。

基底変換行列 :基底を取り替える

体 K 上の m 次元ベクトル空間の基底を
{b1, … , bm} とします。

先ほどは、{v1, … , vm} を V の基底としていました。線形空間の基底は、一つとは限らないので、他の基底が用意されているときもあります。

ちなみに、有限次元線形空間の基底を構成するベクトルの個数は一定になります。

グラムシュミットの直交化法という記事で、個数が一定となることの証明を述べています。

ここで、{b1, … , bm} を基底として、線形写像 f を行列表示するよりも、
{v1, … , vm} を V の基底として f を行列表示した方が、何らかの都合が良かったとします。

この基底を取り替えるということは、Km から Km への線形変換を引き起こします。次で、このことを説明します。

列ベクトルの成分の変更

体 K 上の m 次元ベクトル空間 V の基底を
{b1, … , bm} とします。

f : V → W という線形写像を、この基底ではなく、はじめに述べた {v1, … , vm} を使って行列表示をすることを考えます。

このときに、基底の取り替えをします。

x ∈ V が、x = Σi sibi … (1) と、
{b1, … , bm} の一次結合で表されていたとします。

先ほどは、x = Σj xjvj … (2) と、
{v1, … , vm} の一次結合で表されていました。

このとき、Km から Km へ、次のようにして、線形変換が引き起こされます。

x に (si) ∈ Km という m 行 1 列の列ベクトルが対応しています。

(1) の一次結合に使ったスカラー倍の部分が、列ベクトルの各成分として使われています。

一方、(2) から、
x に (xj) ∈ Km という m 行 1 列の列ベクトルが対応しています。

そのため、(si) → (xj)

という Km から Km への対応を考えることができます。

つまり、{b1, … , bm} の一次結合で使ったスカラー倍を利用して作った列ベクトルに、
{v1, … , vm} の一次結合を利用して作った列ベクトルを対応させるということです。

この Km から Km への写像を φ とすると、φ は線形変換の定義を満たします。

実際、k ∈ K とすると、
kx =k(Σi sibi) = Σi (ksi)bi

また、{v1, … , vm} の一次結合についても、
kx = k(Σj xjvj) = Σj (kxj)vj

よって、φ の定義から、
φ((ksi)) = (kxj) です。

列ベクトルの各行が一斉に k 倍されているので、スカラー倍 k を外に出すと、
(kxj) = k(xj) = kφ(si)

そのため、φ((ksi)) = kφ(si)

確かにスカラー倍を保存しています。

y = Σi tibi = Σj yjvj となっているときに、
φ(si + ti) = φ(si) + φ(ti) も同様にして確かめられます。

逆に、{v1, … , vm} から
{b1, … , bm} へと基底を取り替えると、φ の逆対応になっています。

つまり、φ には逆写像が存在するということになります。

線形写像(変換)の逆写像も線形写像(変換)なので、φ を m 次正方行列 C で表すと、可逆行列ということになります。

※ 可逆行列 C なので、C の行列式は 0 でないということと同値になっています。

行列を掛けることで、φ を表しておきます。

列ベクトルの対応と行列

(si) → (xj) という Km から Km への線形変換 φ を表す行列が C です。

よって、C(si) = (xj)

m×m 行列 C と m×1 行列 (si) の積は、
m×1 の列ベクトルです。

この行列 C を左から掛けることによって、
基底 {b1, … , bm} で作られた列ベクトルを、
基底 {v1, … , vm} で作られた列ベクトルへと変更されます。

そうすると、f : V → W を表す先ほどの行列 A を使って、Km から Kn へと移すことができます。

f を表すのに適した基底へと変更をしておいてから、行列表示するということを、行列 C を用いて考えました。

C を左から掛けることによって、
Km → Km, (si) → (xj)

これで、基底 {v1, … , vm} で作られた列ベクトルへと変更をしておき、さらに、A を左から掛けることで、Km から Kn へ移しました。

Km → Km, (xj) → (Σj kijxj)

この (Σj kijxj) は、f(x) ∈ W に対応する列ベクトルでした。

ここまでの内容を可換図式でまとめておきます。

基底変換行列 :可換図式

基底変換行列-可換図式

x ∈ V を列ベクトルで表示することについて、φ によって列ベクトル表示を変更しました。先ほどの記号だと、φ を表しているのが行列 C でした。

まず、基底を取り替えたことで、
(si) → (xj) と列ベクトルを変更しました。

この (si) に左から行列 C 乗じることで、(xj) になります。その後で、線形写像 f を表す行列 A を掛けます。

すると、A(xj) = (Σj kijxj) となりました。

この (Σj kijxj) が f(x) に対応する列ベクトルです。

線形代数の行列表示の理論を通じて可換図式に慣れておくと、加群のテンソル積を学習するときに、普遍性に関連する合成写像たちを考えるための良いトレーニングになるかと思います。

合成写像での行き先が、どの始集合の元についても等しくなる図式が可換図式です。

V → V → W という恒等写像と線形写像の合成に対応して、列ベクトルの対応が行列を左から掛けることによって表されています。

Km → Km → Kn は、左から行列 C を掛けて、その後、さらに左から行列 A を掛けるというものです。

行列の式で表すと、
AC(si) = A(xj) = (Σj kijxj) となっています。

可換図式で大まかな流れを押さえ、細部の内容を写像の定義や行列の計算で詰めていきます。

そうすると、しっかりとした議論を進めることができます。

関連する記事として、End(V) という記事を投稿しています。

V から V への線形変換全体が環となっているということを定義に基づいて確認する内容となっています。

また、具体例を用いた線形写像に関連する内容を解説した記事として、退化次数という記事も投稿しています。

可換図式のことを述べたので、参考までに線形写像のテンソルについて述べておきます。

線形写像のテンソル :環Rからの作用

【普遍写像性質の定理】

右R-加群M と左R-加群のテンソル積を T とする。
また、G を任意の加法群とし、
φ : M × N → G をバランス写像とする。
このとき、φ* : T → G が、ただ一つ存在し、
φ*π = φ となる。

テンソル積より

M を右R-加群、N を左R-加群としたとき、
Z(M, N) を直積集合 M × N を基底とする Z-自由加群と表すことにします。

そして、W(M, N) という特別な形の元たちで生成される部分加群で剰余加群を作ったものが、M と N のテンソル積です。

T = Z(M, N)/W(M, N) と、このブログサイトでは表しています。
※ テンソルの記号を使わずに、剰余加群の記号で気分を楽にして議論を進めることにします。

a + W(M, N) ∈ T のことを [a] とシンプルに表すことにします。

そして、(x, y) ∈ M × N に対して、
(x, y) ∈ Z(M, N) を対応させる写像と、
a ∈ Z(M, N) に対して [a] ∈ T を対応させる自然な Z-加群準同型の合成写像を π と表しています。

つまり、π : Z(M, N) → T

この π と テンソル積 T について、上の普遍写像性質の定理を使います。

加法群 G として、何を考えるかということを丁寧に押さえると、理解しやすいかと思います。

それでは、Z-加群 T を、R-加群とするために、M を両側加群とし、R からの作用を定義します。

作用を詳しく確認

M を R-R0-両側加群、N を左R0-加群とします。

各 r ∈ R に対して、
rf : M × N → T を rf((x, y) = [(rx, y)]

テンソル積の基本的な関係式は、
割った W(M, N) の生成元 たちの形から得られています。
※ 詳細は、先ほどのリンク先のブログ記事で解説をしています。

そのため、x1, x2 ∈ M, y ∈ N に対して、
rf((x1+x2, y) = [r(x1+x2), y] =
[rx1+rx2, y] = [rx1, y] + [rx2, y]
= rf((x1, y) + rf((x2, y)

x ∈ M, y1, y2 ∈ N についても、同様に、
rf((x, y1+y2) = rf((x, y1) + rf((x, y2)

さらに、r0 ∈ R0 に対して、
M が両側加群であることから、
rf((xr0, y) = [r(xr0), y] = [(rx)r0, y]

ここで、テンソル積の基本的な関係式から、
[(rx)r0, y] = [rx, r0y] = rf((x, r0y)

つまり、rf((xr0, y) = rf((x, r0y)

以上から、rf はバランス写像の定義を満たしています。

そこで、加法群 G として、T を考え、普遍写像性質の定理を適用します。

すると、rf* : T → T という加法群としての準同型写像が存在して、rf*・π = rf

よって、r ∈ R から T への左作用を rf* を利用して、次のように定義できます。

任意の [a] ∈ T に対して、r[a] = rf*([a])

これで、Z-加群だったテンソル積 T が、左R-加群となりました。

直接に作用を定義しようとすると、代表元の取り方に依らずに定義できるのか不明になってしまいます。

そこで、普遍写像性質の定理を用いて、rf* をクッションにして作用を定義しました。

もっと詳しく作用を確認

[a] ∈ T は、Σi [(xi, yi)] という形の有限和です。
(ただし、xi ∈ M, yi ∈N)

π(xi, yi) = (xi, yi) なので、
r ∈ R に対して、rf* が加法群としての準同型写像であることと、
合成写像 rf*・π が rf に等しいことから、
r[a] = rf*([a]) = rf*(Σi [(xi, yi)])
= rf*(Σiπ( [(xi, yi)])) = Σi rf*(π( [(xi, yi)]))
= Σirf((xi, yi)) = Σi [rxi, yi]

また、r, s ∈ R に対して、
普遍写像性質の定理から、
r+sf* = rf* + sf*, rsf* = rf*・sf*

となります。

環 R における和は、写像の和、R における積は、写像の合成です。

さらに、1 ∈ R については、
1f* は T から T への恒等写像です。

テンソルの記号を使うと、
r ∈ R の左作用は、
r(Σi xi⊗yi) = Σi (rxi)⊗yi

これで、T が左R-加群となりました。

R0 が可換環のときは、左からの R0 の作用を 右作用で定義すると、
M は R0-R0-両側加群となります。

そのため、今のテンソル積への左作用を R0 について定義すると、
t ∈ R0 について、
t(Σi xi⊗yi) = Σi (txi)⊗yi = Σi (xit)⊗yi となります。

また、M が右R0-加群、
N が R0-R-両側加群のとき、同様にしてテンソル積への右作用が定義できます。

r ∈ R に対して、
i xi⊗yi)r = Σi xi⊗(yir)

R0 が可換環のとき、N への右作用を R0 の左作用で定義すると、
t ∈ R0 に対して、tyi = tyi です。

ゆえに、
i xi⊗yi)t = Σi xi⊗(yit) = Σi xi⊗(tyi)

以上の内容を踏まえて、環 R が可換体 K のときの線形代数のテンソル積への作用をまとめます。

線形代数のテンソル積

M, N を体 K 上の線形代数(ベクトル空間)とします。

K から M と N への左作用と右作用は、どちらもベクトル空間の公理のスカラー倍で定義します。

そのため、どちらも K 上の両側加群になっています。

よって、k ∈ K に対して、テンソル積への作用は、次のようになります。

Σi xi⊗yi ∈ M⊗KN に対して、
Σi (xik)⊗yi = Σi (kxi)⊗yi
= k(Σi xi⊗yi) = Σi xi⊗(yik) = Σi xi⊗(kyi)

M と N が K 上両側加群なので、k からの作用が、スムーズに行き来できます。

それでは、線形写像のテンソル積についての議論へと進めます。

線形写像のテンソル :Z-準同型から徐々に

M, A を 右R-加群とし、N, B を左R-加群とします。

そして、
f : M → A, g : N → B を R-準同型写像とします。

このとき、M と N のテンソル積を T、A と B のテンソル積を T’ とします。
T も T’ も Z-加群の状態です。

ここで、(x, y) ∈ M × N に対して、
h(x, y) = f(x)⊗g(y) と定義します。

h は M × N から T’ = A⊗RB へのバランス写像となっています。

π : M × N → T = M⊗RN について、
加法群 G を T’ = A⊗RB として、普遍写像性質の定理を適用します。

すると、h* : M⊗RN → A⊗RB が存在して、
h*・π = h となります。

よって、各 Σi xi⊗yi ∈ M⊗KN に対して、
h*(Σi xi⊗yi) = h*(Σi π(xi⊗yi)) =
Σi h*(π(xi⊗yi)) = Σi h(xi, yi) =
Σi f(xi)⊗g(yi)

直接 h* を定義しようとすると、代表元の取り方に依らずに定義できるのか不明です。

そこで、普遍写像性質の定理を利用することで、h* を導きました。

この h* : M⊗RN → A⊗RB は Z-加群としての準同型写像となっていて、f と g のテンソル積といいます。
記号は、h* = f⊗g です。

先ほどの内容をテンソルの記号を用いて、
f⊗g(Σi xi⊗yi) = Σi f(xi)⊗g(yi) と表します。

では、R が可換体 K のときに、線形写像となっていることを確認します。

Rが可換体のとき

M, N, A, B を体 K 上の線形代数とします。そして、f は M から A への K 上の線形写像、g は N から B への K 上の線形写像とします。

上で述べたように、M, N, A, B は K 上の両側加群で、M⊗KN と A⊗KB は K 上の加群、つまり、K 上の線形代数です。

h* = f⊗g は Z-加群としての準同型写像なので、和を保存することから、次のようになります。

線形写像のテンソル-linear-map

ここで、Z からの作用ではなく K からの作用になっているので注意です。

K からの作用については、両側加群についての内容で、上で述べた内容を考えます。

Σi xi⊗yi ∈ M⊗KN, k ∈ K に対して、
f⊗g(k(Σi xi⊗yi))
= f⊗g(Σi (kxi)⊗yi) = Σi f(kxi)⊗g(yi)
= Σi kf(xi)⊗g(yi) = k(Σi f(xi)⊗g(yi))
= k(f⊗g((Σi xi⊗yi)))

これで K からの作用についても保存していることが確認できました。

線形代数(自由加群)どおしでテンソル積をとると、基底どおしのテンソルが基底になります。

これを示すには、外部直和についての命題を用いて、いくつかの命題を示すことになります。

さすがに長くなってきたので、ここで今回のブログ記事を終了します。

読んで頂き、ありがとうございました。