Category theory is a mathematical theory that deals in an abstract way with mathematical structures and relationships between them. Although originally developed in the context of algebraic geometry, algebraic topology and universal algebra, it is now also used in various other branches of mathematics. Special categories called topoi can even serve as an alternative to set theory as the foundation of mathematics. Category theory is half-jokingly known as "abstract nonsense".
A category attempts to capture the essense of a class of related mathematical structures, 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 would be 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, 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.
A category consists of:
- a class of things called objects.
- for every two objects A and B a set Mor(A,B) of things called morphisms from A to B. If f is in Mor(A,B), we write f : A -> B.
- for every three objects A, B and C a binary operation Mor(B,C) x Mor(A,B) -> Mor(A,C) called composition of morphisms. The composition of g : B -> C and f : A -> B is written as g o f or gf.
such that the following axioms hold:
- (associativity) if f : A -> B, g : B -> C and h : C -> D then h o (g o f) = (h o g) o f, and
- (identity) for every object X there exists a morphism idX : X -> X called the identity morphism for X, such that for every morphism f : A -> B we have idB o f = f = f o idA
From these axioms, one can prove that there is exactly one identity morphism for every object.
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.
- Groups together with their group homomorphisms.
- Vector spaces together with their linear maps.
- sets together with functions on those sets.
- Hausdorff spaces with continuous functions.
- Small categories with functors as the morphisms (see below).
- Any partially ordered set (P, <=) forms a category, where the objects are the members of P, and the morphisms are arrows pointing from x to y precisely when x <= y.
- Any monoid forms a category with a single object x, and where every element of the monoid is a morphism from x to x (the monoid operation yields the categorical composition of morphisms). In fact, one may view categories as generalizations of monoids; several definitions and theorems about monoids may be generalized for categories.
- Any directed graph can be considered as a category: the objects are the vertices of the graph and the morphisms are the paths in the graph. Composition of morphisms is concatenation of paths.
- Any category C can itself be considered as a new category in a different way: the objects are the same as those in the original category but the arrows are those of the original category reversed. This is called the dual or opposite category and is denoted by Cop.
- If C and D are categories, one can form the product category C x D: the objects are pairs consisting of one object from C and one from D, and the morphisms are also pairs, consisting of one morphism in C and one in D. Such pairs can be composed componentwise.
Types of morphisms
A morphism f : A -> B is called a
- monomorphism if fg1 = fg2 implies g1 = g2 for all morphisms g1, g2 : X -> A.
- epimorphism if g1f = g2f implies g1 = g2 for all morphisms g1, g2 : B' -> X.
- isomorphism if there exists a morphism g : B -> A with fg = idB and gf = idA.
- automorphism if f is an isomorphism and A = B.
Functors are structure-preserving maps between categories.
A (covariant) functor F between categories C and D
- associates to each object X in C an object F(X) in D;
- associates to each morphism f:X->Y a morphism F(f):F(X)->F(Y)
such that the following two properties hold:
- F(idX) = idF(X) for every object X in C.
- F(g o f) = F(g) o F(f) for all morphisms f : X -> Y and g : Y -> Z.
A contravariant functor F between categories C and D is a functor that "turns morphisms around"; the quickest way to define it is as a covariant funtor between Cop and D.
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 continous 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 : X -> Y 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 x Ab -> Ab (where Ab denotes the category of abelian groups with group homomorphisms). If f : A1 -> A2 and g : B1 -> B2 are morphisms in Ab, then the group homomorphism Hom(f,g) : Hom(A2,B1) -> Hom(A1,B2) is given by φ |-> g o φ o f.
Tensor products: If C denotes the category of vectorspaces over a fixed field, with linear maps as morphisms, then the tensor product VÄW defines a functor C x C -> C which is covariant in both arguments.
Fundamental group: here we give a nontrivial example of a functor. There is the category of Hausdorff topological spaces. A topological space is a set together with a family of open sets. A morphism of topological spaces is a continuous function, that is, a function f from X to Y (topological spaces) for which the preimage of any open set is also open. An isomorphism of topological spaces is a continuous, surjective function with an inverse that is also continuous. To say that the topological space X is Hausdorff is to say that, if x, y are in X, then there are open sets U, V with x in U and y in V and U and V do not intersect.
There is also the category of groups. A group G is a set together with a multiplication law, a unit and inverses. That is, if x, y are in G, then the product x · y is also in G. Further, there is a distinguished element e in G so that, for any x in G, ex = xe = x. Lastly, for each element x in G, there is an element y in G so that xy = yx = e. Morphisms or homomorphisms are functions f such that f(xy)=f(x)f(y). Isomorphisms are surjective, injective homomorphisms.
Given a topological space X and a distinguished point x in X, we can create a group. 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) are also loops 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 Hausdorff 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.
Universal constructions: Functors are often defined by universal properties; examples are the tensor product discussed above, the direct sum and product of groups or vector spaces, direct and inverse limits.
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 of sheaves 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.
A natural transformation is a relation between two functors. Functors often describe "natural constructions" and natural transformations often describe "natural homomorphisms" between two such constructions.
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 : X -> Y in C we have ηY o F(f) = G(f) o ηX.
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.
Consider the category Ab of abelian groups and group homomorphisms. For all abelian groups A, B and C we have a group isomorphism
- Hom(A, Hom(B, C)) -> Hom(AÄB, C).
These isomorphisms are "natural" in the sense that they define a natural transformation between the two involved functors Abop x Abop x Ab -> Ab.
Equivalence of categories
Intuitively, two equivalent categories cannot be distinguished from the standpoint of category theory.
Two categories C and D are called equivalent if there exist functors F : C -> D and G : D -> C such that FG is naturally isomorphic to idD (where idD denotes the identity functor D -> D which assigns every object to itself and every morphism to itself) and GF is naturally isomorphic to idC.
One of the central themes of algebraic geometry is the equivalence of the category C of affine schemes and the category D of commutative rings. This is in fact a contravariant equivalence or duality, meaning that the two functor F and G are contravariant functors. The functor G associates to every commutative ring its spectrum, the scheme defined by the prime ideals of the ring. The functor F associates to every scheme its ring of global sections.
Another important duality occurs in functional analysis: the category of commutative C*-algebras with identity is contravariantly equivalent to the category of compact Hausdorff spaces. Under this duality, every compact Hausdorff space X is associated with the algebra of continuous complex-valued function on X, and every commutative C*-algebra is associated with the space of its maximal ideals. This is the Gelfand representation.
History of category theory
Categories, functors and natural transformations were introduced by Eilenberg and MacLane in 1945. Initially, the notions were applied in topology, later also in homological algebra and algebraic geometry.
- Saunders MacLane: Categories for the Working Mathematician, Graduate Text in Mathematics 5, Springer 1971