Download as pdf or txt
Download as pdf or txt
You are on page 1of 55

Chương 2.

Đại số Boole
(đại số logic-nhận 2 gtri 0 hoặc 1)

Các tiên đề và định lý đại số Boole


Các tiên đề của đại số Boole
 B={
 Là 1 tập hợp hữu hạn
 Cộng logic (+), nhân logic (*), bù
logic/nghịch đảo logic (-)
 Hai phần tử 0 và 1

} lập thành 1 cấu trúc đại số Boole


Các tiên đề của đại số Boole (tiếp)
 Với mọi x,y є B thì x+y є B, x*y є B và thỏa mãn 5 điều kiện sau:
 Tiên đề giao hoán: Mọi x,y єB: x+y=y+x
 Tiên đề phối hợp: Mọi x,y,z єB: (x+y)+z=x+(y+z)=x+y+z
(x.y).z=x.(y.z)=x.y.z
 Tiên đề phân phối: Mọi x,y,z єB:
x.(y+z)=x.y+x.z
x+(y.z)=(x+y).(x+z)
 Tiên đề về phần tử trung hòa: Trong tập B tồn tại 2 phần tử trung hòa là phần tử
đơn vị và phần tử không. Phần tử đvi kí hiệu là 1, phần tử không kí hiệu là 0.
Mọi x єB:
x+1=1
x. 1=x
x+0=x
x.0 =0
Các tiên đề của đại số Boole (tiếp)

 Tiền đề về phần tử bù: với mọi x єB, bao giờ cũng


tồn tại phần tử bù tương ứng, kí hiệu ā sao cho
luôn thỏa mãn:
 ā+a=1; ā.a=0
Các định lý cơ bản của đại số Boole
 Đối ngẫu trong đại số Boole:
 Hai mệnh đề (2 biểu thức, 2 định lý) được gọi là đối ngẫu
với nhau nếu trong mệnh đề này người ta thay phép toán
cộng thành phép toán nhân và ngược lại, thay 0 bằng 1 và
ngược lại, thì sẽ suy ra được mệnh đề kia.

 Khi 2 mệnh đề đối ngẫu với nhau, nếu 1 trong 2 mệnh đề


được chứng minh là đúng thì mệnh đề còn lại đúng.

 Ví dụ 1: x.(y+z)=(x.y)+(x.z)x+(y.z) =(x+y).(x+z)

 Ví dụ 2: Hai mệnh đề đối ngẫu a+ā=1 a.ā=0


 Ba phép tính cơ bản trong đại số Boole
 Phép cộng logic: y=x1+x2
 Phép nhân logic: y=x1.x2
Phép phủ định:

yx
Các định lý cơ bản của đại số Boole (tiếp)
 Các định lý
 a) Định lý 1 (định lý về phần tử bù là duy nhất):
Mọi x, y єB, ta có:
a+b=1
a.b=0 b=ā là duy nhất (a và b là 2 phần tử bù của
nhau)
Phần tử bù của phần tử bất kỳ là duy nhất
 b) Định lý 2 (định lý về sự đồng nhất của phép cộng và
phép nhân logic)
Mọi x єB, ta có:
x+x+…+x=x
x.x….x=x
Các định lý cơ bản của đại số Boole (tiếp)
 c) Định lý 3 (định lý về phủ định 2 lần)
Mọi x єB, ta có:
xx
 d) Định lý 4 (định lý De Morgan)
Mọi x,y,z єB, ta có:
x  y  z  x. y.z
x. y.z  x  y  z
Hệ quả:
Mọi x,y,z єB, ta có:
Các định lý cơ bản của đại số Boole (tiếp)
 e) Định lý 5 (định lý dán):

 e) Định lý 6 (định lý nuốt):

 e) Định lý 7 (qui tắc tính đối với hằng):


Chương 2.

Hàm Boole và các phương pháp biểu diễn


Hàm Boole
 Định nghĩa:
 Hàm Boole là 1 ánh xạ từ đại số Boole vào chính nó. Nghĩa
là với mọi x, y є B được gọi là các biến Boole thì hàm
Boole, kí hiệu là f, được hình thành trên cơ sở các biến
Boole bằng các phép toán +(cộng logic), x/.(nhân logic),
nghịch đảo logic (-).
 Hàm Boole đơn giản nhất là hàm Boole theo 1 biến Boole,
