• Ingen resultater fundet

The well-known trace models (not necessarily maximal) e.g., [OH86, Hoa85] are based on sets of sequences of actions from ∆ (words) and using the shuffle operator when dealing with k. These and related models can be viewed as abstractions of computations trees canonicical associated with the process expressions. In the trace models for the equivalence

corresponding to the smallest set of direct tests the abstraction would consist in taking the set of words which constitute the paths from the root to the leaves of the computation tree as illustrated in:

With these models in mind it offers it self for the generalized traces, to look for models based on sets of sequences of direct tests, i.e., subsets ofG. However because immediate tests are directed towards discovering concurrency as mirrored in pomsets and in order to clear the way for the more complicated model in the next chapter we shall devise corresponding models in the pomset framework. So the idea is to obtain a similar picture as above using pomsets in stead.

Example: If we intuitively think ofas associating pomsets to expressions andδw gives the linearizations of pomsets we expect:

To make this picture precise and generalize to an arbitrary set of direct tests, G, we shall at first look for pomsets which only contains multisets from G. From G M and the definition of multiset induced pomset properties we know thatPMG are the pomsets we are looking for.

For arbitrary pomset properties, P and P0, we denote PP0 by P,0 and similar for the δ-closure we for a pomset p denote δ(p)P0 by δ,0(p).

Notice that δ,0(p) alternatively may be written as {qP|qp, P(p) and P0(p)}. Next it seems natural to seek a pomset property reflecting the general nature of when the multisets of a pomset are in sequence, i.e., pomsets of the form A1·A2·. . .·An. Pomsets of this form can be considered as “layered” in the sense that they may be viewed as “a linear order on top of a set of completely unordered pomsets (the individual multisets, Ai’s)”. One way to formalize this property is the following:

Definition 7.3.1 Pand-Property for Pomsets

A pomset p is said to have the Pand-property, Pand(p), iff for all x, x0, y, y0 in Xp we have:

if x cop y

then

∀z. x <p z ⇒y <p z and

∀z. y <p z ⇒x <p z 2

Example: a

>b

cZ-Z~d has the Pand-property, a -b

cZ-Z~d and a-b

a has not.

Proposition 7.3.2 The Pand-property is hereditary and dot synthesizable.

Proof Because of the universal quantification ofxandyin the definition ofPand(p) and because the partial order just is restricted in subpomsets it follows that thePand-property is hereditary.

It is also dot synthesizable as can be seen by using proposition 6.4.7: Let a lpo p and a subset Y of Xp given such that Pand(p|Xp\Y),Pand(p|Y) and

∀x∈Xp\Y∀y∈Y. xco6 p y (7.1)

Suppose on the contrary ¬Pand(p). By definition there must be x, y, z Xp with y cop x <p z and y 6<p z. y 6<p z cannot mean z p y because we then would get x p y contradicting y cop x, so actually:

y cop x <p z cop y (7.2)

If x, y and z all are in one of the two sets Xp \ Y and Y, we get a contradiction to Pand(p|Xp\Y) and Pand(p|Y). Otherwise one element must be in one of the sets and the remaining two in the other set. From (7.2) we see that at least one of the two elements belonging to the same set must be concurrent to the element in the other set—a

contra-diction to (7.1). 2

Proposition 7.3.3 The Pand-property has the following alternative characterization:

(p6=ε and Pand(p)) iff ∃n≥1∃A1,. . ., AnM. A1·. . .·An=p From this and the definition of PMG,and we immediately get:

(p6=ε and PMG,and(p)) iff ∃n≥1∃A1,. . ., AnG. A1·. . .·An=p

We abbreviatePMG,andby PG. PMDis clearly hereditary so from the propositions 6.4.8 and 7.3.2 we get:

Corollary 7.3.4 The PG-property is hereditary and dot synthesizable.

With the above biimplications it is not hard to see that G andPG coincide (are isomor-phic), and as a consequence we shall often identify them in the sequel. So there is hope that we can base our models on subsets of PG.

It only remains to establish a connection from BL-expressions to nonempty subsets of PG. To this end we introduce a canonical map which give a natural association of sets of pomsets with BL-expressions.

Definition 7.3.5 Canonical Pomset Association

The canonical associated pomsets of a BL-expression is given by the map : BL −→

P(P\ {ε})\ ∅ defined compositionally as follows:

℘(a) ={a}

℘(E0;E1) =℘(E0)·℘(E1)

℘(E0⊕E1) =℘(E0)∪℘(E1)

℘(E0kE1) =℘(E0)×℘(E1)

