雑記帳
僕用勉強ノート 「圏論」の巻

圏論とはなんなのか

(圏論シリーズロゴ)
圏論とは
圏と呼ばれる数学的構造の一例
圏論 (category theory) とは、「仕様」ベースに数学理論を組み立てていくツールキットのようなものと考えてよいだろう。
具体的には圏論では、
  • 何らかの特別な性質を持っている対象の存在を認めたとすると、そこからどういった帰結が得られるのか。(ある仕様を満足する対象がどういった帰結を齎すのか)
といったことを調べることになる。
ここで「圏論」という名前がついていることから察しが付くかもしれないが、確かに圏論では「 (category)」と呼ばれる一つの数学的構造を研究のターゲットとして考察していくことになる。
このように漠然と一言「圏と呼ばれる構造の研究」と聞いただけでは、なんだか退屈そうな印象を受けるかもしれないが、実は圏論は非常に奥が深い。
登場し始めた当初は、抽象度の高い数学限定で使用される言語程度の立ち位置であった圏論であったが、研究が進むにつれて圏論は数学全体の基礎理論として応用することすら可能であることも認識されるようになった。
加えて、(1,1)-圏 や (∞,1)-圏の研究は大分進んでいるものの、(2,2)-圏や (∞,2)-圏、そして終着点になるであろう (∞,∞)-圏に関する研究といったような、圏論の中にもまだまだ発展途上にある分野が存在する。
例えば「インザータ」や「Equifier」といった2-極限の概念を上手く使うことで「(1,1)-圏の成す(2,2)-圏」の初等的な公理化ができるのではないかと考えられているが、現状ではまだ不完全な部分が多く、わかっていないことも多い。具体的には、その 2-圏が最低限持つべきプロパティである「集合の圏の存在」は「離散反ファイブレーション (discrete opfibration) の分類対象の存在」として公理化できそうであるという部分はわかっているが、他にどういった公理を組み合わせれば、適切な1-圏のなす2-圏の公理化に繋がるのかはまだはっきりしていない。
因みに 2-極限については以下が参考になる。
余談
「圏」自体が数学的構造の一種であり、普通に考えれば「圏論」というのは「群論」や「環論」などと同じ土俵上に留めさせておくべき何の変哲もない「ある数学的構造を研究する理論の一つ」に過ぎないはずであり、集合論の枠組みを逸脱した先の「圏という構造の応用」は俗に言う「圏論の濫用」と呼ばれる下らない領域の話なのではないのかと思う人が少なからずいることと思う。実際問題として、有名な圏論の教科書である「圏論の基礎 (通称 CWM: Categories for the Working Mathematician)」の付録として「圏の基礎論への応用」ついて触れられている一方、付録であるという都合によるものなのか、どうしても行間の広い駆け足な説明になっており、圏論の初学者が読んだ場合やはりそのような誤解に陥る可能性は大いにあり得るというのが事実としてある。
一つ確かなことは、行間を埋めることができる程度にまで圏論に慣れていない初学者が、解説の上辺を見ただけで正しい理解にまでたどり着くことは極めて困難であるということである。
どうでもいいことだが、圏論は「一般的抽象的ナンセンス (general abstract nonsense)」や「アブストラクト・ナンセンス」などと呼ばれることもある。とはいえ現代において、それは圏論を揶揄する言葉というよりかは、圏論を使用する人自身が使用する自虐や単なるギャグであることが多く、実際この僕のサイトでも時々使用している。
圏論の使用用途
圏の詳しい定義に入る前に、まず圏論に興味を持ってもらえるように「圏論が役立つ場面」を軽く紹介しておく。
集合の概念の客観視
集合を群や環、位相空間などと同列の「数学的構造の一つ」に置くことで、集合の概念を客観視することができるようになる。
例えば圏論においては、「モノイド」は集合の概念を特別視することなく
  • モノイダル圏上のモノイド対象
という形で一般的に定義される。
もちろん従来の集合を使って構成されるモノイドは上の一般形の一例である
  • 集合の圏のカルテシアンモノイダル圏として得られるモノイダル圏の上のモノイド対象
として与えられ、(CWM 2nd Edition [p. 171 - Ⅶ. Monoids §3] / 圏論の基礎において) それは「通常のモノイド (ordinary monoid)」と呼ばれている。(ちなみに「圏論の基礎」では "従来のモノイド" と訳されている。)
ちなみに通常のモノイドは、集合を圏の一種と捉えることで
  • 1-tuply モノイダル (0,0)-圏 (モノイダル構造を持った集合)
  • 単対象の (1,1)-圏 (1-tuply モノイダル (0,0)-圏 の delooping - つまり 0-tuply モノイダル (1,1)-圏)
