Encyclopedia  |   World Factbook  |   World Flags  |   Reference Tables  |   List of Lists     
   Academic Disciplines  |   Historical Timeline  |   Themed Timelines  |   Biographies  |   How-Tos     
Sponsor by The Tattoo Collection
Category theory
Main Page | See live article | Alphabetical index

Category theory

Category theory is a mathematical theory that deals in an abstract way with mathematical structures and relationships between them. It is half-jokingly known as "generalized abstract nonsense".

See list of category theory topics for a breakdown of the relevant Wikipedia pages.

Table of contents
1 Background
2 Historical notes
3 Categories
4 Functors
5 Natural transformations and natural isomorphisms
6 Universal constructions, limits, and colimits
7 Equivalent categories
8 Further concepts and results
9 Types of categories
10 References
11 External link


A category attempts to capture the essence of a class of related mathematical objects, for instance the class of groups. Instead of focusing on the individual objects (groups) as has been done traditionally, the morphisms, i.e. the structure-preserving maps between these objects, are emphasized. In the example of groups, these are the group homomorphisms. Then it becomes possible to relate different categories by functors, generalizations of functions which associate to every object of one category an object of another category and to every morphism in the first category a morphism in the second. Very commonly, certain "natural constructions", such as the fundamental group of a topological space, can be expressed as functors. Furthermore, different such constructions are often "naturally related" which leads to the concept of natural transformation, a way to "map" one functor to another. Throughout mathematics, one encounters "natural isomorphisms", things that are (essentially) the same in a "canonical way". This is made precise by special natural transformations, the natural isomorphisms.

Historical notes

Categories, functors and natural transformations were introduced by Samuel Eilenberg and Saunders MacLane in 1945. Initially, the notions were applied in topology, especially algebraic topology, as an important part of the transition from homology (an intuitive and geometric concept) to homology theory, an axiomatic approach. It has been claimed, for example by or on behalf of Ulam, that comparable ideas were current in the later 1930s in the Polish school.

Eilenberg/MacLane have said that their goal was to understand natural transformations; in order to do that, functors had to be defined; and to define functors one needed categories.

The subsequent development of the theory was powered first by the computational needs of homological algebra; and then by the axiomatic needs of algebraic geometry, the field most resistant to the Russell-Whitehead view of united foundations. General category theory - an updated universal algebra with many new features allowing for semantic flexibility and higher-order logic - came later; it is now applied throughout mathematics.

Special categories called topoi can even serve as an alternative to axiomatic set theory as the foundation of mathematics. These broadly-based foundational applications of category theory are contentious; but they have been worked out in quite some detail, as a commentary on or basis for constructive mathematics. One can say, in particular, that axiomatic set theory still hasn't been replaced by the category-theoretic commentary on it, in the everyday usage of mathematicians. The idea of bringing category theory into earlier, undergraduate teaching (signified by the difference between the Birkhoff- Mac Lane and later Mac Lane-Birkhoff abstract algebra texts) has hit noticeable opposition.

Categorical logic is now a well-defined field based on type theory for intuitionistic logics, with application to the theory of functional programming and domain theory, all in a setting of a cartesian closed category as non-syntactic description of a lambda calculus. At the very least, the use of category theory language allows one to clarify what exactly these related areas have in common (in an abstract sense).



A category consists of:

such that the following axioms hold:

From these axioms, one can prove that there is exactly one identity morphism for every object. Some authors use a slight variation of the definition in which each object is identified with the corresponding identity morphism.

If the class of objects is actually a set, the category is said to be small. Many important categories are not small.


Each category is presented in terms of its objects and its morphisms.

Types of morphisms

A morphism f : AB is called a

Relations among morphisms (such as fg = h) can most conveniently be represented with commutative diagrams, where the objects are represented as points and the morphisms as arrows.


Functors are structure-preserving maps between categories.


A (covariant) functor F from the category C to the category D

