모나드 (범주론)

범주론에서 **모나드**()는 내부 함자 범주의 모노이드 대상이다. 폐포연산과 대수 구조 다양체의 공통적인 일반화이다.

## 정의
\mathcal C가 범주라고 하자. 그렇다면 자기 함자 \mathcal C\to\mathcal  C들을 대상으로 하고, 이들 사이의 자연 변환들을 사상으로 하는 자기 함자 범주 \operatorname{End}(\mathcal C)를 생각하자. \operatorname{End}(\mathcal C)는 모노이드 범주이며, 따라서 \operatorname{End}(\mathcal C) 속의 모노이드 대상을 생각할 수 있다. \operatorname{End}(\mathcal C)의 모노이드를 \mathcal C의 **모나드**라고 한다.

구체적으로, 모나드는 다음과 같은 데이터로 이루어져 있다.
* 내부 준동형 함자 T\colon C\to C
* (항등원) 자연 변환 \eta\colon 1_C\Rightarrow T (1_C는 상수 함자)
* (합성) 자연 변환 \mu\colon T^2\Rightarrow T
이들은 임의의 대상 A\in\mathcal C에 대하여 다음 세 그림들을 가환되게 하여야 한다.
* (결합 법칙) 임의의 대상 A\in\mathcal C에 대하여, T\mu_A\circ\mu_A=\mu_{TA}\circ\mu_A. 즉, 다음 그림이 가환한다.
*: \begin{matrix}
TTTA&\xrightarrow{T\mu}&TTA\\
{\scriptstyle\mu}\downarrow&&\downarrow\scriptstyle\mu\\
TTA&\xrightarrow[\mu]{}&TA\end{matrix}
* (항등원의 성질) 임의의 대상 A\in\mathcal C에 대하여, \eta_{TA}\circ\mu_A=T\eta_A\circ\mu_A=\operatorname{id}_A. 즉, 다음 두 그림이 가환한다.
:\begin{matrix}
TA&\xrightarrow\eta&TTA\\
&{\scriptstyle\operatorname{id}}\searrow&\downarrow\scriptstyle\mu\\
&&TA\end{matrix}\qquad\qquad\begin{matrix}
TA&\xrightarrow{T\eta}&TTA\\
&{\scriptstyle\operatorname{id}}\searrow&\downarrow\scriptstyle\mu\\
&&TA\end{matrix}

### 모나드 위의 대수
모나드 T\colon\mathcal C\to\mathcal C 위의 **대수**() (A,\operatorname{eval})는 다음과 같은 순서쌍이다.
* A\in\mathcal C는 \mathcal C의 대상이다.
* \operatorname{ev}\colon TA\to A는 \mathcal C의 사상이다.
이는 다음 두 그림들을 가환하게 만들어야만 한다.
:\begin{matrix}
TTA&\xrightarrow\mu&TA&\xleftarrow\eta&A\\
{\scriptstyle T\operatorname{ev}}\downarrow&&\downarrow\scriptstyle\operatorname{ev}&\swarrow\scriptstyle\operatorname{id}\\
TA&\xrightarrow[\alpha]{}&A
\end{matrix}

모나드 T 위의 두 대수 (A,\operatorname{eval}_A), (B,\operatorname{eval}_B) 사이의 **[[준동형]]** f\colon A\to B는 다음 그림을 가환하게 만드는 \mathcal C-사상이다.
:
\begin{matrix}
TA&\xrightarrow{Tf}&TB\\
{\scriptstyle\operatorname{eval}_A}\downarrow&&\downarrow\scriptstyle\operatorname{eval}_B\\
A&\xrightarrow[f]{}&B
\end{matrix}


모나드 T 위의 대수들과 그 사이의 준동형들의 범주를 T의 **에일렌베르크-무어 범주**()라고 하며, \mathcal C^T로 표기한다.

### 모나드에 대응하는 수반 함자
수반 함자로부터 항상 모나드를 정의할 수 있다. 그 역 역시 항상 성립한다. 즉, 범주 \mathcal C 위의 모나드 (T,\eta,\mu)로부터 수반 함자를 정의할 수 있다. 사실, 이는 여러 가지로 가능하다. 범주 \operatorname{Adj}(\mathcal C,T)를 다음과 같이 정의하자.
* \operatorname{Adj}(\mathcal C,T)의 대상은 T를 유도하는 수반 함자이다. 즉, 수반 함자 (F,G,e,\epsilon) (F\colon\mathcal C\to\mathcal D\colon G) 가운데, (G\circ F,e,G\circ\epsilon\circ F)=(T,\eta,\mu)인 것들이다.
* \operatorname{Adj}(\mathcal C,T)의 사상은 수반 함자 사이의 사상 가운데, \mathcal C 위의 함자가 항등 함자인 것들이다.
그렇다면, \operatorname{Adj}(\mathcal C,T)는 적어도 다음 두 대상을 포함한다.
* **클라이슬리 범주**() \mathcal C^T. 이는 \operatorname{Adj}(\mathcal C,T)의 시작 대상이다.
* **에일렌베르크-무어 범주**(). 이는 \operatorname{Adj}(\mathcal C,T)의 끝 대상이다.

