Axiomatizing Prefix Iteration with Silent Steps

Luca Aceto^{∗}

BRICS, Aalborg University

Rob van Glabbeek^{†}

Stanford University

Wan Fokkink^{‡}

Utrecht University

Anna Ingólfsdóttir^{§}

BRICS, Aalborg University

Abstract

Prefix iteration is a variation on the original binary version of the Kleene star operation P^{∗}Q, obtained by restricting the first argument to be an atomic action. The interaction of prefix iteration with silent steps is studied in the setting of Milner’s basic CCS. Complete equational axiomatizations are given for four notions of behavioural congruence over basic CCS with prefix iteration, viz. branching congruence, η-congruence, delay congruence and weak congruence. The completeness proofs for η-, delay, and weak congruence are obtained by reduction to the completeness theorem for branching congruence. It is also argued that the use of the completeness result for branching congruence in obtaining the completeness result for weak congruence leads to a considerable simplification with respect to the only direct proof presented in the literature. The preliminaries and the completeness proofs focus on open terms, i.e., terms that may contain process variables. As a byproduct, the ω-completeness of the axiomatizations is obtained as well as their completeness for closed terms.

AMS Subject Classification (1991): 68Q10, 68Q40, 68Q55. CR Subject Classification (1991): D.3.1, F.1.2, F.3.2. Keywords and Phrases: Concurrency, process algebra, basic CCS, prefix iteration, branching bisimulation, η-bisimulation, delay bisimulation, weak bisimulation, equational logic, complete axiomatizations.

1 Introduction

The research literature on process theory has recently witnessed a resurgence of interest in the study of Kleene star-like operations (cf., e.g., the papers [8, 17, 15, 13, 32, 12, 16, 3, 2]).

∗Department of Mathematics and Computer Science, Aalborg University, Fr. Bajersvej 7E, 9220 Aalborg Ø, Denmark. On leave from the School of Cognitive and Computing Sciences, University of Sussex, Brighton BN1 9QH, UK. Partially supported by HCM project express. Email: luca@iesd.auc.dk.

†Computer Science Department, Stanford University, Stanford, CA 94305, USA. Partially supported by ONR under grant number N00014-92-J-1974. Email: rvg@cs.stanford.edu.

‡Utrecht University, Department of Philosophy, Heidelberglaan 8, 3584 CS Utrecht, The Netherlands.

Email: fokkink@phil.ruu.nl.

§Department of Mathematics and Computer Science, Aalborg University, Fr. Bajersvej 7E, 9220 Aalborg Ø, Denmark. Email: annai@iesd.auc.dk.

Some of these studies, notably [8], have investigated the expressive power of variations on standard process description languages in which infinite behaviours are defined by means of Kleene’s star operation [26, 11] rather than by means of systems of recursion equations. Some others (see, e.g., [17, 32, 15, 2]) have studied the possibility of giving finite equational axiomatizations of bisimulation-like equivalences [30, 28] over simple process algebras that include variations on Kleene’s star operation. De Nicola and his co-workers have instead focused on the study of tree-based models for what they call “nondeterministic Kleene algebras”, and on the proof systems these models support to reason about regular expressions and more expressive languages built on top of those; see, e.g., [13, 12] for details on this line of research.

This paper aims at giving a contribution to the study of complete equational axiomatizations for Kleene star-like operations from the point of view of process theory. Our starting point is the work presented in [15]. In that reference, a finite, complete equational axiomatization of strong bisimulation equivalence has been given for T(BCCS)^{p∗}(A_{τ}), i.e., the language of closed terms obtained by extending the fragment of Milner’s CCS [28] containing the basic operations needed to express finite synchronization trees with prefix iteration. Prefix iteration is a variation on the original binary version of the Kleene star operation P^{∗}Q [26] obtained by restricting the first argument to be an atomic action. Intuitively, at any time the process term a^{∗}P can decide to perform action a and evolve to itself, or an action from P, by which it exits the a-loop. The behaviour of a^{∗}P is captured very clearly by the rules that give its Plotkin-style structural operational semantics:

\overline{a^{∗}P →^{a} a^{∗}P}  \frac{P →^{b} P′}{a^{∗}P →^{b} P′}

Equationally, as shown in [15], such an operation can be completely characterized by the following two natural laws:

a.(a^{∗}x) + x = a^{∗}x
a^{∗}(a^{∗}x) = a^{∗}x

The reader familiar with Hennessy’s work on complete axiomatizations for the delay operation of Milner’s SCCS [22, 23] will have noticed the similarity between the above laws and those presented in [22] (see also [1, Page 40]). This is not surprising as such a delay operation is an instance of the prefix iteration construct.

1.1 Results

In this paper, we extend the results in [15] to a setting with the unobservable action τ. More precisely, we consider four versions of bisimulation equivalence that, to different degrees, abstract away from the internal evolution of processes (viz. delay equivalence [27], weak equivalence [28], η-equivalence [5] and branching equivalence [19]), and provide complete equational axiomatizations for each of the congruences they induce over the language (BCCS)^{p∗}(A_{τ}) of open terms over the signature of T(BCCS)^{p∗}(A_{τ}). The axiomatizations we present are obtained by extending the axiom system from [15] with the relevant τ-laws known from the literature for each of the congruences we consider (cf. [20] for a discussion of these laws), and with collections of laws that describe the interplay between the silent nature of τ and prefix iteration. For instance, the axiomatization of weak congruence uses Milner’s well-known τ-laws [28] and the following axioms describing the interaction of prefix iteration with the silent action τ:

τ^{∗}x = τ.x
τ.(a^{∗}x) = a^{∗}(τ.a^{∗}x)
a^{∗}(x + τ.y) = a^{∗}(x + τ.y + a.y) .

The first of these equations was introduced in [8] under the name of Fair Iteration Rule, and expresses a fundamental property of weak congruence, namely the abstraction from τ-loops, that underlies the soundness of Koomen’s Fair Abstraction Rule [4]. The other two equations are from [3], and describe a rather subtle interplay between prefix iteration and the silent action τ.

The completeness results for weak and branching congruence were first proven in [3] and [16], respectively. However, the proofs of these results presented in this paper are new, and we consider them to be an improvement on the original ones. In particular, unlike the one given in [16], the proof for branching congruence does not rely on the completeness result for strong bisimulation presented in [15], and that for weak congruence is obtained by a simple and natural reduction to the completeness result for branching congruence. Perhaps surprisingly, the proof for weak congruence presented here is considerably simpler then the one given in [3] which uses only properties of weak congruence. All the authors’ attempts to obtain a direct proof of the completeness theorem for weak congruence which is simpler than the one presented in [3] have been to no avail. The axiomatizations of η-congruence and delay congruence are also given by reduction to the one for branching bisimulation, and are, to the best of our knowledge, new. All the axiomatizations we present are finite, if so is the set of observable actions, and irredundant.

Another notable feature of the proofs of the completeness theorems we present is that, unlike those in [3, 16], they apply to open terms directly, and thus yield the ωcompleteness of the axiomatizations as well as their completeness for closed terms. Following [29, 18], this is achieved by defining a structural operational semantics and notions of bisimulations directly on open terms. For all the notions of bisimulation equivalence so defined for open terms in the language (BCCS)^{p∗}(A_{τ}), we prove that two terms are equivalent iff all their closed instantiations are. This ensures that our definitions are in agreement with the standard ones in the literature on process theory.

The ω-completeness of the axiomatizations for branching, η- and delay congruence are all new. The axiomatization for weak congruence was first shown to be ω-complete in [3] in the presence of a denumerable set of observable actions. Our result in this paper sharpens the one in the aforementioned reference in that, like the ones for branching, ηand delay congruence, it only requires that the set of observable actions be non-empty.

1.2 Outline of the paper

The paper is organized as follows. Section 2 introduces the language of basic CCS with prefix iteration, (BCCS)^{p∗}(A_{τ}), and its operational semantics. In that section we also give the definition of branching, η-, delay and weak congruence over open terms, and show that two open terms are related by any of those congruences iff all their closed instantiations are. Section 2 concludes with a study of several properties of the congruence relations we study that will be used in the remainder of the paper. The axiom systems that will be shown to completely characterize the aforementioned congruences over (BCCS)^{p∗}(A_{τ}) are analyzed in Section 3. Detailed proofs of the completeness of our axiom systems with respect to the relevant congruences over (BCCS)^{p∗}(A_{τ}) are presented in Section 4. The paper concludes with a brief comparison between the proof of completeness for weak congruence given in [3] and the one offered in this paper.

2 Basic CCS with Prefix Iteration

We assume a non-empty, countable set A of observable actions not containing the distinguished symbol τ. Following Milner [28], the symbol τ will be used to denote an internal, unobservable action of a system. We define A_{τ} =^{Δ} A ∪ {τ}, and use a, b to range over A and α, β, γ to range over A_{τ}. We also assume a countably infinite set of process variables Var, ranged over by x, y, z, that is disjoint from A_{τ}. The meta-variable ξ will stand for a typical member of the set A_{τ} ∪ Var.

The language of basic CCS with prefix iteration, denoted by BCCS^{p∗}(A_{τ}), is given by the following BNF grammar:

P ::= x | 0 | α.P | P + P | α^{∗}P

where x ∈ Var and α ∈ A_{τ}. The set of (open) terms over BCCS^{p∗}(A_{τ}) is denoted by (BCCS)^{p∗}(A_{τ}), and the set of closed terms, i.e., terms that do not contain occurrences of process variables, by T(BCCS)^{p∗}(A_{τ}). We shall use P, Q, R, S, T to range over (BCCS)^{p∗}(A_{τ}). In writing terms over the above syntax, we shall always assume that the operations α^{∗} and α. bind stronger than +. We shall use the symbol ≡ to stand for syntactic equality of terms. The set of process variables occurring in a term P will be written Var(P).

