Sari la conținutul principal

Termeni

Pentru a defini ce este o categorie, trebuie să clarificăm câțiva termeni. În multe cazuri, vom folosi termenul de mulțime (set), o colecție de elemente unice, și clasă (class) pentru colecții de mulțimi. Utilizarea termenului de clasă poate depinde de contextul fondațional, cum ar fi teoria mulțimilor Zermelo-Fraenkel sau teoria mulțimilor von Neumann–Bernays–Gödel. Pentru simplitate, vom folosi termenul de mulțime dacă elementele sale nu au proprietăți suplimentare și termenul de clasă dacă elementele reprezintă structuri cu proprietăți. Astfel, putem defini ce este o categorie.

Definiție: Categorie

O categorie C\mathcal{C} este compusă din:

  • o mulțime Ob(C)Ob(\mathcal{C}) ale cărei elemente se numesc obiecte
  • o mulțime Hom(C)Hom(\mathcal{C}) ale cărei elemente se numesc săgeți sau morfisme
  • pentru fiecare morfism fHom(C)f \in Hom(\mathcal{C}) există o pereche de obiecte s(f),t(f)Ob(C)s(f), t(f) \in Ob(\mathcal{C}) numite domeniul, respectiv codomeniul lui ff
  • pentru fiecare pereche de morfisme f,gHom(C)f,g \in Hom(\mathcal{C}) unde t(f)=s(g)t(f) = s(g) există mereu un morfism gfHom(C)g \circ f \in Hom(\mathcal{C}) (citit gg după ff) numit compusul
  • pentru fiecare obiect XOb(C)X \in Ob(\mathcal{\mathcal{C}}) există mereu un morfism idXid_X
  • astfel încât următoarele proprietăți sunt satisfăcute:
  • sursa și destinația respectă compoziția: s(gf)=s(f)s(g \circ f) = s(f) și t(gf)=t(g)t(g \circ f) = t(g)
  • sursa și destinația respectă identitatea: s(idX)=Xs(id_X) = X și t(idX)=Xt(id_X) = X
  • compoziția e asociativă: (hg)f=h(gf)(h \circ g) \circ f = h \circ (g \circ f)
  • compoziția satisface unitatea stânga și dreapta: idt(f)f=fids(f)=fid_{t(f)} \circ f = f \circ id_{s(f)} = f

Un exemplu de categorie ar putea fi următorul:

În principiu, o categorie este un quiver, un graf orientat cu oricâte muchii între oricare două noduri. Aici, importante sunt două proprietăți ale categoriei: faptul că compunerea morfismelor este asociativă și păstrează identitatea. Aceste proprietăți vor fi folosite în conceptul următor, care are legătură mai mult cu programarea funcțională, anume functorul.

Posibila formalizare in Lean 4
universe o h

class Category (Obj : Type o) where
Hom : Obj → Obj → Type h
id : (x : Obj) → Hom x x
comp :{x y z : Obj}, Hom y z → Hom x y → Hom x z
leftId :{x y : Obj} (f : Hom x y), comp (id y) f = f
rightId :{x y : Obj} (f : Hom x y), comp f (id x) = f
assoc :{x y z w : Obj} (h : Hom z w) (g : Hom y z) (f : Hom x y),
comp h (comp g f) = comp (comp h g) f
source {x y : Obj} (_ : Hom x y) : Obj := x
target {x y : Obj} (_ : Hom x y) : Obj := y

Categoria opusă

Fie C\mathcal{C} o categorie, categoria opusă notată Cop\mathcal{C}^{op} este o categorie în care morfismele sunt inversate cu:

  • Ob(Cop)Ob(\mathcal{C}^{op}) = Ob(C)Ob(\mathcal{C})
  • Hom(Cop)Hom(\mathcal{C}^{op}) = Hom(C)Hom(\mathcal{C})
  • sCop=tCs_{\mathcal{C}^{op}} = t_{\mathcal{C}} și tCop=sCt_{\mathcal{C}^{op}} = s_{\mathcal{C}}
  • Cop=C\circ_{\mathcal{C}^{op}} = \circ_{\mathcal{C}}