được cho như sau:

 Trong trường hợp tổng quát, hàm Boole n biến được kí hiệu
như sau:
Hàm Boole (tiếp)
 Các tính chất của hàm Boole:

Vậy, 1 hàm Boole f cũng được hình thành trên cơ sở


liên kết các hàm Boole bằng các phép toán +, x/.,
và nghịch đảo (-) logic
Hàm Boole (tiếp)

 Giá trị của hàm Boole:


Hàm Boole (tiếp)
 Ví dụ 1:
 Xét hàm f(x1,x2)=x1+x2
 Xét trong tập B=B*={0,1} ta có
các trường hợp sau (đây là
phép cộng logic hay còn gọi
phép toán HOẶC/phép OR):
 X1=0,x2=0 f(0,0)=0+0=0
 X1=0,x2=1 f(0,1)=0+1=1
 X1=1,x2=0 f(1,0)=1+0=1
 X1=1,x2=1 f(1,1)=1+1=1
Bảng giá trị của hàm trên
Hàm Boole (tiếp)
 Ví dụ 2:
 Xét hàm cho bởi biểu thức sau: f(x1,x2,x3)=x1+x2.x3
 Xét tập B=B*={0,1}. Hoàn toàn tương tự ta lập được bảng
giá trị của hàm:
Các phương pháp biểu diễn hàm Boole

 Phương pháp biểu diễn hàm bằng bảng giá trị


(còn gọi là bảng chân trị, hay bảng chân lý – TRUE
TABLE)(bảng chia làm 2 phần):
 Phần dành cho biến
 Phần dành cho hàm
 Vậy 1 hàm Bool n biến, bảng chân lý sẽ có:
 Cột? (ứng với giá trị của biến vào và giá trị của hàm ra!)
 Giá trị khác nhau của tổ hợp biến?
Các phương pháp biểu diễn hàm Boole (tiếp)

 Ví dụ: Hàm 3 biến f(x1,x2,x3) có thể được cho bằng


bảng giá trị sau:
Các phương pháp biểu diễn hàm Boole (tiếp)

 Phương pháp giải tích: Đây là pp biểu diễn hàm


logic bằng các biểu thức đại số. PP này có 2 dạng
tổng của các tích số hoặc tích của các tổng số
 Dạng tổng của các tích số gọi là dạng chính tắc thứ nhất
(dạng chính tắc 1-CT1) – còn gọi là chuẩn tắc tuyển (CTT)
 Dạng tích của các tổng số gọi là dạng chính tắc thứ hai
(dạng chính tắc 2-CT2) – còn gọi là chuẩn tắc hội (CTH)
 Hai dạng chính tắc này là đối ngẫu nhau
Các phương pháp biểu diễn hàm Boole (tiếp)
 a) Dạng chính tắc 1 (tổng của các tích)
 Xét các hàm Boole 1 biến đơn giản, các trường hợp có thể
có:

Chúng ta chứng minh biểu thức tổng quát của hàm 1 biến số đối
với dạng CT1. Sau đó áp dụng biểu thức tổng quát của hàm 1
biến để tìm biểu thức TQ của hàm 2 biến với việc xem 1 biến là
hằng số. Cuối cùng ta suy ra biểu thức TQ của hamg logic n
biến cho trường hợp CT1 (tổng các tích số)
Các phương pháp biểu diễn hàm Boole (tiếp)
Các phương pháp biểu diễn hàm Boole (tiếp)
Các phương pháp biểu diễn hàm Boole (tiếp)
Các phương pháp biểu diễn hàm Boole (tiếp)
Kết luận:

ta đều có biểu thức tổng quát của hàm 1 biến viết theo dạng CT1 như sau:
Các phương pháp biểu diễn hàm Boole (tiếp)

 Biểu thức tổng quát của hàm 2 biến f(x1,x2)


 Biểu thức TQ giống với cách biểu diễn của hàm 1 biến, trong đó
xem 1 biến là hằng số
 Cụ thể, nếu xem x2 là hằng số, x1 là biến số và áp dụng biểu thức
tq của dạng CT1 cho hàm 1 biến, ta có:

 Bây giờ, các hàm f(0,x2), f(1,x2) trở thành các hàm 1 biến theo
