nh+¦m 5 - -Éߦíi sß+æ bool
TRANSCRIPT
Lớp MAT04 Giảng viên: TS. Cao Thanh Tình
Đại số Bool
1
Nhóm 4: Lê Bá Nhựt -10520397 Lê Thị Hường -10520528 Lê Thị Ánh Tuyết -10520641 Nguyễn Đức Duy - 10520502
Nội Dung Chính
Hàm Bool Các dạng biểu diễn hàm Bool Biểu đồ Karnaugh cho hàm Bool Thuật toán tìm công thức đa thức tối tiểu cho hàm Bool Hàm Bool của mạch điện Bài tập
2
HÀM BOOL
Đại số Bool
Nội Dung Chính (tt) I. Hàm Bool
1. Đại số Bool nhị phân 2. Hàm Bool 3. Đại số Bool của các hàm Bool
II. Các Dạng Biểu Diễn Hàm Bool 1. Từ đơn 2. Đơn thức 3. Đơn thức tối tiểu trong Fn
4. Đa thức trong Fn
5. Dạng nối rời chính tắc của hàm Bool 6. Cách tìm dạng nối rời chính tắc của hàm Bool 7. Mệnh đề 8. So sánh các dạng đa thức của hàm Bool 9. Công thức đa thức tối tiểu cho hàm Bool
Đại số Bool
3
Nội Dung Chính (tt) III. Biểu Đồ Karnaugh Cho Hàm Bool
1. Bảng mã 2. Biểu đồ Karnaugh cho hàm Bool 3. Nhận xét 4. Tính chất 5. Biểu đồ của 1 đơn thức 6. Biểu đồ của đa thức 7. Tế bào và tế bào lớn
IV. Thuật Toán Tìm Công Thức Đa Thức Tối Tiểu Cho Hàm Bool 1. Họ phủ và họ phủ tối tiểu 2. Thuật toán
V. Đại Số Các Mạch Điện 1. Hàm Bool của mạch điện 2. Các loại cổng cớ bản 3. Thiết kế mạng các cổng tổng hợp hàm Bool 4. Tối ưu hóa việc thiết kế mạng các cổng tổng hợp hàm Bool
VI. Bài Tập
Đại số Bool
4
HÀM BOOL
Đại số Bool 5
I. Hàm Bool
Đại số Bool
6
George Boole (1815-1864)
I. Hàm Bool 1. Đại số Bool nhị phân: Đại số bool của các số nhị phân cũng thỏa các trường hợp (luật) như trong
mệnh đề.
Đại số Bool
7
Luât phủ định kép ¬ ¬E <=> E
Luật lũy đẳng E ˄ E <=> E
E ˅ E <=> E
Luật giao hoán F˄ E <=> E ˄ F
F ˅ E <=> E ˅ F
Luật kết hợp (E ˄ F) ˄ G <=> E ˄ (F ˄ G)
(E ˅ F) ˅ G <=> E ˅ (F ˅ G)
Luật phân phối E ˄ (G ˅ F) <=> (E ˄ G) ˅ (E ˄ F)
E ˅ (G ˄ F) <=> (E ˅ G) (E ˅ F)
Luật phủ định De-Morgan ¬ (E ˄ F) <=> ¬E ˅ ¬F
¬ (E ˅ F) <=> (¬E) ˄ (¬F)
Luật hấp thụ E ˄ (E ˅ F) <=> E ; E ˅ (E ˅ F) <=> E
Luật trung hòa E ˄ 1 <=> E
E ˅ 0 <=> E
Luật thống trị E ˄ 0 <=> 0
E ˅ 1 <=> 1
Luật bù E ˄ ¬E <=> 0
E ˅¬E <=> 1
Luật kéo theo E → F <=> ¬E ˅ F
Phủ định kéo theo ¬( E → F) <=> E ˄ ¬F
I. Hàm Bool 2. Hàm Bool:
a. Định nghĩa Cho và . Hàm Bool n biến là ánh xạ f : Bn → B, trong đó B = {0, 1} Một hàm Bool n biến là một hàm số có dạng f = f(x1 ,x2,…,xn), trong đó
mỗi biến trong x1, x2,…, xn và f chỉ nhận giá trị trong B = {0, 1}
Ký hiệu Fn để chỉ tập các hàm Bool n biến.
Ví dụ: Biểu thức logic E = E(p1,p2,…,pn) theo n biến p1, p2,…, pn là một hàm Bool n biến.
Đại số Bool
8
1≥n Nn∈
I. Hàm Bool 2. Hàm Bool:
b. Bảng chân trị Xét hàm Bool n biến f(x1,x2,…,xn) Vì mỗi biến xi chỉ nhận hai giá trị 0, 1 nên chỉ có 2n trường hợp của bộ biến (x1,x2,…,xn).
Do đó, để mô tả f ta có thể lập bảng gồm 2n hàng ghi tất cả các giá trị của f tùy theo 2n trường hợp của biến. Ta gọi đây là bảng chân trị của f.
Đại số Bool
9
I. Hàm Bool 2. Hàm Bool:
b. Bảng chân trị Ví dụ: cho mạch điện như hình vẽ
Tùy theo cách trạng thái cầu dao A, B, C mà ta sẽ có dòng điện đi qua
MN. Bảng giá trị
Đại số Bool
10
A
C
M N B
I. Hàm Bool 3. Các phép toán trên hàm Bool:
Với ta định nghĩa tổng, tích, bù hàm Bool của f và g như sau
Đại số Bool
11
, Fgf n∈
)( gfgf +=∨
gffggf .==∧
ff −=1
I. Hàm Bool 3. Các phép toán trên hàm Bool: Ví dụ: n = 2
Đại số Bool
12
X1 1 1 0 0
X2 1 0 1 0
0(x1, x2) 0 0 0 0
1(x1, x2) 1 1 1 1
f(x1, x2) 0 1 0 1
g(x1, x2) 1 1 0 0
¬ f(x1, x2) 1 0 1 0
¬ g(x1, x2) 0 0 1 1
f g(x1, x2) 0 1 0 0
f V g(x1, x2) 1 1 0 1
Các Dạng Biểu Diễn Hàm Bool
Đại số Bool 13
II. Các Dạng Biểu Diễn Hàm Bool 1. Từ đơn: Xét tập hợp các hàm Bool của n biến Fn theo n biến x1 ,x2,…,xn. Mỗi hàm bool xi hay ¬ xi được gọi là từ đơn. Ví dụ: x1, x2, x3,…
2. Đơn thức: Là tích khác không của một số hữu hạn từ đơn. Hay có thể hiểu là: Tích Bool của 1 hay nhiều từ đơn sao cho tích này khác 0. Ví dụ: Trong F4 xét x3, x1x2, x1x2x3x4 (bậc của đơn thức là số thành phần x) Trong Fn các đơn thức có bậc từ 1 đến n x, ¬x, y, ¬y, z, ¬z, t, ¬t là các từ đơn x¬yz ¬t, ¬x ¬yt là các đơn thức
Đại số Bool
14
II. Các Dạng Biểu Diễn Hàm Bool 3. Đơn thức tối tiểu trong Fn:
Là đơn thức có bậc cao nhất bằng n trong Fn.
Dạng tổng quát m = y1y2...yn, yi = xi hoặc ¬xi 1 ≤ i ≤n
Ví dụ: Trong F4 xét các đơn thức tối tiểu bậc 4
x1x2x3x4, x1¬x2x3x4, x1x2x3x4, ¬x1¬x2¬x3¬x4
4. Đa thức trong Fn:
Là tổng Bool các đơn thức f = u1 V u2 V u3 V…V uk, trong đó ui là các đơn thức. Ví dụ: Trong F5 xét đa thức f(x1,x2,x3,x4) = x1¬x5 V ¬x2x3¬x4 V ¬x3 V ¬x1x3x4x5 => Tổng Bool 4 đơn thức f(1,0,1,1,0)=1¬0V¬01¬1V¬1V¬1110 = 1
Đại số Bool
15
II. Các Dạng Biểu Diễn Hàm Bool 5. Dạng nối rời chính tắc của hàm Bool: Cho f thuộc Fn , f có thể viết dưới dạng sau f = m1 V m2 V m3 V …V mk, (*) với mi là các đơn thức tối tiểu bậc = n (i = 1…n ) (*) được gọi là dạng nối rời chính tắc của f Ví dụ: Trong F4 có dạng biểu diễn sau đây f(x,y,z,t) = x¬y¬zt V ¬xyzt V xy¬z¬t có dạng (*)
Đại số Bool
16
II. Các Dạng Biểu Diễn Hàm Bool 6. Cách tìm dạng nối rời chính tắc của hàm Bool: Có 2 cách để xác định dạng nối rời chính tắc của một hàm Bool
Cách 1: Bổ sung từ đơn còn thiếu vào các đơn thức
Bước 1: Khai triển hàm Bool thành tổng của các đơn thức Bước 2: Với mỗi từ đơn thu được ở bước 1, ta nhân đơn thức đó với
các tổng dạng với xi là những từ đơn bị thiếu trong đơn thức đó Bước 3: Tiếp tục khai triển hàm thu được ở bước 2 và loại bỏ những
đơn thức bị trùng. Công thức đa thức thu được chính là dạng nối rời chính tắc của hàm Bool ban đầu
Ví dụ: Trong F3 tìm dạng nối dời chính tắc f(x,y,z)= ¬x V ¬yz V xy¬z
f = ¬x(y V ¬y).(z V ¬z) V (¬x V x)¬yz V xy¬z f = ¬xyz V ¬xy¬z V ¬x¬yz V ¬x¬y¬z V ¬x¬yz V x¬yzVxy¬z (*) (*) Chính là dạng nối rời chính tắc
Đại số Bool
17
II. Các Dạng Biểu Diễn Hàm Bool 6. Cách tìm dạng nối rời chính tắc của hàm Bool: Có 2 cách để xác định dạng nối rời chính tắc của một hàm Bool
Cách 2: dùng bảng chân trị. Để ý đến các vector bool trong bảng chân trị
mà f=1, tại đó Vector bool thứ k là u1, u2,…, un mà f(u1, u2,…, un) = 1. Ví dụ: cho f(x,y) = x V ¬y. Tìm biểu thức dạng nối rời chính tắc của f Lập bảng chân trị của f Các thể hiện làm cho f = 1 là 00, 10, 11 lập được các từ tối tiểu tương ứng.
Vậy dạng nối rời chính tắc của f là f(x,y) = ¬x ¬y V x ¬y V xy
Đại số Bool
18
II. Các Dạng Biểu Diễn Hàm Bool 7. Mệnh đề: f ∈ Fn Khi đó,
f có thể có nhiều dạng đa thức khác nhau , ta chọn ra các công thức đơn giản nhất có thể được. Chúng chính là các công thức đa thức tối tiểu của f.
f chỉ có một dạng nối dời chính thức duy nhất (không tính sự hoán đổi của các đơn thức).
Đại số Bool
19
II. Các Dạng Biểu Diễn Hàm Bool 8. So sánh các dạng đa thức của hàm Bool: f ∈ Fn và f có 2 dạng đa thức f = u1 V u2 V… V up (1) f = v1 V v2 V… V vq (2)
a. Ta nói (1) và (2) đơn giản ngang nhau nếu p = q deg(uj) = deg(vj) (1 ≤ j ≤ p) b. Ta nói (1) đơn giản hơn (2) hay (2) phức tạp hơn (1) p ≤ q
deg(uj) ≤ deg(uj) (1 ≤ j ≤ p) chú ý:
Có thể hoán vị v1, v2, …,vq trước khi so sánh bậc nếu cần thiết Có thể có những cặp đa thức không so sánh được
Đại số Bool
20
II. Các Dạng Biểu Diễn Hàm Bool 8. So sánh các dạng đa thức của hàm Bool: Ví dụ:
a. f ∈ F4 có 3 dạng đa thức f(x,y,z,t) = x ¬y ¬t V ¬xyz V x ¬z ¬ t V xyz (1) = x ¬y ¬t V ¬xyz V xy ¬z V yzt (2) = x ¬y ¬t V ¬xyzt V ¬xyz ¬t V xy ¬z V yzt (3) (1) và (2) đơn giản ngang nhau vì p = q = 4 deg(uj) = deg(vj) = 3 (2) đơn giản hơn (3) hay (3) phức tạp hơn (2) vì q = 4 < r = 5 deg(vj) ≤ deg(qj)
Đại số Bool
21
II. Các Dạng Biểu Diễn Hàm Bool 8. So sánh các dạng đa thức của hàm Bool: Ví dụ:
b. g ∈ F4 có 2 dạng đa thức g(x,y,z,t) = x ¬yz V z ¬t V ¬xyz V ¬xy ¬zt (4) = z ¬t V x ¬yzt V ¬xyzt V ¬xy ¬zt (5) ta thấy: p = q = 4 d(u1) > d(v1); d(u2) < d(v2) nên cần phải hoán vị (5) x ¬yzt V z ¬t V ¬xyzt V ¬xy ¬zt (5`) (q` = 4) (4) đơn giản hơn 5` vì p = q` = 4 deg(uj) ≤ deg(wj)
Đại số Bool
22
BIỂU ĐỒ KARNAUGH
Đại số Bool 23
III. Biểu Đồ Karnaugh 1. Công thức đa thức tối tiểu: Với f ∈ Fn khi đó:
f có thể có 1 hay nhiều dạng đa thức khác nhau. Ta chọn ra các dạng đa thức đơn giản nhất có thể được, đó chính là các công thức đa thức tối tiểu của hàm bool f.
Ta có thể tìm các đa thức tối tiểu của hàm bool bằng phương pháp biểu đồ karnaugh(Hàm bool không quá 4 biến).
Đại số Bool
24
III. Biểu Đồ Karnaugh 2. Bảng mã: B = {0;1}
Bảng mã cho B2 ( 2 biến bool x và y)
11 01 10 00
xy
y
x
Bảng mã cho B3 (3 biến bool x, y, z)
x x101 111 011 001 100 110 010 000
x x
yy y yzz
Đại số Bool
25
III. Biểu Đồ Karnaugh
x x x x
yy y y
z
z
Bảng mã cho B4 (4 biến pool x, y, z, t)
t
t1010 1110 0110 0010 1011 1111 0111 0011
1001 1101 0101 0001
1000 1100 0100 0000
t
t
z
z
Đại số Bool
26
III. Biểu Đồ Karnaugh 3. Ghi chú:
Khái niệm kề nhau trong bảng mã được hiểu như sau:
Dòng (cột) 1 kề với dòng (cột) 2 Dòng (cột) 2 kề với dòng (cột) 3 Dòng (cột) 3 kề với dòng (cột) 4 Dòng (cột) 4 kề với dòng (cột) 1
2 ô kề nhau trong bảng mã có mã số sai khác nhau 1 vị trí
Đại số Bool
27
4. Biểu đồ Karnaugh cho hàm Bool:
III. Biểu Đồ Karnaugh f ∈ Fn (n ≤ 4) và xét bảng chân trị của f.
Ký hiệu: kar(f) – biểu đồ karnaugh của f
Ta quan tâm các vector bool mà f =1tại đó. Đánh dấu các ô đó của bảng mã. Tập hợp các ô được đánh dấu gọi là biểu đồ karnaugh của hàm bool F.
x 1 1 1 1 0 0 0 0 y 1 1 0 0 1 1 0 0 z 1 0 1 0 1 0 1 0
f(x,y,z) 0 1 0 1 1 0 1 1 x
101 111 011 001 100 110 010 000
x
yyzz
x x
y y
S=kar(f)
Ví dụ: f ∈ F3 có bảng chân trị
Đại số Bool
28
5. Nhận xét: Một hàm bool f ∈ Fn được xác định nếu ta biết 1 trong 4 yếu tố sau
đây: Bảng chân trị của f. Một dạng đa thức của f. Dạng nối rời chính tắc (1 dạng đa thức đặc biệt cùa f). S = kar(f) ((n ≤ 4)).
III. Biểu Đồ Karnaugh
Đại số Bool
29
III. Biểu Đồ Karnaugh 6. Tính chất: f, g f ∈ Fn (n ≤ 1)
a. Kar(¬f): phần bù của biều đồ kar(f) trong bảng. b. Kar(f g) = kar(f.g) = kar(f) kar(g). c. Kar(f V g) = kar(f) V kar(g).
Đại số Bool
30
7. Biểu đồ karnaugh của một đơn thức: Cho đơn thức m ∈ Fn (n ≤ 4)
a. m là đơn thức bậc p (1 ≤ p ≤ n kar(m) là hình chữ nhật (mở rộng) có 2n-p ô.
b. m là đơn thức tối tiểu bậc n kar(m) là hình chữ nhật (mở rộng) có 2n-n =1 ô.
III. Biểu Đồ Karnaugh
Ví dụ: n=4 4 1a. m=z kar(z) có 2 8 ô−=> = 4 2b. m = yt=> kar(yt) có2 = 4 ô−
4 3c. m=xyz => kar(xyz)có2 = 2 ô − ( ) 4 4d. m = xyzt => kar xyzt có2 = 1 ô−
t
Đại số Bool
31
8. Biểu đồ karnaugh của một đa thức: Cho đa thức f ∈ Fn (n ≤ 4) f = u1 V u2 V … V uk (u1, u2 ,…,uk các đơn thức) Ta có: kar(f) = kar(u1) V kar(u2) V kar(u3) V kar(u4)
III. Biểu Đồ Karnaugh
Ví dụ: f ∈ F4 có ( )f x, y, z, t = xyzt xyt yz z∨ ∨ ∨
( ) ( ) ( )kar f = kar(xyzt) kar xyt kar(yz) kar z∨ ∨ ∨( )S = kar f 12 ô=
Đại số Bool
32
9. Tế bào và tế bào lớn f ∈ Fn (n ≤ 4) và S = kar(f)
Một tế bào trong S là một hình chữ nhật (mở rộng) có 2r ô (r = 0, 1, 2, 3, 4 ; 2r = 1, 2, 4, 8, 16).
Một tế bào lớn trong S là tế bào tối đại trong S (không có tế bào của S chứa nó và to hơn nó).
III. Biểu Đồ Karnaugh
Ví dụ 1: Các tế bào 1 ô và 2 ô
1
2
3
4
T (1 ô) = xyzt.
T (1 ô) = xyzt.T (2 ô) = yzt.
T (2 ô) = yzt.Đại số Bool
33
9. Tế bào và tế bào lớn:
III. Biểu Đồ Karnaugh
Ví dụ 2: Các tế bào lớn 4 ô
Ví dụ 3: Các tế bào lớn 8 ô
1
2
3
4
T (8 ô) = x.
T (8 ô) = y.
T (8 ô) = z.
T (8 ô) = t.
1
2
3
4
T (4 ô) = yz.
T (4 ô) = yt.
T (4 ô) = zt.T (4 ô) = yz.
Đại số Bool
34
III. Biểu Đồ Karnaugh 9. Tế bào và tế bào lớn:
Ví dụ 4: Các tế bào lớn:
T1(4 ô), S chứa T1 và không có tế bào T’1 thỏa T’1 chứa T1 => T1 lớn T2(2 ô), T1 chứa T2 => T2 không lớn T3(2 ô), T1 chứa T3 => T3 không lớn T4(2ô), S chứa T4 và không có tế bào T’4 thỏa T’4 chứa T4 => T4 lớn
Đại số Bool
35
THUẬT TOÁN TÌM CÔNG THỨC ĐA THỨC TỐI TIỂU
Đại số Bool 36
Đại số Bool
37
IV. Thuật Toán Tìm Công Thức Đa Thức Tối Tiểu Cho Hàm Bool 1. Họ phủ và họ phủ tối tiểu: Cho các tập hợp A1, A2,…, Ak và S
Nếu A1 V A2 V…V Ak = S thì ta nói {A1, A2,…, Ak} là một họ phủ của S. Nếu A1 V A2 V…V Ak = S ∀ j ∈ {1, 2,…,k}:A1 V Aj-1 V Aj+1 V…V Ak ⊊ S thì ta nói
{A1, A2,…, Ak} là một họ phủ tối tiểu của S.
Ví dụ: S = {1, 2, 3, 4, 5, 6} a. A1 = {1, 5}, A2 = {2, 3}, A3= {4, 5, 6}Type equation here.
A1 V A2 V A3 = S A2 V A3 ⊊ S => {A1, A2,A3} là một họ phủ tối tiểu của S A1 V A3 ⊊ S A1 V A3 ⊊ S
b. B1= {1, 4}, B2 = {3, 5, 6}, B3= {2, 5}, B4= {1, 3} B1 V B2 V B3 V B4 = S Nhưng B1 V B2 V B3 = S => {B1,B2,B3, B4} là một họ phủ chưa tối tiểu của S
IV. THUẬT TOÁN TÌM CÔNG THỨC ĐA THỨC TỐI TIỂU
Thuật toán tìm đa thức tối tiểu Bước 1: Vẽ biểu đồ Karnaugh của f. Bước 2: Xác định tất cả các tế bào lớn của kar(f). Bước 3:Chọn các ô chỉ thuộc một tê ́ bào lớn
Đại số Bool
38
IV. THUẬT TOÁN TÌM CÔNG THỨC ĐA THỨC TỐI TIỂU Bước 4: Xác định các phủ tối tiểu gồm các tế bào lớn
Nếu các tế bào lớn chọn được ở bước 3 đã phủ được kar(f) thì ta có duy nhất một phủ tối tiểu gồm các tế bào lớn của kar(f). Nếu các tế bào lớn chọn được ở bước 3 chưa phủ được kar(f) thì: Xét một ô chưa bị phủ, sẽ có ít nhất hai tế bào lớn chứa ô này, ta chọn một trong các tế bào lớn này. Cứ tiếp tục như thế ta sẽ tìm được tất cả các phủ gồm các tế bào lớn của kar(f). Loại bỏ các phủ không tối tiểu, ta tìm được tất cả các phủ tối tiểu gồm các tế bào lớn của kar(f).
Đại số Bool
39
IV. THUẬT TOÁN TÌM CÔNG THỨC ĐA THỨC TỐI TIỂU Bước 5: Xác định các công thức đa thức tối tiểu của f. Từ các phủ tối tiểu gồm các tế bào lớn của kar(f) tìm được ở bước 4 ta xác định được các công thức đa thức tương ứng của f Loại bỏ các công thức đa thức mà có một công thức đa thức nào đó thực sự đơn giản hơn chúng. Các công thức đa thức còn lại chính là các công thức đa thức tối tiểu của f.
Đại số Bool
40
IV. THUẬT TOÁN TÌM CÔNG THỨC ĐA THỨC TỐI TIỂU Ví dụ: f ∈ F4:
𝑓 = 𝑥𝑥𝑥 + 𝑥𝑥̅𝑡 + 𝑥𝑥̅𝑡̅ + �̅�𝑥𝑥𝑡 + �̅�𝑥�𝑡 Ta có biểu đồ S = 𝑘𝑘𝑘(𝑓) 𝑥 𝑥 𝑥 𝑥 𝑡
𝑡 𝑡 𝑡 Ta viết ra các tế bào lớn:
𝑇1 = 𝑥𝑥; 𝑇2= 𝑥𝑥̅; 𝑇3= 𝑥𝑥𝑡; 𝑇4 = �̅�𝑥𝑡; 𝑇5 = �̅�𝑥�𝑡; 𝑇5 = 𝑥�𝑥̅𝑡,
Đại số Bool
41
x x x x
x x x x
IV. THUẬT TOÁN TÌM CÔNG THỨC ĐA THỨC TỐI TIỂU
Đại số Bool
42
Ta bắt đầu với những ô chỉ thuộc một tế bào lớn 1,2 ∈ 𝑇1 và 4,1 ∈ 𝑇2
Ta được 𝑇1 → 𝑇2
Ta thấy 𝑆\{𝑇1 ∪ 𝑇2} ≠ ∅ Ta xét các ô thuộc 2 tế bào lớn (2,2) cùng nằm trong 𝑇3 với (2,2) đã bị chọn (vì
nằm trong 𝑇1). (3,4) cùng nằm trong 𝑇6 với (3,1) đã bị chọn (vì
nằm trong 𝑇2). (2,4) không nằm trong các ô đã bị chọn.-> Ta chọn
(2,4)
IV. THUẬT TOÁN TÌM CÔNG THỨC ĐA THỨC TỐI TIỂU
Đại số Bool
43
2,3 ∈ 𝑆(𝑇1 ∪ 𝑇2) và � 2,4 ∈ 𝑇42,4 ∈ 𝑇5
Ta được:
3,4 ∈ 𝑆(𝑇1 ∪ 𝑇2 ∪ 𝑇4) và � 3,4 ∈ 𝑇53,4 ∈ 𝑇6
Ta được Ta thấy: 𝑆\(𝑇1 ∪ 𝑇2 ∪ 𝑇4 ∪ 𝑇5) = ∅ ⇒ 𝑆 = 𝑇1 ∪ 𝑇2 ∪ 𝑇4 ∪ 𝑇5; 𝑆\(𝑇1 ∪ 𝑇2 ∪ 𝑇4 ∪ 𝑇6) = ∅ ⇒ 𝑆 = 𝑇1 ∪ 𝑇2 ∪ 𝑇4 ∪ 𝑇6.
IV. THUẬT TOÁN TÌM CÔNG THỨC ĐA THỨC TỐI TIỂU
Đại số Bool
44
2,3 ∈ 𝑆(𝑇1 ∪ 𝑇2 ∪ 𝑇5) và � 2,3 ∈ 𝑇32,3 ∈ 𝑇4
Ta được Ta thấy: 𝑆\(𝑇1 ∪ 𝑇2 ∪ 𝑇5 ∪ 𝑇3) = ∅ ⇒ 𝑆 = 𝑇1 ∪ 𝑇2 ∪ 𝑇5 ∪ 𝑇3; 𝑆\(𝑇1 ∪ 𝑇2 ∪ 𝑇5 ∪ 𝑇4) = ∅ ⇒ 𝑆 = 𝑇1 ∪ 𝑇2 ∪ 𝑇5 ∪ 𝑇4 .
IV. THUẬT TOÁN TÌM CÔNG THỨC ĐA THỨC TỐI TIỂU
Đại số Bool
45
Vậy ta có 𝑓 𝑥,𝑥, 𝑥, 𝑡 = 𝑥𝑥 ∨ 𝑥𝑥̅ ∨ �̅�𝑥𝑡 ∨ �̅�𝑥�𝑡 = 𝑥𝑥 ∨ 𝑥𝑥̅ ∨ �̅�𝑥𝑡 ∨ 𝑥�𝑥̅𝑡 = 𝑥𝑥 ∨ 𝑥𝑥̅ ∨ �̅�𝑥�𝑡 ∨ 𝑥𝑥𝑡 = 𝑥𝑥 ∨ 𝑥𝑥̅ ∨ �̅�𝑥�𝑡 ∨ �̅�𝑥𝑡 Do 4 đa thức trên đều đơn giản ngang nhau, do đó ta có 4 đa thức tối tiểu của bài toán ban đầu
ĐẠI SỐ MẠCH ĐIỆN
Đại số Bool 46
V. Đại số các mạch điện 1. Hàm Bool của mạch điện:
a. Mạch điện: dây dẫn và công tắc điện Công tắc điện tương đương 1 biến bool (0,1) Trên dây dẫn 2 công tắc: mắc nối tiếp và mắc song song
t(a,b) = a b = a.b 1 nếu có điện qua dây t(a,b) = 0 nếu không có điện qua dây t(a,b) = aVb
Đại số Bool
47
A a B b t(a,b)
t(a,b)
A a
B b
V. Đại số các mạch điện
1. Hàm bool của mạch điện: b. Mạch điện có n công tắc điện A1, A2,…An(n biến bool a1, a2,…,an).
Hàm Bool cho mạch điện: f: Bn B 0 (không có điện) (a1, a2,…,an) f (a1, a2,…,an) = 1 (có điện)
Từ các cấu trúc mắc nối tiếp và mắc song song trong mạch ta có thể biểu diễn f thành công thức đa thức theo a1, a2,…,an
Ví dụ:
f(a,b,c,d) = {[a.(bVc)] V (¬c. ¬a)}.d = (a.b V a.c V ¬a. ¬c).d = abc V acd V ¬a¬cd
Đại số Bool
48
f(a,b,c,d) A
¬C
B
C
¬A
D
V. Đại số các mạch điện 2. Các loại cổng cơ bản:
a. Bộ đảo (cổng NOT)
Bảng chân trị
Ví dụ: Cho đầu vào A= 01001. Khi đó sau khi qua bộ đảo, đầu ra là ¬A = 10110
Đại số Bool
49
x ¬x
V. Đại số các mạch điện
2. Các loại cổng cơ bản: b. Cổng OR
Bảng chân trị
Ví dụ: Cho đầu vào A = 011101, B = 100110. khi đó đầu ra của cổng OR là X=A+B =
111111
Đại số Bool
50
x1 x2
xn
x1 + x2 +…+ xn
V. Đại số các mạch điện 2. Các loại cổng cơ bản:
c. Cổng AND
Bảng chân trị
Ví dụ: Cho đầu vào A = 110001, B = 011100. Khi đó đầu ra của cổng AND là X = A.B = 010000
Đại số Bool
51
x1.x2…xn
V. Đại số các mạch điện 3. Thiết kế mạng các cổng tổng hợp hàm Bool:
f ∈ Fn và f có dạng đa thức: f = U1 V u2 V ... V Uk (u1, u2,uk là các đơn thức).
f ∈ F3 dùng các cổng AND, OR, NOT để thiết kế mạng tổng hợp f.
Ví dụ: Có f(x,y,z) = xyz V x¬y¬z V x¬y¬z V xy¬z V ¬xy¬z (dạng đa
thức) Mạng các cổng tổng hợp f:
4 cổng AND loại 3 dây 3 cổng NOT 1 cổng loại 4 dây
Đại số Bool
52
f
V. Đại số các mạch điện 4. Tối ưu hóa việc thiết kế mạng các cổng tổng hợp hàm bool: Việc thiết kế mạng cho f dựa vào 1 công thức đa thức nào đó của F. F có
nhiều dạng đa thức khác nhau, ta sẽ chọn 1 công thức đa thức tối tiểu của f để thiết kế mạng cho nó. Như vậy ta sẽ tiết kiệm được chi phí mua cổng và dây dẫn.
Ví dụ: f ∈ F3 có f(x,y,z) = xyz V x¬y¬z V x¬y¬z V xy¬z V ¬xy¬z (dạng đa thức)
Kar(f) = Kar(xyz) V Kar(x¬y¬z) V Kar(x¬y¬z) V Kar(¬xy¬z) Biểu đồ Karnaugh của f Các tế bào lởn trong S:
T1 = x.y T2 = x.¬z T3 = y.¬z
Chọn Ô (1,2) ∈ S và (1,2) ∈ T1
Chọn Ô (2,1) ∈ S\ T1 và (2,1) ∈ T2
Chọn Ô (2,3) ∈ S\(T1 V T2) và (2,3) ∈ T3 Chọn Ô S\(T1 V T2 V T3) = 0 => S = T1 V T2 V T3
f(x,y,z,t) = x.y V x¬z V y¬z (công thức tối tiểu của f)
Đại số Bool
53
V. Đại số các mạch điện 4. Tối ưu hóa việc thiết kế mạng các cổng tổng hợp hàm Bool:
Mạng các cổng tổng hợp f: 3 cổng AND loại 2 dây 1 cổng NOT 1 cổng OR loại 3 dây
Đại số Bool
54
f( x,y,z)=x.y V x¬z V y¬z
Đại số Bool
55