ksprsk.me 뻘글쓰고 덕질하는곳(진짜임)

object-is-morphism 범주론 1 - Category, Functor, Natural transformation, Comma category

작성기간: 2026-06-23 ~ 2026-06-28

범주론 기초를 공부하다 만든 구조가 꽤 예뻐서, 이를 바탕으로 범주론을 정리해보려 한다.

note인 이상, 누구를 위한 설명글보다는 나 스스로 정리하는것에 가깝다.


1. Category

Category $\mathcal{C}$는 다음과 같이 정의한다.

Category $\mathcal{C}$은 다음으로 구성되어있다:

  • $\mathcal{C} := (\operatorname{Mor}(\mathcal{C}), \operatorname{Ob}(\mathcal{C}), \operatorname{dom}_\mathcal{C}, \operatorname{cod}_\mathcal{C}, \circ_\mathcal{C})$
    • 문맥이 분명할때는 $\mathcal{C}$를 생략하자.
  • $\operatorname{Ob} \subseteq \operatorname{Mor}$
  • $(\operatorname{dom}, \operatorname{cod}): \operatorname{Mor} \to \operatorname{Ob} \times \operatorname{Ob}$
    • $\operatorname{id}_{\operatorname{Ob}} = \operatorname{dom}\vert_{\operatorname{Ob}} = \operatorname{cod}\vert_{\operatorname{Ob}}$
  • $D := \lbrace (g, f): \operatorname{dom} (g) = \operatorname{cod}(f) \rbrace$
  • $\circ: D \to \operatorname{Mor}$

여기까지가 구성요소고, 이후엔 얼추 2가지 방식으로 나타내볼 수 있다.

그리고 아래 조건을 만족한다.

For any $f, g, h \in \operatorname{Mor}$,

  • Identity law
    • $f \circ \operatorname{dom}(f) = f$
    • $\operatorname{cod}(f) \circ f = f$
  • Endpoint law ($\operatorname{dom}(g) = \operatorname{cod}(f)$)
    • $\operatorname{dom}(g \circ f) = \operatorname{dom}(f)$
    • $\operatorname{cod}(g \circ f) = \operatorname{cod}(g)$
  • Associative law ($\operatorname{dom}(h) = \operatorname{cod}(g), \operatorname{dom}(g) = \operatorname{cod}(f)$)
    • $(h \circ g) \circ f = h \circ (g \circ f)$

아래와 같이 써볼수도 있다.

  • For $a, b, c \in \operatorname{Ob}$,
    • $\operatorname{Hom}(a, b) := \lbrace f \in \operatorname{Mor}: \operatorname{dom}(f) = a, \operatorname{cod}(f) = b \rbrace$
    • $\circ_{a, b, c}: \operatorname{Hom}(b, c) \times \operatorname{Hom}(a, b) \to \operatorname{Hom}(a, c)$
      • $\circ_{a, b, c} = \circ\vert_{\operatorname{Hom}(b, c) \times \operatorname{Hom}(a, b)}$

그리고, 아래 조건을 만족한다.

For any $a, b \in \operatorname{Ob}$ and any $f, g, h \in \operatorname{Mor}$,

  • Identity law ($f \in \operatorname{Hom}(a, b)$)
    • $f \circ a = f$
    • $b \circ f = f$
  • Associative law ($\operatorname{dom}(h) = \operatorname{cod}(g), \operatorname{dom}(g) = \operatorname{cod}(f)$)
    • $(h \circ g) \circ f = h \circ (g \circ f)$

딱히 기호가 충돌하지도 않고 같은 내용이니, 둘 다 이해하도록 하자.

위 내용을 좀 더 풀어써보자.

Category $\mathcal{C}$는 다음으로 구성되어있다.

\(\mathcal{C} := (\operatorname{Mor}(\mathcal{C}), \operatorname{Ob}(\mathcal{C}), \operatorname{dom}\_\mathcal{C}, \operatorname{cod}\_\mathcal{C}, \circ\_\mathcal{C})\)

  • $\operatorname{Mor}(\mathcal{C}), \operatorname{Ob}(\mathcal{C})$ are collection
  • $(\operatorname{dom}_\mathcal{C}, \operatorname{cod}_\mathcal{C}): \operatorname{Mor}(\mathcal{C}) \to \operatorname{Ob}(\mathcal{C}) \times \operatorname{Ob}(\mathcal{C})$
  • $\circ_\mathcal{C} : D \to \operatorname{Mor}$
    • $D := \lbrace (g, f): \operatorname{dom}_\mathcal{C}(g) = \operatorname{cod}_\mathcal{C}(f)\rbrace \subseteq \operatorname{Mor}(\mathcal{C}) \times \operatorname{Mor}(\mathcal{C})$

기수 관련 issue는 $\operatorname{Mor}(\mathcal{C}), \operatorname{Ob}(\mathcal{C})$ 을 collection으로 정의함으로써 처리한다.

내 스타일상 선택에 의존하는 논리는 가능한 피하기도 하고, 하더라도 사용할때마다 꽤 예민하게 확인

