1 / 39

Concurrent Operational Semantics of Safe Time Petri Nets

Concurrent Operational Semantics of Safe Time Petri Nets. Claude Jard European University of Brittany, ENS Cachan Bretagne, IRISA Campus de Ker-Lann, 35170 Bruz, France Claude.Jard@bretagne.ens-cachan.fr. with Thomas Chatain, currently postdoc in Aalborg.

mauldin
Download Presentation

Concurrent Operational Semantics of Safe Time Petri Nets

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. Concurrent Operational Semantics of Safe Time Petri Nets Claude Jard European University of Brittany, ENS Cachan Bretagne, IRISA Campus de Ker-Lann, 35170 Bruz, France Claude.Jard@bretagne.ens-cachan.fr with Thomas Chatain, currently postdoc in Aalborg

  2. Time & Concurrent Semantics • Seems to be a bit contradictory: • Time is a global notion • Concurrency is implied by independent actions, which are locally decided • Is difficult: • even for the simple case of safe time Petri net, the definition of unfoldings and finite complete prefixes was left open

  3. What we have done… Ingredients: • Mixed of graphical and symbolic constraints • Duplication of events to capture different temporal constraints for a same event • Introduction of reads arcs Safe Time Petri Net Its finite complete prefix

  4. Time Petri Nets [Merlin 1976] • Syntax: <P,T, pre, post, efd, lfd, M0> • Sequential semantics: Global state (M,dob,) (M,dob,) -t-> (M’,dob’,’) iff

  5. Firing Sequences 0 • (p1p2,00,0) 0

  6. Firing Sequences 0 • (p1p2,00,0) -t2-> (p1p4,01.3,1.3) 1.3

  7. Firing Sequences 0 • (p1p2,00,0) -t2-> (p1p4,01.3,1.3) -t1-> (p3p4,31.3,3) 3 1.3

  8. Firing Sequences 3 • (p1p2,00,0) -t2-> (p1p4,01.3,1.3) -t1-> (p3p4,31.3,3) -t0-> (p1p2,33,3) 3 3 1.3

  9. Firing Sequences 3 • (p1p2,00,0) -t2-> (p1p4,01.3,1.3) -t1-> (p3p4,31.3,3) -t0-> (p1p2,33,3) -t1-> (p2p3,33,3) 3 3 1.3

  10. Firing Sequences 3 • (p1p2,00,0) -t2-> (p1p4,01.3,1.3) -t1-> (p3p4,31.3,3) -t0-> (p1p2,33,3) -t1-> (p2p3,33,3) -t2-> (p3p4,35,5) 3 3 5

  11. Firing Sequences 3 • (p1p2,00,0) -t2-> (p1p4,01.3,1.3) -t1-> (p3p4,31.3,3) -t0-> (p1p2,33,3) -t1-> (p2p3,33,3) -t2-> (p3p4,35,5) -t3-> (p4p5,55,5) 3 5 3 5

  12. Symbolic Firing Sequences • (p1p2,00,0) -t2-> (p1p4,01,1) -t1-> (p3p4, 21,2) -t0-> (p1p2,33,3) -t1-> (p2p3,34,4) -t2-> (p3p4,45,5) -t3-> (p4p5,56,6) where [1≤1≤2][0≤2][max(2,1)≤3≤max(2,1)] [3≤2+2][3+2≤4][3+1≤5≤3+2][5≤4+2] [6=4+2][6≤max(4,5)]

  13. Time processes • First attempt [Aura, Lilius 1997] • Time processes are those of the underlying (untimed) Petri net that are consistently dated • Can be defined inductively from the firing sequences

  14. t2(1.3)

  15. t2(1.3) t1(3)

  16. t2(1.3) t1(3) t0(3)

  17. t2(1.3) t1(3) t0(3) t1(3)

  18. t2(1.3) t1(3) t0(3) t1(3) t2(3)

  19. t2(1.3) t1(3) t0(3) t1(3) t2(3) t3(5)

  20. Unfolding • Defined as the superimposition (union) of all the time processes (share the common prefixes) t2(1.3) t1(3) t0(3) t1(3) t2(3) t3(5) t1(1) t3(3)

  21. Unfolding • Defined as the superimposition (union) of all the time processes (share the common prefixes)

  22. Problem with the symbolic representation • Consider the processes built from the sequences t1(1).t3(3) and t1(1).t2(2).t3(3) • Constraints on t3 are: • [1≤2]  [3=1+2] (first case) • [1≤2]  [1≤2≤2]  [2≤1+2]  [3=1+2]  [3≤max(1,2)] • The superimposition will provide a disjunction, which will make difficult the extraction of processes in the general case • Except for the particular case of Time Extended Free Choice Nets

  23. Event duplication • Introduction of read arcs • (to preserve concurrency) • Efficient concurrent • semantics by considering • local firing rules

  24. Local States • Assume a partition {(Pi)} in mutually exclusive places (simplifies the test of token absence) (pPi, p = Pi \ {p}) • {{p1,p3,p5},{p2,p4,p6}} in our example • A maximal (partial) marking is a set of places with one place per each subset of the partition • A local state is <L, dob, lrd> (lrd stands for “latest reading date”) _

  25. Local Enabling • ) To minimize the number of read arcs: _

  26. Local Firing Rule • (M, dob, lrd) -t,,L-> (M’, dob’, lrd’)

  27. (Extended) Time Processes

  28. t2(1.3,p2)

  29. t2(1.3,p2) t1(3,p1)

  30. t2(1.3,p2) t1(3,p1) t0(3,p3p4)

  31. t2(1.3,p2) t1(3,p1) t0(3,p3p4) t1(3,p1)

  32. t2(1.3,p2) t1(3,p1) t0(3,p3p4) t1(3,p1) t2(3,p2)

  33. t2(1.3,p2) t1(3,p1) t0(3,p3p4) t1(3,p1) t2(3,p2) t3(5,p3p4)

  34. Unfolding • Defined as the union of all the time processes • Properties: • Unfolding of Time Extended Free Choice Nets is the standard unfolding • Unfolding of Time Nets limited to [0,+[ is the untimed usual unfolding • The unfolding of disconnected nets remains disconnected

  35. Process extraction

  36. Complete Finite Prefixes • Two maximal states are considered equivalent if they have • the same marking and the same reduced ages in the places • The set of expressions defining the reduced ages in the maximal • states of the processes is finite • Prefixes are computed incrementally provided a substitution in the • firing date expressions

  37. Substitution

  38. Conclusion • An original notion of unfolding of Time PN and its finite representation • Tries to code the maximum of concurrency in the graphical part • Complexity issues are to be worked • Other models? (non-safe, networks of Timed Automata, local semantics of time…)

More Related