Category theory

Category theory

Overview

Category theory is an area of study in mathematics
Mathematics
Mathematics is the study of quantity, space, structure, and change. Mathematicians seek out patterns and formulate new conjectures. Mathematicians resolve the truth or falsity of conjectures by mathematical proofs, which are arguments sufficient to convince other mathematicians of their validity...

that examines in an abstract
Abstraction
Abstraction is a process by which higher concepts are derived from the usage and classification of literal concepts, first principles, or other methods....

way the properties of particular mathematical concepts, by formalising them as collections of objects and arrows (also called morphism
Morphism
In mathematics, a morphism is an abstraction derived from structure-preserving mappings between two mathematical structures. The notion of morphism recurs in much of contemporary mathematics...

s, although this term also has a specific, non category-theoretical sense), where these collections satisfy certain basic conditions. Many significant areas of mathematics can be formalised as categories, and the use of category theory allows many intricate and subtle mathematical results in these fields to be stated, and proved, in a much simpler way than without the use of categories.

The most accessible example of a category is the category of sets
Category of sets
In the mathematical field of category theory, the category of sets, denoted as Set, is the category whose objects are sets. The arrows or morphisms between sets A and B are all functions from A to B...

, where the objects are sets and the arrows are functions from one set to another.
Discussion

Encyclopedia

Category theory is an area of study in mathematics
Mathematics
Mathematics is the study of quantity, space, structure, and change. Mathematicians seek out patterns and formulate new conjectures. Mathematicians resolve the truth or falsity of conjectures by mathematical proofs, which are arguments sufficient to convince other mathematicians of their validity...

that examines in an abstract
Abstraction
Abstraction is a process by which higher concepts are derived from the usage and classification of literal concepts, first principles, or other methods....

way the properties of particular mathematical concepts, by formalising them as collections of objects and arrows (also called morphism
Morphism
In mathematics, a morphism is an abstraction derived from structure-preserving mappings between two mathematical structures. The notion of morphism recurs in much of contemporary mathematics...

s, although this term also has a specific, non category-theoretical sense), where these collections satisfy certain basic conditions. Many significant areas of mathematics can be formalised as categories, and the use of category theory allows many intricate and subtle mathematical results in these fields to be stated, and proved, in a much simpler way than without the use of categories.

The most accessible example of a category is the category of sets
Category of sets
In the mathematical field of category theory, the category of sets, denoted as Set, is the category whose objects are sets. The arrows or morphisms between sets A and B are all functions from A to B...

, where the objects are sets and the arrows are functions from one set to another. However it is important to note that the objects of a category need not be sets nor the arrows functions; any way of formalising a mathematical concept such that it meets the basic conditions on the behaviour of objects and arrows is a valid category, and all the results of category theory will apply to it.

One of the simplest examples of a category is that of groupoid
Groupoid
In mathematics, especially in category theory and homotopy theory, a groupoid generalises the notion of group in several equivalent ways. A groupoid can be seen as a:...

, defined as a category whose arrows or morphisms are all invertible. The groupoid concept is important in topology
Topology
Topology is a major area of mathematics concerned with properties that are preserved under continuous deformations of objects, such as deformations that involve stretching, but no tearing or gluing...

.
Categories
Category (mathematics)
In mathematics, a category is an algebraic structure that comprises "objects" that are linked by "arrows". A category has two basic properties: the ability to compose the arrows associatively and the existence of an identity arrow for each object. A simple example is the category of sets, whose...

now appear in most branches of mathematics, some areas of theoretical computer science
Theoretical computer science
Theoretical computer science is a division or subset of general computer science and mathematics which focuses on more abstract or mathematical aspects of computing....

where they correspond to types
Data type
In computer programming, a data type is a classification identifying one of various types of data, such as floating-point, integer, or Boolean, that determines the possible values for that type; the operations that can be done on values of that type; the meaning of the data; and the way values of...

, and mathematical physics
Mathematical physics
Mathematical physics refers to development of mathematical methods for application to problems in physics. The Journal of Mathematical Physics defines this area as: "the application of mathematics to problems in physics and the development of mathematical methods suitable for such applications and...

where they can be used to describe vector space
Vector space
A vector space is a mathematical structure formed by a collection of vectors: objects that may be added together and multiplied by numbers, called scalars in this context. Scalars are often taken to be real numbers, but one may also consider vector spaces with scalar multiplication by complex...

