BRICS RS-98-49 Aceto et al.: A Cook’s Tour of Equational Axiomatizations for Prefix Iteration BRICS

Basic Research in Computer Science

A Cook’s Tour of Equational Axiomatizations for Prefix Iteration

Luca Aceto Willem Jan Fokkink Anna Ingólfsdóttir

BRICS Report Series RS-98-49 ISSN 0909-0878 December 1998 Copyright \begin{matrix}c \\ ◯ \end{matrix} 1998, BRICS, Department of Computer Science

University of Aarhus. All rights reserved.

Reproduction of all or part of this work is permitted for educational or research use on condition that this copyright notice is included in any copy.

See back inner page for a list of recent BRICS Report Series publications. Copies may be obtained by contacting:

BRICS Department of Computer Science University of Aarhus Ny Munkegade, building 540 DK–8000 Aarhus C Denmark

Telephone: +45 8942 3360
Telefax: +45 8942 3255
Internet: BRICS@brics.dk

BRICS publications are in general accessible through the World Wide Web and anonymous FTP through these URLs:

http://www.brics.dk
ftp://ftp.brics.dk

This document in subdirectory RS/98/49/

A Cook’s Tour of Equational Axiomatizations for Prefix Iteration

Luca Aceto^{1}^{⋆}, Wan Fokkink^{2}^{⋆⋆} and Anna Ingólfsdóttir^{3}^{⋆ ⋆ ⋆}

1 BRICS (Basic Research in Computer Science), Department of Computer Science, Aalborg University, Fredrik Bajers Vej 7-E, DK-9220 Aalborg Ø, Denmark. 2 Department of Computer Science, University of Wales Swansea, Singleton Park, Swansea SA2 8PP, Wales. 3 Dipartimento di Sistemi ed Informatica, Università di Firenze, Via Lombroso 6/17, 50134 Firenze, Italy.

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, and yields simple iterative behaviours that can be equationally characterized by means of finite collections of axioms. In this paper, we present axiomatic characterizations for a significant fragment of the notions of equivalence and preorder in van Glabbeek’s linear-time/branching-time spectrum over Milner’s basic CCS extended with prefix iteration. More precisely, we consider ready simulation, simulation, readiness, trace and language semantics, and provide complete (in)equational axiomatizations for each of these notions over BCCS with prefix iteration. All of the axiom systems we present are finite, if so is the set of atomic actions under consideration.

1 Introduction

Equationally based proof systems play an important role in both the practice and the theory of process algebras. From the point of view of practice, these proof systems can be used to perform system verifications in a purely syntactic way, and form the basis of axiomatic verification tools like, e.g., PAM [10]. From the theoretical point of view, complete axiomatizations of behavioural equivalences capture the essence of different notions of semantics for processes in terms of a basic collection of identities, and this often allows one to compare semantics which may have been defined in very different styles and frameworks. Some researchers also measure the naturalness of a process semantics by using the existence of a finite complete axiomatization for it over, say, finite behaviours as an acid test.

An excellent example of the unifying role played by equational axiomatizations of process semantics may be found in [7]. Ibidem van Glabbeek presents the so-called linear time/branching time spectrum, i.e., the lattice of all the known behavioural equivalences over labelled transition systems ordered by inclusion. The different identifications made by these semantic equivalences

⋆ Partially supported by the Human Capital and Mobility project Express. Email:

luca@cs.auc.dk. Fax: +45 9815 9889. ⋆⋆ Email: W.J.Fokkink@swansea.ac.uk. Fax: +44 1792 295708.

⋆ ⋆ ⋆ Supported by a grant from the Danish National Research Foundation. Email:

annai@dsi2.ing.unifi.it. Fax: +39 55 4796730.

over finite synchronization trees are beautifully characterized by the author of op. cit. in terms of a few simple axioms. This permits an illuminating comparison of these semantics within a uniform axiomatic framework. However, despite the complete inference systems for bisimulation-based equivalences over regular processes presented in, e.g., [11, 8] and years of intense research, little is still known on the topic of effective complete axiomatizations of the notions of semantics studied in [7] over iterative processes.

In this study, we shall present a contribution to this line of research by investigating a significant fragment of the notions of equivalence and preorder from [7] over Milner’s basic CCS (henceforth referred to as BCCS) [12] extended with prefix iteration. Prefix iteration [6] is a variation on the original binary version of the Kleene star operation P^{∗}Q [9], obtained by restricting the first argument to be an atomic action, and yields simple iterative behaviours that can be equationally characterized by means of finite collections of axioms. Furthermore, prefix iteration combines better with the action prefixing operator of CCS than the more general binary Kleene star. A significant advantage of iteration over recursion, as a means to express infinite processes, is that it does not involve a parametric process definition, because the development of process theory is easier if parameterization does not have to be taken as primitive (see, e.g., Milner [13, page 212]).

