3. Petri net properties Flashcards
What is soundness?
- For every marking reachable from [i], you can reach the marking [f]
- No marking m can be reached with m > [f] (If there is 1 token in f then should only be one token there, no more tokens there or in rest of the net)
- There are no dead transitions (for every transition t, a marking m can be reached from [i] such that m enables t, i.e. m ≥ *t)
**The short circuited net (adding tau transition from end place to start place) needs to be live and bounded! (so no deadlocks). **
i.e. bounded, no dead transitions, only deadlock = [f], short circuit connects f to i
Would also be strongly connected.
(will be reversible but not sure where we derived this)
What is the difference between workflow nets and petri nets?
Workflow nets are a particular type of petri nets meeting certain conditions:
- Single source place i (p_0 usually)
- Single final place f
- Every node is on a path from i to f
What should I not forget to do with petri nets?
Label every place and transition
Why is soundness important?
- Unsound models may get stuck (deadlocks)- first condition avoids this
- Unsound models may never be able to terminate (livelocks)- second condition avoids this- there is always a way to terminate
- Unsound models cannot be simulated / analyzed (because too big?)
- Unsound models cause problems in the processes they model! (how?)
What is reachability?
Given a Petri net in a marking m1. Is it possible to execute a sequence of transitions to reach some marking m2?
What is boundedness?
If we have marking m1, is the number of tokens in each place p less than k in all reachable markings m2 (for all m2 and p holds m2(p) ≤ k)
If we can draw the marking/ reachability graph for a petri net then it must be bounded
Based on certain initial marking
What is a dead transitions?
If we have marking m1, is it possible to reach a marking m2 in which transition t is enabled (or m2 ≥ preset of t)? If so, t is not dead.
Based on certain initial marking
dead at a marking m if it is NEVER enabled at any marking reachable from m
What is a deadlock?
If we have marking m1, is it possible to reach a marking in which no transition is enabled (or for all transitions t, m2 < preset of t)
There is a state from which you cannot fire any transitions
What is reversibility?
If the initial marking is m1, does it hold that for all reachable markings m2, we can always reach m1 again?
Cannot be reversible and have a deadlock (except if have empty place with arc to empty transition)
What is liveness?
For every reachable marking m1 and transition t, Is it possible to reach a marking m2 in which t is enabled (m2 ≥ *t)
Can always fire every transition again
For example, cyclic petri nets or petri nets starting with a transition with an empty preset (can always fire again)
Cannot be live and have a deadlock, cannot have a dead transition
What does it mean if a petri net is terminating?
Will always reach a marking where no transitions are enabled
**If there is ANY infinite run then it is not terminating
If reachability graph is finite and acyclic (can’t just keep going back to the beginning, have to have terminating states)
What is a home marking?
A marking that you can always return to (reachable from every reachable state). Could be a deadlock!
What is the difference between deadlock free and liveness?
Deadlock free: can always make progress. Liveness: can always make progress and fire every transition again
What does a petri net having a deadlock mean for boundedness, dead transitions, reversibility and liveness?
boundedness: nothing, could still have empty preset transition somewhere in PN and keep firing this so avoid deadlock
dead transitions: if in deadlock state then all transitions dead (but in prior markings no relation)
reversibility: cannot be reversible if have deadlock, would not be able to return to initial marking (unless deadlock is in initial marking?)
liveness: no because cannot return to another marking once in deadlock state
Can you be bounded and reversible?
Yes, limit on number of tokens and just need to get back to same marking