s. Categories were first introduced by Samuel Eilenberg
Samuel Eilenberg
Samuel Eilenberg was a Polish and American mathematician of Jewish descent. He was born in Warsaw, Russian Empire and died in New York City, USA, where he had spent much of his career as a professor at Columbia University.He earned his Ph.D. from University of Warsaw in 1936. His thesis advisor...

and Saunders Mac Lane
Saunders Mac Lane
Saunders Mac Lane was an American mathematician who cofounded category theory with Samuel Eilenberg.-Career:...

in 1942–45, in connection with algebraic topology
Algebraic topology
Algebraic topology is a branch of mathematics which uses tools from abstract algebra to study topological spaces. The basic goal is to find algebraic invariants that classify topological spaces up to homeomorphism, though usually most classify up to homotopy equivalence.Although algebraic topology...

.

Category theory has several faces known not just to specialists, but to other mathematicians. A term dating from the 1940s, "general abstract nonsense
Abstract nonsense
In mathematics, abstract nonsense, general abstract nonsense, and general nonsense are terms used facetiously by some mathematicians to describe certain kinds of arguments and methods related to category theory. roughly speaking, category theory is the study of the general form of mathematical...

", refers to its high level of abstraction, compared to more classical branches of mathematics. Homological algebra
Homological algebra
Homological algebra is the branch of mathematics which studies homology in a general algebraic setting. It is a relatively young discipline, whose origins can be traced to investigations in combinatorial topology and abstract algebra at the end of the 19th century, chiefly by Henri Poincaré and...

is category theory in its aspect of organising and suggesting manipulations in abstract algebra
Abstract algebra
Abstract algebra is the subject area of mathematics that studies algebraic structures, such as groups, rings, fields, modules, vector spaces, and algebras...

. Diagram chasing is a visual method of arguing with abstract "arrows" joined in diagrams. Note that arrows between categories are called functor
Functor
In category theory, a branch of mathematics, a functor is a special type of mapping between categories. Functors can be thought of as homomorphisms between categories, or morphisms when in the category of small categories....

s, subject to specific defining commutativity conditions; moreover, categorical diagrams and sequences can be defined as functors (viz. Mitchell, 1965). An arrow between two functors is a natural transformation
Natural transformation
In category theory, a branch of mathematics, a natural transformation provides a way of transforming one functor into another while respecting the internal structure of the categories involved. Hence, a natural transformation can be considered to be a "morphism of functors". Indeed this intuition...

when it is subject to certain naturality or commutativity conditions. Functors and natural transformations ('naturality') are the key concepts in category theory.
Topos theory
Topos
In mathematics, a topos is a type of category that behaves like the category of sheaves of sets on a topological space...

is a form of abstract sheaf theory
Sheaf (mathematics)
In mathematics, a sheaf is a tool for systematically tracking locally defined data attached to the open sets of a topological space. The data can be restricted to smaller open sets, and the data assigned to an open set is equivalent to all collections of compatible data assigned to collections of...

, with geometric origins, and leads to ideas such as pointless topology
Pointless topology
In mathematics, pointless topology is an approach to topology that avoids mentioning points. The name 'pointless topology' is due to John von Neumann...

. A topos can also be considered as a specific type of category with two additional topos axioms.

Background

The study of categories
Category (mathematics)
In mathematics, a category is an algebraic structure that comprises "objects" that are linked by "arrows". A category has two basic properties: the ability to compose the arrows associatively and the existence of an identity arrow for each object. A simple example is the category of sets, whose...

is an attempt to axiomatically capture what is commonly found in various classes of related mathematical structures by relating them to the structure-preserving functions between them. A systematic study of category theory then allows us to prove general results about any of these types of mathematical structures from the axioms of a category.

Consider the following example. The class
Class (set theory)
In set theory and its applications throughout mathematics, a class is a collection of sets which can be unambiguously defined by a property that all its members share. The precise definition of "class" depends on foundational context...

Grp of groups
Group (mathematics)
In mathematics, a group is an algebraic structure consisting of a set together with an operation that combines any two of its elements to form a third element. To qualify as a group, the set and the operation must satisfy a few conditions called group axioms, namely closure, associativity, identity...

