# Product (category theory)

In category theory, the **product** of two (or more) objects in a category is a notion designed to capture the essence behind constructions in other areas of mathematics such as the Cartesian product of sets, the direct product of groups or rings, and the product of topological spaces. Essentially, the product of a family of objects is the "most general" object which admits a morphism to each of the given objects.

## Definition

Let **C** be a category with some objects *X*_{1} and *X*_{2}. A product of *X*_{1} and *X*_{2} is an object *X* (often denoted *X*_{1} × *X*_{2}) together with a pair of morphisms *π*_{1} : *X* → *X*_{1}, *π*_{2} : *X* → *X*_{2} that satisfy the following universal property:

- for every object
*Y*and every pair of morphisms*f*_{1}:*Y*→*X*_{1},*f*_{2}:*Y*→*X*_{2}there exists a unique morphism*f*:*Y*→*X*_{1}×*X*_{2}such that the following diagram commutes:

The unique morphism *f* is called the **product of morphisms** *f*_{1} and *f*_{2} and is denoted ⟨ *f*_{1}, *f*_{2} ⟩. The morphisms *π*_{1} and *π*_{2} are called the **canonical projections** or **projection morphisms**.

Above we defined the **binary product**. Instead of two objects we can take an arbitrary family of objects indexed by some set *I*. Then we obtain the definition of a **product**.

An object *X* is the product of a family (*X*_{i})_{i∈I} of objects if there exist morphisms *π*_{i} : *X* → *X*_{i} such that for every object *Y* and every *I*-indexed family of morphisms *f*_{i} : *Y* → *X*_{i}, there exists a unique morphism *f* : *Y* → *X* such that the following diagrams commute for all *i* in *I*:

The product is denoted Π_{i∈I} *X*_{i}. If *I* = {1, ..., *n*} then it is denoted *X*_{1} × ... × *X*_{n} and the product of morphisms is denoted ⟨ *f*_{1}, ..., *f*_{n} ⟩.

### Equational definition

Alternatively, the product may be defined through equations. So, for example, for the binary product:

- Existence of
*f*is guaranteed by existence of the operation ⟨ -,- ⟩. - Commutativity of the diagrams above is guaranteed by the equality ∀
*f*_{1}, ∀*f*_{2}, ∀*i*∈{1, 2},*π*_{i}o ⟨*f*_{1},*f*_{2}⟩ =*f*_{i}. - Uniqueness of
*f*is guaranteed by the equality ∀*g*:*Y*→*X*, ⟨*π*_{1}o*g*,*π*_{2}o*g*⟩ =*g*.[1]

### As a limit

The product is a special case of a limit. This may be seen by using a discrete category (a family of objects without any morphisms, other than their identity morphisms) as the diagram required for the definition of the limit. The discrete objects will serve as the index of the components and projections. If we regard this diagram as a functor, it is a functor from the index set *I* considered as a discrete category. The definition of the product then coincides with the definition of the limit, { *f* }_{i} being a cone and projections being the limit (limiting cone).

### Universal property

Just as the limit is a special case of the universal construction, so is the product. Starting with the definition given for the universal property of limits, take **J** as the discrete category with two objects, so that **C**^{J} is simply the product category **C** × **C**. The diagonal functor *Δ* : **C** → **C** × **C** assigns to each object *X* the ordered pair (*X*, *X*) and to each morphism *f* the pair (*f*, *f*). The product *X*_{1} × *X*_{2} in **C** is given by a universal morphism from the functor *Δ* to the object (*X*_{1}, *X*_{2}) in **C** × **C**. This universal morphism consists of an object *X* of **C** and a morphism (*X*, *X*) → (*X*_{1}, *X*_{2}) which contains projections.

## Examples

In the category of sets, the product (in the category theoretic sense) is the Cartesian product. Given a family of sets *X*_{i} the product is defined as

- Π
_{i∈I}*X*_{i}:= { (*x*_{i})_{i∈I}| ∀*i*∈*I*,*x*_{i}∈*X*_{i}}

with the canonical projections

*π*_{j}: Π_{i∈I}*X*_{i}→*X*_{j},*π*_{j}((*x*_{i})_{i∈I}) :=*x*_{j}.

Given any set *Y* with a family of functions *f*_{i} : *Y* → *X*_{i},
the universal arrow *f* : *Y* → Π_{i∈I} *X*_{i} is defined by *f*(*y*) := (*f*_{i}(*y*))_{i∈I} .

Other examples:

- In the category of topological spaces, the product is the space whose underlying set is the Cartesian product and which carries the product topology. The product topology is the coarsest topology for which all the projections are continuous.
- In the category of modules over some ring
*R*, the product is the Cartesian product with addition defined componentwise and distributive multiplication. - In the category of groups, the product is the direct product of groups given by the Cartesian product with multiplication defined componentwise.
- In the category of graphs, the product is the tensor product of graphs.
- In the category of relations, the product is given by the disjoint union. (This may come as a bit of a surprise given that the category of sets is a subcategory of the category of relations.)
- In the category of algebraic varieties, the product is given by the Segre embedding.
- In the category of semi-abelian monoids, the product is given by the history monoid.
- A partially ordered set can be treated as a category, using the order relation as the morphisms. In this case the products and coproducts correspond to greatest lower bounds (meets) and least upper bounds (joins).

## Discussion

The product does not necessarily exist. For example, an empty product (i.e. *I* is the empty set) is the same as a terminal object, and some categories, such as the category of infinite groups, do not have a terminal object: given any infinite group *G* there are infinitely many morphisms ℤ → *G*, so *G* cannot be terminal.

If *I* is a set such that all products for families indexed with *I* exist, then one can treat each product as a functor **C**^{I} → **C**.[2] How this functor maps objects is obvious. Mapping of morphisms is subtle, because the product of morphisms defined above does not fit. First, consider the binary product functor, which is a bifunctor. For *f*_{1} : *X*_{1} → *Y*_{1}, *f*_{2} : *X*_{2} → *Y*_{2} we should find a morphism *X*_{1} × *X*_{2} → *Y*_{1} × *Y*_{2}. We choose ⟨ *f*_{1} o π_{1}, *f*_{2} o π_{2} ⟩. This operation on morphisms is called **cartesian product of morphisms**.[3] Second, consider the general product functor. For families {*X*}_{i},{*Y*}_{i}, *f*_{i} : *X*_{i} → *Y*_{i} we should find a morphism Π_{i∈I} *X*_{i} → Π_{i∈I} *Y*_{i}. We choose the product of morphisms {*f*_{i} o π_{i}}_{i}.

A category where every finite set of objects has a product is sometimes called a **cartesian category**[3]
(although some authors use this phrase to mean "a category with all finite limits").

The product is associative. Suppose **C** is a cartesian category, product functors have been chosen as above, and 1 denotes the terminal object of **C**. We then have natural isomorphisms

These properties are formally similar to those of a commutative monoid; a category with its finite products constitutes a symmetric monoidal category.

## Distributivity

For any objects `X`, `Y`, and `Z` of a category with finite products and coproducts, there is a canonical morphism *X* × *Y* + *X* × *Z* → *X* × (*Y* + *Z*), where the plus sign here denotes the coproduct. To see this, note that the universal property of the coproduct *X* × *Y* + *X* × *Z* guarantees the existence of unique arrows filling out the following diagram (the induced arrows are dashed):

The universal property of the product *X* × (*Y* + *Z*) then guarantees a unique morphism *X* × *Y* + *X* × *Z* → *X* × (*Y* + *Z*) induced by the dashed arrows in the above diagram. A distributive category is one in which this morphism is actually an isomorphism. Thus in a distributive category, one has the canonical isomorphism

- .

## See also

- Coproduct – the dual of the product
- Diagonal functor – the left adjoint of the product functor.
- Limit and colimits
- Equalizer
- Inverse limit
- Cartesian closed category
- Categorical pullback

## References

- Lambek J., Scott P. J. (1988).
*Introduction to Higher-Order Categorical Logic*. Cambridge University Press. p. 304. - Lane, S. Mac (1988).
*Categories for the working mathematician*(1st ed.). New York: Springer-Verlag. p. 37. ISBN 0-387-90035-7. - Michael Barr, Charles Wells (1999).
*Category Theory - Lecture Notes for ESSLLI*. p. 62. Archived from the original on 2011-04-13.

- Adámek, Jiří; Horst Herrlich; George E. Strecker (1990).
*Abstract and Concrete Categories*(PDF). John Wiley & Sons. ISBN 0-471-60922-6. - Barr, Michael; Charles Wells (1999).
*Category Theory for Computing Science*(PDF). Les Publications CRM Montreal (publication PM023). Chapter 5. - Mac Lane, Saunders (1998).
*Categories for the Working Mathematician*. Graduate Texts in Mathematics**5**(2nd ed.). Springer. ISBN 0-387-98403-8. - Definition 2.1.1 in Borceux, Francis (1994).
*Handbook of categorical algebra*. Encyclopedia of mathematics and its applications 50-51, 53 [i.e. 52]. Volume 1. Cambridge University Press. p. 39. ISBN 0-521-44178-1.

## External links

- Interactive Web page which generates examples of products in the category of finite sets. Written by Jocelyn Paine.
- Product in
*nLab*