Example: ℘((a⊕b) ; (akc)) =

(

a1a

PPqc, b1a

PPqc

)

We can then let denotations in our models go via this map:

Definition 7.3.6 [[ ]]G :BL −→ P(PG\ {ε})\ ∅with [[E]]G =δG(℘(E)). 2 So, our G-model is finite sets of PG-pomsets partially ordered by inclusion: .

It is easy to check that the maps of the example on page 156 are correct and that they composed correspond to the denotational map just defined.

[[ ]]G together with the partial order induces a denotational preorder G over BL by:

E0 G E1 iff [[E0]]G [[E1]]G

Having models using sets of sequences from ∆ in mind it is not hard to come up with:

Theorem 7.3.7 [[ ]]G can be defined compositionally by:

[[a]]G ={a}

[[E0;E1]]G = [[E0]]G·[[E1]]G [[E0⊕E1]]G= [[E0]]G[[E1]]G [[E0kE1]]G =δG([[E0]]G×[[E1]]G)

Notice that δG here acts as the natural generalization of the shuffle/ zip operator for ∆. Proof At first notice that corollary 7.3.4 enables us to apply the propositions 6.4.4 and 6.4.10 in the proof. We look at the different cases:

a: Evident by inspection of the definitions.

E0;E1: Follows directly from the fact thatδG distributes over pomset sequential compo-sition (propocompo-sition 6.4.4 and 6.4.10). See also the last case.

E0⊕E1: Similar because δG is a natural generalization to sets and therefore distributes over sets.

E0kE1: [[E0 kE1]]G =δG(℘(E0kE1)) definition of [[ ]]G

=δG(℘(E0)×℘(E1)) definition of

=δGG(℘(E0))×δG(℘(E1))) proposition 6.4.4

=δG([[E0]]G×[[E1]]G) definition of [[ ]]G

2

7.4 Full Abstractness

The first proposition says that G is inherited in allBL-contexts.

Proposition 7.4.1 G is a precongruence over BL.

Proof From theorem 7.3.7 we know a compositional definition of [[ ]]Gusing-monotone operators (proposition 6.3.4), and hence G is a precongruence. 2

Theorem 7.4.2 [[ ]]G is fully abstract w.r.t. <G, because a) <G is a precongruence w.r.t. BL

b) E0 <G E1 iff E0 G E1

Proof a) is a consequence of proposition 7.4.1 and b) which in turn is a direct

conse-quence of the proposition below. 2

Proposition 7.4.3 For every E0, E1 ∈BL we have [[E0]]G [[E1]]G iff E0 <G E1 Proof In the last section we saw:

(p 6=ε and PG(p)) iff ∃n≥1∃A1,. . ., AnG. A1·. . .·An=p from which we immediately get:

PG(p) iff ∃n≥1∃A1,. . ., AnGε. A1·. . .·An =p

Recalling our convention to identify G and PG we then from lemma 7.4.4 below get for E ∈BL:

[[E]]G={A1·. . .·AnGε |n≥ 1, E =A1 . . .=A⇒ †}n ={s G |E ⇒ †}s (7.3)

with interpreted according to the convention below.

The proof is now a simple matter: [[E0]]G [[E1]]G iff {s G | E0 ⇒ †} ⊆ {s s G |

E1 ⇒ †}s iff E0 <G E1. 2

For simplicity of the following lemmas we shall temporarily adopt the notation E −→ E0 to mean E = E0 wherefore E E0 also means E >−→ E0. For the same reason the lemmas are formulated slightly stronger than needed where they are used.

Lemma 7.4.4 Given E ∈BL and multisets A1,. . ., An Gε (n1). Then E =A1 . . .=A⇒ †n iff p∈℘(E). A1·. . .·Anp

Proof Before proving each implication separately notice that p ℘(E) implies p 6= ε for E ∈BL and that every subexpression of E ∈BL belongs toBL too..

If: By induction on the structure ofE.

E =a: ℘(a) = {a} and we have p = a. Clearly A1 ·. . .·An a implies that exactly one Ai ={a}, the rest of them equal to . The result then follows from a . . . a−→ †a . . .⇒ † .

E =E0;E1: From ℘(E) = ℘(E0)·℘(E1) we then see p = p0·p1 where pi ℘(Ei) for i = 0,1. By lemma 7.4.7 A1 ·. . .·An p0·p1 implies n 2 and the existence of a 1≤j < n such that A1·. . .·Aj p0 and Aj+1·. . .·An p1. By hypothesis of induction then E0 =A1 . . . =A⇒ †j and E1 A=j+1 . . . =A⇒ †n . By proposition 7.2.3 then E0;E1 =A1 . . .=A⇒ †j ;E1. Since;E1 >−→E1 we get E0;E1 =A1 . . .=Aj E1 A=j+1 . . .=A⇒ †n as desired.

