This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Divergence-Preserving Branching Bisimilarity

Bas Luttik Eindhoven University of Technology
The Netherlands [email protected]
Abstract

This note considers the notion of divergence-preserving branching bisimilarity. It briefly surveys results pertaining to the notion that have been obtained in the past one-and-a-half decade, discusses its role in the study of expressiveness of process calculi, and concludes with some suggestions for future work.

1 Introduction

Branching bisimilarity was proposed by van Glabbeek and Weijland as an upgrade of (strong) bisimilarity that facilitates abstraction from internal activity [17]. It preserves the branching structure of processes more strictly than Milner’s observation equivalence [22], which, according to van Glabbeek and Weijland, makes it, e.g., better suited for verification purposes. A case in point is the argument by Graf and Sifakis that there is no temporal logic with an eventually operator that is adequate for observation equivalence in the sense that two processes satisfy the same formulas if, and only if, they are observationally equivalent [18]. The crux is that observation equivalence insufficiently takes into account the intermediate states of an internal computation. Indeed, branching bisimilarity requires a stronger correspondence between the intermediate states of an internal computation.

Branching bisimilarity is also not compatible with a temporal logic that includes an eventually operator, because it abstracts to some extent from divergence (i.e., infinite internal computations). Thus, a further upgrade is necessary, removing the abstraction from divergence. De Nicola and Vaandrager show that divergence-sensitive branching bisimilarity coincides with the equivalence induced by satisfaction of formulas of the temporal logic CTL_X{}^{*}_{\_}{-X} [7]. (CTL [9] is an expressive state-based logic that includes both linear time and branching time modalities; CTL_X{}^{*}_{\_}{-X} refers to the variant of CTL obtained by omitting the next-state modality, which is incompatible with abstraction from internal activity.)

Divergence-sensitive branching bisimilarity still has one drawback when it comes to verification: it identifies deadlock and livelock and, as an immediate consequence, is not compatible with parallel composition. It turns out that the notion of divergence-preserving branching bisimilarity111For stylistic reasons we prefer the term “divergence-preserving branching bisimilarity” over “branching bisimilarity with explicit divergence”, which is used in earlier articles on the topic., which is the topic of this note, has all the right properties: it is the coarsest equivalence that is compatible with parallel composition, preserves CTL_X{}^{*}_{\_}{-X} formulas, and distinguishes deadlock and livelock [16]. Moreover, on finite processes divergence-preserving branching bisimilarity can be decided efficiently [19].

In [17], a coloured-trace characterisation of divergence-preserving branching bisimilarity is provided. In [14], relational and modal characterisations of the notion are given. For some time it was simply assumed that these three characterisations of the notion coincide, but this was only proved in [15]. To establish that the relational characterisation coincides with the coloured-trace and modal characterisations, it needs to be proved that the relational characterisation yields an equivalence relation that satisfies the so-called stuttering property, and this is surprisingly involved. A similar phenomenon is observed in the proof that a rooted version of divergence-preserving branching bisimilarity is compatible with the recursion construct μX._\mu X.\_ [13]. Due to the divergence condition, Milner’s ingenious argument in [24] that strong bisimilarity is compatible with recursion required several novel twists.

In this note we shall give a survey of results pertaining to divergence-preserving branching bisimilarity that were obtained in the past one-and-a-half decade. in Section 2 we shall present and discuss a relational characterisation of the notion. In Section 3 we comment on modal characterisations of the notion, and discuss the relationship with the temporal logic CTL_X{}^{*}_{\_}{-X}. In Section 4 we briefly discuss to what extent the notion is compatible with familiar process algebraic operators. In Section 5, we explain how it plays a role in expressiveness results. In Section 6 we arrive at some conclusions and mention some ideas for future work.

2 Relational characterisation

We presuppose a set 𝒜τ{\mathcal{A}{}_{{\tau}}} of actions including a special element τ{\tau}, and we presuppose a labelled transition system (S,)({S},{\longrightarrow}) with labels from 𝒜τ{\mathcal{A}{}_{{\tau}}}, i.e., S{S} is a set of states and S×𝒜×τS{\longrightarrow}\subseteq{S}\times{\mathcal{A}{}_{{\tau}}}\times{S} is a transition relation on S{S}. Let s,sS{s},{s^{\prime}}\in{S} and α𝒜τ{\alpha}\in{\mathcal{A}{}_{{\tau}}}; we write s𝛼s{s}\overset{{\alpha}}{\longrightarrow}{s^{\prime}} for (s,α,s)({s},{\alpha},{s^{\prime}})\in{\longrightarrow} and we abbreviate the statement ‘s𝛼s{s}\overset{{\alpha}}{\longrightarrow}{s^{\prime}} or (α=τ{\alpha}={\tau} and s=s{s}={s^{\prime}})’ by s(α)s{s}\overset{\mbox{\tiny\rm(}{\alpha}\mbox{\tiny\rm)}}{\longrightarrow}{s^{\prime}}. We denote by +\mathbin{\rightarrow^{+}} the transitive closure of the binary relation 𝜏\overset{{\tau}}{\longrightarrow}, and by \mathbin{\twoheadrightarrow} its reflexive-transitive closure. A process is given by a state ss in a labelled transition system, and encompasses all the states and transitions reachable from ss.