consists of all objects having a "group structure". One can proceed to prove
Mathematical proof
In mathematics, a proof is a convincing demonstration that some mathematical statement is necessarily true. Proofs are obtained from deductive reasoning, rather than from inductive or empirical arguments. That is, a proof must demonstrate that a statement is true in all cases, without a single...

theorem
Theorem
In mathematics, a theorem is a statement that has been proven on the basis of previously established statements, such as other theorems, and previously accepted statements, such as axioms...

s about groups by making logical deductions from the set of axioms. For example, it is immediately proved from the axioms that the identity element
Identity element
In mathematics, an identity element is a special type of element of a set with respect to a binary operation on that set. It leaves other elements unchanged when combined with them...

of a group is unique.

Instead of focusing merely on the individual objects (e.g., groups) possessing a given structure, category theory emphasizes the morphism
Morphism
In mathematics, a morphism is an abstraction derived from structure-preserving mappings between two mathematical structures. The notion of morphism recurs in much of contemporary mathematics...

s – the structure-preserving mappings – between these objects; by studying these morphisms, we are able to learn more about the structure of the objects. In the case of groups, the morphisms are the group homomorphism
Group homomorphism
In mathematics, given two groups and , a group homomorphism from to is a function h : G → H such that for all u and v in G it holds that h = h \cdot h...

s. A group homomorphism between two groups "preserves the group structure" in a precise sense – it is a "process" taking one group to another, in a way that carries along information about the structure of the first group into the second group. The study of group homomorphisms then provides a tool for studying general properties of groups and consequences of the group axioms.

A similar type of investigation occurs in many mathematical theories, such as the study of continuous maps (morphisms) between topological space
Topological space
Topological spaces are mathematical structures that allow the formal definition of concepts such as convergence, connectedness, and continuity. They appear in virtually every branch of modern mathematics and are a central unifying notion...

s in topology
Topology
Topology is a major area of mathematics concerned with properties that are preserved under continuous deformations of objects, such as deformations that involve stretching, but no tearing or gluing...

(the associated category is called Top), and the study of smooth function
Smooth function
In mathematical analysis, a differentiability class is a classification of functions according to the properties of their derivatives. Higher order differentiability classes correspond to the existence of more derivatives. Functions that have derivatives of all orders are called smooth.Most of...

s (morphisms) in manifold theory.

If one axiomatizes relations instead of function
Function (mathematics)
In mathematics, a function associates one quantity, the argument of the function, also known as the input, with another quantity, the value of the function, also known as the output. A function assigns exactly one output to each input. The argument and the value may be real numbers, but they can...

s, one obtains the theory of allegories
Allegory (category theory)
In mathematical category theory, an allegory is a category that has some of the structure of the category of sets and binary relations between them. Allegories can be used as an abstraction of categories of relations, and in this sense the theory of allegories is a generalization of relation...

.

Functors

Abstracting again, a category is itself a type of mathematical structure, so we can look for "processes" which preserve this structure in some sense; such a process is called a functor
Functor
In category theory, a branch of mathematics, a functor is a special type of mapping between categories. Functors can be thought of as homomorphisms between categories, or morphisms when in the category of small categories....

. A functor associates to every object of one category an object of another category, and to every morphism in the first category a morphism in the second.

In fact, what we have done is define a category of categories and functors – the objects are categories, and the morphisms (between categories) are functors.

By studying categories and functors, we are not just studying a class of mathematical structures and the morphisms between them; we are studying the relationships between various classes of mathematical structures. This is a fundamental idea, which first surfaced in algebraic topology
Algebraic topology
Algebraic topology is a branch of mathematics which uses tools from abstract algebra to study topological spaces. The basic goal is to find algebraic invariants that classify topological spaces up to homeomorphism, though usually most classify up to homotopy equivalence.Although algebraic topology...

. Difficult topological questions can be translated into algebraic questions which are often easier to solve. Basic constructions, such as the fundamental group
Fundamental group
In mathematics, more specifically algebraic topology, the fundamental group is a group associated to any given pointed topological space that provides a way of determining when two paths, starting and ending at a fixed base point, can be continuously deformed into each other...

or fundamental groupoid of a topological space
Topological space
Topological spaces are mathematical structures that allow the formal definition of concepts such as convergence, connectedness, and continuity. They appear in virtually every branch of modern mathematics and are a central unifying notion...

