- ç¶ã»ã«ãªã¼ï¼ãã¯ã¼ãï¼ã©ã³ããã¯å¯¾å¿ã®è¾æ¸
- ç¢å°ã®æ··ä¹±ã«å¯¾å¦ããï¼ ãã«ã«ãéåã®ããã®è¨æ³
ä¸è¨2ã¤ã®è¨äºã§è¿°ã¹ãå 容ãçµã¿åããã¦ãè¨è¿°ã追å ãã¾ãã
è«çã§ãããæ¨è«è¦åãã¯ç¨®é¡ãéããã®ãã´ããã£ã«ãã¦ãã¾ããå°å ¥è¦åãintroduction ruleãã¨é¤å»è¦åãelimination ruleãã®ããã ã«å¯¾ç§°æ§ã¯ããã¾ããã対称ã¨ãããé¨åã§ãããã®å¯¾ç§°æ§ããå対æ§ãå¯éæ§ãéä¼´æ§ããã®åºå¥ãä»ãã¦ãªãã¦ææ§ã§ãããã®ã¸ãã®ãã¨ï¼èªç¶æ¼ç¹¹ã¸ã®æªå£ï¼ã¯æ¬¡ã®éå»è¨äºã«æ¸ãã¦ãã¾ãã
ã«ãªã¼ï¼ãã¯ã¼ãï¼ã©ã³ããã¯å¯¾å¿ãéãã¦è¦ãã°ãèªç¶æ¼ç¹¹ã対称çã§ããªãã綺éºã§ããªãï¼æªãã§ããï¼ãã¨ããããã¾ããã¾ãã以ä¸ã«å¯¾å¿è¡¨ã$`\newcommand{\cat}[1]{\mathcal{#1} }
\newcommand{\hyp}{\text{-}}
\newcommand{\T}[1]{\text{#1}}
\newcommand{\Hom}[2]{ \{ #1 \to #2\}}
\newcommand{\In}{\text{ in }}
\newcommand{\mrm}[1]{ \mathrm{#1} }
`$
å°æåå§ã¾ãã®ååã¯åã®å°ã§ã大æåå§ã¾ãã®ååã¯å°ã«åãåè«çãªãã¬ã¼ã¿ã¼ãã³ã³ããã¼ã¿ãï¼ãåè«çã³ã³ã¹ãã©ã¯ã¿ã¨åè«çãªãã¬ã¼ã¿ãã³ã³ããã¼ã¿ã åè«ãåç §ï¼ã§ããå°ã¨ãªãã¬ã¼ã¿ã¼ã¯å¥ãªç¨®é¡ã®ã¢ãã§ãã表ã®å¾ã«ãå°ï¼ãªãã¬ã¼ã¿ã¼ã®è¨è¿°ããã¾ãã
åè« | è«ç |
---|---|
åºæ¬æä½ | |
Compose | |
Exchange | |
çµå¯¾è±¡ã¨å§å¯¾è±¡ | çã¨å½ |
terminal | trivial |
initial | cotrivial |
ãã«ã«ãã»ã㢠| è«çAND |
MakePair | AndIntroduction |
projectionLeft | andEliminationLeft |
projectionRight | andEliminationRight |
swapProduct | |
ä½ãã«ã«ãã»ã³ã㢠| è«çOR |
MakeCopair | |
injectionLeft | orIntroductionLeft |
injectionRight | orIntroductionRight |
swapSum | |
ä¸è¦ 1 | OrElimination |
ã«ãªã¼åå | 嫿 |
MakeCurry | ImplicationIntroduction |
MakeUncurry | |
evalLeft | implicationEliminationLeft |
evalRight | implicationEliminationRight |
ãã«ã«ãã»ã¿ãã« | å ¨ç§°ééå |
MakeTuple | UniversalIntroduction |
projection | |
dependentEvalLeft | |
dependentEvalRight | |
ä¸è¦ 2 | UniversalElimination |
ä½ãã«ã«ãã»ã³ã¿ãã« | åå¨ééå |
MakeCotuple | |
injection | existentialIntroduction |
ä¸è¦ 3 | ExistentialElimination |
å $`\cat{C}`$ ã¯ãã«ã«ãéåã§ç´åãæã¤ã¨ãã¾ããããã«ããã¤æ§æã¨ã·ã°ãæ§æãã§ããã¨ãã¾ã -- ããã¯ãå $`\cat{C}`$ ãå®åæ§ã»ä½å®åæ§ãæã¤ã¨ãããã¨ã§ããåçè«çãªè¦æ¹ãããã°ã$`\cat{C}`$ ã§ä¾ååçè«ãå±éã§ãããã¨ã«ãªãã¾ãã
$`A, B, X, Y`$ ãªã©ã¯å $`\cat{C}`$ ã®å¯¾è±¡ã表ãã¾ãã$`I, J`$ ãªã©ã $`\cat{C}`$ ã®å¯¾è±¡ã§ãããããããâéåã¨ã¿ãªãæ¹æ³âãdereificationããããã¨ãã¾ã*1ãç¹ã«è¨å·ãå¤ããã«ã$`I \in |\cat{C}|`$ ã㤠$`I \in |{\bf Set}|`$ ã ã¨ãã¾ãã$`\cat{C} = {\bf Set}`$ ãªãä½ã®ä»æããè¦ãã¾ããã
以ä¸ããç¢å°ã®æ··ä¹±ã«å¯¾å¦ããï¼ ãã«ã«ãéåã®ããã®è¨æ³ãã§å°å ¥ããè¨æ³ãå ¨é¢çã«ä½¿ã£ã¦è¨è¿°ãã¾ããéååã§ã¯ã$`\Hom{X}{Y} = [X \to Y]`$ ã§ãããã¨ã«æ³¨æãã¦ãã ãããè¦èªæ§ã®è¦³ç¹ããããã¬ã¤ã¹ã¨ãã©ã±ããã©ã£ã¡ã§ããããªããã©ã±ãããåªå ãã¾ãã
è«çã®å ´åãã©ããã©ãæªãã§ãããï¼ä¸»ã«ä¸ã®è¡¨ã®ãä¸è¦ãã®é¨åï¼ã«ã¤ãã¦ã¯å¥ãªæ©ä¼ï¼ããã°ï¼ã«èª¬æãã¾ãã
å 容ï¼
- åºæ¬æä½
- çµå¯¾è±¡ã¨å§å¯¾è±¡
- ãã«ã«ãã»ãã¢
- ä½ãã«ã«ãã»ã³ãã¢
- ã«ãªã¼åå
- ãã«ã«ãã»ã¿ãã«
- ä½ãã«ã«ãã»ã³ã¿ãã«
å°ã¨ãªãã¬ã¼ã¿ã¼ã®çµã¿åããã®ããã ã®çå¼çæ³åã«ã¤ãã¦ã¯ä»¥ä¸ã®è¨äºã«æ¸ãã¦ããã¾ãã
åºæ¬æä½
Compose
$`\T{Compose} :\\
X, Y, Z \mapsto [\Hom{X}{Y} \times \Hom{Y}{Z}\\
\quad \to \Hom{X}{Z}]
`$
説æãã¾ãï¼ $`\T{Compose}`$ ã¯3ã¤ã®å¼æ°ï¼å $`\cat{C}`$ ã®å¯¾è±¡éï¼ãåãã¾ããããããä¸ä»ãæ·»åã§æ¸ãã¨ï¼
$`\quad\T{Compose}_{X, Y, Z} \in [\Hom{X}{Y} \times \Hom{Y}{Z} \to \Hom{X}{Z}]`$
ã¤ã¾ãã
$`\quad\T{Compose}_{X, Y, Z} \in {\bf Set}(\cat{C}(X, Y) \times \cat{C}(Y, Z), \cat{C}(X, Z) )`$
ããã«æ¸ãæããã°ï¼
$`\quad\T{Compose}_{X, Y, Z} : \cat{C}(X, Y) \times \cat{C}(Y, Z) \to \cat{C}(X, Z) \In {\bf Set}`$
$`\T{Compose}`$ ã¯ãå $`\cat{C}`$ ãåããçµåãcompositionãæ¼ç®ã®ãã¨ã§ãã
Exchange
$`\T{Exchange} \\
A, X, B, Y \mapsto [ \Hom{A}{X}\times \Hom{B}{Y} \\
\quad \to \Hom{B}{Y} \times \Hom{A}{X}]
`$
å°ã®ãã¢ãå ¥ãæ¿ããæä½ã§ãããå ·ä½çã«æ¸ãã°ï¼
$`\quad \T{Exchange}_{A, X, B, Y}(f, g) := (g, f)`$
çµå¯¾è±¡ã¨å§å¯¾è±¡
terminal
$`\T{terminal} :\\
X \mapsto \Hom{X}{\bf 1}
`$
説æãã¾ãï¼ $`\T{terminal}`$ ã¯1ã¤ã®å¼æ°ï¼å $`\cat{C}`$ ã®å¯¾è±¡ï¼ãåãã¾ããããããä¸ä»ãæ·»åã§æ¸ãã¨ï¼
$`\quad \T{terminal}_X \in \Hom{X}{\bf 1} `$
ã¤ã¾ãã
$`\quad \T{terminal}_X \in \cat{C}(X , {\bf 1})`$
ããã«æ¸ãæããã°ï¼
$`\quad \T{terminal}_X : X \to {\bf 1} \In {C}`$
$`\T{terminal}`$ ã¯ãåã®çµå¯¾è±¡ã¸ã®å¯ä¸ã®å°ãä¸ãã¾ãã
initial
$`\T{initial} :\\
X \mapsto \Hom{\bf 1}{X}
`$
ãã«ã«ãã»ãã¢
MakePair
$`\T{MakePair} : \\
X, A, B \mapsto [\Hom{X}{A} \times \Hom{X}{B} \\
\quad \to \Hom{X}{A \times B}]
`$
projectionLeft
$`\T{projectionLeft} :\\
A, B \mapsto \Hom{A\times B}{A}`$
projectionRight
$`\T{projectionRight} :\\
A, B \mapsto \Hom{A\times B}{B}`$
swapProduct
$`\T{swapProduct} : \\
A, B \mapsto \Hom{A\times B}{ B \times A}
`$
ããã¯ããã°ãã° $`\sigma_{A, B}`$ ã¨æ¸ããã¾ãã
ä½ãã«ã«ãã»ã³ãã¢
MakeCopair
$`\T{MakeCopair} : \\
A, B, Y \mapsto [\Hom{A}{Y} \times \Hom{B}{Y} \\
\quad \to \Hom{A + B}{Y}]
`$
injectionLeft
$`\T{injectionLeft} :\\
A, B \mapsto \Hom{A}{A + B}`$
injectionRight
$`\T{injectionRight} :\\
A, B \mapsto \Hom{B}{A + B}`$
swapSum
$`\T{swapSum} : \\
A, B \mapsto \Hom{A + B}{ B + A}
`$
ã«ãªã¼åå
MakeCurry
$`\T{MakeCurry} :\\
X, A, Y \mapsto [ \Hom{X\times A}{Y}\\
\quad \to \Hom{X}{[A \to Y]}]
`$
å·¦ã«ãªã¼åã¨å³ã«ãªã¼åã®åºå¥ã¯ãã¦ã¾ãããä¸è¬è«ã§ã¯ãå·¦å³ã®åºå¥ãããã»ããæã¾ããã§ããå·¦å³ãåºå¥ããã¨ãã¯ã$`[A \to Y]`$ 㨠$`[Y \leftarrow A]`$ ã使ãåãã¾ãã
MakeUncurry
$`\T{MakeUncurry} :\\
X, A, Y \mapsto [ \Hom{X}{[A \to Y]}\\
\quad \to \Hom{X\times A}{Y}]
`$
evalLeft
$`\T{evalLeft} :\\
A, B \mapsto \Hom{A \times [A \to B]}{B}
`$
evalRight
$`\T{evalRight} :\\
A, B \mapsto \Hom{[A \to B] \times A }{B}
`$
ãã«ã«ãã»ã¿ãã«
MakeTuple
$`\T{MakeTuple} :\\
I, (A_\bullet: I \to |\cat{C}|) \mapsto
{\displaystyle
\prod_{ |\mrm{Cone}(A_\bullet, \cat{C})| }
\cat{C}\Hom{\mrm{top}(\hyp)}{\Pi_I A_\bullet}
}`$
ããã¯ã¡ãã£ã¨è¤éã§ãã$`\T{MakeTuple}`$ ã«æ¸¡ãããã¢ãã¯ãå $`\cat{C}`$ ã®å¯¾è±¡ã§ãããåæã«éåã¨ãã¿ãªãã $`I`$ ããã㨠$`A_\bullet`$ ã§ãã$`A_\bullet`$ ã¯ãé»ä¸¸ã®ã¨ããã«ã¤ã³ããã¯ã¹ãå ¥ãæããã¡ããªã¼ãã§ãã$`\mrm{top}(\hyp)`$ ã¯éã®é ç¹ãåãåºãååã§ãã大ããªç·ç©è¨å·ã¯ãç¡å夿° $`\hyp`$ ã表ãâãã¹ã¦ã®éâã«æ¸¡ã£ã¦æãåãããè¨å·ã§ãã大ããªç·ç©è¨å·ã¯å¤§è¦æ¨¡ãã©ã¼ã¸ããªæ¼ç®ã表ãã¾ãã
$`I, A_\bullet`$ ãæ±ºã¾ãã¨ã$`A_\bullet`$ ãåºé¢ã¨ããéã®å $`\mrm{Cone}(A_\bullet, \cat{C})`$ ã®å¯¾è±¡ $`F_\bullet`$ ããã¿ãã«æ§æããã¦ã$`\cat{C}`$ ã®å°
$`\quad \langle F_\bullet \rangle_I = \langle F_i \rangle_{i\in I} : \mrm{top}(F_\bullet) \to \Pi_I A_\bullet`$ ï¼ãããã¿ãã«ï¼
ãå¾ããã¾ãã$`\Pi_I A_\bullet`$ ã¯æ¥µé $`\mrm{lim}_I A_\bullet`$ ã¨åãã§ãã
projection
$`\T{projection} :\\
I, (A_\bullet: I \to |\cat{C}|), a \in I \mapsto \Hom{\Pi_I A_\bullet }{A_a}
`$
dependentEvalLeft
$`\T{dependentEvalLeft} : \\
I, (A_\bullet: I \to |\cat{C}|) \mapsto \Hom{I \times \Pi_I A_\bullet}{\Sigma_I A_\bullet}
`$
ããã¯ã$`i, \langle F_\bullet\rangle_I \mapsto F_i`$ ã¨ããååãå®ç¾©ãã¾ããæ¬¡ã®å³å¼ã坿ã«ãªãã¾ãã
$`\require{AMScd}\\
\begin{CD}
I \times \Pi_I A_\bullet @>{\T{dependentEvalLeft}}>> \Sigma_I A_\bullet \\
@V{\pi_1}VV @VV{\pi}V\\
I @= I
\end{CD}\\
\text{commutative in }\cat{C}`$
dependentEvalRight
$`\T{dependentEvalRight} : \\
I, (A_\bullet: I \to |\cat{C}|) \mapsto \Hom{\Pi_I A_\bullet \times I }{\Sigma_I A_\bullet}
`$
ä½ãã«ã«ãã»ã³ã¿ãã«
MakeCotuple
$`\T{MakeCotuple} :\\
J, (B_\bullet: J \to |\cat{C}|) \mapsto
{\displaystyle
\prod_{ |\mrm{Cocone}(B_\bullet, \cat{C})| }
\cat{C}\Hom{\Pi_J B_\bullet}{\mrm{cotop}(\hyp) }
}`$
$`\mrm{cotop}(\hyp)`$ ã¯ä½éã®ä½é ç¹ãåãåºãååã§ãã
injection
$`\T{injection} :\\
J, (B_\bullet: J \to |\cat{C}|), b \in J \mapsto \Hom{B_b}{\Sigma_j B_\bullet }
`$
*1:ãã®ä»®å®ã¯ããã¯ã¼ãªã³ã°ï¼ãã³ã½ãªã³ã°ã使ã£ã¦åãé¤ããã¨ãã§ããããç¥ãã¾ãããç¾ç¶ãããããããªãã