Definition 1.

A symmetric binary relation \mathcal{R} on S{S} is a branching bisimulation if it satisfies the following condition for all s,tS{s},{t}\in{S} and α𝒜τ{\alpha}{}\in{\mathcal{A}{}_{{\tau}}}:

  1. (T)

    if st{s}\mathrel{\mathcal{R}}{t} and s𝛼s{s}\overset{{\alpha}}{\longrightarrow}{s}^{\prime} for some state s{s}^{\prime}, then there exist states t{t}^{\prime} and t′′{t}^{\prime\prime} such that tmissingmissingt′′(α)t{t}\mathbin{{\buildrel\over{\hbox to16.11119pt{$\smash{-missing}\mkern-7.0mu\cleaders\hbox{$\mkern-2.0mu\smash{-missing}\mkern-2.0mu$}\hfill\mkern-7.0mu\mathord{\twoheadrightarrow}$}}}}{}{t}^{\prime\prime}\overset{\mbox{\tiny\rm(}{\alpha}\mbox{\tiny\rm)}}{\longrightarrow}{t}^{\prime}, st′′{s}\mathrel{\mathcal{R}}{t}^{\prime\prime} and st{s}^{\prime}\mathrel{\mathcal{R}}{t}^{\prime}.

We say that a branching bisimulation \mathcal{R} preserves (internal) divergence if it satisfies the following condition for all s,tS{s},{t}\in{S}:

  1. (D)

    if st{s}\mathrel{\mathcal{R}}{t} and there is an infinite sequence of states (sk)_kω({s_{k}})_{\_}{k\in{\omega}} such that s=s0{s}={s_{0}}, sk𝜏sk+1{s_{k}}\overset{{\tau}}{\longrightarrow}{s_{k+1}} and skt{s_{k}}\mathrel{\mathcal{R}}{t} for all kωk\in{\omega}, then there is a state t{t}^{\prime} such that t+t{t}\mathbin{{\buildrel\over{{}^{\scriptstyle+}}}}{t}^{\prime}, and skt{s_{k}}\mathrel{\mathcal{R}}{t}^{\prime} for some kωk\in{\omega}.

States s{s} and t{t} are divergence-preserving branching bisimilar (notation: s   bΔt{s}\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t}) if there is a divergence-preserving branching bisimulation \mathcal{R} such that st{s}\mathrel{\mathcal{R}}{t}.

The divergence condition (D) in the definition above is slightly weaker than the divergence condition used in the relation characterisation of divergence-preserving branching bisimilarity presented in [14], which actually requires that t{t} admits an infinite sequence of τ{\tau}-transitions and every state on this sequence is related to some state on the infinite sequence of τ{\tau}-transitions from s{s}. Nevertheless, as is established in [15], the notion of divergence-preserving branching bisimilarity defined here is equivalent to the one defined in [14]. In [15] it is also proved that   bΔ\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}} is an equivalence, that the relation   bΔ\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}} is itself a divergence-preserving branching bisimulation, and that it satisfies the so-called stuttering property: if t0𝜏tn{t_{0}}\overset{{\tau}}{\longrightarrow}\cdots{t_{n}}, s   bΔt0{s}\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t_{0}} and s   bΔtn{s}\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t_{n}}, then s   bΔti{s}\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t_{i}} for all 0in0\leq i\leq n.

Let us say that a state s{s} is divergent if there exists an infinite sequence of states (sk)_kω({s_{k}})_{\_}{k\in{\omega}} such that s=s0{s}={s_{0}} and sk𝜏sk+1{s_{k}}\overset{{\tau}}{\longrightarrow}{s_{k+1}} for all kωk\in{\omega}. It is a straightforward consequence of the definition that divergence-preserving branching bisimilarity relates divergent states to divergent states only, i.e., that we have the following proposition.

Proposition 2.

If s   bΔt{s}\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t}, then s{s} is divergent only if t{t} is divergent.

Proof.

