Bergstra 89 ACP Universal

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.