といった見方もできる。
双対性をフォーマルに捉える
圏論的に数学的概念の定式化をした際、常にその概念の双対概念が機械的に定まる。興味深いのは、よく意味も分かっていないまま得ることができてしまうその双対概念は、しばしば重要な意味を持った概念として意味が見出される。
例えば集合論的な数学において、集合の間の写像に関する「全射と単射」をはじめとした、「意味は大きく異なるのだけど、なんとなく繋がりがありそうな気がする」と感じられるようなペアとなる2つの概念の存在を漠然と感じなかっただろうか。
圏論的な双対性は、そういった漠然と繋がりがありそうと思えるような概念をフォーマルに結びつけることがある。(全射と単射はそれぞれ「集合の圏におけるエピック射」「集合の圏におけるモニック射」といったように与えられる集合の圏に固有の概念であるが、もとになっているエピック射とモニック射というのはまさに圏論的双対性によって結びつけられている概念なのである。)
一方、全く関係がなさそうと思えるような2つの数学的に重要な意味を持った概念が圏論的双対性によって綺麗に結びつけられる場合もあり得る。
双対性のこういった純粋数学的な不可思議さ・美しさだけでも十分に面白いのだが、それに加えて例えば極限の保存を議論する際に「関手が余極限を保存する」というのを「反対圏の間の関手であるその関手の反対が極限を保存する」というように理解するなど、プラクティカルに双対性の概念が活用される場面もある。
自然性のフォーマルな定式化
自然性の概念を厳密に定式化し、使い慣れた集合を用いて様々な数学的構造の研究をできるようにする。
特に hom 集合の間の自然同形は Hom 関手 の話へと繋がり、さらにそこから表現対象や極限の保存に関する議論等が可能になるため非常に強力である。
普遍的構成をフォーマルに取り扱うことを可能にする
イメージ
異なる様々な数学的構造の間に類似する意味を持つような構成法がしばしば存在する。圏論はそういった数学的構造の間に並行して存在し得る特殊な対象の構成の厳密な定義を提供し、同様の構成により得られる対象に与えるラベルを統一したり、圏論的性質の観点から数学的構造をカテゴリ分けすることで、特定のカテゴリに属する全ての数学的構造に共通する非常に汎用性の高い性質を見出したりできるようにする。またこれによって、同じような議論の反復が行われることへの回避が実現することにもなる。
このような見方のうれしさについて、「商集合」や「商線形空間」を例に紹介しておく。
まず、何をもって商集合や商線形空間と呼ぶのかを思い返してみてほしい。
圏論の言葉を回避する場合、それらは単に
  • 各構造毎に別々に与えられる定義に則って構成されているモノ
となるだろう。
しかしながらそれでは統一性がなく、それらの間のつながりが不明瞭である。
わかりやすく言い換えるならば、「商〇〇」と名付けられている以上、それらの間になんらかの共通する "明確な" 意味合いが存在して欲しいわけである。
圏論は、こういった不満を取り除いてくれるような視点を提供してくれる。
この例の場合でいえば、それぞれ「集合の圏における商対象」「線形空間の圏における商対象」というように、それらを同じ文脈において理解することが厳密にできる。
もちろん「同値関係による構成」の部分についても圏論の言葉を使って上手く説明される。
まず圏の形に落とした時に正則圏をなすようなカテゴリに属する数学的構造において、エピック射は正則エピック、つまり「任意の商対象は、コイコライザによって構成できる」ということが一般に云える。さらに、同値関係による商集合の構成はコイコライザとして俯瞰されることになる。
集合と線形空間は共に正則圏をなし、例えば商集合を単に「集合の圏における商対象」と見たとしても、その圏が正則であることから、その商対象がコイコライザにより構成されているという話に繋げていくことが可能となる。
図式追跡の厳密な環境設定
少し発展的な数学の分野を学んでいくと、例えばホモロジー・コホモロジーの計算のような「図式が用いられる場面」に直面することになる。
そういった図式追跡を行うための厳密な環境設定には通常アーベル圏が用いられるのだが、その行間を埋められるだけの圏論的な背景が身についてないと何が起こっているのかが非常にわかりづらい。
数学的構造の計算ツールの基盤
今まで学んできた算数・数学を振り返ってみればわかるかもしれないが、計算結果として求める対象が
「数値 (加減乗除の計算など)」以外にも
  • ベクトル
  • 行列 (慣性テンソルのように、間接的に線形写像を求めている場合もある。)
  • 関数 (微分や不定積分の計算、常微分方程式の特殊解)
  • ベクトル値関数 (Maxwell 方程式の特殊解として得られるような場など)
  • 行列値関数 (Einstein 方程式の特殊解など -- 間接的には、空間を特徴づける非退化双線形形式の場)
