Concurrent Operational Semantics of Safe Time Petri Nets Claude Jard European University of Brittany, ENS Cachan Bretagne, IRISA Campus de Ker-Lann, 35170.

Post on 14-Dec-2015

218 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

Transcript

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

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

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 NetIts finite completeprefix

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

Firing Sequences

• (p1p2,00,0)

0

0

Firing Sequences

• (p1p2,00,0) -t2-> (p1p4,01.3,1.3)

0

1.3

Firing Sequences

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

0

1.3

3

Firing Sequences

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

-t0-> (p1p2,33,3)

3

1.3

3

3

Firing Sequences

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

-t0-> (p1p2,33,3) -t1-> (p2p3,33,3)

3

1.3

3

3

Firing Sequences

• (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

5

3

3

Firing Sequences

• (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

3

5

Symbolic Firing Sequences

• (p1p2,00,0) -t2-> (p1p4,01,1) -t1-> (p3p4, 21,2) -t0-> (p1p2,33,3) -t1-> (p2p3,34,4) -t2-> (p3p4,45,5) -t3-> (p4p5,56,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)]

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

t2(1.3)

t2(1.3) t1(3)

t2(1.3) t1(3) t0(3)

t2(1.3) t1(3) t0(3) t1(3)

t2(1.3) t1(3) t0(3) t1(3) t2(3)

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

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)

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

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

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

Local States

• Assume a partition {(Pi)} in mutually exclusive places (simplifies the test of token absence) (pPi, 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”)

_

Local Enabling

• ) _

To minimize the number of read arcs:

Local Firing Rule

• (M, dob, lrd) -t,,L-> (M’, dob’, lrd’)

(Extended) Time Processes

t2(1.3,p2)

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

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

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

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

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

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

Process extraction

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

Substitution

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…)

top related