# Talk:Subcategory

If a full subcategory contains all identity morphisms, and for every pair of id. morphisms it contains, it contains all morphisms between the corresponding objects, then what is the difference between a full subcategory and the original category? Is it so, that we take a "subset" of the objects, and a subcategory is required to contain only all identitiy morphisms of the objects in that subset? Mikolt 13:26, 9 Jul 2004 (UTC)

- Yes, that's my understanding. A subcategory contains all identity morphisms between a
*subset*of objects. For example,**Ab**is a full subcategory of**Grp**but**Ring**isn't (there are group homomorphisms between rings which aren't ring homomorphisms). The page seems worded badly, but this isn't my area of expertise. – Fropuff 15:46, 2004 Jul 9 (UTC)

It actually wasn't right, really; and was also too compressed. I've tried another kind of definition. Charles Matthews 16:43, 9 Jul 2004 (UTC)

## Definition

Why is this definition so complicated? How about:

Let *C* be a category. A **subcategory** *S* of *C* is a category with

That is, a category whose objects resp. morphisms form a subclass of the objects resp. morphisms of the original category. Spaetzle (talk) 14:45, 7 June 2011 (UTC)

- You can do something like this, it is quite sensible, but you do need to require that the inclusions induce a functor
*S*→*C*. Otherwise, according to your definition, the dual of the category of sets (**Set**^{op}) is a "subcategory" of the category of sets**Set**, which is not true. Similarly, according to your definition, every countable group is isomorphic to a subgroup of . ComputScientist (talk) 21:21, 7 June 2011 (UTC)

I agree about functoriality. But I don't agree about **Set**^{op}. **Set** *does* have morphisms and they *do* go in the opposite direction in **Set**^{op}. So Mor(**Set**^{op}) is not a subclass of Mor(**Set**). Spaetzle (talk) 13:27, 9 June 2011 (UTC)

- Hi -- It depends what you mean by -- does that somehow contain the information about what the source and target of each morphism is? How does that work? Usually there is extra data in the definition of a category, saying what the domain/codomain of each morphism is. You need to check that this data is the same in
**S**and**C**. I'd say that's part of what the functoriality does. ComputScientist (talk) 14:38, 9 June 2011 (UTC)

## Definition incomplete?

The definition of subcategory seems to be missing a statement that the law of composition must be the same as in the parent category. If we have a parent category of just 3 objects A,B,C and arrows f:A->B, g:B->C, h,h':A->C and the same objects and arrows in the child category, then I can define gf=h in the parent category and gf=h' in the child category. All requirements are fulfilled, but this probably would not be called a subcategory. Leen Droogendijk (talk) 08:37, 22 December 2012 (UTC)

- The definition was correct. I have tried to clarify the article. ComputScientist (talk) 20:10, 28 December 2012 (UTC)