# Lí thuyết phạm trù - định nghĩa và ví dụ


<!-- > Category theory takes a bird's eye view of mathematics. From high in the sky, details become invisible, but we can spot patterns that were impossible to detect from ground level.
>
> Tom Leinster -->

> **Lí thuyết phạm trù** (category theory) nhìn toán học từ trên cao. Từ trên cao, tuy không thể nhìn thấy các chi tiết, nhưng ta có thể nhận ra các mô thức (patterns) mà từ mặt đất không thể phát hiện được.
>
>Tom Leinster

<!-- ## What is a Category? -->
## Phạm trù là gì?


<!-- A **category** $\mathsf{C}$ consists of some data that satisfy certain properties: -->

Một **phạm trù** (category) $\mathsf{C}$ bao gồm một số **dữ kiện** (data) thỏa mãn (satisfy) các **tính chất** (properties) nhất định:

<!-- ### The Data -->
### Dữ kiện (The Data)

<!-- - A class of **objects**: $x, y, z, \dots$
- A set of **morphisms** between pairs of objects: $x \xrightarrow{f} y$ means "$f$ is a morphism from $x$ to $y$," and the set of all such morphisms is denoted $\text{hom}_C(x, y)$.
- A **composition rule**: whenever the codomain of one morphism matches the domain of another, there is a morphism that is their composition. That is, given $x \xrightarrow{f} y$ and $y \xrightarrow{g} z$, there is a morphism $x \xrightarrow{g \circ f} z$. -->

- Một lớp các **vật** (object): $x, y, z, \dots$
- Một tập\* các **cấu xạ** (morphism) giữa các cặp vật: $x \xrightarrow{f} y$ có nghĩa là "$f$ là một cấu xạ từ $x$ đến $y$", và tập hợp tất cả các cấu xạ như vậy được kí hiệu là $\text{hom}_C(x, y)$. (hom là viết tắt của homomorphism - đồng cấu)
- Một **quy tắc hợp thành** (composition rule): khi nào tập đích (codomain) của một cấu xạ khớp (match) với tập nguồn (domain) của cấu xạ khác, thì có một cấu xạ là hợp thành (composition) của 2 cấu xạ đó. Cụ thể, với $x \xrightarrow{f} y$ và $y \xrightarrow{g} z$ cho trước, tồn tại một cấu xạ

$$x \xrightarrow{g \circ f} z.$$

> \*Một **phạm trù** $\mathsf{C}$ được gọi là **phạm trù địa phương nhỏ** (locally small category) nếu, với mọi vật $x$ và $y$, tập hợp các cấu xạ $\text{hom}_{\mathsf{C}}(x, y)$ là đủ "nhỏ" để trở thành một tập hợp thực sự. Nói cách khác, một phạm trù được gọi là địa phương nhỏ nếu không có quá nhiều cấu xạ giữa các vật.

Hầu hết các phạm trù mà bạn quen thuộc, như **Set** (phạm trù các tập hợp), **Top** (phạm trù các không gian topo), và **Group** (phạm trù các nhóm), đều là phạm trù địa phương nhỏ. Trong các bài viết sắp tới, chúng ta sẽ luôn giả định rằng các phạm trù mà ta đang làm việc có tính chất này, trừ khi có quy ước khác.

<!-- ### The Properties -->

### Các tính chất (properties)

<!-- - Each object $x$ has an **identity morphism** $x \xrightarrow{\text{id}_x} x$ which satisfies $\text{id}_y \circ f = f = f \circ \text{id}_x$ for any morphism $x \xrightarrow{f} y$.
- The composition is **associative**: $(h \circ g) \circ f = h \circ (g \circ f)$ whenever  -->

- Mỗi vật $x$ có một **cấu xạ đồng nhất** (identity morphism) $$x \xrightarrow{\text{id}_x} x$$ thỏa mãn $$\text{id}_y \circ f = f = f \circ \text{id}_x$$ với cấu xạ $x \xrightarrow{f} y$ bất kì.
- Phép hợp thành có **tính kết hợp**: $$(h \circ g) \circ f = h \circ (g \circ f)$$ nếu như $$x \xrightarrow{f} y \xrightarrow{g} z \xrightarrow{h} w.$$

