200 likes | 348 Views
Canonical Prefixes of Petri Net Unfoldings. Walter Vogler Universität Augsburg in cooperation with V. Khomenko, M. Koutny (CAV 2002, Acta Informatica 2003). some concepts you know. unfolding Unf of a Petri net (full branching process) C : set of (finite) configurations
E N D
Canonical Prefixes of Petri Net Unfoldings Walter Vogler Universität Augsburg in cooperation with V. Khomenko, M. Koutny (CAV 2002, Acta Informatica 2003)
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
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
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
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
this approach in an even more general setting: cutting contexts • canonical prefix finite and complete in ~ all such contexts UFO 07
Overview • cutting contexts • canonical prefix • completeness • finiteness and König’s Lemma • algorithmics • a recent application (Khomenko ATPN 07) UFO 07
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
cutting contexts – definition cutting context = ( , , {Ce} eE ) where • for each event eE 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
cutting contexts – definition cutting context = ( , , {Ce} eE ) 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
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
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
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
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 CE’ = 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
completeness – result • Theorem: Unf is complete w.r.t. cut . • Proof: essentially like in [ERV], using preservation under finite extensions UFO 07
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
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
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
a recent application • V. Khomenko: Behaviour-Preserving Transition-Insertions in Unfolding Prefixes, ATPN 2007 useful for designing asynchronous circuits UFO 07
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