関手
関手(函手)(かんしゅ、functor)
圏の構造を保つ射
圏同士をつなぐもの
圏から圏への対応付け
対象の集合から別の対象の集合
射の集合から別の射の集合
圏と圏の間の準同型
圏から圏への射
より抽象的?な視点に立って、圏から圏への矢印(関手)を眺めてみると圏から圏への射に見える
関手である条件
恒等射の保存
恒等射を保つ
合成の保存
射は合成ができる
射は結合律を満たす
推移律は合成のようなもの?
関連: 同値関係
圏と同値関係
定義
圏$ \bm{C},\ \bm{D} の対応、関手$ F: \bm{C} \to \bm{D} すなわち
対象の対応$ F_0: Obj(\bm{C}) \to Obj(\bm{D}) と
射の対応$ F_1: Mor(\bm{C}) \to Mor(\bm{D}) を考える。
関手による対象の対応付け
関手$ F: \bm{C} \rightarrow \bm{D} によって$ a \in Obj(\bm{C}) が対応付けられる圏$ \bm{D} の対象を$ F\ a \quad ( \in Obj(\bm{D})) と表す。
対象の対応を$ F_0: a \to F\ a と表す。
たぶんあっているはず。
code:mermaid
flowchart LR
subgraph C
direction LR
a --> |f|b
end
C-->|F|D
subgraph D
direction LR
fa"F a"-->|"F f"|fb"F b"
end
関手による射の対応付け
関手$ F: \bm{C} \rightarrow \bm{D} によって圏$ \bm{C} の射$ f が対応付けられる圏$ \bm{D} の射を$ F\ f と表す。
圏 $ \bm{C} における射の集合$ \bm{C}(a,b) から
圏$ \bm{D} における射の集合$ \bm{D}(F \ a,F \ b) への
$ F_1:\bm{C}(a,b) \to \bm{D}(F \ a,F \ b) と表す。
次の条件を満たすとき、$ F は関手である。
1. (恒等射の保存) $ F \ \mathrm{id}_a = \mathrm{id}_{F \ a}
$ \mathrm{id} : 恒等射(identity)
読み方: 対象$ a の恒等射に関手$ F で写したものと、対象$ a を関手$ F で写したものの恒等射は等しい
code:mermaid
flowchart LR
subgraph C
direction LR
a-->|id_a|a
end
C-->|F|D
subgraph D
direction LR
fa"F a"-->|"id_F a"|fa
end
2. (合成の保存) $ F \ (f \ggg g)=F \ f \ggg F \ g
$ \ggg は合成の演算子
読み方: 射$ f, g を合成してから関手$ F で写したものと、関手$ F で写したものを合成した結果は等しい
$ F \ (f \circ g)=F(f) \circ F(g) という書き方でも良さそう。
関手の例
大小関係を保存する関手
対角関手
集合の積
集合の和
いろいろな関手
自己関手
恒等関手
忠実関手
充満関手
随伴関手
共変関手、反変関手
忘却関手
加法的関手
完全関手
表現可能関手
ホモロジー関手
多項式関手
前層$ F : \mathcal{C}^{op} \to \mathbf{Set}
HaskellではFunctorクラス?
確認用
Q. 関手
Q. 圏の構造を保つとは
Q. 対象の対応
Q. 射の対応
Q. 関手の定義
Q. 関手の例
Q. 同型射
関連
自然変換
準同型
Hom関手
代数と余代数
関数
ap
参考
圏・関手・自然変換 ~ベーシック圏論をゆるく読む会の記録2018~ - Corollaryは必然に。
もう諦めない圏論入門―圏と関手― - Qiita
関手 - Wikipedia
『圏と関手』
https://youtu.be/y4RFWNzEezk
https://youtu.be/I6HxnynPkSA
https://www.youtube.com/watch?v=8ycVEcgH4bI
忘却関手
【圏論】関手入門1: 関手の定義と例【初心者向け】 - YouTube
第3回「ベーシック圏論」定義1.2.1(関手の定義)演習問題1.2.20(関手の例) - YouTube
メモ
圏と関手の基本
圏論初心者が関手に入門し、Scalaで実装した話 - MicroAd Developers Blog
圏論から見るHaskellのFunctor | Mathlog
Functorが意味を捉える - YouTube
第3回「ベーシック圏論」定義1.2.1(関手の定義)演習問題1.2.20(関手の例) - YouTube
#圏論