Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Cospan Bisimulation

(draft)

One of the starting points of coalgebra was Aczel’s discovery, see also (Rutten, 2000), that span-bisimulation, also known as Aczel-Mendler bisimulation, can capture category theoretically the combinatorial notion of bisimulation.

From an axiomatic point of view, one drawback of span-bisimulations is that, in order to for span-bisimulations to capture the coalgebraic notion of equivalence (aka behavioural equivalence), the coalgebra-functor needs to weakly preserve pullbacks (=preserve weak pullbacks).

In their proof of the final coalgebra, in order to not depend on this assumption, Aczel and Mendler work with quotients and cospans instead of spans. What they call precongruences can be considered as a precursor to the notion of cospan-bisimulation, defined below.

One disadvantage of cospans in Set is that they do not allow us to capture general relations. This can be circumvented by working poset enriched.

Recall that

Definition (cospan-bisimulation): Let T:SetSetT:Set\to Set be a functor. A relation RX×YR\subseteq X\times Y is a cospan bisimulation between coalgebras XξTXX\stackrel\xi\longrightarrow TX and YνTYY\stackrel\nu\longrightarrow TY if the unique arrow RTR\mathbf R\to\overline T \mathbf R that makes the diagram

XRYTXTRTY\begin{array}{} X & \rightarrow & \mathbf R & \leftarrow & Y\\ \downarrow &&\downarrow && \downarrow \\ TX & \rightarrow & \overline T\mathbf R & \leftarrow & TY \end{array}

commute is order preserving. As we will see now, this notion does also work well in case of set-functors that do not preserve weak pullbacks. But let us first start with the familiar case of Kripke frames.

Kripke models

For a starter we can illustrate what happens in the case of Kripke frames, that is, T=PT=\mathcal P is the powerset functor.

Proposition (Balan et al, 2015): The posetification of P\mathcal P is the convex powerset functor P\mathcal{\overline P}.

By definition, then, RR is a cospan-bisimulation iff

xRy    ξxPRνy,xRy \ \ \Rightarrow \ \ \xi x \le_{\mathcal{\overline P}R} \nu y,

which, by definition[2] of the order on PR\mathcal{\overline P}\mathbf R, gives us the usual definition of a bisimulation on Kripke frames (to emphasise the coalgebraic nature of Kripke frames we write xξ(x)x'\in\xi(x) instead of xxx\to x' and yν(y)y'\in\nu(y) instead of yyy\to y').

Corollary: RR is a cospan-bisimulation between Kripke frames ξ:XTX\xi:X\to TX and ν:YTY\nu:Y\to TY iff xRyxRy implies

xξ(x).yν(y).xRy and yν(y).xξ(x).xRy\begin{gather} \forall x'\in\xi(x).\exists y'\in\nu(y). x'Ry' \\[1ex] \textrm { and }\\[1ex] \forall y'\in\nu(y).\exists x'\in\xi(x). x'Ry' \\ \end{gather}

Monotone Neighbourhood Coalgebras

In this subsection we look at coalgebras for the functor UpP:SetSetUp\mathcal P:Set\to Set and the associated notion of cospan-bisimulation induced by its posetification UpP\overline{Up\mathcal P}. For cospan-(bi)simulations for related functors PosPosPos\to Pos see the section on Montone Neighbourhood Coalgebras.

Proposition (Corollary 5 in Dahlqvist and Kurz, 2017): The preordification of the monotone neighbourhood functor T=UpPT=Up\mathcal P is DU\mathcal D \mathcal U ordered by

ABdefaA.bB.ba   and   bB.aA.abA\le B \quad\stackrel{def}\Longleftrightarrow\quad \forall a\in A.\exists b\in B. {\uparrow}b \subseteq {\uparrow} a \ \ \ \textrm{and} \ \ \ \forall b\in B.\exists a\in A. {\downarrow} a \subseteq {\downarrow} b

for all A,BDUXA,B\in \mathcal D\mathcal UX.