Suppose that s   bΔt{s}\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t} and s{s} is divergent. Then there exists an infinite sequence of states (sk)_kω({s_{k}})_{\_}{k\in{\omega}} such that s=s0{s}={s_{0}} and sk𝜏sk+1{s_{k}}\overset{{\tau}}{\longrightarrow}{s_{k+1}} for all kωk\in{\omega}. We inductively construct an infinite sequence of states (t)_ω({t_{\ell}})_{\_}{\ell\in{\omega}} such that t=t0{t}={t_{0}}, t𝜏t+1{t_{\ell}}\overset{{\tau}}{\longrightarrow}{t_{\ell+1}}, together with a mapping σ:ωω\sigma:{\omega}\rightarrow{\omega} such that sσ()   bΔt{s_{\sigma(\ell)}}\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t_{\ell}} for all ω\ell\in{\omega};

  • We define t0=t{t_{0}}={t} and σ(0)=0\sigma(0)=0; note that sσ(0)=s   bΔt=t0{s_{\sigma(0)}}={s}\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t}={t_{0}}.

  • Suppose that the sequence (t)_ω({t_{\ell}})_{\_}{\ell\in{\omega}} and the mapping σ\sigma have been defined up to \ell. Then, in particular, sσ()   bΔt{s_{\sigma(\ell)}}\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t_{\ell}}. We distinguish two cases:

    If sσ()+k   bΔt{s_{\sigma(\ell)+k}}\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t_{\ell}} for all kωk\in{\omega}, then by (D) there exists t+1{t_{\ell+1}} such that t𝜏t+1{t_{\ell}}\overset{{\tau}}{\longrightarrow}{t_{\ell+1}} and sσ()+k   bΔt+1{s_{\sigma(\ell)+k}}\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t_{\ell+1}} for some kωk\in{\omega}; we can then define σ(+1)=k\sigma(\ell+1)=k.

    Otherwise, there exists some kωk\in{\omega} such that sσ()+k   bΔt{s_{\sigma(\ell)+k}}\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t_{\ell}} and sσ()+k+1   bΔt{s_{\sigma(\ell)+k+1}}\not\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t_{\ell}}. Since sσ()+k𝜏sσ()+k+1{s_{\sigma(\ell)+k}}\overset{{\tau}}{\longrightarrow}{s_{\sigma(\ell)+k+1}} it follows by (T) that there exist t′′{t_{\ell}}^{\prime\prime} and t+1{t_{\ell+1}} such that tmissingmissingt′′(τ)t+1{t_{\ell}}\mathbin{{\buildrel\over{\hbox to16.11119pt{$\smash{-missing}\mkern-7.0mu\cleaders\hbox{$\mkern-2.0mu\smash{-missing}\mkern-2.0mu$}\hfill\mkern-7.0mu\mathord{\twoheadrightarrow}$}}}}{t_{\ell}}^{\prime\prime}\overset{\mbox{\tiny\rm(}{\tau}\mbox{\tiny\rm)}}{\longrightarrow}{t_{\ell+1}}, sσ()+k   bΔt′′{s_{\sigma(\ell)+k}}\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t_{\ell}}^{\prime\prime} and sσ()+k+1   bΔt+1{s_{\sigma(\ell)+k+1}}\mathrel{\hbox{\kern 0.43057pt\vbox{\hbox{\raise 0.43057pt\hbox{\kern-0.43057pt{$\leftrightarrow$}\kern-0.43057pt}}\hrule}\kern 0.43057pt}^{\Delta}_{b}}{t_{\ell+1}}. Clearly, we have that tt+1{t_{\ell}}\neq{t_{\ell+1}}, so t+t+1{t_{\ell}}\mathbin{{\buildrel\over{{}^{\scriptstyle+}}}}{t_{\ell+1}} and we can define σ(+1)=σ()+k+1\sigma(\ell+1)=\sigma(\ell)+k+1.

From the existence of an infinite sequence of states (t)_ω({t_{\ell}})_{\_}{\ell\in{\omega}} such that t=t0{t}={t_{0}} and t𝜏t+1{t_{\ell}}\overset{{\tau}}{\longrightarrow}{t_{\ell+1}} it follows that t{t} is divergent, as was to be shown. ∎

As the following example illustrates, however, a symmetric binary relation on S{S} relating states that satisfies (T) of Definition 1 and relates divergent states to divergent states only is not necessarily included in a divergence-preserving branching bisimulation relation. In other words, a symmetric binary relation on S{S} that satisfies (T) and only relates divergent states to divergent states may relate states that are not divergence-preserving branching bisimilar.

s{s}s1{s_{1}}s2{s_{2}}t{t}t1{t_{1}}t2{t_{2}}τ{\tau}τ{\tau}τ{\tau}a{a}τ{\tau}τ{\tau}a{a}
Figure 1: An example transition system illustrating that (D) cannot be replaced by the requirement that \mathrel{\mathcal{R}} relates divergent states to divergent states.
Example 3.

