Presentation is loading. Please wait.

Presentation is loading. Please wait.

History-Dependent Petri Nets Kees van Hee, Alexander Serebrenik, Natalia Sidorova, Wil van der Aalst ?

Similar presentations


Presentation on theme: "History-Dependent Petri Nets Kees van Hee, Alexander Serebrenik, Natalia Sidorova, Wil van der Aalst ?"— Presentation transcript:

1 History-Dependent Petri Nets Kees van Hee, Alexander Serebrenik, Natalia Sidorova, Wil van der Aalst ?

2 Motivation  Choices made in processes often depend on the previous events – process history  Process history is often available from logs  Encoding history-based decisions into the net structure can be complex, error-prone, and decreasing the readability  We do not model the whole state of a system, but only some aspects of it!

3 Goal

4 History logic History: a partially ordered set of labeled events  E, ≤, λ , where λ: E → Σ Operations on history:  extension with an event  union of histories Given a set of labels Σ and an event variable x, we define a formula φ, a term q and a label expression l :

5 Examples of history guards Short-hand notations: # S – the number of events with a label from set S,  x : φ ≡ (#x: φ)>0  x : φ ≡ (#x: φ) =(#x: true) Examples: #{ a } < #{ b }  x : ( λ( x ) = a   y : ( λ( y ) = b  x ≤ y))

6 Token history nets Tokens are colored with histories. Transitions have guards evaluated on the union of the histories of consumed tokens. Tokens produced by a transition firing are colored with the union of histories of the consumed tokens extended by the firing event.

7 Global history nets History is available to all transitions. Guards are evaluated on this history. Transition firings extend the history with a corresponding event. Global history nets are Turing complete: Take a net where transitions have unique labels. Then guards of the type allow to simulate inhibitor arcs.

8 Token history vs. global history Suppose the global history is aabc. What are token histories? Token on p and q might share the event with label a, but not necessarily. Corollary: token history cannot be reconstructed from the global history. Suppose the marking of the token history net is [(p,H 1 )] + [(p,H 2 )] + [(q,H 3 )] + [(q,H 4) ] where H 1 =  {e 1,e 2 }, {e 1 ≤ e 2 }, {(e 1,a),(e 2,b)} , H 2 =  {e 4,e 5 }, {e 4 ≤ e 5 }, {(e 4,a),(e 5,b)} , H 3 =  {e 1,e 3 }, {e 1 ≤ e 3 }, {(e 1,a),(e 3,c)} , H 4 =  {e 4,e 6 }, {e 4 ≤ e 6 }, {(e 4,a),(e 6,c)} . What is the global history? It might be abcabc, or aabbcc, or abacbc, etc. Corollary: the global history cannot be reconstructed from the token histories.

9 However we can simulate global history by token history Each transition t is connected to extra place p. Initially with the empty history: the token history of p is the global history t p

10 Counting Formulae Guards A counting formula φ is defined by Nets with counting formulas are Turing complete (remember: ) So we provide a translation of this class into bisimilar inhibitor nets.

11 Guards (#A) ρ (#B + k )

12 Construction for compound formulae Consider a guard g(t) for transition t in disjunctive normal form ¬φ is trivial φ 1  φ 2 : test arcs for each formulae to t φ 1  φ 2 : duplicate t into t and t’ each with one test arc

13 Let ( N,m ) be a Petri net with n transitions and y  Z n. The y -distance of ( N,m ) is D (( N, m ), y )) = y T · where  is the set of all executable finite firing sequences. Let A and B be two label sets and y (A,B) is a vector with 1 for transitions labeled by an A label, -1 for B labels and 0 for the rest. The y (A,B) distance is the max difference in the number of the firings of A-transitions and the number of the firings of B-transitions. There is an efficient algorithm to determine if the distance is finite! When the guards are of the form #A  # B + k and y (A,B) < , we can construct a Petri net bisimilar to the global history net. Similarly #A  # B + k and y (B,A) <  Bounded synchronization distance

14 LTL guards without Next LTL formulae can be translated into B Ü chi automata LTL-guards are evaluated on finite traces (history!)  they can be translated to finite deterministic automata. Synchronous product of the Petri net with these automata yields a classical Petri net.

15 Conclusion  Incorporating history into a model allows to separate process information from safety constraints.  History nets are Turing complete.  Still, some subclasses can be translated to classical PNs.  For some other subclasses a translation to inhibitor nets is proposed.

16 Future Work  The use of tokens nets for component-based systems. Need for additional operations like projection and intersection of histories  Transformation of other subclasses to PNs.  What about Presburger logic?

17 symbols and constructs                        *              1 (o)  2 (o)     min (t)  max (t) a*  t  p  :  t  p  : 


Download ppt "History-Dependent Petri Nets Kees van Hee, Alexander Serebrenik, Natalia Sidorova, Wil van der Aalst ?"

Similar presentations


Ads by Google