# Seven Dogmas of Category Theory

# Seven Dogmas of Category Theory

Join the DZone community and get the full member experience.

Join For FreeHortonworks Sandbox for HDP and HDF is your chance to get started on learning, developing, testing and trying out new features. Each download comes preconfigured with interactive tutorials, sample data and developments from the Apache community.

Joseph Goguen gave seven dogmas in his paper A Categorical Manifesto.

- To each species of mathematical structure, there corresponds a category whose objects have that structure, and whose morphisms preserve it.
- To any natural construction on structures of one species, yielding structures of another species, there corresponds a functor from the category of the first species to the category of the second.
- To each natural translation from a construction
*F*:*A*->*B*to a construction*G*:*A*->*B*there corresponds a natural transformation*F*=>*G*. - A diagram
*D*in a category*C*can be seen as a system of constraints, and then a limitof*D*represents all possible solutions of the system. - To any canonical construction from one species of structure to another corresponds anadjuction between the corresponding categories.
- Given a species of structure, say widgets, then the result of interconnecting a system of widgets to form a super-widget corresponds to taking the colimit of the diagram of widgets in which the morphisms show how they are interconnected.
- Given a species of structure
*C*, then a species of structure obtained by “decorating” or “enriching” that of*C*corresponds to a comma category under*C*(or under a functor from*C*).

Although category theory is all about general patterns, it’s hard to learn what the general patterns of category theory are. The list above is the best high-level description of category theory I’ve seen.

Hortonworks Community Connection (HCC) is an online collaboration destination for developers, DevOps, customers and partners to get answers to questions, collaborate on technical articles and share code examples from GitHub. Join the discussion.

Published at DZone with permission of John Cook , DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

## {{ parent.title || parent.header.title}}

## {{ parent.tldr }}

## {{ parent.linkDescription }}

{{ parent.urlSource.name }}