such that the following two properties hold: A contravariant functor F from C to D is a functor that "turns morphisms around" (i.e. if f:XY is a morphism in C, then F(f):F(Y)→F(X)); the quickest way to define a contravariant functor is as a covariant functor between Cop and D.

The modern point of view of category theory dictates that a functor preserving morphism direction is called just that: a functor. One switching the direction should be called a cofunctor. Thus a cofunctor on a category C is just a functor on Cop. This helps to iron out some discrepancies which can arise through differing meanings of contravariant and covariant across disciplines.

Two important (but easy) consequences of the functor axioms:


Dual vectorspace: an example of a contravariant functor from the category of all real vector spaces to the category of all real vector spaces is given by assigning to every vector space its dual space and to every linear map its dual or transpose.

Algebra of continuous functions: a contravariant functor from the category of topological spaces (with continuous maps as morphisms) to the category of real associative algebras is given by assigning to every topological space X the algebra C(X) of all real-valued continuous functions on that space. Every continuous map f : XY induces an algebra homomorphism C(f) : C(Y) → C(X) by the rule C(f)(φ) = φ o f for every φ in C(Y).

Homomorphism groups: to every pair A, B of abelian groups and can assign the abelian group Hom(A,B) consisting of all group homomorphisms from A to B. This is a functor which is contravariant in the first and covariant in the second argument, i.e. it is a functor Abop × AbAb (where Ab denotes the category of abelian groups with group homomorphisms). If f : A1A2 and g : B1B2 are morphisms in Ab, then the group homomorphism Hom(f,g) : Hom(A2,B1) → Hom(A1,B2) is given by φ |→ g o φ o f.

Forgetful functors: the functor F : RingAb which maps a ring to its underlying abelian additive group. Morphisms in Ring (ring homomorphisms) become morphisms in Ab (abelian group homomorphisms). Functors like these, which "forget" some structure, are termed forgetful functors.

Tensor products: If C denotes the category of vectorspaces over a fixed field, with linear maps as morphisms, then the tensor product VW defines a functor C × CC which is covariant in both arguments.

Lie algebras: Assigning to every real (complex) Lie group its real (complex) Lie algebra defines a functor.

Fundamental group: Consider the category of topological spaces with distinguished points. The objects are pairs (X,x), where X is a topological space and x is an element of X. A morphism from (X,x) to (Y,y) is given by a continuous map f : XY with f(x) = y.

For every topological space with distinguished point (X,x), we will define a fundamental group. This is going to be a functor from the category of topological spaces with distinguished points to the category of groups.

Let f be a continuous function from the unit interval [0,1] into X so that f(0) = f(1) = x. (Equivalently, f is a continuous map from the unit circle in the complex plane so that f(1) = x.) We call such a function a loop in X. If f and g are loops in X, we can glue them together by defining h(t) = f(2t) when t is in [0,0.5] and h(t) = g(2(t - 0.5)) when t is in [0.5,1]. It is easy to check that h is again a loop. If there is a continuous map F(x,t) from [0,1] × [0,1] to X so that f(t) = F(0,t) is a loop and g(t) = F(1,t) is also a loop then f and g are said to be equivalent. It can be checked that this defines an equivalence relation. Our composition rule survives this process. Now, in addition, we can see that we have an identity element e(t) = x (a constant map) and further that every loop has an inverse. Indeed, if f(t) is a loop then f(1 - t) is its inverse. The set of equivalence classes of loops thus forms a group (the fundamental group of X). One may check that the map from the category of topological spaces with a distinguished point to the category of groups is functorial: a topological (homo/iso)morphism will naturally correspond to a group (homo/iso)morphism.

Representable functors: If C is a category and U an object in C, then F(X) = MorC(U,X) defines a covariant functor form C to Set. Functors like these are called representable, and a major goal in many settings is to determine whether a given functor is representable.

Universal constructions: Functors are often defined by universal properties; examples are the tensor product discussed above, the direct sum and direct product of groups or vector spaces, construction of free groups and modules, direct and inverse limits. The concepts of limit and colimit generalize several of the above. Universal constructions often give rise to pairs of adjoint functors.

