Lecture 8:
Teacher: Paul-André Melliès
\[\newcommand\xto\xrightarrow \newcommand\xfrom\xleftarrow \newcommand{\Tr}{\mathop{\mathrm{Tr}}}\]Church encoding of trees
\[a: 2 \qquad b: 1 \qquad c: 0\]Encoded in $λ$-calculus as
\[a: o × o → o \qquad b: o → o \qquad c: o\]So that the following is the expected tree: $a(c,a(b(c,a(⋯))))$
NB: with $S: o → o$ and $0: o$: Church numerals
\[A ⟼ D_A: \text{ domain of cliques}\]
$!A$ is the coherence space of finite cliques with
\[u \sim_{!A} v ⟺ u ↑ v \text{ in } D_A \\ ⟺ ∃ w ∈ D_A; \quad u, v ⊆ w\](i.e. the union is still a clique)
Comonoids
Monoids
\[u ∈ A\\ \lbrace \star \rbrace = 1 \overset{u}{⟶} A\\ A^0 \overset{u}{⟶} A\\ A^2 \overset{m}{⟶} A\]And coherence diagrams: associativity square, unit law triangles.
Comonoids
A monoid in the opposite category (which is still monoidal).
\[1 \overset{e}{⟵} A \overset{d}{⟶} A ⊗ A\]And the dual coherence diagrams.
- Commutative comonoid:
-
when \(A \overset{d}{⟶} A ⊗ A \overset{γ_{A,A}}{⟶} A⊗ A = A \overset{d}{⟶} A ⊗ A\)
(cf. picture)
Claim: every object of the form $!A$ is a comonoid.
\[!A \overset{d_A}{⟶} !A ⊗ !A\]$d_A$ clique of
\[!A ⊸ (!A ⊗ !A)\] \[d_A = \lbrace u ⊸ (v ⊗ w) \; \mid \; u,v,w ∈ \vert !A \vert \text{ such that } u = v ∪ w\rbrace\]NB: Seen from the output to the input, $d_A$ is a partial function which maps coherent pairs of finite cliques $(v,w)$ to their union $u = (v,w)$ (recall that two cliques are coherent when their union is a finite clique).
Let’s show that it is a clique: suppose that $u ⊸ (v ⊗ w), u’ ⊸ (v’ ⊗ w’) ∈ d_A$.
If $u \sim_A u’$, then $u ∪ u’$ is a finite clique which contains $v,v’,w,w’$. Hence $v ∪ v’$ and $w ∪ w’$ are finite cliques.
Suppose that $v ⊗ w = v’ ⊗ w’$. Then $u = v ∪ w = v’ ∪ w’ = u’$, hence $u \sim_{(!A)^⊥} u’$.
cf. picture
NB: Stability has to do with causality
Similarly, we have a weakening map/co-unit:
\[!A \overset{e_A}{⟶} 1\] \[\begin{xy} \xymatrix{ !A \ar[r]^{d_A} \ar[d]_{ d_A } & !A ⊗ !A \ar[d]^{ d_A ⊗ !A } \\ !A ⊗ !A \ar[r]_{!A ⊗ d_A} & (!A ⊗ !A) ⊗ !A \, ≅ \, !A ⊗ (!A ⊗ !A) } \end{xy}\]In LL, $⊗$ is a conjunction but we do not have
\[A ⟶ A ⊗ A\]in general.
So we pick a class of formulas $!A$ equipped with a diagonal map $!A \overset{d_A}{⟶} !A ⊗ !A$.
Comonads
- Comonad:
-
a comonoid in the category of endofunctors
- Kleisli category:
-
same objects, but morphisms from $A$ to $B$ are morphisms from $TA$ to $B$ in the original category.
What’s the intuition?
A stable function $f: D_A ⟶ D_B$ is the same thing as a clique of $!A ⊸ B$ (defined as $\Tr f$), hence the same thing as a morphism $f: \; !A ⟶ B$ in the category $Coh$ (vs: linear functions ⟺ maps $A ⟶ B$ in $Coh$)
For example,
\[ε_A ≝ \lbrace \lbrace a \rbrace ⊸ a \; \mid \; a ∈ \vert A \vert\rbrace\, : \; !A ⟶ A\] \[!(A \& B) \; ≃ \; !A ⊗ !B\]The Kleisli category $(Coh_!, \&, ⊤)$ is cartesian closed.
Leave a comment