270 likes | 400 Views
WADT 2002 - Frauenchiemsee, Germany – 24/27 Sept. 2002. Pre-nets, (read arcs) and unfolding: A functorial presentation. Paolo Baldan (Venezia) Roberto Bruni (Pisa/Illinois) Ugo Montanari (Pisa). Research supported by IST-2001-32747 Project AGILE Italian MIUR Project COMETA
E N D
WADT 2002 - Frauenchiemsee, Germany – 24/27 Sept. 2002 Pre-nets, (read arcs) and unfolding:A functorial presentation Paolo Baldan (Venezia) Roberto Bruni (Pisa/Illinois) Ugo Montanari (Pisa) • 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 b places a transitions t s tokens c r
P/T Petri Nets b places a transitions t s tokens c r
P/T Petri Nets b places a transitions t s tokens c r
s t c a t a r Processes • Non-sequential behavior of P/T Petri nets • Causality and concurrency within a run of the net a b b a t s c r
co # Unfolding • All possible runs in a single structure • Causality (), concurrency (co), conflict (#) between events b a s t b c r a t s a r c t r a r
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)
DP(N) <u_> Petri* SsMonCat* PreOrd U(_) (_) PTNets DecOcc (_)+ Sassone’s chain of adjunctions D(_) F(_) (Part of) The ITPh Story So Far U(_) E(_) L(_) Safe Occ PES Dom N(_) Pr(_) Winskel’s chain of coreflections
a d b 2 t f(a)=f(b)=d f(c)=e f(t)=s P(f)(a,b)=d,d id2d s e c (Part of) The ITPh Story So Far P(N) Petri* SsMonCat* Non functorial! • Objects: S (commutative monoid) • Arrows: Processes + ordering on minimal and maximal tokens in the same place • a,b = idab if a b
(Part of) The ITPh Story So Far DP(N) Petri* SsMonCat* Suffers the same problem as P • 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 Q(_) Petri* SsMonCat* Pseudo functorial
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 Z(_) PreNets SsMonCat • 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) 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) U(_) PreNets PreOcc
<p_> PreOrd SsMonCat Z(_) G(_) (_) A(_) PTNets The Pre-Net Picture • Functorial diagram reconciling all views • Algebraic semantics via adjunction • A missing link in the unfolding U(_) E(_) L(_) PreNets PreOcc PES Dom ? Pr(_)
e1 e2 On The Missing Link e1 e1 • The “most general” occurrence pre-net is hard to find … e2 e2
Read Arcs t1 t2 • 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
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 Baldan Roberto Bruni Ugo Montanari a WADT presentation by Roberto Bruni Research supported by IST-2001-32747 Project AGILE Italian MIUR Project COMETA CNR Fellowship on Inf. Sci. and Techn. Electronic watercolor by Roberto Bruni