STRUCTURAL analysis place / transition invariants PETRI NET state - - PowerPoint PPT Presentation

structural
SMART_READER_LITE
LIVE PREVIEW

STRUCTURAL analysis place / transition invariants PETRI NET state - - PowerPoint PPT Presentation

dependability engineering & Petri nets May 2020 dependability engineering & Petri nets May 2020 QUALITATIVE ANALYSIS METHODS , OVERVIEW NET REDUCTION STRUCTURAL PROPERTIES LINEAR PROGRAMMING static STRUCTURAL analysis place /


slide-1
SLIDE 1

dependability engineering & Petri nets May 2020 Y:\Documents\teaching\course-concurrency\skript-sources\nl_skript_fm\nl09_structuralProperties.sld.fm 6 - 1 / 24

STRUCTURAL PETRI NET ANALYSIS

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 2 / 24

QUALITATIVE ANALYSIS METHODS, OVERVIEW REACHABILITY ANALYSIS (complete) reachability graph reduced state spaces coverability graph symmetry stubborn sets NET REDUCTION STRUCTURAL PROPERTIES LINEAR PROGRAMMING place / transition invariants state equation static dynamic analysis analysis trap equation compressed state spaces BDDs, NDDs, ..., XDDs Kronecker products branching process (model checking)

slide-2
SLIDE 2

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 3 / 24

QUALITATIVE PROPERTIES structural properties ❑ especially valuable: local(ly decidable) structural properties; ❑ certain combinations of structural properties allow conclusions to behavioural properties; behavioural properties ❑ general semantic properties boundedness liveness reversibility ❑ special semantic properties safety properties progress properties

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 4 / 24

BEHAVIOURAL NET PROPERTIES MARKABILITY of places LIVENESS of transitions REACHABILITY of states zero times firing (m0-dead) finite times firing (dead, non-live) infinite times (probably) firing (live) dead states bad states (facts) user-specified states reproducibility reversibility (m0 - home state) infinite times (definitely) firing NET INVARIANTS transition (sub/sur) invariants place (sub/sur) invariants markable (place liveness) k-bounded (safe) general semantic properties special semantic properties temporal relationship of logic formulae (livelock free)

slide-3
SLIDE 3

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 5 / 24

PETRI NET PROPERTIES, OVERVIEW / CHARLIE

  • 1. SIMPLE STRUCTURAL PROPERTIES

PUR pure (no side conditions) ORD

  • rdinary (1-multiplicity of all arcs)

HOM homogeneous (all output arcs of a given place have the same multiplicity) NBM non-blocking multiplicity (for each place applies: MIN multiplicity of input arcs >= MAX multiplicity of output arcs) CSV conservative (any firing preserves token amount) SCF static conflict free Ft0 every transition has a pre-place tF0 every transition has a post-place FP0 every place has a pre-transition pF0 every place has a post-transition CON connected SC strongly connected MG marked graph (synchronization graph) SM state machine FC free choice net EFC extended free choice net ES extended simple net

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 6 / 24

MORE EXPENSIVE STRUCTURAL PROPERTIES

  • 2. STRUCTURAL PROPERTIES

RKTH rank theorem STP siphon trap property SMC state machine coverable (covered with SM components) SMD state machine decomposable (covered with SCSM components) SMA state machine allocatable CPI covered with place invariants CTI covered with transition invariants SCTI strongly covered by transition invariants SB structurally bounded

  • 3. BEHAVIOURAL PROPERTIES

k-B k-bounded DCF dynamically conflict free DSt dead states (a state where no transition is enabled) DTr dead transitions (at the initial state) LIV live REV reversible (the initial state m0 can be reached again from all reachable states: home state)

slide-4
SLIDE 4

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 7 / 24

CONCLUSIONS (1) STRUCTURAL -> BEHAVIOURAL PROPERTIES

not Ft0 not tF0 not Fp0 not pF0

t p t p p t p t t live t not live OR p unbounded t not live p bounded p unbounded t not live OR p unbounded

input nodes allow net reduction: conclude properties -> delete nodes -> conclude properties ->

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 8 / 24

CONCLUSIONS (2) STRUCTURAL -> BEHAVIOURAL PROPERTIES ❑ CSV ⇒ BND ❑ CPI ⇒ BND ❑ covered by ⇔ (structural) BND Sub-P-invariants (yC <= 0) ❑ SC ⇐ LIVE & BND ( not SC ⇒ not LIVE or not BND ) ❑ CTI ⇐ LIVE & BND ( not CTI ⇒ not LIVE or not BND) ( not CTI & BND ⇒ not LIVE ) ❑ CTI ⇐ REV ( not CTI ⇒ not REV)

slide-5
SLIDE 5

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 9 / 24

NET CLASSES, OVERVIEW allowed not allowed State Machines Marked Graphs FC nets EFC nets ES nets

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 10 / 24

