범주론

Left, right adjoint functor의 정의

이번 글에서 우리는 adjoint functor들에 대해 살펴본다. 이들은 범주론에서만 배울 경우 다소 비자명해보일 수도 있지만, 다양한 분야들에서의 예시를 통해 매우 중요한 개념임을 알 수 있다.

수반함자의 정의

우선 정의부터 시작한다.

정의 1 두 functor \(F: \mathcal{A}\rightarrow \mathcal{B}\), \(G: \mathcal{B}\rightarrow \mathcal{A}\)가 주어졌다 하고, 두 variable \(A,B\)에 대해 natural한 다음의 isomorphism

\[\Hom_\mathcal{B}(F(A), B)\cong \Hom_\mathcal{A}(A, G(B))\]

이 주어졌다면, 이 pair \((F,G)\)를 adjunction수반쌍이라 부르고, \(F\)를 \(G\)의 left adjoint왼쪽 수반함자, \(G\)를 \(F\)의 right adjoint오른쪽 수반함자라 부른다. 이를 \(F\dashv G\)로 표기한다.

예시 2 임의의 preordered set \((S,\preceq)\)는 항상 category로 생각할 수 있었다. (§범주, ⁋예시 3) 이 category의 morphism은 정확히 preorder \(\preceq\)와 같으므로, 두 preordered set \(S,S'\)을 category로 본다면 이들 사이의 functor \(F:S \rightarrow S'\)는 그냥 집합 \(S\)에서 \(S'\)로의 증가함수에 불과하다.

그럼 두 functor \(F: S \rightarrow S'\)와 \(G:S' \rightarrow S\)에 대하여 \(F\dashv G\)라는 것은 다음 식

\[F(x)\preceq y\iff x\preceq G(y)\]

이 성립하는 것이다. 즉, 이들은 monotone Galois connection을 이룬다. (§필터와 아이디얼, 갈루아 대응, ⁋정의 6)

Unit과 counit

이제 다음 adjunction

adjoint

이 주어졌다 하자. \(\mathcal{A}\)의 대상 \(A\)를 고정하고 나면, 정의 1의 isomorphism에 의하여 다음 functor

\[\Hom_\mathcal{A}(A, G-): \mathcal{B}\rightarrow\Set\]

은 representable functor이며, natural isomorphism

\[\Hom_\mathcal{A}(A, G-)\cong\Hom_\mathcal{B}(F(A), -)\]

이 functor의 representation이 된다. 한편 §표현가능한 함자, ⁋정리 3 (Yoneda)에 의하여, 우리는 \(\Hom_\mathcal{B}(F(A),-)\)에서 \(\Hom_\mathcal{A}(A,G-)\)로의 natural transformation \(\alpha\)는 항상 \(\alpha_{F(A)}(\id_{F(A)})\)의 원소에 의해 결정된다는 것을 안다. 즉 우리 상황에서 위의 natural isomorphism은 \(\Hom_\mathcal{A}(A, GF(A))\)의 원소 \(\eta_A\)에 의해 결정되며, 우리는 위의 isomorphism의 naturality로부터 이 모임 \((\eta_A)_{A\in\obj(\mathcal{A})}\)이 \(\id_\mathcal{A}\)에서 \(GF\)로의 natural transformation을 정의한다는 것을 안다. 이를 이 adjunction의 unit이라 부른다. 비슷하게 \(\mathcal{B}\)의 대상 \(B\)를 고정하는 것으로 시작하여 얻어지는 natural transformation \(\epsilon:FG \rightarrow \id_\mathcal{B}\)를 이 adjunction의 counit이라 부른다.

거꾸로 임의의 두 natural transformation \(\eta:\id_\mathcal{A}\Rightarrow GF\), \(\epsilon: FG\Rightarrow\id_\mathcal{B}\)가 존재하여 다음 triangle identity들

triangle_identity

을 만족한다면, 이것이 정확히 정의 1의 adjunction과 같은 정보를 갖고 있다는 것이 알려져 있다.

Free functor와 forgetful functor

예시 3 (Free \(\dashv\) Forgetful)에서 살펴볼 adjunction을 살펴보기 위해서 우리는 우선 forgetful functor가 무엇인지를 간단히 설명한다. §범주, ⁋예시 2 (Concrete categories)에서 우리는 기존에 알고 있던 많은 수학적인 구조들은 각자의 category를 이룬다는 것을 살펴보았다. 그런데 이 예시들을 보면, 어떤 수학적인 구조는 다른 수학적인 구조에 추가적인 데이터를 주는 것으로 얻어진다. 가령 monoid는 집합 \(S\)에 결합법칙을 만족하는 이항연산과 항등원에 대한 정보를 추가하여 얻어지는 것이며, 이 이항연산이 역원까지 갖는다면 group이 된다. 거꾸로 말하자면, group \(G\)는 항상 monoid로 생각할 수도 있고, monoid \(M\)은 항상 집합으로 생각할 수도 있다. 이 예시들이 functor \(\Grp \rightarrow\Mon\)과 \(\Mon \rightarrow \Set\)을 정의한다는 것을 확인할 수 있다. 이러한 종류의 functor들을 forgetful functor라 부른다.

예시 3 (Free \(\dashv\) Forgetful) 적당한 두 category \(\mathcal{A},\mathcal{B}\)와 forgetful functor \(U: \mathcal{A}\rightarrow \mathcal{B}\)가 주어졌다 하자. 그럼 \(U\)의 left adjoint \(F:\mathcal{B}\rightarrow \mathcal{A}\)가 존재한다면 이를 free functor라 부른다. 이는 다음 식

\[\Hom_\mathcal{A}(F(A),B)\cong\Hom_\mathcal{B}(A, U(B))\]

이 성립한다는 의미이다.

  • Forgetful functor \(U:\Grp \rightarrow \Set\)의 left adjoint \(F:\Set \rightarrow \Grp\)이 존재한다. 임의의 집합 \(X\)에 대해 \(F(X)\)를 free group자유군이라 부른다.
  • Forgetful functor \(U:\Ab \rightarrow \Set\)의 left adjoint \(F:\Set \rightarrow \Ab\)이 존재한다. 임의의 집합 \(X\)에 대해 \(F(X)\)를 free abelian group자유아벨군이라 부른다.

반변수반함자

한편, 지금까지는 covariant functor에 대한 adjoint functor들만 생각하고 있었는데, contravariant functor들에 대해서도 adjoint functor들이 잘 정의된다.

정의 4 Contravariant functor \(F:\mathcal{A} \rightarrow \mathcal{B}\)와 \(G: \mathcal{B}\rightarrow \mathcal{A}\)가 주어졌다 하자. 그럼 두 variable \(A,B\)에 대해 natural한 다음의 isomorphism

\[\Hom_\mathcal{B}(F(A), B)\cong\Hom_\mathcal{A}(G(B), A)\]

이 존재한다면 이들이 mutually left adjoint라 한다. 비슷하게, 만일 두 variable \(A,B\)에 대해 natural한 다음의 isomorphism

\[\Hom_\mathcal{B}(B, F(A))\cong\Hom_\mathcal{A}(A, G(B))\]

이 존재한다면 이들이 mutually right adjoint라 한다.

이중수반함자

한편 우리는 adjoint functor의 개념을 여러개의 변수에 대해서도 확장할 수 있다.

우선 bifunctor \(F: \mathcal{A}\times \mathcal{B}\rightarrow \mathcal{C}\)를 생각하자. 그럼 \(\mathcal{A}\)의 대상 \(A\)를 고정하고 나면 functor

\[F(A,-):\mathcal{B}\rightarrow \mathcal{C}\]

를 얻는다. 이렇게 정의된 \(F(A,-)\)가 right adjoint \(G_A: \mathcal{C}\rightarrow \mathcal{B}\)를 갖는다고 가정하자. 즉 다음 식

\[\Hom_\mathcal{B}(B, G_A(C))\cong \Hom_\mathcal{C}(F(A, B), C)\tag{1}\]

이 성립한다. 비슷한 논증이 \(F(-,B):\mathcal{A}\rightarrow \mathcal{C}\)으로 시작했어도 얻어진다. 다음의 명제 5는 이러한 right adjoint가 모든 \(A\in\obj(\mathcal{A})\)에 대해 존재한다면, \(G_A\)들을 합쳐 하나의 bifunctor \(G\)로 생각할 수 있다는 것을 보여준다.

이번 글에서는 다뤄야 할 내용이 많아서 다음 명제를 증명하지는 않지만, 위의 식 (1)에 naturality를 부여하기 위해서는 \(G\)가 \(\mathcal{A}^\op\times \mathcal{C}\rightarrow \mathcal{B}\)여야 한다는 것을 알 수 있다. 만일 \(A' \rightarrow A\)가 주어진다면 \(F(A',B)\rightarrow F(A,B)\)가 주어지고 따라서 우변은 \(\Hom_\mathcal{C}(F(A',B),C)\)가 되는 반면, 좌변에서는 \(A\)가 포함된 항이 \(\Hom_\mathcal{B}\)의 target 부분에 있기 때문이다.

명제 5 Bifunctor \(F: \mathcal{A}\times \mathcal{B}\rightarrow \mathcal{C}\)를 고정하자.

  1. 만일 모든 \(A\)에 대해 \(F(A,-):\mathcal{B}\rightarrow \mathcal{C}\)가 right adjoint \(G_A\)를 갖는다면, 이들을 모아 유일한 bifunctor \(G:\mathcal{A}^\op\times \mathcal{C}\rightarrow \mathcal{B}\)를 만들어서, 다음의 isomorphism

    \[\Hom_\mathcal{C}(F(A,B),C)\cong\Hom_\mathcal{B}(B, G(A,C))\]

    이 세 variable들에 대해 모두 natural하도록 할 수 있다.

  2. 만일 모든 \(B\)에 대해 \(F(-,B):\mathcal{A}\rightarrow \mathcal{C}\)가 right adjoint \(H_A\)를 가지고, 따라서 위의 결과에 의해 bifunctor \(H:\mathcal{B}^\op\times \mathcal{C}\rightarrow \mathcal{A}\)가 정의된다면, 두 natural isomorphism

    \[\Hom_\mathcal{C}(F(A,B),C)\cong\Hom_\mathcal{B}(B, G(A,C))\]

    그리고

    \[\Hom_\mathcal{C}(F(A,B),C)\cong\Hom_\mathcal{A}(A, H(B,C))\]

    에서 우변에 있는 두 contravariant functor \(G(-,C): \mathcal{B} \rightarrow \mathcal{C}\)와 \(H(-,C):\mathcal{A}\rightarrow \mathcal{C}\)는 mutually right adjoint이다.

이 명제를 통해, bifunctor가 관련되어있는 adjunction을 어떤 식으로 정의해야하는지 추측할 수 있다.

정의 6 Bifunctor들

\[F: \mathcal{A}\times \mathcal{B}\rightarrow \mathcal{C},\quad G: \mathcal{A}^\op\times \mathcal{C}\rightarrow \mathcal{B},\quad H:\mathcal{B}^\op\times \mathcal{C}\rightarrow \mathcal{A}\]

이 주어졌다 하자. 그럼 세 variable들에 대해 모두 natural한 다음의 isomorphism

\[\Hom_\mathcal{C}(F(A,B), C)\cong \Hom_\mathcal{B}(B, G(A, C))\cong\Hom_\mathcal{A}(A, H(B, C))\]

이 존재한다면 이를 two-variable adjunction이라 부른다.

만일 \(\mathcal{A}=\mathcal{B}=\mathcal{C}\)이고 \(F:\mathcal{A}\times \mathcal{A}\rightarrow \mathcal{A}\)가 monoidal product 구조를 준다면 \(G,H\)를 각각 \(F\)의 left, right closure라 부른다. 또, \(G,H\)가 isomorphic하다면 \(F\)를 closed라 부른다.

예시 7 특별히 cartesian monoidal category \((\Set,\times)\)을 생각하자. (§모노이드 범주, ⁋예시 2) 그럼 다음의 isomorphism (§집합의 곱, ⁋명제 4)

\[\Hom_\Set(A\times B, C)\cong\Hom_\Set(A,\Hom_\Set(B,C))\cong\Hom_\Set(B,\Hom_\Set(A,C))\]

이 각 성분에 대해 natural하다는 것을 알 수 있다. 뿐만 아니라 left closure와 right closure가 모두 \(\Hom_\Set(-,-)\)로 동일하므로 \(\Set\)은 cartesian closed category이다.

Internal \(\Hom\)

예시 7에서 우리는 bifunctor \(\Hom_\Set\)을 \(\times\)에 대한 right adjoint로 해석할 수 있었다. 이를 일반화하여 monoidal category에서 다음과 같이 정의한다.

정의 8 Symmetric monoidal category \((\mathcal{A},\otimes)\)가 주어졌다 하자. 그럼 \(\mathcal{A}\)에서의 internal \(\Hom\)은 bifunctor \([-,-]:\mathcal{A}^\op\times \mathcal{A}\rightarrow \mathcal{A}\)로서, 임의의 대상 \(A\in\obj(\mathcal{A})\)에 대해 다음의 adjunction

\[(-\otimes A)\dashv [A,-]\]

이 성립하는 것이다. Internal \(\Hom\)이 존재하는 symmetric monoidal category를 closed symmetric monoidal category라 부른다.

Internal \(\Hom\)의 예시는 앞으로 천천히 살펴보게 될 것이지만, 우선 정의만 보더라도 기존의 \(\Hom\)과 다른 점을 찾을 수 있다. 일반적으로 (locally small) category에서 \(\Hom\)을 취하는 것은 bifunctor

\[\Hom_\mathcal{A}(-,-):\mathcal{A}^\op\times \mathcal{A}\rightarrow \Set\]

을 주지만, internal \(\Hom\)의 경우 이 bifunctor의 target category가 \(\Set\)이 아니라 \(\mathcal{A}\) 자기 자신이 되므로 훨씬 풍부한 정보를 담고 있을 것이다. 더 일반적으로 target category를 임의의 closed symmetric monoidal category로 바꾸어주면 enriched category의 개념을 얻는다.

Limit과 adjoint

마지막으로, 역시 증명을 하지 않는 다음의 정리를 소개한다.

정리 9 Adjunction \(F\dashv G\)가 주어졌다 하자. 그럼

  1. \(F\)는 colimit을 보존한다.
  2. \(G\)는 limit을 보존한다.

참고문헌

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


댓글남기기