biến số x2. Tiếp tục áp dụng biểu thức tq của dạng CT1 cho hàm
1 biến, ta có:
Các phương pháp biểu diễn hàm Boole (tiếp)

Suy ra:

Đây chính là biểu thức tq của dạng CT1 (dạng tổng của các tích
số) viết cho hàm Boole 2 biến số f(x1,x2)
Biểu thức tq này có thể biểu diễn bằng CT:

Trong đó e là số thập phân tương ứng với mã nhị phân


Các phương pháp biểu diễn hàm Boole (tiếp)


Các phương pháp biểu diễn hàm Boole (tiếp)
 Biểu thức tq dạng CT1 cho hàm Boole n biến f(x1,x2,…,xn):
Các phương pháp biểu diễn hàm Boole (tiếp)

 Ví dụ: Viết biểu thức tq của dạng CT1 (tổng của các tích số)
cho hàm Boole 3 biến f(x1,x2,x3) ?
Các phương pháp biểu diễn hàm Boole (tiếp)
 b) Dạng chính tắc 2 (dạng tích của các tổng số)
 Dạng chính tắc 2 là dạng đối ngẫu của dạng chính tắc 1, suy
ra biểu thức tq cho hàm Boole n biến có dạng:
Các phương pháp biểu diễn hàm Boole (tiếp)

 Ví dụ 1:
 Biểu thức cho hàm Boole 2 biến ở dạng chính tắc 2 (dạng tích

các tổng):

 Ví dụ 2:
 Biểu thức cho hàm Boole 3 (4,5,6) biến ở dạng chính tắc 2

(dạng tích các tổng)?


Các phương pháp biểu diễn hàm Boole (tiếp)
 Ví dụ: Hãy viết biểu thức biểu diễn cho hàm Boole 2 biến ở dạng CT1, với bảng
giá trị của hàm được cho như sau:

 Nhận xét:
 Dạng CT1 (tổng của các tích số), là dạng liệt kê tất cả các tổ hợp nhị phân các biến
vào sao cho tương ứng với những tổ hợp nhị phân đó giá trị hàm ra bằng 1chỉ cần
liệt kê những tổ hợp biến làm cho giá trị hàm ra bằng 1.
 Khi liệt kê, nếu biến tương ứng băng 1 được viết dưới dạng thật, nếu biến tương ứng
bằng 0 được viết dưới dạng bù.
Các phương pháp biểu diễn hàm Boole (tiếp)
 Ví dụ: Viết biểu thức biểu diễn hàm Boole 3 biến f(x1,x2,x3) ở dạng CT2 với
bảng giá trị của hàm được cho như sau:
Các phương pháp biểu diễn hàm Boole (tiếp)
 Áp dụng tiên đề về phần tử trung hòa 0 và 1, suy ra biểu thức rút gọn:

 Nhận xét:
 Dạng CT2 (tích của các tổng số), là dạng liệt kê tất cả các tổ hợp nhị phân
biến vào sao cho tương ứng với những tổ hợp đó giá trị hàm ra bằng 0chỉ
liệt kê những tổ hợp biến làm cho giá trị hàm ra bằng 0.
 Khi liệt kê nếu biến tương ứng bằng 0 được viết dưới dạng thật, nếu biến
tương ứng bằng 1 được viết dưới dạng bù.
Các phương pháp biểu diễn hàm Boole (tiếp)
 Ví dụ: (thiết kế mạch)
 Hãy thiết kế mạch điện sao cho khi công tắc 1 đóng thì đèn
đỏ, công tắc 2 đóng đèn đỏ, cả 2 công tắc đóng đèn đỏ?
 Giải:
 Qui định trạng của các công tắc và bóng đèn:
 Công tắc hở: 0 - Đèn tắt: 0
 Công tắc đóng: 0 - Đèn đỏ: 1
Ta có bảng trạng thái mô tả hoạt động của mạch:
Các phương pháp biểu diễn hàm Boole (tiếp)

 Từ bảng trạng thái có thể viết biểu thức của hàm 2 biến
f(x1,x2) theo dạng CT1 hoặc CT2:

 Từ biểu thức mô tả trạng thái tắt/đỏ của đèn f(x1,x2) thấy rằng có thể
