| Petri Net |
Article Index for Petri |
Website Links For Petri |
Information AboutPetri Net |
| CATEGORIES ABOUT PETRI NET | |
| formal specification languages | |
| computational models | |
| concurrency | |
| diagrams | |
|
BASIC PETRI NETS A Petri net consists of '' Place s'', '' Transition s'' and '' Directed Arc s''. Arcs run between places and transitions - not between places and places or transitions and transitions. The places from which an arc run to a transition are called the Input Place s of the transition; the places to which arcs run from a transition are called the Output Places of the transition. Places may contain any number of Token s. A distribution of tokens over the places of a net is called a '' Marking ''. Transitions act on input tokens by a process known as ''firing''. A transition is ''enabled'' if it can fire, i.e., there are tokens in every input place. When a transition fires, it consumes the tokens from its input places, performs some processing task, and places a specified number of tokens into each of its output places. It does this atomically, i.e. in one single non-preemptible step. Execution of Petri nets is Nondeterministic . This means two things: # multiple transitions can be enabled at the same time, any one of which can fire # none are ''required'' to fire - they fire at will, between time 0 and infinity, or not at all(!) i.e. it is totally possible that nothing fires at all. Since firing is non-deterministic, Petri nets are well suited for modeling the Concurrent behavior of distributed systems. A FORMAL DEFINITION A Petri net is a 6- Tuple , where (see Desel and Juhás )
A variety of other formal definitions exist. This definition is for a ''place-transition'' net. Most other definitions do not include ''arc weights'' or ''capacity restrictions''. BASIC MATHEMATICAL PROPERTIES The state of a Petri net can be represented as an M vector, where the 1st value of the vector is the amount of tokens in the 1st place of the net, the 2nd is amount of tokens in the 2nd place, and so on. Such a representation fully describes the state of a Petri net. A state-transition list, , which can be shortened to simply is called a ''firing sequence'' if each and every transition satisfies the firing criteria (i.e. there are enough tokens in the input for every transition). In this case, the state-transition list of is called a ''trajectory'', and is called ''reachable'' from through the firing sequence of . Mathematically written: . All firing sequences that can be reached from a net and an initial marking are noted as . | ||
|   | # | "http://wwwinformationdelightinfo/encyclopedia/entry/State_machine" class="copylinks">State Machine (SM) - here, every transition has one incoming arc, and one outgoing arc This means, that there can ''not'' be ''concurrency'', but there can be ''conflict'' (ie Where should the token from the place go To one transition or the other) Mathematically: <math>orall t\in T: t\bullet=\bullet t=1</math> |
|   | # Marked Graph (MG) - Here, Every Place Has One Incoming Arc, And One Outgoing Arc This Means, That There Can ''not'' Be ''conflict'', But There Can Be ''concurrency'' Mathematically: <math>Orall P\in P: p\bullet | \bullet p=1</math> |
|   | # Free Choice (FC) - Here, An Arc Is Either The Only Arc Going From The Place, Or It Is The Only Arc Going To A Transition Ie There Can Be ''both Concurrency And Conflict, But Not At The Same Time'' Mathematically: <math>Orall P\in P: (p\bullet\leq 1) Ee (\bullet (p\bullet) | \{p\})</math> |
|
|