Upload
gaurav-sharma
View
220
Download
0
Embed Size (px)
Citation preview
7/25/2019 Bergstra 89 ACP Universal
1/17
Ch
Un iversa l x iom Sys tem for Proce ss Sp ec i fica tion
J A
Bergst ra
University of Amsterdam, Departm ento f ~ e r Science
P.O. Box 19268, 1000 GG Amsterdam
State University of Utrecht, Depa rtmentof Philosophy
P.O. Box 8810, 3508 TA Utrecht
J W K lop
Centre for M athematicsand Com puter Science
P.O. Box 4079 , 1009 AB Am sterdam
Free University, Depa rtmentof M athematics and C omp uterScience
De Boelelaan 1081, 10 81 HV Amsterdam
Star ting wi th Basic Process Algebra BPA), an axio m system for a l ternat ive composi t ion + ) and
sequent ia l com pos i t ion . ) o f processes, we g ive a presenta t ion in severa l in termedia te stages lead-
ing to ACP, , A lgebra o f Communicat ing Procceses wi th abst ract ion. At each successive stage an
exam p le is g i ven show ing tha t the spec if ica ti on pow er i s i ncreased . A lso s om e g raph mode ls fo r the
respect ive a xiom systems are in lormaUy presented. We conclude wi th the F in ite Speci fica tion
Theorem for A CP , , sta t ing that each f in i te ly branch ing, e f fective ly presented process as an e lement
of the graph model ) can be speci f ied in ACP, by means o f a f in i te system of guarded recursion
equations.
Key Words Phrases:communicat ing processes, process a lgebra, b is imula t ion semant ics, graph
models, recursive specif icat ions.
1985 M athem atical Sub ject C lassification:
68Q10 , 6805 5 , 68Q45 , 68N15 .
1982 CR Categories:F.1.2, F.3.2, F.4.3, D .3.3.
Note:
This paper is repr in ted wi th k ind permission o f the CWl Newsle t ter and the Centre for
Mathemat ics and C om puter Science f rom Issue no. 15 o f the CWl New sle tter June 1987) .
0 INTRODUCTION
Following R. M ilner s development of h is widely know n C alcu lus of Com municat ing Systems,
there have been in the last decade several approaches to pr ocess algebr a .e . the algebraic treat-
ment of com m unicat ing processe s . In th i s paper w e g ive a short and informal presentation of
som e developmen ts in process algebra wh ich started f ive years ago at the Centre for M athemat-
ics and Com puter Science and s ince two years in cooperat ion with the Univers ity of Amster-
dam and the State Universi ty of Utre ch t . M ost of the present paper can be foun d in the m ore
7/25/2019 Bergstra 89 ACP Universal
2/17
8
complete survey [6], where the subjects of specification and verification of processes are treated
in s oc alle d bisimulation semantics. Here, we ado pt a fur ther restrict ion by co ncentrat ing on the
s p e c i f i c a t i o n i s s u e
We start with a very simple axiom system for processes called Basic Process Algebra, in
wh ich no com m unication facil it ies are present. T his system is interesting no t on ly because i t is a
nucleus for al l process ax iom systems tha t are devised an d analyz ed in th e Algebra of Com -
m un icatin g Processes , bu t also because it provides a lin k with th e classical an d successful
theory of formal languages, in particular where regular languages and context-free languages are
concerned. In Section 2 we explain this link.
Next, we introduc e more and mo re operators, leading first to the axiom system AC P (Algebra
of C om mu nicating Processes) where comm unication between processes is possible , and finally to
A CP , (Algebra of C om m unicating Processes with abstraction). Examples are given showing that
the successive extensions yield mo re an d m ore specification power; an d a culm ination po int is
the Finite Specification Theorem for A CP ,, stat ing tha t e very finitely branching, effectively
presented process can be specified in A CP , by a finite system of recursion equations. Of course,
an algebraic system for processes is only really interesting and useful if also sufficient facilities
for process
verification are
present. T hese require an extension with so me infinitary pro of rules
which w ill no t be discussed here (for these, see the full version of th is pape r [6]). W e refer also
to the same pape r fo r a mo re extensive l ist of references tha n the on e below.
1. BA SIC PROCF~SSALGEBRA
The kernel of al l axiom systems for processes that we will consider, is Basic Process Algebra.
Not only is for that reason an analysis of BPA and i ts models worth-while , but also because i t
presents a new angle on some old quest ions in the theory of formal languages, in par t icula r
ab ou t context-free languages and determinist ic push -dow n autom ata. First le t us explain wh at is
m ean t by processes .
The processes that we will consider are capable of performing atomic steps or
actions
a , b , c
. . . . . with the idealization th at these actions are events with out posit ive dura tion in t ime;
i t takes only one m om ent to execute an action. The actions are com bined into composite
processes by the opera t ions + an d . , wi th the in te rpre ta tion tha t (a +b ) .c i s the process tha t
first chooses between executing a or b and, second, performs the action c after which it is
finished. At this stage i t does not matter how the choice is made. These operations,
alternative
composition and sequential composition
(or just sum and produ c0, a re the basic const ruc tors of
processes. Since time has a direction, multiplication is not commutative; but addition is, and in
fact i t is st ipulated that the options (summands) possible at some stage of the process form a
set.
Form ally, we will require tha t processes
x , y , z , . . .
satisfy the following axioms (where the
pro duc t sign is suppressed):
BPA
x y = y x
( x + y ) + z = x +~ y +z )
X X =X
(X +y)Z =XZ +yZ
(xy)z =xO z)
T ~ L E 1
In th e Introdu ction we used the term process algebra in th e generic sense of denoting the
area of algebraic approaches to concurrency, but we will also adopt the following technical
mea ning for it : a ny m odel of these axioms wi ll be a
p r o c e ss a lg e b r a . T h e
simplest process alge-
b r a
i s t h e t e r m m o d e l
of BPA, whose elements are BPA-expressions (buil t from the atoms
a , b , c , . . ,
by means of the basic constructors) modulo the equali ty generated by the axioms.
Th e term model i tself ( le t us call i t ] ) is no t very excit ing: i t con tains on ly finite processes. In
7/25/2019 Bergstra 89 ACP Universal
3/17
9
order to specify also inf ini te processes, we introduce recurs ion var iables X, Y ,Z , . . . . U si ng
these , one can spec i fy the process aaaa aa . . (per forming inf in it e ly ma ny con secut ive a -s teps)
by the recurs ion equat ion X = a X ; i ndeed , by unw i nd i ng w e have X = a X = a a X = a a a X . . . . .
In general , we wil l admit s imultaneous recursion, i .e . systems of recursion equat ions. A non-
tr ivial exam ple is the following specif ication of the pro cess beh avio ur of a S tack with d ata 0,1:
S T A C K
x=o~. YX l,LZX
Y=of o,LYY 1,LZY
z = 1 ~ + r z + l ~ z z
TABLE 2
H ere 0~ and 01 are the act ions pus h 0 and po p 0 , respect ively; l ikewise for 1. N ow S tack is
specified by th e f i rs t recursion variable, X. Ind eed , accordin g to the f i rs t equ at ion th e process X
is capable o f per forming e i ther the ac t ion 0~, a f te r which th e process i s transform ed in to Y X , o r
1~, a f te r which the p rocess is t ransform ed in to Z X . I n t h e f i rs t case we hav e , us ing the second
e q u a ti o n, Y X = ( 0 1 + 0 ~ . Y Y + I ~ ZY ) X = O f . X + O ~ Y Y X + I ~ Z Y X . This means tha t the process
Y X has three opt ions ; a f te r per forming the f i r s t one (01 ) i t behav es l ike the or ig ina l X . C ont inu-
ing in th i s mann er we f ind a t rans i tion d iagram o rprocess graph as in Figure 1.
Y Y X
FIGURE 1. Stack
I t i s not hard to imagine how such a process graph (a rooted , d i rec ted , connec ted , l abe led
graph) can be associated with a system of recursion equat ions; we wil l not give a formal
def in i tion here . Actua l ly , one can use such process graphs an d bui ld var ious models (graph
mode/s) for BP A fro m them ; this wil l be discussed now .
2 G R A P H M O D E L S F O R B P A
Let G be the se t of a l l a t mos t countably branching process graphs g,h . . . . o v e r t h e a c ti o n
a l phabe t A = { a , b , c . . . } . ( I. e. a no de in such a g r aph m ay have a t m os t coun t ab l y m a ny one -
step successors . ) O n G we define ope rat ions + an d as follows: g.h i s the resul t of appending
( the roo t of ) h a t e ach te rmina t ion no de o f g , an d g + h i s the resul t of ident i fy ing the roo t s of g
and h . (To be m ore prec ise, w e fi rs t have to unw ind g an d h a t i tt l e b i t so as to ma ke the i r root s
acyc l ic , o therwise the sum wou ld not have the in ten ded in te rpre ta t ion of mak ing an i r revers ib le
choice .) Le t t ing a b e the graph consi st ing of a s ingle a r row w i th labe l a , we now have a s t ruc-
t u r e ~= G ( + , - , a , b , e , . . . ) w h i ch co r r e sponds t o t he s i gnat u re o f BPA . Bu t i t i s no t a m ode l o f
BPA. For ins tance the l aw x + x = x does not hold in 8 , s ince a+a i s not the same as a ; the
form er i s a graph wi th two ar rows and the l a t t e r has o ne a r row.
7/25/2019 Bergstra 89 ACP Universal
4/17
45
H ere we n eed the fun dam enta l not ion of D . PARK (see [13D, ca l led bisimulation equivalenceo r
bisimilarity. Tw o graphs g and h a re b is imi la r i f there i s a m atching be tween the i r nodes (i .e . a
b i na r y r e l a ti on w i th dom a i n t he s e t o f nodes o f g, an d codom a i n t he s e t o f nodes o f h ) such t ha t
(1) the root s a re m atched; (2) f f nodes
s , t in g ,h
respec tive ly a re m atched and an a -s tep i s possi -
b le f rom s to some s then in h an a -s tep is poss ib le f rom t to some t such tha t s and t again
are matched ; O ) l ikewise with the roles of g ,h reversed. A matching satisfying (1-3) is a bisimu-
lat ion. An example is given in Figure 2, where (par t of) the matching is expl ici t ly displayed;
another example i s g iven in Figure 3 where the matching i s be tween each pa i r of nodes on the
same h orizo ntal level .
o ,
b
F m V g E 2
.
a
c b
a d
a )
a d
F m v v ~ 3
W e use t he no t a ti on
g e ~ h
to express that g and h are bis imilar . Now one proves that e~ is not
only an equiva lence on G, bu t even a congruence on 8 . Thu s the quot ient G = ~ / - - * i s wel l-
def ined , and i t i s a model of BPA. (6 has cons tant s a = a / ~ e tc . , and opera t ions + , - def ined
b y g + h = ( g + h ) / ~ f o r g = g / ~ a nd h =h /-~ > ; l ikewise for . . (For typographical reasons we
wi ll not d i st inguish be tween the syntac t ic + , - and the semant ic + , . in our nota t ion . )
Even m ore , G i s a ve ry n ice model of BPA : a l l systems of recurs ion equat ions in the syn tax
7/25/2019 Bergstra 89 ACP Universal
5/17
45
of BPA have a solution in G, and systems of
guarded
recursion equations l ike in T able 1 have
moreover a unique solution. G uar ded m eans that in the right-han d s ides of the recursion equa-
tions no recursion variable can be accessed without passing an atomic action. (E.g. X = a + X is
no t a guarded equation; i t has ma ny solu tions : a +b , a + c . . . . )
Some submodels (all satisfying the axioms of BPA) of G are of interest: G~, buil t from
f in i teO, bran ching process graphs; R, built from finite (but possibly cycle-containing) graphs; and
F, bu il t from finite and acyclic graphs. Also G ~ has the pro perty of providing unique solutions
for systems of guarded recursion equations. Without the condit ion of guardedness, there need
no t be solutions. E.g. the equation
X = X a + a
cannot be solved in G~. In the model R of regular processes one can always find unique solu-
t ions for guard ed recursion equations pro vided they are linear, that is, the expressions (terms) in
the equat ions m ay on ly be bui l t by sum a nd a res tr ic ted form o f product ca l led pre fix m ultipl i-
cation a.s ( a an
atom, s a general expression) which excludes products of recursion variables as
in T abl e 1. F or a com plete pro of system for regular processes, see [11].
EX MPLE
{ X = a X + b Y , Y = c X + d Y }
is a linea r system;
{ X = a X X + b Y , Y = c X + d Y X Y }
s
not.
The model R conta ins the
finite-state
processes; hence the notation R fo r regular as in form al
language theory. F inally, F contains only finite processes a nd is in fact isomorphic to the term
mode l T .
Som e systems of recursion equations sho uld be taken as equivalent. Clearly,
X = a X and X = a a X specify the sam e process in G. Less clearly, the tw o systems
E l = { X = a + b Y X , Y = c + d X Y }
E 2 = { X = a + b U , U = c X + d Z X , Y = c + d Z , Z = a Y + b U Y }
are equivalent in this sense: El specifies the process graph in F igur e 3a above, an d E2 specifies
the grap h in Fig ure 3b. Moreover, as we already saw, these two graphs are bis imilar. So E1 an d
E2 denote the same process in G. So the question arises:
Is equivalence o f recursion equations
over BPA, relative to the graph mod el G, decidable? A t the m om ent th is ques tion is wide open.
Th ere is an interesting connection here with context-free languages, as follows.
A guard ed system of recursion eq uations over BPA corresponds in an obvious w ay (for
details see [2]) to a context-free grammar (CFG) in Greibach Normal Form, and vice versa.
He nce each context-free language (CF L) ca n be obtain ed as th e set of finite traces o f a process
in G deno ted by a sy stem of guarded recursion equations. (A finite trace is the wo rd obta ined
by fo l lowing a pa th f rom the root to a te rmina t ion node . ) In fac t , to genera te a CFL i t i s
sufficient to look at certain restricted systems of recursion equ ations ~ e d norm ed . A system
is norm ed if in every s tate (of the corresponding process) there is a possibil ity to terminate. E.g.
X = a X i s n o t n o r m e d , b u t X = b + a X is . Th ere is a s imple syntactical cheek to d eterm ine
whether a sys tem is norm ed or not . Clearly, the proper ty norm ed a lso perta ins to process
graphs. In [2] i t is proved th at the equivalence prob lem stated above is solvable for such n orm ed
systems. This is rather surpris ing in view of the well-known fact that the equali ty problem for
CF Ls is unsolvable . The p oint i s tha t the process semantics in G of a C F G bears mu ch mo re
inform ation tha n th e trace set semantics , which is an a bstraction fro m th e process semantics .
Th e link wi th determini.~tic context-free languages resides in the following obser vatio n from
7/25/2019 Bergstra 89 ACP Universal
6/17
45
[ ] :
Tm3om/M ZI . Le t g, h e G be two n ormed and deterministic process graphs. Th en g*--*h if f g and h
have the same sets o f inite traces.
H ere a grap h is deterministic if two arrows leaving the same no de always have different label.
Th e C F L (i .e . the set of f inite traces) determined by a n orm ed an d determinist ic graph,
corresponding to a system of guarded recursion equations in BPA, is known as a simple C F L ;
the simple CF L s form a p roper subclass of the determinist ic CF Ls.
Summariz ing , we can s ta te th a t BPA and i t s graph m odel obta ined v ia the concept of b is imu-
lat ion provide a ne w angle on som e problems in th e theory of form al languages, concerned with
context-free languages. Here we think especially of determinist ic context-free languages
(DCF Ls) , obta ined b y de te rminis tic p ush-down automata , wi th the wel l-known open problem
whether the equa l i ty problem for D CF Ls is solvable. Thus, even in the absence of the ma ny
ope rators fo r parallellism, abstraction etc. which are still to be in trod uce d below, we hav e in
BPA an d i ts models a n interesting theory with potential implications for the D C F L problem.
3. Dm.OI,OCK
Af ter the excursion to semantics in th e preceding section we return to th e development of mo re
syntax for processes. A vital e lement in the present set-up of process algebra is the process 8,
signifying deadlock . The process ab performs its two steps and then terminates, succesfully;
bu t the process ab8 deadlocks after the a- a nd b-action: i t wan ts to d o a prop er (i .e . non-8)
action but i t can not. So 8 is the acknowledgement o f stagnation. W ith this in mind , the axioms
to w hich 8 is subject , m ay be clear:
I D E A D L O C K
8 x
=
TAm~ 3
The ax iom system of BP A (Table 1) together w ith the present axioms f or 8 is called B PAs. We
are now in a posit ion to motivate the absence in BPA of the other distributive law:
z (x + y )= z x +zy . Fo r , suppose i t wou ld be added . Then
a b = a ( b + 8 ) = a b + a 8 . T iffs m e an s
tha t a process wi th deadlock possib il ity i s equa l to one w i thout, con~ ct ing w i th our in tent ion to
mo del also deadloc k behav iour of processes.
Th e essential role of th e new process 8 will on ly be fully appreciated after the intro duction of
communication, below.
4 T H E ME R G E O P E RA T O R
I f x ,y are processes, their parallel composition x l ly is the process th at f irst chooses wh ether to
do a step in x o r in y, and proceeds as the parallel composition of the remainders of x , y . In
other words, the steps of x ,y are interleaved o r merged. Using an auxil iary oper ator II (with the
in te rpre ta t ion tha t x l l y i s l i ke xJ ly bu t w i th the com mitmen t of choosing the in i t ia l s tep f rom x )
the op eration )] can be succinctly defined by the axioms:
7/25/2019 Bergstra 89 ACP Universal
7/17
453
F R E E M E R G E
x l[ v = x l l y +y l l X ....
[ a x l l y = a x l l y )
l a l l y = a y
l x + v ) l l~ = x I l z + y t l z
TABLE 4
The system of nine axioms consist ing o f BPA an d the fou r axioms fo r merge will be called PA.
M oreover, if the axioms for 8 are add ed, the result w ill be PA~ . Th e opera tors II an d I1 will also
be called
merge and lef t-merge
respectively.
The merge operator corresponds to what in the theory of formal languages is called
shuffle.
The shutt le of the words
ab and cd
is the set of words
{abcd , acb d, cabal, acdb , ca db, cdab } .
Merging the processes ab and cd yields the process
ab ll cd=abll cd+cd l l ab =a b l l cd )+ c d l lab )
=a bll cd+cdll b)+c dl l ab+ablld)
=a bcd + c dllb ) + c dab + a b lld))
= a ~ d + c ~ + b d )) + c a a b + a b d + a b)),
a process hav ing as trace set the shuffle above.
A n exam ple of a process recursively defined in PA, is
X = a b l l X ) .
I t turns out tha t th is pro-
cess can already be defined in BPA , by the system o f recursion equations
{ X = a Y X , Y = b + a Y Y } .
To see that b oth ways of defining X yield the same process, one m ay 'unw ind' according to th e
given equ ations:
X = a b l l X ) = a b l l X + X l l b ) = a b X + a b lIX )ll b )
= a b X + a b
IIX)Hb))
= a b X + a . . . ) ,
while on the o ther hand
X = a Y X = a b + a Y Y ) X = a b X + a Y Y X ) = a b X + a . . . ) .
So at least up to level 2 the processes are equal. B y further unw inding they can be prov ed equ al
up to ea ch finite level.
Ye t there are processes definable in PA bu t no t in B PA. An example (from [4]) of such a p ro-
cess is given by th e recursion equation
X = 0~.(01'IIX)+ l . ( l t l lX )
describing the process behaviour of a Bag (or multiset), in which arbitrarily many instances of
the d at a 0,1 can be inserted (th e actions 0~ ,15 respectively) or retrieved (01',11'), with th e res-
t r ic tion tha t n o m ore O 's and l ' s can taken f ro m the B ag than were put in f i rs t. The d i f fe rence
with a Stack or a Queue is tha t a l l order be tween incom ing and outgoing O 's and l ' s i s lost. T he
process gra ph corresponding to the process Bag is as in Fig ure 4.
W e conclude this section o n PA by m ention ing the following fact (see [4]), which is useful for
establishing non-definability results:
T m ~ R l ~ 4 .1 .
Every process wh ich is recursive~ defined in PA and h as an inf ini te trace, has an
7/25/2019 Bergstra 89 ACP Universal
8/17
5
eventually periodic trace.
5
L
FIGUR E 4
Bag
5 COMMUNICATION
So far, the parallel compositionor merge (ll) did not involvecommunication n the process xl~v:
one could say that x and y are freely merged or interleaved. However,some actions in one
process may need an ac t ion in another process for an ac tua l execut ion , l ike the ac t of shaking
hand s requi res s imul taneous ac ts of two persons . In fac t , handshaking i s the paradigm for the
type of co mm unica t ion which we wi ll in t roduce now. I f A ={a ,b , c . . . . . 8} is t he ac t ion a l pha -
bet , le t us adopt a binary communicat ion funct ion I :A A-->A sat isfying the axioms in Table 5.
C O M M U N I C A T I O N
FUNCTION
a l b = b l a
a I b ) l c = a J b [c)
6 1 a = 6
TABLE 5
H e r e a,b var y over A, including 8. W e can now specify merge w ith comm unication ; we use the
same nota t io n as for the f ree merge in Sec t ion 4 s ince in fac t f ree merge i s an ins tance of
merge w i th com mu nica t ion by choos ing the com mu nica t ion func t ion tr iv ia l , i. e. a l b = 8 f o r
a , b E A . Th ere are no w two auxi l iary operators , a l lowing a f ini te axiom atisat ion: lef t -merge (ill_)
a s be f o r e and ]
comm unication merge
or s im ply bar ) , which is an ex tens ion of the comm unica-
t ion fun c t ion in Tab le 5 to a l l processes, no t on ly the a toms. T he axiom s for ]l and i t s auxi l ia ry
opera tors a re g iven in Ta ble 6 .
7/25/2019 Bergstra 89 ACP Universal
9/17
55
M E R G E W I T H C O M M U N IC A T IO N
x l l y = x L y y L x x ly
axU _y = a( x l l y )
a L y = a y
( x + y ) L z = x Ik z + y l L z
a x I b = a l b ) x
a t b x = ( a l b ) x
a x l b y = ( a l b X x l l y )
( x + y ) l z = x l z + y l z
x I( r + z ) = x l y + x Iz
TABLE 6
W e also need the so-called
encapsulation
operators On (for every H C A ) for removing unsuccess-
ful at tem pts at communication:
E N C A P S U L A T I O N
0 n (a ) = a f f a ~ H
0 n ( a ) = 8 i f a e H
0H(X + y ) = 0 n ( x ) + 0 n ( r )
O n ( X Y ) = O H ( X ) O n O)
TABt~ 7
These axioms express that On 'kil ls ' a l l a toms mentioned in H, by replacing them with 8. The
axioms for BPA, DEADLOCK toge ther wi th the present ones in Tables 5-7 cons t i tu te the
axiom system AC P (Algebra of Co m mu nicating Processes). Typically, a system o f com mu nicat-
ing processes x l . . . . . x . i s now represented in AC P by the expression 0 a(xl l l - t lx .) .
Prefixing the encapsulation operator says that th e system x l . . . . . x. is to be perceived as a
separa te uni t w i th respec t to the comm unica t ion ac tions men t ioned in H; no comm unica t ions
between actions in H with an environment are expected or intende d.
A useful theorem to break down such expressions is the Expans ion Theorem (firs t formulated
by Milner , for the ease of CCS; see [12D which holds u nder the assum pt ion of the handshaking
a xio m x l y l z = T h is
axiom says tha t a l l communica t ions a re b inary . ( In fac t we have to
require associativity of 11' first - see Table 8.)
T ~ O ~ M 5.1 ~ v ~ s i o ~ ~ -~ o ~M ) .
x llt Ilxk= , ~ x , IIX ~ + ~ ( x , Ix / ) l l ~#
He re Xik denotes th e m erge of xi . . . . . Xk except xi , and Xig) denotes the same me rge except
xi , x j
(k>~3) . F or ins tance , for k = 3 :
xlLvllz=x l l ( r l l z ) + yL ( x l l x ) + z l l ( x l l y ) + ( r I z) ll x + ( z I x )l l y +( x l y ) ll z .
In order to prove the Expansion Theorem, one firs t proves by s imultaneous induction on term
complexity tha t fo r al l c losed AC P-terms (i .e . AC P-term s witho ut free variables) the following
axiom s o f s tandard concurrency
hold:
7/25/2019 Bergstra 89 ACP Universal
10/17
56
A X IO M S O F S T A N D A R D C O N C U R R E N C Y
xl l y ) l l z= xl l y t l z )
(x I.v)ll z = x I ,vii z)
x l y = y l x
x l l y = y l l x
x l O ' l z ) = ( x l y ) l z
TABLE 8
As in Section 2 one can construct graph models G,G/b,R,F for ACP; in these models the
axioms in T able 8 are valid. W e will discuss the co nstruction of these models in Section 7. (It is
however also possible to construct non-standard models of ACP in which these axioms do not
hold. W e will no t be interested in suc h pathological models .)
Th e defining pow er of A CP is s trictly greater th an th at of PA. The following is an example
(from [4]) of a process U, recursively defined in AC P, b ut no t definable in PA : let the alphabet
b e {a ,b ,c ,d ,8} and le t the communica t ion func t ion be g iven by c l c = a , d i d = b , a n d a ll o th er
communications equal to ~. Let
H = { c , d } .
Now we recursively define the process U as in
Table 9 :
U = a ~ ( d c Y I I Z )
X = c X c + d
Y = d X Y
Z = d X c Z
TABLE 9
Theft we claim U = b a b a 2 ) 2 b a 3 ) 2 b a 4 ) 2 . Indeed
us ing
the axioms in ACP and
put t ing
U. = a z ( d c Y I I Z )
for n~> 1, a s traightforward com putatio n shows that
U , = b a b a + l U , + l.
By Theorem 4.1, U is not definable in PA, s ince the one infinite trace of U is not eventually
periodic.
We will often adopt a special format for the communication function, called
read-write com-
munication. Let a f in i te se t D of da ta d a n d a se t { 1 . . . . p } o f p o r t s be given. Th en the alpha-
bet consists of r e a d ac t ions r / (d) and write actions wi ( d ) , for i = l , . . . , p a nd d ~ D . T h e
in te rpre ta t ion is: read d a tum d a t por t i , wri te da tum d a t po r t i respec tive ly . Fm ~e rm ore , the
a lphabet conta ins ac t ions c i (d ) f or i = 1 . . . . . p a n d d ~ D , w i t h interpretation: communicate
d at i . These actions will be called t ransact ions . The on ly non-trivial comm unications (i.e. no t
resulting in 8) are:
wi(d) l r i (d) f f i c i (d) .
Ins tead of
w i ( d )
we will a lso use the notation s i(d)
(send d along/). Note that read-write communication satisfies the handshaking axiom: all com-
mun ica t ions a re b inary .
~ 5.1.
Using the present read-write c om mu nication form at we can write the recursion equation for a
B a g B l 2 c f . S e c t io n 4 ) which reads da ta d ~ D a t por t 1 an d writes them at po rt 2 as follows:
/ h 2 = ~ r l d ) w 2 ~ l I B l 2 ) .
d D
7/25/2019 Bergstra 89 ACP Universal
11/17
57
6. ABSTRACTION
A fund am ental issue in the design an d specification o f hierarchical (or modularized) systems o f
com mu nicating processes is
abstraction.
W ithout having an abst rac t ion mechanism enabl ing us
to abstract fro m the inn er workings of modu les to be com posed to larger systems, specification
of al l bu t very small systems would b e v irtually impossible . W e will now extend th e ax iom sys-
tem A CP, obta ined thus fa r , wi th such an abst rac t ion mechanism.
Consider tw o Bags Bl2, B23 (cf. Example 5.1) with ac tion alphabets {r l d ) , s 2 d ) l d E D } a nd
{ r 2 d ) , s 3 d ) l d ~ D } ,
respectively. Th at is, Bl2 is a bag-like chan nel reading da ta d at p ort 1,
sending them to por t 2 ; B23 reads da ta a t 2 a nd sends them to 3 . (That the channels a re bags
means that , unlike the case of a queue, the order of incoming data is lost in the transmission.)
Suppose the bags are connected at port 2; so we adopt communications s 2 d ) l r 2 d ) = c 2 d )
where c 2(d) is the tran saction of d a t 2.
FIGURE 5. T ran spa ren t Bag B13
Th e composite system Bl3 =~H B1211B23)w here H = { s 2 d ) , r 2 d ) l d E D } , should, intuitively, be
again a Bag between ports 1,3. However, from some (rather involved) calculations we learn tha t
BI3 X r l(d)-(c2(d)-s 3(d))tjB13).
d a
So B~3 is a transp arent Bag: the passage o f d through 2 is visible as the transaction eve nt
c2(d). (No te that this terminology conflicts with the usual one in the area of comp uter net-
works, where a ne twork is c~ e d t ransparent i f the in te rna l s t ruc ture is
not
visible.)
H o w c a n w e
abstract
from such internal events, i f we are only interested in the external
behavio ur at 1,3? Th e first step to o btain such an abstraction is to remove the dist inctive iden-
t i ty of the actions to be abstracted, tha t is, to ren am e them all into one design ated action which
we call, after Milner, 7: the silent action. This rena min g is realised b y the abstraction operator 71,
parameterized by a set of actions I CA and subject to the following axioms:
A B S T R A C T I O N
, i ( 7 ) = 7
, 1 ( a ) = a i f a I
, t ( a ) = , i f a ~ I
n (x + y ) = n ( x ) + n ( y )
.... (x y )= n (x ) nf y )
TABLE 10
The second step is to at tem pt to devise axioms for the si lent step by m eans of which 7 can b e
removed from expressions, as e .g. in the equation
a T b = a b .
However, i t is not possible to
remove
a l l Ys i n an
expression if on e is interested in a fa i thful description of dead lock
behav iour of processes (at least in bisim ulation semantics, the framew ork adopted in th is paper).
For, consider the process (expression) a + 78; this process can deadlock, nam ely if i t chooses to
perform the s ilent ac tion . N ow, i f one wo uld propose na ive ly the equa t ions , x = x , = x , then
a + , 8
= a + 8 = a ,
and the la t te r process has n o deadlock possibi li ty . I t turns out th a t o ne o f the
propo sed equations, x7 = x, can be safely adop ted, bu t the other one is wrong. Fo rtuna tely, R.
Milner has devised some simple axioms which give a complete description of the properties of
the si lent step (complete with respect to a certain semantical notion of process equivalence
called r, 8-bisimulation, wh ich does respect deadlock behaviour; this no tio n is discussed below),
7/25/2019 Bergstra 89 ACP Universal
12/17
58
as follows.
S I L E N T S T E P
X ~ ' : X
r x = ' r x + x
a (~ x + y ) = a ( : x + y ) + a x
TABLE 11
T o r e t u r n t o ou r e xa m pl e o f t he t r a ns pa r e n t Ba g I ll 3 , a ft e r a bs tr a c t ion o f t he s e t o f t ra ns a c -
t ions I = { c 2 ( d ) l d e D } t he r e sul t i s indee d an ordin a ry Bag:
Zl(Bl3) = ~t( ~ r 1 d)(c 2(d).s 3(d)llBl3)) (*)
d e D
= ~ r l(d )(r- s 3(d)ll~-1(B13))= ~ ( r l (d )-v s 3(d))l l ~ t (B13
d e D d e D
= ~ r l d ) . s 3 d )) U ~ i 8 ~ 3 ) = Y ~ r l a ~ s 3 d )l l~ 1 B ~ 3 ) )
d e D d e D
f rom w hich i t fo l low s tha t ~ t(B13)= B i 3 ( ** ), t he Ba g de f i ned by
BI3 = ~ r l(d)( s 3(d)[IB13).
d e D
Here we were able to e l imina te a l l s i l ent ac t ions , but th i s wi l l not a lways be the case . For
ins tance , cha in ing tw o Stacks ins t ead o f Bags a s in Figure 5 y ie lds a process wi th e s sent i a l ~--
s teps. Likewise for a Bag fo l lowed b y a Stack. (Here e s sent i a l mean s : non - remo vable in
bi s imula t ion semant i c s . ) In f ac t , t he computa t ion above i s not a s s t r a ight forward a s was sug-
ges ted: to jus t i fy the eq ua t ions m arked wi th (*) and (**) w e need add i t iona l pro of pr inc ip les .
A s to (**) , th i s equa t ion i s jus t i fi ed by th e Recursive Specification Principle (RSP) s t a t ing tha t a
guarded system of recursion equations in which no abstraction operator ~z appears, has a unique
solution. W e wi ll no t d i scuss the jus t i fi ca t ion of equ a t ion (*) he re . T he jus t if i ca t ion of a pr inci -
p le l ike RS P i s tha t i t i s va l id in a l l s ens ib le m ode l s of ou r axioms ; how ever no te tha t for for -
r e a l c ompu t a t ions one h a s t o p os t da t e s uc h a p r inc i p l e e xpl ic it ly .
Co m bining a l l t he axiom s presented ab ov e in Ta bles 1 ,3 ,4 ,5,6 ,7 ,10 ,11 and a f ew axioms speci -
f y i ng t he i n t e r a c t i on be t we e n ~ a nd c ommuni c a t i on me r ge I , we ha ve a r r i ve d a t t he s ys t e m
A C P , , Algebra of Communicating Processes with abstraction ( see Ta ble 12) .
Ac tua l ly , in sp i t e of our r e s t r i c tion to spec if ica tion of processes a s s t a t ed in the In t roduc t ion ,
t he l a s t c ompu t a t i on c onc e r ne d a ve r y s i mp l e p r oc e s s verification, s howi ng t ha t t he c ombi ne d
s ys t e m ha s t he de s i r e d e x t e r na l be ha v i ou r o f a Ba g . Abs t r a c t i on , r e a l i z e d i n ACP, by t he
abs t r ac t ion ope ra tor and the s i l ent process r , c l ea r ly i s of c ruc ia l impor tance for process
ver if ica t ion. B ut a lso for process specif ica t ion abs t rac t io n is impo rtant . L et f :N ---> {a , b } b e a
s e que nc e o f s ymbo l s a,b , a nd l e t p f b e t h e pr oc e s f ( O ) . f ( 1 ) . f ( 2 ) . . . . t ha t i s , t he unique solu t ion
of the inf in i te sys tem o f r ecur sion equ a t ions {X, = f ( n ) X , + l I n ~ > 0 } . N o w w e h av e:
THEOREM6.1. There is a com putable func t ion f such that process p f i s not de f inable by a f in i te sys-
tem o f recurs ion equat ions in A C P ~ without abstraction operator.
O n the o the r hand , according to the F in i t e Spec if ica tion Th eorem 8.1 , eve ry process p f wi th
c om put a b l e f / s de f i na b le by a f in it e s ys t e m o f r e c u rs i on e qua t i ons i n f u l l ACP~ .
7/25/2019 Bergstra 89 ACP Universal
13/17
4 5 9
x + y = y + x A 1
x + r + z ) = x
+ y + z A2
x + x = x A 3
( x + y ) z = x z + y z A 4
xy)z=xO , ) A5
x + 8 = x A 6
8 x = 8 A 7
a l b = b l a C1
( a l b ) l c = a l ( b l c ) C 2
6 l a = 8 C 3
x l l y = x l l y + y l l x + x l y CM1
a l l x = a x C M 2
a x l l y = a ( x l l y ) CM3
( x +y)[ l_z =x l l z +y l l z
C M 4
a x l b = ( a l b ) x CM5
a [bx = ( a [ b )x C M 6
a x l b y = ( a l b ) ( x l l y ) C M 7
( x + y ) l z = x l z + y l z C M 8
x l O , + z ) = x l y + x l z C M 9
On ( a)= a f f aCH
D 1
On ( a ) =
i f a a H
D 2
aH(x +y)=aH (x)+0H0 ) D3
a H ( X y) = a H (X ) a H 0 2 ) D 4
ACP
x ' r = x T1
'rx + x = ' r x T 2
a ( x + y ) = a ( ' r x + y ) + a x
T 3
, r l l x = ' r x T M 1
rx l l y - ' r ( x ILv) TM 2
l -I x = 8 TC1
x I ' r= ~ TC2
~'x ly = x ly TC 3
x l 'ry = x ly T C 4
a H ( ) = D T
1 1('/ ')='/
TI1
' r l ( a ) = a i f aq~ T I 2
l(a)=~ i f
a ~ I
TI 3
l( x + y ) = l ( X ) + l ( Y ) T I 4
x y ) = < x ) . ~ y ) T I 5
TABLE 12
7 . G g n P r I M O DE LS F O R A C P
W e w i ll now cons t r uc t g raph m ode ls f o r A C P , i n ana l ogy w i t h t he cons t ruc t ion o f t he se m ode l s
for BPA in Sec t ion 2 . Again we s ta r t wi th a do ma in of a t m os t countably branching process
graphs G, the o nly d i ffe rence be ing tha t a r rows m ay no w a l so bear l abe l and & (By abuse o f
language we use the same nota t ion G . ) Nex t , we def ine on G in addi t ion to + , - opera t ions I I, IL
, I ,~ ,a e cor responding to the syntac t ic opera t ions I I ,lL , , l , a t t. W e wi ll on ly , d iscuss the
defini t ion of the f i rs t operat ion II . Let ab and ed be two process graphs as in Figure 6, and sup-
pose there a re communica t ions
a l d = f a nd b lc
= k, a l l o ther comm unica t ions be ing t r iv ial (i .e .
resu lt ing in a ). Th en abl led is the process graph ind ica ted in F igure 6 , a car tes ian pro du ct wi th
diagon al edges for the successful comm unicat ions.
7/25/2019 Bergstra 89 ACP Universal
14/17
46
g: a b
~ ~
h:. ~ gllh:
, , ,a , ~ , ,% _ b
w'- ,1 w- ,~,
F IG U RE 6
W e n o w h a v e a s t ru c t u re ~ = G ( + , - , H , [ [ , I , ~ , 0 n , , & a , b , e . . . . ) , w h ic h i s n o t y e t a m o d e l o f
A C P , b u t b e c o m e s s o a f t e r d i v i d i n g o u t t h e c o n g r u e n c e r,8-bisimilari y ( n o t a ti o n : ~ , ) , a g e n -
e r a l i z a t io n o f th e ' o r d i n a r y ' b i s im i l a r i t y e ~ o f S e c t i o n 2. H e r e w e s a y t h a t
g ~ - r h
f f t h e r e i s a
r e l a t i o n b e t w e e n t h e n o d e s o f g a n d t h e n o d e s o f h s u c h t h a t ( 1 ) t h e r o o t s a r e r e l a t e d ; ( 2 ) a
n o n - r o o t n o d e i s o n l y r e l a te d t o n o n - r o o t n o d e s ; ( 3) if n o d e s s , t in g ,h r e s p e c t iv e l y a r e r e l a t e d
a n d t h e r e i s i n g a n a - s t e p f r o m s t o s o m e s ' , t h e n t h e r e i s i n g a p a t h ~ r r ~ ra~ ' - ( i. e .
z e r o o r m o r e ~ - -s te ps f o l l o w e d b y a n a - s t e p f o l l o w e d b y z e r o o r m o r e ~ '-s te ps ) f r o m t t o s o m e t '
s u c h t h a t s ' a n d t ' a r e a g a i n r e l a te d ; ( 4 ) a s (3 ) w i t h t h e r o l e s o f g,h i n t e r c h a n g e d . ( S e e f o r a n
e x a m p l e o f s u c h a r ~ - b i s i m u l a t i o n F i g u r e 7 . ) A g a i n , t h i s e q u i v a l e n c e i s a c o n g r u e n c e o n ~ a n d
p u t t i n g G = ~ / ~ , , ~ w e h a v e a m o d e l f o r A C P , , i n w h i c h a l l s y s t e m s o f g u a r d e d r ec u r s io n e q u a-
t i o n s h a v e a s o l u t i o n , a n d e v e n a u n i q u e s o l u t i o n i f a b s t r a c t i o n o p e r a t o r s a r e a b s e n t f r o m t h e
s y s t e m .
A s b e f o r e i n S e c t i o n 2 , G h a s s u b m o d e l s R , F ( r e g u l a r a n d f in i te p ro c e s s e s , r e s p e ct i v el y ) .
R e m a r k a b l y , a s o b s e r v e d i n [ 1 ] , t h e r e i s n o m o d e l G j ~ b a s e d o n a l l fi n it e ly b r a n c h i n g g r a p h s
n o w . ( F o r A C P s u c h a m o d e l d o e s e x is t. ) T h e r e a s o n i s th a t t h e r e is n o s t r u c tu r e ~ , s in c e G ~
i s n o t d o s e d u n d e r t h e o p e r a t i o n s I I , l l, I , z . T h e a u x i l i a ry o p e r a t o r I i s t h e c u l p r i t h e r e .
7/25/2019 Bergstra 89 ACP Universal
15/17
46
b
a / x a
C / \ ' /
FIotrRE 7. Exam ple o f r~-/~-bisimulation: nod es o f the sam e colou r are
related
8 . T H E F I N I T E S P E C I F I C A T I O N T H E O RE M
ACP, is a powerful specification mechanism; in a sense it is a universal specification mechan-
ism: every
in i te ~ branch inb compu tab le process in the graph mode l G can be f in i tely spec i fied in
AC P,. (W e use the word 'specification' for ' sys tem of reenrsion equations'. ) W e have to be m ore
precise ab out the notio n of 'computab le process' . F irst , an intuit ive explanation: suppose
finitely branch ing process graph g E G is 'actually ' given; the labels m ay include and there
m ay be even infinite y-traces. Th at g is 'actually ' given m eans tha t the process grap h g m ust be
'computable ': g can be described b y some coding of the nodes in na tura l num bers an d recursive
functions giving in-degree, out-degree, edge-labels, etc. This notion of a computable process
graph is rather obvious, an d w e will no t give detai ls of the definition here.
No w even if the com putable graph g is an infinite process graph, i t can trivial ly b e specified
by an infinite co mp utable specification, as follows. First ren am e all y-edges in g to t-edges, for a
'fresh' atom t. Call the resulting process graph:
gt.
Next assign to each node s of
g t
a recursion
variable Xs and write down the recursion equation for Xs according to the outgoing edges of
node s. Let Xso be the variable corresponding to the root so of gt. As g is computable, g t is
com putab le and the result ing 'direct ' specification
E = {Xs = T,(X)IssNOD ES(g,)}
is evident ly a lso com putable (i .e .: the nodes can be num bered as s~ (n>~0), and a f te r coding the
sequence e , of codes of equations E~:X~ , = T~,(X) is a co m putab le sequence). Now the infinite
specification which uniquely determines g, is simply: { Y = ~ { t } X s o ) } U E . In fac t a l l
specifications below will h ave the fo rm {X = ~'i(X0), Xn =
T~ X)In~0}
where the guarded
expressions T~(X) ( = Tn(X~ . . . . ,X/. )) conta in no abst rac tion opera tors ~- j. They m ay co nta in
all other process operators. W e will say that such specifica~ons have restricted abstraction.
However, we wan t mo re tha n a com putable i~finite specification w ith restricted abstraction:
to describe process g raph g w e would l ike to find a f in i te specification w ith restricted abs tractio n
for g. In dee d this is possible:
TI~ORE M 8.1 (FINITE
SPECIFICATIONTHEOREM .
Le t the f in i te~ branch ing and com pu tab le process
7/25/2019 Bergstra 89 ACP Universal
16/17
46
graph g determine g in the graph model G of A C P , . Then ther e is a f ini te specification with res-
tricted abstraction E in A C P , such that [ E l = g . Here [ E ] / s the solution o f E in G.
Th e p r oo f i n [1 ] i s by c on s t ruc t ing a Tur i ng m a c h i ne in A CP , ; t he t a pe i s ob t a i ne d by g l uei ng
toge the r two Stacks a s de f ined in Table 2 . The re does not s eem to be an e s sent i a l d i f f i cul ty in
r e mov i ng t he c ond i t i on f in ite ly b r a nc h i ng i n t he the or em, i n f a vour o f a t mo s t c oun t a b l y
branching .
9 .
CONCLUDING REM RKS
E v e n t h o u g h t h e F i n it e S p e ~ c a t i o n T h e o r e m d e c l ar es t h e se t o f o p e r a to r s o f A C P ~ t o b e
snf i~cient for a l l specif ica t ions , in p rac t ice o ne w i ll need m ore o per a tors to m ake specif ica t ions
not only theore t i ca l ly but a l so prac t i ca l ly poss ib le . The re fore some addi t iona l ope ra tor s have
be e n de f i ne d a nd s t ud i e d i n t he p r e s e n t b r a nc h o f p r oc e s s a l ge b r a , no t a b l y a n ope r a t o r by
means of which d i f f e rent pr ior i t i e s can be g iven to d i f f e rent a tomic ac t ions , and a s t a t e ope ra tor
t a k ing i n t o a c c o un t i n f o r ma t i on f r om a s u i t a b le s t a t e s pac e . Us i ng p r io r i ti e s i mpos e d on a t omi c
a c t ions e na b l e s u s t o m ode l i n t e rr up t s i n a s ys t e m o f c om mu ni c a ti ng p r oc e s s e s; t he s t a t e ope r a -
t o r ha s t u r ne d ou t t o be i nd i s pe ns a b l e i n t he c on s t ruc t i on o f p roc e s s a lge b r a s e man ti cs f o r s om e
objec t -or i ented programming l anguages . For these deve lopments we re fe r to [6] . La te ly , some
t hor ough s tud i e s ha ve be e n m a de a bo u t e x t e nd i ng AC P~ wi t h s om e ne w c ons t a n ts : c fo r t he
empty process and ~ for an a l t e rna t ive to the s i l ent s t ep v ( [16 ,3] ) . The typica l equa t ion he re i s
T = ~ ] c .
A s ubs t a n ti a l a m oun t o f e f fo r t ha s b e e n i nve s t e d i n e x t e nd i ng A CP~ t o a s u i ta b l e fr a me w or k
a l so for process ve r i f i ca t ion , which was ba re ly d i scussed in the pre sent pape r . Process
ve ri fi ca tions hav e be en rea l i zed no w for seve ra l non - t r iv ia l p ro toco l s ( [14 ,9]) , and recent ly a l so
for so m e sys tol ic a lgori thm~ ([10,15]) for tasks l ike pa l ind rom e recogn i t ion, matr ix-vector m ul t i -
p l i ca t ion . Som e pos i t ive expe ri ence w as a l so obta ined us ing pro cess a lgebra fo r the spec if ica tion
and ve ri fi ca tion of a s imple prod uc t ion cont ro l sys tem for a conf igura t ion o f workce ll s.
F i na l l y we me n t i on t ha t b i s i mu l a t i on s e ma n t i c s , a s a dop t e d i n t he p r e s e n t pa pe r , i s by no
me ans the o nly process semant ic s . I t i s poss ib le to ident i fy man y processes which a re d i f f e rent
in b i s imula t ion semant i c s whi l e s t i l l r e t a in ing an adequa te desc r ip t ion of r e l evant a spec t s such
as deadloc k behaviou r , leading fo r ins t ance to r eadiness semanti cs or f a i lure semant ic s , em bo dy -
ing d i f f e rent v iews on processes. Fo r a s tud y in th i s a rea w e re fe r to [7] . F or an inves t iga t ion of
mo de l s o f A CP , ba s e d on Pe t r i Ne t s , s e e [ 8] .
RF_,FEKENCES
1. J .C.M. B ~ u , J .A. BERGSTRA,J .W . KL OP ( 1987). On t he c ons i s te nc y o f Koom e n s Fa i r
Ab s t r a c ti on R u l e .
TC S 51 1/2),
129-176.
2 . J .C.M. BA~T~t~, J_ A . BEROSTRA, J .W. I~ o P (1987). Dec idabi l i ty of b i s imu la t ion
equiva lence for processes gene ra t ing context - f r ee l anguages. J .W. DE B~y,x~s , A. J . N ~ ,
P .C . T ~ A W N (e ds.). Proceed ings o f t he P A R L E Con ference, E indhoven 1987 , Vo l . I I ,
Spr inge r LN C S 259, 94-113.
3. J .C.M . B A Ff le , R.J . VAN GLABBEEK 1987) .
Abstract ion and E m p~ Process in Process Alge-
bra,
CW I Re p or t CS-R8721 , Ce n t r e f o r M a t he ma t i c s a nd C om put e r Sc ie nce , Am s te r da m.
4. J .A. BERGSTRA, J .W . KLO P (1984) . Th e a lgebra o f recurs ively de f ined processes a nd the
alg ebr a o f regula r processes. J . PAREDAENS (ed.) . P r o c . l l t h I C A L P , Ant we r pe n 1984 ,
Spr inge r L N C S 172, 82-95.
5. J .A. BERGSTRA, .W . KL OP (1986) . A lgeb ra of com m un icat ing processes. J .W . DE BAKX~R,
M. HAZEWINKEL, .K. LENSTRA edS.) . C W I M onograph I , Proceed ings o f t he C W I Sympo-
sium Mathematics and Computer Science, Nor t h - Ho l l a nd , Ams t e r da m, 89 - 138 .
6. J .A. BERO SrRA, J .W . K L O P (1986) . Pro cess a lgebra : specif ica t ion and ver if ica tion in
bis im ula t ion semant ics . M . HAZEWrtCg~L, J .K . LENSTRA, L G .L T . MEERTENS edS.) .
C W I
Monograph 4 , Proceedings o f the C W I Sym posium Mathemat ics and Computer Sc ience
II ,
7/25/2019 Bergstra 89 ACP Universal
17/17
46
North-H oU and, Am sterdam, 61-94.
7. JA . B F a G ~ , J.W. KLOP, E.-R. OI.D~ROG 1987). Failures without chaos: a new process
seman tics for fair abstraction. M. WIRSING ed .).
Proceedings IF IP Conference on F ormal
Description o f Program ming Concepts, GL Avernae s 19 86,
North-Holland, Amsterdam, 77-
103.
8. R .J . VAN GLABBEEK,F.W . VAAm)RAOER 1987). Petri n et mod els for algebraic theories of
con cur ren cy. J. W . DE BAKKER,A .J. NIJMAN, P.C . TRELI~AVEN eds .).
Proc. P A R LE Confer-
ence, Eindho ven 1987, Vol. II, Springer LN CS 259, 224-242.
9. C .P .J . KOYMANS,J.C . MULDER 1986). A M odular Approach to Protocol Verification using
Process Algebra, Logic Group Preprint S eries Nr.6, Dep t. of Philosophy, State U niversity of
Utrecht.
10. L. KOSSEN, W .P.W EIH AI~ 1987 ).
Correctness Proo fs o r Systolic Algorithm s: Palindromes
and Sorting,
Repo rt FV I 87-04, Com puter Science Dep artment, U niversity of Amsterdam .
11. S. M Au ve 1987).
A Constructive Version of the Approxima tion Induction Principle, Report
FVI 87-09, Computer Science Department, University of Am sterdam.
12. IL M ILt,mR 1980).
A Calculus o f C ommunicating Systems,
Springer LNC S 92.
13. D. PARK 198 I). Concu rrency and autom ata on infinite sequences. Proc. 5th GI Confer-
ence, Springer LNCS 104.
14. F . W . V ~ R A G E R 1 98 6). Verification o f Two Comm unication Protocols by M eans o f Pro-
cess Algebra , CWI Report
CS-R8608, Centre for Mathematics and Com puter Science,
Amsterdam.
15. W.P.WEIJLAND 198 7). A Systolic Algorithm for M atrix-Vector M ultiplication, Report FVI
87-08, Com puter Sc ience Depa rtment, U niversity of A msterdam .
16. J. L .M . VRANCKI~N 19 86) . The Algebra of Communicating Processes with Emp y Process,
Report FV I 86-01, Com puter Science Dep artment, U niversity of Am sterdam.