자연수의 분배법칙으로 보는 카테고리 이론

Emily Riehl이 올린 MAA MathFest에서의 발표 자료. 자연수의 분배법칙이라는 간단한 식을 카테고리 이론적으로 증명하면서 어떻게 카테고리 이론의 개념들이 어떤 필요를 가지고 어떤 의미를 가지는지를 알려주는, 카테고리 이론에 대한 좋은 개론이 되는 컨텐츠이다. 여기서는 이 발표를 토대로 요약하고자 한다.

목표는 간단하게, 자연수 a,b,c에 대해 a \times (b+c) = (a \times b)+(a \times c)를 보이는 것이다. 이 식으로 바로 뛰어들기 전에, 먼저 자연수란 어떤 역할을 할 수 있는지를 먼저 떠올린다. 여러 해석이 있을 수 있지만 그 중에서도 자연스러운 해석 중 하나는, 자연수란 어떤 유한집합의 cardinality, 즉 크기로 볼 수 있다는 것이다. 그래서 자연수 a,b,c는 어떤 유한집합 A,B,C에 대해 a=|A|,b=|B|,c=|C|로 볼 수 있다.

이 해석에서 두 자연수가 같다는 것, 즉 a=b는 어떤 의미를 갖는가? 이는 두 집합 A,B가 크기가 같음을 의미하고, 이는 곧 두 집합이 isomorphic하다는 것, 즉 두 집합 사이에 어떤 일대일 대응이 존재한다는 것과 같은 의미이다. 이를 A \cong B로 쓴다. 즉 a=b는 카테고리화하자면 A \cong B가 된다.

주어진 식에는 등호 말고도 다른 개념, 즉 덧셈과 곱셈이 있는데 이들은 이 해석에서 어떻게 풀어써야 하는가? 즉 b+c개의 원소를 갖는 집합은 무엇에 대응하는가? 이는 disjoint union B+C로 볼 수 있다. 즉 교집합을 갖지 않는 두 집합의 합집합으로 보는 것이다. B,C가 교집합을 가지면 어떻게 하냐고 생각할 수 있지만, 애초에 이 집합들은 임의로 잡은 것이 아니라 우리가 해석하는 과정에서 적절하게 선택할 수 있는 것이므로, 처음부터 어떤 두 집합도 겹치지 않게 잡았다고 생각하면 된다. 이렇게 정의된 B+Cb+c=|B+C|를 만족시켜 덧셈을 카테고리화한 셈이 된다. 곱셈의 경우는 cartesian product A \times B를 생각하면 a \times b = |A \times B|가 된다. 따라서 우리가 증명해야할 식은

\displaystyle A \times (B+C) \cong (A \times B)+(A \times C)

가 된다.

이제 이 증명에서 중요한 역할을 할 요네다의 보조정리(The Yoneda lemma)를 보도록 한다. 먼저 집합 A,X에 대해, \text{Fun}(A,X) = \{ \phi:A \rightarrow X\}로 정의한다. 즉 A에서 X로 대응되는 모든 함수의 집합을 뜻한다. 그러면 요네다의 보조정리는 두 집합 A,B가 isomorphic할 필요충분조건이 다음과 같다는 것을 말해준다.

  • 모든 집합 X에 대해 \text{Fun}(A,X) \cong \text{Fun}(B,C)가 isomorphic이다.
  • 더 나아가서, \text{Fun}(A,X),\text{Fun}(B,X) 사이의 isomorphism \eta_X들을 잡되 어떤 함수 f:X \rightarrow Y에 대해서도 합성에 대해 교환법칙이 성립하게 할 수 있다. (이를 “natural” isomorphism이라고 부른다) 즉, \phi:A \rightarrow X에 대해 f와 합성한 후 \eta_Y: \text{Fun}(A,Y) \rightarrow \text{Fun}(B,Y)를 적용한 결과물과, \eta_X: \text{Fun}(A,X) \rightarrow \text{Fun}(B,X)를 적용한 후 f를 합성한 결과물이 같다.

따라서 우리가 보여야할 사실은 “natural”한 isomorphism들

\displaystyle \text{Fun}(A \times (B+C),X) \cong \text{Fun}( (A \times B)+(A \times C),X)