E =E0⊕E1: p ℘(E) = ℘(E0)∪℘(E1) implies p ℘(E0) or p ℘(E1). Suppose w.l.o.g. p ℘(E0). By hypothesis of induction E0 =A1 . . .=A⇒ †n so from the rules of >−→ then also E0⊕E1 >−→E0 =A1 . . .=A⇒ †n .

E =E0kE1: p ℘(E) = ℘(E0)×℘(E1) implies p =p0 ×p1 for some p0 ℘(E0) and p1 ℘(E1). According to proposition 7.4.10 A1 ·. . .·An p0 ×p1 implies the existence of multisets A01,. . ., A0n, A11,. . ., A1n such thatAi1·. . .·Ain pi fori= 0,1 and Aj = A0j ×A1j for j = 1,. . ., n. This means Aij ,→ Aj, so because G has the closure property:

B ,→C, C G⇒B Gε

the Aij’s actually belongs to Gε. Hence we can use the hypothesis of induction to see Ei =Ai1 . . .=A⇒ †in for i= 0,1. By proposition 7.2.3 then E0kE1 =A1 . . .=A⇒ † k †n and the result follows from † k †>−→ †.

Only if: We shall also prove this implication by induction on the structure of E.

E =a: Since a >6−→ and a −→A F implies A= a and F = there is exactly one Ai =a and the rest equal to . Recalling (= ε) neutral to · we see from a a and

℘(a) ={a} that we are done.

E =E0;E1: BecauseE0 ∈BL we cannot haveE0 >−→ . For purely structural reasons we cannot for any E00 and E1 have E00 ;E1 = neither, so using lemma 7.4.5 on E0 ;E1 =A1 . . . =A⇒ †n we deduce n 2 and the existence of a 1 j < n such that E0 =A1 . . . =A⇒ †j and E1 A=j+1 . . .=A⇒ †n . By hypothesis then A1·. . .·Aj p0

and Aj+1. . .An p1 where pi ℘(Ei) for i = 0,1. By -monotonicity of · then A1·. . .Aj·Aj+1·. . .·An p0·Aj+1·. . .·An p0·p1 ∈℘(E0)·℘(E1).

E =E0⊕E1: Inspecting the definition of>−→and −→A1 one easely sees thatE0⊕E1 =A1 . . . =A⇒ †n implies E0 ⊕E1 >−→ F =A1 . . . =A⇒ †n where F = E0 or F = E1. The result then follows from the hypothesis of induction and definition of ℘.

E =E0kE1: Then E0 kE1 =A1 . . . =A⇒ †n . Chosing E = in lemma 7.4.6 we see that there areA01,. . ., A0n, A11,. . ., A1n Gε such that Aj = A0j ×A1j for j = 1,. . ., n and Ei =Ai1 . . .=A⇒ †in for i= 0,1. Using the hypothesis of induction together with (6.3):

(p×q)·(p0×q0)(p·p0)×(q·q0)

the desired result is then obtained similarly as in the case E =E0 ;E1.

2

Notice that we only used the closure property ofG in theif part of the proof.

Lemma 7.4.5 Suppose n 1 and E0 ; E1 =A1 . . . =An E for A1,. . ., An Gε and E0;E1 ∈CL. Then either

a) E0 >−→ , E1 =A1 . . .=An E or

b) E0 =A1 . . .=A⇒ †j ,E1 A=j+1 . . .=An E for a 1≤j < n or c) E0 =A1 . . .=A⇒ †n ,E1 >−→ E or

d) E0 =A1 . . .=An E00, E00 ;E1 =E for some E00 ∈CL

Proof At first we prove by natural induction for arbitrary m and F, E0;E1 ∈CL:

E0;E1 >−→m F

i) E0 >−→ †, E1 >−→ F or ii) E0 >−→ F00, F00;E1 =F (7.4)

m= 0: Here E0;E1 =F and we can choose F00 =E0.

m > 0: Then for some H CL we have E0;E1 >−→H >−→m−1 F. According to the definition of >−→ there are two cases:

E0 =and H =E1: I.e., E1 >−→m−1 F and i) holds.

E0 >−→H0andH0;E1 =H: From the hypothesis of induction used onH0;E1 >−→m−1 F we get either (H0 >−→ †, E1 >−→ F) or (H0 >−→ F00, F00;E1 =F). In the former case i) is established because E0 >−→H0 >−→ and in the latter case we get ii).

