aa r X i v : . [ c s . L O ] M a y An English Draft of Dr. Yong Wang
An Algebra of Actors Based on TrueConcurrency
Yong Wang
College of Computer Science and Technology,Faculty of Information Technology,Beijing University of Technology, Beijing, China
Abstract.
An algebra of actors A π fully captures the properties of actors based on asynchronous π -calculus,but, it is based on the interleaving bisimulation semantics. We adjust A π to A π tc to make A π having a trulyconcurrent semantics. We give the syntax and operational semantics of A π tc , and also the truly concurrentsemantics model and algebraic laws of A π tc . Keywords:
True Concurrency; Behaviorial Equivalence; Prime Event Structure; Algebra; Actors
1. Introduction
There are lots of work on true concurrency, including structures for true concurrency [5] [6] [7], truly con-current bisimilarities such as pomset bisimilarity, step bisimilarity, history-preserving (hp-)bisimilarity andthe finest hereditary history-preserving (hhp-)bisimilarity [8] [9]. And also several kinds of logics for trueconcurrency were presented, such as a logic with reverse modalities [10] [11], SFL logic [12], a uniform logicfor true concurrency [13] [14] and a logic for weakly true concurrency [15]. We also done several work onprocess algebra for true concurrency, including a calculus for true concurrency CTC [17], algebraic laws fortrue concurrency APTC [16] and a calculus of truly concurrent mobile processes π tc .On the other hand, the actor computational model is a well-known truly concurrent computational model[1] [2] [3] [4]. An algebra of actors A π [4] fully captures the properties of actors based on asynchronous π -calculus [19] [20], but, it is based on the interleaving bisimulation semantics. In this paper, we adjust A π toA π tc to make A π tc having a truly concurrent semantics.This paper is organized as follows. In section 2, we briefly introduce the actor computational model.Then we introduce the syntax and operational semantics of A π tc in section 3. In section 4.1, we make A π tc to have a truly concurrent semantics. Finally, in section 5, we conclude this paper. Correspondence and offprint requests to : Yong Wang, Pingleyuan 100, Chaoyang District, Beijing, China. e-mail:[email protected] Yong Wang
Incoming MessagesMail BoxX i X i+1 O u t go i ng M e ss a g e s Y readycreatesend Fig. 1. The actor computational model.
2. Actor Model
An actor is a concurrent object that encapsulates a set of states, a control thread and a set of local com-putations. It has a unique mail address and maintains a mail box to accept messages sent by other actors.Actors do local computations by means of processing the messages stored in the mail box sequentially andblock when their mail boxes are empty. During processing a message in mail box, an actor may performthree candidate actions:1.
Send action sends messages asynchronously to other actors by their mail box addresses;2.
Create action creates new actors with new behaviors;3.
Ready action makes the actor ready to process the next message from the mail box or block if the mailbox is empty.The illustration of an actor model as shows in Fig.1 which is first shown in [1].Actors have the following three properties:1.
Uniqueness : each actor has a unique name;2.
Freshness : actors cannot be created with well-known names or names received in a message;3.
Persistence : actors are persistent, they do not disappear after processing a message.Professor Gul Agha have done significant work on actors [2] [3] [4], in which, A π [4] is an algebra of actorsthat implements the above full properties of actors based on π -calculus [19] [20].
3. Syntax and Operational Semantics
We assume an infinite set N of (action or event) names, and use a, b, c, ⋯ to range over N , use x, y, z, w, u, v as meta-variables over names. We denote by N the set of co-names and let a, b, c, ⋯ range over N . Then weset L = N ∪ N as the set of labels, and use l, l to range over L . We extend complementation to L such that a = a . Let τ denote the silent step (internal action or event) and define Act = L ∪ { τ } to be the set of actions, α, β range over Act . And
K, L are used to stand for subsets of L and L is used for the set of complementsof labels in L .We write P for the set of configurations. Let ̃ x = x , ⋯ , x ar ( A ) and ̃ y = y , ⋯ , y ar ( A ) be tuples of distinct raft of An Algebra of Actors Based on True Concurrency 3 name variables, then B ⟨̃ x ; ̃ y ⟩ is called a configuration constant. Let the variable ˆ z range over {∅ , { z }} . Thesymbol ̃ x, ̃ y denotes the result of appending ̃ y to ̃ x . The symbol ̃ x, ˆ z means that ̃ x, z if ˆ z = { z } ; ̃ x otherwise.While ( ν ˆ z ) P means that ( νz ) P if ˆ z = { z } ; P otherwise. The symbol ≡ α denotes equality under standardalpha-convertibility, note that the subscript α has no relation to the action α .Following A π [4], we retype the syntax and semantics of A π tc , and adjust them to be suitable for trueconcurrency as follows. We give the syntax of A π tc as follows. Definition 3.1 (Syntax).
A truly concurrent configuration P in A π tc is defined inductively by the followingformation rules:1. B ⟨̃ x ; ̃ y ⟩ ∈ P ;2. ∈ P ;3. the Output xy ∈ P , for x, y ∈ Act ;4. if P ∈ P , then the Input x ( y ) .P ∈ P , for x, y ∈ Act ;5. if P ∈ P , then the Restriction ( νx ) P ∈ P , for x ∈ Act ;6. if P , ⋯ , P n ∈ P , then case x of ( y ∶ P , ⋯ , y n ∶ P n ) ∈ P ;7. if P, Q ∈ P , then the Composition P ∣ Q ∈ P ;The standard BNF grammar of syntax of A π tc can be summarized as follows: P ∶∶= B ⟨̃ x ; ̃ y ⟩ ∣ ∣ xy ∣ x ( y ) .P ∣ ( νx ) P ∣ case x of ( y ∶ P , ⋯ , y n ∶ P n ) ∣ P ∣ P. For each behavior instantiation B ⟨̃ x ; ̃ y ⟩ , a defining equation of the form B ⟨̃ x ; ̃ y ⟩ def = (̃ x ; ̃ y ) x ( z ) .P is assumed, where P is a configuration.The intuitions of the above constructs for actors, please refer to A π [4], we do not explain any more. Definition 3.2 (Free variables).
The free names of a configuration P , f n ( P ) , are defined as follows.1. f n ( B ⟨̃ x ; ̃ y ⟩) ⊆ {̃ x } ∪ {̃ y } ;2. f n ( ) = ∅ ;3. f n ( xy.P ) = f n ( P ) ∪ { x } ∪ { y } ;4. f n ( x ( y ) .P ) = f n ( P ) ∪ { x } − { y } ;5. f n (( νx ) P ) = f n ( P ) − { x } ;6. f n ( case x of ( y ∶ P , ⋯ , y n ∶ P n )) = f n ( P ) ∪ ⋯ ∪ f n ( P n ) ;7. f n ( P ∣ P ) = f n ( P ) ∪ f n ( P ) . Definition 3.3 (Bound variables).
Let n ( P ) be the names of a configuration P , then the bound names bn ( P ) = n ( P ) − f n ( P ) .In xy , x ( y ) and x ( y ) , x is called the subject, y is called the object and it may be free or bound. Definition 3.4 (Substitutions).
A substitution is a function σ ∶ N → N . For x i σ = y i with 1 ≤ i ≤ n , wewrite { y / x , ⋯ , y n / x n } or {̃ y /̃ x } for σ . For a configuration P ∈ P , P σ is defined inductively as follows:1. if P is a configuration constant B ⟨̃ x ; ̃ y ⟩ = B ⟨ x , ⋯ , x n ; y , ⋯ , y m ⟩ , then P σ = B ⟨ x σ, ⋯ , x n σ ; y σ, ⋯ , y m σ ⟩ ;2. if P = , then P σ = ;3. if P = xy.P ′ , then P σ = xσyσ.P ′ σ ;4. if P = x ( y ) .P ′ , then P σ = xσ ( y ) .P ′ σ ;5. if P = ( νx ) P ′ , then P σ = ( νxσ ) P ′ σ ;6. if P = case x of ( y ∶ P , ⋯ , y n ∶ P n ) , then P σ = case xσ of ( y σ ∶ P σ, ⋯ , y n σ ∶ P n σ ) ;7. if P = P ∣ P , then P σ = P σ ∣ P σ . Yong Wang
NIL ∅ ; {} ⊢ ∅ ; {} ⊢ xy ACT ρ ; f ⊢ P { x } ∪ ˆ z ; ch ( x, ˆ z ) ⊢ x ( y ) .P if ρ − { x } = ˆ z, y ∉ ρ, f = ch ( x, ˆ z ) if x ∈ ρ ; f = ch ( ǫ, ˆ z ) otherwise CASE ∀ ≤ i ≤ n, ρ i ; f i ⊢ P i (∪ i ρ i ) ; ( f ⊕ ⋯ ⊕ f n ) ⊢ case x of ( y ∶ P , ⋯ , y n ∶ P n ) if f i are mutually compatible COMP ρ ; f ⊢ P ρ ; f ⊢ P ρ ∪ ρ ; f ⊕ f ⊢ P ∣ P if ρ ∩ ρ = ∅ RES ρ ; f ⊢ Pρ − { x } ; f ∣( ρ − { x }) ⊢ ( νx ) P INST {̃ x } ; ch (̃ x ) ⊢ B ⟨̃ x ; ̃ y ⟩ if len (̃ x ) = x ≠ x Table 1. Type rules of A π tc According to the actor model, as in A π , actor names have uniqueness and freshness properties, and thepersistence property is relaxed by permitting a sink behavior. To assure such properties, as in A π , a typesystem is presented as follows.As in [4], – , ∗ ∉ N , for X ⊂ N , X ∗ = X ∪ {– , ∗} ; for f ∶ X → X ∗ , f ∗ ∶ X ∗ → X ∗ is defined as f ∗ ( x ) = f ( x ) if x ∈ X , and f ∗ (–) = f ∗ (∗) = – . ρ ; f ⊢ P is a typing judgement, where ρ is the receptionist set of P , and f ∶ ρ → ρ ∗ is a temporary name mapping function that relates actors in P to the temporary names they havecurrently assumed. f , f ∗ , f ⊕ f , f ∣ ρ , ch (̃ x ) have the same definitions and properties as those in [4]. Definition 3.5 (Type system).
The type system is consist of type rules that is the same as A π , we retypethem in Table 1.The following theorem still holds, we retype it from A π . Theorem 3.6. If ρ ; f ⊢ P then ρ ⊂ f n ( P ) , and for all x, y ∈ ρ , f ( x ) ≠ x , f ∗ ( f ( x )) = – , and f ( x ) = f ( y ) ∉ { – , ∗ } implies x = y . Furthermore, if ρ ′ ; f ′ ⊢ P then ρ = ρ ′ and f = f ′ .Since arbitrary substitution σ on a configuration P may destroy the uniqueness, freshness or persistenceproperties and cause P to be an invalid A π tc term, we often assume that σ is an one-to-one mapping. Thefollowing lemma also holds as in A π .The following lemma says that the type system respects ≡ α . Lemma 3.7. If ρ ; f ⊢ P and σ is one-to-one on ρ , then σ ( ρ ) ; f σ ⊢ P σ . The operational semantics is defined by LTSs (labelled transition systems), and it is detailed by the followingdefinition.
Definition 3.8 (Semantics).
The operational semantics of A π tc corresponding to the syntax in Definition3.1 is defined by a series of transition rules, they are shown in Table 2. Note that, these rules are adjustedto a truly concurrent version.The intuitions of transition rules in Table 2 for the actor computational model are the same as those of raft of An Algebra of Actors Based on True Concurrency 5 INP x ( y ) .P xz Ð → P { z / y } OUT xy.P xy Ð→ P BINP P xy Ð→ P ′ P x ( y ) ÐÐÐ→ P ′ ( y ∉ fn ( P )) RES P α Ð→ P ′ ( νy ) P α Ð→ ( νy ) P ′ ( y ∉ n ( α )) OPEN P xy Ð→ P ′ ( νy ) P x ( y ) ÐÐÐ→ P ′ ( x ≠ y ) PAR P α Ð→ P ′ Q ↛ P ∣ Q α Ð→ P ′ ∣ Q ( bn ( α ) ∩ fn ( Q ) = ∅ ) PAR Q α Ð→ Q ′ P ↛ P ∣ Q α Ð→ P ∣ Q ′ ( bn ( α ) ∩ fn ( P ) = ∅ ) PAR P α Ð→ P ′ Q β Ð→ Q ′ P ∣ Q { α,β } ÐÐÐ→ P ′ ∣ Q ′ ( β ≠ α, bn ( α ) ∩ bn ( β ) = ∅ , bn ( α ) ∩ fn ( Q ) = ∅ , bn ( β ) ∩ fn ( P ) = ∅ ) PAR P x ( z ) ÐÐÐ→ P ′ Q x ( z ) ÐÐÐ→ Q ′ P ∣ Q { x ( w ) ,x ( w )} ÐÐÐÐÐÐÐÐÐ→ P ′ { w / z } ∣ Q ′ { w / z } ( w ∉ fn (( z ) P ) ∪ fn (( z ) Q )) COM P xy Ð→ P ′ Q xy Ð→ Q ′ P ∣ Q τ Ð→ P ′ ∣ Q ′ CLOSE P x ( y ) ÐÐÐ→ P ′ Q xy Ð→ Q ′ P ∣ Q τ Ð→ ( νy )( P ′ ∣ Q ′ ) ( y ∉ fn ( Q )) BEHV x ( z ) .P {(̃ u, ̃ v )/(̃ x, ̃ y )} α Ð→ P ′ B ⟨̃ u ; ̃ v ⟩ α Ð→ P ′ ( B ⟨̃ x ; ̃ y ⟩ def = (̃ x ; ̃ y ) x ( z ) .P ) BRNCH case x of ( y ∶ P , ⋯ , y n ∶ P n ) τ Ð→ P i ( if x = y i ) Table 2. Transition rules of A π tc A π , the differences are that the PAR rule is replaced by four rules
PAR – PAR . The rules PAR – PAR capture the truly concurrent semantics.The following theorem still hold for transition rules in Table 2, which says the well-typed terms are closedunder transitions. Theorem 3.9. (1)If P is well-typed and P α Ð→ P ′ then P ′ is well-typed;(2)If P is well-typed and P { α , ⋯ ,α n } ÐÐÐÐÐÐ→ P ′ then P ′ is well-typed.As in A π , not every trace produced by the transition system in Table 2 corresponds to an actor compu-tation. We have the following instance, ( νx )( x ( u ) .P ∣ xx ∣ yx ) { x ( u ) ,xx,yx } ÐÐÐÐÐÐÐ→ P by the transition system in Table 2. But the above transition does not correspond to an actor computation,since there cannot be an actor named x in the environment. Similarly, we also need the notation of ρ -well-formed trace with ρ as an initial receptionist set, we retype it and adjust it to truly concurrent semantics asfollows. Yong Wang
Definition 3.10.
For a set of names ρ and trace s , rcp ( ρ, s ) is inductively defined as follows:1. rcp ( ρ, ǫ ) = ρ ;2. rcp ( ρ, s. ( ˆ y ) ⋯ ( ˆ y n )( x y ∣ ⋯ ∣ x n y n )) = rcp ( ρ, s ) ;3. rcp ( ρ, s. ( ˆ y ) ⋯ ( ˆ y n )( x y ∣ ⋯ ∣ x n y n )) = rcp ( ρ, s ) ∪ ˆ y ∪ ⋯ ∪ ˆ y n .We say s is ρ -well-formed if s = s . ( ˆ y ) ⋯ ( ˆ y n )( x y ) ∣ ⋯ ∣ x n y n .s implies x ∉ rcp ( ρ, s ) , ⋯ , x n ∉ rcp ( ρ, s ) ,and s is well-formed if it is ∅ -well-formed.Let ⇒ denote the reflexive transitive closure of τ Ð→ , α Ô⇒ denote ⇒ α Ð→⇒ , and P s Ô⇒ denote P s Ô⇒ P ′ for some P ′ . Then, the following lemma still hold for truly concurrent semantics. Lemma 3.11.
Let P ∣ Q be a well-typed A π tc term with rcp ( P ) = ρ and rcp ( Q ) = ρ . Then P ∣ Q ⇒ canbe unzipped into P s Ô⇒ and Q s Ô⇒ such that s is ρ -well-formed and s is ρ -well-formed.Similarly, in ρ -well-formed traces, we only consider the following traces s such that if s = s . ( α ∣ ⋯ ∣ α n ) .s , where ( ρ ∪ n ( s ) ∪ f n ( α ) ∪ ⋯ ∪ f n ( α n )) ∩ bn (( α ∣ ⋯ ∣ α n ) .s ) = ∅ .The transition sequences are also further constrained by a fairness requirement. Different to A π , thefollowing transition sequences are fair in A π tc . Diverge ⟨ x ⟩ ∣ xu ∣ y ( v ) .vv ∣ yv ⇒ Diverge ⟨ x ⟩ ∣ xu ∣ vv vv Ô⇒ Diverge ⟨ x ⟩ ∣ xu τ Ð→ Diverge ⟨ x ⟩ ∣ xu τ Ð→ ⋯ where Diverge ⟨ x ⟩ def = ( x ) x ( u ) . ( xu ∣ Diverge ⟨ x ⟩) . We see that all messages are delivered eventually.
4. A Theory of True Concurrency for A π tc Firstly, in this subsection, the related concepts on true concurrency are defined based on the followingconcepts [5] [6] [7].
Definition 4.1 (Prime event structure).
Let Λ be a fixed set of labels, ranged over a, b, c, ⋯ . A (Λ-labelled) prime event structure is a tuple E = ⟨ E , ≤ , ♯ , λ ⟩ , where E is a denumerable set of events. Let λ ∶ E → Λbe a labelling function. And ≤ , ♯ are binary relations on E , called causality and conflict respectively, suchthat:1. ≤ is a partial order and ⌈ e ⌉ = { e ′ ∈ E ∣ e ′ ≤ e } is finite for all e ∈ E .2. ♯ is irreflexive, symmetric and hereditary with respect to ≤ , that is, for all e, e ′ , e ′′ ∈ E , if e ♯ e ′ ≤ e ′′ , then e ♯ e ′′ .Then, the concepts of consistency and concurrency can be drawn from the above definition:1. e, e ′ ∈ E are consistent, denoted as e ⌢ e ′ , if ¬ ( e ♯ e ′ ) . A subset X ⊆ E is called consistent, if e ⌢ e ′ for all e, e ′ ∈ X .2. e, e ′ ∈ E are concurrent, denoted as e ∥ e ′ , if ¬ ( e ≤ e ′ ) , ¬ ( e ′ ≤ e ) , and ¬ ( e ♯ e ′ ) . Definition 4.2 (Configuration).
Let E be a PES. A (finite) configuration in E is a (finite) consistentsubset of events C ⊆ E , closed with respect to causality (i.e. ⌈ C ⌉ = C ). The set of finite configurations of E isdenoted by C(E) .Usually, truly concurrent behavioral equivalences are defined by events e ∈ E and prime event structure E , in contrast to interleaving behavioral equivalences by actions a, b ∈ P and process (graph) P . Indeed,they have correspondences, in [12], models of concurrency, including Petri nets, transition systems and eventstructures, are unified in a uniform representation – TSI (Transition System with Independence). raft of An Algebra of Actors Based on True Concurrency 7 If x is a process, let C ( x ) denote the corresponding configuration (the already executed part of theprocess x , of course, it is free of conflicts), when x e Ð→ x ′ , the corresponding configuration C ( x ) e Ð→ C ( x ′ ) with C ( x ′ ) = C ( x ) ∪ { e } , where e may be caused by some events in C ( x ) and concurrent with the other eventsin C ( x ) , or entirely concurrent with all events in C ( x ) , or entirely caused by all events in C ( x ) . With alittle abuse of concepts, in the following of the paper, we will not distinguish actions and events, prime eventstructures and processes, also concurrent behavior equivalences based on configurations and processes, anduse them freely, unless they have specific meanings.Next, we introduce concepts of truly concurrent bisimilarities, including pomset bisimilarity, step bisim-ilarity, history-preserving (hp-)bisimilarity and hereditary history-preserving (hhp-)bisimilarity. In contrastto traditional truly concurrent bisimilarities in CTC [17] and APTC [16], these versions in A π tc not onlymust take care of actions with bound objects, but also must suit for the constraints of the type system. Thatis, the truly concurrent bisimilarities are tagged with a parameter ρ . Note that, here, a PES E is deemed asa configuration. Definition 4.3 (Pomset transitions and step).
Let E be a PES and let C ∈ C(E) , and ∅ ≠ X ⊆ E , if C ∩ X = ∅ and C ′ = C ∪ X ∈ C(E) , then C X Ð→ C ′ is called a pomset transition from C to C ′ . When the eventsin X are pairwise concurrent, we say that C X Ð→ C ′ is a step. Definition 4.4 (Pomset, step bisimilarity).
Let E , E be PESs. A pomset bisimulation is a relation R ⊆ C(E ) × C(E ) , such that if ( C , C ) ∈ R with rcp ( C ) = rcp ( C ) , and C X Ð→ C ′ (with E X Ð→ E ′ ) then C X Ð→ C ′ (with E X Ð→ E ′ ), with X ⊆ E , X ⊆ E , X ∼ X , rcp ( C ′ ) = rcp ( C ′ ) and ( C ′ , C ′ ) ∈ R :1. for each fresh action α ∈ X , if C ′′ α Ð→ C ′′′ (with E ′′ α Ð→ E ′′′ ), then for some C ′′ and C ′′′ , C ′′ α Ð→ C ′′′ (with E ′′ α Ð→ E ′′′ ), such that if ( C ′′ , C ′′ ) ∈ R with rcp ( C ′′ ) = rcp ( C ′′ ) then ( C ′′′ , C ′′′ ) ∈ R with rcp ( C ′′′ ) = rcp ( C ′′′ ) ;2. for each x ( y ) ∈ X with ( y ∉ n (E , E ) ), if C ′′ x ( y ) ÐÐ→ C ′′′ (with E ′′ x ( y ) ÐÐ→ E ′′′ { w / y } ) for all w , then forsome C ′′ and C ′′′ , C ′′ x ( y ) ÐÐ→ C ′′′ (with E ′′ x ( y ) ÐÐ→ E ′′′ { w / y } ) for all w , such that if ( C ′′ , C ′′ ) ∈ R with rcp ( C ′′ ) = rcp ( C ′′ ) then ( C ′′′ , C ′′′ ) ∈ R with rcp ( C ′′′ ) = rcp ( C ′′′ ) ;3. for each two x ( y ) , x ( y ) ∈ X with ( y ∉ n (E , E ) ), if C ′′ { x ( y ) ,x ( y )} ÐÐÐÐÐÐÐÐ→ C ′′′ (with E ′′ { x ( y ) ,x ( y )} ÐÐÐÐÐÐÐÐ→ E ′′′ { w / y } ) for all w , then for some C ′′ and C ′′′ , C ′′ { x ( y ) ,x ( y )} ÐÐÐÐÐÐÐÐ→ C ′′′ (with E ′′ { x ( y ) ,x ( y )} ÐÐÐÐÐÐÐÐ→ E ′′′ { w / y } ) forall w , such that if ( C ′′ , C ′′ ) ∈ R with rcp ( C ′′ ) = rcp ( C ′′ ) then ( C ′′′ , C ′′′ ) ∈ R with rcp ( C ′′′ ) = rcp ( C ′′′ ) ;4. for each x ( y ) ∈ X with y ∉ n (E , E ) and x ∉ rcp ( C ′′ ) ∪ rcp ( C ′′ ) , if C ′′ x ( y ) ÐÐ→ C ′′′ (with E ′′ x ( y ) ÐÐ→ E ′′′ ), thenfor some C ′′ and C ′′′ , C ′′ x ( y ) ÐÐ→ C ′′′ (with E ′′ x ( y ) ÐÐ→ E ′′′ ), such that if ( C ′′ , C ′′ ) ∈ R with rcp ( C ′′ ) = rcp ( C ′′ ) then ( C ′′′ , C ′′′ ) ∈ R with rcp ( C ′′′ ) = rcp ( C ′′′ ) ;5. for each x ( y ) ∈ X with y ∉ n (E , E ) and x ∈ rcp ( C ′′ ) = rcp ( C ′′ ) , if C ′′ x ( y ) ÐÐ→ C ′′′ (with E ′′ x ( y ) ÐÐ→ E ′′′ ),then for some C ′′ and C ′′′ , either C ′′ x ( y ) ÐÐ→ C ′′′ (with E ′′ x ( y ) ÐÐ→ E ′′′ ), or C ′′ ⇒ C ′′′ (with E ′′ ⇒ E ′′′ ), suchthat if ( C ′′ , C ′′ ) ∈ R with rcp ( C ′′ ) = rcp ( C ′′ ) then ( C ′′′ , C ′′′ ) ∈ R with rcp ( C ′′′ ) = rcp ( C ′′′ ) .and vice-versa.We say that E , E are pomset bisimilar, written E ∼ p E , if there exists a pomset bisimulation R , suchthat ( ∅ , ∅ ) ∈ R . By replacing pomset transitions with steps, we can get the definition of step bisimulation.When PESs E and E are step bisimilar, we write E ∼ s E . Definition 4.5 (Posetal product).
Given two PESs E , E , the posetal product of their configurations,denoted C(E ) × C(E ) , is defined as {( C , f, C )∣ C ∈ C(E ) , C ∈ C(E ) , f ∶ C → C isomorphism } . A subset R ⊆ C(E ) × C(E ) is called a posetal relation. We say that R is downward closed when forany ( C , f, C ) , ( C ′ , f ′ , C ′ ) ∈ C(E ) × C(E ) , if ( C , f, C ) ⊆ ( C ′ , f ′ , C ′ ) pointwise and ( C ′ , f ′ , C ′ ) ∈ R , then ( C , f, C ) ∈ R . Yong Wang
For f ∶ X → X , we define f [ x ↦ x ] ∶ X ∪ { x } → X ∪ { x } , z ∈ X ∪ { x } ,(1) f [ x ↦ x ]( z ) = x ,if z = x ;(2) f [ x ↦ x ]( z ) = f ( z ) , otherwise. Where X ⊆ E , X ⊆ E , x ∈ E , x ∈ E . Definition 4.6 ((Hereditary) history-preserving bisimilarity).
A history-preserving (hp-) bisimula-tion is a posetal relation R ⊆ C ( E ) × C ( E ) such that if ( C , f, C ) ∈ R with rcp ( C ) = rcp ( C ) , and1. for e = α a fresh action, if C α Ð→ C ′ (with E α Ð→ E ′ ), then for some C ′ and e = α , C α Ð→ C ′ (with E α Ð→ E ′ ), such that ( C ′ , f [ e ↦ e ] , C ′ ) ∈ R with rcp ( c ′ ) = rcp ( C ′ ) ;2. for e = x ( y ) with ( y ∉ n ( E , E ) ), if C x ( y ) ÐÐ→ C ′ (with E x ( y ) ÐÐ→ E ′ { w / y } ) for all w , then for some C ′ and e = x ( y ) , C x ( y ) ÐÐ→ C ′ (with E x ( y ) ÐÐ→ E ′ { w / y } ) for all w , such that ( C ′ , f [ e ↦ e ] , C ′ ) ∈ R with rcp ( C ′ ) = rcp ( C ′ ) ;3. for e = x ( y ) with y ∉ n ( E , E ) and x ∉ rcp ( C ′′ ) ∪ rcp ( C ′′ ) , if C x ( y ) ÐÐ→ C ′ (with E x ( y ) ÐÐ→ E ′ ), thenfor some C ′ and e = x ( y ) , C x ( y ) ÐÐ→ C ′ (with E x ( y ) ÐÐ→ E ′ ), such that ( C ′ , f [ e ↦ e ] , C ′ ) ∈ R with rcp ( C ′ ) = rcp ( C ′ ) ;4. for e = x ( y ) with y ∉ n ( E , E ) and x ∈ rcp ( C ′′ ) = rcp ( C ′′ ) , if C x ( y ) ÐÐ→ C ′ (with E x ( y ) ÐÐ→ E ′ ), then forsome C ′ and e = x ( y ) , either C x ( y ) ÐÐ→ C ′ (with E x ( y ) ÐÐ→ E ′ ), such that ( C ′ , f [ e ↦ e ] , C ′ ) ∈ R with rcp ( C ′ ) = rcp ( C ′ ) ; or C ⇒ C ′ (with E ⇒ E ′ ), such that ( C ′ , f [ e ↦ τ ] , C ′ ) ∈ R with rcp ( C ′ ) = rcp ( C ′ ) ;and vice-versa. E , E are history-preserving (hp-)bisimilar and are written E ∼ hp E if there exists ahp-bisimulation R such that ( ∅ , ∅ , ∅ ) ∈ R .A hereditary history-preserving (hhp-)bisimulation is a downward closed hp-bisimulation. E , E are hered-itary history-preserving (hhp-)bisimilar and are written E ∼ hhp E .Since the Parallel composition ∣ is a fundamental computational pattern in CTC, APTC and π tc , andalso it is fundamental in A π tc as defined in Table 2, and cannot be instead of other operators. Similarly, for an index set I = { , ⋯ , n } , we use ∑ i ∈ I P i to denote ( νu )( case u of ( u ∶ P , ⋯ , u ∶ P n )) for u fresh if I ≠ ∅ ; otherwise. If I is a singleton, we write ∑ P instead of ∑ i ∈ I P . And we also let the variable G range over processes ∑ i ∈ I P i . Then we get the following axioms as Table 3 shows.Then we have the following conclusions. Theorem 4.7 (Soundness modulo pomset bisimilarity).
The axioms in Table 3 are sound modulopomset bisimilarity.
Theorem 4.8 (Soundness modulo step bisimilarity).
The axioms in Table 3 are sound modulo stepbisimilarity.
Theorem 4.9 (Soundness modulo hp-bisimilarity).
The axioms in Table 3 are sound modulo hp-bisimilarity.
Theorem 4.10 (Soundness modulo hhp-bisimilarity).
The axioms in Table 3 are sound modulo hhp-bisimilarity.
5. Conclusions