Our study of equational axiomatizations for BCCS with prefix iteration has so far yielded complete equational axiomatizations for all the main notions of bisimulation equivalence [6, 1]. In this paper, we continue this research programme by studying axiomatic characterizations for more abstract semantics over this language than those based on variations of bisimulation. More precisely, we consider ready simulation, simulation, readiness, trace and language semantics, and provide complete (in)equational axiomatizations for each of these notions over BCCS with prefix iteration. All of the axiom systems we present are finite, if so is the set of atomic actions under consideration. Although the high level structure of the proofs of our main results follows standard lines in the literature on process theory, the actual details of the arguments are, however, rather subtle (cf., e.g., the proof of Thm. 4.6). To our mind, this shows how the analysis of the collection of valid identities for the semantics considered in this paper already becomes difficult even in the presence of very simple iterative behaviours, like those that can be expressed using prefix iteration.

The paper is organized as follows. After a brief review of the basic notions from process theory needed in the remainder of the paper (Sect. 2), we present the language BCCS with prefix iteration and its labelled transition system semantics (Sect. 3). Sect. 4 is devoted to a guided tour of our completeness results. The paper concludes with a mention of further results that will be presented in a full account of this work, and a discussion of ongoing research (Sect. 5).

2 Preliminaries

In this section we present the basic notions from process theory that will be needed in the remainder of this study.

2.1 Labelled Transitions Systems

A labelled transition system is a triple (Proc, Lab, {→^{ℓ}| ℓ ∈ Lab}), where:

– Proc is a set of states, ranged over by s, possibly subscripted or superscripted;

– Lab is a set of labels, ranged over by ℓ, possibly subscripted;

– →^{ℓ}⊆ Proc × Proc is a transition relation, for every ℓ ∈ Lab. As usual, we shall use the more suggestive notation s →^{ℓ} s′ in lieu of (s, s′) ∈→^{ℓ}, and write s ↛^{ℓ} iff s →^{ℓ} s′ for no state s′.

All the labelled transition systems we shall consider in this paper will have a special label ✓ in their label set—used to represent successful termination—, and will enjoy the following property: if s →^{✓} s′, then s′ ↛^{ℓ} for every label ℓ.

For n ≥ 0 and ς = ℓ_{1} … ℓ_{n} ∈ Lab^{∗}, we write s →^{ς} s′ iff there exist states

s_{0}, …, s_{n} such that s = s_{0} →^{ℓ_{1}} s_{1} →^{ℓ_{2}} ⋯ s_{n−1} →^{ℓ_{n}} s_{n} = s′. In that case, we say

that ς is a trace (of length n) of the state s. For a state s ∈ Proc we define:

initials(s) =^{Δ} {ℓ ∈ Lab | ∃s′ : s →^{ℓ} s′} .

2.2 From Ready Simulation to Language Equivalence

Labelled transition systems describe the operational behaviour of processes in great detail. In order to abstract from irrelevant information on the way processes compute, a wealth of notions of behavioural equivalence or approximation have been studied in the literature on process theory. A systematic investigation of these notions is presented in [7], where van Glabbeek studies the socalled linear time/branching time spectrum, i.e., the lattice of all the known behavioural equivalences over labelled transition systems ordered by inclusion. In this study, we shall investigate a significant fragment of the notions of equivalence and preorder from [7]. These we now proceed to present for the sake of completeness.

Definition 2.1 (Simulation, Ready Simulation and Bisimulation).

– A binary relation R on states is a simulation iff whenever s_{1} R s_{2} and ℓ is a label:

- if s_{1} →^{ℓ} s′_{1}, then there is a transition s_{2} →^{ℓ} s′_{2} such that s′_{1} R s′_{2}.

– A binary relation R on states is a ready simulation iff it is a simulation with the property that, whenever s_{1} R s_{2} and ℓ is a label:

- if s_{1} ↛^{ℓ}, then s_{2} ↛^{ℓ}.

– A bisimulation is a symmetric simulation.

Two states s and s′ are bisimilar, written s \underline{↔} s′, iff there is a bisimulation that relates them. Henceforth the relation \underline{↔} will be referred to as bisimulation equivalence. We write s ⊏_{∼}_{S} s′ (resp. s ⊏_{∼}_{RS} s′) iff there is a simulation (resp. a ready simulation) R with s R s′.

Bisimulation equivalence [14] relates two states in a labelled transition system precisely when they have the same branching structure. Simulation (see, e.g., [14]) and ready simulation [3] relax this requirement to different degrees. The following notion, which is based on a version of decorated traces, is induced by yet another way of abstracting from the full branching structure of processes.

Definition 2.2 (Readiness Semantics). For a state s we define:

readies(s) =^{Δ} {(ς, X) | ς ∈ Lab^{∗}, X ⊆ Lab and ∃s′ : s →^{ς} s′ and initials(s′) = X}

For states s, s′ we write s ⊏_{∼}_{R} s′ iff readies(s) is included in readies(s′).

The classical notion of language equivalence for finite state automata may be readily defined over labelled transition systems. To this end, it is sufficient to consider the states from which a ✓-labelled transition is possible as accept states.

Definition 2.3 (Language and Trace Semantics).