Consider the transition system depicted in Figure 1. The symmetric closure of the relation ={(s,t),(s1,t2),(s2,t2)}\mathcal{R}=\{({s},{t}),({s_{1}},{t_{2}}),({s_{2}},{t_{2}})\} satisfies (T) and it relates divergent states to divergent states only. It does not, however, satisfy (D), for sts\mathrel{\mathcal{R}}t and defining sk=s{s_{k}}=s for all kωk\in{\omega} we get an infinite sequence of states (sk)_kω({s_{k}})_{\_}{k\in{\omega}} such that sk𝜏sk+1{s_{k}}\overset{{\tau}}{\longrightarrow}{s_{k+1}} and skt{s_{k}}\mathrel{\mathcal{R}}{t} for all kωk\in{\omega}, while there does not exist a t{t}^{\prime} such that t+t{t}\mathbin{{\buildrel\over{{}^{\scriptstyle+}}}}{t}^{\prime} and skt{s_{k}}\mathrel{\mathcal{R}}{t}^{\prime} for some kωk\in{\omega}. Note that ss admits a complete path at which a{a} is continuously (weakly) enabled, whereas tt does not admit such a complete path.

3 Modal characterisations

As shown in [14], to get an (action-based) modal logic that is adequate for branching bisimilarity one could take an adaptation of standard Hennessy-Milner logic replacing, for all actions α𝒜τ{\alpha}\in{\mathcal{A}{}_{{\tau}}} in the usual unary may and must modalities a\langle{a}\rangle and [a][{a}] by a binary just-before modality 𝑎\mathbin{{a}}. A state s{s} satisfies the formula φ𝑎ψ\varphi\mathbin{{a}}\psi if, and only if, there exist states s′′{s}^{\prime\prime} and s{s}^{\prime} such that smissingmissings′′(α)s{s}\mathbin{{\buildrel\over{\hbox to16.11119pt{$\smash{-missing}\mkern-7.0mu\cleaders\hbox{$\mkern-2.0mu\smash{-missing}\mkern-2.0mu$}\hfill\mkern-7.0mu\mathord{\twoheadrightarrow}$}}}}{s}^{\prime\prime}\overset{\mbox{\tiny\rm(}{\alpha}\mbox{\tiny\rm)}}{\longrightarrow}{s}^{\prime}, φ\varphi holds in s′′{s}^{\prime\prime} and ψ\psi holds in s{s}^{\prime}. To get an adequate logic for divergence-preserving branching bisimilarity, it suffices to add a unary divergence modality Δ{\Delta}{} such that s{s} satisfies Δφ{\Delta}{\varphi} if, and only if, there exists an infinite sequence of states (sk)_kω({s_{k}})_{\_}{k\in{\omega}} such that smissingmissings0{s}\mathbin{{\buildrel\over{\hbox to16.11119pt{$\smash{-missing}\mkern-7.0mu\cleaders\hbox{$\mkern-2.0mu\smash{-missing}\mkern-2.0mu$}\hfill\mkern-7.0mu\mathord{\twoheadrightarrow}$}}}}{s_{0}}, sk𝜏sk+1{s_{k}}\overset{{\tau}}{\longrightarrow}{s_{k+1}} and φ\varphi holds in sk{s_{k}} for all kωk\in{\omega}.

Let Φ\Phi be the class of formulas generated by the following grammar:

φ::=¬φΦφ𝛼φΔφ(α𝒜,τφΦ,ΦΦ).\varphi::=\neg\varphi\ \mid\ \bigwedge\Phi^{\prime}\ \mid\ \varphi\mathbin{{\alpha}}\varphi\ \mid\ {\Delta}\varphi\qquad({\alpha}\in{\mathcal{A}{}_{{\tau}}},\ \varphi\in\Phi,\ \Phi^{\prime}\subseteq\Phi)\enskip.

We then have that states s{s} and t{t} are divergence-proving branching bisimilar if, and only if, s{s} and t{t} satisfy exactly the same formula in Φ\Phi [15]. We may restrict the cardinality of Φ\Phi^{\prime} in conjunctions to the cardinality of the set of states S{S}.

Example 4.

Consider again the transition system depicted in Figure 1. States s{s} and t{t} are not divergence-preserving branching bisimilar. The formula Δ(𝑎){\Delta}\left(\top\mathbin{{a}}\top\right) (in which \top abbreviates \bigwedge\emptyset) expresses the existence of a divergence on which the action a{a} is continuously enabled. It is satisfied by state s{s}, but not by t{t}.