Pre-Sheaves: If X is a topological space, then the open sets in X can be considered as the objects of a category CX; there is a morphism from U to V if and only if U is a subset of V. In itself, this category is not very exciting, but the functors from CXop into other categories, the so-called pre-sheaves on X, are interesting. For instance, by assigning to every open set U the associative algebra of real-valued continuous functions on U, one obtains a pre-sheaf of algebras on X.

This motivating example is generalized by considering pre-sheaves on arbitrary categories: a pre-sheaf on C is a functor defined on Cop. The Yoneda lemma explains that often a category C can be extended by considering a category of pre-sheaves on C.

Category of small categories: The category Cat has the small categories as objects, and the functors between them as morphisms.

Natural transformations and natural isomorphisms

Main article: natural transformation.

A natural transformation is a relation between two functors. Functors often describe "natural constructions" and natural transformations then describe "natural homomorphisms" between two such constructions. Sometimes two quite different constructions yield "the same" result; this is expressed by a natural isomorphism between the two functors.


If F and G are (covariant) functors between the categories C and D, then a natural transformation from F to G associates to every object X in C a morphism ηX : F(X) → G(X) in D such that for every morphism f : XY in C we have ηY o F(f) = G(f) o ηX; this means that the following diagram is commutative:

The two functors F and G are called naturally isomorphic if there exists a natural transformation from F to G such that ηX is an isomorphism for every object X in C.


If K is a field, then for every vector space V over K we have a "natural" injective linear map VV** from the vector space into its double dual. These maps are "natural" in the following sense: the double dual operation is a functor, and the maps form a natural transformation from the identity functor to the double dual functor. If we restrict to finite-dimensional vector spaces, we even obtain a natural isomorphism. "Every finite-dimensional vector space is naturally isomorphic to its double dual."

Consider the category Ab of abelian groups and group homomorphisms. For all abelian groups X, Y and Z we have a group isomorphism

Hom(X, Hom(Y, Z)) → Hom(XY, Z).
These isomorphisms are "natural" in the sense that they define a natural transformation between the two involved functors Abop × Abop × AbAb.

Universal constructions, limits, and colimits

Main articles: universal property, limit (category theory).

Using the language of category theory, many areas of mathematical study can be cast into appropriate categories, such as the categories of all sets, groups, topologies, and so on. These categories surely have some objects that are "special" in a certain way, such as the empty set or the product of two topologies. Yet, in the definition of a category, objects are considered to be atomic, i.e. we do not know, whether an object A is a set, a topology, or any other abstract concept. Hence, the challenge is to define special objects without referring to the internal structure of these objects. But how can we define the empty set without referring to elements, or the product topology without referring to open sets?

The solution is to characterize these objects in terms of their relations to other objects, as given by the morphisms of the respective categories. Thus the task is to find universal properties that uniquely determine the objects of interest. Indeed, it turns out that numerous important constructions can be described in a purely categorical way. The central concept which is needed for this purpose is called (categorical) limit, and can be dualized to yield the notion of a colimit.

Equivalent categories

Main articles: equivalence of categories, isomorphism of categories.

It is a natural question to ask, under which conditions two categories can be considered to be "essentially the same", in the sense that theorems about one category can readily be transformed into theorems about the other category. The major tool one employs to describe such a situation is called equivalence of categories. It is given by appropriate functors between two categories. Categorical equivalence has found numerous applications in mathematics.

Further concepts and results

The definitions of categories and functors provide only the very basics of categorical algebra. Additional important topics are listed below. Although there are strong interrelations between all of these topics, the given order can be considered as a guideline for further reading.

Types of categories


External link

Topics in mathematics related to structure Edit
Abstract algebra | Number theory | Algebraic geometry | Group theory | Monoids | Analysis | Topology | Linear algebra | Graph theory | Universal algebra | Category theory | Order theory