가 존재한다는 것과 같은 이야기가 된다.

이 증명을 위해, 집합의 disjoint union과 cartesian product의 \text{Fun}이 어떻게 나오는지를 봐야 한다. 먼저, 집합 B,C,X가 주어져 있다면 \text{Fun}(B+C,X)는 함수 f:B+C \rightarrow X들의 집합인데, 이들을 B,C가 정의역인 함수로부터 어떻게 정의할 것인가? 답은 간단하게, 각각을 정의역으로 갖는 함수 f_B:B \rightarrow Xf_C:C \rightarrow X를 합치면 된다. B,C는 겹치지 않기 때문에 함수 값이 충돌하는 경우가 없다. 즉 \text{Fun}(B+C,X)의 원소 f\text{Fun}(B,X) \times \text{Fun}(C,X)의 원소 (f_B,f_C)와 대응이 되므로 \text{Fun}(B+C,X) \cong \text{Fun}(B,X) \times \text{Fun}(C,X)가 되며, 이를 “pairing”이라 부른다.

cartesian product 차례. f:A \times B \rightarrow X를 어떻게 정의해야 하는지를 봐야 한다. 즉 각각의 a \in A, b \in B에 대해 f(a,b) \in X를 정의해야 하는데, 이는 곧 각각의 b \in B에 대해 af(a,b)로 대응시켜주는 함수 f(-,b):A \rightarrow X를 정의하는 것과 같다. 따라서 f를 정의하는 것은 f:B \rightarrow \text{Fun}(A,X)를 정의하는 것으로 대응이 되므로 \text{Fun}(A \times B,X) \cong \text{Fun}(B,\text{Fun}(A,X))가 성립하며, 이를 “currying”이라 부른다.

이제 준비가 끝났다. 카테고리화를 통해 원래의 자연수의 문제를 집합의 언어로 바꿨고, 요네다의 보조정리를 통해 이 문제를 natural isomorphism의 문제로 바꿨으며, 그를 위한 재료로 pairing과 currying이 주어졌다. 그러면 증명은 다음과 같이 완성이 된다.

이렇게 증명을 할 수 있었는데, 여전히 왜 자연수의 분배법칙 하나를 보이는데 뭣하러 이렇게까지 복잡하게 증명해야 했는지에 대해 의구심을 가질 수 있다. 카테고리 이론은 그 범용성에서 진가를 발휘한다. 즉 위에서 자연수에 대해서만 이야기를 했지만, 이 증명을 그대로 재활용하면 다른 object에 대한 더 많은 일반화가 가능해진다. 예컨대, 집합 A,B,C가 유한집합인 경우로 제한했지만 실은 그럴 필요가 없으므로, 임의의 cardinal \alpha,\beta,\gamma에 대해 \alpha \times (\beta+\gamma) = (\alpha \times \beta)+(\alpha \times \gamma)가 성립한다. (비슷하게, cardinal에 대한 식 \alpha^{\beta+\gamma}=\alpha^{\beta} \times \alpha^{\gamma}(\alpha^{\beta})^{\gamma} = \alpha^{\beta \times \gamma} = (\alpha^{\gamma})^{\beta} 등을 보일 수 있다.)

또한 A,B,C는 사실 집합일 필요도 없다. 즉, 같은 증명을 이용하면 벡터 공간 U,V,W에 대해 U \otimes (V \oplus W) \cong (U \otimes V) \oplus (U \otimes W)가 성립하고, 적절한 위상 공간 X,Y,Z에 대해 X \times (Y \sqcup Z)=(X \times Y) \sqcup (X \times Z)가 성립하고, 아벨 군 A,B,C에 대해 A \otimes_{\mathbb{Z}} (B \oplus C) \cong (A \otimes_{\mathbb{Z}} B) \oplus (A \otimes_{\mathbb{Z}} C)가 성립함을 보일 수 있다.


이렇게 카테고리화와 그와 관련된 여러 장치들을 이용해서 익숙한 결과물들이 어떻게 통일된 결과로 연결될 수 있는지를 보여주는, 카테고리 이론에 대한 좋은 개론적 예시를 보여주었다고 생각한다.

트윗 타래를 정리. (2018/09/30)


답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google photo

Google의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중