Presheaf Models for Concurrency

This paper studies presheaf models for concurrent computation. An aim is to harness the general machinery around presheaves for the purposes of process calculi. Traditional models like synchronisation trees and event structures have been shown to embed fully and faithfully in particular presheaf models in such a way that bisimulation, expressed through the presence of a span of open maps, is conserved. As is shown in the work of Joyal and Moerdijk, presheaves are rich in constructions which preserve open maps, and so bisimulation, by arguments of a very general nature. This paper contributes similar results but biased towards questions of bisimulation in process calculi. It is concerned with modelling process constructions on presheaves, showing these preserve open maps, and with transferring such results to traditional models for processes. One new result here is that a wide range of left Kan extensions, between categories of presheaves, preserve open maps. As a corollary, this also implies that any colimit-preserving functor between presheaf categories preserves open maps. A particular left Kan extension is shown to coincide with a refinement operation on event structures. A broad class of presheaf models is proposed for a general process calculus. General arguments are given for why the operations of a presheaf model preserve open maps and why for specific presheaf models the operations coincide with those of traditional models.

[1]  G. M. Kelly,et al.  Coherence for compact closed categories , 1980 .

[2]  Jan J. M. M. Rutten,et al.  Initial Algebra and Final Coalgebra Semantics for Concurrency , 1993, REX School/Symposium.

[3]  J. Lambek A fixpoint theorem for complete categories , 1968 .

[4]  Vladimiro Sassone,et al.  Higher dimensional transition systems , 1996, Proceedings 11th Annual IEEE Symposium on Logic in Computer Science.

[5]  Mogens Nielsen,et al.  Models for Concurrency , 1992 .

[6]  I. Moerdijk,et al.  Sheaves in geometry and logic: a first introduction to topos theory , 1992 .

[7]  Robin Milner,et al.  Calculi for Synchrony and Asynchrony , 1983, Theor. Comput. Sci..

[8]  A. J. Power,et al.  A general coherence result , 1989 .

[9]  Kenneth L. McMillan,et al.  A technique of state space search based on unfolding , 1995, Formal Methods Syst. Des..

[10]  Kim G. Larsen,et al.  Bisimulation through Probabilistic Testing , 1991, Inf. Comput..

[11]  Robert Paré Simply connected limits , 1990 .

[12]  A. Kock Monads for which Structures are Adjoint to Units , 1995 .

[13]  Daniel J. Lehmann Categories for fixpoint-semantics , 1976, 17th Annual Symposium on Foundations of Computer Science (sfcs 1976).

[14]  Marcelo P. Fiore Axiomatic domain theory in categories of partial maps , 1994 .

[15]  Lars Arge,et al.  The I/O - Complexity of Ordered Binary - Decision Diagram Manipulation , 1995, ISAAC.

[16]  S. Maclane,et al.  Categories for the Working Mathematician , 1971 .

[17]  Michael Makkai,et al.  Accessible categories: The foundations of categorical model theory, , 2007 .

[18]  Jean Benabou,et al.  Fibered categories and the foundations of naive category theory , 1985, Journal of Symbolic Logic.

[19]  Gordon D. Plotkin,et al.  A Powerdomain Construction , 1976, SIAM J. Comput..

[20]  Glynn Winskel,et al.  A Linear Metalanguage for Concurrency , 1998, AMAST.

[21]  Glynn Winskel,et al.  Bisimulation from Open Maps , 1994, Inf. Comput..

[22]  Davide Sangiorgi,et al.  Expressing mobility in process algebras : first-order and higher-order paradigms , 1993 .

[23]  Glynn Winskel,et al.  Petri Nets, Event Structures and Domains, Part I , 1981, Theor. Comput. Sci..

[24]  R. Street,et al.  Review of the elements of 2-categories , 1974 .

[25]  S. Lane,et al.  Sheaves In Geometry And Logic , 1992 .

[26]  I. Stark,et al.  A fully abstract domain model for the /spl pi/-calculus , 1996, Proceedings 11th Annual IEEE Symposium on Logic in Computer Science.

[27]  D. Turi,et al.  Functional Operational Semantics and its Denotational Dual , 1996 .

[28]  D. Sangiorgi - calculus , internal mobility , and agent-passing calculi , 1995 .

[29]  Carl A. Gunter Profinite Solutions For Recursive Domain Equations , 1985 .

[30]  Mogens Nielsen,et al.  Open Maps, Behavioural Equivalences, and Congruences , 1996, Theor. Comput. Sci..

[31]  Jean-Jacques Lévy,et al.  Full abstraction for sequential languages : The states of the art , 1983 .

[32]  Samson Abramsky,et al.  A Domain Equation for Bisimulation , 1991, Inf. Comput..

[33]  Sally Popkorn,et al.  A Handbook of Categorical Algebra , 2009 .

[34]  Davide Sangiorgi,et al.  A Fully-Abstract Model for the (cid:25) -calculus , 2022 .

[35]  lawa Kanas,et al.  Metric Spaces , 2020, An Introduction to Functional Analysis.

[36]  Glynn Winskel,et al.  Models for Concurrency: Towards a Classification , 1996, Theor. Comput. Sci..

[37]  A. Power,et al.  A 2-categorical pasting theorem , 1990 .

