# Relational semantics

(Difference between revisions)

##  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 π of A as a subset π * of A * .

###  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.

####  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). 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, 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. 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 η is a natural isomorphism: one says that the SMCC $\mathbf{Rel}$ is a *-autonomous category, with $\bot$ as dualizing object.

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 Xis in the category $\mathbf{Rel}$.

####  Exponentials

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:

• 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}$
• 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}$

###  Interpretation of propositional linear logic (LL0)

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:

• $\web{A\orth}=\web A$;
• $\web{A\tens B}=\web{A\parr B}=\web A\times\web B$;
• $\web{A\with B}=\web{A\plus B}=(\{1\}\times\web A)\cup(\{2\}\times\web B)$;
• $\web{\oc A}=\web{\wn A}=\finmulset{\web A}$.

We then interpret the proofs of LL0 as follows: with each proof π of sequent $\vdash A_1,\ldots,A_n$, we associate a subset $\sem\pi\subseteq\web{A_1}\times\cdots\times\web{A_n}$.

• 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}$
• 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}$ $\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$
• 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} = \set{ \left(\sum_{i=1}^k m_1^i,\ldots,\sum_{i=1}^k m_n^i,[b_1,\ldots,b_k]\right)} {\forall i,\ (m_1^i,\ldots,m_n^i,b_i)\in\sem\pi}$

Theorem

If proof π' is obtained from π by eliminating a cut, then $\sem\pi=\sem{\pi'}$.