또한 앞으로, 문맥이 분명할때는 $\mathcal{C}$를 생략한다.

  • $\operatorname{Mor}$ is collection of morphisms
    • $f \in \operatorname{Mor}$ 을 morphism이라 한다.
  • $\operatorname{Ob} \subseteq \operatorname{Mor}$ is collection of objects
    • $a \in \operatorname{Ob}$ 을 object라 한다.
  • $\operatorname{Ob} \subseteq \operatorname{Mor}$

그리고 $\operatorname{Ob} \subseteq \operatorname{Mor}$에서 볼 수 있듯이, object는 morphism이다.

기존 category에서는 object와 identity의 역할을 통합한 것으로 이해하면 된다.

  • $(\operatorname{dom},\operatorname{cod}): \operatorname{Mor} \to \operatorname{Ob} \times \operatorname{Ob}$은 morphism을 object으로 보내는 map들이다.
    • $\operatorname{id}_{\operatorname{Ob}} = \operatorname{dom}\vert_{\operatorname{Ob}} = \operatorname{cod}\vert_{\operatorname{Ob}}$
    • morphism $f \in \operatorname{Mor}$에 대해,
      • $\operatorname{dom}(f)$을 $f$의 domain이라 한다.
      • $\operatorname{cod}(f)$을 $f$의 codomain이라 한다.
      • $f:\operatorname{dom}(f) \to \operatorname{cod}(f)$와 같이 쓸 수 있다.
    • morphism $f:a \to b$로 표기하곤 하며, 이는 다음을 말한다
      • $\operatorname{dom}(f) = a$
      • $\operatorname{cod}(f) = b$

여기서 잊지 말아야할 점은, $f:a \to b$에서 $a$, $b$ 또한 morhpism이라는 사실이다.

$\operatorname{dom},\operatorname{cod}$는 $\operatorname{Ob}$로 제한시 항등이기 때문에, object $a \in \operatorname{Ob}$ 에 대해

\[\operatorname{dom}(a) = \operatorname{cod}(a) = a\]

이며 사상으로써 $a: a \to a$ 와 같이 적어볼 수 있겠다.

  • $\operatorname{Hom}(a, b) := \lbrace f \in \operatorname{Mor}: \operatorname{dom}(f) = a, \operatorname{cod}(f) = b \rbrace$
    • domain은 $a$, codomain은 $b$인 morphism들의 collection이다.
    • For $f \in \operatorname{Mor}$에 대해, $f \in \operatorname{Hom}(\operatorname{dom}(f), \operatorname{cod}(f))$

기본적으로 $f:a \to b$에 대해 $f \in \operatorname{Hom}(a, b)$이며,

Object $a \in \operatorname{Ob}$는 $a \in \operatorname{Hom}(a, a)$,

즉 스스로에서 스스로로 가는 morphism이다.

Endpoint law

  • For $f, g \in \operatorname{Mor}$ and $\operatorname{dom}(g) = \operatorname{cod}(f)$
    • $\operatorname{dom}(g \circ f) = \operatorname{dom}(f)$
    • $\operatorname{cod}(g \circ f) = \operatorname{cod}(g)$

Equivantly,

  • For $f \in \operatorname{Hom}_{\mathcal{C}}(a,b), g \in \operatorname{Hom}_{\mathcal{C}}(b,c)$
    • $g \circ f \in \operatorname{Hom}_{\mathcal{C}}(a,c)$

$g \circ f$는 composite of $f$ and $g$이라 한다.

Endpoint law의 경우 명시적으로 식을 통해 고정할 수도 있고, $\circ$ 를 $\operatorname{Hom}$ 통해 정의하여 통제할수도 있다.

nlab에서는 이를 category의 2가지 정의 방식으로써 소개하며, 두 서술은 동등하다.

정의상, composition은 $\operatorname{dom}(g) \neq \operatorname{cod}(f)$ 이면 $g \circ f$ 자체가 올바르게 정의되지 않기 때문에,

$\operatorname{dom}(g) = \operatorname{cod}(f)$를 $g \circ f$가 올바르게 정의된다는 사실과 동치이다.

즉, 다음과 같은 서술이 가능하겠다:

  • For $f, g \in \operatorname{Mor}$ when $g \circ f$ exists
    • $\operatorname{dom}(g \circ f) = \operatorname{dom}(f)$
    • $\operatorname{cod}(g \circ f) = \operatorname{cod}(g)$

전자보다는 후자와 같은 서술이 훨씬 직관적이기에 앞으로도 자주 쓰게 될것이다.

Identity law

  • For any $f \in \operatorname{Mor}$
    • $f \circ \operatorname{dom}(f) = f$
    • $\operatorname{cod}(f) \circ f = f$

Equivantly,

  • For $f \in \operatorname{Hom}(a, b)$
    • $f \circ a = f$
    • $b \circ f = f$

즉, morphism에 domain과 codomain을 composite하면 스스로이다.

이는 object가 identity와 같은 성질을 가짐을 보장해준다.

Associative law

  • For $f, g, h \in \operatorname{Mor}$ when $g \circ f, h \circ g$ exists
    • $(h \circ g) \circ f = h \circ (g \circ f)$

