散れども切れぬ備忘録

代数学やその他数学に関することなどをそこはかとなく書きつくる備忘録

ベクトル空間から始める圏論入門

題名の通りです。
備忘録なので多少雑に書きますが、できる限り丁寧に書きます。

まえがき

この記事はざっくりと「線形代数の最初あたりでどんなことを学ぶのか知りたい」「圏論を始めてみたい」といった人に向けて書かれた物です。

第一部では体,ベクトル空間と線型写像等、基本になる概念の定義等を述べます。集合論の初歩(直積,商集合や全単射写像など)を知っていれば読めます。
第二部では圏や関手等、圏論の基本になる概念の定義等を述べます。圏論と言うと抽象度の高さが目立ちますが、ベクトル空間という簡単な対象を例に採用しているので安心して読んでください。
第三部として対称モノイダル閉圏(ベクトル空間の圏論的性質)のことを書くつもりだった名残で余計な定義や足りない概念がありますがご容赦ください。

第一部 ベクトル空間のことば

この節では最終的にベクトル空間と線型写像を定義することを目標とします。
したがって、しばらく定義と例の羅列が続きます。演習問題がてら、例がちゃんと例になっていることを確かめる等してみてください。

アーベル群

[定義]
集合Xに対し、写像X×X→Xを演算と呼びます*1
集合G上の演算+\colon G×G→Gが以下の条件を満たすとき、組(G,+)をアーベル群と呼びます:
Gの任意の元a,b,cに対して
(a+b)+c=a+(b+c)
単位元と呼ばれる元0∈Gが在って、0+a=a=a+0
aの逆元と呼ばれる元-a∈Gが在って、a+(-a)=0=-a+a
a+b=b+a
アーベル群の演算は、しばしば+と表され加法と呼ばれます。
また、しばしば(G,+)を単にGと表します。

(例)
(1)整数全体の集合ℤと足し算はアーベル群を成します。
(2)1のn乗根全体の集合Z_n=\{ζ_n=cos(2πk/n)+isin(2πk/n);k=0,...,n\}と掛け算はアーベル群を成します。
(3)実数全体の集合ℝと足し算はアーベル群を成します。
また、ℝから0を除いた集合と掛け算もアーベル群*2を成します。

[定義]
2つのアーベル群(G,+_G),(H,+_H)に対して、写像f\colon G→Hが次を満たすとき、fを群準同型写像(あるいは単に準同型)と呼びます:
任意のGの元g,g'に対し
f(g+_Gg')=f(g)+_Hf(g')

(例)
(1)f\colon ℤ→ℝf(n)=nと定めるとこれは準同型になります。
(2)f_k\colon ℤ→ℤf_k(n)=kn(kは整数)とするとこれは準同型になります。
(3)任意のアーベル群Gに対してf\colon G→Gf(g)=gとするとこれは準同型になります。(恒等写像と呼びます。)

[定義]
準同型f\colon G→Hに対して、準同型g\colon H→Gが存在しf∘g,g∘fが恒等写像であるとき、fを同型写像と呼びます。
また、同型f\colon G→Hが存在するとき、GHは同型であるといい、G≅Hと表します。

(例)
集合\{0,...,n-1\}を考え、mod nの足し算を演算としてアーベル群とみなし、これをℤ/nℤと表します。
このとき、ℤ/nℤZ_nは同型です。

アーベル群の演算

[定理]
2つのアーベル群(G,+_G),(H,+_H)の直積G×Hにもアーベル群の構造が入ります:
(g,h)+_{G×H}(g',h')=(g+_Gg',h+_Hh')とすれば
(G×H,+_{G×H})はアーベル群になります。
[証明]
読者への演習問題とします。■

アーベル群の直積G×Hがあると、準同型p_1\colon G×H→G,p_2\colon G×H→Hp_1( (g,h) )=g,p_2( (g,h) )=hによって定まります。この準同型を射影と呼びます。

アーベル群Gの部分集合Hがあり、これがGの上の演算についてアーベル群になっているとき、これをGの部分アーベル群 または単に部分群と呼びます。
(例)
(1)nℤ=\{nk;k∈ℤ\}とすると、これはアーベル群ℤの部分群になります。
(2)一般に、アーベル群の直積G×Hに対してG×\{0\}は部分群になります。また、G×\{0\}Gと同型なのでしばしば同一視されます。

