universal propertiesw
universal propertiesw
JIM STARK
Contents
0. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1. The Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Categories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Functors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3. Natural Transformations . . . . . . . . . . . . . . . . . . . . . . 5
2. Additional Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1. Types of Morphisms . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2. Subcategories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3. Natural Isomorphisms and Types of Functors . . . . . . . . . . . 7
3. Universal Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.1. Products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.2. Coproducts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.3. Inverse Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.4. Direct Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.5. Pullbacks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.6. Pushouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.7. Final Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.8. Initial Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.9. Zero Objects and Morphisms . . . . . . . . . . . . . . . . . . . . 13
3.10. Kernels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.11. Cokernels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.12. Biproducts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.13. Equalizers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4. Enriched Categories . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.1. Ab-categories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.2. Additive Categories . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.3. Abelian Categories . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5. Common Categories . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5.1. Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.2. Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.3. Abelian Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.4. Rings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.5. Commutative Rings . . . . . . . . . . . . . . . . . . . . . . . . . 18
5.6. Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
5.7. Topological Spaces . . . . . . . . . . . . . . . . . . . . . . . . . . 18
5.8. Pointed Topological Spaces . . . . . . . . . . . . . . . . . . . . . 19
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
NOTES ON CATEGORY THEORY 3
0. Introduction
The aim of these notes is to provide an introduction to the language of Category
Theory and a reference for the definitions of various “universal objects”. The main
content of the notes is contained in Sections 3 and 5 and indeed the first version
of these notes consisted only of Section 3. The intent was simply to collect these
definitions in one place in diagrammatic form. Soon after I added Section 5 to
collect various concrete definitions. Section 1 and the introduction to Section 3
were added so that the notes would be self contained were I ever to share them.
Finally Section 2 was added so that those who needed the material in Section 1
would be aware of a few more common terms from the language of Category Theory.
1. The Basics
There are three definitions in Category Theory that are of fundamental impor-
tance: Categories, Functors, and Natural Transformations. This section defines
these and gives a few examples of each.
1.1. Categories.
Definition 1. A category C consists of three pieces of data that satisfy two addi-
tional conditions. The data is:
• A class of objects denoted Ob(C).
• For every X, Y ∈ Ob(C), a class of morphisms or arrows denoted MorC (X, Y ).
• For every X, Y, Z ∈ Ob(C) a binary operation called composition denoted
◦ : MorC (Y, Z) × MorC (X, Y ) → MorC (X, Z).
This data should satisfy:
• Composition is associative; that is, (f ◦ g) ◦ h = f ◦ (g ◦ h) for all morphisms
f , g, and h such that the composition above is well defined.
• For every object X there is a distinguished morphism idX ∈ MorC (X, X)
such that f ◦ idX = f and idX ◦ g = g for all morphisms f and g such that
the composition above is well defined.
There is some common notational sloppiness which would take undue effort to
avoid so we mention it now and then take full advantage. While the notation Ob(C)
is useful when we wish to be explicit it is more common to denote that X is an
object of C by simply writing X ∈ C. When we wish to say that f is a morphism in
our category we will use the same notation f ∈ C; it should be clear from context
whether the item in question is an object or a morphism. Finally when the category
is understood we will drop the subscript and simply write Mor(X, Y ).
The notion of a category is highly abstract but as you can see from the following
examples they are very familiar objects.
Example 1. The category of sets is denoted Set. We let Ob(Set) be the class of all
sets. For any two sets X and Y we take Mor(X, Y ) to be the set of all maps from X
to Y . Composition is given by standard composition of maps and idX ∈ Mor(X, X)
is the standard identity map.
Example 2. The category of groups is denoted Grp. We let Ob(Grp) be the class
of all groups. For any two groups G and H we take Mor(G, H) to be the set of all
homomorphisms from G to H. Composition is given by standard composition of
maps and idX ∈ Mor(X, X) is the standard identity map.
4 JIM STARK
1.2. Functors. Now that we know what a category is we can talk about maps
between categories, these are called functors.
Definition 2. Let C and D be categories. A functor F from C to D assigns to
every object X ∈ C an object F (X) ∈ D and to every morphism f ∈ Mor(X, Y ) a
morphism F (f ) ∈ Mor(F (X), F (Y )) such that
• F (idX ) = idF (X) for all X ∈ C and
• F (f ◦ g) = F (f ) ◦ F (g) for any composable morphisms f, g ∈ C.
The most important fact about functors is that they take commutative diagrams
in the category C to commutative diagrams in the category D. As is the case with
morphisms we say that C is the domain, D is the codomain, and write F : C → D
F
or C → D.
Functors come in two types, covariant and contravariant. What we have defined
above is a covariant functor. In a contravariant functor the direction of the mor-
phisms is reversed, so to f ∈ Mor(X, Y ) we assign F (f ) ∈ Mor(F (Y ), F (X)) and
if f and g are composable then F (f ◦ g) = F (g) ◦ F (f ).
Often one thinks of morphisms in a category as the arrows in diagrams. A
contravariant functor simply reverses the direction of each arrow it is applied to.
It is standard to assume that functors are covariant unless otherwise specified and
we will follow this convention. In addition to this, when a definition depends on a
functor we will only state the covariant case. We leave it to the reader to “reverse
the arrows” for the contravariant case.
Example 5. If C is any category then there is an identity functor idC : C → C that
assigns to each object that same object and to each map that same map.
Example 6. Define F : Vectk → Set as follows: For any vector space V we let
F (V ) ∈ Set be the underlying set of elements and for any linear map f : V → W
NOTES ON CATEGORY THEORY 5
TX TY
G(X) / G(Y )
G(f )
commutes.
Again the notation T : F → G is standard. The morphism TX ∈ D is called the
component of T along X.
Example 10. Let id : fVectk → fVectk be the identity functor from Example 5
and −∗∗ : fVectk → fVectk the double dual from Example 9. Recall from linear
algebra that for every vector v in a vector space V we can define a linear map
6 JIM STARK
V
f
/W
TV TW
V ∗∗ / W ∗∗
f ∗∗
2. Additional Definitions
The following are some additional terms that one may encounter. These defini-
tions can be slightly different than what you are used to. For example if you ask
someone who has studied algebra what an epimorphism is they will likely tell you
it is a surjective homomorphism. In general a category need not be concrete so this
definition is not “categorical”. The appropriate generalization is found below.
2.2. Subcategories.
Definition 5. Let C be a category. A subcategory D of C consists of two pieces of
data:
• A subcollection Ob(D) of Ob(C) called the objects of the subcategory.
• For each X, Y ∈ Ob(D) a subcollection MorD (X, Y ) of MorC (X, Y ) called
the morphisms of the subcategory.
This data should satisfy:
• For every X ∈ Ob(D) the identity idX ∈ MorC (X, X) is contained in
MorD (X, X).
• The composition in C of two morphisms from D yields a morphism in D.
The subcategory D is a category in its own right using the composition law from
C. If MorC (X, Y ) = MorD (X, Y ) for every pair of objects X, Y ∈ D then we say
that D is a full subcategory. The two conditions of a subcategory are trivial in
this case so to specify a full subcategory we need only specify the subcollection of
objects.
Example 11. From Example 4, fVectk is a full subcategory of Vectk .
Example 12. The category of abelian groups is denoted Ab. It is the full subcat-
egory of Grp whose objects are the abelian groups in Grp.
2.3. Natural Isomorphisms and Types of Functors.
Definition 6. Let T : F → G be a natural transformation. If each component
morphism TX is an isomorphism then T is called a natural isomorphism and F and
G are naturally isomorphic.
Example 13. Let T : id → −∗∗ be the natural transformation from Example 10.
It is a standard result of linear algebra that the components TV : V → V ∗∗ are
isomorphisms and therefore T is a natural isomorphism. This is the content of the
word ‘natural’ when one says that a finite dimensional vector space is naturally
isomorphic to its double dual.
Definition 7. Let F : C → D be a functor.
• We say that F is an isomorphism if there is a functor F −1 : D → C such
that F ◦ F −1 = idD and F −1 ◦ F = idC .
• We say that F is an equivalence if there is a functor G : D → C such that
F ◦ G and G ◦ F are naturally isomorphic to idD and idC respectively.
• We say that F is full if the mapping f 7→ F (f ) induces a surjection
MorC (X, Y ) → MorD (F (X), F (Y )) for every pair of objects X, Y ∈ C.
• We say that F is faithful if the mapping f 7→ F (f ) induces an injection
MorC (X, Y ) → MorD (F (X), F (Y )) for every pair of objects X, Y ∈ C.
A functor that is both full and faithful is called fully faithful. It can be shown
that F : C → D is an equivalence if and only if F is fully faithful and for each X ∈ D
there exists a Y ∈ C such that X is isomorphic to F (Y ). Any faithful functor of the
form F : C → Set is called a forgetful functor and a category C is called concrete if
it has such a functor. If C is an object of this concrete category then F (C) is the
underlying set of C.
8 JIM STARK
τC,D τA,D
MorC (C, G(D)) / MorD (A, G(D))
−◦f
and
MorD (F (C), D)
g◦−
/ MorD (F (C), B)
τC,D τC,B
MorC (C, G(D)) / MorC (C, G(B))
G(g)◦−
commute.
If (F, G) is an adjoint pair then we say F is left-adjoint to G and G is right-
adjoint to F . There are two natural transformations associated to every adjoint
pair, the unit transformation, η : idC → G ◦ F , whose component along C ∈ C
is ηC = τC,F (C) (idF (C) ) and the counit transformation, ε : F ◦ G → idD , whose
−1
component along D ∈ D is εD = τG(D),D (idG(D) ).
A given functor does not always have an adjoint but when it does that adjoint
is essentially unique; that is, if
0
τC,D : MorD (F (C), D) → MorC (C, G0 (D))
is the bijection associated to another adjoint pair (F, G0 ) then the transformation
R : G → G0 with component RD = τG(D),D 0
(εD ) along D is a natural isomorphism
0 0
between G and G . Similarly if (F , G) is another adjoint pair with unit trans-
−1
formation η 0 : idC → G ◦ F 0 , then LC = τC,F 0
0 (C) (ηC ) gives a natural isomorphism
L : F → F 0.
Adjoints can be composed. If (F, G) and (H, K) are two adjoint pairs with
associated bijections
τC,D : MorC (F (C), D) → MorB (C, G(D)), and
0
τD,E : MorD (H(D), E) → MorC (D, K(E))
then ψC,E = τC,K(E) ◦ τF0 (C),E makes (H ◦ F, G ◦ K) an adjoint pair.
A functor F : Set → C is called free if it is left adjoint to a forgetful functor. An
object of C is a free object or is free on X if it is of the form F (X) for some set X.
Example 15. Let G : Vectk → Set be the forgetful functor defined in Example 6
and F : Set → Vectk the functor from Example 7. Maps out of vector spaces are
defined by where they send the basis elements therefore restricting a linear map on
NOTES ON CATEGORY THEORY 9
F (X) to a set map on X is a bijection τX,V : Mor(F (X), V ) → Mor(X, G(V )) and
makes (F, G) an adjoint pair.
Example 16. Let G : Ab → Grp be the inclusion functor (see Example 14) and let
F : Grp → Ab be abelianization; that is, F (G) = G/[G, G] and for f : G → H the
map F (f ) : G/[G, G] → H/[H, H] is induced by factoring f to the quotient. If H
is abelian then precomposition with the factor homomorphism G → G/[G, G] gives
a bijection τG,H : Mor(G/[G, G], H) → Mor(G, H) making (F, G) an adjoint pair.
3. Universal Properties
Universal properties have a general definition as initial and final properties in
something called the comma category. This level of abstraction is not really neces-
sary; for most purposes it suffices to know specific examples and not bother with
the full generality. We take this approach here. This section is merely a collection
of definitions for some common universal objects.
We make the following convention on diagrams. A diagram containing both solid
and dotted edges is to be read initially as though the dotted edges are absent. When
we claim the existence of morphisms completing the diagram, this means that if
the dotted edges are labeled with these morphisms the entire diagram commutes.
For example we could say
Given
W /X
c
b d
Y /Z
e
there exists a unique morphism a : W → X completing the diagram.
This means that if there are morphisms b, c, d, and e such that the diagram
W X
c
b d
Y /Z
e
commutes then there exists a unique morphism a such that the diagram
W
a /X
c
b d
Y /Z
e
commutes.
Diagrams with dotted arrows can then be interpreted as if-then statements.
Often some objects will be fixed and others arbitrary. We take the convention that
any object or morphism not previously mentioned is quantified by a ∀ operator.
For example the product of two objects in a category C is defined as follows:
10 JIM STARK
∃!
#
X ×Y
πY
/Y
fX
πX
'
X
The object Z and morphisms fX and fY were not mentioned before the diagram
and so are quantified by ∀ operators. Thus the above states that for every object
Z ∈ C with morphisms fX : Z → X and fY : Z → Y such that the diagram
Z fY
X ×Y
πY
/Y
fX
πX
'
X
commutes there exists a unique morphism α : Z → X × Y such that the diagram
Z fY
#
X ×Y
πY
/Y
fX
πX
'
X
commutes. Note that the ∃ quantifiers of a diagram are asserted after the ∀ quan-
tifier on the new elements of the diagram so the choice of morphism α depends on
fX and fY (and obviously on Z).
Universal objects are unique up to a canonical isomorphism so we will use “the”
even though multiple objects in the category may satisfy the definition.
Z
fi
∃!
Y !
Xα / Xi
πi
α∈I
NOTES ON CATEGORY THEORY 11
So morphisms into the Xi factor through the product. Note that we’ve shown the
diagram only for one Xi . We intend this diagram to represent Q the full diagram
that shows all of the Xi ; that is, the unique map α : Z → α∈IQXα should satisfy
fi = πi ◦ α for all i ∈ I. If the set I is finite then we say that α∈I Xα is a finite
product.
When I is finite, say I = {1, . . . , n}, the notation X1 × · · · × Xn is also used for
the product, but never ×α∈I Xα .
Xi
ιi fi
a
Xα /Z
∃!
α∈I
So morphisms out`of the Xi factor through the coproduct. If the set I is finite
then we say that α∈I Xα is a finite coproduct. Note that this is the exact same
diagram from the definition of a product but with all the arrows reversed. For every
universal object in category theory there is a co-object or categorical dual defined
by taking the universal diagram and reversing all the arrows.
Xj / Xi
fij
∃!
"
lim Xα
πi
/ Xi
←− <
φj
πj
fij
%
Xj
So morphisms into the inverse system factor through the inverse limit.
12 JIM STARK
3.4. Direct Limits. Let C be a category and I a directed set. Objects {Xi }i∈I
together with morphisms {fij : Xi → Xj }i≤j are called a direct system if the dia-
gram
fij
Xi / Xj
>
fik fkj
Xk
commutes for all i ≤ k ≤ j.
Let X be the direct system with objects {Xi }i∈I and morphisms {fij }i≤j . The
direct limit, or injective limit, of this system is an object lim Xα together with
n o −→
morphisms ιi : Xi → lim Xα satisfying the the universal property:
−→
< Xj
fij
ιj
φj
Xi / lim Xα
ιi −→
∃!
"
φi 0Z
So morphisms out of the direct system factor through the direct limit.
∃!
$
X ×W Y
πY
/Y
φX
πX g
' /W
X
f
f ιY
φY
X / X qW Y
ιX
∃!
$
φX 1Z
NOTES ON CATEGORY THEORY 13
3.7. Final Objects. Let C be a category. The final object is an object F satisfying
the universal property:
Z
∃! /F
So every object has exactly one morphism into F .
3.8. Initial Objects. Let C be a category. The initial object is an object I satis-
fying the universal property:
I
∃! /Z
So there is exactly one morphism from I into any object.
3.9. Zero Objects and Morphisms. Let C be a category. The zero or null object
is an object 0C that is both initial and final. The unique map into or out of a zero
object is called the zero morphism and is also denoted 0. Given any two objects X
and Y the composition X → 0C → Y is called the zero map from X to Y and is
again denoted 0.
!
ker f
0 /Y
=
φ
k
&
f
X
Immediately one has that k is monic. If f is monic then ker f is the final object
in C. The kernel of a zero morphism is the identity morphism of the domain.
Here, as elsewhere, term ‘kernel’ can mean either the object ker f , the morphism
k : ker f → X, or the pair of the two. When only the object is given the morphism
should be clear from context.
;Y
f
k
φ
X / coker f
0
∃!
#
0 1Z
Immediately one has that k is epic. If f is epic then coker f is the initial object in
C. The cokernel of a zero morphism is the identity morphism of the codomain. As
with kernels the term ‘cokernel’ can mean either the object, the morphism, or the
pair of the two.
14 JIM STARK
3.12. Biproducts. Let C be a category with zero morphisms (as in Section 3.9 or
Section 4.1) and let {Xα }α∈I be a finite collection of objects. The biproduct of the
L L
Xα is an object α∈I Xα together with morphisms πi :
α∈I Xα → Xi i∈I and
L
ιi : Xi → α∈I Xα i∈I such that the following properties hold:
L
• Lα∈I Xα together with {πi }i∈I is a product.
• α∈I Xα together with {ιi }i∈I is a coproduct.
• The composition πi ◦ ιj equals idXi if i = j and 0 otherwise.
Immediately one has that the πi are epic and the ιi are monic. Note that nothing
in the definition explicitly requires the collection I to be finite, but in practice only
finite biproducts exist or are ever assumed to exist so here we just define them as
such.
3.13. Equalizers. Let C be a category and f, g : X → Y two morphisms. The
equalizer (also called a difference kernel) of f and g is an object E(f, g) together
with a morphism e : E(f, g) → X satisfying the following universal property:
Z
∃!
φ
{
E(f, g) /X
f
// Y
e g
4. Enriched Categories
Informally a category C is enriched in D if for any two objects X, Y ∈ C the
morphism class MorC (X, Y ) is an object of the category D in such a way that the
two structures interact nicely. Full generality here is unnecessary; for most purposes
it suffices to know the examples below in which categories are enriched in Ab.
4.1. Ab-categories.
Definition 9. An Ab-category is a category C such that:
• Each MorC (X, Y ) is an abelian group.
• Composition of morphisms is bilinear.
We write the group operation on each morphism set as addition. The condi-
tion that composition of morphisms is bilinear then means that for all morphisms
f1 , f2 ∈ Mor(X, Y ), g ∈ Mor(Y, Z), and h ∈ Mor(W, X) the identities
g ◦ (f1 + f2 ) = g ◦ f1 + g ◦ f2 and (f1 + f2 ) ◦ h = f1 ◦ h + f2 ◦ h
hold.
Example 17. Both Ab and Vectk are Ab-categories. The abelian group structure
on each Mor(X, Y ) is given by pointwise addition.
Two morphisms f and g in C are called parallel if they have the same domain
and codomain. The identity object of Mor(X, Y ) is called the zero morphism from
X to Y and is denoted 0, or 0(X,Y ) if the domain and range need be notated. For
any morphisms f : W → X and g : Y → Z one can show 0(X,Y ) ◦ f = 0(W,Y ) and
g ◦0(X,Y ) = 0(X,Z) . When C has a zero object the zero morphism 0(X,Y ) just defined
is exactly the zero morphism X → 0 → Y defined in Section 3.9.
NOTES ON CATEGORY THEORY 15
ιX ιY
# #
X ×Y
πY
/Y X ×Y
πY
/Y
idX 0
πX πX
' '
X X
commute. These maps make X × Y into a coproduct. Similarly if the coproduct
X q Y exists then its universal property gives unique maps πX and πY making the
diagrams
Y and Y
ιY ιY
0 idY
X / X qY X / X qY
ιi ιi
πX πX
# #
idX 1X 0 1Y
commute. These maps make X q Y into a product. In either case the resulting
morphisms satisfy the additional condition required of a biproduct.
5. Common Categories
The following is a list of some common categories along with the constructions
for the universal objects that they poses.
NOTES ON CATEGORY THEORY 17
5.1. Sets.
• Denoted: Set
• Objects: All sets.
• Mor(X, Y ): Set maps f : X → Y .
• Product: Cartesian product.
• Coproduct: Disjoint union.
• Inverse Limit: Subset {(ai ) | ai = fij (aj ) ∀i ≤ j} of the product.
• Direct Limit: Coproduct modulo xi ∼ xj if fik (xi ) = fjk (xj ) for some k.
• Pullback: Subset {(x, y) | f (x) = g(y)} of the product.
• Pushout: Disjoint union modulo f (w) ∼ g(w) for all w ∈ W .
• Initial object: The empty set.
• Final object: Any singleton.
• Zero object: None.
• Equalizer: Subset {x | f (x) = g(x)} of the domain.
5.2. Groups.
• Denoted: Grp
• Objects: All groups.
• Mor(G, H): Group homomorphisms f : G → H.
• Product: Direct product.
• Coproduct: Free product.
• Inverse Limit: Subgroup {(ai ) | ai = fij (aj ) ∀i ≤ j} of the product.
• Direct Limit: Coproduct modulo xi ∼ xj if fik (xi ) = fjk (xj ) for some k.
• Pullback: Subgroup {(x, y) | f (x) = g(y)} of the product.
• Pushout: Free product with amalgamation.
• Zero object: Trivial group.
• Kernel: Subgroup f −1 (identity).
• Cokernel: Factor group Y /im f where im f is the normal closure of im f .
• Equalizer: Subgroup {x | f (x) = g(x)} of the domain.
5.3. Abelian Groups.
• Denoted: Ab
• Objects: Abelian groups.
• Mor(G, H): Group homomorphisms f : G → H.
• Product: Direct product.
• Coproduct: Direct sum.
• Inverse Limit: Subgroup {(ai ) | ai = fij (aj ) ∀i ≤ j} of the product.
• Direct Limit: Coproduct modulo xi ∼ xj if fik (xi ) = fjk (xj ) for some k.
• Pullback: Subgroup {(x, y) | f (x) = g(y)} of the product.
• Pushout: Direct sum modulo h(f (w), −g(w)) | w ∈ W i.
• Zero object: Trivial group.
• Kernel: Subgroup f −1 (identity).
• Cokernel: Factor group Y / im f .
• Biproduct: Exists.
• Equalizer: Kernel of f − g.
5.4. Rings.
• Denoted: Rng
• Objects: All rings (with unity).
18 JIM STARK
References
[ASS] Ibrahim Assem, Daniel Simson, and Andrezej Skowroński. Elements of the Representation
Theorey of Associative Algebras, volume 1. Cambridge, 2006.
[Mac] Saunders Mac Lane. Categories for the Working Mathematician. Springer, 1998.
[Rot] Joseph Rotman. Advanced Modern Algebra. Prentice Hall, 2002.
[Wei] Charles A. Weibel. An Introduction to Homological Algebra. Cambridge, 1997.