View
218
Download
0
Embed Size (px)
Citation preview
Pre-nets, (read arcs) and unfolding:
A functorial presentation
Paolo Baldan (Venezia) Roberto Bruni (Pisa/Illinois)Ugo Montanari (Pisa)
WADT 2002 - Frauenchiemsee, Germany – 24/27 Sept. 2002
Research supported by• IST-2001-32747 Project AGILE• Italian MIUR Project COMETA• CNR Fellowship on Information Sciences and
Technologies
Roadmap• Motivation• P/T Petri Nets
– Overall picture • Processes / unfolding / algebraic
approaches
– Missing “tokens”• Pre-Nets
– Enlarged picture– A missing “token”
• (Read Arcs)• Conclusions
Ongoing
Work
!
Motivation• P/T Petri nets (1962)
– Basic model of concurrency– Widely used in different fields
• (graphical presentation, tools, …)
– Enriched flavors • (contexts, time, probability,…)
• Have 40 years been sufficient to completely understand P/T nets?– Many different semantics proposed over the
years– Conceptual clarification advocated since the ’90s
• Techniques from category theory• In the small/large, functoriality, universality
• The picture is still incomplete!– Limit of P/T nets, not of the applied techniques
P/T Petri Nets
places
transitions
tokens
a
b
c
t s
r
P/T Petri Nets
places
transitions
tokens
a
b
c
t s
r
P/T Petri Nets
places
transitions
tokens
a
b
c
t s
r
Processes• Non-sequential behavior of P/T Petri nets
– Causality and concurrency within a run of the net
a
b
c
t s
r
a b
c
s
r
t
a
t
a
Unfolding• All possible runs in a single structure
– Causality (), concurrency (co), conflict (#) between events
a
b
c
t s
r
a
b
ct
s
r
a
t
a
r
r
#
co
Algebraic• “Petri nets are monoids”
– Algebra of (concurrent) computations via the lifting of the state structures to computations
• sequential composition “;” (of computations) • plus identities (idle steps)• plus parallel composition “” (from states) • plus functoriality of (concurrency)• lead to a monoidal category of computations
• Collective Token Philosophy (CTPh)– T(_) (commutative processes)
• Individual Token Philosophy (ITPh)– P(_) (concatenable processes)– DP(_) (decorated concatenable processes) – Q(_) (strong concatenable processes)
(Part of) The ITPh Story So Far
Safe Occ PES Dom
Winskel’s chain of coreflections
U(_) E(_)
N(_)
L(_)
Pr(_)
PTNets DecOccU(_)
(_)+
D(_) F(_)
Sassone’s chain of adjunctions
Petri* SsMonCat* PreOrdDP(N) <u_>
(_)
(Part of) The ITPh Story So Far
Non functorial!Petri* SsMonCat*
P(N)
• Objects: S (commutative monoid)• Arrows: Processes + ordering on minimal
and maximal tokens in the same place a,b = idab if a b
a bt
c
d
s
e
2f(a)=f(b)=d f(c)=e
f(t)=s
P(f)(a,b)=d,d id2d
(Part of) The ITPh Story So Far
Suffers the same problem as PPetri* SsMonCat*
DP(N)
• Objects: S (strings, not multiset)• Arrows: Processes + total ordering on
minimal and maximal tokens– t:u v implemented by
{tp,q:p q}p,qS
,m(p)=u,m(q)=v
Pseudo functorialPetri* SsMonCat*
Q(_)
Pre-Nets• Under the CTPh, the construction T(_) is
completely satisfactory– T(_) is left adjoint to the forgetful functor from
CMonCat to Petri– T(_) can be conveniently expressed at the level of
(suitable) theories (e.g. in PMEqtl)
• We argue that, under the ITPh, all the difficulties are due to the multiset view of states
• Pre-nets were proposed as the natural implementation of P/T nets under the ITPh– pre-sets and post-sets are strings, not multisets!– for each transition t: u v, just one implementation
tp,q : p q is considered
Pre-Nets, Algebraically
• Under the ITPh, the construction Z(_) is completely satisfactory– Z(_) is left adjoint to the forgetful functor
from SsMonCat to PreNets– Z(_) can be conveniently expressed at the
level of (suitable) theories (e.g. in PMEqtl)– All the pre-nets implementations R of the
same P/T net N have the same semantics – Q(N) can be recovered from (any) Z(R)
PreNets SsMonCatZ(_)
G(_)
Pre-Net Processes?• Deterministic Occurrence Pre-nets
– Finite conflict-free acyclic pre-net– (Like for P/T nets, but pre- and post-sets
are strings of places)
• Processes of R : R
• Concatenable processes– Total order on minimal and maximal places– Form a symmetric monoidal category
PP(R)
PP(R) Z(R)
Pre-Net Unfolding?• Non-Deterministic Occurrence Pre-nets
– Well-founded, finite-causes pre-net without
forward conflicts– (Like for P/T nets, but pre- and post-sets
are strings of places)
• Unfolding of R– Inductively defined non-deterministic
occurrence pre-net U(R)
PreNets PreOccU(_)
The Pre-Net Picture
PreNets PreOcc PES DomU(_) E(_)
?
L(_)
Pr(_)
PreOrd<p_>
(_)
SsMonCat
Z(_)G(_)
• Functorial diagram reconciling all views• Algebraic semantics via adjunction• A missing link in the unfolding
PTNets
A(_)
On The Missing Link
• The “most general” occurrence pre-net is hard to find …
e1
e2
e1
e2
e1
e2
Read Arcs
• Read arcs model multiple concurrent accesses in reading to resources– t1 and t2 above can fire concurrently– (not possible if the situation is rendered
with self-loops)
• Overall picture suffering of the same pathology as P/T nets… and more
t1 t2
What Is There…• Processes [Montanari, Rossi]• Unfolding [Baldan, Corradini, Montanari]
– Chain of coreflections
• Algebraic– Match-share categories
– Non-free monoids of objects [Bruni, Sassone]
CNets(semiweighted)
OCN AES Dom
What Is There…• Processes [Montanari, Rossi]• Unfolding [Baldan, Corradini, Montanari]
– Chain of coreflections
• Algebraic– Match-share categories
– Non-free monoids of objects [Bruni, Sassone]
CNets(semiweighted)
OCN AES Dom
What Is There…• Processes [Montanari, Rossi]• Unfolding [Baldan, Corradini, Montanari]
– Chain of coreflections
• Algebraic– Match-share categories
– Non-free monoids of objects [Bruni, Sassone]
CNets(semiweighted)
OCN AES Dom
What Is There…• Processes [Montanari, Rossi]• Unfolding [Baldan, Corradini, Montanari]
– Chain of coreflections
• Algebraic– Match-share categories
– Non-free monoids of objects [Bruni, Sassone]
CNets(semiweighted)
OCN AES Dom
What Is There…• Processes [Montanari, Rossi]• Unfolding [Baldan, Corradini, Montanari]
– Chain of coreflections
• Algebraic– Match-share categories
– Non-free monoids of objects [Bruni, Sassone]
CNets(semiweighted)
OCN AES Dom
= = = = … (atoms and electrons)
… And What Is Not• Functoriality and universality of the
algebraic approach?• Reconciliation between the three views?• Contextual pre-nets• Algebraic (ok)
– Based on (but slightly more complicated than) match-share categories
• Unfolding– Analogous to pre-nets (details to be worked
out)
Conclusions• Pre-nets are suitable for ITPh
– A unique, straightforward algebraic construction
– All views (algebraic, processes, unfolding) are satisfactorily reconciled
• To investigate: – From PES to PreOcc (hard)– Extension to read arcs (feasible)
• But also:– Algebraic approach for graphs (DPO / SPO)– Semantics of coloured / reconfigurable /
dynamic nets
Pre-nets, read arcs and unfolding:A functorial presentation
a paper by Paolo BaldanRoberto Bruni
Ugo Montanari
a WADT presentation by Roberto Bruni
Research supported byIST-2001-32747 Project AGILEItalian MIUR Project COMETACNR Fellowship on Inf. Sci. and Techn.
Electronic watercolor by Roberto Bruni