함자의 정의와 기본 성질

수학에서 다루는 모든 대상들과 이들 사이의 morphism들의 모임을 category로 보겠다는 범주론의 철학을 받아들이기로 한다면, 자연스럽게 우리가 정의한 수학적인 대상, 즉 category들을 대상으로 갖는 category를 생각할 수도 있다. 이를 위해서는 우선 category들 사이의 morphism이 무엇인지부터 정의해야 한다.

정의 1 두 category $\mathcal{A},\mathcal{B}$ 사이의 functor함자 $F:\mathcal{A}\rightarrow\mathcal{B}$는 다음과 같은 정보로 구성된다.

  • 각각의 $A\in\obj(\mathcal{A})$마다 대응되는 object $F(A)\in\obj(\mathcal{B})$,
  • 각각의 $f\in\Hom_\mathcal{A}(A_1,A_2)$마다 대응되는 morphism $F(f)\in\Hom_\mathcal{B}(F(A_1),F(A_2))$

이들은 다음 조건들을 만족한다.

  • 두 morphism의 합성을 $F$로 보낸 것은 각각의 morphism을 $F$로 보낸 후 합성한 것과 같다. 즉 $F(g\circ f)=F(g)\circ F(f)$가 성립한다.
  • 임의의 object $A\in\obj(\mathcal{A})$에 대하여, $F(\id_A)=\id_{F(A)}$가 성립한다.

어렵지 않게 functor들의 합성이 functor인 것을 보일 수 있다.

보조정리 2 임의의 category들 $\mathcal{A},\mathcal{B},\mathcal{C}$와 두 functor $F:\mathcal{A}\rightarrow \mathcal{B}, G:\mathcal{B}\rightarrow \mathcal{C}$에 대하여, $G\circ F:\mathcal{A} \rightarrow \mathcal{C}$를

  • 임의의 $A\in \mathcal{A}$에 대하여, $(G\circ F)(A)=G(F(A))$,
  • 임의의 $f\in\Hom_\mathcal{A}(A_1,A_2)$에 대하여, $(G\circ F)(f)=G(F(f))$

으로 정의하면 $G\circ F$는 functor가 된다.

증명

Functor가 만족해야 하는 두 조건만 보이면 충분하며, 이는

\[(G\circ F)(g\circ f)=G(F(g\circ f))=G(F(g)\circ F(f))=G(F(g))\circ G(F(f))=(G\circ F)(g)\circ(G\circ F)(f)\]

그리고

\[(G\circ F)(\id_A)=G(F(\id_A))=G(\id_{F(A)})=\id_{G(F(A))}=\id_{(G\circ F)(A)}\]

으로부터 자명하다.

함자의 예시들

Category를 처음 정의했을 때와 마찬가지로, 이 개념을 올바르게 이해하려면 예시들을 사용해 살펴보는 것이 좋다.

예시 3 (Forgetful functor) 다음은 모두 functor의 예시이다.

  • 임의의 concrete category $\mathcal{A}$에 대하여, $\mathcal{A}$의 대상 $A$는 이 대상을 집합으로서 본 underlying set $U(A)$로, morphism $f:A \rightarrow B$는 $f$를 집합 사이의 함수로 본 $U(f):A \rightarrow B$로 정의하면 $U: \mathcal{A} \rightarrow \Set$은 functor이다.
  • 비슷하게, $U:\Ring \rightarrow \Ab$를 ring 위에 정의된 곱하기 구조만 잊어버리고, underlying abelian group만 보는 functor로 정의할 수도 있고, $U:\lMod{R}\rightarrow \Ab$도 비슷한 방식으로 정의할 수 있다.

이러한 종류의 예시들을 모두 forgetful functor라고 부른다.

예시 4 (Free functor) 임의의 집합 $X$가 주어질 때마다, $X$의 원소들로 만들어진 free group을 대응시키는 functor $F:\Set \rightarrow \Grp$이 존재한다. Functoriality를 보이기 위해서는 다음 diagram을 통해 universal property를 적용하면 된다.

img

이와 비슷한 방식으로 free vector space를 만드는 functor $F:\Set \rightarrow \Vect_k$ 등도 생각할 수 있다. 이러한 종류의 functor들을 free functor라 부른다.

반변함자

이번에는 다음과 같이 정의하자.

정의 5 두 category $\mathcal{A},\mathcal{B}$ 사이의 contravariant functor반변함자는 다음과 같은 정보로 구성된다.

  • 각각의 $A\in\obj(\mathcal{A})$마다 대응되는 object $F(A)\in\obj(\mathcal{B})$,
  • 각각의 $f\in\Hom_\mathcal{A}(A_1,A_2)$마다 대응되는 morphism $F(f)\in\Hom_\mathcal{B}(F(A_2),F(A_1))$