などといった感じにバラエティー豊かになっていく。
そして、さらに進んでいくと先ほどの「図式追跡の厳密な環境設定」でも触れたように、「群」や「線形空間」といった数学的構造がここに加わってくる。
  • 群 (基本群の計算)
  • アーベル群 (アーベル群の成すアーベル圏の上で算出されるチェインホモロジー群 / チェインコホモロジー群)
  • 線形空間 (線形空間の成すアーベル圏の上で算出されるチェインホモロジー群 / チェインコホモロジー群)
「群の計算」と漠然といわれてもわかりづらいと思うため、簡単に補足しておく。
まず、「数の計算」にまで戻ってみる。
例えば、自然数同士の足し算「\(1+1\)」というのは、「\((+)\)」という写像が先行して構成される以上、「\(1+1\)」という記号は「\((+)\) に順序対 \(\langle {\rm zero} {\sf \, ⨟ \,} {\rm succ},{\rm zero} {\sf \, ⨟ \,} {\rm succ} \rangle\) を入力して得られる出力」という具体的な一つの自然数としての意味を既に持っている。しかし、その出力がより根源的な概念である「\(0\)\({\rm succ}\) のどういった組み合わせとして実現するのか?」は明らかではない。他の例を挙げると、「\((1234!)!\)」というのも、「階乗 \((!)\) を定義付ける写像」が先行して定義できるため、その記号自体が「自然数対象の一つの大域要素」としての決まったたった一つの形を持つ一方、それが「\(0\)\({\rm succ}\) のどういった合成の形として表現されるのか (或いはどういった10進数表記になるのか)」は明確ではない。そしてそれらを明確にする作業が「数の計算」という作業に該当するだろう。
まとめると、計算とは無関係に数の存在が先行して保証されている上で、計算によってその数の具体的な形を明らかにすることができるといったところだろうか。
「群の計算」も実は似たような作業である。
つまりは、計算とは無関係に群の存在が先行して保証されている上で、計算によってその群の具体的な形を明らかにすることができるといったところである。
もう少し踏み込んでみると、例えば (点付き) 位相空間が与えられれば、その空間のホモトピー群を具体的に構成すること、つまり「その群の存在を示すこと」自体はできる。
しかしながら、「\(\langle \mathbb{Z}, (+) \rangle\) のような群としての構造が明らかなより根源的な群の内、その構成されるホモトピー群がどの単純な群と同じ構造を持っているのか?」というのは構成しただけではまだ不明瞭である。そしてそれを明確にする作業が「群の計算」という作業に該当するだろう。
一つ注意しなければいけないのは、数学的構造を計算する上で「構造として本質的に同じであるもの」を同一のモノとして扱うことが要求されている点である。
  • 「1+1」と「2」は自然数対象の要素として「等しい」
  • \(\pi_1 (S^1,x_0)\)」と「\(\langle \mathbb{Z}, (+) \rangle\)」は、群として (群全体のなす空間の対象として) 「等しい」
前者の「等しい」は従来の物質的集合論が標準的に持つ「等しい」の概念と同様である一方、後者の「等しい」との間には乖離が存在する。
そして圏論はこの問題に上手く対応した「数学的構造の計算ツール」を提供してくれる。
抽象的な構造の定式化
位相空間のその先に進んでいくと
  • 位相空間Xの開部分集合とその間の入射のなす圏 Open(X)
  • フレーム Open(X) と対応するロケール (locale)
  • 圏 Open(X) の上の前層
  • 圏 Open(X) に適当な Grothendieck 位相を付加構造として与えて得られる景 (site)
  • 景の上の層
  • 景の上の層のなす Grothendieck トポス
  • 滑らかなトポス (smooth topos)
  • 滑らかな所在地 (smooth locus)