A (closed) substitution is a mapping from process variables to (closed) terms over BCCS^{p∗}(A_{τ}). For every term P and (closed) substitution σ, the (closed) term obtained by replacing every occurrence of a variable x in P with the (closed) term σ(x) will be written P σ. We shall use [x ↦ P] to stand for the substitution mapping x to P, and acting like the identity on all the other variables.

The operational semantics for the language BCCS^{p∗}(A_{τ}) is given by the labelled transition system [25, 31]

( (BCCS)^{p∗}(A_{τ}), {→^{ξ}| ξ ∈ A_{τ} ∪ Var})

where the transition relations →^{ξ} are the least subsets of (BCCS)^{p∗}(A_{τ})× (BCCS)^{p∗}(A_{τ}) satisfying the rules in Fig. 1. Intuitively, a transition P →^{α} Q (α ∈ A_{τ}) means that the system represented by the term P can perform the action α, thereby evolving into Q, whereas P →^{x} P′ means that the initial behaviour of P may depend on the term that is substituted for the process variable x. It is not hard to see that if P →^{x} P′ then P′ ≡ x.

\overline{x →^{x} x}  \overline{α.P →^{α} P}  \frac{P →^{ξ} P′}{P + Q →^{ξ} P′}  \frac{Q →^{ξ} Q′}{P + Q →^{ξ} Q′}

\overline{α^{∗}P →^{α} α^{∗}P}  \frac{P →^{ξ} P′}{α^{∗}P →^{ξ} P′}

Figure 1: Transition rules

The derived transition relations ⇒^{ε} and ⇒^{ξ} (ξ ∈ A_{τ} ∪ Var) are defined in the standard

way as follows: \begin{cases}⇒^{ε} & is the reflexive, transitive closure of →^{τ}, \\ P ⇒^{ξ} Q iff ∃P_{1}, P_{2} : P ⇒^{ε} P_{1} →^{ξ} P_{2} ⇒^{ε} Q . \end{cases}

Definition 2.1 The set der(P) of derivatives of P is the least set containing P that is closed under action-transitions. Formally, der(P) is the least set satisfying:

1. P ∈ der(P);

2. if Q ∈ der(P) and Q →^{α} Q′ for some α ∈ A_{τ}, then Q′ ∈ der(P).

The following basic fact can be easily shown by structural induction on terms:

Fact 2.2 For every P ∈ (BCCS)^{p∗}(A_{τ}), the set of derivatives of P is finite.

A fundamental semantic equivalence in the study of reactive systems is bisimulation equivalence [30, 28]. In this study, we shall consider four versions of this notion which, to different degrees, abstract away from invisible actions, viz. branching equivalence [19], ηequivalence [5], delay equivalence [27] and weak equivalence [28]. These we now proceed to define for the sake of completeness. The interested reader is referred to the aforementioned references and to [20, 29, 18] for discussion and motivation.

Definition 2.3 (Branching Equivalence) A binary relation B over (BCCS)^{p∗}(A_{τ}) is a branching bisimulation, or b-bisimulation for short, iff it is symmetric and, whenever P B Q, for all ξ ∈ A_{τ} ∪ Var,

if P →^{ξ} P′ then

• ξ = τ and P′ B Q, or

• Q ⇒^{ε} Q_{1} →^{ξ} Q_{2} ⇒^{ε} Q′ for some Q_{1}, Q_{2}, Q′ such that P B Q_{1}, P′ B Q_{2} and

P′ B Q′.

Two process terms P, Q are branching equivalent, denoted by P \underline{↔}_{b} Q, iff there exists a branching bisimulation B such that P B Q.

The notions of η-, delay, and weak bisimulation are obtained by relaxing (some of) the constraints imposed by branching bisimulation on the way that two processes can match each other’s behaviours. Compare the following definitions:

Definition 2.4 (η-, Delay and Weak Equivalence) The notion of η-bisimulation is defined just as a branching bisimulation above, but without the requirement P′ B Q_{2}. Two process terms P, Q are η-equivalent, denoted by P \underline{↔}_{η} Q, iff there exists an η-bisimulation B such that P B Q.

Likewise, a delay bisimulation, or d-bisimulation for short, is defined just as a branching bisimulation, but omitting the requirement P B Q_{1}. Two process terms P, Q are delay equivalent, denoted by P \underline{↔}_{d} Q, iff there exists a delay bisimulation B such that P B Q.

Finally, a weak bisimulation, or w-bisimulation, lacks both the requirements P B Q_{1} and P′ B Q_{2}, and two process terms P, Q are weakly equivalent, denoted by P \underline{↔}_{w} Q, iff there exists a weak bisimulation B such that P B Q.

Remark: It is easy to see that in the definitions of both branching and delay bisimulation the existence requirement of a term Q′ such that Q_{2} ⇒^{ε} Q′ and P′ B Q′ is redundant.

The notions of delay and weak equivalence were originally both introduced by Milner under the name of observation(al) equivalence.

Proposition 2.5 Each of the relations \underline{↔}_{ℵ} (ℵ ∈ \{b, η, d, w\}) is an equivalence relation and the largest ℵ-bisimulation. Furthermore, for all P, Q,

1. P \underline{↔}_{b} Q implies P \underline{↔}_{η} Q implies P \underline{↔}_{w} Q;

2. P \underline{↔}_{b} Q implies P \underline{↔}_{d} Q implies P \underline{↔}_{w} Q.

Proof: For ℵ ∈ {η, d, w}, the identity relation, the converse of a ℵ-bisimulation and the symmetric closure of the composition of two ℵ-bisimulations are all ℵ-bisimulations. Hence \underline{↔}_{ℵ} is an equivalence relation. This argument does not apply for ℵ = b because the symmetric closure of the composition of two b-bisimulations need not be a b-bisimulation, but in [7] it is shown that also \underline{↔}_{b} is an equivalence relation.

That \underline{↔}_{ℵ} is the largest ℵ-bisimulation (for ℵ ∈ \{b, η, d, w\}) follows immediately from the observation that the set of ℵ-bisimulations is closed under arbitrary unions. The implications hold by definition. □

The reader familiar with the literature on process theory might have noticed that, in the above definitions, we have departed from the standard approach followed in, e.g., [28] in that we have defined notions of bisimulation equivalence that apply to open terms directly. Indeed, with the exception of studies like [29, 18], bisimulation equivalences like those presented in Defs. 2.3–2.4 are usually defined for closed process expressions only, and are extended to open process expression thus (ℵ ∈ {b, η, d, w}):

P \underline{↔}_{ℵ} Q ⇔ P σ \underline{↔}_{ℵ} Qσ, for every closed substitution σ .

By the following result, first shown in [18] for branching bisimulation over basic CCS with recursion, both approaches yield the same equivalence relation over open terms in the language BCCS^{p∗}(A_{τ}).

Proposition 2.6 For all P, Q ∈ (BCCS)^{p∗}(A_{τ}) and ℵ ∈ {b, η, d, w},

P \underline{↔}_{ℵ} Q iff P σ \underline{↔}_{ℵ} Qσ for every closed substitution σ : Var → T(BCCS)^{p∗}(A_{τ}).

Proof: In the proof of this result, we shall make use of the following, easily established, facts, which relate the transitions of a term P σ to those of P and those of the terms σ(x):

1. If P →^{α} P′, then P σ →^{α} P′σ.

2. If P →^{x} x and σ(x) →^{ξ} Q, then P σ →^{ξ} Q.

3. If P σ →^{ξ} Q, then either

(a) ξ ∈ A_{τ} and there exists a P′ such that P →^{ξ} P′ and Q ≡ P′σ, or

(b) there exists an x ∈ Var such that P →^{x} x and σ(x) →^{ξ} Q.

We now prove the two implications in the statement of the proposition separately.

• ‘Only If Implication’. Assume that P \underline{↔}_{ℵ} Q (ℵ ∈ \{b, η, d, w\}). We shall show that P σ \underline{↔}_{ℵ} Qσ for every closed substitution σ : Var → T(BCCS)^{p∗}(A_{τ}). To this end, it is sufficient to prove that the relation:

B_{ℵ} =^{Δ} \{(Sσ, T σ) | S \underline{↔}_{ℵ} T, σ a closed substitution\}

is a ℵ-bisimulation. This is straightforward using facts 1–3 above.

• ‘If Implication’. Let ℵ ∈ \{b, η, d, w\}. Assume that P σ \underline{↔}_{ℵ} Qσ for every closed substitution σ. We shall show that P \underline{↔}_{ℵ} Q holds. This we prove by induction on the number of variables occurring in P or Q, i.e., on the cardinality of Var(P) ∪ Var(Q).

– Basis: Var(P) ∪ Var(Q) = ∅. In this case, P and Q are closed terms, and the claim follows immediately.

– Inductive Step: Var(P) ∪ Var(Q) ≠ ∅. Choose a variable x in Var(P) ∪ Var(Q). As the set of observable actions A is non-empty, we can pick a ∈ A. It is easy to see that, for positive integers n, m,

a^{n}.0\underline{↔}_{ℵ} a^{m}.0 ⇔ n = m .

By Fact 2.2, der(P) ∪ der(Q) is a finite set of process terms. Therefore it is possible to choose a positive integer n such that, for every R ∈ der(P) ∪ der(Q),

a^{n}.0 \underline{↮}_{ℵ} R .  (1)

Note that the above inequality implies that, for every R ∈ der(P) ∪ der(Q),

a^{n}.0 \underline{↮}_{ℵ} R[x ↦ a^{n+1}.0] .  (2)

This is immediate by (1) if x does not occur in R. Otherwise, x occurs in R, and it is not hard to see that R[x ↦ a^{n+1}.0] can perform a sequence of transitions leading to 0 that has a suffix consisting of at least n + 1 a-transitions, whereas a^{n}.0 cannot. Now, note that, for every closed substitution σ,

(P [x ↦ a^{n+1}.0])σ \underline{↔}_{ℵ} (Q[x ↦ a^{n+1}.0])σ .  (3)

As the set of variables occurring in P [x ↦ a^{n+1}.0] or Q[x ↦ a^{n+1}.0] is strictly contained in Var(P) ∪ Var(Q), we may apply the inductive hypothesis to (3) to infer that:

P [x ↦ a^{n+1}.0] \underline{↔}_{ℵ} Q[x ↦ a^{n+1}.0] .  (4)

We prove that this implies P \underline{↔}_{ℵ} Q, as required. To this end, in view of (4), it is sufficient to show that the symmetric closure of the relation

B_{ℵ} =^{Δ} \{(S, T) | (S, T) ∈ der(P) × der(Q) and S[x ↦ a^{n+1}.0]\underline{↔}_{ℵ} T [x ↦ a^{n+1}.0]\}

is a ℵ-bisimulation. The details of this verification are straightforward, using facts 1–3 above and (2). In particular, condition (2) ensures that whenever S B_{ℵ} T and

S →^{x} x, then T ⇒^{x} x.

This completes the proof of the inductive step, and thereby of the ‘if’ implication.

The proof of the proposition is now complete. □

Remark: The reader may have noticed that the ‘if’ implication in the above statement would not hold if the set of observable actions A were empty. In fact, in that, admittedly uninteresting, case, the universal relation over T(BCCS)^{p∗}(A_{τ}) would be a branching bisimulation. This would imply, for instance, that, for every closed substitution σ and variables x, y,

xσ \underline{↔}_{b} yσ .

On the other hand, x is not branching equivalent to y.

For the standard reasons explained at length in, e.g., Milner’s textbook [28], none of the aforementioned equivalences is a congruence with respect to the summation operation. In fact, it is also the case that none of the aforementioned equivalences is preserved by the prefix iteration operation. As a simple example of this phenomenon, consider the terms b.0 and τ.b.0. As it is well-known, b.0\underline{↔}_{ℵ} τ.b.0 (ℵ ∈ \{b, η, d, w\}); however, it is not difficult to check that a^{∗}(b.0)\underline{↮}_{ℵ} a^{∗}(τ.b.0). Following Milner [28], the solution to these congruence problems is by now standard; it is sufficient to consider, for each equivalence \underline{↔}_{ℵ}, the largest congruence over (BCCS)^{p∗}(A_{τ}) contained in it. We now proceed to characterize the resulting congruences explicitly.

Definition 2.7 We say that:

• P and Q are branching congruent, written P \underline{↔}_{b}^{c} Q, iff for all ξ ∈ A_{τ} ∪ Var,

1. if P →^{ξ} P′, then Q →^{ξ} Q′ for some Q′ such that P′ \underline{↔}_{b} Q′;

2. if Q →^{ξ} Q′, then P →^{ξ} P′ for some P′ such that P′ \underline{↔}_{b} Q′.

• P and Q are η-congruent, written P \underline{↔}_{η}^{c} Q, iff for all ξ ∈ A_{τ} ∪ Var,

1. if P →^{ξ} P′, then Q →^{ξ} Q_{1} ⇒^{ε} Q′ for some Q_{1}, Q′ such that P′ \underline{↔}_{η} Q′;

2. if Q →^{ξ} Q′, then P →^{ξ} P_{1} ⇒^{ε} P′ for some P_{1}, P′ such that P′ \underline{↔}_{η} Q′.

• P and Q are delay congruent, written P \underline{↔}_{d}^{c} Q, iff for all ξ ∈ A_{τ} ∪ Var,

1. if P →^{ξ} P′, then Q ⇒^{ε} Q_{1} →^{ξ} Q′ for some Q_{1}, Q′ such that P′ \underline{↔}_{d} Q′;

2. if Q →^{ξ} Q′, then P ⇒^{ε} P_{1} →^{ξ} P′ for some P_{1}, P′ such that P′ \underline{↔}_{d} Q′.

• P and Q are weakly congruent, written P \underline{↔}_{w}^{c} Q, iff for all ξ ∈ A_{τ} ∪ Var,

1. if P →^{ξ} P′, then Q ⇒^{ξ} Q′ for some Q′ such that P′ \underline{↔}_{w} Q′;

2. if Q →^{ξ} Q′, then P ⇒^{ξ} P′ for some P′ such that P′ \underline{↔}_{w} Q′.

Proposition 2.8 For every ℵ ∈ \{b, η, d, w\}, the relation \underline{↔}_{ℵ}^{c} is the largest congruence over (BCCS)^{p∗}(A_{τ}) contained in \underline{↔}_{ℵ}.

Proof: It is straightforward to check that \underline{↔}_{ℵ}^{c} is an equivalence relation for ℵ ∈ \{b, η, d, w\}, using that this is the case for \underline{↔}_{ℵ}. Moreover, it is trivial to see that \underline{↔}_{ℵ}^{c} is included in \underline{↔}_{ℵ}.

That \underline{↔}_{ℵ}^{c} is a congruence relation over (BCCS)^{p∗}(A_{τ}) follows easily from Definition 2.7, using that the relation

\{(α^{∗}P, α^{∗}Q) | α ∈ A_{τ} , P \underline{↔}_{ℵ}^{c} Q\} ∪ \underline{↔}_{ℵ}

is a ℵ-bisimulation. Here it is essential that, unlike \underline{↔}_{ℵ}, the relations \underline{↔}_{ℵ}^{c} require that an initial τ-transition in a process cannot be matched by the other staying idle.

To see that \underline{↔}_{ℵ}^{c} is indeed the largest congruence relation over (BCCS)^{p∗}(A_{τ}) contained \underline{↔}_{ℵ}, assume that =_{ℵ} is another relation with these properties and that P =_{ℵ} Q. We show that P \underline{↔}_{ℵ}^{c} Q holds.

As A is non-empty, we can pick an action a ∈ A. By Fact 2.2, der(P) ∪ der(Q) is a finite set of process terms. Therefore it is possible to choose a positive integer n such that, for every R ∈ der(P) ∪ der(Q),

a^{n}.0 \underline{↮}_{ℵ} R .

As P =_{ℵ} Q and =_{ℵ} is a congruence relation contained in \underline{↔}_{ℵ}, it follows that P + a^{n+1}.0 \underline{↔}_{ℵ} Q + a^{n+1}.0. For every ℵ ∈ \{b, η, d, w\}, this implies that P \underline{↔}_{ℵ}^{c} Q. Consider, for instance,

the case ℵ = b. Let P →^{ξ} P′ for some ξ ∈ A_{τ} ∪ Var. As P′ \underline{↮}_{ℵ} Q + a^{n+1}.0, it must be that

Q + a^{n+1}.0 ⇒^{ε} Q_{1} →^{ξ} Q′ with P + a^{n+1}.0\underline{↔}_{b} Q_{1} and P′ \underline{↔}_{b} Q′. Moreover, as P + a^{n+1}.0 cannot be

branching equivalent to a derivative of Q, it follows that Q_{1} ≡ Q + a^{n+1}.0. Finally P′ \underline{↮}_{ℵ} a^{n}.0,

so Q →^{ξ} Q′, even when ξ = a. By symmetry, it follows that P \underline{↔}_{b}^{c} Q, which was to be shown. □

Remark: Again, note that, if the set of observable actions A were empty, then the relations \underline{↔}_{ℵ}^{c} (ℵ ∈ \{b, η, d, w\}) would not be the largest congruences contained in \underline{↔}_{ℵ} over (BCCS)^{p∗}(A_{τ}). In fact, in that case, \underline{↔}_{ℵ} itself would be a congruence, and it is easy to see that, e.g., τ.0\underline{↔}_{ℵ} 0, but τ.0\underline{↮}_{ℵ}^{c} 0.

Remark: Bloom [10] has formulated the ‘RWB cool’ and ‘RBB cool’ formats for transition rules, which ensure that the relations \underline{↔}_{w}^{c} and \underline{↔}_{b}^{c}, respectively, are congruences.

Although both \underline{↔}_{w}^{c} and \underline{↔}_{b}^{c} are congruences for (BCCS)^{p∗}(A_{τ}), the transition rules for BCCS^{p∗}(A_{τ}) do not fit the RWB and RBB cool formats. In particular, Bloom’s formats require that operators for which weak or branching equivalence is not a congruence are not to occur in the right-hand sides of conclusions of transition rules. However, we already remarked that weak and branching equivalence are not congruences for prefix iteration, but this operator does occur at the right-hand side of the transition rule a^{∗}P →^{a} a^{∗}P.

Hence, we obtain a positive answer to the fourth open question at the end of [10], namely whether there exist transition rules outside the RWB and RBB cool formats which define ‘interesting’ operators for which \underline{↔}_{w}^{c} and \underline{↔}_{b}^{c} are congruences.

The following result is the counter-part of Propn. 2.6 for the aforementioned congruence relations.

Proposition 2.9 For P, Q ∈ (BCCS)^{p∗}(A_{τ}) and ℵ ∈ {b, η, d, w},

P \underline{↔}_{ℵ}^{c} Q iff P σ \underline{↔}_{ℵ}^{c} Qσ for every closed substitution σ.

Proof: A straightforward modification of the proof of Propn. 2.6. □

We end this section with two lemmas that will be of use in the completeness proof for branching congruence. (Cf. the proof of Propn. 4.3.) The first of these lemmas is a standard result for branching bisimulation equivalence, whose proof may be found in [20, 14].

Lemma 2.10 (Stuttering Lemma) If P_{0} →^{τ} ⋯ →^{τ} P_{n} and P_{n} \underline{↔}_{b} P_{0}, then P_{i} \underline{↔}_{b} P_{0} for i = 1, ..., n − 1.

The following result about the expressiveness of the language (BCCS)^{p∗}(A_{τ}) stems from [3].

Lemma 2.11 Let a, b ∈ A. If a^{∗}P \underline{↔}_{ℵ} b^{∗}Q (ℵ ∈ \{b, η, d, w\}), then a = b.

Proof: In light of Propn. 2.5, it is sufficient to deal with the case ℵ = w. Let a^{∗}P \underline{↔}_{w} b^{∗}Q. Then there exist terms P′, Q′ such that:

• a^{∗}P ⇒^{b} P′ \underline{↔}_{w} b^{∗}Q, and

• b^{∗}Q ⇒^{a} Q′ \underline{↔}_{w} a^{∗}P.

This implies that a^{∗}P and b^{∗}Q both exhibit, for example, an infinite sequence where a and b alternate, i.e., ⇒^{a}⇒^{b}⇒^{a}⇒^{b} · · ·. Thus, this lemma is an immediate consequence of the following fact.

• If P_{n} ⇒^{a_{n}} P_{n+1} for n = 0, 1, 2, ..., then there is an N such that a_{n} = a_{N} for n > N.

The proof of this fact is an easy exercise by structural induction on terms, which is left to the reader. □

3 Axiom Systems

The main aim of this study is to provide complete equational axiomatizations for branching, η-, delay, and weak congruence over the language (BCCS)^{p∗}(A_{τ}). In this section, we present the axiom systems that will be shown to completely characterize these congruence relations over (BCCS)^{p∗}(A_{τ}), and prove their soundness. We also present a proposition on the inter-derivability of these axiom systems that will be useful in the proofs of the promised completeness theorems, and address the issue of the irredundancy of the axiom systems.

3.1 The axioms

Table 1 presents the axiom system F, which was shown in [15] to characterize strong bisimulation over T(BCCS)^{p∗}(A). In addition to the axioms in F, the axiom systems E_{ℵ} (ℵ ∈ {b, η, d, w}) include equations which express the unobservable nature of the τ action. These equations may be found in Tables 2–5; they reflect the different ways in which the congruences we consider abstract away from internal computations in process

A1  x + y = y + x
A2 (x + y) + z = x + (y + z)
A3  x + x = x
A4  x + 0 = x
PA1 a.(a^{∗}x) + x = a^{∗}x
PA2  a^{∗}(a^{∗}x) = a^{∗}x

Table 1: The axiom system F

\begin{aligned}B1 & α.(τ.(x + y) + x) & = & α.(x + y) \\ PB1 & τ^{∗}x & = & τ.x + x \\ PB2 & τ.a^{∗}(τ.a^{∗}(x + y) + x) & = & τ.a^{∗}(x + y) \end{aligned}

Table 2: Axioms for E_{b} and for E_{η}

behaviours. The axiom system E_{b} is obtained by adding the axioms presented in Table 2 to F, and E_{η} extends E_{b} with the equations in Table 4. The set of axioms E_{d} includes the equations in F and those in Table 3. Finally, E_{w} extends E_{d} with the laws in Table 5.

The law B1 and the equations T1-3, AT3 are standard characterizations of the silent action τ in branching and weak congruence, respectively. (Note that AT3 is the instance of T3 with α ∈ A. We distinguish the laws T3 and AT3 in order to obtain an irredundant axiom system for weak congruence. Cf. Propn. 3.4 and the subsequent remark for more details.) The origins of the five remaining axioms, which describe the interplay between τ and prefix iteration, are as follows. The equations PB1 and PB2 stem from [16], where a complete axiomatization for branching congruence over closed terms in the language BPA [9] with prefix iteration was presented. (For the sake of precision, we remark here

\begin{aligned}T1 & α.τ.x & = & α.x \\ T2 & τ.x & = & τ.x + x \\ PT1 & τ^{∗}x & = & τ.x \\ PT2 & τ.(a^{∗}x) & = & a^{∗}(τ.(a^{∗}x)) \end{aligned}

Table 3: Axioms for E_{d} and for E_{w}

\begin{aligned}T3 & α.(x + τ.y) & = & α.(x + τ.y) + α.y \\ PT3 & a^{∗}(x + τ.y) & = & a^{∗}(x + τ.y + a.y) \end{aligned}

Table 4: Extra axioms for E_{η}

\begin{aligned}AT3 & a.(x + τ.y) & = & a.(x + τ.y) + a.y \\ PT3 & a^{∗}(x + τ.y) & = & a^{∗}(x + τ.y + a.y) \end{aligned}

Table 5: Extra axioms for E_{w}

that equation PB2 was formulated in [16] thus:

a.a^{∗}(τ.a^{∗}(x + y) + x) = a.a^{∗}(x + y) .

The two versions of equation PB2 are easily shown to be inter-derivable; each of them proves their common generalization

PB2′ γ.a^{∗}(τ.a^{∗}(x + y) + x) = γ.a^{∗}(x + y)

for γ ∈ A_{τ}, using laws A1, A2, A4, PA1 and B1.) The equation PT1 was introduced in [8] under the name of (FIR_{1}) (Fair Iteration Rule). In [8] it was also noted that this law is an equational formulation of Koomen’s Fair Abstraction Rule [4]. (To be precise, Koomen’s Fair Abstraction Rule is a general name for a family of proof rules KFAR_{n}, n ≥ 1. PT1 corresponds to KFAR_{1}.) The laws PT2 and PT3 originate from [3], where the axiom system E_{w} was shown to be complete for weak congruence over T(BCCS)^{p∗}(A_{τ}), and ω-complete in the presence of a denumerable set of observable actions A.

Note that each of the axiom systems E_{ℵ} (ℵ ∈ {b, η, d, w}) is finite if so is the set of actions A.

Notation 3.1 For an axiom system T , we write T ⊢ P = Q iff the equation P = Q is provable from the axiom system T using the rules of equational logic. For axiom systems T , T′, we write T ⊢ T′ iff T ⊢ P = Q for every equation (P = Q) ∈ T′. For a collection of equations X over the signature of BCCS^{p∗}(A_{τ}), we write P =^{X} Q as a short-hand for A1,A2,X ⊢ P = Q.

For I = {i_{1}, …, i_{n}} a finite index set, we write ∑_{i∈I} P_{i} or ∑ {P_{i} | i ∈ I} for P_{i_{1}} + ⋯ + P_{i_{n}}. By convention, ∑_{i∈∅} P_{i} stands for 0.

We establish the soundness of the axiom systems.

Proposition 3.2 Let ℵ ∈ \{b, η, d, w\}. If E_{ℵ} ⊢ P = Q, then P \underline{↔}_{ℵ}^{c} Q.

Proof: As \underline{↔}_{ℵ}^{c} (ℵ ∈ \{b, η, d, w\}) is a congruence, it is sufficient to show that each equation in E_{ℵ} is sound with respect to it. The equations in the axiom system F are known to be sound with respect to strong bisimulation equivalence over (BCCS)^{p∗}(A_{τ}); therefore they are, a fortiori, sound with respect to each of the congruences we consider. The soundness of the axioms B1, T1-3 and AT3 is well-known, and that of PB1-2 and PT1-3 is easy to check. □

3.2 Expressiveness of the axiom systems

For use in the promised completeness theorems, we now study the relative expressive power of the axiom systems.

Proposition 3.3 E_{w} ⊢ E_{d} ⊢ E_{b} and E_{w} ⊢ E_{η} ⊢ E_{b}.

Proof: Since E_{w} incorporates E_{d}, and E_{η} incorporates E_{b}, the statements E_{w} ⊢ E_{d} and E_{η} ⊢ E_{b} are trivially true. In order to prove the remaining two statements, E_{d} ⊢ E_{b} and E_{w} ⊢ E_{η}, it suffices to show that the three axioms in Table 2 and the instance of T3 for α = τ are derivable from E_{d}. First of all, note that

τ.(x + y) =^{A3,T2} τ.(x + y) + x .  (5)

The derivability of the instance of T3 with α = τ from E_{d} follows immediately by observing that, modulo commutativity of +, that equality is a substitution instance of (5). In deriving the laws in Table 2 from E_{d}, we shall make use of the following derived equation:

a^{∗}x + x =^{A3,PA1} a^{∗}x .  (6)

The derivation of the three axioms in Table 2 from E_{d} now proceeds as follows:

B1 α.(τ.(x + y) + x) =^{(5)} α.τ.(x + y) =^{T1} α.(x + y) . PB1 τ^{∗}x =^{PT1} τ.x =^{T2} τ.x + x . PB2 τ.a^{∗}(τ.a^{∗}(x + y) + x) =^{(6)} τ.a^{∗}(τ.(a^{∗}(x + y) + x + y) + x) =^{(5)} τ.a^{∗}(τ.(a^{∗}(x + y) + x + y)) =^{(6)} τ.a^{∗}(τ.a^{∗}(x + y)) =^{PT2} τ.(τ.a^{∗}(x + y)) =^{T1} τ.a^{∗}(x + y) . □

3.3 Irredundancy of the axiom systems

A collection T of equations is said to be irredundant [33, Page 389] iff for every proper subset T′ of T there exists an equation which is derivable from T , but not from T′.

Experience has shown that axiom systems can contain redundancies; in the field of equational axiomatizations of behavioural congruences this happens for instance in [18]. Therefore, we find it interesting to conclude this section by addressing the issue of the irredundancy of the axiom systems E_{ℵ} (ℵ ∈ {b, η, d, w}).

Proposition 3.4 For each ℵ ∈ {b, η, d, w}, the axiom system E_{ℵ} is irredundant.

Proof: To show the irredundancy of the axiom system E_{ℵ} (ℵ ∈ {b, η, d, w}), it is sufficient to prove that, for every axiom (P = Q) ∈ E_{ℵ},

E_{ℵ} \ {P = Q} ⊬ P = Q .  (7)