Categoriile opuse sunt utile pentru a dualiza proprietatile categoriei initiale. Aceste lucruri vor fi discutate un următoarele capitole.

Categorii mici si local mici

Pentru moment am definit categoriile în sensul de categorii mici (small), asta însemană că mulțimea de obiecte și cea de morfisme sunt doar mulțimi mici (small) și nu clase propriu-zise (în sensul matematic că nu reprezintă ceva mai mult decât un set). O categorie se numește local mică (locally small) dacă are toate hom-set-urile sunt doar mulțimi. Un hom-set hom(x,y)hom(x, y) de la obiectul xx la yy este mulțimea tuturor morfismelor de la xx la yy, nu trebuie confundat cu Hom(C)Hom(\mathcal{C}) a categoriei C\mathcal{C}.

Vom vedea că atunci când ne referim la categorii local mici ne referim de fapt la categorii îmbogățite (enriched) peste categoria Set\mathbf{Set} în care obiectele sunt mulțimi (finite și infinite) mici și morfismele sunt funcții între aceste mulțimi. Este important de mentionat că această categorie nu este categoria tuturor mulțimilor pentru a evita paradoxuri de tip Russell pentru că așa cum un set nu se poate conține pe sine nici o categorie nu se poate conține pe sine. În particular, categoria Set\mathbf{Set} este local mică.

Categoria produs

O categorie produs dintre categoriile C\mathcal{C} și D\mathcal{D} notată C×D\mathcal{C} \times \mathcal{D} este categoria în care obiectele și morfismele sunt perechi din cele două categorii astfel:

  • Ob(C×D)=Ob(C)×Ob(D)Ob(\mathcal{C} \times \mathcal{D}) = Ob(\mathcal{C}) \times Ob(\mathcal{D}), cOb(C), dOb(D) iff (c,d)Ob(C×D)\forall c \in Ob(\mathcal{C}),~d \in Ob(\mathcal{D})~iff~(c, d) \in Ob(\mathcal{C} \times D)
  • Hom(C×D)=Hom(C)×Hom(D)Hom(\mathcal{C} \times \mathcal{D}) = Hom(\mathcal{C}) \times Hom(\mathcal{D}), f:c1c2Hom(C), g:d1d2Hom(D) iff (f,g):(c1,d1)(c1,d1)Hom(C×D)\forall f : c_1 \rightarrow c_2 \in Hom(\mathcal{C}),~g : d_1 \rightarrow d_2 \in Hom(\mathcal{D})~iff~(f, g) : (c_1, d_1) \rightarrow (c_1, d_1) \in Hom(\mathcal{C} \times \mathcal{D})
  • C×D=C×D\circ_{\mathcal{C} \times \mathcal{D}} = \circ_{\mathcal{C}} \times \circ_{\mathcal{D}}, f1Cf2Hom(C),g1Dg2Hom(D) iff (f1Cf2,g1Dg2)=(f1,g1)C×D(f2,g2)Hom(C×D)\forall f_1 \circ_{\mathcal{C}} f_2 \in Hom(\mathcal{C}), g_1 \circ_{D} g_2 \in Hom(\mathcal{D})~iff~(f_1 \circ_{\mathcal{C}} f_2, g_1 \circ_{D} g_2) = (f_1, g_1)\circ_{\mathcal{C} \times \mathcal{D}}(f_2, g_2) \in Hom(\mathcal{C} \times \mathcal{D})

Resurse

  • Alexander Grothendieck, Section 4 of: Techniques de construction et théorèmes d’existence en géométrie algébrique III: préschémas quotients, Séminaire Bourbaki: années 1960/61, exposés 205-222, Séminaire Bourbaki, no. 6 (1961), Exposé no. 212, link
  • ncatlab