There is also an intuitive correspondence between branching bisimilarity and the state-based temporal logic CTL_X{}^{*}_{\_}{-X} (CTL without the next-state modality) [8]. The standard semantics of CTL_X{}^{*}_{\_}{-X} is, however, with respect to Kripke structures, in which states rather than transitions have labels and the transition relation is assumed to be total. To formalise the correspondence, De Nicola and Vaandrager devised a framework of translations between labelled transition systems and Kripke structures [7]. The main idea of the translation from labelled transition systems to Kripke structures is that

  1. 1.

    every transition s𝑎t{s}\overset{{a}}{\longrightarrow}{t} (aτ{a}\neq{\tau}) is replaced by two transitions st_a{s}\overset{}{\longrightarrow}{t}_{\_}{{a}} and t_at{t}_{\_}{{a}}\overset{}{\longrightarrow}{t}, where t_at_{\_}{{a}} is a fresh state that is labelled with {a}\{{a}\};

  2. 2.

    every transition s𝜏t{s}\overset{{\tau}}{\longrightarrow}{t} gives rise to a transition st{s}\overset{}{\longrightarrow}{t}; and

  3. 3.

    for every state s{s} without outgoing transitions (i.e., every deadlock state of the labelled transition system) a transition ss{s}\overset{}{\longrightarrow}{s} is added to satisfy the totality requirement of Kripke structures.

s{s}s1{s_{1}}s2,a{s_{2,{a}}}s2{s_{2}}t{t}t1{t_{1}}t2,a{t_{2,{a}}}t2{t_{2}}{a}\{{a}\}{a}\{{a}\}
Figure 2: Result of apply De Nicola and Vaandrager’s translation to the labelled transition system in Figure 1.
Example 5.

If we apply the translation sketched above to the labelled transition system depicted in Figure 1, then we get the Kripke structure depicted in Figure 2. Note that by clause 3 of the translation state s2{s_{2}} gets a transition to itself, whereas it is a deadlock state in the orginal transition system. Clearly, there is no CTL_X{}_{\_}{-X} formula that distinguishes, e.g., between s_1s_{\_}1 and s_2s_{\_}2, although in the labelled transition system depicted in Figure 1 these states are not divergence-preserving branching bisimilar.

De Nicola and Vaandrager propose a notion of divergence-sensitive branching bisimilarity on finite LTSs and establish that two states in an LTS are divergence-sensitive branching bisimilar if, and only if, in the Kripke resulting from the translation sketched above they satisfy the same CTL_X{}^{*}_{\_}{-X} formulas. Divergence-sensitive branching bisimilarity coincides with divergence-preserving branching bisimilarity on deadlock-free LTSs. In fact, the only difference between divergence-sensitive branching bisimilarity and divergence-preserving branching bisimilarity is that the latter distinguishes between deadlock and livelock states, whereas the former does not.

To preserve the distinction between deadlock and livelock, a modified translation is proposed in [16], obtained from the translation sketched above by replacing clause 3 by

  1. 3.

    add a fresh state dd labelled with {δ}\{\delta\}, and for every state s{s} without outgoing transitions a transition sd{s}\overset{}{\longrightarrow}d.

s{s}s1{s_{1}}s2,a{s_{2,{a}}}s2{s_{2}}t{t}t1{t_{1}}t2,a{t_{2,{a}}}t2{t_{2}}{a}\{{a}\}{a}\{{a}\}dd{δ}\{\delta\}
Figure 3: Result of apply the deadlock preserving translation to the labelled transition system in Figure 1.
Example 6.

Applying the modified translation on the labelled transition in Figure 1, we get the Kripke structure in Figure 3. Note that s1{s_{1}} does not satisfy the CTL_X{}^{*}_{\_}{-X} formula 𝖤𝖥δ\mathsf{EF}\,\delta, while s2{s_{2}} does.

Two states in a labelled transition system are divergence-preserving branching bisimilar if they satisfy the same CTL_X{}^{*}_{\_}{-X} formulas in the Kripke structure that results from the modified transition [16].

4 Congruence

An important reason to prefer divergence-preserving branching bisimilarity over divergence-sensitive branching bisimilarity is that the former is compatible with parallel composition, whereas the latter is not.

s1t{s_{1}}\mathbin{\|}{t}s2t{s_{2}}\mathbin{\|}{t}t{t}s1{s_{1}}s2{s_{2}}t{t}^{\prime}s1t{s_{1}}\mathbin{\|}{t}^{\prime}s2t{s_{2}}\mathbin{\|}{t}^{\prime}τ{\tau}a{a}a{a}a{a}τ{\tau}τ{\tau}
Figure 4: Divergence-sensitive branching bisimilarity is not compatible with parallel composition.
Example 7.

