07.01.2013 Views

Lecture Notes in Computer Science 3472

Lecture Notes in Computer Science 3472

Lecture Notes in Computer Science 3472

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

5 Preorder Relations 121<br />

To summarize all of the above, we offer the follow<strong>in</strong>g def<strong>in</strong>ition:<br />

Def<strong>in</strong>ition 5.1. A labeled transition system with divergence (simply labeled<br />

transition system henceforth <strong>in</strong> this chapter) is a tuple (Q, Act∪{τ}, −→ , ↑),<br />

where Q is a countable set of states, Act is a countable set of (atomic) actions,<br />

−→ is the transition relation, −→ ⊆Q × (Act ∪{τ}) × Q, and↑is the divergence<br />

predicate. By τ we denote an <strong>in</strong>ternal action, τ �∈ Act.<br />

For some state p ∈ Q we write p ↓ iff ¬ (p ↑). Whenever (q, a, p) ∈ −→<br />

we write p a<br />

−→ q (to be read “p offers a and after execut<strong>in</strong>g a becomes q”).<br />

We further extend this notation to the reflexive and transitive closure of −→ as<br />

follows: p ε<br />

−→ p for any p ∈ Q; andp σ<br />

−→ q, withσ∈Q∗ ,iffσ = σ1σ2 and there<br />

exists q ′ ∈ Q such that p σ1 ′ σ2<br />

−−→ q −−→ q. ⊓⊔<br />

We use the notation p σ<br />

−→ as a shorthand for “there exists q ∈ Q such that<br />

p σ<br />

−→ q,” and the notation −→/ as the negation of −→ (p a<br />

−−→/ q iff it is not the<br />

case that p a<br />

−→ q, etc.).<br />

Assume now that we are given a labeled transition system. The <strong>in</strong>ternal<br />

action τ is unobservable. In order to formalize this unobservability, we def<strong>in</strong>e an<br />

associated derived transition system <strong>in</strong> which we hide all the <strong>in</strong>ternal actions;<br />

the transition relation ⇒ of such a system ignores the actions τ performed by<br />

the system. Formally, we have:<br />

Def<strong>in</strong>ition 5.2. Given a transition system B =(Q, Act ∪{τ}, −→ , ↑B), its derived<br />

transition system is a tuple D =(Q, Act ∪{ε}, ⇒ , ↑), where ⇒ ⊆<br />

Q × (Act ∪{ε}) × Q and is def<strong>in</strong>ed by the follow<strong>in</strong>g relations:<br />

p a ⇒ q iff p τ ∗ a<br />

−−−→ q<br />

τ ∗<br />

p ε ⇒ q iff p −−→ q<br />

The divergence predicate is def<strong>in</strong>ed as follows: p ↑ iff there exists q such that<br />

q ↑B and p ε ⇒ q, or there exists a sequence (pi )i≥0, such that p0 = p and for<br />

τ<br />

any i > 0 it holds that pi<br />

−→ pi+1. ⊓⊔<br />

In pass<strong>in</strong>g, note that we deviate slightly <strong>in</strong> Def<strong>in</strong>ition 5.2 from the usual<br />

def<strong>in</strong>ition of ⇒ (p a ⇒ q iff p τ ∗ aτ ∗<br />

−−−−−→ q, see Appendix 22), as this allows for a<br />

clearer presentation.<br />

Also note that a state can diverge <strong>in</strong> two ways <strong>in</strong> a derived transition system:<br />

it can either perform a number of <strong>in</strong>ternal actions and end up <strong>in</strong> a state that<br />

diverges <strong>in</strong> the associated labeled transition system, or evolve perpetually <strong>in</strong>to<br />

new states by perform<strong>in</strong>g <strong>in</strong>ternal actions. Therefore this def<strong>in</strong>ition does not<br />

make dist<strong>in</strong>ction between deadlock (first case) and livelock (second variant).<br />

We shall discuss <strong>in</strong> subsequent sections whether such a lack of dist<strong>in</strong>ction is a<br />

good or a bad th<strong>in</strong>g, and we shall dist<strong>in</strong>guish between these variants us<strong>in</strong>g the<br />

orig<strong>in</strong>al labeled transition system (s<strong>in</strong>ce the derived system is unable to make<br />

the dist<strong>in</strong>ction).<br />

It is worth emphasiz<strong>in</strong>g once more (this time us<strong>in</strong>g an example) that the<br />

def<strong>in</strong>ition of divergence <strong>in</strong> a derived transition system is different from the correspondent<br />

def<strong>in</strong>ition <strong>in</strong> a labeled transition system. Indeed, consider state y

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!