Models for concurrency can be classified with respect to three relevant parameters: behaviour/ system, interleaving/noninterleaving, linear/branching time. When modelling a process, a choice concerning such parameters corresponds to choosing the level of abstraction of the resulting semantics.In this paper, we move a step towards a classification of models for concurrency based on the parameters above. Formally, we choose a representative of any of the eight classes of models obtained by varying the three parameters, and we study the formal relationships between them using the language of category theory.
O. IntroductionMuch effort in the development of the theory of concurrency has been devoted to the study of suitable models for concurrent and distributed processes, and to the formal understanding of their semantics.As a result, in addition to standard models like languages, automata and transition systems [6,13], models like Petri nets [1211 process algebras [9,4], Hoare traces [5], Mazurkiewicz traces [8], synchronisation trees [20] and event structures [10,21] have been introduced.The idea common to the models above is that they are based on atomic units of change -transitions, actions, events or symbols from an alphabet -which are indivisible and constitute the steps out of which computations are built.The difference between the models may be expressed in terms of the parameters according to which models are often classified. For instance, a distinction made explicitly in the theory of Petri nets, but sensible in a wider context, is that between so-called