直積の双対*3として直和も定義できます。
[定義]
アーベル群G,Hに対して(g,h)∈G×Hg+hと"形式的に"和の形で表すことにします。和なので無限和は許されません。つまり、Σ_ig_iのうちg_iは有限個を除いて0とします。Σ_ig_iの形で表される元全体の集合をG\oplus Hと表し、G,Hの直和と呼びます。
(例)
有限個のアーベル群の直積と直和は一致しますが、無限個になるとそうとは限りません。
例えば、ℤのN(自然数全体の集合(の濃度) )個の直積ℤ^Nと直和ℤ^{(N)}を見てみましょう。前者の元はただの整数の組なので制約はありませんが、後者は有限個を除いて0でなくてはなりませんから、例えば(1,2,...)はℤ^{(N)}に属しません。
また直和は直積の部分群になります。

アーベル群の直和G⊕︎Hがあると、準同型i_1\colon G→G⊕︎H,i_2\colon H→G⊕︎Hi_1(g)=(g,h),i_2(h)=(g,h)によって定まります。この準同型を入射と呼びます。

アーベル群Gとその部分群Hに対して、二項関係\sima\sim b⇔a-b∈Hと定めるとこれは同値関係になります(確かめてみてください)。
Gをこの同値関係〜で割った同値類*4の集合(商集合)G/\simには\bar{a}+_{G/ \sim}\bar{b}=\overline{a+b}として演算が入り、特にアーベル群になります(確かめてみてください)。
こうしてできたアーベル群G/\simG/Hと表し、GHによる商アーベル群 または単に商群と呼びます。
(例)
ℤとその部分群nℤを考えます。
同値関係〜は「mod n」のことに他なりません。
また、a∈ℤの同値類は\bar{a}=a+nℤ=\{a+nk;k∈ℤ\}であり、商群ℤ/nℤとは先の例に出てきたアーベル群ℤ/nℤと全く同じものです。

商群G/Hに対して、Gからの写像π\colon G→G/H\colon g⟼\bar{g}を定めることができ、さらにこれが準同型になります。
これを(商群に対する)自然な準同型と呼びます。

アーベル群(K,+)に対して、
もう1つの演算・\colon K×K→Kがあり、K^×=\{a∈K;a≠0\}と・の組(K^×,・)がアーベル群になり*5、これらが分配法則を満たす*6とき、(K,+,・)を体と呼びます。また、しばしば(K,+,・)を単にKとも表します。
(例)
ℚやℝは体になります。
ℤは体にはなりませんが、pが素数のときℤ/pℤは体になります。

ベクトル空間

以下Kを体とします。分かりにくければℝをイメージしてください。
[定義]
アーベル群(M,+_M)と体(K,+_K,・_K)に対して スカラー倍と呼ばれる写像*\colon K×M→Mがあり、これが任意のm,n∈M,a,b∈Kに対して次の条件を全て満たすとき、アーベル群Mとスカラー倍の組(M,*)をK-ベクトル空間と呼びます:
a*(n+_Mm)=(a*n)+_M(a*m)
(a・_Kb)*m=a*(b*m)
(a+_Kb)*m=(a*m)+_M(b*m)
1*m=m
これらは演算の記号を省略すると次のようにも書けます:
a(n+m)=an+am
(ab)m=a(bm)
(a+b)m=am+bm
1m=m
K-ベクトル空間(M,*)を単にMと表したり、体Kが明らかな場合には単にベクトル空間と言ったりもします。
(例)
n個の実数の組(a_1,...,a_n)をn次ベクトルと呼ぶことにします。n次ベクトル全体の集合ℝ^n(a_1,...,a_n)+(b_1,...,b_n)=(a_1+b_1,...,a_n+b_n)とするとアーベル群になりますが、特にスカラー倍をr*(a_1,...,a_n)=(ra_1,...,ra_n)で定義するとℝ-ベクトル空間になります。
これは数学Bで学ぶ「ベクトル(大きさを持った有向線分)」と全く同じものです。