The proof relies on the following lemma, see also Proposition 8.25 in (Hansen, 2003).

Lemma: Let RX×YR\subseteq X\times Y with projections π1:RX\pi_1:R\to X, π2:RY\pi_2:R\to Y onto. There is a CTRC\in TR s.t.

aA.cC.π1[c]acC.π1[c]AbB.cC.π2[c]bcC.π2[c]B\begin{gather*} \forall a\in A\,.\,\exists c\in C\,.\, \pi_1[c]\subseteq a\\ \forall c\in C\,.\,\pi_1[c]\in A\\ \forall b\in B\,.\,\exists c\in C\,.\, \pi_2[c]\subseteq b\\ \forall c\in C\,.\,\pi_2[c]\in B \end{gather*}

if and only if

aA.bB.yb.xa.xRybB.aA.xa.yb.xRy\begin{gather*} \forall a\in A\,.\,\exists b\in B\,.\,\forall y\in b\,.\,\exists x\in a\,.\, xRy\\ \forall b\in B\,.\,\exists a\in A\,.\,\forall x\in a\,.\,\exists y\in b\,.\, xRy \end{gather*}

Remark: “only if” does not need the πi\pi_i to be onto.

Proof of the Proposition: Recall that Tf=f[]Tf={\uparrow}f[-]. By definition (see Sec 3.3 in Dahlqvist and Kurz, 2017), the posetification has ABA\le B if there is CC such that π1[C]=A{\uparrow}\pi_1[C]=A and π2[C]=B{\uparrow}\pi_2[C]=B, which is equivalent to the left-hand side of the lemma. On the other hand, the definition of ABA\le B in the proposition is equivalent to the right-hand side of the lemma. Finally, notice that the πi\pi_i are onto because the order is reflexive (and TT preserves surjections).

We have shown that cospan-bisimulations capture Pauly’s notion of bisimulation for neighbourhood frames:

Corollary: RR is a cospan-bisimulation between monotone neighbourhood frames ξ:XTX\xi:X\to TX and ν:YTY\nu:Y\to TY iff xRyxRy implies

aξ(x).bν(y).yb.xa.xRybν(y).aξ(x).xa.yb.xRy\begin{gather*} \forall a\in\xi(x)\,.\,\exists b\in\nu(y)\,.\,\forall y\in b\,.\,\exists x\in a\,.\, xRy\\ \forall b\in\nu(y)\,.\,\exists a\in\xi(x)\,.\,\forall x\in a\,.\,\exists y\in b\,.\, xRy \end{gather*}

Neighbourhood Coalgebras

In this subsection we take TX=22XTX=2^{2^{X}}.

Proposition (Theorem 8 in Dahlqvist and Kurz, 2017): The posetification of the neighbourhood functor 222^{2^-} maps a poset XX to the 22CX2^{2^{CX}} where CC takes connected components. (CHECK whether this is also true for the preordification.)

Recall that, given RX×YR\subseteq X\times Y, we have [3]

(a,b)PR (xa.yb.xRy) & (yb.xa.xRy)(a,b)\in \overline{\mathcal P}R \quad \Longleftrightarrow \ (\forall x\in a.\exists y\in b. xRy) \ \& \ (\forall y\in b.\exists x\in a. xRy)

Corollary: RR is a cospan-bisimulation between neighbourhood frames ξ:XTX\xi:X\to TX and ν:YTY\nu:Y\to TY iff xRyxRy implies

aξ(x).bν(y).(a,b)PRandbν(y).aξ(x).(a,b)PR\forall a\in\xi(x).\exists b \in \nu(y). (a,b)\in\overline{\mathcal P}R \quad \textrm{and}\quad \forall b\in\nu(y).\exists a \in \xi(x). (a,b)\in\overline{\mathcal P}R

Proof: Let D:SetPosD:Set\to Pos be the discrete functor (apologies for using the same letter for the downset-functor). RR is a cospan-bisimulation if the middle arrow in the diagram below is order-preserving.