– We say that a sequence of labels ς is accepted by a state s iff s →^{ς✓} s′ for some state s′. For states s, s′ we write s ⊏_{∼}_{L} s′ iff every sequence accepted by s is also accepted by s′.

– For states s, s′ we write s ⊏_{∼}_{T} s′ iff the set of traces of s is included in that of s′.

For Θ ∈ {S, RS, L, R, T }, the relation ⊏_{∼}_{Θ} is a preorder over states of an arbitrary labelled transition system; its kernel will be denoted by ≃_{Θ}.

3 BCCS with Prefix Iteration

We begin by presenting the language of Basic CCS (henceforth often abbreviated to BCCS) with prefix iteration [6], together with its operational semantics.

3.1 The Syntax

We assume a non-empty alphabet Act of atomic actions, with typical elements a, b, c. The language BCCS^{p∗} of Basic CCS with prefix iteration is given by the following BNF grammar:

P ::= 0 | 1 | a.P | P + P | a^{∗}P .

We shall use P, Q, R, S, T to range over BCCS^{p∗}. In writing terms over the above syntax, we shall always assume that the operator a. binds stronger than +. We shall use the symbol ≡ to stand for syntactic equality of terms. The expression P [+Q] will be used to denote the fact that Q is an optional summand. The size of a term is the number of operators occurring in it.

Remark 3.1. The reader might have noticed that the syntax for the language BCCS^{p∗} presented above includes two distinguished constants, viz. 0 and 1. Intuitively, the term 0 will stand for a deadlocked process, whereas 1 will stand for a process that can only terminate immediately with success. Our choice of notation is in keeping with a standard one for regular expressions, cf., e.g., [5].

3.2 Operational Semantics

Let ✓ be a distinguished symbol not contained in Act. We shall use ✓ to stand for the action performed by a process as it reports its successful termination. The meta-variable ξ will range over the set Act∪{✓}. The operational semantics for the language BCCS^{p∗} is given by the labelled transition system

(BCCS^{p∗}, Act ∪ {✓}, {→^{ξ}| ξ ∈ Act ∪ {✓}})

where the transition relations →^{ξ} are the least binary relations over BCCS^{p∗} satisfying the rules in Table 1. Intuitively, a transition P →^{a} Q means that the system represented by the term P can perform the action a, thereby evolving into Q. On the other hand, P →^{✓} Q means that P can terminate immediately with success; the reader will immediately realize that, in that case, Q ≡ 0.

\overline{a.P →^{a} P}  \overline{1 →^{✓} 0}

\frac{P →^{ξ} P′}{P + Q →^{ξ} P′}  \frac{Q →^{ξ} Q′}{P + Q →^{ξ} Q′}

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

Table 1. Transition Rules

With the above definitions, the language BCCS^{p∗} inherits all the notions of equivalence and preorder over processes defined in Sect. 2.2. The following result is standard.

Proposition 3.2. For Θ ∈ {RS, S, L, R, T }, the relations ⊏_{∼}_{Θ} and ≃_{Θ} are preserved by the operators in the signature of BCCS^{p∗}. The same holds for bisimulation equivalence.

4 Equational Axiomatizations

The study of equational axiomatizations of behavioural equivalences and preorders over BCCS^{p∗} was initiated in the paper [6]. In op. cit. it is shown that the axiom system in Table 2 completely axiomatizes bisimulation equivalence over the language of 1-free BCCS^{p∗} terms. Our aim in the remainder of this study will be to extend this result to the semantics in the linear-time/branching-time spectrum discussed in Sect. 2.2.

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 2. The axiom system F

For an axiom system T , we write T ⊢ P ≤ Q iff the inequation P ≤ Q is provable from the axioms in T using the rules of inequational logic. An equation P = Q will be used as a short-hand for the pair of inequations P ≤ Q and Q ≤ P. Whenever we write an inequation of the form P [+1] ≤ Q[+1], we mean that if the 1 summand appears on the left-hand side of the inequation, then it also appears on the right-hand side. P =_{AC} Q denotes that P and Q are equal modulo associativity and commutativity of +, i.e., that A1,A2 ⊢ P = Q. For a collection of (in)equations X over the signature of BCCS^{p∗}, 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} for P_{i_{1}} + ⋯ + P_{i_{n}}. By convention, ∑_{i∈∅} P_{i} stands for 0.

Henceforth process terms will be considered modulo associativity and commutativity of the +-operation, i.e., modulo axioms A1–2.

We begin the technical developments by noting that the proof of the completeness of the axiom system F with respect to bisimulation equivalence over the language of 1-free BCCS^{p∗} terms applies mutatis mutandis to the whole of the language BCCS^{p∗}.

Proposition 4.1. For every P, Q ∈ BCCS^{p∗}, P \underline{↔} Q iff F ⊢ P = Q.

The collection of possible transitions of each process term P is finite, say {P →^{a_{i}}

P_{i} | i = 1, ..., m} ∪ {P →^{✓} 0 | j = 1, …, n}. We call the term

