forked from ComputerAidedLL/llwikibook
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrelsem.tex
246 lines (205 loc) · 8.76 KB
/
relsem.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
\chapter{Relational semantics}\label{relational-semantics}
This is the simplest denotational semantics of linear logic. It consists
in interpreting a formula \(A\) as a set \(A^*\) and a proof \(\pi\) of
\(A\) as a subset \(\pi^*\) of \(A^*\).
\section{The category of sets and relations}\label{the-category-of-sets-and-relations}
It is the category \(\mathbf{Rel}\) whose objects are sets, and such
that \(\mathbf{Rel}(X,Y)=\powerset{X\times Y}\). Composition is the
ordinary composition of relations: given \(s\in\mathbf{Rel}(X,Y)\) and
\(t\in\mathbf{Rel}(Y,Z)\), one sets
\(t\circ s=\set{(a,c)\in X\times Z}{\exists b\in Y\ (a,b)\in s\ \text{and}\ (b,c)\in t}\)
and the identity morphism is the diagonal relation
\(\mathsf{Id}_X=\set{(a,a)}{a\in X}\).
An isomorphism in the category \(\mathbf{Rel}\) is a relation which is a
bijection, as easily checked.
\subsection{Monoidal structure}\label{monoidal-structure}
The tensor product is the usual cartesian product of sets
\(X\tens Y=X\times Y\) (which is not a cartesian product in the category
\(\mathbf{Rel}\) in the categorical sense, \cref{cartesianproduct}). It is a bifunctor: given
\(s_i\in\mathbf{Rel}(X_i,Y_i)\) (for \(i=1,2\)), one sets
\(s_1\tens s_2=\set{((a_1,a_2),(b_1,b_2))}{(a_i,b_i)\in s_i\ \text{for}\ i=1,2}\).
The unit of this tensor product is \(\one=\{*\}\) where \(*\) is an
arbitrary element.
For defining a monoidal category (\cref{monoidalcategory}), it is not sufficient to provide the
definition of the tensor product functor \(\tens\) and its unit
\(\one\), one has also to provide natural isomorphisms
\(\lambda_X\in\mathbf{Rel}(\one\tens X,X)\),
\(\rho_X\in\mathbf{Rel}(X\tens\one,X)\) (left and right neutrality of
\(\one\) for \(\tens\)) and
\(\alpha_{X,Y,Z}\in\mathbf{Rel}((X\tens Y)\tens Z,X\tens(Y\tens Z))\)
(associativity of \(\tens\)). All these isomorphisms have to satisfy a
number of commutations. In the present case, they are defined in the
obvious way.
This monoidal category \((\mathbf{Rel},\tens,\one,\lambda,\rho)\) is
symmetric, meaning that it is endowed with an additional natural
isomorphism \(\sigma_{X,Y}\in\mathbf{Rel}(X\tens Y,Y\tens X)\), also
subject to some commutations. Here, again, this isomorphism is defined
in the obvious way (symmetry of the cartesian product). So, to be
precise, the SMCC (symmetric monoidal closed category) \(\mathbf{Rel}\)
is the tuple \((\mathbf{Rel},\tens,\one,\lambda,\rho,\alpha,\sigma)\),
but we shall simply denote it as \(\mathbf{Rel}\).
The SMCC \(\mathbf{Rel}\) is closed (\cref{smcc}). This means that, given any object
\(X\) of \(\mathbf{Rel}\) (a set), the functor \(Z\mapsto Z\tens X\)
(from \(\mathbf{Rel}\) to \(\mathbf{Rel}\)) admits a right adjoint
\(Y\mapsto (X\limp Y)\) (from \(\mathbf{Rel}\) to \(\mathbf{Rel}\)). In
other words, for any objects \(X\) and \(Y\), we are given an object
\(X\limp Y\) and a morphism
\(\mathsf{ev}_{X,Y}\in\mathbf{Rel}((X\limp Y)\tens X,Y)\) with the
following universal property: for any morphism
\(s\in\mathbf{Rel}(Z\tens X,Y)\), there is a unique morphism
\(\mathsf{fun}(s)\in\mathbf{Rel}(Z,X\limp Y)\) such that
\(\mathsf{ev}_{X,Y}\circ(\mathsf{fun}(s)\tens\mathsf{Id}_X)=s\).
The definition of all these data is quite simple in \(\mathbf{Rel}\):
\(X\limp Y=X\times Y\),
\(\mathsf{ev}_{X,Y}=\set{(((a,b),a),b)}{(a,b)\in X\times Y}\) and
\(\mathsf{fun}(s)=\set{(c,(a,b))}{((c,a),b)\in s}\).
Let \(\bot=\one=\{*\}\). Then we have
\(\mathsf{ev}\circ\sigma:\mathbf{Rel}(X\tens(X\limp\bot),\bot)\) and
hence
\(\eta_X=\mathsf{fun}(\mathsf{ev}\circ\sigma)\in\mathbf{Rel}(X,(X\limp\bot)\limp\bot)\).
It is clear that \(\eta=\set{(a,((a,*),*))}{a\in X}\) and hence \(\eta\)
is a natural isomorphism: one says that the SMCC \(\mathbf{Rel}\) is a
*-autonomous category (\cref{staraut}), with \(\bot\) as dualizing object.
\subsection{Additives}\label{additives-2}
Given a family \((X_i)_{i\in I}\), let
\(\with_{i\in I}X_i=\cup_{i\in I}\{i\}\times X_i\). Let
\(\pi_j\in\mathbf{Rel}(\with_{i\in I}X_i,X_j)\) given by
\(\pi_j=\set{((j,a),a)}{a\in X_j}\). Then
\((\with_{i\in I}X_i,(\pi_i)_{i\in I})\) is the cartesian product of the
\(X_i\)s in the category \(\mathbf{Rel}\).
\subsection{Exponentials}\label{exponentials-4}
One defines \(\oc X\) as the set of all finite multisets of elements of
\(X\). Given \(s\in\mathbf{Rel}(X,Y)\), one defines
\(\oc s=\set{([a_1,\dots,a_n],[b_1,\dots,b_n])}{n\in\mathbb N\ \text{and}\ \forall i\ (a_i,b_i)\in s}\)
where \([a_1,\dots,a_n]\) is the multiset containing \(a_1,\dots,a_n\),
taking multiplicities into account. This defines a functor
\(\mathbf{Rel}\to\mathbf{Rel}\), that we endow with a comonad structure
as follows:
\begin{itemize}
\item the counit, called dereliction, is the natural transformation
\(\mathsf{der}_X\in\mathbf{Rel}(\oc X,X)\), given by
\(\mathsf{der}_X=\set{([a],a)}{a\in X}\)
\item the comultiplication, called digging, is the natural transformation
\(\mathsf{digg}_X\in\mathbf{Rel}(\oc X,\oc\oc X)\), given by
\(\mathsf{digg}_X=\set{(m_1+\cdots+m_n,[m_1,\dots,m_n])}{n\in\mathbb N\ \text{and}\ m_1,\dots,m_n\in\oc X}\)
\end{itemize}
\section{\texorpdfstring{Interpretation of propositional linear logic (\(LL_0\))}{Interpretation of propositional linear logic (LL_0)}}\label{interpretation-of-propositional-linear-logic-ll_0}
The structure described above gives rise to the following interpretation
of formulas and proofs of linear logic.
For all propositional variable \(X\), fix a set \(\web X\). Then with
each formula \(A\), we associate a set \(\web A\) as follows:
\begin{itemize}
\item \(\web{A\orth}=\web A\);
\item \(\web{A\tens B}=\web{A\parr B}=\web A\times\web B\);
\item \(\web{A\with B}=\web{A\plus B}=(\{1\}\times\web A)\cup(\{2\}\times\web B)\);
\item \(\web{\oc A}=\web{\wn A}=\finmulset{\web A}\).
\end{itemize}
We then interpret the proofs of \(LL_0\) as follows: with each proof
\(\pi\) of sequent \(\vdash A_1,\ldots,A_n\), we associate a subset
\(\sem\pi\subseteq\web{A_1}\times\cdots\times\web{A_n}\).
\begin{itemize}
\item
Identity group:
\(\sem{
\LabelRule{\rulename{axiom}}
\NulRule{ \vdash A\orth, A }
\DisplayProof}=\set{(a,a)}{a\in\web A}\)
\(\sem{
\AxRule{}
\VdotsRule{ \pi }{ \vdash \Gamma, A }
\AxRule{}
\VdotsRule{ \rho }{ \vdash \Delta, A\orth }
\LabelRule{ \rulename{cut} }
\BinRule{ \vdash \Gamma, \Delta }
\DisplayProof} = \set{(\gamma,\delta)}{\exists a\in\web A,\ (\gamma,a)\in\sem\pi\land(\delta,a)\in\sem\rho}\)
\item Multiplicative group:
\(\sem{
\AxRule{}
\VdotsRule{ \pi }{ \vdash \Gamma, A }
\AxRule{}
\VdotsRule{ \rho }{ \vdash \Delta, B }
\LabelRule{ \tens }
\BinRule{ \vdash \Gamma, \Delta, A \tens B }
\DisplayProof} =
\set{(\gamma,\delta,a,b)}{(\gamma,a)\in\sem\pi\land(\delta,b)\in\sem\rho}
\)
\(\sem{
\AxRule{ }
\VdotsRule{ \pi }{ \vdash \Gamma, A, B }
\LabelRule{ \parr }
\UnaRule{ \vdash \Gamma, A \parr B }
\DisplayProof} = \set{(\gamma,(a,b))}{(\gamma,a,b)\in\sem\pi}\)
\(\sem{
\LabelRule{ \one }
\NulRule{ \vdash \one }
\DisplayProof} = \{ * \}\)
\(\sem{
\AxRule{}
\VdotsRule{ \pi }{ \vdash \Gamma }
\LabelRule{ \bot }
\UnaRule{ \vdash \Gamma, \bot }
\DisplayProof} = \set{(\gamma,*)}{\gamma\in\sem\pi}\)
\item Additive group:
\(\sem{ \AxRule{}
\VdotsRule{ \pi }{ \vdash \Gamma, A }
\LabelRule{ \plus_1 }
\UnaRule{ \vdash \Gamma, A \plus B }
\DisplayProof} =
\set{(\gamma,(1,a))}{(\gamma,a)\in\sem\pi}
\)
\(\sem{
\AxRule{}
\VdotsRule{ \pi }{ \vdash \Gamma, B }
\LabelRule{ \plus_2 }
\UnaRule{ \vdash \Gamma, A \plus B }
\DisplayProof} = \set{(\gamma,(2,b))}{(\gamma,b)\in\sem\pi}\)
\(\sem{
\AxRule{}
\VdotsRule{ \pi }{ \vdash \Gamma, A }
\AxRule{}
\VdotsRule{ \rho }{ \vdash \Gamma, B }
\LabelRule{ \with }
\BinRule{ \vdash \Gamma, A \with B }
\DisplayProof} = \set{(\gamma,(1,a))}{(\gamma,a)\in\sem\pi} \cup \set{(\gamma,(2,b))}{(\gamma,b)\in\sem\rho}\)
\(\sem{
\LabelRule{ \top }
\NulRule{ \vdash \Gamma, \top }
\DisplayProof} = \emptyset\)
\item Exponential group:
\(\sem{ \AxRule{}
\VdotsRule{ \pi }{ \vdash \Gamma, A }
\LabelRule{ d }
\UnaRule{ \vdash \Gamma, \wn A }
\DisplayProof} =
\set{(\gamma,[a])}{(\gamma,a)\in\sem\pi}
\)
\(\sem{
\AxRule{}
\VdotsRule{ \pi }{ \vdash \Gamma }
\LabelRule{ w }
\UnaRule{ \vdash \Gamma, \wn A }
\DisplayProof} = \set{(\gamma,[])}{\gamma\in\sem\pi}\)
\(\sem{
\AxRule{}
\VdotsRule{ \pi }{ \vdash \Gamma, \wn A, \wn A }
\LabelRule{ c }
\UnaRule{ \vdash \Gamma, \wn A }
\DisplayProof} = \set{(\gamma,m+n)}{(\gamma,m,n)\in\sem\pi}\)
\(\sem{
\AxRule{}
\VdotsRule{ \pi }{ \vdash \wn A_1,\ldots,\wn A_n,B }
\LabelRule{ \oc }
\UnaRule{ \vdash \wn A_1,\ldots,\wn A_n,\oc B }
\DisplayProof} =\)
\qquad\(
\set{
\left(\sum_{i=1}^k m_1^i,\ldots,\sum_{i=1}^k m_n^i,[b_1,\ldots,b_k]\right)}
{k \in \mathbb{N}\text{ and }\forall 1 \leq i \leq k,\ (m_1^i,\ldots,m_n^i,b_i)\in\sem\pi}\)
\end{itemize}
\begin{theorem}
If proof $\pi'$ is obtained from $\pi$ by eliminating a cut, then $\sem\pi=\sem{\pi'}$.
\end{theorem}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "main"
%%% End: