regularity of bpa-systems is decidable · an important issue in automatic verification of...

25
Regularity of BPA-systems is decidable Citation for published version (APA): Mauw, S., & Mulder, H. (1994). Regularity of BPA-systems is decidable. (Computing science notes; Vol. 9427). Technische Universiteit Eindhoven. Document status and date: Published: 01/01/1994 Document Version: Publisher’s PDF, also known as Version of Record (includes final page, issue and volume numbers) Please check the document version of this publication: • A submitted manuscript is the version of the article upon submission and before peer-review. There can be important differences between the submitted version and the official published version of record. People interested in the research are advised to contact the author for the final version of the publication, or visit the DOI to the publisher's website. • The final author version and the galley proof are versions of the publication after peer review. • The final published version features the final layout of the paper including the volume, issue and page numbers. Link to publication General rights Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain • You may freely distribute the URL identifying the publication in the public portal. If the publication is distributed under the terms of Article 25fa of the Dutch Copyright Act, indicated by the “Taverne” license above, please follow below link for the End User Agreement: www.tue.nl/taverne Take down policy If you believe that this document breaches copyright please contact us at: [email protected] providing details and we will investigate your claim. Download date: 21. Nov. 2020

Upload: others

Post on 15-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

Regularity of BPA-systems is decidable

Citation for published version (APA):Mauw, S., & Mulder, H. (1994). Regularity of BPA-systems is decidable. (Computing science notes; Vol. 9427).Technische Universiteit Eindhoven.

Document status and date:Published: 01/01/1994

Document Version:Publisher’s PDF, also known as Version of Record (includes final page, issue and volume numbers)

Please check the document version of this publication:

• A submitted manuscript is the version of the article upon submission and before peer-review. There can beimportant differences between the submitted version and the official published version of record. Peopleinterested in the research are advised to contact the author for the final version of the publication, or visit theDOI to the publisher's website.• The final author version and the galley proof are versions of the publication after peer review.• The final published version features the final layout of the paper including the volume, issue and pagenumbers.Link to publication

General rightsCopyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright ownersand it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights.

• Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain • You may freely distribute the URL identifying the publication in the public portal.

If the publication is distributed under the terms of Article 25fa of the Dutch Copyright Act, indicated by the “Taverne” license above, pleasefollow below link for the End User Agreement:www.tue.nl/taverne

Take down policyIf you believe that this document breaches copyright please contact us at:[email protected] details and we will investigate your claim.

Download date: 21. Nov. 2020

Page 2: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

Eindhoven University of Technology

Department of Mathematics and Computing Science

Regularity of BPA-Systems IS Decidable

by

S. Mauw and H. Mulder

Computing Science Note 94/27 Eindhoven. May 1994

94/27

Page 3: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

COMPUTING SCIENCE NOTES

This is a series of notes of the Computing Science Section of the Department of Mathematics and Computing Science Eindhoven University of Technology. Since many of these notes are preliminary versions or may be published elsewhere, they have a limited distribution only and are not for review. Copies of these notes are available from the author.

Copies can be ordered from: Mrs. M. Philips Eindhoven University of Technology Department of Mathematics and Computing Science P.O. Box 513 5600 MB EINDHOVEN The Netherlands ISSN 0926-4515

All rights reserved editors: prof.dr.M.Rem

prof.dr.K.M.van Hee.

Page 4: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

Regularity of BP A-Systems is Decidable

Sjouke Mauw and Hans Mulder

Dept. of Mathematics and Computing Science, Eindhoven University of Technology,

P.O. Box 513, 5600 MB Eindhoven, The Netherlands. [email protected], [email protected]

Abstract. It is decidable whether a system in Basic Process Algebra (BPA) is regular with respect to bisimulation semantics. Basic operators in BPA are alternative composition, sequential composition and guarded recursion. A system is regular if the interpretations of all process vari­ables defined in the system have finitely many states. We present an effective method to transform a BPA specification into a linear specifi­cation whenever possible.

1 Introduction

An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite state space. The simplest extension of regular specifications is BPA (Basic Process Algebra [3]), which has operators for alternative and sequential composition and allows for the construction of infinite processes by means of guarded recursion. The languages generated by BPA specifications are exactly the context-free languages. However, we will not study language equivalence, but bisimulation equivalence ([9]) which is considered more appropriate for verification purposes.

It has already been shown that bisimulation equivalence is decidable for BPA processes ([1, 4]). An open problem was the question whether it is decidable if a BPA specification is regular (i.e. whether it can be interpreted as a graph which has finitely many states). If so, this would enable the application of the well known algorithms for regular systems to those BPA specifications which are in fact regular. This would help in deciding exactly when to use existing efficient implementations for deciding bisimulation equivalence (for example for the PSF-Toolkit [7]).

In this paper we prove that it is decidable whether a BPA system is regular, that is, all process variables defined by it are regular. Some results for simi­lar specification languages are known. Weakening BPA by replacing the general multiplication by action prefix multiplication will only allow the description of regular systems, while extending BPA with the communication merge to ACP (the algebra of communicating processes, [3]) yields a language in which regu­larity is not decidable. It is also known that regularity of BPA systems modulo language equivalence is not decidable.

Page 5: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

2

The basic observation in this paper is that if a process, is not regular this is caused by stacking a tail of processes: consider

X=aXb+c

This process can execute a and then enter state X b. From this state the process can do an a again and enter state Xbb. Executing more a steps leads to infinitely many different states.

In this paper we will formulate the conditions under which this stacking leads to an irregular process. Furthermore, we give a method to generate a linear specification if the BPA specification is known to be regular.

This paper is built up as follows. In Sect. 2 we introduce BPA and its inter­pretation in the graph model. Normed processes and the reachability relation play an important role in the decision procedure. They are defined in Sect. 3. Section 4 contains the main theorem of this paper and in Sect. 5 we give a lin­earization procedure.

Thanks are due to Felix Croes who was of great help while developing the ideas in this paper and to Michel Reniers for proofreading.

2 Basic Process Algebra

In this section we will give the signature of the theory BPA and its interpretation in the graph model. For a more detailed treatment we refer to [21.

2.1 Specifications

We consider a finite set of atomic actions A. Typical elements of A are a, b, .... Let V be a countably infinite set of process variables. Typical elements of V are X, Y, .... A BPA term (over A and V) is a term constructed from A, V and the operators· and + (sequential and alternative composition). An equation is an expression of the form X = t, where X E V and t is a BPA term. An equation X = t is guarded if every occurrence of a variable in t is in the sub-term q of some sub-term p. q of t (p, q BPA terms). A (BPA) specification is a finite collection of guarded equations, such that all variables occurring in the right-hand side of an equation occur in the left-hand side of some equation and no variable occurs in the left-hand side of two equations. The collection of variables occurring in specification S is denoted by Vs. If X is a variable defined in S, then De! s(X) is the right-hand side of the equation of which X is the left-hand side.

If V is a collection of variables, then V'" denotes the set of all finite sequences over V. The empty sequence is denoted by>.. The length lal of a sequence a is defined in the usual way. Greek letters a, p, ... range over V"'. Every non­empty sequence of variables can be considered as a BPA term by inserting the sequential composition operator. If the meaning of a sequence is clear from the context, we will not explicitly apply conversion functions from sequences to BPA terms and back. Furthermore if p is a BPA term, the expressions p' >. and p>. are

Page 6: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

3

interpreted as the BPA term p. Concatenation of sequences (j and p is denoted by ap. We have Aa = aA = a.

A specification is in Greibach Normal Form (GNF) if the right-hand sides of all equations have the form ao . ao + ... + an' an (n ::0: 0). Note that a; may be A so ai . (Ti = ai. Given an equation X = ao . 0"0 + ... + an' Un, we say that ai . (1'i

(0::; i :S n) is a summand of X, notation ai . (TiCX. In [l[ it is shown that every BPA specification can be transformed into a

specification in GNF. Therefore we can restrict ourselves to specifications in GNF.

A specification is linear if every summand of every equation in the specifica­tion has the form a or a . X.

2.2 The Graph Model

We will interpret BPA specifications in the so called graph model. This model consists of finitely branching rooted graphs with labeled edges. This means that one node is marked as the root and that every edge has a label from a given set A. A node is a termination node if it has no outgoing edges. A node is also called a state and an edge a transition. If there is an edge with label a from node s to node t, we denote this by s~t, or simply s~t. If there is a sequence of edges

ao a n _l () ao···a"'_1 I SO-+S1 ... -+ Sn n > 0 then we write So ~ Snl or simp y SO~Sn'

Definition 1. A relation R between the nodes of two graphs 9 and h is a bisim­ulation if the following holds.

- If s~s' is an edge in 9 and R(s, t), then there is an edge t~t' in h such that R(s', t'). If t~t' is an edge in hand R(s, t), then there is an edge s~s' in 9 such that R(s',t').

Two graphs 9 and hare bisimilar 1 notation gf-+h, if there is a bisimulation relating the roots of 9 and h.

The collection of graphs divided out by bisimulation equivalence is denoted by G / <->. This is a model of BPA. The notion of bisimulation can easily be extended to nodes from the same graph. For details see [2).

A specification in GNF is interpreted in G/<-> in the following way.

Definition 2. Let 5 be a specification and <1 E V;, then gr s(a) is the graph with

nodes V;, root node a and edges {X~~p~la E A, X E Vs, p,~ E V;, apeX}

From this definition it follows that ..\ is the only termination node. This construction is equivalent to the standard interpretation of BPA terms in the graph model. The above definition satisfies our needs in the easiest way. For u, (1' E VB we say that (1 and (1' are bisimilar, notation (1f-+U', if grs(u) and gr s (u') are bisimilar.

Proposition 3. Let S be a specification and fJ, (7', P E V;

Page 7: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

4

1. 0'----+0" => u p--+a' p

2. "# A II P # A II "P--+A =} "--+A II P--+A

Proof. 1. From the definition of the edges we infer a~u' => (jp~u' p, which can be generalized using induction on the number of transitions.

2. Proof by induction on the number of transitions in the sequence ap--+>'. If ap---t>. in one step, then either (T or p equals A. If ap-+Ul ... ----+).. in n + 1 steps, either (1 = .\, in which case the implication is trivially true, or a is of the form X!;" where X has a summand aT] and (Tl = TJt;,p. Now there are two cases. The first case is f/I;. = A. Then a---+'x and p = CT1--+.\ in n transitions. The second case is '7~ # A, then we can apply the induction hypothesis to ~~~ 0

Definition 4. A graph is regular if it is bisimilar to a graph with a finite set of nodes. Let S be a specification and X E Vs, then X is regular if grs(X) is regular. A specification is regular if all variables in Vs are regular.

Two alternative characterizations of regularity follow directly from the defi­nition.

Proposition 5. (i) A graph is regular if and only if there is no infinite sequence SO-->S,-->S2--> ... such that sd±sj for i # j, where So is the root of the graph. (ii) A graph is regular if and only if there is no infinite sequence SO-'Sl -'S2-' ...

such that Sit1±Sj for i # j, where So is the root of the graph.

Refer to [8J for a proof of the following proposition, which gives a correspon­dence between regular and linear specifications.

Proposition 6. A specification S is regular if and only if there is a linear spec­ification T such that Vs C VT and for all X E Vs grs(X)tigrT(X).

3 Normed Processes and the Reachability Relation

3.1 Normed Processes

A weakly normed process (or normed process for short) is a process which may terminate in a finite number of steps. 1

Definition 7. A node s in a graph is normed, notation sl, if 5 is a termination node, or there is a termination node t such that 5~t. A node that is not normed is called (strongly) perpetual2, notation 51)'. A graph is normed if its root node is normed. If S is a specification and " E V; then we say that " is normed if grs(") is normed.

1 A strongly normed process is a process which may terminate at any point during its execution. We will not use this notion in this paper.

2 A process is called weakly perpetual if it is not strongly normed.

Page 8: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

5

Proposition 8. Let S be a specification and u, p E VB then

Proof. If (1 or p is a termination node, and thus equal to A, the proposition is clearly true. Now suppose U---+l-A and P-----*A, then use Proposition 3.1 to de­rive ap----*A. For proving the other implication, suppose Up-1tA then we can lise Proposition 3.2 to derive <T--»A and p--»A. 0

Proposition 9. Let <T,p E V; such that <T1)-, then grs(<Tp)tt.grs(<T).

Proof. Construct a bisimulation by relating 'I~ to 'I for all 'I, ~ E V; for which 'I is perpetual. 0

In a given state, we can count the minimal number of transitions needed to terminate. This is called the norm of the state.

Definition 10. The norm of a node s is inductively defined by

{

00 if s1)-norm{s) = 0 if s! and s is a termination node

1 + min{ norm(t)ls-+t} if s! and s is not a termination node

Proposition 11. For all nodes sand t S'cit implies norm(s) = norm(t).

Proof. If both sand t are perpetual, then it is clear. Because 8 and tare bisimilar, it is impossible that s is perpetual and t is normed or vice versa. If sand tare normed, use induction on the norm. 0

Given a specification S we can calculate the normed variables in the following way. Define a sequence of sets of variables Ni inductively by

No = 0 N i+1 = Ni U {X 13auCX,uEV;'/YEu Y E Ni}

Now set N = Ut;::.oNi then N can be computed effectively.

Theorem 12. The set N contains exactly all normed variables of Vs. There is some i 2, 0 such that Ni = N i+1 and for this value N = N i .

Proof. It is clear from the construction that N contains only normed variables. In order to see that N contains all normed variables, we suppose that X is the variable such that X!, X rt N and X ---*A with a minimal number of transitions. We consider two cases. If X -+ A, then X has a summand a for some a E A and thus X E N 1 , which is a contradiction. If X -+Xo ... Xn --»A, then (Xo ... Xnl1 and thus XO---*A, ... Xn---*A. These variables all need at least one less transition to reach A than X, so they are elements of N. But by the definition of N this would imply that X E N, which again gives a contradiction.

Finally, since the Ni are an increasing sequence of subsets of Vs and Vs is finite, there are only finitely many different sets Ni and therefore there exists an i such that Ni = Ni+l' which implies that Ni+k = Ni for all k. 0

Page 9: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

6

If we define n + 00 = 00 + n = 00 we have the following proposition.

Proposition 13. For u, p E VB norm (up) = norm(u) + norm(p)

Proof. Induction on the length of u. If u = A or p = A then it is clearly true. If u = Xu' then norm(Xu'p) = norm(X) + norm(u'p) = norm(X) + norm(u') + norm(p) = norm (Xu') + norm(p). The first equality can be proven with induc­tion on the norm of X. 0

Proposition 14. Let X E VS , CT, P E VB 1 then

uL AX->up =? X->p

Proof. From (j 1 we derive u = ). or (j---il-A. In the first case the proposition is trivially true, In the second case we can use Proposition 3.1 to get Up-'l+-AP and by transitivity X __ p. 0

3.2 Reachability

The reachability relation X ~ Y expresses that variable X can become variable Y after executing a number of transitions. The sequence cr is stacked after Y and will be executed upon termination of Y.

Definition 15. Let S be a specification, then we define the reachability relation ~s on Vs x VB x Vs for all X, Y E Vs,u E VB by

X~sY ¢} 3pEV;,aEA apYu C X A pL

We will write ~ instead of ~ s if S is known from the context. 0"0 0"1

Definition 16. Consider for n > 0 the reachability sequence XO~Xl ~ ... O"n_l

~ X n , then we define the following properties

1. The sequence is normed if (XnUn-l ... uoH. 2. The sequence is a cycle if Xo = X n ·

3. A cycle is minimal if V05,i<j<S:nXi = Xj => i = 0 A j = n 4. The sequence is stacking if O"n-l .. ·0"0 =F A.

Since Vs is finite, we can consider (Vs, ~ s) as a finite graph and thus we have the following proposition.

Proposition 17. For a given specification S, ~ s has finitely many minimal cycles.

Reachability implies a transition relation:

Proposition 18. For all X, Y E Vs , u E VB

X~Y =? X->Yu

Proof. Suppose X~Y, then apYO"CX which gives X~pYa. Since p is normed, we can use Proposition 14 and conclude X ~ YO". 0

0"0 0"»_1

Corollary 19. If Xo~ ... ~ Xn (n > 0) is a reachability sequence, then XO~XnO"n-l ··.0"0_

Page 10: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

7

4 Deciding Regularity

Theorem 20. A specification S is regular if and only if '---l- S has no normed stacking minimal cycles.

Proof. First we prove the "only if" part by contradiction. Suppose that L-+ s 0"0 O"n-l

has a normed stacking cycle X'-> ... '-> X (n > 0), then from Corollary 19 we conclude X----*Xp, where p = O"n_l"'UO. Since the cycle is stacking, p =F .\. Using Proposition 3.1 we can construct a sequence

X --> X p--> X pp--> X ppp--> ....

We calculate the norm of each state using Proposition 13:

norm(Xp;) = norm (X) + i . norm(p)

The cycle under consideration is normed, therefore (X p)L therefore Xl and pl (Proposition 8). In other words, norm(X) < 00 and norm(p) < 00. Moreover, the cycle is stacking, hence norm(p) > o. Consequently, for i oF j, norm(Xp;) oF norm(Xpi). Using the fact that bisimulation respects the norm (Proposition 11) we have X p;t/tX pi and thus S is not regular (Proposition 5.ii).

The "if" part of the proof is more elaborate. Assuming that some X E Vs is not regular, we derive a contradiction. By Proposition 5.i there exists an infinite sequence (setting 0"0 = X)

such that U"it/zUj for i,j 2: 0, i =F j. From the absence of normed stacking cycles, we will derive the existence of i and j (i oF j) such that 0";<->0"; and thus we will have a contradiction.

The first step is to make the relation between the individual variables from ai and ai+l explicit. For this purpose, we will consider the infinite sequence as a directed tree with labeled nodes and unlabeled edges. For every variable in ai

(i "= 0), we create a node. This node is related to all reachable successors (if any) of this variable in Ui+l. Formally:

Definition 21. For every i "= 0 we have nodes (i,O), ... , (i, 100il- 1). The label L((i,k)) of node (i,k) is the kth variable of 0"; (if we start counting at 0). An edge from node (i,p) to node (i + 1,p') is denoted by (i,p) ...... (i + 1,p'). The edges are defined as follows. Let i "= 0 and 0"; = Xo ... X. (k "= 0) then, following Definition 2, the transition UC--+CTi+l is due to a summand apCXo. Now we consider two cases.

1. Ipi = 0 and thus p = A. Then 0";+, = X, ... X •. For 1 ~ p ~ k we define edges from (i,p) to (i + 1,p - 1).

2. Ipl > 0 and thus p = Yo ... Yh (h "= 0). Then 0";+, = Yo ... YhX, ... X •. There are two sub-cases. (a) If pl then we define edges from (i,O) to all nodes (i + 1, 0), ... , (i + 1, h).

Page 11: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

8

(b) If P1I then there is an m 2: 0 such that Ym 11 and Yo ... Ym-d. Then we define edges from (i,O) only to the nodes (i + 1,0), ... , (i + 1, m).

Moreover in both sub-cases we define edges from (i,p) to (i + 1, h + p) for 1 :0; p :0; k.

This construction implies that the sequence of labels at level i, namely L( (i, 0)) ... L( (i, 100ii - 1)) is exactly O'i. Furtherinore, a node (i, p) has exactly one successor if p > 0, while if p = 0 then (i,p) may have more than one successor or none at all.

Example 1. Figure 1 below shows a specification and a fragment of the graph corresponding to the sequence

S--->TUV --->W XYUV --->XYUV ---> ••••

A node (i, k) is represented by its label L((i, k)) appearing as the kth letter on the ith line in the figure (counting from 0); arrows denote -v> relationships. Note that the graph is almost a tree; it would be a tree if there were an edge from (1,0) (with label T) to (2,2) (with label Y). This edge is omitted because X is perpetual.

5 = aTUV T =bWXY+b U =c V =d W=e X =IZX Y =g Z =h

5

~ T U V

f\~ WXYUV

IIII X Y U V

f\\\\ Z X Y U V

IIII X Y U V ~ \ \ " 1\ \ '\ \

'I' ~ ~ ~ ~ Fig. }. Sample specification and successor graph

Before completing the proof of Theorem 20, we will formulate a few lemmas relating""-'+ to ~.

Lemma22. II there is an edge (i,p)-v>(i + l,q) such that p > 0, then L((i,p)) ... L((i, 100d - 1)) = L((i + 1, q)) ... L((i + 1, IO'H>I- 1))

Page 12: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

9

Proof. This follows directly from the definition. o

Lemma 23. Let n > 0, i 2: ° and (i,O),,-,{i + l,p,),,-, ... ,,-,{i + n,Pn) be a sequence of edges such that PI > 0, ... , Pn-l > 0, then there exists p E VS'

such that for all ° < k :0; n, L({i,O))~L({i + k,Pk)) and L«i + k,Pk + 1)) L({i + k,pd 2)) ... L({i + k, IO"'HI-I)) is equal to pL( (i, 1)) ... L( (i, 10".1- 1)).

Proof. Induction on n. If n = 1 then we consider the edge (i,O)"-'{i + I,p,). Then we have 0". =

Xo ... X k , O"H' = Yo ... YhX, ... Xk such that ° :0; p, :0; hand aYo ... YhcXo. YP1+ 1"' Yh

Because Yo ... Yp1-1L this gives a reachability step Xo L.....j. Ypll and thus . Ypl+ 1 ... Yh . .

L({" 0)) ...... L({, + I,PI)). If we take p = Yp , +1 ... Yh then L({, + I,PI + 1) J L«i + 1, PI + 2)) ... L( (i + 1, 100Hd - 1)) is equal to pL«i, 1)) ... L( (i, 100il- 1)), because both sequences are Yp1 +1 ", YhXl ... X k.

If n = m + 1, then by the induction hypothesis there is a p such that for

all ° < k:O; m, L({i,O))~L({i + k,Pk)) and L«i + k,Pk + I))L({i + k,Pk + 2)) ... L({i + k, IO"'H 1- 1)) is equal to pL({i, 1)) ... L({i, 10"01 - 1)). We have an edge (i + m,p=)"-'{i + m + I,Pm+1), and Pm 01 0, so Lemma 22 applies. This yields

L({i + m + I,Pm+1)) ... L({i + m + 1, 100i+m+1l- 1)) = L({i + m,Pm) )L({i + m,Pm + 1)) ... L«i + m, 100Hml- 1)) = L( (i + m, P=) )pL( (i, 1)) ... L( (i, 100ii - 1))

The second equality follows from the induction hypothesis with k substituted by m.

The first equality implies that L( (i + m + 1, Pm+1)) = L( (i + m, Pm)). By the

induction hypothesis L({i,O))~L({i+m,Pm)) and thus L({i,O))~L«i+m+l, Pm+1)). 0

Corollary24. Let n > 0, i 2: ° and (i,O),,-,{i + I,PI)"-' ... ,,-,(i + n,Pn) be a sequence of edges such that Pv = 0 only fOT the values vo, .. ' Vq of v, then there

exists a reachability sequence L( (i, 0) )eL«i + Vo, O))~ ... 4L({i + Vq, 0)), such that L({i + Vj, 1)) ... L({i + Vj, 100Hvi I - 1)). is equal to pq ... p'PoL({i, 1)) ... L({i, 10".1- 1))

We will say that (j, q) is a descendant of (i, p) if there is a sequence of "-' edges from (i,p) to (j,q).

Lemma25. All nodes (n,O) (n > 0) are descendents of node (O,O).

Proof. Suppose (i,p) is not a descendent of (O,O), then let j be the smallest number such that for some q, (i,p) is a descendant of (j,q). The only sub-case of Definition 21 where a node does not have a predecessor is the last one, so L«j,m))fr for some m < q. Therefore there is some r < P such that L({i,r)) is a descendant of L({j,m)). Hence, P > 0. 0

Page 13: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

10

Now we complete the proof of Theorem 20. Let T be the subtree formed by all descendants of node (0,0). T must be infinite because it contains all nodes (n,O) (Lemma 25). T is finitely branching, therefore by Konig's Lemma it contains an infinite branch. Let B be the lowest infinite branch, that is, the infinite branch with nodes (i, Pi) such that for all i if (i, q) is on an infinite branch, then q :::: Pi.

Since for every i there is a unique Pi such that (i,Pi) E B, we may consider B as a function mapping i to Pi.

We claim that for infinitely many i :::: 0 we have (i, 0) E B. Suppose that this is not the case, then for all n greater than some value k the nodes (n,O) are not in B.

Such a node (n,O) is a descendant of a node (k + l,j) with j < lajl. Since there are infinitely many such n and finitely many such j, at least one node (k + 1, j) must have infinitely many descendants (n,O). That node is therefore the root of an infinite subtree and we apply Konig's Lemma to find an infinite branch B' in this subtree. B' can be extended to an infinite branch in T, which contradicts the fact that B is the lowest infinite branch.

Now find the first j such that there is an i < j with L( (i, 0)) = L( (j, 0)) and

(i, O),(j, 0) E B. By Corollary 24 there is a reachability sequence L( (i, O))~ ... ~L( (j, 0)). Since j is minimal, this sequence is a minimal cycle. Moreover, L( (j, 0) )L( (j, 1)) ... L( (j, laj I - 1)) is equal to L( (i, 0) )Pq ... poL( (i, 1)) ... L( (i, lail - 1)).

We can repeat this construction, finding the first j' > j such that there is an i' satisfying j < i' < j' and L( (i', 0)) = L( (j', 0)), giving us another occur-

rence of a minimal cycle L( (i', 0)).0. ... ~L((j', 0)), with L( (j', 0) )L( (j', 1)) ... L( (j', h I - 1)) is equal to L( (i', 0) )Eq' ••• EoL( (i', 1)) ... L( (i', lai' I - 1)).

Repeating this construction infinitely often produces infinitely many occur­rences of minimal cycles. Since there are only finitely many minimal cycles

(Proposition 17), some minimal cycle occurs at least twice. Say X e ... ~ X

with occurrences L((i,O))~ ... ."!,L((j,O)) and L((i',O))~ ... ."!,L((j',O)). Set­ting P = Pq ... po, we know

L((i,O)) = L((j,O)) = L((i',O)) = L((j',O)) = X, L( (j, 0) )L((j, 1)) ... L((j, lajl - 1)) = L((i, O))pL( (i, 1)) ... L((i, lail - 1)), and L((j',O))L((j', 1)) .. . L((j', 1(7)'1-1)) = L((i',O))pL((i', 1)) .. . L((i', hi-I))

We consider two cases. First let P = A, then

L((j, 0)) ... L((j, lajl - 1)) = L((i, 0)) ... L((i, lail - 1))

and thus (J"i = (J"j which implies (J"it:::::!(J"j' Thus we have found i and j as promised at the start of the proof.

The second case is P =I A. Since there are no normed stacking cycles and

cycle Xe ... ~X is stacking, it must be a perpetual cycle. This means that p1\'.

Page 14: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

11

Consequently (Proposition 9),

L( (j, 0) )L( (j, 1)) ... L( (j, Io-j I - 1)) = L((i,O))pL((i, 1)) .. . L((i, Io-il-I))<-+ L((i,O))p = L((i',O))p<-+ L((i',O))pL((i',I)) ... L((i',hl-I)) = L((j',O))L((j',I)) ... L((j',lo-j·I-I))

and thus Gj+-+(Tj' , and again we have found i and j as promised. This concludes the proof of Theorem 20. 0

5 Linearization

A specification in GNF can be transformed into a linear specification if the con­ditions from the main theorem in the previous section are met. In this section we will give an effective linearization method. The idea behind the method is simply to get rid of anything following a perpetual variable and introduce new process variables corresponding to sequences of old ones. If this procedure converges, it yields a linear BPA-specification equivalent to the original one.

First we need some additional definitions.

Definition 26.

1. If (J' is a non empty sequence of variables, then [o-J denotes a fresh process variable.

2. If S is a specification, then [S] is the collection of equations derived from S by replacing every summand aXY 0- by a[XY 0-].

3. The operator * concatenates a sequence of variables to a process definition. It is defined as follows.

(aouo + ... + anun ) * Xu = aouo * Xu + ... + anCTn * Xu

X _ {apX 0- if p! ap * 0- - ·f -I> ap 1 p"

Definition 27. A specification S is reduced if for every summand aXo ... Xn (n > 0) (Xo ... Xn-d!.

Definition 28. The reduction red(S) of a specification S is derived from S by replacing all summands aXo ... Xn (n> 0) for which there exists 0 :s: i < n with (Xo ... Xi-I)! and Xiir by aXo ... Xi.

A specification S can be linearized by calculating a sequence of equivalent specifications Si (i ~ 0). If S is regular, only a finite number of specifications must be calculated in order to reach a linear Si. The specifications are defined as follows.

So = red(S) Si+! = lSi] U {[XY 0-] = De! T<d(S)(X) * Yo- I

X, Y E Vs,o- E V;,3aEA,zEvs;aXYo- C Z, [XYu] ~ VsJ

Page 15: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

12

We will not present a detailed proof of the correctness of this method. We will only give the main steps of the proof.

It is easy to verify that every Si is a reduced specification. Furthermore, by constructing a bisimulation, we have for all X E Vs and i :::: 0, gr s{X) ...... gr s.(X).

Finally we have that S is regular if and only if for some i :::: 0 Si = Si+1. We will only sketch the proof. Suppose that Si = Si+1, then Si = lSi], so there are no summands aXYu and thus Si is linear, which implies that S is regular. For the other implication, suppose that all Si are different, then there is an infinite sequence

X --> s, [0",]--> s, [0"2)--> s, ...

such that [O"i+d E Vs.+. and [O"i+1) 'Ie Vs. for i :::: O. This sequence can be transformed into an infinite sequence

of which infinitely many sequences 0'": are not bisimilar. This contradicts regu­larity of S.

6 Example

We will apply the results from the previous sections to a simple example. Con­sider the following specification.

A =aBCD B = bB +b C = cAC+c D=d

Clearly the variables B, C and Dare normed and since aBC D is a summand of A, A is normed too. Next we derive a reachability sequence. Since Bl, we

D C have A'--+C and since Ai, we have C~A. Thus we have a reachability cycle

A~C~A. This cycle is clearly stacking, and because ACDl it is a normed cycle. Now we may conclude that the specification is not regular. Indeed we have an infinite sequence

A....,.ACD....,.ACDCD....,. ...

Now consider a slightly modified system, which is derived from the previous system by deleting summand c of C. This makes C perpetual.

A =aBCD B=bB+b C =cAC D=d

Page 16: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

13

The variables Band Dare Dormed, while A and C are perpetual. We can find three minimal cycles

B~B A2:',C~A C~A2:',C

The first cycle is not stacking. The second and third cycle (which are in fact equal) are not normed, because (ACD)"ft and (CDA)"ft. Following the main the­orem, we conclude that the specification is regular. Now we can apply the lin­earization procedure and get for So the reduction of S:

For SI we obtain:

A =aBC B = bB+b C =cA D=d

A =a[BC] B = bB+b C =cA D =d [BC] = bBC + bC

Already 8 2 is a linear specification:

A = a[BC] B =bB+b C =cA D =d [BC] = b[BC] + bC

7 Conclusions

We have proved that regularity of BPA systems is decidable. The question whether it is decidable that a single process variable defines a regular process is still open. We conjecture that it is decidable. A simple example shows that this question is more complicated than regularity of a complete BPA system. Consider the specification

X=aYZ Y = bYc+d Z =eZ

Then it is easy to show that X and Yare irregular, so the specification as a whole is irregular. If we would change the definition of Z into

Z=cZ

Page 17: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

14

then the complete specification is still irregular (since Y is still irregular), but now X is regular. The reason is clearly that the nOfmed stacking tail en of Y is reduced to a regular perpetual process CCO by appending Z.

From this example we conclude that it is necessary to take the actual values of the atomic actions into account when deciding regularity of a single process variable. This probably leads to a more complex decision procedure than the one presented in this paper. Since the reachability relation and normedness are completely independent of the actual atomic actions, only the presence of any atomic action plays a role in the decision prodedure presented here.

We do not think that the restriction to complete systems is a problem in practical applications. In most cases one is interested in the linearization of a complete system. Specifications in languages such as PSF [6) only consider complete systems, without singling out a specific variable.

We claim that the techniques described in this paper easily extend to BPA, {which results from BPA by adding the special process constant 8 for unsuc­cessful termination}. A more interesting topic for future research is the question whether there are extensions of BPA with some operator for parallelism, on which regularity is also decidable.

References

1. J.C.M. Baeten, J.A. Bergstra & J.W. Klop, Decidability of bisimulation equiva­lence for processes generating context-free languages, Proc. PARLE 87 (J.W. de Bakker, A.J. Nijman, P.C. Treleaven, eds.), LNCS 259, pp. 93-114, 1987.

2. J.C.M. Baeten & W.P. Weijland, Process algebra, Cambridge Tracts in Theoret­ical Computer Science 18, Cambridge University Press, 1990.

3. J.A. Bergstra & J.W. Klop, Process theory based on bisimulation semantics, Linear time, branching time and partial order in logics and models for concurrency (J.W. de Bakker, W.P. de Roever, G. Rozenberg, eds.), LNCS 354, pp. 50-122, 1989.

4. S. Christensen, H. Hiittel & C. Stirling, Bisimulation equivalence is decidable for all context-free processes, Proc. CONCUR'92 (W.R. Cleaveland, ed.), LNCS 630, pp. 138-147, 1992.

5. S. Christensen, Y. Hirschfeld & F. Moller, Bisimulation equivalence is decidable for basic parallel processes, Proc. CONCUR'93 (E. Best, ed.), LNCS 715, pp. 143-157, 1993.

6. S. Mauw & G.J. Veltink, A process specification formalism, Fundamenta Infor­matiere XIII, pp. 85-139, 1990.

7. S. Mauw & G.J. Veltink, Algebraic specification of communication protocols, Cambridge Tracts in Theoretical Computer Science 36, Cambridge University Press, 1993.

8. R. Milner, A complete inference system for a class of regular behaviours, JCSS 28, pp. 439-466, 1984.

9. D.M.R. Park, Concurrency and automata on infinite sequences, Proc. 5th GI Conf. (P. Duessen, ed.), LNCS 104, pp. 167-183, 1981.

Page 18: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

Computing Science Notes

In this series appeared:

91/01 D. A1stein

91/02 R.P. Nederpe1t H.C.M. de Swart

91/03 J.P. Katoen L.A.M. Schoenmakers

91/04 E. v.d. Sluis A.F. v.d. Stappen

91/05 D. de Reus

91/06 K.M. van Hee

91/07 E.Poll

91/08 H. Schepers

91/09 W.M.P.v.d.Aalst

91/10 RC.Backhouse P.J. de Bruin P. Hoogendijk G. Malcolm E. Voennans J. v.d. Woude

91/1J R.C. Backhouse PJ. de Bruin G.Malcolm E.Voennans J. van der Woude

91/12 E. van der Sluis

91/13 F. Rietman

91/14 P. Lemmens

91/15 A.T.M. Aerts K.M. van Hee

91/16 A.J.J .M. Marcelis

Department of Mathematics and Computing Science Eindhoven University of Technology

Dynamic Reconfiguration in Distributed Hard Real-Time Systems, p. 14.

Implication. A survey of the different logical analyses "if...,then ... ", p. 26.

Parallel Programs for the Recognition of P-invariant Segments, p. 16.

Per[onnance Analysis of VLSI Programs, p. 31.

An Implementation Model for GOOD, p. 18.

SPECIFICATIEMETHODEN, een overzicht, p. 20.

CPO-models for second order lambda calculus with recursive types and subtyping, p. 49.

Tenninology and Paradigms for Fault Tolerance, p. 25.

Interval Timed Petri Nets and their analysis, p.53.

POLYNOMIAL RELATORS, p. 52.

Relational Catamorphism, p. 31.

A parallel local search algorithm for the travelling salesman problem, p. 12.

A note on Extensionality, p. 21.

The PDB Hypennedia Package. Why and how it was built, p. 63.

Eldorado: Architecture of a Functional Database Management System, p. 19.

An example of proving attribute grammars correct: the representation of arithmetical expressions by DAGs, p. 25.

Page 19: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

91/17 A.T.M. Aerts P.M.E. de Bra K.M. van Hee

91/18 Rik van Geldrop

91/19 Erik Poll

91/20 A.E. Eiben RV. Schuwer

91{21 1. Coenen W.-P. de Roever 1.Zwiers

91/22 G. Wolf

91/23 K.M. van Hee L.l. Somers M. Voorhoeve

91/24 A.T.M. Aerts D. de Reus

91/25 P. Zhou 1. Hooman R Kuiper

91/26 P. de Bra GJ. Houben 1. Paredaens

91/27 F. de Boer C. Palamidessi

91{28 F. de Boer

91/29 H. Ten Eikelder R. van Geldrop

91/30 1.C.M. Baeten F.W. Vaandrager

91/31 H. ten Eikelder

91/32 P. Struik

91/33 W. v.d. Aalst

91/34 1. Coenen

Transforming Functional Database Schemes to Relational Representations, p. 21.

Transformational Query Solving, p. 35.

Some categorical properties for a model for second order lambda calculus with subtyping, p. 21.

Knowledge Base Systems, a Formal Model, p. 21.

Assertional Data Reification Proofs: Survey and Perspective, p. 18.

Schedule Management: an Object Oriented Approach, p. 26.

Z and high level Petri nets, p. 16.

Formal semantics for BRM with examples, p. 25.

A compositional proof system for real-time systems based on explicit clock temporal logic: soundness and complete ness, p. 52.

The GOOD based hypertext reference model, p. 12.

Embedding as a tool for language comparison: On the CSP hierarchy, p. 17.

A compositional proof system for dynamic proces creation, p. 24.

Correctness of Acceptor Schemes for Regular Languages, p. 31.

An Algebra for Proccss Creation, p. 29.

Some algorithms to decide the equivalence of recursive types, p. 26.

Techniques for designing efficient parallel programs, p. 14.

The modelling and analysis of queueing systems with QNM-ExSpect, p. 23.

Specifying fault tolerant programs in deontic logic, p. 15.

Page 20: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

91/35 F.S. de Boer J.W. Klop C. Palamidessi

92/01 J. Coenen J. Zwiers W.-P. de Roever

92/02 J. Coenen J. Hooman

92/03 J. C.M. Baeten J.A. Bergstra

92/04 J .P.H. W. v .d.Eijnde

92/05 J.P.H.W.v.d.Eijnde

92/06 J.C.M. Baeten J.A. Bergstra

92/07 RP. Nederpelt

92/08 RP. Nederpelt F. Kamareddine

92/09 RC. Backhouse

92/10 P.M.P. Rambags

92/11 R.C. Backhouse J .S.C.P. v .d. Woudc

92/12 F. Kamareddine

92/13 F. Kamarcddine

92/14 J.C.M. Bacten

92/15 F. Kamareddine

92/16 RR. Seljce

92/17 W.M.P. van der Aalst

92/18 R.Nederpelt F. Kamareddine

92/19 J.C.M.Baeten 1.A.Bergstra S.A.Smolka

92/20 F.Kamareddinc

Asynchronous communication in process algebra, p. 20.

A note on compositional refinement, p. 27.

A compositional semantics for fault tolerant real-time systems, p. 18.

Real space process algebra, p. 42.

Program derivation in acyclic graphs and related problems, p. 90.

Conservative fixpoint functions on a graph, p. 25.

Discrete time process algebra, p.4S.

The tine-structure of lambda calculus, p. 110.

On stepwise explicit substitution, p. 30.

Calculating the Warshall/Floyd path a1goriihm, p. 14.

Composition and decomposition in a CPN model, p. 55.

Demonic operators and monotype factors, p. 29.

Set theory and nominalisation, Part I, p.26.

Set theory and nominalisation, Part II, p.22.

The tolal order assumption, p. 10.

A system at the cross-roads of functional and logic programming, p.36.

Integrity checking in deductive databases; an exposition, p.32.

Interval timed coloured Petri nets and their analysis, p. 20.

A uni fied approach to Type Theory through a refined lambda-calculus, p. 30.

Axiomatizing Probabilistic Processes: ACP with Generative Probabilities, p. 36.

Are Types for Natural Language? P. 32.

Page 21: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

92/21 F.Kamareddine

92/22 R. NederpelL F.Kamareddine

92/23 F.Kamareddine E.Klein

92/24 M.Codish D.Dams Eyal Yardeni

92/25 E.Poll

92/26 T.H.W.Beelen W.J.J.Stut P.A.c. Verkoulen

92/27 B. Watson G. Zwaan

93/01 R. van Ge1drop

93/02 T. Verhoeff

93/03 T. Verhoeff

93/04 E.H.L. Aarts J.H.M. Karst P.J. Zwietering

93/05 J.C.M. Baeten C. Verhoef

93/06 J.P. VelLkamp

93/07 P.D. Moerland

93/08 J. Verhoosel

93/09 K.M. van Hee

93/10 K.M. van Hee

93/11 K.M. van Hee

93/12 K.M. van Hee

93/13 K.M. van Hee

Non well-foundedness and type freeness can unify the interpretation of functional application, p. 16.

A useful lambda notation, p. 17.

Nominalization, Predication and Type Containment, p. 40.

Bonum-up Abstract Interpretation of Logic Programs, p. 33.

A Programming Logic for Fro, p. 15.

A modelling method using MOVIE and SimCon/ExSpect, p. 15.

A taxonomy of keyword pattern matching algorithms, p. 50.

Deriving the Aho-Corasick algorithms: a case study into the synergy of programming methods, p. 36.

A continuous version of the Prisoner's Dilemma, p. 17

Quicksort for linked lists, p. 8.

Deterministic and randomized local search, p. 78.

A congruence theorem for structured operational semantics with predicates, p. 18.

On the unavoidability of metastable behaviour, p. 29

Exercises in Multiprogramming, p. 97

A Formal Deterministic Scheduling Model for Hard Real­Time Executions in DEDOS, p. 32.

Systems Engineering: a Formal Approach Part I: System Concepts, p. 72.

Systems Engineering: a Formal Approach Part II: Frameworks, p. 44.

Systems Engineering: a Formal Approach Part JII: Modeling Methods, p. 101.

Systems Engineering: a Formal Approach Part IV: Analysis Methods, p. 63.

Systems Engineering: a Formal Approach

Page 22: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

93/14 J.C.M. Baeten J.A. Bergstra

93/15 J.C.M. Baeten J.A. Bcrgstra R.N. Bol

93/16 H. Schepers J. Hooman

93/17 D. Alstein P. van der Stok

93/18 C. Verhoef

93/19 G-J. Houben

93/20 F.S. de Boer

93/21 M. Codish D. Dams G. File M. Bruynooghe

93/22 E. Poll

93/23 E. de Kogel

93/24 E. Poll and Paula Severi

93/25 H. Schepers and R. Gerth

93/26 W.M.P. van der Aalst

93/27 T. Kloks and D. Kratsch

93/28 F. Kamareddine and R. Nederpelt

93/29 R. Post and P. De Bra

93/30 J. Deogun T. Kloks D. Kratsch H. Miiller

93/31 W. Korver

93/32 H. ten Eikelder and H. van Geldrop

Part V: Specification Language, p. 89. On Sequential Composition, Action Prefixes and Process Prefix, p. 21.

A Real-Time Process Logic, p. 31.

A Trace-Based Compositional Proof Theory for Fault Tolerant Distributed Systems, p. 27

Hard Real-Time Reliable Multicast in the DEDOS system, p. 19.

A congruence theorem for structured operational semantics with predicates and negative premises, p. 22.

The Desib'll of an Online Help Facility for ExSpect, p.21.

A Process Algebra of Concurrent Constraint Program­ming, p. 15.

Freeness Analysis for Logic Programs - And Correct­ness", p. 24.

A Typechecker for Bijective Pure Type Systems, p. 28.

Relational Algebra and Equational Proofs, p. 23.

Pure Type Systems with Definitions. p. 38.

A Compositional Proof Theory for Fault Tolerant Real­Time Distributed Systems, p. 31.

Multi-dimensional Petri nets, p. 25.

Finding all minimal separators of a graph, p. II.

A Semantics for a fine A-calculus with de Bruijn indices, p.49.

GOLD, a Graph Oriented Language [or Databases, p. 42.

On Vertex Ranking for Permutation and Other Graphs, p. 11.

Derivation o[ delay insensitive and speed independent CMOS circuits, using directed commands and production rule sets, p. 40.

On the Correctness o[ some Algorithms to generate Finite Automata [or Regular Expressions, p. 17.

Page 23: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

93/33 L. Loyens and J. Moonen

93/34 J. C.M. Baeten and J.A. Bergstra

93/35 W. Ferrer and P. Severi

93/36 J.C.M. Baeten and J.A. Bergstra

93/37 J. Brunekrecf J-P. Katoen R. Koymans S. Mauw

93/38 C. Vethoef

93/39 W.P.M. Nuijten E.H.L. Aarts D.A.A. van Erp Taalman Kip K.M. van Hee

93/40 P.D.V. van der Stok M.M.M.PJ. Claessen D. Alstein

93/41 A. Bijlsma

93/42 P.M.P. Rambags

93/43 B.W. Watson

93/44 B.W. WaL,on

93/45 E.J. Luit J.M.M. Martin

93/46 T. Kloks D. Kratsch J. Spinrad

93/47 W. v.d. Aalst P. De Bra G.J. Houben Y. Komatzky

93/48 R. Gerth

lLIAS, a sequential language for parallel matrix computations, p. 20.

Real Time Process Algebra with Infinitesimals, p.39.

Abstract Reduction and Topology, p. 28.

Non Interleaving Process Algebra, p. 17.

Design and Analysis of Dynamic Leader Election Protocols in Broadcast Networks, p. 73.

A general conservative extension theorem in process algebra, p. 17.

Job Shop Scheduling by Constraint Satisfaction, p. 22.

A Hierarchical Membership Protocol for Synchronous Distributed Systems, p. 43.

Temporal operators viewed as predicate transformers, p. II.

Automatic Verification of Regular Protocols in PIT Nets, p. 23.

A taxomomy of finite automata construction algorithms, p. 87.

A taxonomy of finite automata minimization algorithms, p. 23.

A precise clock synchronization protocol,p.

Trccwidth and Patwidth of Cocomparability graphs of Bounded Dimension, p. 14.

Browsing Semantics in the "Tower" Model, p. 19.

Velifying Sequentially Consistent Memory using Interface Refinement, p. 20.

Page 24: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

94/01 P. America M. van der Kammen R.P. NederpeJt O.S. van Roosmalen RC.M. de Swart

94/02 F. Kamareddine RP. NederpeJt

94/03 L.B. Hartman K.M. van Hee

94/04 J.C.M. Baeten J.A. Bergstra

94/05 P. Zhou J. Hooman

94/06 T. Basten T. Kunz J. Black M. Coffin D. Taylor

94/07 K.R Apt R Bol

94/08 O.S. van Roosmalen

94/09 J.C.M. Baeten J.A. Bergstra

94/10 T. verhoeff

94/11 J. Peleska C. Huizing C. Petersohn

94/12 T. KJoks D. Kratsch H. Muller

94/13 R Seljce

94/14 W. Peremans

94/15 RJ.M. Vaessens E.H.L. Aarts J.K. Lenstra

94/16 R.C. Backhousc H. Doornbos

94/17 S. Mauw M.A. Reniers

The object-oriented paradigm, p. 28.

Canonical typing and n-conversion, p. 51.

Application of Marcov Decision Processe to Search Problems, p. 21.

Graph Isomorphism Models for Non Interleaving Process Algebra, p. 18.

Fonnal Specification and Compositional Verification of an Atomic Broadcast Protocol, p. 22.

Time and the Order of Abstract Events in Distributed Computations, p. 29.

Logic Programming and Negation: A Survey, p. 62.

A Hierarchical Diagrammatic Representation of Class Structure, p. 22.

Process Algebra with Partial Choice, p. 16.

The testing Paradigm Applied to Network Structure. p. 31.

A Comparison of Ward & Mellor's Transfonnation Schema with State- & Activitycharts, p. 30.

Dominoes, p. 14.

A New Method for Integrity Constraint checking in Deductive Databases, p. 34.

Ups and Downs of Type Theory, p. 9.

Job Shop Scheduling by Local Search, p. 21.

Mathematical Induction Made Calculational, p. 36.

An Algebraic Semantics of Basic Message Sequence Charts, p. 9.

Page 25: Regularity of BPA-systems is decidable · An important issue in automatic verification of concurrent systems using process algebra is extending the techniques to systems with an infinite

94/18 F. Kamareddinc R. NederpeJt

94/19 B.W. Wat,on

94/20 R. Bloo F. Kamareddine R. NederpeJt

94/21 B.W. Watson

94/22 B.W. Watson

94/23 S. Mauw and M.A. Rcniers

94/24 D. Dams O. Grumberg R. Gerth

94/25 T. KIoks

94/26 R.R. Hoogcrwoord

Refining Reduction in the Lambda Calculus, p. IS.

The performance of single-keyword and multiple­keyword pattern matching algorithms, p. 46.

Beyond ~-Reduction in Church's A~, p. 22.

An introduction to the Fire engine: A C++ toolkit for Finite automata and Regular Expressions.

The design and implementation of the FIRE engine: A C++ toolkit for Finite automata and regular Expressi­ons.

An algcbraic semantics of Mcssage Sequence Charts, p. 43.

Abstract Interpretation of Reactive Systems: Abstractions Preserving VCTL *, 3CTL * and CTL *, p. 28.

K\,)-frce and W,-free graphs, p. 10.

On the foundations of functional programming: a programmer's point of view, p. 54.