The standard proof strategy to establish this kind of result is to find a model for the axiom system E_{ℵ} \ {P = Q} in which the equation P = Q is not valid. As the axiom systems E_{b} and E_{d} are contained in E_{η} and E_{w}, respectively, it is sufficient to show (7) for E_{η} and E_{w}. In what follows, we limit ourselves to the proofs for the axioms PTn (n = 1, 2, 3) and PBn (n = 1, 2). We present the model explicitly only for axioms PT2, PB2 and PT3. For axioms PT1 and PB1 we merely give the intuition underlying the construction of an appropriate model. The reader will not have too much trouble in finding models which capture this intuition.

Axioms PT1 and PB1. Intuitively, the reason why equations PT1 and PB1 are not derivable from the axiom systems E_{w} \ {PT1} and E_{η} \ {PB1}, respectively, is that PT1 and PB1 are the only equations that can be used to completely eliminate occurrences of the operation τ^{∗} from terms.

Axioms PT2 and PB2. These axioms can actually be regarded as axiom schemes, in the sense that there is one axiom for each choice of an action a ∈ A. Call these instantiations PT2(a) and PT3(a). We now show that for all a ∈ A

E_{w} \ {PT2(a)} ⊬ PT2(a) and E_{b} \ {PB2(a)} ⊬ PB2(a) .

Let a ∈ A. We say that a term P is stable iff P →^{τ} P′ for no P′. A term whose sub-terms of the form a^{∗}P′ are stable is said to be a^{∗}-stable. Intuitively, the reason why PT2(a) and PB2(a) cannot be derived from the other equations is that PT2(a) and PB2(a) are the only axioms in E_{w} and E_{η}, respectively, that can be used to equate an a^{∗}-stable term to one that is not. Formally, define a denotational semantics for (BCCS)^{p∗}(A_{τ}) in the domain 2{0, 1} by:

