Suppose C is a category, I is a set, and for each i in I, an object Xi in C is given. An object X, together with morphisms pi : X → Xi for each i in I is called a product of the family (Xi) if, whenever Y is an object of C and qi : Y → Xi are given morphisms, then there exists precisely one morphism r : Y → X such that qi = pir.
The above definition is an example of a universal property; in fact, it is a special limit. Not every family (Xi) needs to have a product, but if it does, then the product is unique in a strong sense: if pi : X → Xi and p'i : X ' → Xi are two products of the family (Xi), then there exists a unique isomorphism r : X → X ' such that p'ir = pi for each i in I.
An empty product (i.e. I is the empty set) is the same as a terminal object in C.
If I is a set such that all products for families indexed with I exist, then it is possible to choose the products in a compatible fashion so that the product turns into a functor CI → C. The product of the family (Xi) is then often denoted by ΠXi, and the maps pi are known as the natural projections. We have a natural isomorphism
If I is a finite set, say I = {1,...,n}, then the product of objects X1,...,Xn is often denoted by X1×...×Xn. Suppose all finite products exist in C, product functors have been chosen as above, and 1 denotes the terminal object of C corresponding to the empty product. We then have natural isomorphisms