Using (7.4) we can now prove the lemma by induction on n.

n = 1: If A1 = we haveE0;E1 >−→ E and we can use (7.4) to see that c) or d) holds.

So assume A1 6= and we have E0;E1 >−→ F −→A1 F0 >−→ E for some F, F0 CL.

We consider two case according to (7.4):

i) Here we have E0 >−→ †, E1 >−→ F −→A1 F0 >−→ E and a) holds.

ii) E0 >−→ F00, F00 ;E1 −→A1 F0 >−→ E. Since A1 6= we must have F0 = F000 ;E1 where F00 −→A1 F000. Using (7.4) on F000;E1 >−→ E we see F000 >−→ †, E1 >−→ E or F000 >−→ E00, E00 ;E1 = E. In the former case we have E0 >−→ F00 −→A1 F000>−→ †, E1 >−→ E and c) holds. In the latter caseE0 >−→ F00 −→A1 F000>−→ E00, E00 ;E1 =E so here d) holds.

n > 1: Then E0 ;E1 =A1 F =A2 . . . =An E. From the case n = 1 we know that for E0;E1 =A1 F there are the following three main possibilities:

E0 >−→ †, E1 =A1 F: Then alsoE1 =A1 . . .=An E and a) holds.

E0 =A⇒ †1 , E1 >−→ F: Here we get E1 =A2 . . .=An E and b) is established with j = 1.

E0 =A1 F00, F00 ;E1 =F: The hypothesis of induction used onF00;E1 =A2 . . .=An E yields:

a’) F00 >−→ ,E1 =A2 . . .=An E or

b’) F00 =A2 . . .=A⇒ †j , E1 A=j+1. . .=An E for a 2≤j < nor c’) F00 =A2 . . .=A⇒ †n , E1 >−→ E or

d’) F00 =A2 . . .=An E00, E00 ;E1 =E

Clearly we have E0 =A⇒ †1 in the case a’) thereby getting b) for j = 1. In the remaining cases b’), c’) and d’) we directly get b), c) and d) respectively.

2 Lemma 7.4.6 Suppose n 1 and E0 kE1 =A1 . . . =An E for A1,. . ., An Gε and E0kE1 ∈CL. Then there areE00, E00 ∈CLand A01,. . ., A0n, A11,. . ., A0n Gε such that

Aj =A0j×A1j forj = 1,. . ., n and Ei =Aii . . .=Ain Ei0 for i= 0,1 and E00 kE10 =E or E00, E10 ={†, E}

Proof At first we by natural induction prove for arbitrary m and E0, E1 CL that E0kE1 >−→m E implies the existence of some E00, E10 ∈CLsuch that:

E0 >−→ E00, E1 >−→ E10 and E00 kE10 =E or {E00, E10}={†, E} (7.5)

m= 0: Then E =E0kE1 and we can choose Ei0 =Ei.

m > 0: This means E0 kE1 >−→ F >−→m−1 E. According to the definition of >−→

there are four cases:

E0 =and E1 =F: Choose E00 =†, E10 =E and we are done.

E1 =and E0 =F: Symmetric.

E0 >−→F00 and F00 kE1 =F: Use the hypothesis of induction on F00kE1 >−→m−1 E to find E00, E10 such that F00 >−→ E00, E1 >−→ E10 and (E00 kE10 = E or {E00, E10} = {†, E}). The result then follows becauseE0 >−→ F00 >−→ E00 or equallyE0 >−→ E00.

E1 >−→F10 and E0 kF10 =F: Symmetric to the last case.

Next we prove the lemma by induction on n:

n = 1: We haveE0kE1 >−→ F −→A1 H >−→ E. We can now use (7.5) onE0kE1 >−→F

n = 1: The situation is A1 = p0·p1. The premise cannot hold since p0,p1 6= ε implies that there are at least two ordered elements of p0 ·p1, but this contradicts A1 =p0 ·p1 because the elements of A1 are unoredered (A1 Mε).

n > 1: Equally n 2. Since p0 6= ε we can apply proposition 7.4.8 below to find a p00 such that A1·p00 =p0 and A2·. . .·An=p00·p1.

If p00 =ε we have p0 =A1 and A2·. . .·An=ε·p1 =p1 wherefore we can choose j = 1.

Otherwise if p00 6=εwe can use the induction to find 2≤j < n such thatA2·. . .·Aj =p00 and Aj+1·. . .·An=p1. Since p0 =A1·p00 =A1·A2·. . .·Aj we are done. 2 Proposition 7.4.8 For A∈Mε and a pomsetp0 6=ε we have