exp(P) =^{Δ} ∑_{i=1}^{m} a_{i}.P_{i} + ∑_{j=1}^{n} 1

the expansion of P. The terms a_{i}P_{i} and 1 will be referred to as the summands of P. A straightforward structural induction on terms, using axiom PA1, yields:

Lemma 4.2. Each process term is provably equal to its expansion.

We aim at identifying a subset of process terms of a special form, which will be convenient in the proof of the completeness results to follow. 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∗} including process terms having one of the following two forms:

∑_{i∈I} a_{i}.P_{i}[+1] or a^{∗}(∑_{i∈I} a_{i}.P_{i}[+1]),

where the terms P_{i} are themselves normal forms, and I is a finite index set. (Recall that the empty sum represents 0, and the notation [+1] stands for optional inclusion of 1 as a summand.)

Lemma 4.3. Each term in BCCS^{p∗} can be proven equal to a normal form using equations A3, A4 and PA1.

4.1 Ready Simulation

We begin our tour of equational axiomatizations for prefix iteration by presenting a complete axiom system for the ready simulation preorder (cf. Defn. 2.1 for the definition of this relation). The axiom system E_{RS} consists of the laws for bisimulation equivalence (cf. Table 2) and of the inequations RS1–2 below:

\begin{aligned}RS1 & a.x & ≤ & a.x + a.y \\ RS2 & a^{∗}x & ≤ & a^{∗}(x + a.y) . \end{aligned}

Theorem 4.4. For every P, Q ∈ BCCS^{p∗}, P ⊏_{∼}_{RS} Q iff E_{RS} ⊢ P ≤ Q.

Proof. We leave it to the reader to check the soundness of the axiom system E_{RS}, and concentrate on its completeness. In view of Lem. 4.3, it is sufficient to show that if P ⊏_{∼}_{RS} Q holds for normal forms P and Q, then E_{RS} ⊢ P ≤ Q. This we now proceed to prove by induction on the sum of the sizes of P and Q.

We proceed by a case analysis on the form the normal forms P and Q may take.

– Case: P =_{AC} ∑_{i∈I} a_{i}.P_{i}[+1] and Q =_{AC} ∑_{j∈J} b_{j}.Q_{j}[+1]. As P ⊏_{∼}_{RS} Q, we infer that:

1. for every i there exists an index j_{i} such that a_{i} = b_{j_{i}} and P_{i} ⊏_{∼}_{RS} Q_{j_{i}},

2. 1 is a summand of P iff it is a summand of Q, and

3. the collections of actions {a_{i} | i ∈ I} and {b_{j} | j ∈ J} are equal.

The induction hypothesis and substitutivity yield that, for every i ∈ I,

E_{RS} ⊢ a_{i}.P_{i} ≤ b_{j_{i}}.Q_{j_{i}} .

Again using substitutivity, we obtain that

E_{RS} ⊢ P ≤ ∑_{i} b_{j_{i}}.Q_{j_{i}}[+1] .

Note now that, for every index j that is not contained in the set {j_{i} | i ∈ I}, there is an index j_{l} (l ∈ I) such that b_{j} = b_{j_{l}}. We can therefore apply axiom RS1 as necessary to infer that

E_{RS} ⊢ ∑_{i} b_{j_{i}}.Q_{j_{i}}[+1] ≤ Q .

The provability of the inequation P ≤ Q from the axiom system E_{RS} now follows immediately by transitivity.

– Case: P =_{AC} ∑_{i∈I} a_{i}.P_{i}[+1] and Q =_{AC} b^{∗}(∑_{j∈J} b_{j}.Q_{j}[+1]). To deal with this case, begin by applying PA1 to Q to obtain the equality

Q = b.Q + ∑_{j∈J} b_{j}.Q_{j}[+1] .

We can now reason as in the first case of the proof to derive that

P ≤ b.Q + ∑_{j∈J} b_{j}.Q_{j}[+1] .

Transitivity now yields the inequation P ≤ Q.

– Case: P =_{AC} a^{∗}(∑_{i} a_{i}.P_{i}[+1]) and Q =_{AC} ∑_{j} b_{j}.Q_{j}[+1]. Apply PA1 to P, and reason as in the previous case.

– Case: P =_{AC} a^{∗}(∑_{i} a_{i}.P_{i}[+1]) and Q =_{AC} b^{∗}(∑_{j} b_{j}.Q_{j}[+1]). As P ⊏_{∼}_{RS} Q, we infer that:

1. there exists a Q′ such that Q →^{a} Q′ and P ⊏_{∼}_{RS} Q′,

2. for every i there exists a Q(i) such that Q →^{a_{i}} Q(i) and P_{i} ⊏_{∼}_{RS} Q(i),

3. 1 is a summand of P iff it is a summand of Q, and

4. the collections of actions {a_{i} | i ∈ I} ∪ {a} and {b_{j} | j ∈ J} ∪ {b} are equal.