thực hiện mạch bằng phần tử logic HOẶC có 2 lối vào (cổng OR 2 lối
vào).
Các phương pháp biểu diễn hàm Boole (tiếp)

 Bài tập áp dụng:


 Một hội đồng được lập ra để chấm điểm 1 người mẫu, gồm 3 thanh
viên. Mỗi thành viên có thể lựa chọn ĐỒNG Ý hoặc KHÔNG ĐỒNG
Ý. Kết quả gọi là ĐẠT khi đa số các thành viên trong hội đồng giám
khảo ĐỒNG Ý, ngược lại gọi là KHÔNG ĐẠT. Hãy thiết kế mạch để
giải quyết bào toán trên.
Các phương pháp biểu diễn hàm Boole (tiếp)


Các phương pháp biểu diễn hàm Boole (tiếp)

 Biểu diễn bằng bảng Karnaugh (bìa Các-nô,K):


 Đây là cách biểu diễn lại của PP bảng dưới dạng bảng gồm
các ô vuông như hình bên
 Trên bảng này, các biến vào được bố trí
theo hàng ngang hoặc cột dọc.
 Trong TH số lượng biến vào là chẵn, bố trí
số lượng biến vào theo hàng ngang bằng
số lượng biến vào theo cột dọc cảu bảng.
 Trong TH số lượng biến vào là lẻ, bố trí
lượng biến vào theo hàng ngang nhiều hơn
lượng biến vào theo cột dọc 1 biến, hoặc
ngược lại.
Các phương pháp biểu diễn hàm Boole (tiếp)

 Thứ tự bố trí hay sắp xếp các tổ hợp giá trị của biến vào theo hàng
ngang hoặc theo cột dọc của bảng Karnaugh tuân thủ theo mã
Gray
 Giá trị ghi trong mỗi ô vuông này chính là giá trị của hàm ra tương
ứng với các tổ hợp giá trị của biến vào. Ở những ô mà giá trị của
hàm không xác định (tùy ý, 0 hoặc 1), ghi ký hiệu là x.

 Nếu hàm có n biến vào, sẽ có 2n ô vuông

 PP biểu diễn hàm bằng bảng Karnaugh chỉ thích hợp cho hàm có
tối đa 6 biến, nhiều hơn, việc biểu diễn sẽ rất rắc rối.
Các phương pháp biểu diễn hàm Boole (tiếp)
 Bảng Karnaugh cho hàm 2, 3, 4, 5 biến:
TỐI THIỂU HÓA HÀM BOOLE
Đại cương
 Trong thiết bị máy tính người ta thương thiết
kế nhiều module, mỗi module này được đặc
trưng bằng 1 phương trình logic.
 Việc đạt được độ ổn định cao hay không là
tùy thuộc vào phương trình biểu diễn chúng ở
dạng tối thiểu hóa hay chưa.
 Tối thiểu hóa hàm logic (PT logic được
biểu diễn ở dạng gọn nhất – số lượng các
phép tính và số lượng các số được biểu diễn
dưới dạng thật hoặc bù là ít nhất).
Đại cương (tiếp)
 Kỹ thuật để đạt được sự thực hiện hàm Boole một cách đơn giản nhất,
phụ thuộc vào 3 yếu tố:
 Số lượng các phép tính và số lượng các số được biểu diễn dạng thật hoặc
bù là ít nhất, điều này đồng nghĩa với việc số lượng dây nối và số lượng
biến vào là ít nhất.
 Số lượng cổng cần thiết để thực hiện mạch phải ít nhất, chính là số lượng
cổng xác định kích thước mạch. (Một thiết kế đơn giản nhất phải ứng với số
lượng cổng ít nhất).
 Số mức logic của các cổng. Giảm số mức logic sẽ giảm trễ tổng cộng của
mạch vì tín hiệu qua ít cổng hơn. Tuy nhiên nếu chú trọng đến vấn đề giảm
trễ sẽ phải trả giá số lượng cổng tăng lên.
 Bởi vậy trong thực tế không phải lúc nào cũng đạt được lời giải tối ưu cho
bài toán tối thiểu hóa.
Các bước tiến hành tối thiểu hóa

 Dùng các phép tối thiểu để tối thiểu hóa hàm logic

 Rút ra những thừa số chung nhằm mục đích tối thiểu

hóa thêm 1 bước nữa các pt logic