, can be expressed as fundamental functors to the category of groupoid
Groupoid
In mathematics, especially in category theory and homotopy theory, a groupoid generalises the notion of group in several equivalent ways. A groupoid can be seen as a:...

s in this way, and the concept is pervasive in algebra and its applications.

Natural transformation

Abstracting yet again, constructions are often "naturally related" – a vague notion, at first sight. This leads to the clarifying concept of natural transformation
Natural transformation
In category theory, a branch of mathematics, a natural transformation provides a way of transforming one functor into another while respecting the internal structure of the categories involved. Hence, a natural transformation can be considered to be a "morphism of functors". Indeed this intuition...

, a way to "map" one functor to another. Many important constructions in mathematics can be studied in this context. "Naturality" is a principle, like general covariance
General covariance
In theoretical physics, general covariance is the invariance of the form of physical laws under arbitrary differentiable coordinate transformations...

in physics, that cuts deeper than is initially apparent.

Historical notes

In 1942–45, Samuel Eilenberg
Samuel Eilenberg
Samuel Eilenberg was a Polish and American mathematician of Jewish descent. He was born in Warsaw, Russian Empire and died in New York City, USA, where he had spent much of his career as a professor at Columbia University.He earned his Ph.D. from University of Warsaw in 1936. His thesis advisor...

and Saunders Mac Lane
Saunders Mac Lane
Saunders Mac Lane was an American mathematician who cofounded category theory with Samuel Eilenberg.-Career:...

introduced categories, functors, and natural transformations as part of their work in topology, especially algebraic topology
Algebraic topology
Algebraic topology is a branch of mathematics which uses tools from abstract algebra to study topological spaces. The basic goal is to find algebraic invariants that classify topological spaces up to homeomorphism, though usually most classify up to homotopy equivalence.Although algebraic topology...

. Their work was an important part of the transition from intuitive and geometric homology
Homology (mathematics)
In mathematics , homology is a certain general procedure to associate a sequence of abelian groups or modules with a given mathematical object such as a topological space or a group...

to axiom
Axiom
In traditional logic, an axiom or postulate is a proposition that is not proven or demonstrated but considered either to be self-evident or to define and delimit the realm of analysis. In other words, an axiom is a logical statement that is assumed to be true...

atic homology theory
Homology theory
In mathematics, homology theory is the axiomatic study of the intuitive geometric idea of homology of cycles on topological spaces. It can be broadly defined as the study of homology theories on topological spaces.-The general idea:...

. Eilenberg and Mac Lane later wrote that their goal was to understand natural transformations; in order to do that, functors had to be defined, which required categories.

Stanisław Ulam, and some writing on his behalf, have claimed that related ideas were current in the late 1930s in Poland. Eilenberg was Polish, and studied mathematics in Poland in the 1930s. Category theory is also, in some sense, a continuation of the work of Emmy Noether
Emmy Noether
Amalie Emmy Noether was an influential German mathematician known for her groundbreaking contributions to abstract algebra and theoretical physics. Described by David Hilbert, Albert Einstein and others as the most important woman in the history of mathematics, she revolutionized the theories of...