Because of the form Q takes, Q′ and every Q(i) is either Q itself or one of the Q_{j}’s. Therefore we may apply the inductive hypothesis to each of the inequivalences P_{i} ⊏_{∼}_{RS} Q(i) and substitutivity to infer that

E_{RS} ⊢ ∑_{i} a_{i}.P_{i} ≤ ∑_{i} a_{i}.Q(i) .  (1)

We proceed with the proof by considering the following two sub-cases: A. There is an index j such that a = b_{j} and P ⊏_{∼}_{RS} Q_{j}; B. For no index j with a = b_{j} it holds that P ⊏_{∼}_{RS} Q_{j}. We consider these two cases in turn. A. Assume that there is an index j such that a = b_{j} and P ⊏_{∼}_{RS} Q_{j}. In this

case, we may apply the inductive hypothesis to derive that

E_{RS} ⊢ P ≤ Q_{j} .  (2)

We can now finish the proof of the inequation P ≤ Q from the axiom system E_{RS} as follows:

P =^{(PA1)} a.P + ∑_{i} a_{i}.P_{i}[+1]
≤^{(1),(2)} b_{j}.Q_{j} + ∑_{i} a_{i}.Q(i)[+1]
≤^{(RS1)} b_{j}.Q_{j} + ∑_{i} a_{i}.Q(i) + exp(Q)[+1]
=^{(A3),(PA1)} Q .

B. Assume that for no index j with a = b_{j} it holds that P ⊏_{∼}_{RS} Q_{j}. In this case, we infer that a = b. We can now reason as follows:

P ≡ a^{∗}(∑_{i} a_{i}.P_{i}[+1]) ≤^{(1)} a^{∗}(∑_{i} a_{i}.Q(i)[+1])
≤^{(RS1),(RS2)} a^{∗}(∑_{i} a_{i}.Q(i) + a.Q + ∑_{j} b_{j}.Q_{j}[+1])

≤^{(A3),(PA1)} a^{∗}Q
=^{(PA2)} Q .

This completes the proof of the theorem.

4.2 Simulation

The axiom system E_{S} consists of the laws for bisimulation equivalence in Table 2 and of the axiom

S  x ≤ x + y .

Inequation S is well-known to characterize the simulation preorder over finite synchronization trees. Unlike in the case of ready simulation, no extra law is needed to deal with prefix iteration explicitly.

Theorem 4.5. For every P, Q ∈ BCCS^{p∗}, P ⊏_{∼}_{S} Q iff E_{S} ⊢ P ≤ Q.

4.3 Readiness

In this section we present a complete axiom system for prefix iteration with respect to the readiness preorder. The axiom system E_{R} consists of the collection of laws for ready simulation and of those listed below:

\begin{aligned}R1 & a.(b.x + b.y + v) & ≤ & a.(b.x + v) + a.(b.y + w) \\ R2 & a.a^{∗}(b.x + b.y + v) & ≤ & a.a^{∗}(b.x + v) + a.a^{∗}(b.y + w) \\ R3 & a^{∗}(b.x + b.y + v + a.(b.y + w)) & = & a^{∗}(b.x + v + a.(b.y + w)) + b.y \end{aligned}

Theorem 4.6. For every P, Q ∈ BCCS^{p∗}, P ⊏_{∼}_{R} Q iff E_{R} ⊢ P ≤ Q.

We focus on the completeness of E_{R}, and leave soundness to the reader. Before proving this completeness theorem, we introduce some auxiliary definitions and results.

Definition 4.7. A term P is saturated if for each pair of derivations P →^{a} Q →^{b} Q′ and P →^{a} R with b ∈ initials(R) we have R →^{b} R′ with Q′ ⊏_{∼}_{R} R′.

The following lemma stems from [2].

Lemma 4.8. If P ⊏_{∼}_{R} Q and P →^{a} P′ and Q is saturated, then Q →^{a} Q′ with

P′ ⊏_{∼}_{R} Q′.

Definition 4.9. A normal form P is strongly saturated if:

1. P is saturated;

2. if P =_{AC} ∑_{i∈I} a_{i}.P_{i}[+1], then the term P_{i} is strongly saturated, for every i ∈ I.

Axioms R1–R3 play a crucial role in the proof of the following key result.

Lemma 4.10. Each term is provably equal, by the axioms in E_{R}, to a strongly saturated normal form, in which each subterm of the form a^{∗}R occurs in the context a. .

Finally we are in a position to prove Thm. 4.6.

Proof. Suppose that P ⊏_{∼}_{R} Q; we prove that E_{R} ⊢ P ≤ Q. By Lem. 4.10 it is not hard to see that it suffices to establish the claim under the following assumptions:

1. P and Q are normal forms;

2. Q is strongly saturated;

3. proper subterms of P and Q of the form a^{∗}R occur in the context a. ;

4. if P =_{AC} a^{∗}R and Q =_{AC} b^{∗}S, then a = b.