[ ; [x] ; ]ρ = ρ(x)
[ [0] ]ρ = ∅
[ ; [τ.P] ; ]ρ = [ ; [P] ; ]ρ ∪ {1}
[ ; [b.P] ; ]ρ = [ ; [P] ; ]ρ \ {1}  for b ∈ A
[ ; [P + Q] ; ]ρ = [ ; [P] ; ]ρ ∪ [ ; [Q] ; ]ρ
[[τ^{∗}P]]ρ = [ ; [P] ; ]ρ ∪ {1}
[[b^{∗}P]]ρ = \{ \begin{matrix}[ ; [P] ; ]ρ ∪ \{0\} & if b = a ∧ 1 ∈ [ ; [P] ; ]ρ \\ [ ; [P] ; ]ρ & otherwise \end{matrix}

where ρ : Var → 2{0, 1}. Here 1 ∉ [ ; [P] ; ]ρ denotes stability and 0 ∉ [ ; [P] ; ]ρ denotes a^{∗}-stability. It is now simple to check that this is a model for both the axiom systems E_{w} \ {PT2(a)} and E_{η} \ {PB2(a)}. However, letting ρ_{∅} map each variable in Var to ∅,

[[τ.(a^{∗}x)]]ρ_{∅} = {1} ≠ {0, 1} = [[a^{∗}(τ.(a^{∗}x))]]ρ_{∅}

and

[[τ.a^{∗}(τ.a^{∗}(x + y) + x)]]ρ_{∅} = {0, 1} ≠ {1} = [[τ.a^{∗}(x + y)]]ρ_{∅} .

Therefore the above is neither a model of E_{w} nor one of E_{η}.

Axiom PT3. Again we consider the instantiations PT3(a) and show E_{w} \ {PT3(a)} ⊬ PT3(a). We say that a term P is a-stable iff P ⇒^{a} P′ for no P′. Intuitively, the reason why PT3(a) cannot be derived from the other equations is that PT3(a) is the only axiom in E_{w} that can be used to equate a term P with a sub-term of the form a^{∗}P′ such that P′ is a-stable to a term Q that does not have this property. Formally, define a denotational semantics for (BCCS)^{p∗}(A_{τ}) in the domain 2{0, 1} by:

[ ; [x] ; ]ρ = ρ(x)
[ [0] ]ρ = ∅
[ ; [τ.P] ; ]ρ = [ ; [P] ; ]ρ
[ ; [a.P] ; ]ρ = [ ; [P] ; ]ρ ∪ {1}
[ ; [b.P] ; ]ρ = [ ; [P] ; ]ρ \ {1}  for b ≠ a
[ ; [P + Q] ; ]ρ = [ ; [P] ; ]ρ ∪ [ ; [Q] ; ]ρ
[[α^{∗}P]]ρ = [ ; [P] ; ]ρ  for α ≠ a
[[a^{∗}P]]ρ = \{ \begin{matrix}\{0, 1\} & if 1 ∉ [ ; [P] ; ]ρ \\ [ ; [P] ; ]ρ & otherwise \end{matrix}

where ρ : Var → 2{0, 1}. Here 1 ∉ [ ; [P] ; ]ρ denotes a-stability and 0 ∈ [ ; [P] ; ]ρ denotes the property of having a subterm a^{∗}P′ with P′ a-stable. It is now simple to check that this is a model for the axiom system E_{w} \ {PT3(a)}. However, letting ρ_{∅} map each variable in Var to ∅,

[[a^{∗}(x + τ.y)]]ρ_{∅} = {0, 1} ≠ {1} = [[a^{∗}(x + τ.y + a.y)]]ρ_{∅}

and so the above is not a model of E_{w}. □

Remark: In light of (5), the instance of axiom T3 with α = τ is derivable from the axiom system E_{d}, and, a fortiori, from E_{w}. Thus defining the axioms for weak congruence to include T3 in lieu of AT3 would lead to a redundant axiomatization, like those presented in, e.g., [24, 29].

4 Completeness

This section is entirely devoted to detailed proofs of the completeness of the axiom systems E_{ℵ} (ℵ ∈ \{b, η, d, w\}) with respect to \underline{↔}_{ℵ}^{c} over the language of open terms (BCCS)^{p∗}(A_{τ}). A common and, we believe, aesthetically pleasing feature of our completeness proofs for the behavioural congruences \underline{↔}_{ℵ}^{c} (ℵ ∈ \{η, d, w\}) is that they are derived in uniform fashion from the corresponding results for branching congruence. Moreover, we shall also argue that the proof of completeness for weak congruence via reduction to the completeness result for branching congruence is considerably shorter than the only direct proof of this result presented in the literature. (Cf. the reference [3].)

Because of the prominent rôle played by the completeness theorem for branching congruence in the developments to follow, we begin by presenting our proof of this result. We remark here that the completeness of the theory E_{b} with respect to \underline{↔}_{b}^{c} over the language of closed terms T(BCCS)^{p∗}(A_{τ}) was first shown in [16]. The proof presented below is, however, new, and yields the completeness of the axiom system E_{b} for the whole of the language (BCCS)^{p∗}(A_{τ}). Moreover it may be argued that, even when restricted to the language of closed terms, our proof improves on the one offered in the aforementioned reference in that, unlike that proof, it does not rely on the completeness result for strong bisimulation from [15].

4.1 Completeness for branching congruence

We aim at identifying a subset of process terms of a special form, which will be convenient in the proof of the completeness result for branching congruence. Following a long-established tradition in the literature on process theory, we shall refer to these terms as normal forms. The set of normal forms we are after is the smallest subset of (BCCS)^{p∗}(A_{τ}) including process terms having one of the following two forms:

∑_{i∈I} α_{i}.P_{i} + ∑_{j∈J} x_{j} or a^{∗}(∑_{i∈I} α_{i}.P_{i} + ∑_{j∈J} x_{j}),

where the terms P_{i} are themselves normal forms, and I, J are finite index sets. (Recall that the empty sum represents 0.)

Lemma 4.1 Each term in (BCCS)^{p∗}(A_{τ}) can be proven equal to a normal form using equations A4, PA1 and PB1.

Proof: A straightforward induction on the structure of process terms. □

Notation 4.2 P =_{AC} Q denotes that P and Q are equal modulo associativity and commutativity of +, i.e., that A1,A2 ⊢ P = Q.

The following result is the key to the completeness theorem for branching congruence.

Proposition 4.3 For all P, Q ∈ (BCCS)^{p∗}(A_{τ}), if P \underline{↔}_{b} Q, then, for all γ ∈ A_{τ}, E_{b} ⊢ γ.P = γ.Q.

Proof: First of all, note that, as the equations in E_{b} are sound with respect to \underline{↔}_{b}^{c}, and, a fortiori, for \underline{↔}_{b}, by Lem. 4.1 it is sufficient to prove that the statement of the proposition holds for branching equivalent normal forms P and Q.

So, let us assume that P and Q be branching equivalent normal forms. We prove that E_{b} ⊢ γ.P = γ.Q for all γ ∈ A_{τ}, by complete induction on the sum of the sizes of P and Q. Recall that normal forms can take the following two forms:

∑_{i} α_{i}.P_{i} + ∑_{j} x_{j} or a^{∗}(∑_{i} α_{i}.P_{i} + ∑_{j} x_{j}),

where the P_{i}s are themselves normal forms. So, in particular, P and Q have one of these forms. By symmetry, it is sufficient to deal with the following three cases:

1. P =_{AC} ∑_{i} α_{i}.P_{i} + ∑_{k} x_{k} and Q =_{AC} ∑_{j} β_{j}.Q_{j} + ∑_{l} y_{l};

2. P =_{AC} a^{∗}(∑_{i} α_{i}.P_{i} + ∑_{k} x_{k}) and Q =_{AC} b^{∗}(∑_{j} β_{j}.Q_{j} + ∑_{l} y_{l}); and

3. P =_{AC} ∑_{i} α_{i}.P_{i} + ∑_{k} x_{k} and Q =_{AC} a^{∗}(∑_{j} β_{j}.Q_{j} + ∑_{l} y_{l}).

We treat these three cases separately.

1. Case: P =_{AC} ∑_{i} α_{i}.P_{i} + ∑_{k} x_{k} and Q =_{AC} ∑_{j} β_{j}.Q_{j} + ∑_{l} y_{l}. Consider the following two conditions:

A. α_{i} = τ and P_{i} \underline{↔}_{b} Q for some i; B. β_{j} = τ and Q_{j} \underline{↔}_{b} P for some j.

We distinguish three sub-cases in the proof, depending on which of the above conditions hold.

I Suppose that neither A nor B holds. Then, as P \underline{↔}_{b} Q, each transition P →^{ξ} P′ must

be matched by a transition Q →^{ξ} Q′ with P′ \underline{↔}_{b} Q′. Hence, each summand α_{i}.P_{i} of P matches with a summand β_{j}.Q_{j} of Q, in the sense that α_{i} = β_{j} and P_{i} \underline{↔}_{b} Q_{j}. For each such pair of related summands, induction yields

E_{b} ⊢ α_{i}.P_{i} = α_{i}.Q_{j} = β_{j}.Q_{j} .

Moreover, each summand x_{k} of P must be a summand of Q. Hence, possibly using axiom A3, it follows that E_{b} ⊢ P + Q = Q. By symmetry, we infer that E_{b} ⊢ P = P + Q = Q. The fact that E_{b} ⊢ γ.P = γ.Q for all γ ∈ A_{τ} is now immediate.

II Suppose that both of A and B hold. In this case, there exist i and j such that α_{i} = β_{j} = τ and P_{i} \underline{↔}_{b} Q \underline{↔}_{b} P \underline{↔}_{b} Q_{j}. Applying the inductive hypothesis to the equivalences P \underline{↔}_{b} Q_{j}, P_{i} \underline{↔}_{b} Q_{j} and P_{i} \underline{↔}_{b} Q, we infer that, for all γ ∈ A_{τ},

E_{b} ⊢ γ.P = γ.Q_{j} = γ.P_{i} = γ.Q

and the inductive step follows.

III Suppose that only one of A and B holds. In the remainder of the proof for this case, we shall assume, without loss of generality, that only A holds. For every summand τ.P_{i} of P with P_{i} \underline{↔}_{b} Q we obtain, by induction, that

E_{b} ⊢ τ.P_{i} = τ.Q .

Hence, as A holds, by possibly using axioms A3 and/or A4 we infer that

E_{b} ⊢ P = τ.Q + S

where S =_{AC} ∑ \{α_{i}.P_{i} | α_{i} ≠ τ or P_{i} \underline{↮}_{b} Q\} + ∑_{k} x_{k}. Consider now a summand α_{i}.P_{i} of S. As condition B does not hold and P \underline{↔}_{b} Q, using Lem. 2.10 it is not hard to see that there must exist a summand β_{j_{i}}.Q_{j_{i}} of Q such that α_{i} = β_{j_{i}} and P_{i} \underline{↔}_{b} Q_{j_{i}}. By a similar reasoning, we infer that each one of the variables x_{k} must be a summand of Q. For related summands α_{i}.P_{i} and β_{j_{i}}.Q_{j_{i}} of S and Q, respectively, induction yields

E_{b} ⊢ α_{i}.P_{i} = β_{j_{i}}.Q_{j_{i}} .

It follows that E_{b} ⊢ Q = R + S, where

R =_{AC} ∑ {β_{j}.Q_{j} | j ≠ j_{i} for all i} + ∑ {y_{l} | y_{l} ≠ x_{k} for all k} .

Now, for every γ ∈ A_{τ},

E_{b} ⊢ γ.P = γ.(τ.Q + S) = γ.(τ.(R + S) + S) =^{B1} γ.(R + S) = γ.Q

and the inductive step follows.

2. Case: P =_{AC} a^{∗}(∑_{i} α_{i}.P_{i} + ∑_{k} x_{k}) and Q =_{AC} b^{∗}(∑_{j} β_{j}.Q_{j} + ∑_{l} y_{l}). First of all, note that, by Lem. 2.11, it must be the case that a = b. Consider the following two conditions:

A. α_{i} ∈ \{τ, a\} and P_{i} \underline{↔}_{b} Q for some i;

B. β_{j} ∈ \{τ, a\} and Q_{j} \underline{↔}_{b} P for some j.

We distinguish three sub-cases in the proof, depending on which of the above conditions hold.

I Suppose that neither A nor B holds. Then it is easy to see that

∑_{i} α_{i}.P_{i} + ∑_{k} x_{k} \underline{↔}_{b} ∑_{j} β_{j}.Q_{j} + ∑_{l} y_{l}

holds. As these two terms are normal forms whose combined size is smaller that that of P and Q, we may reason exactly as in the previous case 1.I to obtain that E_{b} ⊢ ∑_{i} α_{i}.P_{i} + ∑_{k} x_{k} = ∑_{j} β_{j}.Q_{j} + ∑_{l} y_{l}. Hence E_{b} ⊢ P = Q, and the inductive step follows immediately.

II Suppose that both A and B hold. Then, as in case 1.II above, there exist i and j such that P_{i} \underline{↔}_{b} Q\underline{↔}_{b} P \underline{↔}_{b} Q_{j}. Applying the inductive hypothesis to the equivalences P \underline{↔}_{b} Q_{j}, P_{i} \underline{↔}_{b} Q_{j} and P_{i} \underline{↔}_{b} Q, we infer that, for all γ ∈ A_{τ},

E_{b} ⊢ γ.P = γ.Q_{j} = γ.P_{i} = γ.Q

and the inductive step follows.

III Suppose that only one of A and B holds. In the remainder of the proof for this case, we shall assume, without loss of generality, that only A holds. We distinguish three further sub-cases.

IIIa Suppose that A holds for some indices i_{1}, i_{2} with α_{i_{1}} = τ and α_{i_{2}} = a. For every i with α_{i} ∈ \{τ, a\} and P_{i} \underline{↔}_{b} Q, induction yields E_{b} ⊢ α_{i}.P_{i} = α_{i}.Q. Hence, possibly using axioms A3 and/or A4, we infer that

E ⊢ P = a^{∗}(τ.Q + a.Q + S)

where S =_{AC} ∑ \{α_{i}.P_{i} | α_{i} ∉ \{τ, a\} or P_{i} \underline{↮}_{b} Q\} + ∑_{k} x_{k}. Reasoning as in case 1.III above, we find that E_{b} ⊢ Q = a^{∗}(R + S) for some term R. Now

γ.P = γ.a^{∗}(τ.Q + a.Q + S)
= γ.a^{∗}(τ.a^{∗}(R + S) + a.a^{∗}(R + S) + S)
=^{PA2} γ.a^{∗}(τ.a^{∗}a^{∗}(R + S) + a.a^{∗}(R + S) + S)
=^{PA1} γ.a^{∗}(τ.a^{∗}(R + a.a^{∗}(R + S) + S) + a.a^{∗}(R + S) + S)
=^{PB2′} γ.a^{∗}(R + a.a^{∗}(R + S) + S)
=^{PA1} γ.a^{∗}a^{∗}(R + S) =^{PA2} γ.a^{∗}(R + S) = γ.Q.

IIIb Suppose that A holds only for some i with α_{i} = τ. Then, reasoning as in the case above, we obtain that E_{b} ⊢ P = a^{∗}(τ.Q + S) (i.e., the summand a.Q vanishes), and E_{b} ⊢ Q = a^{∗}(R + S) for some terms R and S. This yields the following simplification of the argument above:

γ.P = γ.a^{∗}(τ.Q + S)
= γ.a^{∗}(τ.a^{∗}(R + S) + S)
=^{PB2′} γ.a^{∗}(R + S)
= γ.Q .

IIIc Suppose that A holds only for some i with α_{i} = a. Then, reasoning as in case IIIa above, we infer that

E_{b} ⊢ P = a^{∗}(a.Q + S)

where S =_{AC} ∑ \{α_{i}.P_{i} | α_{i} ≠ a or P_{i} \underline{↮}_{b} Q\} + ∑_{k} x_{k} (i.e., τ.Q vanishes). Since B does not hold, it follows that every summand β_{j}.Q_{j} of Q matches with a summand α_{i}.P_{i} of S, every y_{l} is equal to an x_{k}, and vice versa. Possibly using axiom A3, it follows that E_{b} ⊢ Q = a^{∗}S (i.e., R vanishes). Now

γ.P = γ.a^{∗}(a.Q + S) = γ.a^{∗}(a.a^{∗}S + S) =^{PA1} γ.a^{∗}a^{∗}S =^{PA2} γ.a^{∗}S = γ.Q.

3. Case: P =_{AC} ∑_{i} α_{i}.P_{i} + ∑_{k} x_{k} and Q =_{AC} a^{∗}(∑_{j} β_{j}.Q_{j} + ∑_{l} y_{l}). Consider the following two conditions:

A. α_{i} ∈ \{τ, a\} and P_{i} \underline{↔}_{b} Q for some i; B. β_{j} ∈ \{τ, a\} and Q_{j} \underline{↔}_{b} P for some j.

Since Q →^{a} Q and P \underline{↔}_{b} Q, it follows that P ⇒^{a} P′ with P′ \underline{↔}_{b} Q, for some P′. By the Stuttering Lemma 2.10, the intermediate states in the derivation P ⇒^{a} P′ are all branching equivalent to Q. Hence there exists an index i such that α_{i} ∈ \{τ, a\} and P_{i} \underline{↔}_{b} Q. So we know that A holds. We proceed by distinguishing two sub-cases, depending on whether B holds or not.

I Suppose that B holds, so Q_{j} \underline{↔}_{b} P for some j. Then Q_{j} \underline{↔}_{b} P_{i} also holds, and the

inductive hypothesis yields E_{b} ⊢ γ.P = γ.Q_{j} = γ.P_{i} = γ.Q, for all γ ∈ A_{τ}, as desired. II Suppose B does not hold. Reasoning as in case 2.III above, we can distinguish three

sub-cases:

– A holds for some indices i_{1} and i_{2} with α_{i_{1}} = τ and α_{i_{2}} = a. Then, for some terms R and S, E_{b} ⊢ P = τ.Q + a.Q + S and E_{b} ⊢ Q = a^{∗}(R + S).

– A holds only for some index i such that α_{i} = τ.

Then, for some terms R and S, E_{b} ⊢ P = τ.Q + S and E_{b} ⊢ Q = a^{∗}(R + S).

– A holds only for some index i such that α_{i} = a.

Then, for some term S, E_{b} ⊢ P = a.Q + S, and, since B does not hold, we find that E_{b} ⊢ Q = a^{∗}S.

In all three cases we obtain E_{b} ⊢ γ.P = γ.Q, reasoning just as in case 2.III, but skipping the applications of PA2 and using B1 (in the second case with PA1) instead of PB2′.

The proof of the inductive step is now complete. □

Theorem 4.4 Let P, Q ∈ (BCCS)^{p∗}(A_{τ}). If P \underline{↔}_{b}^{c} Q, then E_{b} ⊢ P = Q.

Proof: Consider two process terms P and Q that are branching congruent. We shall prove that E_{b} ⊢ P = P + Q = Q, from which the claim follows. In fact, by symmetry, it is sufficient to show that if P \underline{↔}_{b}^{c} Q, then E_{b} ⊢ P = P + Q. To this end, note, first of all, that, by Lem. 4.1, P and Q may be proven equal to some normal forms using equations A4, PA1 and PB1. Possibly using equation PA1 again, we may therefore derive that

\begin{matrix}E_{b} ⊢ P = ∑ \{α_{i}.P_{i} | i ∈ I\} + ∑ \{x_{j} | j ∈ J\} and \\ E_{b} ⊢ Q = ∑ \{β_{k}.Q_{k} | k ∈ K\} + ∑ \{y_{l} | l ∈ L\} \end{matrix}

for some finite index sets I, J, K, L. As P \underline{↔}_{b}^{c} Q and the equations in E_{b} are sound with respect to branching congruence, it follows that 1. for every k there exists an index i_{k} such that α_{i_{k}} = β_{k} and P_{i_{k}} \underline{↔}_{b} Q_{k}, and

2. for every l there exists an index j_{l} such that x_{j_{l}} ≡ y_{l}.

By Propn. 4.3, for every k we may infer that

E_{b} ⊢ α_{i_{k}}.P_{i_{k}} = α_{i_{k}}.Q_{k} = β_{k}.Q_{k} .

The fact that E_{b} ⊢ P = P + Q is now immediate using axiom A3. □

4.2 Completeness for η-, delay, and weak congruence

We now proceed to derive completeness results for η-, delay, and weak congruence from Thm. 4.4. The key to this derivation is the observation that, for certain classes of process terms, these congruence relations coincide with branching congruence. These classes of process terms are defined below.

Definition 4.5 We say that a term P is:

• η-saturated iff for each of its derivatives Q, R and S and ξ ∈ A_{τ} ∪ Var we have

that:

Q →^{ξ} R →^{τ} S implies Q →^{ξ} S.

• d-saturated iff for each of its derivatives Q, R and S and ξ ∈ A_{τ} ∪ Var we have

that:

Q →^{τ} R →^{ξ} S implies Q →^{ξ} S.

• w-saturated iff it is both η- and d-saturated.

The following theorem was first shown in [20] for process graphs. Here, we present its adaptation to open terms in the language (BCCS)^{p∗}(A_{τ}).

Theorem 4.6 Let ℵ ∈ \{η, d, w\}. If P and Q are ℵ-saturated and P \underline{↔}_{ℵ}^{c} Q, then P \underline{↔}_{b}^{c} Q.

Proof: We only present the proof for weak congruence. The proofs for η- and delay congruence are simple variations on this theme, and the interested reader will have no difficulty in reconstructing them.

Note, first of all, that any two w-saturated terms that are weakly equivalent are also branching equivalent. This follows because the relation

B =^{Δ} \{(S, T) | S \underline{↔}_{w} T, S, T w-saturated\}

is a branching bisimulation.

Now, assume that P \underline{↔}_{w}^{c} Q and that P →^{ξ} P′. Then, there exists a Q′ such that Q ⇒^{ξ} Q′ and P′ \underline{↔}_{w} Q′. As Q is w-saturated, it follows that Q →^{ξ} Q′. Since P′ and Q′ are w-saturated and weakly equivalent, we infer that P′ \underline{↔}_{b} Q′. Therefore, by symmetry, we finally obtain that P \underline{↔}_{b}^{c} Q, which was to be shown. □

Proposition 4.7 Let ℵ ∈ {η, d, w}. For each term P, E_{ℵ} ⊢ P = P′ for some ℵ-saturated term P′.

Proof: Again, we only present the details of the proof for ℵ = w. The proofs of η- and dsaturation are simple variations on this theme, and the interested reader will have no difficulty in reconstructing them.

A term P is in head normal form if it has the following form, where I, J are finite index sets:

P =_{AC} ∑_{i∈I} α_{i}.P_{i} + ∑_{j∈J} x_{j} .

By induction on the structure of a process term T, we show that T can be proven equal to a process term that is both w-saturated and in head normal form, using the axiom system E_{w}. The cases T ≡ x and T ≡ 0 are trivial.

• Case: T ≡ P + Q. By the inductive hypothesis, P and Q can be transformed into wsaturated terms P′ and Q′ in head normal form, respectively. Then T is provably equal to P′ +Q′, which is a w-saturated term, and may be turned into head normal form by possibly using A4.

• Case: T ≡ a.P. By the inductive hypothesis, P can be proven equal to a w-saturated term

P′ =_{AC} ∑_{i∈I} b_{i}.P_{i} + ∑_{j∈J} τ.Q_{j} + ∑_{k∈K} x_{k} .

By AT3, T is provably equal to

T′ =_{AC} a.P′ + ∑_{j∈J} a.Q_{j} .

We show that T′ is w-saturated. Since P′ and its derivatives are w-saturated, we only need to check the w-saturation condition for T′ itself. Note that the case T′ →^{τ} R →^{ξ} S does not apply. Assume that T′ →^{ξ} R →^{τ} S. Then ξ = a, and R is either P′ or Q_{j} for some j ∈ J.

If R ≡ P′, then S ≡ Q_{j′} for some j′ ∈ J. Therefore T′ →^{a} S follows.

If R ≡ Q_{j}, then P′ →^{τ} R →^{τ} S. Since P′ is w-saturated, it follows that P′ →^{τ} S. Hence S ≡ Q_{j′} for some j′ ∈ J, and T′ →^{a} S follows.

• Case: T ≡ τ.P. By induction, P is provably equal to a w-saturated term

P′ =_{AC} ∑_{i∈I} α_{i}.P_{i} + ∑_{j∈J} x_{j} .

By T2, T is provably equal to T′ ≡ τ.P′ + P′. We show that T′ is w-saturated. Since P′ and its derivatives are w-saturated, we only need to check the w-saturation condition for transitions emanating from T′ itself. We distinguish three possibilities.

Assume that T′ →^{τ} P′ →^{ξ} Q. Then T′ →^{ξ} Q follows immediately.

Assume that T′ →^{τ} P_{i} →^{ξ} Q for some i ∈ I with α_{i} = τ. Then P′ →^{τ} P_{i} →^{ξ} Q, and, as P′ is w-saturated, it follows that P′ →^{ξ} Q. Hence T′ →^{ξ} Q, as desired. Assume that T′ →^{α_{i}} P_{i} →^{τ} Q for some i ∈ I. Then P′ →^{α_{i}} P_{i} →^{τ} Q. As P′ is w-saturated, it follows that P′ →^{α_{i}} Q. Thus T′ →^{α_{i}} Q, as desired.

• Case: T ≡ a^{∗}P. By induction, P is provably equal to a w-saturated term

P′ =_{AC} ∑_{i∈I} b_{i}.P_{i} + ∑_{j∈J} τ.Q_{j} + ∑_{k∈K} x_{k} .

Now,

T =^{PT3} a^{∗}(P′ + ∑_{j∈J} a.Q_{j}) =^{PA1} a.a^{∗}(P′ + ∑_{j∈J} a.Q_{j}) + P′ + ∑_{j∈J} a.Q_{j} =^{Δ}_{AC} T′ .

We show that T′ is w-saturated. All derivatives other than T′ itself and S ≡ a^{∗}(P′ + ∑_{j∈J} a.Q_{j}) are w-saturated by assumption, so we only need deal with these two cases. First, we deal with T′.

• Let T′ →^{ξ} Q →^{τ} R. There are three possibilities:

– ξ = a and Q ≡ S. Then R ≡ Q_{j} for some j ∈ J, and thus T′ →^{a} R.

– P′ →^{ξ} Q →^{τ} R. In that case P′ →^{ξ} R since P′ is w-saturated, and thus T′ →^{ξ} R follows.

– ξ = a and Q ≡ Q_{j} for some j ∈ J. In that case P′ →^{τ} Q_{j} →^{τ} R. Thus P′ →^{τ} R, since P′ is w-saturated. Hence R ≡ Q_{j′} for some j′ ∈ J. Again T′ →^{a} R follows.

• Let T′ →^{τ} Q →^{ξ} R. Then P′ →^{τ} Q →^{ξ} R. Thus P′ →^{ξ} R, since P′ is w-saturated, and

T′ →^{ξ} R follows.

Next, we deal with S.

• Let S →^{ξ} Q →^{τ} R. There are three possibilities:

– ξ = a and Q ≡ S. Then R ≡ Q_{j} for some j ∈ J, and S →^{a} R.

– P′ →^{ξ} Q →^{τ} R. In that case S →^{ξ} R since P′ is w-saturated.

– ξ = a and Q ≡ Q_{j} for some j ∈ J. In that case P′ →^{τ} Q_{j} →^{τ} R; therefore P′ →^{τ} R, since P′ is w-saturated. Hence R ≡ Q_{j′} for some j′ ∈ J. Again S →^{a} R follows.

• Let S →^{τ} Q →^{ξ} R. Then P′ →^{τ} Q →^{ξ} R, and, since P′ is w-saturated, S →^{ξ} R follows.

• Case: T ≡ τ^{∗}P. Application of PT1 reduces this case to the one T ≡ τ.P.

This completes the inductive argument. □

In light of Propn. 3.3, the results in Thm. 4.6 and Propn. 4.7 effectively reduce the completeness problem for η-, delay, and weak congruence over (BCCS)^{p∗}(A_{τ}) to that for branching congruence.

Corollary 4.8 Let ℵ ∈ \{η, d, w\}. If P \underline{↔}_{ℵ}^{c} Q, then E_{ℵ} ⊢ P = Q.

Proof: Let ℵ ∈ \{η, d, w\}. Suppose that P \underline{↔}_{ℵ}^{c} Q. Prove P and Q equal to ℵ-saturated processes P′ and Q′, respectively (Propn. 4.7). By the soundness of the axiom system E_{ℵ} (Propn. 3.2), P′ and Q′ are ℵ-congruent. It follows that P′ and Q′ are branching congruent (Thm. 4.6). Hence, by Thm. 4.4, E_{b} ⊢ P′ = Q′. The claim now follows because, by Propn. 3.3, the axioms for branching congruence are derivable from the theory E_{ℵ}. □

4.3 Comparison of proof strategies

The ω-completeness results for branching, delay, and η-congruence that we have just obtained, are all new. The ω-completeness of the axiomatization for weak congruence was proven earlier in [3], under the assumption that the set of actions A be countably infinite. The proof presented in this paper applies to any non-empty action set. While in this study we have obtained the completeness result for weak congruence via that for branching congruence, in op. cit. a direct proof strategy was employed, based on structural induction. It turns out that the direct proof method yields a long and tedious proof, with many case distinctions. The indirect proof via branching congruence, which we presented here, is considerably shorter, and relies on a general relationship between the two congruences. It should be noted, however, that delicate case analyses appear to be inescapable components of completeness proofs for equational axiomatizations of behavioural congruences over variations on Kleene algebras (cf., e.g., the proofs in [17, 15, 3, 16, 2]). In the approach followed in this paper, the use of a detailed case analysis is limited to the proof of Propn. 4.3, which is the key to the completeness theorem for branching congruence, and to the saturation procedures employed in the proof of Propn. 4.7. In both cases, the case analysis is guided by operational, rather than purely syntactic, considerations.

A second, less vital distinction between our proof and that from [3], is that there first completeness was proved, and then a proof strategy from [21] was used to obtain ω-completeness. Here, we gave operational semantics to open terms, instead of closed terms, and deduced completeness and ω-completeness at the same time. This method could have been employed in [3] just as well.

References

[1] L. Aceto, B. Bloom and F. Vaandrager, Turning SOS rules into equations, Information and Computation 111 (1994), pp. 1–52.

[2] L. Aceto and J.F. Groote, A complete equational axiomatization for MPA with string iteration, Research Report RS–95–28, BRICS (Basic Research in Computer Science, Centre of the Danish National Research Foundation), Department of Mathematics and Computer Science, Aalborg University, May 1995. Available by anony-

    mous ftp from ftp.daimi.aau.dk in the directory pub/BRICS/RS/95/28.

[3] L. Aceto and A. Ingólfsdóttir, A complete equational axiomatization for prefix iteration with silent steps, Research Report RS–95–5, BRICS (Basic Research in Computer Science, Centre of the Danish National Research Foundation), Department of Mathematics and Computer Science, Aalborg University, Jan. 1995. Available by anonymous ftp from ftp.daimi.aau.dk in the directory

    pub/BRICS/RS/95/5.

[4] J. Baeten, J. Bergstra and J. Klop, On the consistency of Koomen’s fair abstraction rule, Theoretical Comput. Sci. 51 (1987), pp. 129–176.

[5] J. Baeten and R. v. Glabbeek, Another look at abstraction in process algebra, in Proceedings 14^{th} ICALP, Karlsruhe, T. Ottmann, ed., vol. 267 of Lecture Notes in Computer Science, Springer-Verlag, July 1987, pp. 84–94.

[6] J. Baeten and J. Klop, eds., Proceedings CONCUR 90, Amsterdam, vol. 458 of Lecture Notes in Computer Science, Springer-Verlag, 1990.

[7] T. Basten, Branching bisimulation is an equivalence indeed! Unpublished manuscript.

[8] J. Bergstra, I. Bethke and A. Ponse, Process algebra with iteration and nesting, Computer Journal 37 (1994), pp. 243–258.

[9] J. Bergstra and J. Klop, The algebra of recursively defined processes and the algebra of regular processes, in Proceedings 11^{th} ICALP, Antwerpen, J. Paredaens, ed., vol. 172 of Lecture Notes in Computer Science, Springer-Verlag, 1984, pp. 82–95.

[10] B. Bloom, Structural operational semantics for weak bisimulations, Theoretical Comput. Sci. 146 (1995), pp. 25–68.

[11] I. Copi, C. Elgot and J. Wright, Realization of events by logical nets, Journal of the ACM 5 (1958), pp. 181–196.

[12] F. Corradini, R. De Nicola and A. Labella, Fully abstract models for nondeterministic Kleene algebras (extended abstract), in Proceedings CONCUR 95, Philadelphia, PA, USA, I. Lee and S. Smolka, eds., vol. 962 of Lecture Notes in Computer Science, Springer-Verlag, 1995, pp. 130–144.

[13] R. De Nicola and A. Labella, A completeness theorem for nondeterministic Kleene algebras, in Proceedings of MFCS ’94, Košice, Slovakia, I. Prívara, B. Rovan and P. Pužička, eds., vol. 841 of Lecture Notes in Computer Science, Springer-Verlag, 1994.

[14] R. De Nicola, U. Montanari and F. Vaandrager, Back and forth bisimulations, in Baeten and Klop [6], pp. 152–165.

[15] W. Fokkink, A complete equational axiomatization for prefix iteration, Inf. Process. Lett. 52 (1994), pp. 333–337.

[16] , A complete axiomatization for prefix iteration in branching bisimulation, Logic Group Preprint Series 126, Dept. of Philosophy, Utrecht University, Jan. 1995. To appear in Fundamenta Informaticae. Available by ftp from ftp.phil.ruu.nl as

logic/PREPRINTS/preprint126.ps.Z.

[17] W. Fokkink and H. Zantema, Basic process algebra with iteration: Completeness of its equational axioms, Computer Journal 37 (1994), pp. 259–267.

[18] R. v. Glabbeek, A complete axiomatization for branching bisimulation congruence of finite-state behaviours, in Mathematical Foundations of Computer Science 1993, Gdansk, Poland, A. Borzyszkowski and S. Sokołowski, eds., vol. 711 of Lecture Notes in Computer Science, Springer-Verlag, 1993, pp. 473–484. Available by anonymous

ftp from Boole.stanford.edu as pub/DVI/complete.dvi.gz.

[19] R. v. Glabbeek and W. Weijland, Branching time and abstraction in bisimulation semantics (extended abstract), in Information Processing 89, G. Ritter, ed., North-Holland, 1989, pp. 613–618. Full paper available as:

[20] , Branching time and abstraction in bisimulation semantics, Technical Report TUM-I9052, SFB-Bericht Nr. 342/29/90 A, Institut für Informatik, Technische Universität München, Germany, 1990. Extended abstract appeared as [19]. To appear in Journal of the ACM.

[21] J.F. Groote, A new strategy for proving ω–completeness with applications in process algebra, in Baeten and Klop [6], pp. 314–331.

[22] M. Hennessy, A term model for synchronous processes, Information and Control 51 (1981), pp. 58–75.

[23] , Axiomatising finite delay operators, Acta Inf. 21 (1984), pp. 61–88.

[24] M. Hennessy and R. Milner, Algebraic laws for nondeterminism and concurrency, Journal of the ACM 32 (1985), pp. 137–161.

[25] R. Keller, Formal verification of parallel programs, Comm. ACM 19 (1976), pp. 371–384.

[26] S. Kleene, Representation of events in nerve nets and finite automata, in Automata Studies, C. Shannon and J. McCarthy, eds., Princeton University Press, 1956, pp. 3– 41.

[27] R. Milner, A modal characterisation of observable machine behaviour, in Proceedings CAAP 81, G. Astesiano and C. Bohm, eds., vol. 112 of Lecture Notes in Computer Science, Springer-Verlag, 1981, pp. 25–34.

[28] , Communication and Concurrency, Prentice-Hall International, Englewood Cliffs, 1989.

[29] , A complete axiomatisation for observational congruence of finite-state behaviours, Information and Computation 81 (1989), pp. 227–247.

[30] D. Park, Concurrency and automata on infinite sequences, in 5^{th} GI Conference, Karlsruhe, Germany, P. Deussen, ed., vol. 104 of Lecture Notes in Computer Science, Springer-Verlag, 1981, pp. 167–183.

[31] G. Plotkin, A structural approach to operational semantics, Report DAIMI FN-19, Computer Science Department, Aarhus University, 1981.

[32] P. Sewell, Bisimulation is not finitely (first order) equationally axiomatisable, in Proceedings 9^{th} Annual Symposium on Logic in Computer Science, Paris, France, IEEE Computer Society Press, 1994, pp. 62–70.

[33] W. Taylor, Equational logic, Appendix 4 of the book Universal Algebra by G. Grätzer, Springer-Verlag, 1979, pp. 378–400.