Skip to main content
×
Home
    • Aa
    • Aa
  • Get access
    Check if you have access via personal or institutional login
  • Cited by 47
  • Cited by
    This article has been cited by the following publications. This list is generated based on data provided by CrossRef.

    DOKUCHAEV, M. and NOVIKOV, B. 2016. ON COLIMITS OVER ARBITRARY POSETS. Glasgow Mathematical Journal, Vol. 58, Issue. 01, p. 219.


    Kovalyov, S. P. 2016. Category-Theoretic Approach to Software Systems Design. Journal of Mathematical Sciences, Vol. 214, Issue. 6, p. 814.


    Xu, Yuanping Scott, Paul J. and Zheng, Jiaoling 2016. Novel Research on a Fibration Knowledge-Based Solution for Engineered Surface Tolerances within the Modern GPS Context. International Journal of Software Engineering and Knowledge Engineering, Vol. 26, Issue. 05, p. 845.


    Frič, Roman and Papčo, Martin 2015. On Probability Domains III. International Journal of Theoretical Physics, Vol. 54, Issue. 12, p. 4237.


    Skřivánek, Václav and Frič, Roman 2015. Generalized Random Events. International Journal of Theoretical Physics, Vol. 54, Issue. 12, p. 4386.


    Zhu, Ming Grogono, Peter and Ormandjieva, Olga 2015. Using Category Theory to Verify Implementation Against Design in Concurrent Systems. Procedia Computer Science, Vol. 52, p. 530.


    Cassano, Valentin and Maibaum, Thomas S. E. 2014. Actions and Events in Concurrent Systems Design. Electronic Proceedings in Theoretical Computer Science, Vol. 139, p. 31.


    Diskin, Zinovy and Maibaum, Tom 2014. Model-Driven Engineering of Information Systems.


    Thiry, Laurent and Hassenforder, Michel 2014. A Calculus for (Meta)Models and Transformations. International Journal of Software Engineering and Knowledge Engineering, Vol. 24, Issue. 05, p. 715.


    Bautista-Ramos, César Guillén-Galván, Carlos and Rangel-Huerta, Alejandro 2013. From orthogonal projections to a generalized quantum search. Quantum Information Processing, Vol. 12, Issue. 1, p. 1.


    Kovalev, S. P. 2013. Systems analysis of life cycle of large-scale information-control systems. Automation and Remote Control, Vol. 74, Issue. 9, p. 1510.


    Chechik, Marsha Nejati, Shiva and Sabetzadeh, Mehrdad 2012. A relationship-based approach to model integration. Innovations in Systems and Software Engineering, Vol. 8, Issue. 1, p. 3.


    Diskin, Zinovy and Maibaum, Tom 2012. Category Theory and Model-Driven Engineering: From Formal Semantics to Design Patterns and Beyond. Electronic Proceedings in Theoretical Computer Science, Vol. 93, p. 1.


    Marchand, Jonathan Y. Combemale, Benoit and Baudry, Benoit 2012. 2012 4th International Workshop on Modeling in Software Engineering (MISE). p. 70.

    Zafiris, Elias 2012. Rosen's modelling relations via categorical adjunctions. International Journal of General Systems, Vol. 41, Issue. 5, p. 439.


    Kamath, Suresh 2011. 2011 Ninth Working IEEE/IFIP Conference on Software Architecture. p. 12.

    Kamath, S 2011. 2011 International Conference on Information Science and Applications. p. 1.

    Shaban-Nejad, A. and Haarslev, V. 2011. 2011 IEEE International Conference on Bioinformatics and Biomedicine Workshops (BIBMW). p. 615.

    Szabo, Cs. and Slodicak, V. 2011. 2011 IEEE 9th International Symposium on Applied Machine Intelligence and Informatics (SAMI). p. 195.

    Frič, Roman and Papčo, Martin 2010. A Categorical Approach to Probability Theory. Studia Logica, Vol. 94, Issue. 2, p. 215.


    ×
  • Mathematical Structures in Computer Science, Volume 1, Issue 1
  • March 1991, pp. 49-67

A categorical manifesto†

  • Joseph A. Goguen (a1)
  • DOI: http://dx.doi.org/10.1017/S0960129500000050
  • Published online: 01 March 2009
Abstract

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.

Copyright
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? *
×