1 / 29

* Department of Computing Science University of Newcastle upon Tyne

Canonical Prefixes of Petri Net Unfoldings. V. Khomenko *, M . Koutny *, and W.Vogler**. * Department of Computing Science University of Newcastle upon Tyne ** Institut f ür Inform a tik, Universität Augsburg. Motivation. investigate fundamental properties of unfoldings and their prefixes

saki
Download Presentation

* Department of Computing Science University of Newcastle upon Tyne

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 V.Khomenko*, M.Koutny*, and W.Vogler** *Department of Computing Science University of Newcastleupon Tyne **Institut für Informatik, Universität Augsburg

  2. Motivation • investigate fundamental properties of unfoldings and their prefixes • extend the applicability of the existing techniques

  3. s – initial state s a a b b r c r s p d a c d r r p c b c b Unfolding finite state machines FSM unfolding • all reachable states are represented • all instances of a state have the same future • infinite unfoldings are of little use for MC

  4. s – initial state s a a b b r c r s p d c d r p Complete prefix prefix • cut if there is a preceding instance of the same state • the prefix still contains all reachable states

  5. s – initial state s a a b b r c r s p d c d r p The prefix is finite prefix • the prefix has no infinite paths, and we can apply …

  6. König’s lemma A finitely branching, rooted, directed acyclic graph with infinitely many nodes reachable from the root has an infinite path from the root NB: branching is finite but may be unbounded! D.König: Über eine Schlußweise aus dem Endlichen ins Unendliche. Acta Litt. ac. sci. Szeged 3 (1927) 121-130

  7. s – initial state s a a b b r c r s p d a c d r r p c b c b Unfolding more complicated machines unfolding x is an integer variable with the initial value 0 a: x=x+1 b: x=x-1 c: x=x+1 d: x=x Problem 1: can x ever have a value other than 0 at s?

  8. s – initial state s X=0 a a b b r c r s p d c d X=0 r p Prefix – first attempt prefix x is an integer variable with the initial value 0 a: x=x+1 b: x=x-1 c: x=x+1 d: x=x • x is always 0 at s in the prefix • a clear mistake, e.g. a c d b • what is behind this error ?

  9. s – initial state s: x=0 a a b b c r: x=1 r p: x=2 s: x=0 d c d r: x=2 p Prefix is not complete! prefix x is an integer variable with the initial value 0 a: x=x+1 b: x=x-1 c: x=x+1 d: x=x • not every execution is represented • correction: cut if there is a preceding instance of the same state with the same value of x • no complete and finite prefix in this case

  10. s – initial state s: x=0 a a b b c r: x=1 r p: x=2 s: x=0 d c d r: x=1 p Prefix is complete prefix x is an integer variable with the initial value 0 a: x=x+1 b: x=x-1 c: x=x+1 d: x=x-1 correction • now the prefix is complete and finite • is it crucial that the previous machine had an infinite state space while this one has not ?

  11. s s: x=0 a a b b c r r: x=1 p: x=3 s: x=0 c d d r: x=3 p b c p: x=5 s: x=3 • this prefix is complete for Problem 2 • x>1 cannot decrease, so no need to look below the leaves ! d a r: x=5 r: x=4 Another machine with infinite state space a: x=x+1 b: x=if (x<2) then (x-1) else x c: x=x+2 d: x=x Problem 2: can x ever be equal to 1 at s?

  12. A generalization • M is a machine with execution tree ET • Prop is a property specified on executions of M • ~ is an equivalence relation on executions • if E1~E2 then: • E1 satisfies Prop iff E2 satisfies Prop • for every extension E1’ of E1 there is an extension E2’ of E2 such that E1’~E2’ • PREF is the prefix obtained thus: an execution is terminated as soon as there is a ‘smaller’ equivalent execution

  13. Properties Canonicity:PREF is unique Completeness: All executions in ET satisfy Propiff all executions in PREF satisfy Prop Finiteness:PREF is finite iff the number of equivalence classes of ~is finite Proof: Follows from König’s Lemma

  14. Application 1 Prop= “there is an execution leading to a given state” E1~E2 iff both executions lead to the same state of M (variable is not present) PREF is finite as ~ has finitely many equivalence classes

  15. Application 2 Prop= “there is an execution leading to a given state of M and setting x to a given value” E1~E2 iff both executions lead to the same state of M and set x to the same value PREF is finite iff x can be set to finitely many values Note: the latter may be difficult to establish (global reasoning)

  16. Application 3 Prop= “there is an execution leading to a given state of M and setting x to a given value k” M is a machine such that if x>m>k, then no transition can set x to a value <m Note: this may be easy to establish (local reasoning) E1~E2 iff both executions lead to the same state of M AND they set x EITHER to the same value <m OR to (possibly different) values >m PREF is always finite

  17. Some conclusions • Unfolding based techniques can be execution-oriented rather than state-oriented • By choosing suitable ~ we may finely tune the construction of the prefix to match the verification problem • König’s lemma plays a key role in dealing with the finiteness of the prefix We may try to generalize these ideas to branching processes of Petri nets

  18. A branching process

  19. 1 2 k König’s lemma for branching processes? A condition with infinite branching König's Lemma cannot be directly applied to branching processes, since branching on conditions can be infinite The branching process can potentially be infinite even when all the paths are finite But we may try to prove a net-specific result !

  20. König’s lemma for branching processes Theorem: An infinite branching process of a P/T-net always contains an infinite chain of causally related events starting at the initial event The result holds also for unbounded nets!

  21. Some notation Unf the (full) unfolding of a fixed P/T-net E the set of events of Unf Conf the set of finite configurations of Unf Loc the set of local configurations of Unf Note that configurations are in fact (partial-order) executions

  22. Cutting context A cutting context is a triple Θ = ( ~ , < , {Ce}e  E ) where:~ is an equivalence relation on Conf < is a strict and well-founded partial order on Conf refining set inclusion [ERV] Ce is a subset of Conf ~ and < must be preserved by finite extensions, i.e. if C1~C2 and C1<C2 then for every finite extension C1’ of C1 there is a finite extension C2’ of C2 such that C1’~C2’ and C1’<C2’

  23. Cutting contexts – examples CeConf – [Hel] CeLoc – standard [ERV, McM …] C1~C2 if the same markings are produced – standard [ERV, McM …] C1~C2 if symmetric markings are produced – [CGP] C1~C2if the same markings are produced and Code(C1)=Code(C2), where Code is the signal coding function – [KKY]

  24. Completeness • A branching process π is complete w.r.t. a set E’ of events if: • for every CConf there is a finite configuration • C’inπsuch that C~C’ and C’E’= • if C is a finite configuration of π such that • CE’=, C{e} is an extension of C in Unf, • then C{e} is an extension of C in π • πis complete if it is complete w.r.t. some E’ • Note: this notion of completeness is strictly stronger than the standard one (e.g. in [ERV])

  25. Static cut-off events • Sets of events feasible and cut-off are defined by induction: • e is feasible if it has no cut-off predecessors • e is a cut-off event if it is feasible and there is • a configuration CCe consisting of feasible • non-cut-off events such that C~[e] and C<[e] The canonical prefix CAN is the branching process comprising the feasible events No algorithm is needed to define cut-offs and the prefix!

  26. Properties of CAN Canonicity:CAN is unique Completeness:CAN is complete w.r.t. the set of cut-off events Finiteness:CAN is infinite iff Unf contains an infinite chain of feasible events Proof: Follows from König's Lemma for branching processes

  27. More about finiteness • Finiteness 2: • If ~ has finitely many equivalence classes and each Ce contains Loc, then CAN is finite • If ~ has infinitely many equivalence classes, then CAN is infinite Note: upper bounds on the size of CAN can also be obtained in certain cases

  28. Generating CAN Theorem: The standard (non-deterministic!) unfolding algorithms always generate CAN!!! The result holds for the algorithm proposed in [ERV] and for the parallel algorithm in [HKK]

  29. What has been achieved? • General flexible framework for constructing complete prefixes of net unfoldings • Canonicity of the prefix given a fixed cutting context • Stronger notion of completeness • New / improved proofs of correctness of the existing algorithms for constructing finite prefixes • König’s Lemma for branching processes of P/T-nets (also unbounded ones)

More Related