In category theory, the **coproduct**, or **categorical sum**, is a category-theoretic construction which includes as examples the disjoint union of sets and of topological spaces, the free product of groups, and the direct sum of modules and vector spaces virginia football uniforms. The coproduct of a family of objects is essentially the “least specific” object to which each object in the family admits a morphism. It is the category-theoretic dual notion to the categorical product, which means the definition is the same as the product but with all arrows reversed. Despite this seemingly innocuous change in the name and notation, coproducts can be and typically are dramatically different from products.

Let *C* be a category and let *X*_{1} and *X*_{2} be objects in that category. An object is called the coproduct of these two objects, written *X*_{1} ∐ *X*_{2} or *X*_{1} ⊕ *X*_{2} or sometimes simply *X*_{1} + *X*_{2}, if there exist morphisms *i*_{1} : *X*_{1} → *X*_{1} ∐ *X*_{2} and *i*_{2} : *X*_{2} → *X*_{1} ∐ *X*_{2} satisfying a universal property: for any object *Y* and morphisms *f*_{1} : *X*_{1} → Y and *f*_{2} : *X*_{2} → Y, there exists a unique morphism *f* : *X*_{1} ∐ *X*_{2} → *Y* such that *f*_{1} = *f* ∘ *i*_{1} and *f*_{2} = *f* ∘ *i*_{2}. That is, the following diagram commutes:

The unique arrow *f* making this diagram commute may be denoted *f*_{1} ∐ *f*_{2} or *f*_{1} ⊕ *f*_{2} or *f*_{1} + *f*_{2} or [*f*_{1}, *f*_{2}]. The morphisms *i*_{1} and *i*_{2} are called *canonical injections*, although they need not be injections nor even monic.

The definition of a coproduct can be extended to an arbitrary family of objects indexed by a set *J*. The coproduct of the family {*X _{j}* :

*j*∈

*J*} is an object

*X*together with a collection of morphisms

*i*:

_{j}*X*→

_{j}*X*such that, for any object

*Y*and any collection of morphisms

*f*:

_{j}*X*→

_{j}*Y*, there exists a unique morphism

*f*from

*X*to

*Y*such that

*f*=

_{j}*f*∘

*i*. That is, the following diagrams commute (for each

_{j}*j*∈

*J*):

The coproduct of the family {*X _{j}*} is often denoted

or

Sometimes the morphism *f* may be denoted

to indicate its dependence on the individual *f*_{j}.

The coproduct in the category of sets is simply the **disjoint union** with the maps *i _{j}* being the inclusion maps. Unlike direct products, coproducts in other categories are not all obviously based on the notion for sets one liter glass water bottle, because unions don’t behave well with respect to preserving operations (e.g. the union of two groups need not be a group), and so coproducts in different categories can be dramatically different from each other. For example, the coproduct in the category of groups, called the

**free product**, is quite complicated. On the other hand, in the category of abelian groups (and equally for vector spaces), the coproduct, called the

**direct sum**, consists of the elements of the direct product which have only finitely many nonzero terms. (It therefore coincides exactly with the direct product in the case of finitely many factors.)

In the case of topological spaces coproducts are disjoint unions with their disjoint union topologies. That is, it is a disjoint union of the underlying sets, and the open sets are sets *open in each of the spaces*, in a rather evident sense. In the category of pointed spaces mobile pouch for running, fundamental in homotopy theory, the coproduct is the wedge sum (which amounts to joining a collection of spaces with base points at a common base point).

Despite all this dissimilarity, there is still, at the heart of the whole thing, a disjoint union: the direct sum of abelian groups is the group generated by the “almost” disjoint union (disjoint union of all nonzero elements, together with a common zero), similarly for vector spaces: the space spanned by the “almost” disjoint union; the free product for groups is generated by the set of all letters from a similar “almost disjoint” union where no two elements from different sets are allowed to commute.

The coproduct construction given above is actually a special case of a colimit in category theory. The coproduct in a category *C* can be defined as the colimit of any functor from a discrete category *J* into *C*. Not every family {*X*_{j}} will have a coproduct in general, but if it does, then the coproduct is unique in a strong sense: if *i*_{j} : *X*_{j} → *X* and *k*_{j} : *X*_{j} → *Y* are two coproducts of the family {*X*_{j}}, then (by the definition of coproducts) there exists a unique isomorphism *f* : *X* → *Y* such that *fi*_{j} = *k*_{j} for each *j* in *J*.

As with any universal property, the coproduct can be understood as a universal morphism. Let Δ: *C* → *C*×*C* be the diagonal functor which assigns to each object *X* the ordered pair (*X*,*X*) and to each morphism *f*:*X* → *Y* the pair (*f*,*f*). Then the coproduct *X*+*Y* in *C* is given by a universal morphism to the functor Δ from the object (*X*,*Y*) in *C*×*C*.

The coproduct indexed by the empty set (that is, an *empty coproduct*) is the same as an initial object in *C*.

If *J* is a set such that all coproducts for families indexed with *J* exist, then it is possible to choose the products in a compatible fashion so that the coproduct turns into a functor *C*^{J} → *C*. The coproduct of the family {*X*_{j}} is then often denoted by ∐_{j} *X*_{j}, and the maps *i*_{j} are known as the **natural injections**.

Letting Hom_{C}(*U*,*V*) denote the set of all morphisms from *U* to *V* in *C* (that is, a hom-set in *C*), we have a natural isomorphism

given by the bijection which maps every tuple of morphisms

(a product in **Set**, the category of sets, which is the Cartesian product, so it is a tuple of morphisms) to the morphism

That this map is a surjection follows from the commutativity of the diagram: any morphism *f* is the coproduct of the tuple

That it is an injection follows from the universal construction which stipulates the uniqueness of such maps. The naturality of the isomorphism is also a consequence of the diagram. Thus the contravariant hom-functor changes coproducts into products. Stated another way, the hom-functor, viewed as a functor from the opposite category *C*^{op} to **Set** is continuous; it preserves limits (a coproduct in *C* is a product in *C*^{opp}).

If *J* is a finite set, say *J* = {1,…,*n*}, then the coproduct of objects *X*_{1},…,*X*_{n} is often denoted by *X*_{1}⊕.. waterproof plastic bags.⊕*X*_{n}. Suppose all finite coproducts exist in *C*, coproduct functors have been chosen as above, and 0 denotes the initial object of *C* corresponding to the empty coproduct. We then have natural isomorphisms

These properties are formally similar to those of a commutative monoid; a category with finite coproducts is an example of a symmetric monoidal category.

If the category has a zero object *Z*, then we have unique morphism *X* → *Z* (since *Z* is terminal) and thus a morphism *X* ⊕ *Y* → *Z* ⊕ *Y*. Since *Z* is also initial, we have a canonical isomorphism *Z* ⊕ *Y* ≅ *Y* as in the preceding paragraph. We thus have morphisms *X* ⊕ *Y* → *X* and *X* ⊕ *Y* → *Y*, by which we infer a canonical morphism *X* ⊕ *Y* → *X*×*Y*. This may be extended by induction to a canonical morphism from any finite coproduct to the corresponding product. This morphism need not in general be an isomorphism; in **Grp** it is a proper epimorphism while in **Set**_{*} (the category of pointed sets) it is a proper monomorphism. In any preadditive category, this morphism is an isomorphism and the corresponding object is known as the biproduct. A category with all finite biproducts is known as an semiadditive category.

If all families of objects indexed by *J* have coproducts in *C*, then the coproduct comprises a functor *C*^{J} → *C*. Note that, like the product, this functor is *covariant*.