Skip to main content
    • Aa
    • Aa

A categorical manifesto

  • Joseph A. Goguen (a1)

This paper tries to explain why and how category theory is useful in computing science, by giving guidelines for applying seven basic categorical concepts: category, functor, natural transformation, limit, adjoint, colimit and comma category. Some examples, intuition, and references are given for each concept, but completeness is not attempted. Some additional categorical concepts and some suggestions for further research are also mentioned. The paper concludes with some philosophical discussion.

Linked references
Hide All

This list contains references from the content that can be linked to their source. For a full set of references and notes please see the PDF or HTML where available.

R. Burstall (1972) An algebraic description of programs with assertions, verification, and simulation. In: J. Mack Adams , John Johnston and Richard Stark , eds, Proc. Conference on Proving Assertions about Programs, Association for Computing Machinery, pp. 714

H.-D. Ehrich (1982) On the theory of specification, implementation and parameterization of abstract data types. J. Assoc. Comput. Mach. 29 206–27

H. Ehrig (1979) Introduction to the algebraic theory of graph grammars. In: V. Claus, Hartmut Ehrig and Gregor Rozenberg, eds, Graph Gramars and their Application to Computer Science and Biology, Springer Lecture Notes in Computer Science 73 pp. 169

S. Eilenberg and S. MacLane (1945) General theory of natural equivalences. Trans. Amer. Math. Soc. 58 231–94

J. Goguen (1972) Minimal realization of machines in closed categories. Bull. Amer. Math. Soc. 78(5) 777–83

J. Goguen (1973) Realization is universal. Math. Sys. Theory 6 359–74

J. Goguen (1974) On homomorphisms, correctness, termination, unfoldments and equivalence of flow diagram programs. J. Comput. Sys. Sci. 8 333–65 Original version in: Proc. 1972 IEEE Symp. On Switching and Automata, pp. 52–60; contains an additional section on program schemes.

J. Goguen (1986) Reusing and interconnecting software components. Computer 19(2) 1628 Reprinted in Tutorial: Software Reusability, Peter Freeman, ed., IEEE Computer Society Press, 1987, pp. 251–63

J. Goguen and S. Ginali (1984b) Some fundamental algebraic tools for the semantics of computation, part 2: Signed and abstract theories. Theoret. Comput. Sci. 31(3) 263–95

J. Goguen C. Kirchner H. Kirchner A. Mégrelis and J. Meseguer (1988) An introduction to OBJ3. In: Jean-Pierre Jouannaud and Stephane Kaplan, eds, Proc. Conf. on Conditional Term Rewriting, Springer Lecture Notes in Computer Science 308 pp. 258–63

J. Goguen and J. Meseguer (1983) Correctness of recursive parallel non-deterministic flow programs. J. Comput. Sys. Sci. 27(2) 268–90 Earlier version in Proc. Conf. on Mathematical Foundations of Computer Science, 1977, Springer Lecture Notes in Computer Science53 pp. 580–95

J. Goguen (1977) Initial algebra semantics and continuous algebras. J. Assoc. Comput. Machinery 24(1) 6895 An early version appears as ‘Initial Algebra Semantics’, with James Thatcher, IBM T. J. Watson Research Center Report RC 4865, May 1974.

W. S. Hatcher (1982) The Logical Foundations of Mathematics, Pergamon.

R. Kennaway (1987) On ‘On graph rewritings’. Theoret. Comput. Sci. 52 3758

S. MacLane (1948) Duality for groups. Proc. Nat. Acad. Sci. USA 34 263–7

S. MacLane (1988) To the greater health of mathematics. Math. Intelligencer 10(3) 1720 See also Math. Inteligencer5(4) (1983) 53–5

F. W. Lawvere (1963) Functorial semantics of algebraic theories. Proc. Nat. Acad. Sci. USA 50 869–72 Summary of PhD Thesis, Columbia University.

R. Milner (1980) A Calculus of Communicating Systems, Springer Lecture Notes in Computer Science, 92.

J. C. Raoult (1984) On graph rewritings. Theoret. Comput. Sci. 32 124

D. Scott (1972) Continuous lattices. In: Proc. Dalhousie Conf, Springer Lecture Notes in Mathematics, 274, pp. 97136

M. Smyth and G. Plotkin (1982) The category-theoretic solution of recursive domain equations. SIAM J. Comput. 11 761–83 Also Technical Report D.A.I. 60, University of Edinburgh, Department of Artificial Intelligence, December 1978.

Recommend this journal

Email your librarian or administrator to recommend adding this journal to your organisation's collection.

Mathematical Structures in Computer Science
  • ISSN: 0960-1295
  • EISSN: 1469-8072
  • URL: /core/journals/mathematical-structures-in-computer-science
Please enter your name
Please enter a valid email address
Who would you like to send this to? *