
武蔵野個別指導塾の特徴
圏論 数学の構造どうしの関係を扱う言葉|武蔵野個別指導塾
合成関数の計算を入口に、対象と射、関手と自然変換、積と余積の普遍性をたどります。集合や群の具体例で、構造を保つ関係とその一意性を確かめられます。

圏論 数学の構造どうしの関係を扱う言葉
展示室で作品の間に目を向ける
美術館の常設展示室で、少し離れた壁に似た構図の作品を見つけたとします。一方には人物が描かれ、もう一方には椅子と窓が描かれています。描かれた物は違うのに、視線を右上へ運ぶ配置が似ている。個々の作品を見るだけでなく、何が対応し、何が保たれているかに目が向く瞬間です。数学でも、数や図形そのものを調べる視点に加えて、それらの間をつなぐ対応を調べる視点があります。
塾の講師としてこの場面から数学の話を始めるなら、まず作品を結ぶ線を自由に引いてよいか、と問いかけます。色が似ている関係と、制作の順番を示す関係は別物です。関係をつないだときに何が言えるかも違います。圏論では、こうした曖昧さを残さず、対象の間にどのような矢印を認め、その矢印をどの順番でつなげるかを定めます。
圏論は、集合、群、空間などの異なる数学的構造を、対象と射という共通の言葉で扱う分野です。ただし、絵が似ているものを何でも同じとみなす学問ではありません。合成できる条件と、合成が満たす規則を明記するところから始まります。高校の合成関数は、その規則をすでに具体的に見せています。
大学でこの視点を学ぶ意味は、別々に覚えた構成の共通点を、証明できる形で取り出せることにあります。積集合、群の直積、プログラムの組の型は、内部の材料が違っても、ある共通の条件で説明できます。その条件を読み取れるようになるため、まずは関数を実際に合成するところへ戻りましょう。