<!-- Here is a picture of a category with four objects—depicted as bold dots—and some morphisms between them. The gray arrow at each object indicates its identity morphism. -->

Dưới đây là hình ảnh của một phạm trù với 4 vật — được biểu diễn bằng các chấm đen to — và một số cấu xạ giữa chúng. Mũi tên màu xám ở mỗi vật ứng với mỗi cấu xạ đồng nhất của vật đó.

![](https://cdn.prod.website-files.com/5b1d427ae0c922e912eda447/5b567cd123af1b118185e195_assoc.jpg)

<!-- Last time I listed a few examples of categories but never provided the proofs. To make sure you're comfortable with the definition, try proving a few of them. For example, to form the category of groups, we declare the objects to be groups and the morphisms to be group homomorphisms. But we should check: is the composition of two group homomorphisms another group homomorphism? (Or is it merely a function?) Is this composition associative? And is the identity function from a group to itself a group homomorphism? (Or, again, is it merely a function?) -->

Lần trước tôi đã liệt kê một vài ví dụ về các phạm trù nhưng chưa trình bày các chứng minh (proofs). Để đảm bảo bạn hiểu được định nghĩa, hãy thử chứng minh một vài trong số chúng. Ví dụ, để tạo thành phạm trù của các nhóm (groups), chúng ta khai báo (declare) các vật ở đây chính là các nhóm và các cấu xạ ở đây chính là các đồng cấu nhóm (group homomophisms). Nhưng chúng ta cần kiểm tra: liệu phép hợp thành của hai đồng cấu nhóm có phải là một đồng cấu nhóm khác không? (Hay nó chỉ đơn thuần là một hàm?) Phép hợp thành này có tính kết hợp không? Và hàm nhận dạng từ một nhóm đến chính nó có phải cũng là một đồng cấu nhóm không? (Hay, một lần nữa, nó cũng chỉ đơn thuần là một hàm?)

<!-- I also mentioned briefly that every poset (a set with a binary relation that is reflexive, transitive, and antisymmetric) is a category. This turns out to be a useful example, so let's be explicit. -->

Tôi cũng đã đề cập một cách ngắn gọn rằng mọi poset (một tập hợp với một quan hệ nhị phân thỏa mãn tính phản xạ (reflexive), tính bắc cầu (transitive), và tính phản xứng (antisymmetric); poset là viết tắt của partially ordered set - tập sắp thứ tự một phần) đều là một phạm trù. Hóa ra đây là một ví dụ hay, ta sẽ đi vào cụ thể hơn chút xíu.

<!-- ## Example #1: A Poset -->
## Ví dụ 1: Poset

<!-- Every poset $P$ forms a category. The objects are the elements of $P$ and there is a morphism $x \to y$ whenever $x \leq y$. -->

Mỗi poset $P$ tạo thành một phạm trù. Các vật trong phạm trù này là các phần tử của $P$ và có một cấu xạ $x \to y$ ứng với $x \leq y$.

<img src="https://cdn.prod.website-files.com/5b1d427ae0c922e912eda447/5b567ced7e0e98f40809802e_pic1.jpg" height="120px" style="display: block; margin-left: auto; margin-right: auto;">

<!-- Composition holds because of transitivity: if $x \leq y$ and $y \leq z$, then $x \leq z$. -->

Phép hợp thành được thoả mãn nhờ tính bắc cầu: nếu $x \leq y$ và $y \leq z$, thì $x \leq z$.

![Poset Example 2](https://cdn.prod.website-files.com/5b1d427ae0c922e912eda447/5b567d07d1ecea6f7a3ef2b3_pic2.jpg)

<!-- The identity-morphism property holds because of reflexivity: $x \leq x$ is always true. Therefore, there is an arrow $x \xrightarrow{\text{id}_x} x$ satisfying $f \circ \text{id}_x = f$ for any morphism $f$. -->

Cấu xạ đồng nhất cũng được thỏa mãn nhờ tính phản xạ: $x \leq x$ luôn đúng. Do đó, tồn tại một cấu xạ $x \xrightarrow{\text{id}_x} x$ thỏa mãn $f \circ \text{id}_x = f$ với cấu xạ $f$ bất kì.

![Poset Example 3a](https://cdn.prod.website-files.com/5b1d427ae0c922e912eda447/5b567d147e0e9827bf09802f_pic3a.jpg)

<!-- Similarly, $\text{id}_y \circ f = f$. -->
Tương tự, $\text{id}_y \circ f = f$.

![Poset Example 3b](https://cdn.prod.website-files.com/5b1d427ae0c922e912eda447/5b567d1f23af1b12f785e19d_pic3b.jpg)

<!-- Associativity holds too. (What would the picture for this look like?) In particular, we've just shown that $\mathbb{Z}$, $\mathbb{Q}$, and $\mathbb{R}$ are all categories! We could have deduced this from the next example as well. -->

Tính kết hợp cũng được thỏa mãn. (Bạn đọc có thể tự vẽ) Cụ thể, ta vừa chứng minh rằng $\mathbb{Z}$, $\mathbb{Q}$ và $\mathbb{R}$ đều là các phạm trù! Chúng ta cũng có thể suy ra điều này từ ví dụ tiếp theo.

<!-- ## Example 2: A Group -->
## Ví dụ 2: Nhóm

<!-- Every group $G$ can be viewed as a category—called $\mathsf{B}G$ (for cool reasons)—with a single object, which we'll denote by $∙$. There is a morphism $∙ \xrightarrow{g} ∙$ for each element $g \in G$, and composition holds since $G$ is closed under the group operation. That is, if $g, h \in G$, so that $∙ \xrightarrow{g} ∙ \xrightarrow{h} ∙$ are two composable morphisms, then there is a third morphism $∙ \xrightarrow{hg} ∙$ that is their composition, namely the one corresponding to the element $hg \in G$. -->

Mỗi nhóm $G$ có thể được xem như một phạm trù — được gọi là $\mathsf{B}G$ ([vì một lí do khá thú vị](https://ncatlab.org/nlab/show/classifying+space)) — với một vật duy nhất, mà chúng ta kí hiệu là $∙$. Tồn tại một cấu xạ $∙ \xrightarrow{g} ∙$ cho mỗi phần tử $g \in G$, và phép hợp thành thỏa mãn vì $G$ đóng dưới toán tử nhóm (group operation). Cụ thể, nếu $g, h \in G$, sao cho $∙ \xrightarrow{g} ∙ \xrightarrow{h} ∙$ là cấu xạ hợp thành được (composable morphism), thì tồn tại cấu xạ thứ ba $∙ \xrightarrow{hg} ∙$ là hợp thành của chúng, tức là cấu xạ tương ứng với phần tử $hg \in G$.

> **Phạm trù $\mathsf{B}G$** được gọi là **không gian phân loại** (classifying space) của nhóm $G$ đặt trong bối cảnh hình học và lí thuyết phạm trù. Ý tưởng chính là nó mô hình hóa cách nhóm $G$ hoạt động trên một không gian duy nhất, với mỗi phần tử $g \in G$ tương ứng với một cấu xạ (mũi tên) trong không gian đó. Phạm trù này giúp mô tả các đặc điểm và cấu trúc của nhóm theo cách trừu tượng hơn, bằng cách sử dụng khái niệm vật (object) và cấu xạ. Trong lí thuyết đồng luân (homotopy theory), $\mathsf{B}G$ được liên hệ với việc phân loại các bó chính $G$ (principal $G$-bundles) trên các không gian khác, cho phép ta nghiên cứu các tác động nhóm (group action) theo cách hình học.

<!-- Finally, the group identity $e \in G$ serves as the identity morphism for $∙$, and associativity holds because the group operation is associative. -->
Cuối cùng, phần tử đơn vị của nhóm (group identity) $e \in G$ đóng vai trò như cấu xạ đồng nhất cho $∙$, và tính kết hợp của phạm trù được thỏa mãn vì toán tử nhóm vốn sẵn có tính kết hợp.
![](https://cdn.prod.website-files.com/5b1d427ae0c922e912eda447/5b567d2e23af1bdf7385e19e_BGs.jpg)

<!-- ## Example 3: new categories from old ones -->
## Ví dụ 3: Tạo các phạm trù mới từ các phạm trù cũ

<!-- A very natural question that you might ask upon discovering new mathematical ideas is **How can I construct new objects from given ones?** In particular, one could ask, **How can I make a new category from old ones?** There are several ways to go about this. Given two categories $\mathsf{C}$ and $\mathsf{D}$, you might try defining their product $\mathsf{C} \times \mathsf{D}$. (This paves the way for monoidal categories.) What do you think the objects in $\mathsf{C} \times \mathsf{D}$ should be? The morphisms? -->

Một câu hỏi rất tự nhiên mà bạn có thể đặt ra khi khám phá các ý tưởng toán học mới là **Làm thế nào để tôi xây dựng các vật mới từ các vật đã cho?**\*\*. Cụ thể, người ta có thể hỏi, **Làm thế nào để tôi tạo ra một phạm trù mới từ các phạm trù đã có?** Có nhiều cách để thực hiện điều này. Cho hai phạm trù $\mathsf{C}$ và $\mathsf{D}$, bạn có thể thử định nghĩa tích (product) của chúng $\mathsf{C} \times \mathsf{D}$. (Điều này mở đường cho các [**phạm trù đơn tử**](https://en.wikipedia.org/wiki/Monoidal_category) (monoid category).) Bạn nghĩ các vật trong $\mathsf{C} \times \mathsf{D}$ nên là gì? Các cấu xạ trông ra sao?

<!-- >\*\*For instance, the intersection of sets is another set, the direct product of groups is another group, the tensor product of vector spaces is another vector space, the product of compact topological spaces is another compact topological space, and so on. -->
> \*\*Chẳng hạn, giao (intersection) của các tập hợp là một tập hợp khác, tích trực tiếp (direct product) của các nhóm là một nhóm khác, tích tensor (tensor product) của các không gian vector là một không gian vector khác, tích (product) của các không gian topo compact là một không gian topo compact khác, v.v.

<!-- Additionally, every category $\mathsf{C}$ has an opposite category $\mathsf{C}^{\text{op}}$. The only difference between a category and its opposite is the direction in which the arrows/morphisms point. That is, the objects in $\mathsf{C}^{\text{op}}$ are exactly the same as objects in $\mathsf{C}$, but there is a morphism $x \to y$ in $\mathsf{C}^{\text{op}}$ whenever there is morphism $y \to x$ in $\mathsf{C}$. (Check that $\mathsf{C}^{\text{op}}$ really does satisfy the definition of a category.) In other words,  -->

Ngoài ra, mỗi phạm trù $\mathsf{C}$ có một **phạm trù đối** (opposite category) $\mathsf{C}^{\text{op}}$. Sự khác biệt duy nhất giữa một phạm trù và phạm trù đối của nó là hướng của các mũi tên/cấu xạ. Cụ thể, các vật trong $\mathsf{C}^{\text{op}}$ hoàn toàn giống như các vật trong $\mathsf{C}$, nhưng luôn tồn tại một cấu xạ $x \to y$ trong $\mathsf{C}^{\text{op}}$ một khi tồn tại có cấu xạ $y \to x$ trong $\mathsf{C}$. (Bạn đọc tự kiểm tra xem $\mathsf{C}^{\text{op}}$ thực sự thỏa mãn định nghĩa của một phạm trù hay không.) Nói cách khác,

$$
\text{hom}_{\mathsf{C}^{\text{op}}}(x, y) = \text{hom}_{\mathsf{C}}(y, x)
$$

![](https://cdn.prod.website-files.com/5b1d427ae0c922e912eda447/5b567d3ed1ecea55f73ef2b4_cop.jpg)

<!-- Another example of a category formed from existing ones is $\mathsf{Cat}$. Here, the objects are categories **$\mathsf{C}$, $\mathsf{D}$, $\mathsf{E}$, $\mathsf{F}$, \dots**, and the morphisms between them are functors. I'm jumping the gun a bit on this one since I haven't defined functors on the blog yet, but I think it's worth a mention. As we discussed last time, it's helpful to think of a morphism/arrow as a relationship between its domain and codomain. So naturally, we might take interest in relationships, i.e., functors, between categories. -->

Một ví dụ khác về phạm trù được tạo thành từ các phạm trù hiện có chính là $\mathsf{Cat}$. Ở đây, các vật lại là các phạm trù\*\*\* $\mathsf{C}$, $\mathsf{D}$, $\mathsf{E}$, $\mathsf{F}$, $\dots$ và các cấu xạ giữa chúng là các [hàm tử](https://en.wikipedia.org/wiki/Functor) (functors). Tôi đang đi tắt một chút ở đây vì cho đến hiện tại tôi chưa định nghĩa hàm tử là gì. Như chúng ta đã thảo luận lần trước, việc xem một cấu xạ/mũi tên như là một mối quan hệ giữa tập nguồn và tập đích thực sự có ý nghĩa. Vì vậy, một cách tự nhiên, chúng ta có thể xem xét các quan hệ  (các hàm tử) giữa các phạm trù.

<!-- > ***For size considerations, the categories in $\mathsf{Cat}$ are assumed to be small. A category $\mathsf{C}$ is called small if it doesn't contain too many objects and if there aren't too many morphisms between those objects, i.e. if both $\text{ob}(\mathsf{C})$ (all the objects in $\mathsf{C}$) and $\text{hom}_{\mathsf{C}}(x, y)$ are honest-to-goodness sets. -->
>\*\*\*Vì lí do kích thước, các phạm trù trong $\mathsf{Cat}$ được giả định là nhỏ. Một phạm trù $\mathsf{C}$ được coi là nhỏ (small) nếu nó không chứa quá nhiều đối tượng và không có quá nhiều cấu xạ giữa các đối tượng đó, tức là cả $\text{ob}(\mathsf{C})$ (tất cả các đối tượng trong $\mathsf{C}$) và $\text{hom}_{\mathsf{C}}(x, y)$ đều là các tập hợp thực sự (honest-to-goodness sets).

<!-- You can also construct a new category $\mathsf{D}^{\mathsf{C}}$ from given categories $\mathsf{C}$ and $\mathsf{D}$ by declaring the objects to be functors $F: \mathsf{C} \to \mathsf{D}$. (The notation $\mathsf{D}^{\mathsf{C}}$ is quite suggestive.) Here, a morphism between two functors $F: \mathsf{C} \to \mathsf{D}$ and $G: \mathsf{C} \to \mathsf{D}$ is a natural transformation, often denoted by a double arrow $F \implies G$. In the special case when $\mathsf{D} = \mathsf{Set}$, the objects of $\mathsf{Set}^{\mathsf{C}^{\text{op}}}$ are given the name **presheaves**. Again, I'm jumping the gun here, but I expect these examples to resurface later on the blog, so now is a good time to mention them. -->

Bạn cũng có thể xây dựng (construct) một phạm trù mới $\mathsf{D}^{\mathsf{C}}$ từ các phạm trù đã cho $\mathsf{C}$ và $\mathsf{D}$ bằng cách khai báo các vật là các **hàm tử** $F: \mathsf{C} \to \mathsf{D}$. (Kí hiệu $\mathsf{D}^{\mathsf{C}}$ [có tính gợi nhắc khá tốt](https://www.instagram.com/p/BPDyoyIgL9d/?taken-by=math3ma).) Ở đây, một [**biến đổi tự nhiên**](https://en.wikipedia.org/wiki/Natural_transformation) (natural transformation) giữa hai **hàm tử** $F: \mathsf{C} \to \mathsf{D}$ và $G: \mathsf{C} \to \mathsf{D}$ thường được kí hiệu bằng một mũi tên kép $F \implies G$. Trong trường hợp đặc biệt khi $\mathsf{D} = \mathsf{Set}$, các vật của $\mathsf{Set}^{\mathsf{C}^{\text{op}}}$ được đặt tên là các **sơ bó** (presheaf). Một lần nữa, tôi đang đi trước một chút ở đây, nhưng tôi kì vọng những ví dụ này sẽ xuất hiện lại sau này trên blog.

<!-- We'll chat about functors next week and natural transformations the following week. I encourage you to revisit Example 3 once you're familiar with these notions. -->

Chúng ta sẽ nói về hàm tử trong bài tiếp theo và về phép biến đổi tự nhiên trong bài tiếp theo nữa. Tôi khuyến khích bạn quay lại xem Ví dụ 3 sau khi bạn đã quen thuộc với những khái niệm này.

## Tham khảo

- Tai-Danae Bradley. (2017, Janary 23). *What is a category* Math3ma. [https://www.math3ma.com/blog/what-is-a-category](https://www.math3ma.com/blog/what-is-a-category)