といった感じに様々な構造が待っているが、そういった抽象的な構造を考えていくうえで圏の使用は最早避けることができなくなってくる。
一応それらの定義が気になる人向けに、幾つかのリンクを以下に貼っておく。
余談
Locus を「軌跡」ではなく「所在地」と訳した理由について補足しておく。
従来の集合論的な立場からは、「図形」或いは「空間」というのは「点の集まり」として理解されているため、Locus を「軌跡」と訳しても違和感はないのだが、圏論の立場からとなると話が変わってくる。
圏論の立場から見る場合、「点」よりもその「点が所在する場所」が先行して与えられているという見方が出来てしまうのである。より具体的には「点への言及なしに、空間それ自体を定義づけること」が圏論的には可能なのである。例えばロケールという種類の空間の中には「点を持たない非自明な空間」なんてものも存在する。そしてそうなってしまうと、「点の軌跡」というように「先行する点の概念」を彷彿させかねない訳し方をそのまま採用するのは果たして適切と云えるのだろうかという疑念がどうしても拭えない。その理由から Locus に「所在地」という日本語訳を勝手に与えている。
構造が付随するべきものを明確にする
圏論的に物事を捉えることによって、考察のターゲットとしている対象のあるべき形が明確になる。
例えば、「部分集合」が挙げられる。従来の集合論的な立場からは、部分集合というものに一意的な親となる集合の情報は加わってこない。このことは例えば「補部分集合 (complement)」や「空な族の共通部分」を考える際に問題になる。
一方で、圏論的な立場からは、部分集合というものは集合の圏における部分対象として与えられ、部分集合といえば必ず親となる集合の存在が伴う。つまりその手の問題は一切起こらなくなる。
(..)
「部分集合を集めたもの」というのは、トポスという良い性質を持つ圏においては「冪対象」というように同じ圏の対象として扱うことができるが、一般にはそのようなことはできない。加えて、排中律を認めない場合、真理値対象が集合の圏を構成する際に用いた宇宙と同じ階層の宇宙に存在することを一般に示せない (集合の圏がトポスにならない) ため、冪集合の直接の使用は難しくなる。とはいえ考察している数学的構造を取り扱う枠組みである圏の外部に、「\(X\) の部分対象のなす圏 Sub(X)」 (その圏のコアである \(X\) の部分対象全体の空間に該当する亜群は依存対型として簡単に構成できる) といった形で部分対象を取り扱う作業場を作ることは可能。
さらに、Sub(X) は圏であることからわかるように、その圏における極限の考察が可能である。
これは先ほどの「空な族の共通部分」の話ともうまく繋がる。
まず「集合の合併や共通部分」というのは都合の良いことにそれぞれ「圏 Sub(X) における圏論的和 (余積) と圏論的積 (積)」になっている。
またこの流れから「空な族の合併」と「空な族の共通部分」は、それぞれその圏の「始対象」と「終対象」ということになる。
型理論を意味論的な側面から考える
(..)
多項式を始めとする従来の枠組みからはフォーマルに定義することが困難な概念に対する厳密な定義の提供
例えば圏論の言葉を使えば多項式は曖昧な記号 (文字式) ではなく以下のようにフォーマルに定義できる。
\(U:\mathbf{CommAlg}_R\rightarrow \mathbf{Set}\) を忘却関手,
\(F:\mathbf{Set}\rightarrow \mathbf{CommAlg}_R\) を自由関手,
\((-)^n:\mathbf{Set}\rightarrow \mathbf{Set}\) を 集合 \(X\) から \(X\)\(n\) 個のコピー全ての圏論的積として得られる集合を構成する関手 (例えば \((-)^3\) は、\(\Delta{\sf \, ⨟ \,} (\Delta\times\mathbf{Set}){\sf \, ⨟ \,} ((\times)_{\mathbf{Set}}\times\mathbf{Set}){\sf \, ⨟ \,} (\times)_{\mathbf{Set}})\),
\([n]\) を濃度が \(n\) の任意の集合 (例えば \(\mathbf{Set}\) の持つ終対象の \(n\) 個のコピー全ての圏論的和など)
とする。
この時、
「集合 \([n]\) から生成される自由対象 \(F([n])\) として定義される多項式環 \(R[x_1,...,x_n] := F([n])\) の基底集合 \(U(R[x_1,...,x_n])\) の要素」
のことを「多項式 (polynomial)」と定義できる。(これだけで終わってしまうのであれば意味がないと思うかもしれないが、関手の表現対象に関する議論を経た先で米田の補題が多項式 (その多項式環 \(R[x_1,...,x_n]\) の基底集合の要素) とその多項式に固有な「definable n項演算 \((U{\sf \, ⨟ \,} (-)^n)\Rightarrow U\)」(自然変換)とを結びつける。)
数学基礎 (foundations for mathematics) の一つとして活用する
圏論は、数学の基礎として使用することもできる。
例えば、ソーンダース・マックレーン (Saunders Mac Lane) の著書「圏論の基礎」にも掲載されている ETCS (集合の圏の初等理論) は比較的有名だろう。
詳しいことは以下の記事に纏めているので、参考までに。
圏論初学者が陥りがちな典型的な誤解
圏論では具体的な構成ができない
圏論をわかりきっている人たちは、「カノニカルな写像」という魔法の言葉を用いることで、しばしば写像の具体的な構成を伏せた状態のまま写像を持ち出すことがある。
例えば、
\(i:(A\times B) \times C \rightarrow A\times (B \times C)\) を以下の自然な同形を定めるカノニカルな写像とする。
\[ (A\times B) \times C \cong A\times (B \times C) \]
といった感じである。
一方で、初学者はこういった場面に遭遇した時、「その写像の具体的な構成が与えられていないということは、そもそも理論的にそれを構成することはできない」という誤解に陥る場合がある。
実際のところ、例えば
をざっと眺めてみればわかるが、圏論ではかなり細かい構成ができる。
圏論は基礎論を無視したガバガバ理論
圏論は従来の集合論の枠組みを逸脱するという特徴があり、ZFC を数学基礎に考えてきた人から「圏論はフォーマルな基礎の上に打ち立てることができないガバガバ理論」という印象を持たれたとしても不思議ではない。
結果から言うと、圏論を厳密に展開していくためには「ホモトピー型理論 (HoTT: Homotopy Type Theory)」を集合論の代わりに基礎として使用する必要がある。
というのも、圏論を実践的に展開していくうえで、宇宙 (Universe) の存在は欠かせない。
一方で「集合 (0-型) を要素に持つ空間」が再び「集合 (0-型)」であるとした場合、そもそも集合という概念は
  • それが持つ要素の間の「同じ (sameness)」の概念が「Equality」で評価される空間