Consider the transition system in Figure 4. States s1t{s_{1}}\mathbin{\|}{t} and s2t{s_{2}}\mathbin{\|}{t} represent the parallel compositions of states s1{s_{1}} and t{t}, and of states s2{s_{2}} and t{t}, respectively. Similarly, states s1t{s_{1}}\mathbin{\|}{t}^{\prime} and s2t{s_{2}}\mathbin{\|}{t}^{\prime} represent the parallel compositions of states s1{s_{1}} and t{t}^{\prime}, and of states s2{s_{2}} and t{t}^{\prime}, respectively. Recall that divergence-sensitive branching bisimilarity does not distinguish deadlock (state t{t}) and livelock (state t{t}^{\prime}), so we have that t{t} and t{t}^{\prime} are divergence-sensitive branching bisimilar. States s1t{s_{1}}\mathbin{\|}{t} and s1t{s_{1}}\mathbin{\|}{t}^{\prime} are, however, not divergence-sensitive branching bisimilar. Note that s1t{s_{1}}\mathbin{\|}{t}^{\prime} has a complete path on which a{a} is continuously enabled, whereas s1t{s_{1}}\mathbin{\|}{t} does not have such a complete path, and so these two states do not satisfy the same CTL_X{}^{*}_{\_}{-X} formulas.

Divergence-preserving branching bisimilarity is the coarsest equivalence included in divergence-sensitive branching bisimilarity that is compatible with parallel composition [16]. Hence, it is also the coarsest congruence for parallel composition relating only processes that satisfy the same CTL_X{}^{*}_{\_}{-X} formulas.

It is well-known that branching bisimilarity is not compatible with non-deterministic choice, and that the coarsest behavioural equivalence that is included in branching bisimilarity and that is compatible with non-deterministic choice, is obtained by adding a so-called root condition. The same holds for divergence-preserving branching bisimilarity.

Definition 8.

Let \mathrel{\mathcal{R}} be a divergence-preserving branching bisimulation. We say that \mathrel{\mathcal{R}} satisfies the root condition for s{s} and t{t} if, whenever

  1. (R1)

    if s𝛼s{s}\overset{{\alpha}}{\longrightarrow}{s}^{\prime} for some state s{s}^{\prime}, then there exists a state t{t}^{\prime} such that t𝛼t{t}\overset{{\alpha}}{\longrightarrow}{t}^{\prime} and st{s}^{\prime}\mathrel{\mathcal{R}}{t}^{\prime}.

  2. (R2)

    if t𝛼t{t}\overset{{\alpha}}{\longrightarrow}{t}^{\prime} for some state t{t}^{\prime}, then there exists a state s{s}^{\prime} such that s𝛼s{s}\overset{{\alpha}}{\longrightarrow}{s}^{\prime} and st{s}^{\prime}\mathrel{\mathcal{R}}{t}^{\prime}.

States s{s} and t{t} are rooted divergence-preserving branching bisimilar if there is a divergence-preserving branching bisimulation relation \mathrel{\mathcal{R}} satisfying the root condition for s{s} and t{t} such that that st{s}\mathrel{\mathcal{R}}{t}.

In [12], formats for transition system specifications are presented that guarantee that divergence-preserving branching bisimilarity and its rooted variant are compatible with the operators defined by the transition system specification. These formats relax the requirements of the branching bisimulation and rooted branching bisimulation formats of [11]. The relaxation of the formats is meaningful: the process-algebraic operations for priority [2] and sequencing [6, 5, 4], with which (rooted) branching bisimilarity is not compatible, are in the rooted divergence-preserving branching bisimulation format. So, in contrast to its divergence-insensitive variant, rooted divergence-preserving branching bisimilarity is compatible with priority and sequencing.

The structural operational rule for the recursion operator μX._\mu X.\_, which was considered in the context of observation equivalence by Milner [23] and in the context of divergence-sensitive variants of observation equivalence by Lohrey, D’Argenio and Hermanns [20], is not in the format for rooted divergence-preserving branching bisimilarity. Nevertheless, rooted divergence preserving branching bisimilarity is compatible also with this operator [13]. The proof of this fact requires an adaption of the up-to technique used by Milner in his argument that (strong) bisimilarity is compatible with recursion [24].

5 Expressiveness of process calculi

Phillips showed that abstraction from divergence can be exploited to prove that every recursively enumerable transition system is branching bisimilar to a boundedly branching computable transition system [26]222Phillips actually claimed the correspondence modulo observation equivalence, but it is easy to see that his proof also works modulo branching bisimilarity.. In contrast, there exist recursively enumerable transition systems that are not divergence-preserving branching bisimilar to a computable transition system (cf., e.g., Example 3.6 in [3]). Hence, in a theory that aims to integrate computability and concurrency, divergence preservation is important.

In [3], interactivity is added to Turing machines by associating an action with every computation step. This so-called reactive Turing machine has a transition system semantics and can be studied from a concurrency-theoretic perspective. A transition system is called executable if it is behaviourally equivalent to the transition system associated with a reactive Turing machine. The notion of executability provides a way to characterise the absolute expressiveness of a process calculus. If every transition system that can be specified in the calculus is executable, then the calculus is said to be executable. Conversely, if every executable transition system can be specified in the calculus, then the calculus is said to be behaviourally complete.