(one of Mac Lane's teachers) in formalizing abstract processes; Noether realized that in order to understand a type of mathematical structure, one needs to understand the processes preserving that structure. In order to achieve this understanding, Eilenberg and Mac Lane proposed an axiomatic formalization of the relation between structures and the processes preserving them.

The subsequent development of category theory was powered first by the computational needs of homological algebra
Homological algebra
Homological algebra is the branch of mathematics which studies homology in a general algebraic setting. It is a relatively young discipline, whose origins can be traced to investigations in combinatorial topology and abstract algebra at the end of the 19th century, chiefly by Henri Poincaré and...

, and later by the axiomatic needs of algebraic geometry
Algebraic geometry
Algebraic geometry is a branch of mathematics which combines techniques of abstract algebra, especially commutative algebra, with the language and the problems of geometry. It occupies a central place in modern mathematics and has multiple conceptual connections with such diverse fields as complex...

, the field most resistant to being grounded in either axiomatic set theory or the Russell-Whitehead view of united foundations. General category theory, an extension of universal algebra
Universal algebra
Universal algebra is the field of mathematics that studies algebraic structures themselves, not examples of algebraic structures....

having many new features allowing for semantic flexibility and higher-order logic
Higher-order logic
In mathematics and logic, a higher-order logic is a form of predicate logic that is distinguished from first-order logic by additional quantifiers and a stronger semantics...

, came later; it is now applied throughout mathematics.

Certain categories called topoi
Topos
In mathematics, a topos is a type of category that behaves like the category of sheaves of sets on a topological space...

(singular topos) can even serve as an alternative to axiomatic set theory as a foundation of mathematics. These foundational applications of category theory have been worked out in fair detail as a basis for, and justification of, constructive mathematics
Constructivism (mathematics)
In the philosophy of mathematics, constructivism asserts that it is necessary to find a mathematical object to prove that it exists. When one assumes that an object does not exist and derives a contradiction from that assumption, one still has not found the object and therefore not proved its...

. More recent efforts to introduce undergraduates to categories as a foundation for mathematics include Lawvere
William Lawvere
Francis William Lawvere is a mathematician known for his work in category theory, topos theory and the philosophy of mathematics.-Biography:...

and Rosebrugh (2003) and Lawvere and Schanuel (1997).

Categorical logic
Categorical logic
Categorical logic is a branch of category theory within mathematics, adjacent to mathematical logic but more notable for its connections to theoretical computer science. In broad terms, categorical logic represents both syntax and semantics by a category, and an interpretation by a functor...

is now a well-defined field based on type theory
Type theory
In mathematics, logic and computer science, type theory is any of several formal systems that can serve as alternatives to naive set theory, or the study of such formalisms in general...

for intuitionistic logic
Intuitionistic logic
Intuitionistic logic, or constructive logic, is a symbolic logic system differing from classical logic in its definition of the meaning of a statement being true. In classical logic, all well-formed statements are assumed to be either true or false, even if we do not have a proof of either...

s, with applications in functional programming
Functional programming
In computer science, functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions and avoids state and mutable data. It emphasizes the application of functions, in contrast to the imperative programming style, which emphasizes changes in state...

and domain theory
Domain theory
Domain theory is a branch of mathematics that studies special kinds of partially ordered sets commonly called domains. Consequently, domain theory can be considered as a branch of order theory. The field has major applications in computer science, where it is used to specify denotational...

, where a cartesian closed category
Cartesian closed category
In category theory, a category is cartesian closed if, roughly speaking, any morphism defined on a product of two objects can be naturally identified with a morphism defined on one of the factors. These categories are particularly important in mathematical logic and the theory of programming, in...

is taken as a non-syntactic description of a lambda calculus
Lambda calculus
In mathematical logic and computer science, lambda calculus, also written as λ-calculus, is a formal system for function definition, function application and recursion. The portion of lambda calculus relevant to computation is now called the untyped lambda calculus...

. At the very least, category theoretic language clarifies what exactly these related areas have in common (in some abstract sense).

Categories, objects, and morphisms

A category C consists of the following three mathematical entities:
• A class
Class (set theory)
In set theory and its applications throughout mathematics, a class is a collection of sets which can be unambiguously defined by a property that all its members share. The precise definition of "class" depends on foundational context...

ob(C), whose elements are called objects;
• A class hom(C), whose elements are called morphism
Morphism
In mathematics, a morphism is an abstraction derived from structure-preserving mappings between two mathematical structures. The notion of morphism recurs in much of contemporary mathematics...

s or maps
Map (mathematics)
In most of mathematics and in some related technical fields, the term mapping, usually shortened to map, is either a synonym for function, or denotes a particular kind of function which is important in that branch, or denotes something conceptually similar to a function.In graph theory, a map is a...

or arrows. Each morphism f has a unique source object a and target object b.
The expression f: a → b, would be verbally stated as "f is a morphism from a to b".
The expression hom(a, b) — alternatively expressed as hom(a, b), or homC(a, b), or mor(a, b), or C(a, b) — denotes the hom-class of all morphisms from a to b.
• A binary operation
Binary operation
In mathematics, a binary operation is a calculation involving two operands, in other words, an operation whose arity is two. Examples include the familiar arithmetic operations of addition, subtraction, multiplication and division....

, called composition of morphisms, such that for any three objects a, b, and c, we have hom(b, c) × hom(a, b) → hom(a, c). The composition of f: a → b and g: b → c is written as or gf, governed by two axioms:
• Associativity
Associativity
In mathematics, associativity is a property of some binary operations. It means that, within an expression containing two or more occurrences in a row of the same associative operator, the order in which the operations are performed does not matter as long as the sequence of the operands is not...

: If f : a → b, g : b → c and h : c → d then , and
• Identity
Identity (mathematics)
In mathematics, the term identity has several different important meanings:*An identity is a relation which is tautologically true. This means that whatever the number or value may be, the answer stays the same. For example, algebraically, this occurs if an equation is satisfied for all values of...

: For every object x, there exists a morphism 1x : x → x called the identity morphism for x, such that for every morphism f : a → b, we have .

From these axioms, it can be proved that there is exactly one identity morphism for every object. Some authors deviate from the definition just given by identifying each object with its identity morphism.

Relations among morphisms (such as fg = h) are often depicted using commutative diagram
Commutative diagram
In mathematics, and especially in category theory, a commutative diagram is a diagram of objects and morphisms such that all directed paths in the diagram with the same start and endpoints lead to the same result by composition...

s, with "points" (corners) representing objects and "arrows" representing morphisms.

Properties of morphisms

Morphism
Morphism
In mathematics, a morphism is an abstraction derived from structure-preserving mappings between two mathematical structures. The notion of morphism recurs in much of contemporary mathematics...

s can have any of the following properties. A morphism f : a → b is a:
• monomorphism
Monomorphism
In the context of abstract algebra or universal algebra, a monomorphism is an injective homomorphism. A monomorphism from X to Y is often denoted with the notation X \hookrightarrow Y....

(or monic) if fog1 = fog2 implies g1 = g2 for all morphisms g1, g2 : x → a.
• epimorphism
Epimorphism
In category theory, an epimorphism is a morphism f : X → Y which is right-cancellative in the sense that, for all morphisms ,...

(or epic) if g1of = g2of implies g1 = g2 for all morphisms g1, g2 : b → x.
• bimorphism if f is both epic and monic.
• isomorphism
Isomorphism
In abstract algebra, an isomorphism is a mapping between objects that shows a relationship between two properties or operations.  If there exists an isomorphism between two structures, the two structures are said to be isomorphic.  In a certain sense, isomorphic structures are...

if there exists a morphism g : b → a such that fog = 1b and gof = 1a.
• endomorphism
Endomorphism
In mathematics, an endomorphism is a morphism from a mathematical object to itself. For example, an endomorphism of a vector space V is a linear map ƒ: V → V, and an endomorphism of a group G is a group homomorphism ƒ: G → G. In general, we can talk about...

if a = b. end(a) denotes the class of endomorphisms of a.
• automorphism
Automorphism
In mathematics, an automorphism is an isomorphism from a mathematical object to itself. It is, in some sense, a symmetry of the object, and a way of mapping the object to itself while preserving all of its structure. The set of all automorphisms of an object forms a group, called the automorphism...

if f is both an endomorphism and an isomorphism. aut(a) denotes the class of automorphisms of a.
• retraction if a right inverse of f exists, i.e. if there exists a morphism g : b → a with fg = 1b.
• section
Section (category theory)
In category theory, a branch of mathematics, a section is a right inverse of a morphism. Dually, a retraction is a left inverse...

if a left inverse of f exists, i.e. if there exists a morphism g : b → a with gf = 1a.

Every retraction is an epimorphism, and every section is a monomorphism. Furthermore, the following three statements are equivalent:
• f is a monomorphism and a retraction;
• f is an epimorphism and a section;
• f is an isomorphism.

Functors

Functor
Functor
In category theory, a branch of mathematics, a functor is a special type of mapping between categories. Functors can be thought of as homomorphisms between categories, or morphisms when in the category of small categories....

s are structure-preserving maps between categories. They can be thought of as morphisms in the category of all (small) categories.

A (covariant) functor F from a category C to a category D, written F:C → D, consists of:
• for each object x in C, an object F(x) in D; and
• for each morphism f : x → y in C, a morphism F(f) : F(x) → F(y),

such that the following two properties hold:
• For every object x in C, F(1x) = 1F(x);
• For all morphisms f : x → y and g : y → z,

A contravariant functor F: C → D, is like a covariant functor, except that it "turns morphisms around" ("reverses all the arrows"). More specifically, every morphism f : x → y in C must be assigned to a morphism F(f) : F(y) → F(x) in D. In other words, a contravariant functor acts as a covariant functor from the opposite category
Opposite category
In category theory, a branch of mathematics, the opposite category or dual category Cop of a given category C is formed by reversing the morphisms, i.e. interchanging the source and target of each morphism. Doing the reversal twice yields the original category, so the opposite of an opposite...

Cop to D.

Natural transformations and isomorphisms

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 : X → Y in C, we have ηY o F(f) = G(f) o ηX; this means that the following diagram is commutative
Commutative diagram
In mathematics, and especially in category theory, a commutative diagram is a diagram of objects and morphisms such that all directed paths in the diagram with the same start and endpoints lead to the same result by composition...

:

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.

Universal constructions, limits, and colimits

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
Empty set
In mathematics, and more specifically set theory, the empty set is the unique set having no elements; its size or cardinality is zero. Some axiomatic set theories assure that the empty set exists by including an axiom of empty set; in other theories, its existence can be deduced...

or the product of two topologies
Product topology
In topology and related areas of mathematics, a product space is the cartesian product of a family of topological spaces equipped with a natural topology called the product topology...

, 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 those 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
Universal property
In various branches of mathematics, a useful construction is often viewed as the “most efficient solution” to a certain problem. The definition of a universal property uses the language of category theory to make this notion precise and to study it abstractly.This article gives a general treatment...

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
Limit (category theory)
In category theory, a branch of mathematics, the abstract notion of a limit captures the essential properties of universal constructions such as products and inverse limits....

, and can be dualized to yield the notion of a colimit.

Equivalent categories

It is a natural question to ask: under which conditions can two categories 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, which 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.
• The functor category
Functor category
In category theory, a branch of mathematics, the functors between two given categories form a category, where the objects are the functors and the morphisms are natural transformations between the functors...

DC has as objects the functors from C to D and as morphisms the natural transformations of such functors. The Yoneda lemma
Yoneda lemma
In mathematics, specifically in category theory, the Yoneda lemma is an abstract result on functors of the type morphisms into a fixed object. It is a vast generalisation of Cayley's theorem from group theory...

is one of the most famous basic results of category theory; it describes representable functors in functor categories.
• Duality
Dual (category theory)
In category theory, a branch of mathematics, duality is a correspondence between properties of a category C and so-called dual properties of the opposite category Cop...

: Every statement, theorem, or definition in category theory has a dual which is essentially obtained by "reversing all the arrows". If one statement is true in a category C then its dual will be true in the dual category Cop. This duality, which is transparent at the level of category theory, is often obscured in applications and can lead to surprising relationships.
In mathematics, adjoint functors are pairs of functors which stand in a particular relationship with one another, called an adjunction. The relationship of adjunction is ubiquitous in mathematics, as it rigorously reflects the intuitive notions of optimization and efficiency...

: A functor can be left (or right) adjoint to another functor that maps in the opposite direction. Such a pair of adjoint functors typically arises from a construction defined by a universal property; this can be seen as a more abstract and powerful view on universal properties.

Higher-dimensional categories

Many of the above concepts, especially equivalence of categories, adjoint functor pairs, and functor categories, can be situated into the context of higher-dimensional categories. Briefly, if we consider a morphism between two objects as a "process taking us from one object to another", then higher-dimensional categories allow us to profitably generalize this by considering "higher-dimensional processes".

For example, a (strict) 2-category
2-category
In category theory, a 2-category is a category with "morphisms between morphisms"; that is, where each hom set itself carries the structure of a category...

is a category together with "morphisms between morphisms", i.e., processes which allow us to transform one morphism into another. We can then "compose" these "bimorphisms" both horizontally and vertically, and we require a 2-dimensional "exchange law" to hold, relating the two composition laws. In this context, the standard example is Cat, the 2-category of all (small) categories, and in this example, bimorphisms of morphisms are simply natural transformation
Natural transformation
In category theory, a branch of mathematics, a natural transformation provides a way of transforming one functor into another while respecting the internal structure of the categories involved. Hence, a natural transformation can be considered to be a "morphism of functors". Indeed this intuition...

s of morphisms in the usual sense. Another basic example is to consider a 2-category with a single object; these are essentially monoidal categories
Monoidal category
In mathematics, a monoidal category is a category C equipped with a bifunctorwhich is associative, up to a natural isomorphism, and an object I which is both a left and right identity for ⊗, again up to a natural isomorphism...

. Bicategories
Bicategory
In mathematics, a bicategory is a concept in category theory used to extend the notion of category to handle the cases where the composition of morphisms is not associative, but only associative up to an isomorphism. The notion was introduced in 1967 by Jean Bénabou.Formally, a bicategory B...

are a weaker notion of 2-dimensional categories in which the composition of morphisms is not strictly associative, but only associative "up to" an isomorphism.

This process can be extended for all natural number
Natural number
In mathematics, the natural numbers are the ordinary whole numbers used for counting and ordering . These purposes are related to the linguistic notions of cardinal and ordinal numbers, respectively...

s n, and these are called n-categories
N-category
In mathematics, n-categories are a high-order generalization of the notion of category. The category of n-categories n-Cat is defined by induction on n by:...

. There is even a notion of ω-category corresponding to the ordinal number
Ordinal number
In set theory, an ordinal number, or just ordinal, is the order type of a well-ordered set. They are usually identified with hereditarily transitive sets. Ordinals are an extension of the natural numbers different from integers and from cardinals...

ω.

Higher-dimensional categories are part of the broader mathematical field of higher-dimensional algebra
Higher-dimensional algebra
Supercategories were first introduced in 1970, and were subsequently developed for applications in theoretical physics and mathematical biology or mathematical biophysics....

, a concept introduced by Ronald Brown
Ronald Brown (mathematician)
Ronald Brown is an English mathematician. Emeritus Professor in the School of Computer Science at Bangor University, he has authored many books and journal articles.-Education and career:...

. For a conversational introduction to these ideas, see John Baez, 'A Tale of n-categories' (1996).

• Domain theory
Domain theory
Domain theory is a branch of mathematics that studies special kinds of partially ordered sets commonly called domains. Consequently, domain theory can be considered as a branch of order theory. The field has major applications in computer science, where it is used to specify denotational...

• Enriched category theory
Enriched category
In category theory and its applications to mathematics, enriched category is a generalization of category that abstracts the set of morphisms associated with every pair of objects to an opaque object in some fixed monoidal category of "hom-objects" and then defines composition and identity solely...

• Glossary of category theory
Glossary of category theory
-Categories:A category A is said to be:* small provided that the class of all morphisms is a set ; otherwise large....

• Higher category theory
Higher category theory
Higher category theory is the part of category theory at a higher order, which means that some equalities are replaced by explicit arrows in order to be able to explicitly study the structure behind those equalities.- Strict higher categories :...

• Higher-dimensional algebra
Higher-dimensional algebra
Supercategories were first introduced in 1970, and were subsequently developed for applications in theoretical physics and mathematical biology or mathematical biophysics....

• Important publications in category theory
• Timeline of category theory and related mathematics
Timeline of category theory and related mathematics
This is a timeline of category theory and related mathematics. Its scope is taken as:* Categories of abstract algebraic structures including representation theory and universal algebra;* Homological algebra;* Homotopical algebra;...

• nLab, a wiki project on mathematics, physics and philosophy with emphasis on the n-categorical point of view
• André Joyal
André Joyal
André Joyal is a professor of mathematics at the Université du Québec à Montréal who works on category theory. Joyal was born in Drummondville . He has three children and lives in Montreal.- Main research :...

, CatLab, a wiki project dedicated to the exposition of categorical mathematics
• Chris Hillman, A Categorical Primer, formal introduction to category theory.
• J. Adamek, H. Herrlich, G. Stecker, Abstract and Concrete Categories-The Joy of Cats
• Stanford Encyclopedia of Philosophy
Stanford Encyclopedia of Philosophy
The Stanford Encyclopedia of Philosophy is a freely-accessible online encyclopedia of philosophy maintained by Stanford University. Each entry is written and maintained by an expert in the field, including professors from over 65 academic institutions worldwide...

: "Category Theory" -- by Jean-Pierre Marquis. Extensive bibliography.
• List of academic conferences on category theory
• Baez, John, 1996,"The Tale of n-categories." An informal introduction to higher order categories.