1 / 20

Canonical Prefixes of Petri Net Unfoldings

This paper discusses the concept of unfolding a Petri net and introduces the notion of canonical prefixes as an algorithm-independent approach. It also explores the application of canonical prefixes in parallel slicing algorithms. The paper presents an overview of cutting contexts, completeness, finiteness, and König’s Lemma, and discusses a recent application of the approach.

meierm
Download Presentation

Canonical Prefixes of Petri Net Unfoldings

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Canonical Prefixes of Petri Net Unfoldings Walter Vogler Universität Augsburg in cooperation with V. Khomenko, M. Koutny (CAV 2002, Acta Informatica 2003)

  2. some concepts you know • unfoldingUnfof a Petri net (full branching process) • C : set of (finite) configurations • Cloc : set of local configurations [e] with e  E<e> is [e] without e • if E’ is a suffix of C’, write C’  E’ UFO 07

  3. McMillan: construct complete finite prefix of Unfstepwise; for cut-offs, compare configurations by size • ERV: more abstract setting: compare with adequate order( e  f if [e]  [f] ) • ERV-algorithm constructs complete finite prefix UFO 07

  4. step: add - minimal possible extension e declare cut-off if there is f in p with [f] [e] & [e] and corresponding configuration[f] reach the same marking • non-deterministic choice; different results? (maybe f exists in Unf, but not yet added to thisp) f e p f UFO 07

  5. it seems: prefix depends on algorithm and non-deterministic choices • aim: define algorithm-independent canonical prefix • application: (parallel) slicing algorithm [HKK 02] processes e.g. all - minimal possible extensions together • original correctness proof: compares each run with ERV-algorithm • new: all runs (slicing, ERV) construct the canonical prefix UFO 07

  6. this approach in an even more general setting: cutting contexts • canonical prefix finite and complete in ~ all such contexts UFO 07

  7. Overview • cutting contexts • canonical prefix • completeness • finiteness and König’s Lemma • algorithmics • a recent application (Khomenko ATPN 07) UFO 07

  8. cutting contexts – motivation • parameter: adequate order • parameter: corresponding configuration local or general or …(general configuration for minimised prefix) • parameter: information to be represented • usually: marking, i.e.two configurations with the same marking are equivalent, one of them suffices • or: marking plus state vector (for asynchronous circuits, STGs)more information, finer equivalence • or: marking up to symmetries (smaller prefix)less information, coarser equivalence UFO 07

  9. cutting contexts – definition cutting context = ( , , {Ce} eE ) where • for each event eE of Unf, Ce  C • usually Ce = Cloc •  is dense if Ce  Cloc •  is an equivalence on C •  is an adequate order, i.e. a well-founded strict partial order on C (no infinite decreasing sequence), refining  • … preserved by finite extensions … UFO 07

  10. cutting contexts – definition cutting context = ( , , {Ce} eE ) where •  and  are preserved by finite extensions, i.e. whenever C’  C’’ and E’ is a suffix of C’, then there exists suffix E’’ such that • C’’  E’’  C’  E’ (not needed in standard case) • if C’’  C’, then C’’  E’’  C’  E’ (more general than standard case) standard: E’’ obtained from E’ by natural isomorphism UFO 07

  11. canonical prefix simple idea: e cut-off if C Ce with C  [e] and C[e] Does not work in standard setting! • Such a local C can actually contain a cut-off; • will never be constructed, not be in canonical prefix. e not detected as cut-off • Actually, some smaller C’ with the same marking and without cut-offs exists, but it might be non-local. UFO 07

  12. canonical prefix Def.: feasible events fsbl (events with no cut-off in past, will be in prefix) and static cut-offs cut satisfy • e is feasible if <e>  cut = ; (<e> is [e] without e) • feasible e is static cut-off, if there is C Ce with C  [e], C[e] and C  fsbl \ cut . Canonical prefixUnf induced by fsbl . UFO 07

  13. canonical prefix Def.: • e is feasible if <e>  cut = ; (<e> is [e] without e) • feasible e is static cut-off, if there is C Ce with C  [e], C[e] and C  fsbl \ cut . is well-founded on E; by Noetherian induction, statusof predecessors already defined: • f  <e>  f < e  [f]  [e]  f e • f  C[e]  [f]  C[e]  [f]C[e] UFO 07

  14. completeness – general notion • A branching process p is complete w.r.t. a set E’ of events if: • for every C  C there is a configuration C’in p such that C  C’ and C’E’ =  • if C is a configuration of p such that CE’ =  and {e} is an extension of C in Unf, then C  {e} is also a configuration in p. • strictly stronger than standard notion: for every configuration, all possible firings are included; • important for deadlock detection UFO 07

  15. completeness – result • Theorem: Unf is complete w.r.t. cut . • Proof: essentially like in [ERV], using preservation under finite extensions UFO 07

  16. finiteness and König’s Lemma • König’s Lemma: An infinite, locally finite, rooted, directed graph has an infinite path. • not applicable to branching processes: conditions may have infinitely many outgoing arcs! • Theorem: An infinite branching process always contains an infinite chain of causally related events. The result holds also for unbounded nets! UFO 07

  17. finiteness and König’s Lemma • used this version of König’s Lemma to prove • Theorem: 1. If  has finite index and  is dense, then Unf is finite.2. If  has infinite index, then Unf is infinite. Remarks: 1. Finite index means bounded in standard case;2. clear from completeness. UFO 07

  18. algorithmics • Theorem: If Unf is finite, then the ERV- and the slicing algorithm generate Unf – for any . • essential fact: if e is a possible extension, then all feasible f [e] have already been added. UFO 07

  19. a recent application • V. Khomenko: Behaviour-Preserving Transition-Insertions in Unfolding Prefixes, ATPN 2007 useful for designing asynchronous circuits UFO 07

  20. a recent application • setting: find place for insertion by studying a prefix Unf • desirable: prefix Unf’ of the new net can be obtained from Unf by the “same” insertions – but cut-offs may be different! • solution: the “same” insertions give the canonical prefix for a different cutting context ’ ! UFO 07

More Related