17,606 research outputs found
Functorial Semantics for Petri Nets under the Individual Token Philosophy
Although the algebraic semantics of place/transition Petri nets under the collective token philosophy has been fully explained in terms of (strictly) symmetric (strict) monoidal categories, the analogous construction under the individual token philosophy is not completely satisfactory because it lacks universality and also functoriality. We introduce the notion of pre-net to recover these aspects, obtaining a fully satisfactory categorical treatment centered on the notion of adjunction. This allows us to present a purely logical description of net behaviours under the individual token philosophy in terms of theories and theory morphisms in partial membership equational logic, yielding a complete match with the theory developed by the authors for the collective token view of net
Category Theory and Model-Driven Engineering: From Formal Semantics to Design Patterns and Beyond
There is a hidden intrigue in the title. CT is one of the most abstract
mathematical disciplines, sometimes nicknamed "abstract nonsense". MDE is a
recent trend in software development, industrially supported by standards,
tools, and the status of a new "silver bullet". Surprisingly, categorical
patterns turn out to be directly applicable to mathematical modeling of
structures appearing in everyday MDE practice. Model merging, transformation,
synchronization, and other important model management scenarios can be seen as
executions of categorical specifications.
Moreover, the paper aims to elucidate a claim that relationships between CT
and MDE are more complex and richer than is normally assumed for "applied
mathematics". CT provides a toolbox of design patterns and structural
principles of real practical value for MDE. We will present examples of how an
elementary categorical arrangement of a model management scenario reveals
deficiencies in the architecture of modern tools automating the scenario.Comment: In Proceedings ACCAT 2012, arXiv:1208.430
Process Algebras
Process Algebras are mathematically rigorous languages with well defined semantics that permit describing and verifying properties of concurrent communicating systems.
They can be seen as models of processes, regarded as agents that act and interact continuously with other similar agents and with their common environment. The agents may be real-world objects (even people), or they may be artifacts, embodied perhaps in computer hardware or software systems.
Many different approaches (operational, denotational, algebraic) are taken for describing the meaning of processes. However, the operational approach is the reference one. By relying on the so called Structural Operational Semantics (SOS), labelled transition systems are built and composed by using the different operators of the many different process algebras. Behavioral equivalences are used to abstract from unwanted details and identify those systems that react similarly to external
experiments
Two Algebraic Process Semantics for Contextual Nets
We show that the so-called 'Petri nets are monoids' approach initiated by Meseguer and Montanari can be extended from ordinary place/transition Petri nets to contextual nets by considering suitable non-free monoids of places. The algebraic characterizations of net concurrent computations we provide cover both the collective and the individual token philosophy, uniformly along the two interpretations, and coincide with the classical proposals for place/transition Petri nets in the absence of read-arcs
A Comparison of Petri Net Semantics under the Collective Token Philosophy
In recent years, several semantics for place/transition Petri nets have been proposed that adopt the collective token philosophy. We investigate distinctions and similarities between three such models, namely configuration structures, concurrent transition systems, and (strictly) symmetric (strict) monoidal categories. We use the notion of adjunction to express each connection. We also present a purely logical description of the collective token interpretation of net behaviours in terms of theories and theory morphisms in partial membership equational logic
A Model of Cooperative Threads
We develop a model of concurrent imperative programming with threads. We
focus on a small imperative language with cooperative threads which execute
without interruption until they terminate or explicitly yield control. We
define and study a trace-based denotational semantics for this language; this
semantics is fully abstract but mathematically elementary. We also give an
equational theory for the computational effects that underlie the language,
including thread spawning. We then analyze threads in terms of the free algebra
monad for this theory.Comment: 39 pages, 5 figure
- …