A calculus with constants for deadlock and successful termination, unary action prefixes, binary operations for non-deterministic choice, sequencing and ACP-style parallel composition, iteration and nesting is both executable and behaviourally complete up to divergence-preserving branching bisimilarity [4]. The π\pi-calculus is also behaviourally complete up to divergence-preserving branching bisimilarity. Since it allows the specification of transition systems with unbounded branching, it is, however, not executable up to divergence-preserving branching bisimilarity; it is nominally orbit-finitely executable up to the divergence-insensitive variant of branching bisimilarity [21].

The aforementioned results illustrate the role of divergence in the consideration of the absolute expressiveness of process calculi. Preservation of divergence is also widely accepted as an important criterion when comparing the relative expressiveness of process calculi [25].

6 Conclusions

We have discussed ther relational and modal characterisations of divergence-preserving branching bisimilarity, commented on its compatibility with respect to process algebraic operations and on its role in the study of the absolute expressiveness. We conclude by briefly mentioning some directions for future work.

Sound and complete axiomatisations for the divergence-sensitive spectrum of observation congruence for basic CCS with recursion are provided in [20]. The congruence result in [13] can serve as a stepping stone for providing similar sound and complete axiomatisations for divergence-preserving branching bisimilarity. Then, it would also be interesting to consider the axiomatisation of divergence-preserving branching bisimilarity for full CCS with recursion, although that would first require a non-trivial extension of the congruence result.

Ad hoc up-to techniques for divergence-preserving branching bisimilarity have already been used, e.g., in the congruence proof in [13] and in proof that the π\pi-calculus is behaviourally complete [21]. Recently, several more generic up-to techniques for branching bisimilarity were proved sound [10]. An interesting direction for future work would be to consider extending those up-to techniques for divergence-preserving branching bisimilarity too.