이들은 다음 조건들을 만족한다.

  • $\mathcal{A}$의 두 morphism의 합성을 $F$로 보낸 것은 각각의 morphism을 $F$로 보낸 후 방향을 바꾸어 합성한 것과 같다. 즉 $F(g\circ f)=F(f)\circ F(g)$가 성립한다.
  • 임의의 object $A\in\obj(\mathcal{A})$에 대하여, $F(\id_A)=\id_{F(A)}$가 성립한다.

이와 같은 정의 때문에, 정의 1의 functor를 더 정확하게는 covariant functor공변함자라 부르기도 한다. 그러나 functor라 하면 보통 covariant functor만을 뜻하는데, 이는 다음 정의에 의해 모든 contravariant functor를 어떤 종류의 covariant functor로 생각할 수 있기 때문이다.

정의 6 Category $\mathcal{A}$가 주어졌다 하자. 그럼 $\mathcal{A}$의 opposite category반대 카테고리 $\mathcal{A}^\op$는 다음의 데이터로 이루어진다.

  • $\obj(\mathcal{A}^\op)=\obj(\mathcal{A})$이다.
  • 임의의 $A,B\in \obj(\mathcal{A}^\op)=\obj(\mathcal{A})$에 대하여, $\Hom_{\mathcal{A}^\op}(A,B)=\Hom_{\mathcal{A}}(B,A)$가 성립한다.
  • 임의의 $A\in\obj(\mathcal{A})$에 대하여, $\mathcal{A}^\op$에서의 identity $\id_A$는 $\mathcal{A}$에서의 identity와 동일한 것으로 주어진다.
  • 임의의 $f\in\Hom_{\mathcal{A}^\op}(A,B),g\in\Hom_{\mathcal{A}^\op}(B,C)$에 대하여, 이들의 합성 $g\circ^\op f$는 $f,g$를 $\mathcal{A}$의 morphism들로 본 후, 이를 $\mathcal{A}$에서 합성한 것으로 정의된다.
    즉, $f\in \Hom_\mathcal{A}(B,A),g\in\Hom_\mathcal{A}(C,B)$에 대하여, $f$와 $g$의 $\mathcal{A}^\op$에서의 합성 $g\circ^\op f$는

    \[g\circ^\op f= f\circ g\in\Hom_{\mathcal{A}}(C,A)=\Hom_{\mathcal{A}^\op}(A,C)\]

    으로 정의된다.

이 정의 하에서, 정의 5를 다시 쓰자면 $\mathcal{A}$에서 $\mathcal{B}$로의 contravariant functor란 단순히 (covariant) functor $\mathcal{A}^\op \rightarrow \mathcal{B}$에 불과하다.

카테고리 $\Cat$

이를 통해 category들의 category를 정의할 수 있다. 다만 이전에 언급했던 러셀의 역설과 관련된 문제를 피하기 위해 우리는 보편적으로 모든 category들의 category 대신, 모든 small category들의 category 혹은 모든 locally small category들의 category를 생각한다.

정의 7 Category $\Cat$는 다음의 데이터로 이루어진다.

  • $\Cat$의 대상들은 small category들이다.
  • 임의의 $\mathcal{A},\mathcal{B}\in\obj(\Cat)$에 대하여, $\Hom_\Cat(\mathcal{A},\mathcal{B})$는 $\mathcal{A}$에서 $\mathcal{B}$로의 functor들의 모임이다.

비슷하게, category $\CAT$는 다음의 데이터로 이루어진다.

  • $\CAT$의 대상들은 locally small category들이다.
  • 임의의 $\mathcal{A},\mathcal{B}\in\obj(\CAT)$에 대하여, $\Hom_\CAT(\mathcal{A},\mathcal{B})$는 $\mathcal{A}$에서 $\mathcal{B}$로의 functor들의 모임이다.

이들 데이터가 실제로 category가 된다는 것을 확인할 수 있다.

정의 8 Locally small category들 $\mathcal{A}, \mathcal{B}$에 대하여, functor $F:\mathcal{A}\rightarrow \mathcal{B}$가 faithful충실하다는 것은 임의의 $A_1,A_2\in\obj(\mathcal{A})$에 대하여, 대응

\[\Hom_\mathcal{A}(A_1,A_2)\rightarrow\Hom_{\mathcal{B}}(F(A_1),F(A_2));\qquad f\mapsto F(f)\]

이 injective인 것이다. 만일 이 대응이 surjective라면 $F$가 full충만이라 한다.


참고문헌

[Rie] Emily Riehl. Category Theory in Context. Dover Publications, 2016.


댓글남기기