말 그대로 결합법칙이다.

이로써 Category $\mathcal{C}$는 적당히 다음과 같이 정의해볼 수 있겠다.

\(\mathcal{C} := (\operatorname{Mor}, \operatorname{Ob}, \operatorname{dom}, \operatorname{cod}, \circ)\)

  • $\operatorname{Mor}, \operatorname{Ob}$ are collection
    • $\operatorname{Ob} \subseteq \operatorname{Mor}$
  • $(\operatorname{dom}, \operatorname{cod}): \operatorname{Mor} \to \operatorname{Ob} \times \operatorname{Ob}$
    • $\operatorname{id}_{\operatorname{Ob}} = \operatorname{dom}_\mathcal{C}\vert_{\operatorname{Ob}} = \operatorname{cod}\vert_{\operatorname{Ob}}$
  • $\circ : D \to \operatorname{Mor}$
    • $D := \lbrace (g, f): \operatorname{dom}(g) = \operatorname{cod}(f)\rbrace \subseteq \operatorname{Mor} \times \operatorname{Mor}$
  • 위와 같은 구성이 Identity law, Endpoint law, Associative law 만족

개인적으로 아래 두 식,

  • $\operatorname{Ob} \subseteq \operatorname{Mor}$
  • $\operatorname{id}_{\operatorname{Ob}} = \operatorname{dom}_\mathcal{C}\vert_{\operatorname{Ob}} = \operatorname{cod}\vert_{\operatorname{Ob}}$

은 공리보다는 구조에 가깝다 느꼈기에, 딱히 대응되는 이름을 붙이진 않았다.

해당 2 식은 composition과 엮여있지 않지만, 다른 3개 규칙은 엮여있는것도 다른 이유였다.

예제.

그럼 이제 Category $\text{Set}$을 우리의 틀 하에서 정의해보도록 하자.

  • morphism(function) $f := (\Gamma_f, X, Y)$
    • $\Gamma_f$는 $f: X \to Y$의 function graph
    • $X$, $Y$는 $f$의 함수로써 domain, codomain이다.
  • object(set) $X := (\Gamma_{\operatorname{id}_X}; X, X)$
    • $X$에서의 항등함수로 이해될 수 있겠다.
  • $\operatorname{dom}(f) := (\Gamma_{\operatorname{id}_X}, X, X)$
  • $\operatorname{cod}(f) := (\Gamma_{\operatorname{id}_Y}, Y, Y)$
  • morphism $f = (\Gamma_f, X, Y), g = (\Gamma_g, Y, Z)$에 대하여
    $g \circ f := (\Gamma_{g \circ f}, X, Z)$

범주를 만들때는 얼추 아래 순서가 편했던것 같다.

  • morphism을 만들고, 이에 포함되는 object를 만든다
  • object에 대해서 항등이 되는, (dom, cod)를 만든다.
  • law(Identity, Endpoint, Associative)을 만족하는 composition을 만든다.

일단 $\text{Set}$의 경우에 대해서는 간단하니 law들을 모두 체크해보지는 말자.

Object/morphism의 대응엔 약간 기존보다는 귀찮아진 면이 있긴 하다만, 포함됨으로써 깔끔해지는 부분들이 있다.

예를 들어, identity law는 다음과 같이 서술가능하다.

For $f = (\Gamma_f; X, Y)$

  • $f = Y \circ f = f \circ X$

앞으로 이런 식의 표기에 익숙해지도록 하자. 꽤 많은게 간단해진다.

마무리 겸, 하나만 더 정의하고 가자.

Category $\mathcal{C}$에서

  • For any object $a$, $b$에 대해 $\operatorname{Hom}_\mathcal{C}(a,b)$ 가 Set이면
    locally small category라고 한다.
  • $\operatorname{Mor}(\mathcal{C})$ 까지 set이면 small category라 한다.

위의 $\text{Set}$의 경우는 small은 아니지만 locally small이라 할수 있겠다.


2. isomorphism

Category $\mathcal{C}$의 object $a$, $b$에 대해,

$f: a \to b$가 isomorphism이라 함은, 어느 $g: b \to a$가 존재하여

  • $f \circ g = b, g \circ f = a$

을 만족함을 의미하며, $f^{-1}:=g$를 inverse morphism이라 한다.

$\operatorname{Iso}_\mathcal{C}(a,b)$은 $\operatorname{Hom}_\mathcal{C}(a,b)$중 isomorphism 들의 collection이다.

식이 아주아주 조금 예뻐졌다.

inverse morphism의 유일성 증명도 한번 새 형식화 하에 해보자.

proof.

Object $a$, $b$ 와 morphism $f \in \operatorname{Hom}_{\mathcal{C}}(a,b)$, $g, h \in \operatorname{Hom}_{\mathcal{C}}(b,a)$ 에 대하여

\[\begin{align*} f \circ g = b, \qquad g \circ f = a \\ f \circ h = b, \qquad h \circ f = a \end{align*}\]

라고 하면

\[g = g \circ b = g \circ (f \circ h) = (g \circ f) \circ h = a \circ h = h\]