#### 클라이슬리 범주
범주 \mathcal C 위의 모나드 (T,\eta,\mu)의 **클라이슬리 범주** \mathcal C_T는 다음과 같은 범주이다.
* \mathcal C_T의 대상은 \mathcal C의 대상과 같다.
* \mathcal C_T의 사상 X\to Y는 \mathcal C 속의 사상 X\to TY이다.
* \mathcal C_T에서 사상의 합성은 다음과 같다. 임의의 f\in\hom_{\mathcal C}(X,TY)=\hom_{\mathcal C_T}(X,Y), g\colon\hom_{\mathcal C}(Y,TZ)=\hom_{\mathcal T_C}(Y,Z)에 대하여,
*: g\circ_Tf=\mu_Z\circ Tg\circ f\in\hom_{\mathcal C}(X,TZ)=\hom_{\mathcal C_T}(X,Z)
* \mathcal C_T에서의 항등 사상은 모나드 항등원이다.
*: \operatorname{id}_{X_T}=\eta_X\in\hom_{\mathcal C}(X,TX)=\hom_{\mathcal C_T}(X,X)
이 경우, 자연스럽게 함자
:F\colon\mathcal C\to\mathcal C_T
:F\colon X\mapsto X
:F\colon (f\colon X\to Y)\mapsto(\eta_Y\circ f)
및
:G\colon\mathcal C_T\colon\mathcal C
:G\colon X\mapsto X
:G\colon (f\colon X\to TY)\mapsto \mu_Y\circ Tf
를 정의할 수 있다. 이들은 수반 함자를 이룬다.
:F\dashv G
또한
:T=G\circ F
이므로 (T,\eta,\mu)는 수반 (F,G)에 대응하는 모나드이다. 클라이슬리 범주의 원소는 보편대수학의 자유 대수를 일반화하는 것으로 생각할 수 있다.

클라이슬리 범주는 스위스의 수학자 하인리히 클라이슬리(, 1930~2011)가 도입하였다.

#### 에일렌베르크-무어 범주
범주 \mathcal C 위의 모나드 (T,\eta,\mu)의 **에일렌베르크-무어 범주** \mathcal C^T는 T 위의 대수와 준동형들의 범주이다. 이에 대하여, 다음과 같은 망각 함자를 정의할 수 있다.
:G\colon\mathcal C^T\to\mathcal C
:G\colon (A,\operatorname{eval}_A)\mapsto A
:G\colon \left(f\colon(A,\operatorname{eval}_A)\to(B,\operatorname{eval}_B)\right)\mapsto(f\colon A\to B)
마찬가지로, 다음과 같은 자유 대수 함자를 정의할 수 있다.
:F\colon\mathcal C\to\mathcal C^T
:F\colon X\mapsto (TX,\mu_X)
:F\colon (f\colon X\to Y)\mapsto\left(Tf\colon(TX,\mu_X)\to(TY,\mu_Y)\right)
이들은 수반 함자를 이룬다.
:F\dashv G
또한
:T=G\circ F
이므로, (T,\eta,\mu) 역시 (F,G)에 대응하는 모나드이다.

에일렌베르크-무어 범주는 사무엘 에일렌베르크와 존 콜먼 무어가 도입하였다.

#### 모나드 함자
수반 함자 F\colon\mathcal C\to\mathcal D\colon G에서, 만약 \mathcal D가 에일렌베르크-무어 범주 \mathcal C^{G\circ F}와 동치라면, G를 **모나드 함자**()라고 한다. **벡 모나드성 정리**()에 의하면, 함자 G\colon\mathcal D\to\mathcal C가 모나드 함자가 되는 것은 다음 네 조건을 충족시키는 것과 동치이다.
* G은 왼쪽 수반 함자를 갖는다.
* G는 동형 사상을 반사시킨다. 즉, \mathcal D의 사상 f에 대하여 만약 Gf가 \mathcal C의 동형 사상이라면, f 역시 \mathcal D의 동형 사상이다.
* \mathcal D는 모든 G-분할 평행쌍의 쌍대동등자를 갖는다.
* G는 \mathcal D의 모든 G-분할 평행쌍의 쌍대동등자를 보존한다.
이는 조너선 목 벡(, 1935~2006)이 1967년 경 증명하였다.

## 예
범주 \mathcal C 위의 항등 함자 \operatorname{id}_{\mathcal C}\colon\mathcal C\to\mathcal C는 모나드이다. 이 모나드 위의 대수는 (항등 사상이 갖추어진) \mathcal C의 대상 (A,\operatorname{id}_A)이다.