[38]  C. K. R. T. Jones,et al.  The ϱ-Calculus , 1981, Math. Log. Q..

[39]  Ross Street,et al.  Cauchy characterization of enriched categories , 1981 .

[40]  Eric Goubault,et al.  Homology of Higher Dimensional Automata , 1992, CONCUR.

[41]  Eric Goubault Domains of Higher-Dimensional Automata , 1993, CONCUR.

[42]  Prakash Panangaden,et al.  Categorical Type Theory , 1985 .

[43]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[44]  Glynn Winskel,et al.  A theory of recursive domains with applications to concurrency , 1997, Proceedings. Thirteenth Annual IEEE Symposium on Logic in Computer Science (Cat. No.98CB36226).

[45]  R. Milner Calculi for interaction , 1996, Acta Informatica.

[46]  Samson Abramsky,et al.  On Semantic Foundations for Applicative Multiprogramming , 1983, ICALP.

[47]  Andrew M. Pitts,et al.  Relational Properties of Domains , 1996, Inf. Comput..

[48]  Glynn Winskel A Presheaf Semantics of Value-Passing Processes , 1996 .

[49]  John W. Gray,et al.  Formal category theory: adjointness for 2-categories , 1974 .

[50]  Glynn Winskel,et al.  A category of labelled Petri nets and compositional proof system , 1988, [1988] Proceedings. Third Annual Information Symposium on Logic in Computer Science.

[51]  Claudio Hermida,et al.  Fibrations, logical predicates and indeterminates , 1993, CST.

[52]  Olivier Danvy,et al.  A Computational Formalization for Partial Evaluation (Extended Version) , 1996 .

[53]  Robin Milner,et al.  Modal Logics for Mobile Processes , 1991, Theor. Comput. Sci..

[54]  R. Labrecque The Correspondence Theory , 1978 .

[55]  Ieke Moerdijk,et al.  A Completeness Theorem for Open Maps , 1994, Ann. Pure Appl. Log..

[56]  J. Adámek,et al.  Locally Presentable and Accessible Categories: Bibliography , 1994 .

[57]  Andrew M. Pitts,et al.  A co-Induction Principle for Recursively Defined Domains , 1994, Theor. Comput. Sci..

[58]  Peter Aczel,et al.  A Final Coalgebra Theorem , 1989, Category Theory and Computer Science.

[59]  Oswald Wyler,et al.  Lecture notes on Topoi and Quasitopoi , 1991 .

[60]  David Park,et al.  Concurrency and Automata on Infinite Sequences , 1981, Theoretical Computer Science.

[61]  G. Winskel The formal semantics of programming languages , 1993 .

[62]  Peter W. O'Hearn,et al.  Relational parametricity and local variables , 1993, POPL '93.

[63]  Ian Stark,et al.  Names, Equations, Relations: Practical Ways to Reason About New , 1996, Fundam. Informaticae.

[64]  Glynn Winskel,et al.  Petri Nets and Bisimulation , 1996, Theor. Comput. Sci..

[65]  Glynn Winskel,et al.  Petri Nets and Bisimulations , 1994 .

[66]  Roberto Gorrieri,et al.  A Process Algebraic View of Linda Coordination Primitives , 1998, Theor. Comput. Sci..

[67]  Ursula Goltz,et al.  Equivalence Notions for Concurrent Systems and Refinement of Actions (Extended Abstract) , 1989, MFCS.

[68]  Glynn Winskel,et al.  Synchronisation Trees , 1983, ICALP.

[69]  Samson Abramsky,et al.  Handbook of logic in computer science. , 1992 .

[70]  Matthew Hennessy,et al.  The Power of the Future Perfect in Program Logics , 1984, Inf. Control..

[71]  Harold Simmons,et al.  The glueing construction and lax limits , 1994, Mathematical Structures in Computer Science.

[72]  A. Pitts On product and change of base for toposes , 1985 .

[73]  Lars Arge,et al.  The Buuer Tree: a New Technique for Optimal I/o-algorithms ? , 1995 .

[74]  P. S. Thiagarajan,et al.  Regular Trace Event Structures , 1996 .

[75]  Marcelo P. Fiore,et al.  A coinduction principle for recursive data types based on bisimulation , 1993, [1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science.

[76]  Matthew Hennessy,et al.  Full Abstraction for a Simple Parallel Programming Language , 1979, MFCS.

[77]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[78]  Davide Sangiorgi,et al.  Bisimulation for Higher-Order Process Calculi , 1994, Inf. Comput..

[79]  Glynn Winskel,et al.  A Presheaf Semantics of Value-Passing Processes , 1996, CONCUR.

[80]  Mitchell Wand Fixed-Point Constructions in Order-Enriched Categories , 1979, Theor. Comput. Sci..

[81]  Ross Street,et al.  Fibrations in bicategories , 1980 .

[82]  Dusko Pavlovic,et al.  Predicates and Fibrations , 1990 .

[83]  Gordon D. Plotkin,et al.  The category-theoretic solution of recursive domain equations , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[84]  Robin Milner,et al.  Functions as processes , 1990, Mathematical Structures in Computer Science.

[85]  P. Freyd Algebraically complete categories , 1991 .