Các PP tối thiểu hóa
 Có nhiều PP, tập trung NC 2 PP:
 Biến đổi đại số (PP giải tích): dựa vào các
tiên đề, định lý, tính chất của hàm Boole.

 Thuật toán (PP bảng Karnaugh-bìa K)


PP biến đổi đại số
 Dựa vào các tính chất, tiên đề, định lý của hàm Boole.
 Ví dụ 1: Tối thiểu hóa hàm sau:
PP biến đổi đại số (tiếp)
 Ví dụ 2: Hàm 3 biến f(x1,x2,x3):
PP biến đổi đại số (tiếp)
 Ví dụ 3: Rút gọn biểu thức sau:
PP bảng Karnaugh
 Qui tắc về ô kế cận: “Hai ô được gọi là kế cận nhau là 2 ô mà khi ta đi
từ ô này sang ô kia chỉ làm thay đổi giá trị của 1 biến”

 Qui tắc chung: gom (kết hợp) các ô kế cận lại với nhau
 Khi gom 2 ô kế cận sẽ loại được 1 biến (2=21 – loại được 1 biến)
 Khi gom 4 ô kế cận vòng tròn sẽ loại được 2 biến (4=22 – loại được
2 biến)
 Khi gom 8 ô kế cận vòng tròn sẽ loại được 3 biến (8=23 – loại được
3 biến)
Tổng quát: khi gom 2n ô kế cận vòng tròn sẽ loại được n biến.
Những biến bị loại là những biến khi ta đi vòng qua các ô kế cận
mà giá trị của chúng thay đổi.
PP bảng Karnaugh (tiếp)
 Lưu ý:
 Vòng gom được gọi là hợp lệ là khi trong vòng
gom đó có ít nhất 1 ô chưa thuộc vòng gom nào.
 Các ô kế cận muốn gom được phải là ô kế cận
vòng tròn, nghĩa là ô kế cận cuối cùng cũng là ô
kế cận đầu tiên.
 Việc kết hợp những ô kế cận với nhau tùy thuộc
vào việc biểu diễn hàm theo CT1 hay CT2:
 CT1: Ta chỉ quan tâm những ô kế cận có gtri bằng 1 và
tùy định. Kết quả mỗi vòng gom lúc này sẽ là 1 tích rút
gọn. Kết quả của hàm bd theo dạng CT1 sẽ là tổng của
tất cả các tích số rút gọn của tất cả các vòng gom.
 CT2: Chỉ quan tâm những ô kế cận có gtri bằng 0. Kq
mỗi vòng gom là 1 tổng rút gọn. Kết quả của hàm là tích
của tất cả các tổng rút gọn của tất cả các vòng gom.
PP bảng Karnaugh (tiếp)
 Ta quan tâm đến những ô tùy định (x) sao cho những ô này
kết hợp với những ô có giá trị bằng 1 (CT1) hoặc bằng 0
(CT2) làm cho số lượng ô kế cận 2n là lớn nhấtmục
đích thêm vào vòng gom để rút gọn các biến.

 Các vòng gom bắt buộc phải phủ hết các ô có gtri bằng 1
(CT1) hoặc bằng 0 (CT2) thì kết quả tối thiểu hóa mới hợp
lệ.
PP bảng Karnaugh (tiếp)
 Ví dụ 1: Tối thiểu hóa hàm sau
PP bảng Karnaugh (tiếp)
 Ví dụ 2:
PP bảng Karnaugh (tiếp)
 Tối thiểu theo CT1: Có 2 vòng gom phủ hết các giá trị bằng 1
của hàm: vòng gom 1 gồm 4 ô kế cận, vòng gom 2 gồm 2 ô kế
cận.
 Vòng gom 1: Có 4 ôloại được 2 biến x2,x3 (có giá trị thay đổi
01khi đi từ ô này sang ô kia).
 Vòng gom 2: có 2 ôloại được 1 biến x1(do có giá trị thay đổi từ
01)
 Kết hợp 2 vòng gom ta có kq tối giản theo CT1:
PP bảng Karnaugh (tiếp)
 Tối thiểu theo CT2: Ta quan tâm đến những ô có giá trị bằng 0
và tùy định. Có 2 vòng gom, mỗi vòng đều có 2 ô kế cận.

You might also like