[定義]
V,WをK-ベクトル空間とします。
写像f\colon V→Wが次を満たすとき、fをK-線型写像と呼びます:
・fはアーベル群の準同型写像である
・fはスカラー倍を保つ。すなわち、f(a*_Vm)=a*_Wf(m)
体Kが明らかな場合にはK-線型写像を単に線型写像と呼びます。
(例)
ℂを複素数全体の集合とします。これはℝ-ベクトル空間です。
写像f\colon ℝ^2→ℂf( (a_1,a_2) )=a_1+a_2iと定めるとこれはℝ-線型写像になります。

[定義]
線型写像f\colon V→Wに対して、線型写像g\colon W→Vが存在しf∘g,g∘fが恒等写像であるとき、fを同型写像と呼びます。
また、同型f\colon V→Wが存在するとき、VWは同型であるといい、V≅Wと表します。
(例)
先の線型写像は同型写像でもあります。実際に、g\colon a+bi⟼(a,b)がfの逆を与えます。

ベクトル空間の演算

[定理]
2つのK-ベクトル空間V,Wの直積V×WにもK-ベクトル空間の構造が入ります:
アーベル群の直積なのでアーベル群になり、またスカラー倍をa*_{V×W}(v,w)=(a*_Vv,a*_Ww)と定めると ベクトル空間にもなります。
[証明]
読者への演習問題とします。■

ベクトル空間の直積V×Wがあると、線型写像p_1\colon V×W→V,p_2\colon V×W→Wp_1( (v,w) )=v,p_2( (v,w) )=wによって定まります。この線型写像を射影と呼びます。

ベクトル空間Vの部分集合Wがあり、これがVの上の演算についてベクトル空間になっていて、さらにKW=\{kw;k∈K,w∈W\}⊂Wを満たすとき、これをVの部分空間と呼びます。
(例)
(1)ℝはℚ-ベクトル空間ですが、ℚはℝの部分空間になります。
(2)一般に、アーベル群の直積V×Wに対してV×\{0\}は部分空間になります。また、V×\{0\}Vと同型なのでしばしば同一視されます。

ベクトル空間の直積がベクトル空間になるように、ベクトル空間の直和もまたベクトル空間になります。スカラー倍も同様に定義すればよいです。

ベクトル空間の商加群V/Wにもベクトル空間の構造が入ります:
同値類\bar{v} = v+Wに対して
スカラー倍をa*_{V/W}\bar{v}=\overline{a*_Vv}と定めればよいです。
これを商ベクトル空間、または単に商空間と呼びます。
自然な準同型も商群の時と同様に定義されます。

ベクトル空間のテンソル

[定義]
ベクトル空間Vの部分集合Bを含む 最小のVの部分空間を< B >と書き、Bによって生成される部分空間と呼びます。
(例)
ℝ^3の部分集合\{(1,0,0),(0,1,0)\}によって生成される部分空間はℝ^2です。

(蛇足)
*7

[定義]
K^{(V×W)}を集合V×Wで生成されるK-ベクトル空間*8とし、tを適当なv_1, v_2 ∈ V, w_1, w_2 ∈ W, c ∈ K を用いて
(v_1, w_1) + (v_2, w_1) − (v_1 + v_2, w_1),
(v_1, w_1) + (v_1, w_2) − (v_1, w_1 + w_2),
c(v_1, w_1) − (cv_1, w_1),
 c(v_1, w_1) − (v_1, cw_1)