合成関数に始点と終点を書き添える
高校で扱う関数 f(x)=2x+1 と g(x)=x² を考えます。ここでは両方とも実数全体 R から R への写像です。f を先に使い、その結果に g を使う合成は g∘f と書きます。記号の右側から作用する点に注意してください。
(g∘f)(x)=g(2x+1)=(2x+1)²=4x²+4x+1
(f∘g)(x)=f(x²)=2x²+1
x=2 を代入すると、前者は25、後者は9です。したがって g∘f と f∘g は同じ関数ではありません。合成は一般に交換できません。圏論でも射の順番は自由に入れ替えられず、そもそも逆順の合成が定義されないこともあります。
それでも括弧の付け方には規則があります。さらに h(x)=x-3 を R から R への写像とすると、h∘(g∘f) と (h∘g)∘f は同じ関数です。どちらも、入力 x に f、g、h の順で作用させています。
(h∘(g∘f))(x)=((h∘g)∘f)(x)=4x²+4x-2
x=2 の場合はどちらも22です。この結合法則は、三つの関数の具体的な式に依存しません。合成が可能な写像 f:A→B、g:B→C、h:C→D なら、どちらの括弧でも x∈A を h(g(f(x))) に送ります。出力がすべての入力で一致するため、写像として一致します。
ここで式だけを見ていると見落とす情報があります。f:A→B には、始域 A と終域 B が含まれています。たとえば x² という同じ式でも、R→R と R→[0,∞) では終域が違います。後者は全射ですが、前者は負の実数に値を取らないので全射ではありません。関数の性質を述べるには、式と定義域だけでなく、どこへ向かう写像として扱うかも必要です。
R→R としての x² は、1 と -1 をともに1へ送るので単射ではありません。一方、[0,∞)→[0,∞) としての x² は全単射です。逆写像は x↦√x です。どの集合の間の写像かを変えると、逆があるかという問いの答えも変わります。
高校数学の集合、写像、合成関数、ベクトルの線形変換は、この入口につながっています。大学で増えるのは記号の難しさだけではありません。「どの対象の間に、どの種類の対応を認めているか」を毎回意識する必要が増えます。圏論の矢印には始点と終点があり、その情報を省かずに読むことが最初の練習です。
圏・関手・自然変換を小さな例で読む
圏 C は、対象の集まり、各対象 A,B の間の射の集まり Hom_C(A,B)、射の合成、および各対象の恒等射からなるものです。f∈Hom_C(A,B) は f:A→B と書きます。f:A→B と g:B→D に対して、合成 g∘f:A→D が定められます。ここでは各 Hom_C(A,B) が集合である局所小な圏を扱います。対象全体まで必ず一つの集合になるとは限りません。
これらのデータは、次の二つの公理を満たします。第一に、合成可能な任意の f:A→B、g:B→D、h:D→E について結合法則が成り立ちます。
h∘(g∘f)=(h∘g)∘f
第二に、各対象 A には恒等射 idₐ:A→A があり、任意の f:A→B に対して次が成り立ちます。
idᵦ∘f=f=f∘idₐ
恒等射は「何もしない射」に相当しますが、それも圏のデータとして必要です。矢印を描いた図だけでは圏になりません。つながる矢印を合成した結果がどの射か定まり、公理が成り立って初めて圏です。
集合の圏 Set では対象が集合、射が写像です。恒等射は x↦x、合成は通常の写像の合成です。先ほどの関数の計算は、Set の公理の確認になっています。対象 A が空集合でも恒等写像は存在します。要素を一つも動かさない写像にも、始域と終域は定まっています。
群の圏 Grp では対象が群、射が群準同型です。群とは結合的な演算と単位元を持ち、各元に逆元がある集合です。群準同型 f:G→H は、任意の a,b∈G に対して f(ab)=f(a)f(b) を満たす写像です。加法で書く群では f(a+b)=f(a)+f(b) となります。整数の加法群 Z から Z への f(n)=2n は準同型ですが、k(n)=n+1 は準同型ではありません。k(0+0)=1 に対し k(0)+k(0)=2 だからです。集合の圏ではどちらも射ですが、群の圏では後者は射に含まれません。
群準同型の合成が再び群準同型になる理由も書けます。f:G→H と g:H→K が準同型なら、任意の a,b∈G に対して次が成り立ちます。
(g∘f)(ab)=g(f(a)f(b))=g(f(a))g(f(b))
したがって、認めた射を合成しても外へはみ出しません。圏を作るときは、この合成に関する閉じた性質も欠かせません。
次に、関手 F:C→D を定義します。関手は各対象 A に対象 F(A) を、各射 f:A→B に射 F(f):F(A)→F(B) を対応させ、恒等射と合成を保つものです。式では、任意の対象 A と合成可能な f,g に対して次を要求します。
F(idₐ)=id の F(A) におけるもの
F(g∘f)=F(g)∘F(f)
対象の名前を置き換えるだけでは関手になりません。射にも対応を与え、それが合成と整合する必要があります。Grp→Set の忘却関手 U は、群から演算の情報を忘れて台集合を取り出し、準同型から同じ対応規則の写像を取り出します。写像としての合成は変わらないため、この対応は関手です。忘れた後の集合間には、もとの群準同型ではなかった写像もあります。
もう一つ、Set→Set の関手 P を P(A)=A×A、P(f)(a,b)=(f(a),f(b)) で定められます。集合を要素の組の集合にし、写像を組の両成分に作用させます。成分ごとに計算すると P(g∘f)(a,b)=(g(f(a)),g(f(b))) なので、これは P(g)∘P(f) の結果と一致します。恒等写像も組を動かさないため、関手の条件が満たされます。
関手どうしを結ぶのが自然変換です。同じ圏を始域・終域とする関手 F,G:C→D に対し、自然変換 η:F⇒G は、各対象 A について射 ηₐ:F(A)→G(A) を与え、任意の射 f:A→B について次を満たす族です。
G(f)∘ηₐ=ηᵦ∘F(f)
この条件は自然性と呼ばれます。左辺と右辺は、どちらも F(A) から G(B) への射です。「関手を切り替えてから対象間を進む」経路と、「対象間を進んでから関手を切り替える」経路の一致を求めています。
恒等関手 I:Set→Set と先ほどの P の間には、δₐ(a)=(a,a) という自然変換 δ:I⇒P があります。任意の写像 f:A→B に対し P(f)(δₐ(a))=(f(a),f(a))=δᵦ(f(a)) だからです。複製してから両方に f を使っても、先に f を使ってから複製しても同じです。自然性は「自然に見える」という感想ではなく、すべての射について要求する等式です。