DXiRjDYDξDνDTXTDXTiTRTjTDYDTY\begin{array}{} DX & \stackrel{i}\longrightarrow & \quad \mathbf R \quad & \stackrel{j}\longleftarrow & DY\\ D\xi\Bigg\downarrow \quad &&\Bigg\downarrow && \quad\Bigg\downarrow D\nu \\ DTX\cong\overline TDX & \stackrel{\overline Ti}\longrightarrow & \overline T\mathbf R & \stackrel{\overline Tj}\longleftarrow & \overline TDY\cong DTY \end{array}

RTR\mathbf R\to \overline T\mathbf R is order-preserving iff xRyxRy implies that Ti(Dξ(x))=Tj(Dν(y))\overline Ti (D\xi(x))=\overline Tj(D\nu(y)), that is,

{cCRaξ(x).i1(c)=a}={cCRbν(y).j1(c)=a}\{c\subseteq C\mathbf R \mid \exists a\in\xi(x). i^{-1}(c)=a\} \quad =\quad \{c\subseteq C\mathbf R \mid \exists b\in\nu(y). j^{-1}(c)=a\}

where CC takes connected components. “\subseteq” can be written as

aξ(x).bν(y).i1(a)=j1(b)\forall a\in\xi(x). \exists b\in\nu(y).i^{-1}(a) = j^{-1}(b)

which is equivalent to

aξ(x).bν(y). (xa.yb.xRy) & (yb.xa.xRy)\forall a\in\xi(x).\exists b\in\nu(y). \ (\forall x\in a.\exists y\in b. xRy) \ \& \ (\forall y\in b.\exists x\in a. xRy)

and similarly for “\supseteq”.

Probabilistic bisimulation

Probabilistic bisimulation also provides an example of cospan bisimulations. If D\mathcal D is the functor of finitely supported probability distributions, then the posetification D\overline{\mathcal D} is given as follows. Let p,qp,q be two probability distributions in DX\mathcal DX. Then define pqp\sqsubseteq q if p[U]q[U]p[U]\le q[U] for all upsets UU of XX.

More Examples?

... other, less well-known, examples?

Results

We will get the expected results. For T:SetSetT:Set\to Set, cospan bisimulation

Could there be theorems linking cospan-bisimulations to cospan-simulations?

References

Balan, Kurz and Velebil: Positive Fragments of Coalgebraic Logics. LMCS 2015.

Dahlqvist and Kurz: The Positivication of Coalgebraic Logics. CALCO 2017. (Section 3.3 and 3.4)

Hansen: Monotonic modal logics. 2003. (Def 4.10, Def 8.20, Prop 8.25)

Hansen, Kupke and Pacuit: Neighbourhood Structures: Bisimilarity and Basic Model Theory. LMCS 2009. (Def 3.5, Thm 3.12)

Pauly: Logic for Social Software. 2001. (Thm 6.5)

Rutten, Turi: , 1993. In particular, Def 5.4 of an ordered F-bisimulation.

Worrell: Coinduction for recursive data types: partial orders, metric spaces and Ω\Omega-categories, CMCS 2000. (Def 5.2)

Further Reading

Aczel:

Aczel, Mendler:

Hansen, Kupke and Pacuit: Neighbourhood Structures: Bisimilarity and Basic Model Theory. LMCS 2009.

Lawvere:

Rutten:

Footnotes
  1. Much of the following would also work for the posetification T:PosPos\overline T:Pos\to Pos. The one property that we only have for the preordification is VTTVV\overline T \cong TV where VV the forgetful functor to SetSet.

  2. Given a preorder/poset XX, the order on the convex powerset of XX is defined by (a,b)PX(a,b)\in \mathcal{\overline P}X if xa.yb.xy\forall x\in a.\exists y\in b. x\le y and yb.xa.xy\forall y\in b.\exists x\in a. x\le y.

  3. aR1[b]a\subseteq R^{-1}[b] and bR[a]b\subseteq R[a].