09.09.2014 Views

13th International Conference on Membrane Computing - MTA Sztaki

13th International Conference on Membrane Computing - MTA Sztaki

13th International Conference on Membrane Computing - MTA Sztaki

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.

F.G.C. Cabarle, H.N. Adorna<br />

weight of arc (p, t) is equal to 1. Petri nets where the arc weight is always 1 are<br />

known as ordinary Petri nets. Note that ordinary and n<strong>on</strong>ordinary Petri nets<br />

(i.e. arc weights greater than or equal to 1) have the same modeling power [15].<br />

We use the notati<strong>on</strong> •p to denote the set of input transiti<strong>on</strong>s of place p, and the<br />

notati<strong>on</strong> •t as the set of input places of transiti<strong>on</strong> t. Similarly we use p• and t•<br />

to denote the sets of output transiti<strong>on</strong>s and places of p and t respectively. Tokens<br />

are indistinct, and a place without an input transiti<strong>on</strong> is called a source place<br />

(•p = ∅) while a place without an output transiti<strong>on</strong> is a sink place (p• = ∅).<br />

We assume that there is no place p or transiti<strong>on</strong> t such that •p = p• = ∅ or<br />

•t = t• = ∅. A marking of a place p is denoted as M(p). A marking of a place is<br />

always a n<strong>on</strong>-negative integer.<br />

A transiti<strong>on</strong> t is enabled iff for every p ∈ •t, p has at least <strong>on</strong>e token. An<br />

enabled transiti<strong>on</strong> t is fired when t removes <strong>on</strong>e token from every p, and deposits<br />

<strong>on</strong>e token to every place p ′ ∈ t•. When |p • | ≥ 1 and there exists another<br />

transiti<strong>on</strong> t ′ ∈ p•, then p has to n<strong>on</strong>deterministically choose (also known as a<br />

decisi<strong>on</strong> point, choice, or c<strong>on</strong>flict in literature e.g. [4,15]) which am<strong>on</strong>g t and t ′<br />

will be enabled. If p ′ , p ′′ ∈ t• then if t fires, t deposits <strong>on</strong>e token each to p ′ and p ′′ .<br />

Parallelism in Petri nets comes from the fact that both p ′ and p ′′ receive tokens<br />

at the same time after t is fired, thus allowing the firing and marking of possibly<br />

more succeeding transiti<strong>on</strong>s and places, respectively. A marking M n is reachable<br />

from a marking M if there is a sequence of enabled transiti<strong>on</strong>s 〈t 1 t 2 . . . t n 〉 that<br />

leads from M to M n . The set of all reachable markings from M 0 given a net N<br />

is denoted as R(N, M 0 ) or simply R(M 0 ) assuming there is no c<strong>on</strong>fusi<strong>on</strong> <strong>on</strong> the<br />

referred net. Now we provide some properties of Petri nets as well additi<strong>on</strong>al<br />

classes from literature.<br />

Definiti<strong>on</strong> 2 (Liveness, Boundedness, Safeness (Petri nets) [15,21]). A<br />

Petri net (N, M 0 ) is live iff for every M ′ ∈ R(M 0 ) and every t ∈ T , there exists<br />

a state M ′′ reachable from M ′ which enables t. (N, M 0 ) is bounded iff for each<br />

p ∈ P there exists a positive integer k, such that for each M ∈ R(M 0 ), M(p) ≤ k<br />

(the net is k-bounded). The net is safe iff for each reachable state M(p) does<br />

not exceed 1.<br />

Definiti<strong>on</strong> 2 provides some behavioral properties of Petri nets. A c<strong>on</strong>diti<strong>on</strong> known<br />

as a deadlock occurs when a transiti<strong>on</strong> t is unable to fire given a certain marking<br />

(see Fig. 2). If N is a live net then it is c<strong>on</strong>sidered deadlock-free. A class of<br />

Petri nets known as workflow nets or WF-nets were introduced in [19] and were<br />

used to model workflows. A WF-net is a special type of Petri net that has<br />

two special places, the <strong>on</strong>ly source place i (•i = ∅) and the <strong>on</strong>ly sink place o<br />

(o• = ∅). A net N is a good WF-net, a net that models correct workflow process<br />

definiti<strong>on</strong>s, if N satisfied the following c<strong>on</strong>diti<strong>on</strong>s: (i) N is a live net, (ii) The<br />

initial c<strong>on</strong>figurati<strong>on</strong> is where <strong>on</strong>ly M(i) = 1 and all other places are unmarked<br />

(iii) N halts <strong>on</strong>ly in a c<strong>on</strong>figurati<strong>on</strong> where M(o) = 1 and all other places are<br />

unmarked. These properties as outlined in [21] all make sure that a process<br />

executes correctly i.e. no tasks (modeled by transiti<strong>on</strong>s) were left und<strong>on</strong>e and<br />

all resources or states reached (modeled by marked places) have been used to<br />

146

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

Saved successfully!

Ooh no, something went wrong!