であり、
  • 「同じ (sameness)」の概念が「Isomorphic (同形)」で評価されるべき空間である「集合 (0-型)」が「Equality」によって評価される
というあってはならない状況に陥ってしまう。
即ち「宇宙」を集合として定義することはマズイということである。
因みに、類 (class) の概念を使って集合全体の "集まり" を定式化したとしても、それは結局一時しのぎにしかならない。
一方ホモトピー型理論は、「無限亜群」という概念を根源要素として導入することによって、こういった不都合を起こすことなく宇宙の概念を自然に取り扱うことができるようになる。
例えば、まず適当な宇宙を無限亜群 \(U\) として与えた上で、「\(U\) 内の n-亜群全体の空間」を構成してみると
  • \(U\) 内の集合 (0-型) 全体の空間は、亜群 (1-型)
  • \(U\) 内の亜群 (1-型) 全体の空間は、2-亜群 (2-型)
  • \(U\) 内の2-亜群 (2-型) 全体の空間は、3-亜群 (3-型)
  • \(U\) 内の3-亜群 (3-型) 全体の空間は、4-亜群 (4-型)
というようにその全体の空間が自動的に「要素を適切な Sameness によって評価する空間」として構成されることになる。
(..)
圏論的な基礎論は明らかな循環論法
従来の集合論的なアプローチと純粋圏論的なアプローチの間にはしばしば大きな違いがあり、その辺の区別をしっかりしないまま一方の考え方を他方に無造作に当てはめてしまうと、そういった誤解に陥る可能性がある。典型的なのは、「圏の定義に集合が必要なので、圏を使った集合の定義なんて明らかに話が循環しているし、その程度の単純なことにすら気付くことができないなんてどうかしてる」といった類いの誤解である。
他にも、「非交和に用いる2つの集合は、それぞれ集合の和をとる直前に区別用のインデックスが添えられた別の集合へと変化させられているはずなのに、それらを区別せずに同一の記号で表しているのはおかしい」という誤解などがある。
仕様ベースの数学と従来の実装ベースの数学
(..)
圏論の世界に踏み入る前に...
これから圏論の世界に踏み入っていくわけであるが、ここでは
  • 圏を一階述語論理という言語を使って公理的に定義し、圏という構造を個別に考察していくことで、圏論の基礎の基礎を身に着ける。
  • ∞-亜群の成す(∞,1)-圏の公理化として捉えられるホモトピー型理論を基礎に採用し、その弱い数学基礎の上で圏を定義し、個別な圏の扱いだけに限定されない実践的な圏論を展開していく。
という2つのステップを踏む。
ちょっと圏論をかじっている人であれば、まず「圏・関手・自然変換」が定義されて、かの有名な「米田の補題」が早々と登場することを期待するかもしれないが、残念ながら一つ目の段階では「公理的に定義された圏同士の間のやり取りが難しく、個別の考察をすることがせいぜい」という理由から、「圏の間の関手」を扱うことは考えない。
それについては、ホモトピー型理論を導入し、圏という構造を理論の根源要素である ∞-亜群と(∞,0)-関手と呼ばれるものを使って「構成」できるようになる後半のパートに入ってから行われる。
タグ: 数学 圏論