Your SlideShare is downloading. ×

Karsten Wolf @ Carl Adam Petri Memorial Symposium

1,222

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,222
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Petri Net (versus) State Spaces Karsten Wolf UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 2. My experience with state spaces-INA Integrated Net Analyzer-LoLA A Low Level Analyzer-The service-technology.org tool familyCase studies and applications:-Finding hazards in a GALS wrapper-Integration into Pathway Logic Assistent-Soundness check for 700+ industrial business process models in (avg) 2 msec-Verification of web service choreographies-Verification of parameterized Boolean programs-Solving AI planning challenges-Integration into BP related tools like ProM, Oryx-Integration into model checking platforms (MC Kit, PEP, CPN-AMI,…)-….To be continued UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 3. Why state spaces? Why Petri nets? Verification based on state space UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 4. -Consider asynchronously communicating components rather than global state changesWhy state spaces? -Consider causality of events rather than their ordering in time! UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 5. Petri net principles Presence or absence of ressourcesMonotonicity of firing rather than reading / writing variablesLinearity of firing rule -Consider asynchronously communicating components rather than global state changesLocality -Consider causality of events rather than theirPartially ordered ordering in time!event structures UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 6. Petri net specific verificationMonotonicity of firing Coverability graphs Siphons / trapsLinearity of firing rule invariantsLocality Net reductionPartially orderedevent structures Branching prefixes UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 7. State space generation1. Checking enabledness2. Firing a transition3. Backtracking4. Managing the visited states UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 8. State space generation1. Checking enabledness it y oto n ic Mon After firing, only check: previously enabled transitions which have lost tokens previously disabled transitions which have gained tokens ... managed through explicitly stored lists … typical: reduction from linear to constant time li ty L oca2. Firing a transition3. Backtracking4. Managing the visited states UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 9. State space generation1. Checking enabledness2. Firing a transition Marking changed via list of pre-, list of post-places - effort does not depend on size of net - Typically: constant effort li ty L oca3. Backtracking4. Managing the visited states UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 10. State space generation1. Checking enabledness2. Firing a transition3. Backtracking ri ty Li nea In depth-first search: fire transition backwards In breadth-first search: implemented as incremental depth-first search li ty L oca4. Managing the visited states UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 11. Consequence: „write-only“ storage of markings current marking m -fire old/new -fire backwards Set of visited markingsSearchstack t1 t2 t3 ... UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 12. 4. Managing the visited states only performed actions: search, insert p1 p2 p3 p4 p5 p6 p7 p8 in e arity L a1 p1 + a2 p2 + a3 p3 = const. Place invariants b2 p2 + b4 p4 + b6 p6 = const. c3 b3 + c7 p7 + c8 p8 = const.30-60% less memorypreprocessing <1secrun time gain: 30-60% UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 13. Reduction techniques1. Linear Algebra2. The Sweep-Line Method3. Symmetries4. Stubborn Sets UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 14. 1. Linear algebra• The invariant calculus – originally invented for replacing state spaces – in LoLA: used for optimizing state spaces Already seen: place invariants Transition invariant: firing vector of a potential cycle UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 15. Transition invariants ty L in earifor termination sufficient: store one state per cycle of occurrence graphimplementation in LoLA:transition invariants - set of transitions that occur in every cycle - store states where those transitions enabledsaves space, if applied in connection with stubborn sets, costs time UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 16. 2. The sweep-line method• Relies on progress measure ty L in eari LoLA computes measure automatically: m4: p4 t3 transition invariant p2=p1+Δt1 m3: p3 p3 = p2+Δt2 t2 ... m2: p2 t1 m1: p1 UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 17. 3. The symmetry method li ty L ocaLoLA: A symmetry = a graph automorphism of the PT-NetAll graph automorphisms = a group (up to exponentially many members) - stored in LoLA: polynomial generating setA marking class: all markings that can be transformed into each other by a symmetry - executed in LoLA: polynomial time approximation UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 18. ExampleUNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 19. … as derived from a programUNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 20. 4. Stubborn set method• Dedicated method for each supported property li tytraditional LTL-preserving method: L o ca - one enabled transition - the basic stubborness principal - only invisible transitions - at least once, on every cycle, all enabled transitions n Tra d i t ioLoLA: PN - can avoid some of the criteria, depending on property UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK
  • 21. ConclusionWhy state spaces? Why Petri nets? That‘s why Further reading: • Tools: www.service-technology.org • Group / Papers: www.informatik.uni-rostock.de/tpp/ UNIVERSITÄT ROSTOCK | FAKULTÄT INFORMATIK UND ELEKTROTECHNIK | INSTITUT FÜR INFORMATIK

×