$\operatorname{Hom}_\mathcal{C}(a,b)$애 isomorphism이 존재할때,

  • $a$와 $b$는 $\mathcal{C}$에서 isomorphic하다고 하며 $a \cong b$로 쓴다.
  • 그러한 isomorphism 자체가 유일할때, $a$와 $b$가 $\mathcal{C}$에서 uniquely isomorphic하다고 한다.

Lemma도 이어서 증명해보자.

Lemma 1

Category $\mathcal{C}$의 object $a$, $b$에 대해, $f: a \to b$가 isomorphism이라 하자.

object $x$에 대해,

  • $\operatorname{Hom}_{\mathcal{C}}(x,a) \cong \operatorname{Hom}_{\mathcal{C}}(x,b)$
  • $\operatorname{Hom}_{\mathcal{C}}(a,x) \cong \operatorname{Hom}_{\mathcal{C}}(b,x)$

이다. 이때 $\cong$는 두 collection간의 bijection이 있음을 의미한다.

proof.

$u: x \to a$, $v: x \to b$에 대해

\[\Phi(u)=f\circ u, \Psi(v)=f^{-1}\circ v\]

로 정의하면,

\[\Psi(\Phi(u)) = f^{-1} \circ f \circ u = a \circ u = u\] \[\Phi(\Psi(v)) = f \circ f^{-1} \circ v = b \circ v = v\]

따라서 두 collection간, 서로를 만드는 bijection이 존재한다.

2번째의 경우도 증명은 사실상 같다.

이 때문에, 두 동형인 원소가 있으면 본질적으로(?) 같은 대상으로써 다룰 수 있게 된다.

$a \cong b$라면 $b$에 관한 이야기를 $a$를 통해 모두 할 수 있으니, 대표원만 보듯이 $a$만 가지고 다룰수 있는거다.
결국 우리가 아는 동형의 개념과 같다.

그래서 보통 무언가 조건을 만족하는 대상이 서로 isomorphic임을 보이고,
’~ is unique up to isomorphic’과 같이 이야기하곤 한다.


3. retraction, section

이번엔 한쪽만 가능한 경우를 논해보자.

Category $\mathcal{C}$의 object $a$, $b$에 대해,

$s: a \to b$, $r: b \to a$가 존재하여

\[r \circ s = a\]

라면 $r$를 retraction, $s$를 section이라 한다.

여기서도 결국 중요한 부분은 다음 사실들이다.

Lemma 2

Category $\mathcal{C}$의 $s: a \to b$, $r: b \to a$에 대하여

$r \circ s = a$ 을 만족한다.

object $x$에 대해,

  • For any $f: x \to a$, $r \circ \bar f = f$인 $\bar f: x \to b$가 존재한다.
  • For any $g: a \to x$, $\bar g \circ s = g$인 $\bar g: b \to x$가 존재한다.

isomorphism과 다르게 존재성은 보장되되 유일성은 보장되지 않는다.

여기서 중요한 부분은, $b$의 사상들을 통해 $a$의 모든 사상을 그대로 만들어낼 수 있다는 것이다.


4. initial object, terminal object

Category $\mathcal{C}$의 object $i$, $t$에 대해,

임의의 object $x$에 대하여

  • $\exists! f: i \to x$이면, $i$를 initial object라고 한다.
  • $\exists! f: x \to t$이면, $t$를 terminal object라고 한다.

모든 object에게 morphism이 하나씩 있거나, 하나씩 들어온다는 이야기다.
하나씩 있다는 사실만으론, 이게 왜 이름까지 붙을만한건지 감이 잡히지 않을 수 있다.

Lemma 3

Category $\mathcal{C}$의 initial/terminal object는 존재한다면 unique up to unique isomorphism.

proof.

$i$, $i’$ 이 initial object라 하자.

$f: i \to i’$, $g: i’ \to i$ 가 유일하게 존재하며,

$(g \circ f): i \to i$, $(f \circ g): i’ \to i’$ 이다.

그런데 initial object의 경우 스스로에게 가는 사상이 스스로로 유일하다. 즉,