(In fact, according to Lem. 4.10, the last two conditions could be replaced by the stronger condition that all subterms of P and Q of the form a^{∗}R occur in the context a. . However, we shall need the weaker formulation above to be able to satisfy the induction hypothesis.) We derive the desired inequality P ≤ Q from E_{R} by induction with respect to the following lexicographic ordering on pairs of process terms: (P, Q) < (R, S) if

- either size(P) < size(R);

- or size(P) = size(R) and size(Q) < size(S).

The next two cases distinguish the possible syntactic forms of P.

– Case 1: P =_{AC} ∑_{i∈I} a_{i}.P_{i}[+1]. Since P ⊏_{∼}_{R} Q, P →^{a_{i}} P_{i} and Q is saturated, Lem. 4.8 implies that for each i ∈ I we have Q →^{a_{i}} Q_{i} for some Q_{i} such that P_{i} ⊏_{∼}_{R} Q_{i}. According to Lem. 4.10, E_{R} ⊢ Q_{i} = R_{i}, with R_{i} a strongly saturated normal form, in which each subterm of the form c^{∗}S occurs in the context c. . Moreover, each P_{i} is a normal form, in which all proper subterms of the form c^{∗}S occur in the context c. , with size(P_{i}) < size(P). Hence, we can apply induction to P_{i} ⊏_{∼}_{R} R_{i} to derive E_{R} ⊢ P_{i} ≤ R_{i}. Therefore, for each i ∈ I,

E_{R} ⊢ a_{i}.P_{i} ≤ a_{i}.R_{i} = a_{i}.Q_{i} .  (3)

By substitutivity, we have that

P =_{AC} ∑_{i∈I} a_{i}.P_{i}[+1] ≤^{(3)} ∑_{i∈I} a_{i}.Q_{i}[+1] .  (4)

Since P ⊏_{∼}_{R} Q implies initials(P) = initials(Q), it follows that initials(Q)\{✓} is equal to {a_{i} | i ∈ I}. Furthermore, P ⊏_{∼}_{R} Q implies that P has a summand 1 if and only if Q →^{✓} 0. Hence,

∑_{i∈I} a_{i}.Q_{i}[+1] ≤^{(RS1)} exp(Q) =^{(Lem.4.2)} Q

which together with equation (4) yields E_{R} ⊢ P ≤ Q.

– Case 2: P =_{AC} a^{∗}(∑_{i∈I} a_{i}.P_{i}[+1]). The next two cases distinguish the possible syntactic forms of Q.

– Case 2.1: Q =_{AC} ∑_{j∈J} b_{j}.Q_{j}[+1]. Suppose that P →^{c} P′. Since P ⊏_{∼}_{R} Q and Q is saturated, Lem. 4.8 implies that there is a j ∈ J such that c = b_{j} and P′ ⊏_{∼}_{R} Q_{j}. Both P′ and Q_{j} are normal forms, and since Q is strongly saturated, by Defn. 4.9(2) Q_{j} is strongly saturated too. Furthermore, if P′ =_{AC} d^{∗}R and Q_{j} =_{AC} e^{∗}S, then c = d and b_{j} = e, owing to property 3 of P and Q, and so d = c = b_{j} = e. Moreover, it is easy to see that property 3 of P and Q implies that the same property holds for P′ and Q_{j}. Finally, size(P′) ≤ size(P) and size(Q_{j}) < size(Q). Hence, we can apply induction to P′ ⊏_{∼}_{R} Q_{j} to derive E_{R} ⊢ P′ ≤ Q_{j}. Substitutivity now yields

E_{R} ⊢ c.P′ ≤ b_{j}.Q_{j} .  (5)

Hence,

P =^{(Lem.4.2)} exp(P) ≤^{(5)} ∑_{j∈J_{0}} b_{j}.Q_{j}[+1]  (6)

for some J_{0} ⊆ J. It is easy to see that P ⊏_{∼}_{R} Q implies initials(Q) \ {✓} = initials(P) \ {✓} = {b_{j} | j ∈ J_{0}}. Moreover, P →^{✓} 0 if and only if Q has a summand 1. Hence,

∑_{j∈J_{0}} b_{j}.Q_{j}[+1] ≤^{(RS1)} ∑_{j∈J} b_{j}.Q_{j}[+1] =_{AC} Q .

Together with equation (6) this yields E_{R} ⊢ P ≤ Q.

– Case 2.2: Q =_{AC} a^{∗}(∑_{j∈J} b_{j}.Q_{j}[+1]). Since P ⊏_{∼}_{R} Q and P →^{a_{i}} P_{i} and Q is saturated, Lem. 4.8 implies that for each i ∈ I

1. either a_{i} = a and P_{i} ⊏_{∼}_{R} Q,

2. or there is a j such that a_{i} = b_{j} and P_{i} ⊏_{∼}_{R} Q_{j}. Clearly, each P_{i} is a normal form in which all proper subterms of the form c^{∗}S occur in the context c. , and with size(P_{i}) < size(P). In the first case, applying induction to P_{i} ⊏_{∼}_{R} Q, we infer that E_{R} ⊢ P_{i} ≤ Q. Therefore, by substitutivity,