積と余積を一意性から組み立てる
圏論の重要な考え方に普遍性があります。ある対象を内部の材料で指定する代わりに、ほかの対象との射の関係で特徴づけます。「条件を満たす射が存在する」だけでなく「ただ一つ存在する」ことが中心です。
対象 A,B の積とは、対象 P と射 p:P→A、q:P→B の組であって、次の条件を満たすものです。任意の対象 X と任意の射 f:X→A、g:X→B に対して、p∘u=f、q∘u=g を満たす射 u:X→P がただ一つ存在します。
∀X, ∀f:X→A, ∀g:X→B, ∃!u:X→P : p∘u=f, q∘u=g
∃! は「ただ一つ存在する」という意味です。積は対象 P だけでなく、取り出し方である二つの射も含めて定義します。Set では通常の直積 A×B と射影 p(a,b)=a、q(a,b)=b がこの条件を満たします。与えられた f,g に対し u(x)=(f(x),g(x)) とすれば存在が示されます。別の v も条件を満たすなら、v(x) の第一成分は f(x)、第二成分は g(x) なので、v(x)=u(x) です。これが一意性の証明です。
具体的に A={0,1}、B={a,b,c}、X={r,s} とします。f(r)=0、f(s)=1、g(r)=b、g(s)=c なら、条件を満たす u は次のものです。
u(r)=(0,b), u(s)=(1,c)
A×B の要素数は 2×3=6 です。X から A×B への写像は 6²=36 個ありますが、この f,g に両立する写像は上の1個です。一方、f の選び方は 2²=4 通り、g の選び方は 3²=9 通りなので、組 (f,g) は 4×9=36 通りです。積の普遍性は、単に個数が一致する以上に、各 (f,g) と各 u の具体的な対応を与えています。
ここから「積は一意的な同型を除いて一意である」という定理を証明できます。仮定は、同じ圏で (P,p,q) と (Q,r,s) がともに A,B の積であることです。このとき r∘α=p、s∘α=q を満たす同型 α:P→Q がただ一つあります。同型とは、射 α に対し逆向きの射 β:Q→P が存在し、β∘α=id の P におけるもの、α∘β=id の Q におけるものとなることです。
証明ではまず Q の普遍性で α を、P の普遍性で β を得ます。すると p∘β∘α=p、q∘β∘α=q です。恒等射も p∘id=p、q∘id=q を満たします。P の普遍性でそのような P→P の射は一つしかないため、β∘α=id です。同様に α∘β=id です。存在させた二つの射が互いに逆になる決め手は、一意性です。「同じような形だから同じ」と推測したわけではありません。
余積は、この定義の矢印を逆にしたものです。対象 S と射 i:A→S、j:B→S が A,B の余積であるとは、任意の対象 Y と射 f:A→Y、g:B→Y に対し、u∘i=f、u∘j=g を満たす射 u:S→Y がただ一つ存在することです。
∀Y, ∀f:A→Y, ∀g:B→Y, ∃!u:S→Y : u∘i=f, u∘j=g
Set での余積は、左右を区別する印を付けた非交和です。A と B に同じ要素が含まれていても、左から来たものと右から来たものを別々に残します。たとえば A={0,1}、B={1,2} の普通の和集合は {0,1,2} ですが、余積は {(左,0),(左,1),(右,1),(右,2)} と作れます。要素数はそれぞれ3と4です。
Y={赤,青} とし、f は A のすべてを赤へ、g は B のすべてを青へ送るとします。普通の和集合を使うと、共有する1の行き先を赤と青の両方にする必要があり、要求された u は存在しません。非交和なら u(左,a)=f(a)、u(右,b)=g(b) と定められます。左右の印があるので衝突せず、全要素の値が指定されるので一意です。
Grp でも直積 G×H は積です。演算を (g,h)(g′,h′)=(gg′,hh′) と成分ごとに定めれば、射影は準同型になります。二つの準同型 f:K→G、g:K→H をまとめた u(k)=(f(k),g(k)) も準同型です。ただし Grp の余積は集合の非交和そのものではありません。群の演算で閉じ、両方の群からの準同型を延長できる必要があります。余積を調べるときは、対象だけでなく、認める射が変わったことにも戻らなければなりません。
積や余積はすべての圏にあるわけでもありません。二つの異なる対象とそれぞれの恒等射しか持たない圏を考えると、片方から他方への射がないため、この二対象の積も余積も作れません。普遍性の定理は存在を自動的に保証するものではなく、存在した構成を特徴づける条件です。
自然な対応を定義するところから広がった言葉
圏論を、抽象的な言葉が先に作られ、後から数学に当てはめられたものと考えると、自然変換がなぜ登場するか見えにくくなります。代数や位相の議論では、異なる構成からできたものの間に対応が現れます。その対応が一つの対象だけで偶然成立するのか、それとも対象間の写像とも整合するのかを区別したい、という問題があります。
1945年の論文では、代数や位相に現れる一対一の対応の自然性を、圏上の関手の間の自然同値として精密に捉えています(Eilenberg・MacLane, 1945)。ここでの関心は、対応が全単射であるという一点だけではありません。対象を変化させる写像を含めて、対応が一貫していることです。自然性の等式は、その一貫性を検査する道具になります。
一般に自然同値は、各成分が同型である自然変換です。先ほどの δₐ:A→A×A は自然変換ですが、いつでも自然同値になるわけではありません。A={0,1} では像が {(0,0),(1,1)} だけで、(0,1) も (1,0) も得られません。したがってこの成分は全射ではなく、Set の同型である全単射にはなりません。自然変換であることと、逆を持つことを区別すると、歴史の中の「自然同値」という言葉も具体的に読めます。
1964年には、集合の圏の初等理論を題名に掲げる論文が現れています(Lawvere, 1964)。この書誌的な事実からも、圏という言葉が、異なる分野の対応を記述する場面だけでなく、集合の理論を考える題材になったことが読み取れます。ここではその公理系の詳細に立ち入らず、すでに扱った積の例で、要素による説明と射による説明の差を確かめます。
要素による説明では、積集合の要素を順序対 (a,b) として定めました。射による説明では、あらゆる X から A,B への二つの写像を、一つの X→P にまとめる性質を使いました。両方とも Set で正しい説明ですが、後者の文章は「写像」を「群準同型」に置き換えても意味を持ちます。同じ定義が異なる種類の構造で働くところに、圏論の言葉の広がりがあります。
ただし、共通の言葉を得ることは、それぞれの計算が不要になることではありません。Grp で積を作るなら、成分ごとの演算が群の公理を満たし、必要な射が準同型になると確かめます。具体的な構成を行う段階と、普遍性から一般的な性質を導く段階を往復することで、抽象化が実際の証明に役立ちます。
型の組合せと順序に現れる同じ条件
圏論には、基礎概念と具体的な例・応用を行き来する学び方があります。初学者向けの文献でも、基本概念に続いて応用や例示を扱い、順序集合の構造に大きな位置を与える構成が取られています(Grandis, 2018)。ここではその方向に沿い、定義から確かめられる二つの例として、型の組合せと順序を考えます。
プログラミング言語を考える一つの単純なモデルでは、型を値の集合、プログラムをその間の全域関数として扱います。全域とは、許されたすべての入力に対して出力が定まることです。状態の書換えや停止しない計算を含めず、このモデルに範囲を絞ると、プログラムの連結は写像の合成になり、入力をそのまま返すプログラムは恒等写像になります。
このとき A×B は、A の値と B の値を両方持つ組の型と読めます。入力 X から A の値を作る処理 f と B の値を作る処理 g があれば、x を (f(x),g(x)) に送る処理が一つ定まります。その第一成分を取り出せば f、第二成分を取り出せば g です。別の処理でもこの二つの取り出し結果が同じなら、組の値として出力は同じです。まさに積の存在と一意性です。
余積 A⊔B は、A の値か B の値のどちらかを、どちらであるかの印とともに持つ型と読めます。A の場合の処理 f:A→Y と B の場合の処理 g:B→Y があれば、入力の印で場合分けする処理 u:A⊔B→Y が定まります。組の型では二つの情報を同時に作り、余積の型ではどちらの入力かに応じて処理します。この違いは、積と余積の矢印の向きの違いに対応します。
自然変換の例もこのモデルでは読みやすくなります。値を同じ値の組にする δ は、個々の型の値を調べずに記述できます。f を両成分に使う P(f) と δ が交換することは、先ほどの自然性の等式そのものです。ただし、これはここで定めた全域関数のモデルでの等式です。実行時間の一致まで述べているわけではなく、状態を変更する処理を同じ仕組みで扱うには追加の構造が必要になります。
別の例として、順序集合 (S,≦) から圏を作れます。対象を S の要素とし、a≦b のときだけ a→b という射がただ一つあるとします。a≦a という反射性が恒等射を与え、a≦b かつ b≦c なら a≦c という推移性が合成を与えます。同じ始点・終点を持つ射は高々一つなので、結合法則も成立します。
この圏で a,b の積 p を考えると、射影の存在は p≦a、p≦b を意味します。普遍性は、x≦a かつ x≦b なら必ず x≦p であるという条件です。つまり p は a,b の最大下界です。実数の通常の順序では積は min(a,b)、余積は max(a,b) に当たります。たとえば2と5の積は2、余積は5です。ここでの積は数の掛け算ではありません。
順序集合の圏で起きたこの違いは、圏論の応用を読む際のよい注意点です。「積」という同じ言葉が、集合では順序対、順序では最大下界を指します。名前が同じだから計算式も同じなのではなく、同じ普遍性をそれぞれの射で読み直した結果です。どの分野に進んでも、対象、射、合成を先に確認すると、共通部分と固有の部分を分けて考えられます。
矢印の迷子から抜け出すための手順
圏論でつまずくとき、定義の文章を読めないというより、今どの段階のものを比べているかが混ざっていることがあります。f:A→B は圏の中の射で、F:C→D は圏どうしを結ぶ関手です。η:F⇒G は関手の間の自然変換ですが、その成分 ηₐ は D の中の射です。この階層の違いを一枚の紙に押し込むと、矢印だけが増えて始点を見失います。
最初の手順は、式を変形する前にすべての矢印の始域と終域を書くことです。G(f)∘ηₐ なら、ηₐ:F(A)→G(A)、G(f):G(A)→G(B) と書きます。中間の G(A) が一致して初めて合成できます。自然性のもう一方も F(A)→G(B) になっているかを確かめれば、添えた文字の取り違えを自分で発見できます。
次の手順は、「任意」と「ただ一つ」を別々に点検することです。積なら、まず任意の X,f,g に対して候補 u を作ります。その後で、条件を満たす別の候補 v を置き、v=u を示します。最初から「明らかに一意」と書かず、集合では二つの成分が指定されるため、と理由を具体化します。存在だけ証明して終える癖をここで直せます。
さらに、小さな失敗例を一つ作ります。余積を普通の和集合にすると何が困るか、重なりを持つ A={0,1} と B={1,2} で試します。左の1と右の1を違う値に送りたいとき、矛盾が起きる場所を一行で書きます。定義の条件を外すとどこが壊れるかが見えれば、印を付ける理由も記憶に残ります。
最後に、同じ条件を別の圏で読み直します。集合の積を確かめた後、順序集合の圏で p→a を p≦a と読み替えます。すると射影が下界の条件になり、普遍性が「すべての下界以上」という条件になります。抽象的な文章を丸暗記するより、具体例への翻訳を自分で実行できるかを目標にすると、理解した箇所と未整理の箇所がはっきりします。
高校生のうちには、集合の要素を書き出すこと、合成関数の順番を確かめること、全単射と逆写像の関係を説明することが準備になります。特に「この式はどの集合からどの集合への関数か」を答える練習は、複雑な知識を先取りしなくても始められます。二つの関数が等しいと主張するとき、いくつかの入力で試すことと、すべての入力について示すことの違いにも注意してください。
塾で扱うなら、講師が完成した図を見せる前に、生徒自身に始域と終域を書いてもらいます。続いて一つの要素を追う計算を行い、最後にその要素を任意のものとして証明へ移します。間違えた式は消すだけでなく、合成できないのか、値が一致しないのか、一意性を示していないのかを分けます。直す対象が定まると、復習も一つの操作から再開できます。
家庭では、お子さまが専門用語を流暢に言えるかより、ノートの小さな例を説明する時間を持てるかを見ていただくとよいでしょう。「この矢印はどこからどこへ行くのか」「組の第一成分は何か」と尋ねるだけでも、説明を具体に戻せます。抽象的な単元に時間がかかることを、計算力全体の不足と結び付けず、取り組んでいる定義と例を一つずつ聞く姿勢が支えになります。
ここで手が止まるなら、止まった単元まで一緒に戻ります。武蔵境の数学塾(1 対 1)/お問い合わせ
圏論を学ぶ前に残りやすい三つの疑問
集合論を終えてからでないと学べませんか
集合と写像、合成、全単射を理解していれば、小さな例から始められます。ただし、集合の例だけですべての圏を理解したつもりにならないことが必要です。群を学んだら Grp で、順序を学んだら順序集合の圏で同じ定義を確かめると、共通の言葉を持つ意味が増していきます。圏論を学ぶ時期は学ぶ分野によって異なり、大学の最初の段階で一律に履修する内容とは限りません。
矢印を描けば証明したことになりますか
矢印を描くだけでは証明になりません。図で二つの経路が同じ射を与えることを「可換」といいますが、その等式には理由が必要です。自然変換なら自然性、積なら射影との関係や一意性が理由になります。Set であれば任意の要素を両経路に通し、出力の一致を示す方法も使えます。図の横に、使った定義や等式を一つずつ添えてください。
抽象化すると計算は不要になりますか
計算は残ります。群準同型かどうか、関手が合成を保つか、提案した対象が普遍性を満たすかは、具体的な確認が必要です。その一方で、積であることを示した後は、積の一意性を対象ごとに最初から証明し直す必要がありません。具体的な確認を済ませた上で一般の定理を使う、という二段階で考えると、抽象化によって何が省けるかが明確になります。
常設展示室で二つの作品の間に見つけた対応を、もう一度思い出してみてください。似ていると感じた理由を、配置、色、視線の動きに分けて言葉にすると、最初より細かく作品を見られます。圏論でも、対象、射、合成、普遍性を区別することで、「同じ構造」という曖昧な印象が、検証できる主張へ変わります。
次にノートを開いたら、合成関数の式の上に始域と終域を書き、積の射影を二本描いてみてください。候補を作ることと、それが一つに決まることを別々に説明できれば、抽象的な定義を自分の計算に結び付けられています。一本の矢印の行き先を正確に言えることから、数学の構造を結ぶ言葉が育ちます。
- 前の回: 数理論理学と計算可能性 証明できないことを証明する
- 次の回: 力学系とカオス 決定論なのに予測できない世界
- 特集「大学数学」全30回の一覧へ
- 数学の個別指導のご案内:武蔵境の数学塾(1 対 1)
- 高校生の指導のご案内:学年別個別指導コース
- 塾への相談・お問い合わせ:お問い合わせ
あわせて読む(数学の地図・高校数学の単元解説)
参考文献
- Samuel Eilenberg, Saunders MacLane(1945)「General Theory of Natural Equivalences」Transactions of the American Mathematical Society. https://doi.org/10.2307/1990284
- F. William Lawvere(1964)「AN ELEMENTARY THEORY OF THE CATEGORY OF SETS」Proceedings of the National Academy of Sciences. https://doi.org/10.1073/pnas.52.6.1506
- Marco Grandis(2018)「Category theory and applications. A textbook for beginners」World Scientific. https://doi.org/10.1142/10737
本気になった日が、入塾の日。
お子様の教育、迷ったら「丸投げ」してください。必ず、期待以上の結果で返します。武蔵野で育む、武蔵境で学ぶ。
電話は年中無休。365日、24時間、お電話可能。