の何れかの形に書けるの元全体から生成されるK^{(V×W)}の部分空間とします。
商空間K^{(V×W)}/tV⊗︎_KWと表し、VとWのK上のテンソル積と呼びます。
Kが明らかな場合には略することがあります。
また、(v,w)∈V×Wの同値類をv⊗︎w∈V⊗︎Wと表します。
(例)
(1)ℝ^2はℝ-ベクトル空間でした。
その基底は(1,0),(0,1)なので、ℝ^2⊗︎_ℝℝ^2の基底は(1,0)⊗︎(1,0),(1,0)⊗︎(0,1),(0,1)⊗︎(1,0),(0,1)⊗︎(0,1)になります。つまりℝ^2⊗︎_ℝℝ^2≅ℝ^4となります。
より一般に、K^n⊗︎_KK^m≅K^{nm}が成り立ちます。
(2)ℂはℝ-ベクトル空間でした。
ℝ-ベクトル空間Vとℂをテンソル積にしたベクトル空間V⊗︎_ℝℂをしばしばV_Cと表し、ℝ-ベクトル空間Vの複素化*9と呼びます。
V_Cは ℂからのスカラー倍をα*_ℂ(v⊗︎β)=v⊗︎(αβ)で定めるとℂ-ベクトル空間とみなすこともできます。
より一般に、K-ベクトル空間Vと Kの拡大体*10K'について、K'をK-ベクトル空間だと思って、K上でVとテンソル積を取ったものV_{K'}=V⊗︎_KK'を係数拡大と呼びます。

テンソル積は次の性質を持ちます:
[定理]
X,Y,ZをK-ベクトル空間、f\colon X×Y→ZをK-双線型写像*11とします。
このとき、K-双線型写像g\colon X×Y→X⊗︎Yがあり、
さらにf=g∘hを満たすK-線型写像h\colon X⊗︎Y→Zがただ1つ存在します。
これをテンソル( (X⊗︎Y),g)の普遍性といいます。
[証明]
まずgを構成しましょう。
i\colon X×Y→K^{(X×Y)}\colon (x,y)⟼x⊗︎y
という線型写像があります(埋込みと呼ぶことにします)。
また、商空間の自然な準同型からπ\colon K^{(X×Y)}→K^{(X×Y)}/t=X⊗︎Yを得ます。
これらの合成をgとします。つまりg=π∘iです。
gはg(x,y)=x⊗︎yという写像で、特に線型写像です。
つぎにhを構成します。
f\colon X×Y→Zf'\colon K^{(X×Y)}→Zに"拡張"できます*12
このとき、tの基底(生成元)を取ってf'で写すと0になります。
例えば、(x+x')⊗︎y-x⊗︎y-x'⊗︎y∈tを取ると、
f'( (x+x')⊗︎-x⊗︎y-x'⊗︎y)=f(x+x',y)-f(x,y)-f(x',y)=0となります。(他の場合についても確かめてみてください。)
よって、tのどの元もf'で写せば0になります。
故に、h(x⊗︎y)=f(x,y)を満たすh\colon K^{(X×Y)}/t=X⊗︎Y→Zを得ることができます*13
このhはfに依って決まるので、1つのfに対してただ1つだけ存在します。
以上でテンソル積の普遍性は示せました。

(例)
Kを体として、多項式環K[x],K[y] テンソルK[x]⊗︎_KK[y] を考えます。
写像μ\colon K[x] × K[y] → K[x,y], (f(x),g(y) )⟼f(x)g(y)
は K-双線型なので, テンソル積の普遍性によってK-線型写像
φ\colon K[x] ⊗︎_K K[y] → K[x,y]; f(x) ⊗ g(y) ⟼ f(x)g(y)
が存在します。
一方、K-線型写像
ψ\colon K[x,y] → K[x] ⊗_K K[y];
∑_{i,j} a_{i\ j} X^iY^j ⟼ ∑_{i,j} a_{i\ j} X^i ⊗ Y^j
を考えると、ψ∘φ,φ∘ψはどちらも恒等写像です。
したがってK[x]⊗︎_KK[y]≅K[x,y] です。

第二部 圏論のことば

この節では圏論の基本的な知識を紹介し、次の節に備えます。米田の補題や極限等の少し進んだ圏論は紹介しませんので、それらを知りたい場合は『ベーシック圏論』や壱大整域 等をご覧下さい。

さて、k-ベクトル空間全体の集まりをVect_kと表すことにすると、これは以下の性質を満たします:

Vect_kの元はk-ベクトル空間である。
Vect_kの2つの元V,Wについて、これらの間のk-線形写像 を集めた集合Hom_k(V,V')がある。
・2つのk-線形写像f∈Hom_k(V,V'),g∈Hom_k(V',V'')があったとき、これらを合成してk-線形写像g∘f∈Hom_k(V,V'')を得ることができる。
・また、k-線形写像の合成は結合法則を満たす。
・全てのk-ベクトル空間Vに対して恒等写像と呼ばれるk-線形写像id_V∈Hom_k(V,V)があって、これが合成に関する単位元となる。つまり、f∈Hom_k(V,V')に対してf∘id_V=f=id_{V'}∘fとなる。

この性質を抽象化すると圏という概念が得られます。
Cが圏であるために満たすべき公理は以下の通りです:
CObC,MorCからなる。(ObCの元を対象、MorCの元を射と呼ぶ。)
・2つの対象a,bに対して、その間の射を集めた集合Hom_C(a,b)がある。(Hom集合と呼ぶ。)
・2つの射f∈Hom_C(a,b),g∈Hom_C(b,c)があるとき、これらを"合成"してg∘f∈Hom_C(a,c)を得ることができる。
・また、射は合成に関して結合法則を満たす。
・全ての対象aに対して恒等射と呼ばれる射id_a∈Hom_C(a,a)があって、これが合成に関する単位元となる。つまり、f∈Hom_C(a,b)に対してf∘id_a=f=id_b∘fとなる。

(例)
(1)対象も射も持たない圏が存在します。これを空圏と呼び0や∅と表します。
(2)対象も射もただ一つの圏、つまりObC=\{a\},MorC=\{id_a\}を満たす圏Cが存在します。これを1と表します。
(3)既に見た通り、Vect_kは圏になります。
(4)対象が1つだけの圏(のHom集合)は、アーベル群の条件のうち「逆元が存在する」「可換(ab=ba)である」を満たしません。これをモノイドといいます。

様々な圏・射

[定義]
Cの射f\colon a→bに対して射g\colon b→aがあり、f∘g,g∘fがどちらも恒等射になるとき、fを同型射と呼び、aとbは同型であるといいます。
(例)
(1)Vect_kにおいて同型射と同型写像は一致します。
(2)対象が1つで射が全て同型射である圏(のHom集合)は、アーベル群の条件のうち「可換である」を満たしません。これを群といいます。また、対象が1つとは限らないが射は全て同型射である圏は亜群(groupoid)と呼ばれます。

[定義]
Cに対し、その反対圏と呼ばれる圏C^{op}を次のように定義します:
C^{op}の対象はCの対象である。つまりOb(C^{op})=Ob(C)a∈Ob(C)を反対圏の対象とみなすとき、しばしばa^{op}とも書く。
Hom_{C^{op}}(a^{op},b^{op})=Hom_C(b,a)とする。
・射の合成や恒等射も先の条件に合わせて"反対"に定義する。例えば反対圏における射の合成∘^{op}f^{op}∘^{op}g^{op}=g∘fとする。

反対圏は圏になります(確かめてみてください)。

C,Dに対して、その直積圏C×Dを定義することができます。
Ob(C×D)=ObC×ObDとする。
Hom_{C×D}( (c,d),(c',d') )=Hom_C(c,c')×Hom_D(d,d')とする。
・射の合成は成分ごとに行う。

これも圏になります(確かめてみてください)。

関手

今までは対象や対象と対象の間の射を考えてきましたが、圏と圏の間にも射を考えることができます。
この射は関手と呼ばれます。定義は以下の通りです:
[定義]
圏C,Dに対してF\colon C→Dが関手であるとは、
c∈Cに対してF(c)∈D
f\colon a→b\ (in\ MorC)に対してF(f)\colon F(a)→F(b)\ (in\ MorD)
F(g∘f)=F(g)∘F(f)
F(id_c)=id_{F(c)}
を満たすことです。

特に、反対圏から/への関手を反変関手、直積圏からの関手を双関手といいます。

対象の間の同型が定義されたように、圏にも同型が定義されます:
[定義]
F\colon C→Dが同型関手であるとは、関手G\colon D→CがあってF∘G,G∘Fが恒等関手になることです。またこのとき、C,Dは圏同型であるといいます。

自然変換

さらに関手と関手の間にも射が定義されます。

[定義]
C,Dとその間の関手F,G\colon C→Dに対して、θ\colon F⇒Gが自然変換であるとは、
θは圏Cの対象で添字付けられた射の族θ=\{θ_a\colon Fa→Ga\}_{a∈C}であって、任意の射f\colon a→b\ (in\ MorC)に対して自然性の公理Gf∘θ_a=θ_b∘Ffを満たすことをいいます。
また、自然変換θに対してθ_aを成分と呼びます。

自然変換を用いて関手の同型を定義することもできます。
[定義]
関手F,G\colon C→Dに対して自然変換θ\colon F⇒Gが同型であるとは、自然変換τ\colon G⇒Fがあってθ∘τ,τ∘θがどちらも恒等自然変換であることをいう。またこのとき、関手F,Gは自然同型であるという。

この自然同型には次のようなわかりやすい(扱いやすい)特徴付けがあります。
[定理]
自然変換が同型であることと その成分が全て同型射であることは同値である。
(証明は略します。)

圏論をやるとわかるのですが、実は圏同型という条件は強すぎてあまり使い物になりません(というのも、対象と射両方について逆を与えなければいけないからです)。これを緩めた同値関係として「圏同値」とよばれるものがあります。
[定義]
C,Dが圏同値であるとは、関手F\colon C→D,G\colon D→Cがあり、F∘G,G∘Fが恒等関手に自然同型であることをいいます。
また、圏同値が反変関手で与えられているとき、圏同値を反変圏同値や双対と呼ぶことがあります。

さらにこれを弱めた関係(もはや同値関係ではありません)として随伴というのもあります。いくつか定義がありますが、ここでは最も簡単と思われるものを紹介するのみとします。
[定義]
関手F\colon C→D,G\colon D→Cが随伴(特にFが左随伴でGが右随伴)であるとは、
Hom_D(Fa,b)≅Hom_C(a,Gb)が自然に同型となる、
つまり、双関手の自然同型Hom_D(F-,-)≅Hom_C(-,G-)が成り立つことをいいます。

(例)
Vをn次元k-ベクトル空間とすると
Hom_{Set}(n,W)≅Hom_{Vect_k}(V,W)が自然同型になるので、
自然数nに対してn次元k-ベクトル空間を対応させる関手とベクトル空間をただの集合だと思う(構造を忘れる)対応の関手は随伴になります。特に、前者を自由関手、後者を忘却関手といいます。


圏論入門の記事はこれで終わりです。
ここまでの内容が理解できていると、例えば他の記事で紹介している対称モノイダル圏や閉モノイダル圏などの概念が理解できるようになります。
後半は随分杜撰になってしまった気がしますが、ここまで読んで頂き有難うございました。

*1:f:X×X→Xが演算であるとき、f(a,b)はしばしばafbと書かれることに注意してください。

*2:単位元は1になります。

*3:圏論の用語です。よくわからなければ"対になる概念"という認識で構いません。

*4:aの同値類を\bar{a}と表すことにします。

*5:しばしば 単位元は1、逆元はa⁻︎¹︎や1/aと表されます。

*6:任意の元a,b,c∈Kに対しa・(b+c)=a・b+a・cを満たすということ。これは・が双線形である(a・-\colon K→K-・b\colon K→Kがどちらもアーベル群準同型写像である)ということと同値です。

*7:< B >に対してBを生成系と呼びます。生成系が有限集合であるとき、< B >は有限生成であるといいます。一次独立な生成系を基底と呼びます。基底の数は基底の取り方に依らず一定です。この数をベクトル空間の次元といいます。全てのベクトル空間は基底を持ちます(ZFC)。基底を持つベクトル空間を自由加群と呼びます(本来は環上の加群に対する用語です)。全てのベクトル空間は自由加群です。自由加群であることとKのいくつかの直和で表されることは同じです。

*8:つまり、K^{(V×W)}=\{Σ_i(a_i(v_i⊗︎w_i);a_i∈K,v_i∈V,w_i∈W\}で、このベクトル空間の基底はv⊗︎wという形の元(全体)です。

*9:詳細はWikipedia https://en.wikipedia.org/wiki/Complexification をご覧下さい。

*10:Kを部分体として含む体のこと

*11: f(x,-):y⟼f(x,y)とf(-,y);x⟼f(x,y)がどちらもK-線型写像である、という意味。

*12:f'(Σ_ia_i(x_i⊗︎y_i) )=Σ_ia_if(x_i,y_i)とすればfからf'が得られるという意味。

*13:h(\bar{v})=h(v+t)=f'(v)とすればよいです。