# Subcategory

In mathematics, specifically category theory, a subcategory of a category C is a category S whose objects are objects in C and whose morphisms are morphisms in C with the same identities and composition of morphisms. Intuitively, a subcategory of C is a category obtained from C by "removing" some of its objects and arrows.

## Formal definition

Let C be a category. A subcategory S of C is given by
* a subcollection of objects of C, denoted ob(S),
* a subcollection of morphisms of C, denoted hom(S).
such that
* for every X in ob(S), the identity morphism id$_X$ is in hom(S),
* for every morphism f : X → Y in hom(S), both the source X and the target Y are in ob(S),
* for every pair of morphisms f and g in hom(S) the composite f o g is in hom(S) whenever it is defined.
These conditions ensure that S is a category in its own right: its collection of objects is ob(S), its collection of morphisms is hom(S), and its identities and composition are as in C. There is an obvious faithful functor I : S → C, called the inclusion functor which takes objects and morphisms to themselves.
Let S be a subcategory of a category C. We say that S is a full subcategory of C if for each pair of objects X and Y of S,
    $\mathrm {Hom} _{\mathcal {S}}(X,Y)=\mathrm {Hom} _{\mathcal {C}}(X,Y).$
A full subcategory is one that includes all morphisms in C between objects of S. For any collection of objects A in C, there is a unique full subcategory of C whose objects are those in A.

## Examples

* The category of finite sets forms a full subcategory of the category of sets.
* The category whose objects are sets and whose morphisms are bijections forms a non-full subcategory of the category of sets.
* The category of abelian groups forms a full subcategory of the category of groups.
* The category of rings (whose morphisms are unit-preserving ring homomorphisms) forms a non-full subcategory of the category of rngs.
* For a field K, the category of K-vector spaces forms a full subcategory of the category of (left or right) K-modules.

## Embeddings

Given a subcategory S of C, the inclusion functor I : S → C is both a faithful functor and injective on objects. It is full if and only if S is a full subcategory.
Some authors define an embedding to be a full and faithful functor. Such a functor is necessarily injective on objects up to isomorphism. For instance, the Yoneda embedding is an embedding in this sense.
Some authors define an embedding to be a full and faithful functor that is injective on objects.
Other authors define a functor to be an embedding if it is faithful and injective on objects. Equivalently, F is an embedding if it is injective on morphisms. A functor F is then called a full embedding if it is a full functor and an embedding.
With the definitions of the previous paragraph, for any (full) embedding F : B → C the image of F is a (full) subcategory S of C, and F induces an isomorphism of categories between B and S. If F is not injective on objects then the image of F is equivalent to B.
In some categories, one can also speak of morphisms of the category being embeddings.

## Types of subcategories

A subcategory S of C is said to be isomorphism-closed or replete if every isomorphism k : X → Y in C such that Y is in S also belongs to S. An isomorphism-closed full subcategory is said to be strictly full.
A subcategory of C is wide or lluf (a term first posed by Peter Freyd) if it contains all the objects of C. A wide subcategory is typically not full: the only wide full subcategory of a category is that category itself.
A Serre subcategory is a non-empty full subcategory S of an abelian category C such that for all short exact sequences
    $0\to M'\to M\to M''\to 0$
in C, M belongs to S if and only if both $M'$ and $M''$ do. This notion arises from Serre's C-theory.