RELATIONSHIP OF NET CLASSES

ES EFC FC MG SM

MG - synchronization graph, T-nets, SM - S-nets

slide-6
SLIDE 6

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 11 / 24

NET CLASS: STATE MACHINE ❑ no forward/backward branching of transitions

  • >

finite (state) automaton ❑ no concurrency, but conflicts ❑ any static conflict = dynamic conflict ❑ no production/consumption

  • f tokens
  • >

conservative (CSV)

  • >

bounded (BND) ❑ prototype of a bounded pn ❑ SM ⇒ [ SC & ’at least one token’ ⇔ LIVE & BND & REV ] ❑ SM ⇒ [ SC & ’exactly one token’ ⇔ LIVE & SAFE & REV ] ❑ SM and MG

  • >

duality

t5 t3 t4 t2 t1 p3 p2 p1 t5 t3 t4 t2 t1 p3 p2 p1

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 12 / 24

NET CLASS: MARKED GRAPH ❑ no forward/backward branching of places

  • >

precedence graph ❑ no conflicts, but concurrency

  • >

DCF (persistent) ❑ prototype of a persistent pn ❑ number of tokens on each circle is invariant

  • >

P-invariant ❑ elementary circle

  • >

no node in the circle appears twice ❑ MG ⇒ [ SC & ’each elementary circle contains a token’ ⇔ LIVE & BND & REV ] ❑ MG ⇒ [ SC & ’each elementary circle contains exactly one token’ ⇔ LIVE & SAFE & REV ]

t3 t2 t1 p1 p2 p3 p4 p5 p5 p4 p3 p2 p1 t3 t2 t1

slide-7
SLIDE 7

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 13 / 24

NET CLASS: FREE-CHOICE NET ❑ every shared place is the only pre-place of its post-transitions ❑ free choice for any conflict resolution ❑ conflict & concurrency ❑ sc not sufficient any more ❑ all theorems for FCN hold also for EFCN

  • >

tranformation FCN <-> EFCN no live marking no bounded marking (except empty marking)

FC1 FC2

q p v u u v p q

reduction expansion

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 14 / 24

NET CLASS: EXTENDED FREE-CHOICE NET ❑ transitions in conflict have the same set of pre-places ❑ free choice for any conflict resolution ❑ EFC ⇒ [ STP ( & HOM & NBM ) ⇔ LIVE ] ❑ EFC ( & HOM & NBM) ⇒ monotonicity of liveness

p1 p2 p3 p4 t1 t2 t3 t4

STP -> live not STP -> not live

p1 p2 p3 p4 t1 t2 t3 t4

FC3 FC4

slide-8
SLIDE 8

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 15 / 24

NET CLASS: EXTENDED SIMPLE NET ❑

IF two places p, q share post-transitions THEN

post-transitions of q are also post-transitions of p,

  • r vice versa

ENDIF

  • >
  • ne of the two places may have
  • ther post-transitions

❑ transitive conflict relation #

  • >

t1 # t2 and t2 # t3 -> t1 # t3 ❑ ES & STP ( & HOM & NBM ) ⇒ LIVE ❑ ES & LIVE ⇒ time-independently LIVE, but not necessarily monotonically live

q p t1 t2 t3 t1 t2 t3

ES not ES

p q

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 16 / 24

SIPHON-TRAP-PROPERTY (STP)

Siphon D FD ⊆ DF Trap Q QF ⊆ FQ

D

Q any transition putting token into the set also takes token from it an empty siphon will never again carry a token any transition taking tokens from the set also puts token into it a marked trap will never again be empty STP: each siphon contains a (sufficiently) marked trap (at m0)

SIPHON

TRAP

slide-9
SLIDE 9

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 17 / 24

STP,

EXAMPLES ❑ example1

  • >

siphon1: {p1, p2} F(p1, p2) = {t1, t3} (p1, p2)F = {t1, t2, t3)

  • >

siphon2: {p1, p3} F(p1, p3) = {t2, t3} (p1, p3)F = {t1, t2, t3}

  • >

trap: {p1, p2, p3} (p1, p2, p3)F = T F(p1, p2, p3) = T => not STP -> not live ❑ example2

  • >

siphon: {p1, p2, p3} F(p1, p2, p3) = T (p1, p2, p3)F = T

  • >

trap: {p1, p2, p3} (p1, p2, p3)F = T F(p1, p2, p3) = T => STP -> live note: not bounded

p1 p2 p3 t1 t2 t3

FC1

t3 t2 t1 p3 p2 p1

FC2

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 18 / 24

CONCLUSIONS (3) STRUCTURAL -> BEHAVIOURAL PROPERTIES:

❑ SM ⇒ [ SC & ’at least one token’ ⇔ LIVE & BND & REV ] ❑ SM ⇒ [ SC & ’exactly one token’ ⇔ LIVE & SAVE & REV ] ❑ MG ⇒ [ SC & ’each elementary circle contains a token’ ⇔ LIVE & BND & REV ] ❑ MG ⇒ [ SC & ’each elementary circle contains exactly one token’ ⇔ LIVE & SAFE & REV ] ❑ EFC ⇒ [ STP ( & HOM & NBM ) ⇔ LIVE ] ❑ ES & STP ( & HOM & NBM ) ⇒ LIVE ❑ STP ( & HOM & NBM ) ⇒ not DSt ❑ ORD & ’there are no siphons’ ⇒ LIVE ❑ ORD & SC & SMA ⇒ structural LIVE

slide-10
SLIDE 10

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 19 / 24

SOME NOTIONS

❑ empty siphon (trap): siphon (trap), not containing a token

  • >

A deadlocked Petri net has an empty siphon.

❑ minimal siphon (trap): siphon (trap) not including a siphon (trap) as a proper subset; ❑ bad siphon: siphon, which does not include a trap;

  • >

If there is a bad siphon, the STP does never hold. Adding tokens does not help.

❑ L(N(m))

  • >

language L of Petri net N with initial marking m:

  • >

set of all transition firing sequences; = all path through the RG (N(m));

❑ For any net N and two markings m and m′, with m ≤ m′, it holds L(N(m)) ⊆ L(N(m′)).

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 20 / 24

SOME OBSERVATIONS

❑ A source place p establishes a bad siphon D = {p} on its own, and a sink place q a trap Q = {q}. ❑ If each transition has a pre-place, then PF = T. Iif each transition has a post-place, then FP = T. In a net without boundary transitions, the whole set of places is a siphon as well as a trap (however, not necessarily minimal ones). ❑ For a P-invariant x it holds Fsupp(x) = supp(x)F. Thus, the support of a P-invariant is siphon and trap (however, generally not vice versa). ❑ If R1 and R2 are siphons (traps), then the union of R1 and R2 is also a siphon (trap). ❑ A minimal siphon (trap) is a P-strongly-connected component, i.e., its places are strongly connected. ❑ If an ordinary N is monotonically live, then there are no bad siphons. ❑ If N(m0) is monotonically live, then the STP holds.

slide-11
SLIDE 11

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 21 / 24

BAD SIPHON 1

p1 p4 p5 p2 p3 t1 t2 t3 2 2p1,p4 p1,p2,p5 p2,p3,p4 t1 t2 t3

{p1, p3} - bad siphon t1- troublemaker

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 22 / 24

BAD SIPHON 2

p1,p3,2p4 p2,p3,p4,p5 p1,p2,2p5 2p1,p4,p5 t3 t2 t1 t2 t1 2p2,2p5 p2,p3,2p4 p1,p2,p4,p5 2p1,2p4 t3 t2 t1 t1

slide-12
SLIDE 12

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 23 / 24

SUMMARY

net class structural liveness criteria type of criteria remarks SM SC & m0* iff monotonicity of liveness MG SC & m0* iff monotonicity of liveness (E)FC STP iff monotonicity of liveness ES STP sufficient transitive conflict relation time-independently live, but not necessarily monotonically live PN no siphons sufficient monotonicity of liveness (?) time-independently live (?) m0* - suitable initial marking

dependability engineering & Petri nets May 2020 monika.heiner@b-tu.de 6 - 24 / 24

REFERENCES

[Bause 1996] Bause, F.; Kritzinger, P.: Stochastic Petri Nets, an Introduction to the Theory; Vieweg 1996. [Desel 1995] Desel, J.; Esparza, J.: Free Choice Petri Nets; Cambridge univ. press 1995. [Desel 1998] Desel, J.: Petrinetze, lineare Algebra und lineare Programmierung;

  • B. G. Teubner 1998.
  • > additional material, not discussed here

[Franzke 2009] Andreas Franzke: Charlie 2.0 – a multi-threaded Petri net analyzer; Diploma thesis, BTU Cottbus, Dep. of CS, December 2009. [Heiner 2008] M Heiner, D Gilbert and R Donaldson: Petri Nets for Systems and Synthetic Biology; SFM 2008, Bertinoro, Springer, LNCS 5016, pages 215–264. [Heiner 2010] M Heiner, C Mahulea and M Silva: On the Importance of the Deadlock Trap Property for Monotonic Liveness;

  • Int. Workshop on Biological Processes & Petri Nets (BioPPN), satellite event of Petri Nets

2010, Braga, Portugal, pages 39-54, June 2010. [Melzer 1996] MELZER, S.; ESPARZA, J.: Checking System Properties via Integer Programming; ESOP ’96, Linköping, Springer, LNCS 1058, pp. 250-264. [Murata 1998] Murata, T: Petri nets: properties, analysis and applications;

  • Proc. of the IEEE 1989:541-580.

[Starke 1990] Starke, P. H.: Analyse von Petri-Netz-Modellen;

  • B. G. Teubner 1990.