Abstract
Sabadini, Walters and others have developed a categorical, machine based theory of concurrency in which there are four essential aspects: a distributive category of data-types; a bicategory Mach whose objects are data types, and whose arrows are input-output machines built from data types; a semantic category (or categories) Sem, suitable to contain the behaviors of machines, and a functor, “behavior”: Mach→Sem. Suitable operations on machines and semantics are found so that the behavior functor preserves these operations. Then, if each machine is decomposable into primitive machines using these operations, the behavior of a general machine is deducible from the behavior of its parts. The theory of non-deterministic finite state automata provides an example of the paradigm and also throws some light on the classical theory of finite state automata.
We describe a bicategory whose objects are natural numbers, in which an arrow M: n→p is a finite state automaton with n input states, p output states, and some additional internal states; we require that no transitions begin at output states or end at input states. A machine is represented by an q+n by q+p matrix. The bicategory supports additional operations: non-deterministic choice, parallel interleaving, and feedback. Enough operations are imposed on machines to show that each machine may be obtained from some atomic ones by means of the operations.
The semantic category is the (Bloom-Ésik) iteration theory Mat (X✶ whose objects are natural numbers and whose arrows from n to p are n×p matrices with entries in the semiring of languages. The behavior functor associates to a machine M: n→p a matrix |M| of languages, one language to each pair of input and output states. Behavior preserves composition, feedback, takes non-deterministic choice to union, and parallel-interleaving to shuffle. Thus, behavior gives a compositional semantics to a primitive notion of concurrent processes.
Similar content being viewed by others
References
Bloom, S. L. and Ésik, Z.: Equational axioms for regular sets, Mathematical Structures in Computer Science 3 (1993), 1–24.
Bloom, S. L. and Ésik, Z.: Iteration Theories: The Equational Logic of Iterative Processes, EATCS Monographs on Theoretical Computer Science, Springer-Verlag, 1993.
Bloom, S. L. and Ésik, Z.: Matrix and matricial iteration theories, Part I, Journal of Computer and System Sciences 46 (1993), 381–408.
Elgot, C. C.: Monadic computation and iterative algebraic theories, in J. C., Shepherdson (ed.), Logic Colloquium 1973, Studies in Logic, Vol. 80, North-Holland, Amsterdam, 1975.
Khalil, W. and Walters, R. F. C.: An imperative language based on distributive categories II, in Informatique Théorique et Applications, 1993.
Sabadini, N. and Walters, R. F. C.: On functions and processors: an automata-theoretic approach to concurrency through distributive categories, in School of Mathematics and Statistics Research Reports, University of Sydney (93–7), November 1993.
Sabadini, N., Walters, R. F. C., and Weld, Henry: Distributive automata and asynchronous circuits, May 1993, CTCS93. Available by anonymous ftp at ghost. sm. dsi. unimi. it in the directory pub2/papers/sabadini and at maths. su. oz. au in the directory sydcat/papers/walters.
Walters, R. F. C.: Categories and Computer Science, Carslaw Publications (1991), Cambridge University Press (1992), 1991.
Author information
Authors and Affiliations
Additional information
This work has been supported by the Australian Research Council, by CEC under grant number 6317, ASMICS II, by Italian MURST, and by the Italian CNR.
Visit to Sydney supported by a grant from the Australian Research Council.
Rights and permissions
About this article
Cite this article
Bloom, S.L., Sabadini, N. & Walters, R.F.C. Matrices, machines and behaviors. Appl Categor Struct 4, 343–360 (1996). https://doi.org/10.1007/BF00122683
Received:
Accepted:
Issue Date:
DOI: https://doi.org/10.1007/BF00122683