q=p0·p1

p00. A·p00 =p0,q=p00 ·p1

Proposition 7.4.9 Suppose p·q r0 ×r1. Then there exists p0,p1,q0,q1 such that pi·qi ri for i= 0,1 and pp0×p1 and qq0×q0.

Proof We prove it for lpos and the proposition follows immediately.

p·q r0 ×r1 means that there exists a bijection f : Xr0×r1 −→ Xp·q which also is a morphism of lpos.

By definition of · and × we have Xp·q ={0} ×Xp∪ {1} ×Xq and Xr0×r1 ={0} ×Xr0 {1} ×Xr1. So define pi asp restricted to{x∈Xp | h0, xi ∈f({i} ×Xri)} for i= 0,1 and similar forq0 and q1.

p0·q0 r0: Considerg :Xr0 −→Xp0·q0 given by g(x) =f(h0, xi). It is easy to see that g in- and surjective.

g order preserving: From f being order preserving and x r0 y ⇒ h0, xi ≤r0×r1 hy,0i we see f(h0, xi) p·q f(h0, yi). f(h0, xi) is of the form hi, x0i and f(h0, yi) is of the form hj, y0i, so hi, x0i ≤p·q hj, y0i. According to the definition of p·q then

(i= 0 =j, x0 p y0) or (i= 1 =j, x0 q y0) or (i= 0, j = 1)

In the case x0 p y0 we have x0 Xp, so we must have x0 ∈Xp0. Also y0 Xp0. Similar considerations in the case x0 q y0 leads us to:

(i= 0 =j, x0 p0 y0) or (i= 1 =j, x0 q0 y0) or (i= 0, j = 1) But then g(x) =f(h0, xi) = hi, x0i ≤p0·q0 hj, y0i=f(h0, yi) =g(y).

g is directly seen to be label preserving: `r0(x) = `r0×r1(h0, xi) = `p·q(f(h0, xi)) =

`p0·q0(g(x)).

p1·q1 r1: similar as above.

p p0×p1: Let g :Xp0×p1 −→ Xp be given by g(hi, xi) = x. This time it is easy to see that g is a morphism of lpos.

g injective: Assume hi, xi 6= hj, yi. We are done if x = y and i 6= j is impossible.

So suppose on the contrary x = y, i 6= j. Now hi, xi ∈ Xp0×p1 x Xpi ⇒ h0, xi ∈

f({i}×Xri)⇒ ∃hi, x0i ∈Xr0×r1.f(hi, x0i) =h0, xiand similarhj, xi ∈Xp0×p1 ⇒ ∃hj, x00i ∈ Xr0×r1. f(hj, x00i) = h0, xi. But since i 6= j and thereby hi, x0i 6= hj, x00i this is a contra-diction to f being injective.

g surjective: x∈Xp ⇒ h0, xi ∈Xp·q (sincef is surjective) (∃hi, yi ∈Xr0×r1. f(hi, yi) = h0, xi) (∃i ∈ {0,1}. x Xpi) ⇒ ∃i ∈ {0,1}.hi, xi ∈ Xp0×p1. From g(hi, xi) = x the result then follows.

qq0×q1: Similar as the last case. 2

Proposition 7.4.10 Ifn 1 andA1,. . ., An Mε andA1·. . .·Anp0×p1 then there exists multisets A01,. . ., A0n and A11,. . ., A1n such thatAj =A0j ×A1j for j = 1,. . ., n, and Ai1·. . .·Ainpi fori= 0,1.

Proof By induction on n.

n = 1: A1 p0×p1 clearly implies p0 and p1 are multisets and A1 =p0×p1. Chose A01 =p0 and A11 =p1.

n >1: A1 ·(A2 ·. . .·An) p0 ×p1 implies by the previous proposition the existence of pomsets q0,q1,r0,r1 such that q0 · r0 p0,q1 · r1 p1, A1 q0 ×q1 and A2 ·. . .·An r0 ×r1. The last implies by hypothesis of induction that there are multisets A02,. . ., A0n and A12,. . ., A1n with A02 ·. . .·A0n r0, A12·. . .·A1n r1 and A0i ×A1i =Ai for i= 2,. . ., n. From the casen = 1 we see that there existsA01 and A11 with A01 q0, A11 q1 and A1 =A01×A11. By monotonicity and transitivity of we now get

A01·(A02·. . .·A0n)q0·(A02·. . .·A0n)q0·r0 p0 and similar for the A1i’s.

2