E_{R} ⊢ a_{i}.P_{i} ≤ a.Q .  (7)

In the second case, Lem. 4.10 implies E_{R} ⊢ Q_{j} = R_{j}, with R_{j} a strongly saturated normal form, in which each subterm of the form c^{∗}S occurs in the context c. . Then by induction P_{i} ⊏_{∼}_{R} R_{j} implies E_{R} ⊢ P_{i} ≤ R_{j}. It follows, by substitutivity, that

E_{R} ⊢ a_{i}.P_{i} ≤ a_{i}.R_{j} = b_{j}.Q_{j} .  (8)

Hence, for some J_{0} ⊆ J:

P ≤^{(RS2)} a^{∗}(a.Q + ∑_{i∈I} a_{i}.P_{i}[+1]) ≤^{(8),(7)} a^{∗}(a.Q + ∑_{j∈J_{0}} b_{j}.Q_{j}[+1]) . (9)

It is easy to see that P ⊏_{∼}_{R} Q implies that initials(Q) \ {✓} = {b_{j} | j ∈ J_{0}} ∪ {a}, and that P →^{✓} 0 if and only if Q →^{✓} 0. Hence

a^{∗}(a.Q + ∑_{j∈J_{0}} b_{j}.Q_{j}[+1]) ≤^{(RS1)} a^{∗}(a.Q + ∑_{j∈J} b_{j}.Q_{j}[+1]) =^{(PA1),(PA2)} Q .

Together with equation (9) this yields E_{R} ⊢ P ≤ Q.

The proof is now complete.

4.4 Traces

The axiom system E_{T} consists of the laws for bisimulation equivalence in Table 2 and of

\begin{aligned}T1 & a.(x + y) & = & a.x + a.y \\ T2 & a^{∗}(x + y) & = & a^{∗}x + a^{∗}y \\ T3 & a^{∗}(a.x) & = & a.(a^{∗}x) . \end{aligned}

Axiom T1 is a well-known equation used to characterize trace equivalence over finite synchronization trees, and axiom T2 is the adaptation of this equation to the case of prefix iteration. Finally, T3 is, to the best of our knowledge, a new axiom.

Theorem 4.11. For every P, Q ∈ BCCS^{p∗},

1. P ≃_{T} Q iff E_{T} ⊢ P = Q;

2. P ⊏_{∼}_{T} Q iff E_{T} ∪ {(S)} ⊢ P ≤ Q.

4.5 Language Semantics

The axiom system E_{L} consists of the laws for bisimulation equivalence in Table 2, T1–3 and the equations

\begin{aligned}L1 & a.0 & = & 0 \\ L2 & a^{∗}0 & = & 0 . \end{aligned}

Axiom L1 is an adaptation to action prefixing of a well-known equation from regular algebra, and axiom L2 is the generalization of this equation to the case of prefix iteration.

Theorem 4.12. For every P, Q ∈ BCCS^{p∗},

1. P ≃_{L} Q iff E_{L} ⊢ P = Q;

2. P ⊏_{∼}_{L} Q iff E_{L} ∪ (S) ⊢ P ≤ Q.

Proof. We leave it to the reader to check the soundness of the axiom system E_{L} ∪ (S), and concentrate on the completeness results.

1. Assume that P ≃_{L} Q. We shall prove that E_{L} ⊢ P = Q. A simple term rewriting analysis (which is omitted here) shows that each process term is provably equal to a term which is either 0-free, or of the form 0. Suppose that two terms P and Q are language equivalent. We distinguish two cases.

- Case 1: P ≡ 0. Then clearly also Q ≡ 0, so P ≡ 0 ≡ Q.

- Case 2: P is 0-free. Then clearly Q is also 0-free. Since P and Q are 0-free and language equivalent, it is not hard to see that they are also trace equivalent. So, according to Thm. 4.11, the equation P = Q can be derived from E_{T}, which is included in E_{L}.

2. Note that, for every P, Q ∈ BCCS^{p∗}, the following holds:

P ⊏_{∼}_{L} Q iff P + Q ≃_{L} Q .

Thus the completeness of the axiom system E_{L} ∪ {(S)} with respect to ⊏_{∼}_{T} is an immediate consequence of the first statement of the theorem.

5 Further Work

The completeness results presented in this paper deal with a significant fragment of the notions of semantics discussed in [7]. To our mind, the most important omission is a complete proof system for failures semantics [4] over BCCS with prefix iteration. We conjecture that a complete axiomatization for the failure preorder can be obtained by adding the laws

\begin{aligned}a.(x + y) & ≤ & a.x + a.(y + z) \\ a.a^{∗}(x + y) & ≤ & a.a^{∗}x + a.a^{∗}(y + z) \\ a.a^{∗}x & ≤ & a^{∗}a.(x + y) \\ a^{∗}(x + y + a.(y + z)) & ≤ & a^{∗}(x + a.(y + z)) + y \\ a^{∗}x & ≤ & a^{∗}(x + a.y) \end{aligned}

