---
# System prepended metadata

title: Untitled

---

## 1. Giới thiệu về đại số Boolean:
Để làm một bài đại số thông thường , chúng ta thường phải tuân theo một số quy tắc. Những quy tắc này được sử dụng thông dụng đến nỗi ta thường quên luôn cả tên gọi của chúng. Nhưng chúng lại là nền tảng của toàn bộ thể loại toán học chúng ta biết bây giờ.
Quy tắc số $1$: Phép cộng và nhân có tính giao hoán. Nghĩa là ta có thể đổi chỗ vị trí của các kí hiệu hai bên dấu.
![](https://i.imgur.com/LJ9ZFPP.png)
Và ngược lại phép trừ và chia không có tính giao hoán.
Ví dụ như khi bạn đổi $7 + 3$ thành $3 + 7$ thì nó đều ra kết quả là $10$ nhưng khi đổi $7 - 3$ thành $3 - 7$ lại ra hai kết quả hoàn toàn khác.
Quy tắc số $2$: Phép cộng và nhân cũng có tính liên kết.
![](https://i.imgur.com/7UNhVGz.png)
Quy tắc số $3$: Phép nhân sẽ được phân phối trên phép cộng.
![](https://i.imgur.com/EHVmxE1.png)
Và một đặc tính của đại số thông thường là nó luôn làm việc với những con số như số cân đậu phụ, số lượng con cánh cụt, khoảng cách một con tàu đi được hay số tuổi của thành viên trong gia đình. Boole đã sáng tạo ra một thể loại đại số cách ly khỏi những con số và khiến đại số trở nên trừu tượng hơn, và giờ chúng ta gọi đó là đại số Boolean. Trong đại số Boolean, một biến không thay thế cho một số mà thay thế cho một tập (class hay còn được gọi là set).
Gạt toán sang một bên, giờ nói về mèo đi. Một con mèo có thể là con đực hoặc con cái. Để thuận tiện hơn chúng ta dùng $M$ (male) để đại diện cho các con đực và $F$ (female) cho con cái. Hãy luôn nhớ rằng hai biến $M$ và $F$ này không đại diện cho số lượng con mèo. Số lượng con đực và con cái có thể thay đổi chỉ trong vài phút ví dụ như một em bé mèo mới sinh ra hay một chú mèo ra (đáng tiếc thay) qua đời. Các chữ cái hay còn gọi là biến đại diện cho tập hợp của các con mèo có cùng một đặc tính.
Chúng ta cũng có thể sử dụng những chữ cái để thay thế cho màu sắc của những chú mèo. Ví dụ như: $T$ (tan) đại diện cho những con mèo có màu nâu vàng, $B$ (black) cho những con màu đen, $W$ (white) cho màu trắng và $O$ (others) cho những màu còn lại (những con không trong tập $T$,$W$ hay $B$).
Và cuối cùng , mèo có thể bị triệt sản hoặc chưa bị triệt sản. Hãy dùng $N$ (neutered) để đại diện cho tập hợp những con đã bị triệt sản và $U$ (unneutered) để đại diện cho các con mèo chưa bị triệt sản.
Quay lại toán nào, như ta đã biết trong đại số thông thường dấu $+$ được dùng cho phép cộng và dấu x được dùng cho phép nhân. Trong đại số Boolean, dấu $+$ và x cũng được sử dụng nhưng nó lại mang một ý nghĩa hoàn toàn khác.
Dấu $+$ trong Boolean nghĩa là union(hợp) của hai tập. Nghĩa là nó sẽ tạo ra một tập mới chứa tất cả phần tử của tập thứ $1$ và thứ $2$. Ví dụ, $B + W$ biểu diễn một tập gồm tất cả con mèo màu đen hoặc màu trắng.
Kí hiệu x trong Boolean nghĩa là intersection(giao thoa) của hai tập. Một giao thoa của hai tập sẽ tạo ra một tập mới chứa tất cả phần tử nằm trong cả tập thứ nhất và hai. Ví dụ, $F$ x $T$ biểu diễn một tập gồm tất cả các con mèo cái(female) và có màu nâu vàng(tan).
Phép phân phối, tính liên kết và tính giao hoán vẫn được giữ nguyên trong đại số Boolean. Chỉ khác là thay vì nhân (x) được phân phối trên ($+$) thì ở Boolean , dấu $+$ được phân phối trên dấu nhân.
![](https://i.imgur.com/V75C0AR.png)
Để hoàn thiện đại số Boolean , ta cần thêm một số kí hiệu khác. Kí hiệu $1$ nghĩa là tất cả mọi thứ. Ví dụ như trong ví dụ về những con mèo ta đề cập ở trên, $1$ là tập hợp của toàn bộ con mèo. Nên ta dễ dàng nhận thấy:
![](https://i.imgur.com/5FRatHj.png)
Biểu thức trên nghĩa là hợp của các con mèo cái và mèo đực là toàn bộ các con mèo. Tương tự vậy, hợp của mèo đen, mèo trắng, mèo nâu vàng và các màu còn lại cũng là tập hợp của toàn bộ con mèo.
![](https://i.imgur.com/t2OdBNh.png)
Và một cách khác nữa:
![](https://i.imgur.com/bigJmpj.png)
Kí hiệu $1$ cũng có thể được sử dụng cùng dấu $-$ biểu diễn một tập hợp của toàn bộ mọi thứ ngoại trừ một cái gì đó. Ví dụ:
![](https://i.imgur.com/59u6dA3.png)
Là tập hợp của toàn bộ các con mèo ngoại trừ mèo đực hay nói cách khác là chỉ gồm toàn mèo cái:
Một kí hiệu khác ta cần sử dụng ở đây là kí hiệu $0$. Trong đại số Boolean $0$ biểu diễn cho một tập hợp rỗng (không có phần tử nào). Ví dụ:
![](https://i.imgur.com/bVjmCIs.png)
Bởi không có con mèo nào mang cả hai giới tính đực và cái. 
Bây giờ, sau khi đã nắm rõ những kiến thức cơ bản, ta sẽ đi vào một ví dụ phức tạp hơn. Giả dụ một ngày bạn đi vào cửa hàng thú cưng và nói với ông chủ rằng "Tôi muốn một con mèo đực, đã bị triệt sản, màu trắng hoặc nâu vàng; hoặc một con mèo cái, đã bị triệt sản, mọi màu trừ màu trắng; hoặc một con mèo màu đen". Và ông chủ cửa hàng nói lại với bạn rằng: "Vậy là bạn muốn một con mèo thỏa mãn biểu thức sau:
![](https://i.imgur.com/fqP7cDR.png)
đúng không ?" Và bạn nói "Đúng rồi đó!".
Để chứng thực rằng ông chủ nói đúng, bạn có thể quên đi ý tưởng hợp và giao thoa mà thay vào đó dùng OR thay cho dấu ($+$) và $AND$ thay cho dấu (x).Và hai từ này biểu đạt chính xác ý nghĩa của nó trong tiếng anh. Khi bạn hợp hai tập hợp lại thành một tập hợp mới, bạn đã chấp nhận các phần tử nằm trong tập này HOẶC ($OR$) tập kia. Và khi bạn sử giao thoa hai tập hợp, bạn chấp nhận tất cả phần tử nằm trong cả tập này VÀ ($AND$) tập kia. Thêm nữa , bạn có thể sử dụng $NOT$ để thay thế cho số $1$ được theo sau bởi dấu ($-$).Tóm lại:

+ Kí hiệu $+$ (trước đây đượ hiểu là hợp) bây giờ nghĩa là $OR$
+ Kí hiệu x (trước đây được hiểu là giao thoa) bây giờ nghĩa là $AND$
+ "$1 -$" (trước đây được hiểu là toàn bộ ngoại trừ cái gì) bây giờ là $NOT$

Nên giờ ta có thể diễn đạt công thức trên lại thành:
![](https://i.imgur.com/G5Tkuqq.png)
Biểu thức này đã đúng ý bạn muốn, hãy để ý dấu ngoặc đơn làm rõ ý muốn của bạn. Bạn muốn một con mèo nằm trong một hoặc ba tập sau:
![](https://i.imgur.com/DnIYwwK.png)
Với công thức đã được viết ra, ông chủ có thể làm một việc gọi là kiểm tra Boolean. Bây giờ , tôi sẽ đưa bạn đến một dạng khác của Boolean, trong dạng này, các chữ cái sẽ không biểu diễn cho một tập nữa mà nó có thể được thay số vào như toán thông thường. Điều đặc biệt là ở đây, ta sẽ chỉ thay số $0$ hoặc số $1$ vào thôi. Số $1$ nghĩa là có , thỏa mãn tiêu chuẩn và $0$ là ngược lại.
Ví dụ nhé, bây giờ ông chủ mang ra một con mèo đực chưa bị triệt sản, màu nâu vàng. Đây là công thức biểu diễn một con màu thỏa mãn nhu cầu khách hàng:
![](https://i.imgur.com/OrBlIoV.png)
và đây là công thức sau khi thay số vào:
![](https://i.imgur.com/ixlPRag.png)
Để ý rằng những chữ cái được thay số $1$ vào chỉ là $M$ và $T$ vì con màu là đực và có màu nâu vàng. Nó được đơn giản hóa thành $1$ con mèo thỏa mãn điều kiện và $0$ con mèo không thỏa mãn điều kiện. Hãy nhớ rằng chúng ta không cộng và nhân ở đây nhưng mà chúng ta có thể coi rằng chúng ta làm thế.
Dấu x ở đây sẽ cho ra kết quả như bảng sau:
![](https://i.imgur.com/siobYr0.png)
Nói cách khác kết quả là $1$ khi và chỉ khi cả hai vế là $1$. Ta thấy kết quả này giống hệt với đại số thông thường. Và sau đây là một bảng tổng hợp lại nhỏ hơn và tinh tế hơn:


| **AND** | **0** | **1** |
| -------- | -------- | -------- |
|     **0**     |     $0$     |   $0$       |
| **1**     | $0$     | $1$     |

<!-- ![](https://i.imgur.com/ujlCXLm.png) -->
Dấu $+$ nghĩa là OR và các kết quả có thể của nó là:
![](https://i.imgur.com/jjcVkBV.png)
Kết quả là 1 khi một trong hai vế là $1$. $OR$ cho kết quả gần như giống phép cộng thông thường, chỉ khác là $1 + 1 = 1$. Và nó cũng có thể được tổng kết vào một bảng sau:
| **OR** | **0** | **1** |
| -------- | -------- | -------- |
|     **0**     |     $0$     |   $1$       |
| **1**     | $1$     | $1$     |

<!-- ![](https://i.imgur.com/FegccB2.png) -->
Bây giờ, ta đã sẵn sàng để tính toán kết quả. 
![](https://i.imgur.com/4grMM7G.png)
Kết quả là $0$ nghĩa là không, con mèo không phù hợp với nhu cầu khách hàng.
Tiếp theo, ông chủ mang ra một con mèo cái đã bị triệt sản màu xám(màu xám sẽ thuộc về tập hợp $O$(others)) và biểu thức của nó là:
![](https://i.imgur.com/CnSW98U.png)
Và ta tính được kết quả:
![](https://i.imgur.com/ck1UrLb.png)
Và kết quả là $1$. Tuyệt một con mèo đã tìm được mái ấm của mình.
Tối đó, khi chú mèo yêu đang say giấc thì bạn lại nghĩ rằng có thể nối một vài công tắc và bóng đèn lại để giúp bạn kiểm tra xem còn những con mèo nào thỏa mãn điều kiện không.
Để bắt đầu thí nghiệm của mình, bạn nối bóng đèn với nguồn nhưng bạn dùng hai công tắc thay vì một:
![](https://i.imgur.com/iUqGTyd.png)
Hai công tắc được nối tiếp nhau như trên. Nếu bạn đóng công tắc bên trái, sẽ không có gì xảy ra cả:
![](https://i.imgur.com/APr7jcr.png)
Và cũng tương tự với công tắc phải. Bóng đèn chỉ sáng khi cả hai công tắc đều được đóng:
![](https://i.imgur.com/Kr6WnWS.png)
Từ khóa quan trọng nhất ở đây là $AND$, cả hai công tắc cần được đóng để dòng điện có thể chạy trong mạch.
Từ đó ta có thể đưa ra bảng sau:


| Công tắc trái | Công tắc phải | Bóng đèn   |
| ------------- | ------------- | ---------- |
|      Mở         |   Mở            |    Không sáng        |
|        Mở       |    Đóng           |  Không sáng          |
|        Đóng       |        Mở       |     Không sáng       |
| Đóng           | Đóng            | Sáng |

<!-- ![](https://i.imgur.com/7PeOjmC.png) -->
Ta thấy $1$ công tắc luôn có $2$ trạng thái là đóng và mở nên ta có thể sử dụng bit ở đây. Bit $0$ nghĩa là công tắc đang mở và bit $1$ có nghĩa là công tắc đang đóng. Tương tự bóng đèn cũng có $2$ trạng thái là sáng(lit) được biểu diễn là $1$ và không sáng(not lit) được biểu diễn là $0$. Và ta đơn giản viết lại bảng trên:


| Công tắc trái | Công tắc phải | Bóng đèn |
| ------------- | ------------- | -------- |
|      0         |       0        |     0     |
|        0       |      1        |     0     |
|        1       |       0        |     0     |
| 1        | 1       | 1    |

<!-- ![](https://i.imgur.com/KRqqa2E.png) -->
Ta thấy vai trò của công tắc trái và phải là tương đương nhau, vậy nên ta có thể viết lại bảng trên như cách ta viết với bảng $AND$ và bảng $OR$:
<!-- ![](https://i.imgur.com/IA5f5l1.png) -->

| Công tắc trong dòng | 0    | 1    |
| ------------------- | ---- | ---- |
|     **0**               |    0  |   0   |
| **1**              | 0| 1 |

Và nó giống hệt bảng $AND$.
Mạch điện này đã diễn tả hoạt động của $AND$ trong đại số Boolean.
Bây giờ nhé, ta thử nối mạch điện theo một cách khác đi:
![](https://i.imgur.com/nsbH3xr.png)
Hai công tắc trên được mắc song song với nhau, sự khác nhau giữa mạch này và mạch trước đó là bóng đèn sẽ sáng khi một trong hai công tắc được đóng.
![](https://i.imgur.com/E4qC8g8.png)
Hoặc công tắc dưới:
![](https://i.imgur.com/SiODOg7.png)
Hoặc cả hai công tắc luôn:
![](https://i.imgur.com/9qotKIM.png)
Bóng đèn sáng khi hoặc là công tắc trên đóng hoặc là công tắc dưới đóng. Từ khóa ở đây là HOẶC ($OR$).
Tương tự như trên, ta cũng có bảng biểu diễn với từng cặp trạng thái của công tắc:


| Công tắc trái | Công tắc phải | Bóng đèn |
| -------- | -------- | -------- |
|    Mở      |    Mở      |     Không sáng     |
|    Mở      |     Đóng     |    Sáng      |
|    Đóng      |     Mở     |     Sáng     |
| Đóng     | Đóng     | Sáng     |

<!-- ![](https://i.imgur.com/3YuBlmD.png) -->
Và cũng tương tự với cách thay số $0$ và $1$:


| Công tắc trái | Công tắc phải | Bóng đèn |
| -------- | -------- | -------- |
|    0    |       0   |    0      |
|     0     |     1     |   1       |
|     1     |      0    |     1     |
| 1    | 1     | 1     |

<!-- ![](https://i.imgur.com/QeE3bYF.png) -->
Và cũng không quan trọng khi hai công tắc bị đổi chỗ nên ta có thể viết gọi lại như sau:


| Công tắc mắc song song | 0 | 1 |
| -------- | -------- | -------- |
|     **0**     |   0       |     1     |
| **1**    | 1    | 1    |

<!-- ![](https://i.imgur.com/2lCucNu.png) -->
Chắc hẳn bạn cũng có thể đoán được nó giống với bảng OR:


| OR | 0 | 1 |
| -------- | -------- | -------- |
|    **0**      |    0      |    1      |
| **1**   | 1    | 1    |

<!-- ![](https://i.imgur.com/fOYxSbP.png) -->
Hay nói cách khác hai công tắc mắc song song miêu tả sự hoạt động của OR trong đại số Boolean.
<!-- Quay lại ví dụ về những con mèo, ta đã có sẵn một biểu thức biểu diễn nhu cầu khách hàng:
![](https://i.imgur.com/kRTHl5W.png)
Và giờ với kiến thức vừa đề cập ở trên, ta có thể vẽ một mạch điện biểu diễn biểu thức trên như sau(với hai công tắc mắc nối tiếp biểu diễn một cổng logic AND (được kí hiệu là x) và hai công tắc mắc song song biểu diễn cổng logic OR(được kí hiệu là $+$)):
![](https://i.imgur.com/BXWRXCG.png)
Mỗi công tắc được đặt tên với một chữ cái tương tự như trong đại số Boolean (![](https://i.imgur.com/dv5dCjZ.png) nghĩa là NOT W hoặc 1 - W)
Hãy nhớ lại mà xem, đầu tiên chủ cửa hàng mang ra một con mèo đực màu nâu vàng chưa bị triệt sản. Vậy ta sẽ đóng những công tắc thỏa mãn lại:
![](https://i.imgur.com/Vcxz87O.png)
Mặc dù M, T và NOT W đã được đóng lại, chúng ta vẫn không có con đường nào hoàn chỉnh để dẫn điện cho bóng đèn. Tiếp theo, ông chủ mang ra một con mèo cái màu trắng và đã bị triệt sản:
![](https://i.imgur.com/ZkunGwk.png)
Và bóng đèn vẫn tắt. Cuối cùng ông chủ mang ra con mèo cái màu xám đã bị triệt sản:
![](https://i.imgur.com/TkYYrsh.png)
Và nó là đủ để thắp sáng bóng đèn và chỉ ra rằng con mèo phù hợp với các điều kiện của khác hàng. -->