\[g \circ f = i, \qquad f \circ g = i'\]

이며, $i \cong i’$는 uniquely isomorphic이다.

terminal object에 관해서도 증명은 같다.


5. Functor

여기서 꽤 깔끔한 정의가 나온다.

Category $\mathcal{C}$, $\mathcal{D}$에 대하여,

Functor $F: \mathcal{C} \to \mathcal{D}$는 다음 triple $(F; \mathcal{C}, \mathcal{D})$

  • $F: \operatorname{Mor}(\mathcal{C}) \to \operatorname{Mor}(\mathcal{D})$
  • For any $f \in \operatorname{Mor}(\mathcal{C})$,
    • $F(\operatorname{dom}_\mathcal{C}(f)) = \operatorname{dom}_\mathcal{D}(F(f))$
    • $F(\operatorname{cod}_\mathcal{C}(f)) = \operatorname{cod}_\mathcal{D}(F(f))$
  • For $f, g \in \operatorname{Mor}(\mathcal{C})$ when $g \circ f$ exists,
    • $F(g \circ f) = F(g) \circ F(f)$

관찰

Category $\mathcal{C}$, $\mathcal{D}$, Functor $F: \mathcal{C} \to \mathcal{D}$에 대해

For any $a \in \operatorname{Ob}(\mathcal{C})$, $F(a) \in \operatorname{Ob}(\mathcal{D})$

proof.

$F(a) = F(\operatorname{dom}_\mathcal{C}(a)) = \operatorname{dom}_\mathcal{D}(F(a)) \in \operatorname{Ob}(\mathcal{D})$

$\square$

결국 Functor이 Category간 구조를 보존하는 준동형사상이라는 부분이 상당히 깔끔하게 드러난다.

Object가 Object로 가게 되는것도 그저 거기서 따라나오는 성질일 뿐이다.

Functor $F: \mathcal{C} \to \mathcal{D}$에 대해

  • $F_0 : \operatorname{Ob}(\mathcal{C}) \to \operatorname{Ob}(\mathcal{D})$
    • $F_0 := F\vert_{\operatorname{Ob}(\mathcal{C})}$

때문에 우리는 위와같은 map 또한 정의할 수 있다.

또한, Category $\mathcal{C}$ 또한 다음과 같은 functor로써 이해될 수 있다.

\[1_\mathcal{C}:= (\operatorname{id}_{\operatorname{Mor}(\mathcal{C})}, \mathcal{C}, \mathcal{C})\]

명확히하면, 특정 상황($\text{Cat}$ 맥락)에서 한한것이 아니다.

물론 같은 것은 아니고(정의가 재귀가 되므로), $1_\mathcal{C}$가 들어갈 곳에 $\mathcal{C}$를 두는 convention이다.

때문에 다음과 같은 표기도 가능해진다.

\[\mathcal{C}_0 = \operatorname{id}_{\operatorname{Ob}(\mathcal{C})}\]

object in morphism과 마찬가지로, 이걸로 상당히 많은게 깔끔해진다.

Category $\mathcal{C}$, $\mathcal{D}$에 대하여,

$\operatorname{Fun}(\mathcal{C}, \mathcal{D})$ is collections of functor from $\mathcal{C}$ to $\mathcal{D}$

이렇게 Functor들의 collection 또한 정의해볼 수 있다.

이쯤되면, 뭔가 구조가 보일것이다. 그렇다, category와 functor들 그 자체도 범주를 이룬다.

그럼 이제 Category $\text{Cat}$을 우리의 틀 하에서 정의해보도록 하자.

  • morphism(functor) $F: \mathcal{C} \to \mathcal{D}$
  • object(category) $\mathcal{C} :\mathcal{C} \to \mathcal{C}$
  • $\operatorname{dom}(F) := \mathcal{C}$
  • $\operatorname{cod}(F) := \mathcal{D}$
  • For functor $F: \mathcal{C} \to \mathcal{D}$, $G: \mathcal{D} \to \mathcal{E}$ and $f \in \operatorname{Mor}(\mathcal{C})$
    • $(G \circ F)(f) := G(F(f))$

이때 \(\operatorname{Hom}_\text{Cat}(\mathcal{C}, \mathcal{D}) = \operatorname{Fun}(\mathcal{C}, \mathcal{D})\) 이다.

여기서 작업하려는것이 아니기 때문에 당장의 크기 issue에 관해서 다루지는 않는다.


6. Natural transformation

자연변환도 꽤 예쁘게 된다.

Category $\mathcal{C}$, $\mathcal{D}$와 Functor

\[F, G: \mathcal{C} \to \mathcal{D}\]

에 대하여, Natural transformation $\eta: F \Rightarrow G$는 다음을 만족하는 $(F, G;\eta_\bullet)$ triple이다.

  • $\eta_\bullet: \operatorname{Ob}(\mathcal{C}) \to \operatorname{Mor}(\mathcal{D}),\quad a \mapsto \eta_a$
    • $\operatorname{dom}(\eta_a) = F(a),\quad \operatorname{cod}(\eta_a) = G(a)$
  • For any morphism $f \in \operatorname{Mor}(\mathcal{C})$,
    • $\eta_{\operatorname{cod}(f)} \circ F(f) = G(f) \circ \eta_{\operatorname{dom}(f)}$

아래와 같은 commuting diagram을 그려볼 수 있다.

여기서 diagram은 적당히 그림,
commuting는 어느 경로로 가든 같은 값이 나온다-정도로 이해하면 된다.

image

이때, Functor $F: \operatorname{Mor}(\mathcal{C}) \to \operatorname{Mor}(\mathcal{D})$ 를 아래와 같이 자연변환으로 볼 수 있다.

\[1_F := (F, F; F_0)\]

Category를 functor로 볼 때 처럼, $1_F$가 있어야할 곳에 대신 $F$를 두는 convention일 뿐이다.

Category $\mathcal{C}$, $\mathcal{D}$, Functor

\[F, G: \operatorname{Mor}(\mathcal{C}) \to \operatorname{Mor}(\mathcal{D})\]

에 대하여, $\operatorname{Nat}(F, G)$ is collections of natural transformation from $F$ to $G$

이렇게 Natural transformation들의 collection 또한 정의해볼 수 있다.

덕분에, 우리는 아래와 같은 Category를 떠올릴 수 있다.

Category $\mathcal{C}$, $\mathcal{D}$에 대하여,

$[\mathcal{C}, \mathcal{D}]$ is Category such that

  • $\operatorname{Mor}([\mathcal{C}, \mathcal{D}])$ is collection of natural transformations of functors.
    • $\eta \in \operatorname{Mor}([\mathcal{C}, \mathcal{D}])$ is natural transformation $\eta: F \Rightarrow G$, can be written as $(F, G; \eta_\bullet)$
  • $\operatorname{Ob}([\mathcal{C}, \mathcal{D}])$ is collection of functors from $\mathcal{C}$ to $\mathcal{D}$
    • $\operatorname{Ob}([\mathcal{C}, \mathcal{D}]) = \operatorname{Fun}(\mathcal{C}, \mathcal{D})$
    • $F \in \operatorname{Ob}([\mathcal{C}, \mathcal{D}])$ is functor $F: \mathcal{C} \to \mathcal{D}$, and also natural transformation $(F, F; F_0)$
  • For $\eta: F \Rightarrow G$
    • $\operatorname{dom}(\eta) = F$
    • $\operatorname{cod}(\eta) = G$
  • For $\eta: F \Rightarrow G$, $\epsilon: G \Rightarrow H$
    • $\epsilon \circ \eta := (F, H; (\epsilon \circ \eta)_\bullet)$
    • For any $a \in \operatorname{Ob}(\mathcal{C})$.
      • $(\epsilon \circ \eta)_a = \epsilon_a \circ \eta_a$

이렇게 $\operatorname{Fun}(\mathcal{C}, \mathcal{D})$를 범주로 확장시킬 수 있다.

이때 \(\operatorname{Hom}_{[\mathcal{C}, \mathcal{D}]}(F, G) = \operatorname{Nat}(F, G)\) 이다.

약간 맥락을 벗어나지만, 여기 좋은 도구가 있다.

우선, 다음을 정의한다.

Terminal category $\text{1}$ 은 다음과 같다.

  • $\operatorname{Mor}(\text{1}) = \operatorname{Ob}(\text{1}) = \lbrace 1 \rbrace$

보통 $*$로 object를 나타내지만, 다음 글에서 convention 충돌을 피하기 위해 $1$로 표기했다.

중요한 점은, singleton이라는거다.
저 object의 이름을 1로 붙이건 2로 붙이건 카리나로 붙이건 어차피 동형이다.

Terminal category의 성질들은 다음과 같다.

Category $\mathcal{C}$에 대해,

  • $\operatorname{Fun}(\mathcal{C}, \text{1}) = \lbrace !_\mathcal{C} \rbrace$
    • Functor $!_\mathcal{C}: \mathcal{C} \to \text{1}$은 모든 morphism을 $1$로 보낸다.
  • $\operatorname{Fun}(\text{1}, \mathcal{C}) = \lbrace \ulcorner a\urcorner a \in \operatorname{Ob}(\mathcal{C})\rbrace$
    • $a \in \operatorname{Ob}(\mathcal{C})$ 에 대해, Functor $\ulcorner a\urcorner: \text{1} \to \mathcal{C} $은 $\ulcorner a\urcorner(1) = a$

그러면, 당연히 $\operatorname{Fun}(\text{1}, \mathcal{C})$ 간의 자연변환에 대해서도 알고싶지 않나?

  • $f \in \operatorname{Mor}(\mathcal{C})$ 에 대해, $f: a \to b$ 라면 $\ulcorner f \urcorner : \ulcorner a\urcorner \Rightarrow \ulcorner b\urcorner$ 는
\[\ulcorner f \urcorner:=(\ulcorner a\urcorner, \ulcorner b\urcorner; \ulcorner f \urcorner_\bullet)\]

such that $ \ulcorner f \urcorner_1 = f$

내가 논하고 싶은 부분은, 다음이다.

Category $\mathcal{C}$에 대해,

\[[\text{1}, \mathcal{C}] \cong \mathcal{C}\]

이는, 2-category $\text{Cat}$에서 작업할때

object 수준부터 natural transformation까지 전부를 한곳에서 다룰수 있게 해준다.

Natural transformation에 대해서는, 이후에 좀 더 구조적으로 이해해본다.


7. comma category

Category $\mathcal{A}, \mathcal{B}, \mathcal{C}$와 functor

\[S : \mathcal{A} \to \mathcal{C},\qquad T : \mathcal{B} \to \mathcal{C}\]

에 대하여, comma category $(S \downarrow T)$는 다음과 같이 정의해볼 수 있다.

  • morphism $f =(f_\mathcal{A}, f_\mathcal{B};\alpha, \beta)$
    • $f_\mathcal{A} \in \operatorname{Mor}(\mathcal{A})$
    • $f_\mathcal{B} \in \operatorname{Mor}(\mathcal{B})$
    • $\alpha, \beta \in \operatorname{Mor}(\mathcal{C})$
    • $\beta \circ S(f_\mathcal{A}) = T(f_\mathcal{B}) \circ \alpha$ exists and true
  • object $a = (a_\mathcal{A}, a_\mathcal{B};\alpha, \alpha)$
    • $a_\mathcal{A} \in \operatorname{Ob}(\mathcal{A})$
    • $a_\mathcal{B} \in \operatorname{Ob}(\mathcal{B})$
    • $\alpha: S(a_\mathcal{A}) \to T(a_\mathcal{B})$
  • $\operatorname{dom}_{(S \downarrow T)}(f) := (\operatorname{dom}(f_\mathcal{A}), \operatorname{dom}(f_\mathcal{B});\alpha,\alpha)$
  • $\operatorname{cod}_{(S \downarrow T)}(f) := (\operatorname{cod}(f_\mathcal{A}), \operatorname{cod}(f_\mathcal{B});\beta,\beta)$
  • For morphism $f =(f_\mathcal{A}, f_\mathcal{B};\alpha, \beta)$, $g =(g_\mathcal{A}, g_\mathcal{B};\beta, \gamma)$ such that $\operatorname{cod}_{(S \downarrow T)}(f)=\operatorname{dom}_{(S \downarrow T)}(g)$,
    • $g \circ f := (g_\mathcal{A} \circ f_\mathcal{A}, g_\mathcal{B} \circ f_\mathcal{B};\alpha, \gamma)$

위 구조는 Category가 된다.

exists and true는 composition의 존재성 또한 강제함을 유의하라.

굳이 dom, cod를 작성하는게 직관을 방해한다 봐서 일부러 넣지 않았다.

앞으로의 편의를 위해, 아래 연산을 정의하자.

  • $\pi_l: (S \downarrow T) \to \mathcal{A}$
  • $\pi_r: (S \downarrow T) \to \mathcal{B}$
  • $\pi_\bullet: \operatorname{Ob}(S \downarrow T) \to \operatorname{Mor}(\mathcal{C})$
    • $(S\pi_l, T\pi_r; \pi_\bullet)$은 자연변환이며, $\pi: S\pi_l \Rightarrow T\pi_r$ 과 같이 볼 수 있다.
    • $f =(\pi_l(f), \pi_r(f);\pi_{\operatorname{dom}(f)}, \pi_{\operatorname{cod}(f)})$
    • $a =(\pi_l(a), \pi_r(a);\pi_{a}, \pi_{a})$

morphism $f$는 다음과 같은 commuting diagram로 나타내볼 수 있다.

image

다만 여기서 중요한건 $f$의 구성요소는 $S(f_\mathcal{A}), T(f_\mathcal{B})$이 아니라 $f_\mathcal{A}, f_\mathcal{B}$라는거다.

이 때문에 $\mathcal{C}$에서 square을 이어붙일 수 있어도, $\mathcal{A}$, $\mathcal{B}$에서 이어붙이지 못하면 composition은 불가능하다.

아마도 사족

comma category의 initial/terminal object는 좋은 성질을 지닌다.

Category $\mathcal{A}, \mathcal{B}, \mathcal{C}$와 functor

\[S : \mathcal{A} \to \mathcal{C},\qquad T : \mathcal{B} \to \mathcal{C}\]

와 comma category $(S \downarrow T)$에 대하여, 임의의 object

\[a = (a_\mathcal{A}, a_\mathcal{B};\alpha, \alpha)\]

를 둔다.

  • $a_\mathcal{A} \in \operatorname{Ob}(\mathcal{A})$
  • $a_\mathcal{B} \in \operatorname{Ob}(\mathcal{B})$
  • $\alpha: S(a_\mathcal{A}) \to T(a_\mathcal{B})$

initial object $i =(i_\mathcal{A}, i_\mathcal{B};\alpha_i, \alpha_i)$가 존재하면,

  • $f_\mathcal{A}: i_\mathcal{A} \to a_\mathcal{A}$, $f_\mathcal{B}: i_\mathcal{B} \to a_\mathcal{B}$ such that $\alpha \circ S(f_\mathcal{A}) = T(f_\mathcal{B}) \circ \alpha_i$가 유일하게 존재.

여기서 유일하게 존재한다는건, $(f_\mathcal{A}, f_\mathcal{B})$ pair이 유일함을 의미한다.

Commuting diagram으로 나타내면 다음과 같다.

image

comma category를 좀 더 구조적으로 이해하는 방법은 functor을 만드는거다.

Category $\mathcal{J}, \mathcal{A}, \mathcal{B}, \mathcal{C}$와 functor

\[S : \mathcal{A} \to \mathcal{C},\qquad T : \mathcal{B} \to \mathcal{C}\]

에 대하여,

image

이다.

proof.
\[\operatorname{Fun}(J, (S \downarrow T)) \cong \left\lbrace (H_l, H_r; H_\bullet) \colon \begin{aligned}[t] &H_l:\mathcal{J} \to \mathcal{A},\ &H_r:\mathcal{J} \to \mathcal{B},\ &(SH_l, TH_r, H_\bullet)\text{ is a natural transformation} \end{aligned} \right\rbrace\]

우리는 위가 참임을 보이고 싶다.

Functor $H: \mathcal{J} \to (S \downarrow T)$에 대하여,

\[H_l := pi_l \circ H: \mathcal{J} \to \mathcal{A}\] \[H_r := pi_r \circ H: \mathcal{J} \to \mathcal{B}\] \[H_\bullet := pi_\bullet \circ H_0: \operatorname{Ob}(\mathcal{J}) \to \operatorname{Mor}(\mathcal{C})\]

라고 정의하자. 이때,

For any $f \in \operatorname{Mor}(\mathcal{J})$,

$H_{\operatorname{cod}(f)} \circ S(H_l(f)) = T(H_r(f)) \circ H_{\operatorname{dom}(f)}$

가 항상 참이며, 따라서 $(SH_l, TH_r; H_\bullet)$ triple은 자연변환이다.

역으로, $(H_l, H_r; H_\bullet)$ triple이 주어졌다고 하자.

이때 다음과 같이 map $H: \operatorname{Mor}(\mathcal{J}) \to \operatorname{Mor}(S \downarrow T)$을 정의하자.

  • For any $f \in \operatorname{Mor}(\mathcal{J})$,
\[H(f) := (H_l(f), H_r(f); H_{\operatorname{dom}(f)}, H_{\operatorname{cod}(f)})\]

조건상 $(SH_l, TH_r; H_\bullet)$이 자연변환이므로 저건 $\operatorname{Mor}(S \downarrow T)$의 원소가 맞다.

Functor의 조건 또한 만족하므로 $H$는 functor $H: \mathcal{J} \to (S \downarrow T)$ 이다.

또한 두 변환은 서로 역변환이므로, 참이다.

$\square$


8. Natural transformation as functor to Arrow category

Comma category에서는 유용한 특수형이 있다.

Category $\mathcal{C}$에 대하여, Arrow category $\mathcal{C}^\to$는 다음과 같다.

\(\)

  • morphism $f =(f_l, f_r;\alpha, \beta)$
    • $f_l, f_r \in \operatorname{Mor}(\mathcal{C})$
    • $\alpha, \beta \in \operatorname{Mor}(\mathcal{C})$
    • $\beta \circ f_l = f_r \circ \alpha$ exists and true
  • object $a = (a_l, a_r;\alpha, \alpha)$
    • $a_l, a_r \in \operatorname{Ob}(\mathcal{C})$
    • $\alpha: a_l \to a_r$
  • $\operatorname{dom}_{\mathcal{C}^\to}(f) := (\operatorname{dom}(f_l), \operatorname{dom}(f_r);\alpha,\alpha)$
  • $\operatorname{cod}_{\mathcal{C}^\to}(f) := (\operatorname{cod}(f_l), \operatorname{cod}(f_r);\beta,\beta)$
  • For morphism $f =(f_l, f_r;\alpha, \beta)$, $g =(g_l, g_r;\beta, \gamma)$ such that $\operatorname{cod}_{\mathcal{C}^\to}(f)=\operatorname{dom}_{\mathcal{C}^\to}(g)$,
    • $g \circ f := (g_l \circ f_l, g_r \circ f_r;\alpha, \gamma)$

위 구조는 Category가 된다.

단순히 말해, $\mathcal{C}^\to = (\mathcal{C} \downarrow \mathcal{C})$ 이다. (우리는 앞서 category 스스로가 항등 functor임을 확실히 했다.)

morphism $f$는 다음과 같은 commuting diagram로 나타내볼 수 있다.

image

$\mathcal{C}^\to = (\operatorname{id}_\mathcal{C} \downarrow \operatorname{id}_\mathcal{C})$이며, object $a$에서 $\pi_l(a)$, $\pi_r(a)$이 $\alpha_a$에 강제되어(보통 안된다!! 중요!!)

\[\operatorname{Mor}(\mathcal{C}) \cong \operatorname{Ob}(\mathcal{C}^\to)\]

이다.

Arrow category는 comma category의 성질 또한 그대로 가져간다.

아마도 사족

Category $\mathcal{C}$에 대해, $i \in \operatorname{Mor}(\mathcal{C})$가 $\mathcal{C}^\to$의 initial object라면

임의의 $f \in \operatorname{Mor}(\mathcal{C})$에 대해 \(\bar f = (\bar f_l,\bar f_r;i, f) \in \operatorname{Mor}(\mathcal{C}^\to)\)

  • $\bar f_l, \bar f_r \in \operatorname{Mor}(\mathcal{C})$ such that $f \circ \bar f_l = \bar f_r \circ i$가 유일하게 존재.

Commuting diagram으로 나타내면 다음과 같다.

image

우리가 앞서 논했던 정리를 통해, $H: \mathcal{C} \to \mathcal{D}^\to$ 가 $(H_l, H_r; H_\bullet)$과 동등함을 알 수 있다.

그런데, $(H_l, H_r; H_\bullet)$는 동시에 자연변환이기도 하다!!

즉,

\[\operatorname{Mor}([\mathcal{C}, \mathcal{D}]) \cong \operatorname{Fun}(\mathcal{C}, \mathcal{D^\to})\]

이다.