### 폐포
모나드의 대표적인 예는 폐포 연산자이다. 위상 공간 X의 집합들과 그 포함관계들의 범주 \mathcal P(X)를 생각하자. 그렇다면 폐포 연산자 \operatorname{cl}\colon\mathcal P(X)\to\mathcal P(X)는 함자를 이루며, 또한 다음과 같은 자연 변환들이 존재한다.
* (\eta) S\subset\operatorname{cl}(S)
* (\mu) \operatorname{cl}(\operatorname{cl}(S))=\operatorname{cl}(S)
이들은 모나드 공리들을 만족시킨다. 따라서 닫힘 연산자는 \mathcal P(X)의 모나드다. 이 모나드 위의 대수는 닫힌집합이다.

### 대수 구조 다양체
모나드의 다른 예로, 대수 구조 다양체를 들 수 있다. 대수 구조 다양체 V가 주어졌을 때, 함자 T\colon\operatorname{Set}\to\operatorname{Set}를 다음과 같이 정의하자.
* 집합 S에 대하여, TS는 S로부터 생성되는 자유 대수이다.
* 함수 f\colon S\to S' 및 항 t\in TS에 대하여, Tf(t)\in S'는 t 속에 등장하는 모든 상수 s\in S를 f(s)로 치환하여 얻는 항이다.
이 경우, 다음과 같이 모나드의 구조를 줄 수 있다.
* \mu_S\colon TTS\to TS는 대수 TS 위의 자유 대수 TTS에서, TS에서 성립하는 등식들에 대하여 몫을 취하는 준동형이다.
* \eta_S\colon S\to TS는 s\in S를, 하나의 상수로만 구성된 항으로 대응시킨다.
T 위의 대수는 V에 속한 대수 구조이다.

### 수반 함자
수반 함자
:F\colon\mathcal C\to\mathcal D
:G\colon\mathcal D\to\mathcal C
:F\dashv G
:\eta\colon\operatorname{id}_{\mathcal D}\Rightarrow G\circ F
:\epsilon\colon F\circ G\Rightarrow \operatorname{id}_{\mathcal C}
가 주어졌을 때,
:G\circ F\colon\mathcal C\to\mathcal C
는 항상 모나드를 이룬다. 이 경우, 모나드 항등 사상은 \eta이며, 모나드 합성 사상은
:G\epsilon F\colon G\circ F\circ G\circ F\Rightarrow G\circ F
이다.

### 콤팩트 하우스도르프 공간
집합 S에 대하여, TS가 S 위의 모든 극대 필터들의 집합이라고 하자. 함수 S\to S'에 대하여
:Tf\colon TS\to TS'
:Tf\colon\mathcal U\mapsto\{f(U)\colon U\in\mathcal U\}
로 놓으면, T\colon\operatorname{Set}\to\operatorname{Set}는 함자를 이룬다.

여기에 다음과 같은 자연 변환을 정의하자.
:\eta\colon\operatorname{id}_{\operatorname{Set}}\Rightarrow T
:\eta_S\colon s\mapsto\uparrow s=\{U\subseteq\mathcal S\colon s\in U\}
:\mu\colon TT\Rightarrow T
:V\in\mu_S(\mathfrak U)\iff\uparrow V=\{\mathcal F\in TS\colon V\in\mathcal F\}\in\mathfrak U
그렇다면 이는 집합의 범주 위의 모나드를 이룬다.

이 모나드 위의 대수는 콤팩트 하우스도르프 공간과 같다. 구체적으로, (S,\lim)가 T 위의 대수라고 하자. 그렇다면, S 위에, 다음 조건을 만족시키는 위상을 줄 수 있다.
* 임의의 극대 필터 \mathcal U\in TS에 대하여, \lim\mathcal U\in S는 S 위의 위상에 따른 수렴과 일치한다.
이러한 위상은 유일하며, 또한 콤팩트 하우스도르프 위상임을 보일 수 있다.

이 모나드는 다음과 같은 수반 함자로부터 유래한다.
:|\cdot|\colon\operatorname{CompHaus}\to\operatorname{Set}
:\beta\colon\operatorname{Set}\to\operatorname{CompHaus}
:\beta\dashv|\cdot|
여기서 \operatorname{CompHaus}는 콤팩트 하우스도르프 공간 및 연속 함수의 범주이고, |\cdot|은 콤팩트 하우스도르프 공간을 그 점들의 집합으로 대응시키는 함자이며, \beta는 어떤 집합에 이산 위상을 부여한 뒤 그 스톤-체흐 콤팩트화를 취하는 함자이다.

## 역사
로제 고드망이 1958년에 ‘표준 구성’()이라는 이름으로 도입하였다. 이후 "삼중"()이라는 이름으로 불리기도 했는데, 이는 모나드의 구성 성분 (T,\mu,\eta)이 셋인 것에서 유래하였다. 이후 장 베나부()는 ‘모나드’라는 용어를 도입하였고, 손더스 매클레인은 저서에서 이 용어를 사용하였다.

## 응용
하스켈 등 함수형 프로그래밍 언어에서 입출력 및 데이터 구조를 다룰 때 쓰인다.

## 각주

* 

## 외부 링크
* 
* 
* 
* 
* 
* 
* 
* 
* 
* 
* 
* 
* 
* 

분류:수반 함자