0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

EpimorphismとMonomorphism

Last updated at Posted at 2020-08-12

Category Theory for Programmersの2.1, 2.2の動画のノート

1.1, 1.2で説明されていた内容

オブジェクトとMorphism

Morphismは矢印
オブジェクトは、Morphismの始まりと終わりを表すもの
オブジェクトやMorphismに構造や属性はなく、原子のようなもの。
idb_f.png

Composition

idb_f.png

aからb, bからcの矢印が存在する時、
aからcへの矢印「g after f」が必ず存在する(。をafterと読む)

Category

オブジェクトと、矢印たちとその合成を定義する。マッピングテーブルのようなもの。

Identity

すべてのオブジェクトに、1つずつ、Identity Arrowが存在する。
Identity Arrowは、常にidと呼ばれる。
どの矢印とIdentity Arrowを合成しても、元の矢印になる。

idb_f.png

Axiom

Left/right identity

矢印の左にあるIdentityをLeft identity
右側にあるIdentityをRight identityという。
この2つは違うもの。
Right identityの例
idb_f.png

Associativity

h 。(g 。f) = (h 。g) 。f

Isomorphism

Functions that are both:

  • Injective
  • Surjective

Isomorphic functions are invertible

definition:

f 。g = id
g 。f = id

In Categorical language
e.g. f is an isomorphism if g exists

idb_f.png

Domain, Codomain, Image, etc

idb_f.png

idb_f.png

image.png

idb_f.png

Epimorphism

SurjectiveはGreekでEpic。
カテゴリーセオリーではEpimorphism。セットセオリーと違って、要素を使って定義することはできない。
なので、Epimorphismを、関数同士の関係のみを使って定義する。

idb_f.png

上の図のように、fがEpimorphismでないとき、bからcへの関数が、fのイメージ外の要素について違う要素にマップする g1, g2として複数存在する余地がある。この場合にも、fのイメージからのマッピングについては同じなのでg1.f = g2.f となる。

\exists\  g_1,g_2,\  g_1 \ne g_2 \implies g1 \circ f = g2 \circ f

fがEpimorphismの場合には、b=fのイメージなので、bからcへの関数が複数存在することは起こりえない。
image.png
なのでbからcへのマッピング g は常に同じになる。これを使って、下のようにfがEpimorphismであることを定義できる。

\forall\  g_1,g_2,\  g1 \circ f = g2 \circ f \implies g_1 = g_2  

Monomorphism

Injectiveは、GreekでMonic。
カテゴリーセオリーではMonomorphism。

ct2-2-2.png

Epimorphismと同じような感じで、オブジェクト群c上のオブジェクトzから、オブジェクト群a上のオブジェクトx1, x2への Morphism g1, g2を定義する。こうすると、f。g1f。g2はどちらも、zyにマップする。この場合に常にg1 = g2なればfは Monomorphism。以下が定義。

\forall g_1,g_2 \quad f \circ g_1 = f \circ g_2 \implies g_1=g_2

動画

Bartosz Milewski / Category Theory 2.1: Functions, epimorphisms
https://www.youtube.com/watch?v=O2lZkr-aAqk

Bartosz Milewski / Category Theory 2.2: Monomorphisms, simple types
https://www.youtube.com/watch?v=NcT7CGPICzo

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?