to those for bisimulation equivalence (cf. Table 2), and we are currently working on the details of such a proof. The crux of the argument is a proof to the effect that the suggested inequations are sufficient to convexly saturate each process term, in the sense of [2]. We have also obtained irredundancy results for the axioms systems for ready simulation, simulation, trace and language equivalence. These will be presented in the full version of this paper, together with a characterization of the expressive power of BCCS with prefix iteration.

Acknowledgements: The research reported in this paper originates from a question posed by Rocco De Nicola. We thank the anonymous referees for their comments.

References

1. L. Aceto, W. J. Fokkink, R. J. van Glabbeek, and A. Ingólfsdóttir, Axiomatizing prefix iteration with silent steps, Information and Computation, 127 (1996), pp. 26–40.

2. J. Bergstra, J. W. Klop, and E.-R. Olderog, Readies and failures in the algebra of communicating processes, SIAM J. Comput., 17 (1988), pp. 1134–1177.

3. B. Bloom, S. Istrail, and A. R. Meyer, Bisimulation can’t be traced, J. Assoc. Comput. Mach., 42 (1995), pp. 232–268.

4. S. Brookes, C. Hoare, and A. Roscoe, A theory of communicating sequential processes, J. Assoc. Comput. Mach., 31 (1984), pp. 560–599.

5. J. H. Conway, Regular Algebra and Finite Machines, Mathematics Series (R. Brown and J. De Wet eds.), Chapman and Hall, London, United Kingdom, 1971.

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

7. R. J. v. Glabbeek, The linear time – branching time spectrum, in Proceedings CONCUR 90, Amsterdam, J. Baeten and J. Klop, eds., vol. 458 of Lecture Notes in Computer Science, Springer-Verlag, 1990, pp. 278–297.

8. , A complete axiomatization for branching bisimulation congruence of finitestate 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.

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

10. H. Lin, An interactive proof tool for process algebras, in 9th Annual Symposium on Theoretical Aspects of Computer Science, vol. 577 of Lecture Notes in Computer Science, Cachan, France, 13–15 Feb. 1992, Springer, pp. 617–618.

11. R. Milner, A complete inference system for a class of regular behaviours, J. Comput. System Sci., 28 (1984), pp. 439–466.

12. , Communication and Concurrency, Prentice-Hall International, Englewood Cliffs, 1989.

13. , The polyadic π-calculus: a tutorial, in Proceedings Marktoberdorf Summer School ’91, Logic and Algebra of Specification, NATO ASI Series F94, Springer-Verlag, 1993, pp. 203–246.

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

Recent BRICS Report Series Publications

RS-98-49 Luca Aceto, Willem Jan Fokkink, and Anna Ingólfsdóttir. A Cook’s Tour of Equational Axiomatizations for Prefix Iteration. December 1998. 14 pp. Appears in Nivat, editor, Foundations of Software Science and Computation Structures: First International Conference, FoSSaCS ’98 Proceedings, LNCS 1378, 1998, pages 20–34.

RS-98-48 Luca Aceto, Patricia Bouyer, Augusto Burgueño, and Kim G. Larsen. The Power of Reachability Testing for Timed Automata. December 1998. 12 pp. Appears in Arvind and Ramanujam, editors, Foundations of Software Technology and Theoretical Computer Science: 18th Conference, FST&TCS ’98 Proceedings, LNCS 1530, 1998, pages 245–256.

RS-98-47 Gerd Behrmann, Kim G. Larsen, Justin Pearson, Carsten Weise, and Yi Wang. Efficient Timed Reachability Analysis using Clock Difference Diagrams. December 1998. 13 pp.

RS-98-46 Kim G. Larsen, Carsten Weise, Yi Wang, and Justin Pearson. Clock Difference Diagrams. December 1998. 18 pp.

RS-98-45 Morten Vadskær Jensen and Brian Nielsen. Real-Time Layered Video Compression using SIMD Computation. December 1998. 37 pp. Appears in Zinterhof, Vajtersic and Uhl, editors, Parallel Computing: Fourth International ACPC Conference, ACPC ’99 Proceedings, LNCS 1557, 1999.

RS-98-44 Brian Nielsen and Gul Agha. Towards Re-usable Real-Time Objects. December 1998. 36 pp. To appear in The Annals of Software Engineering, IEEE, 7, 1999.

RS-98-43 Peter D. Mosses. CASL: A Guided Tour of its Design. December 1998. 31 pp. To appear in Fiadeiro, editor, Recent Trends in Algebraic Development Techniques: 13th Workshop, WADT ’98 Selected Papers, LNCS, 1999.

RS-98-42 Peter D. Mosses. Semantics, Modularity, and Rewriting Logic. December 1998. 20 pp. Appears in Kirchner and Kirchner, editors, International Workshop on Rewriting Logic and its Applications, WRLA ’98 Proceedings, ENTCS 15, 1998.

RS-98-41 Ulrich Kohlenbach. The Computational Strength of Extensions of Weak König’s Lemma. December 1998. 23 pp.