References

  • [1]
  • [2] J. C. M. Baeten, J. A. Bergstra & J. W. Klop (1986): Syntax and defining equations for an interrupt mechanism in process algebra. Fundamenta Informaticae 9(2), pp. 127–167.
  • [3] J. C. M. Baeten, B. Luttik & P. van Tilburg (2013): Reactive Turing machines. Inf. Comput. 231, pp. 143–166, 10.1016/j.ic.2013.08.010.
  • [4] J. C. M. Baeten, B. Luttik & F. Yang (2017): Sequential Composition in the Presence of Intermediate Termination (Extended Abstract). In K. Peters & S. Tini, editors: Proceedings Combined 24th International Workshop on Expressiveness in Concurrency and 14th Workshop on Structural Operational Semantics, EXPRESS/SOS 2017, Berlin, Germany, 4th September 2017, EPTCS 255, pp. 1–17, 10.4204/EPTCS.255.1.
  • [5] A. Belder, B. Luttik & J. C. M. Baeten (2019): Sequencing and Intermediate Acceptance: Axiomatisation and Decidability of Bisimilarity. In M. Roggenbach & A. Sokolova, editors: 8th Conference on Algebra and Coalgebra in Computer Science, CALCO 2019, June 3-6, 2019, London, United Kingdom, LIPIcs 139, Schloss Dagstuhl - Leibniz-Zentrum für Informatik, pp. 11:1–11:22, 10.4230/LIPIcs.CALCO.2019.11.
  • [6] B. Bloom (1994): When is Partial Trace Equivalence Adequate? Formal Asp. Comput. 6(3), pp. 317–338, 10.1007/BF01215409.
  • [7] R. De Nicola & F. W. Vaandrager (1995): Three Logics for Branching Bisimulation. Journal of the ACM 42(2), pp. 458–487, 10.1145/201019.201032.
  • [8] E. A. Emerson & E. M. Clarke (1982): Using Branching Time Temporal Logic to Synthesize Synchronization Skeletons. Science of Computer Programming 2(3), pp. 241–266, 10.1016/0167-6423(83)90017-5.
  • [9] E. A. Emerson & J.Y. Halpern (1986): ‘Sometimes’ and ‘Not Never’ revisited: on branching time versus linear time temporal logic. Journal of the ACM 33(1), pp. 151–178, 10.1145/4904.4999.
  • [10] R. Erkens, J. Rot & B. Luttik (2020): Up-to Techniques for Branching Bisimilarity. In A. Chatzigeorgiou, R. Dondi, H. Herodotou, C. A. Kapoutsis, Y. Manolopoulos, G. A. Papadopoulos & F. Sikora, editors: SOFSEM 2020: Theory and Practice of Computer Science - 46th International Conference on Current Trends in Theory and Practice of Informatics, SOFSEM 2020, Limassol, Cyprus, January 20-24, 2020, Proceedings, Lecture Notes in Computer Science 12011, Springer, pp. 285–297, 10.1007/978-3-030-38919-2_24.
  • [11] W. J. Fokkink, R. J. van Glabbeek & P. de Wind (2012): Divide and congruence: From decomposition of modal formulas to preservation of branching and η\eta-bisimilarity. Inf. Comput. 214, pp. 59–85, 10.1016/j.ic.2011.10.011.
  • [12] W. J. Fokkink, Glabbeek R. J. van & B. Luttik (2019): Divide and congruence III: From decomposition of modal formulas to preservation of stability and divergence. Inf. Comput. 268, 10.1016/j.ic.2019.104435.
  • [13] R. J. van Glabbeek, B. Luttik & L. Spaninks (2020): Rooted Divergence-Preserving Branching Bisimilarity is a Congruence. CoRR abs/1801.01180. Available at http://arxiv.org/abs/1801.01180. Submitted.
  • [14] R. J. van Glabbeek (1993): The Linear Time – Branching Time Spectrum II; The semantics of sequential systems with silent moves (extended abstract). In E. Best, editor: Proceedings 4th International Conference on Concurrency Theory, CONCUR’93, Hildesheim, Germany, August 1993, LNCS 715, Springer, pp. 66–81, 10.1007/3-540-57208-2_6.
  • [15] R. J. van Glabbeek, B. Luttik & N. Trčka (2009): Branching Bisimilarity with Explicit Divergence. Fundamenta Informaticae 93(4), pp. 371–392, 10.3233/FI-2009-109.
  • [16] R. J. van Glabbeek, B. Luttik & N. Trčka (2009): Computation Tree Logic with Deadlock Detection. Logical Methods in Computer Science 5(4), 10.2168/LMCS-5(4:5)2009.
  • [17] R. J. van Glabbeek & W. P. Weijland (1996): Branching time and abstraction in bisimulation semantics. Journal of the ACM 43(3), pp. 555–600, 10.1145/233551.233556.
  • [18] S. Graf & J. Sifakis (1987): Readiness Semantics for Regular Processes with Silent Actions. In T. Ottmann, editor: Automata, Languages and Programming, 14th International Colloquium, ICALP87, Karlsruhe, Germany, July 13-17, 1987, Proceedings, Lecture Notes in Computer Science 267, Springer, pp. 115–125, 10.1007/3-540-18088-5_10.
  • [19] J. F. Groote, D. N. Jansen, J. J. A. Keiren & A. J. Wijs (2017): An O(m log n) Algorithm for Computing Stuttering Equivalence and Branching Bisimulation. ACM Trans. Comput. Logic 18(2), 10.1145/3060140.
  • [20] M. Lohrey, P. R. D’Argenio & H. Hermanns (2005): Axiomatising divergence. Inf. Comput. 203(2), pp. 115–144, 10.1016/j.ic.2005.05.007.
  • [21] B. Luttik & F. Yang (2020): The π\pi-Calculus is Behaviourally Complete and Orbit-Finitely Executable. CoRR abs/1410.4512v8. Available at http://arxiv.org/abs/1410.4512.
  • [22] R. Milner (1980): A Calculus of Communicating Systems. Lecture Notes in Computer Science 92, Springer, 10.1007/3-540-10235-3.
  • [23] R. Milner (1989): A Complete Axiomatisation for Observational Congruence of Finite-State Behaviors. Inf. Comput. 81(2), pp. 227–247, 10.1016/0890-5401(89)90070-9.
  • [24] R. Milner (1990): Operational and Algebraic Semantics of Concurrent Processes. In Jan van Leeuwen, editor: Handbook of Theoretical Computer Science (Vol. B), MIT Press, Cambridge, MA, USA, pp. 1201–1242. Available at http://dl.acm.org/citation.cfm?id=114891.114910.
  • [25] K. Peters (2019): Comparing Process Calculi Using Encodings. In J. A. Pérez & J. Rot, editors: Proceedings Combined 26th International Workshop on Expressiveness in Concurrency and 16th Workshop on Structural Operational Semantics, EXPRESS/SOS 2019, Amsterdam, The Netherlands, 26th August 2019, EPTCS 300, pp. 19–38, 10.4204/EPTCS.300.2.
  • [26] I. Phillips (1993): A Note on Expressiveness of Process Algebra. In G. L. Burn, S. J. Gay & M. Ryan, editors: Proceedings of the First Imperial College Department of Computing Workshop on Theory and Formal Methods, Isle of Thorns Conference Centre, Chelwood Gate, Sussex, UK, 29-31 March 1993, Workshops in Computing, Springer, pp. 260–264.