Chng 2. i s BOOLE Trang 11
Chng 2
I S BOOLE
2.1. CÁC TIÊN VÀ NH LÝ I S BOOLE
Trong các mch s, các tín hiu thng c cho 2 mc n áp, ví d: 0V và 5V. Nhng linh
kin n t dùng trong mch s làm vic mt trong hai trng thái, ví d Transistor lng cc
(BJT) làm vic hai ch là tt hoc dn bão hoà… Do vy, mô t các mch s ngi ta dùng
nh phân (binary), hai trng thái ca các linh kin trong mch sc mã hoá tng ng là 0
hoc 1.
t b môn i s phát trin t cui th k 19 mang tên ngi sáng lp ra nó: i s Boole, còn
c gi là i s logic, thích hp cho vic mô t mch s. i s Boole là công c toán hc quan
trng phân tích và thit k các mch s, c dùng làm chìa khoá i sâu vào mi lnh vc liên
quan n k thut s.
2.1.1. Các tiên ca i s Boole
Cho mt tp hp B hu hn trong ó ta trang b các phép toán + (cng logic), x (nhân logic), -
(bù logic/nghch o logic) và hai phn t 0 và 1 lp thành mt cu trúc i s Boole (c là Bun).
∀ x,y ∈ B thì: x+y ∈ B, x*y ∈ B và tha mãn 5 tiên sau:
1. Tiên giao hoán
∀x,y ∈ B: x + y = y + x
2. Tiên phi hp
∀x,y,z ∈ B: (x+y)+z = x+(y+z) = x+y+z
(x.y).z = x.(y.z) = x.y.z
3. Tiên phân phi
∀x,y, z ∈ B: x.(y + z ) = x.y + x.z
x + (y.z) = (x + y).(x + z)
4. Tiên v phn t trung hòa
Trong tp B tn ti hai phn t trung hòa là phn t n v và phn t không. Phn tn v
ký hiu là 1, phn t không ký hiu là 0.
∀x ∈ B: x + 1 = 1
x . 1 = x
x + 0 = x
x . 0 = 0
5. Tiên v phn t bù
∀x ∈ B, bao gi cng tn ti phn t bù tng ng, ký hiu
x , sao cho luôn tha mãn:
x +
x = 1 và x. x = 0
Bài ging N T S 1 Trang 12
u B = B* = {0,1} (B* ch gm 2 phn t 0 và 1) và tha mãn 5 tiên trên thì cng lp thành
u trúc i s Boole nhng là cu trúc i s Boole nh nht.
2.1.2. Các nh lý c bn ca i s Boole
1. Vn i ngu trong i s Boole
Hai mnh (hai biu thc, hai nh lý) c gi là i ngu vi nhau nu trong mnh này
ngi ta thay phép toán cng thành phép toán nhân và ngc li, thay 0 bng 1 và ngc li, thì s
suy ra c mnh kia.
Khi hai mnh i ngu vi nhau, nu 1 trong 2 mnh c chng minh là úng thì mnh
còn li là úng. Di ây là ví d v các cp mnh i ngu vi nhau.
Ví d 2.1
: x.(y+z) = (x.y) + (x.z)
x + (y.z) = (x+y).(x+z)
Ví d 2.2
: x + x = 1
x.
x = 0
2. Các nh lý
a. nh lí 1 (nh lý v phn t bù là duy nht)
∀x, y ∈ B, ta có:
xy
0x.y
1yx
=⇒
=
=+
là duy nht (x và y là 2 phn t bù ca nhau)
Phn t bù ca mt phn t bt k là duy nht.
b. nh lí 2 (lý v sng nht ca phép cng và phép nhân logic)
∀x ∈ B, ta có:
x + x +. . . . . + x = x
x. x. x. . . . . . x = x
c. nh lý 3 (nh lý v phnh hai ln)
∀x ∈ B, ta có: x = x
d. nh lí 4 (nh lý De Morgan)
∀x, y, z ∈ B, ta có:
zyx ..zyx =++
zyxx.y.z ++=
qu:
∀x, y, z ∈ B, ta có:
x + y + z =
zyx ++ = z.y.x
x. y. z = x.y.z = zyx ++
e. nh lí 5 (nh lý dán)
∀x, y ∈ B, ta có:
x. (
x + y) = x.y
x + (
x .y) = x + y
Hai mnh này là i ngu
Hai mnh này là i ngu
Chng 2. i s BOOLE Trang 13
f. nh lí 6 (nh lý nut)
∀x, y ∈ B, ta có:
x + x. y = x
x.(x + y) = x
g. nh lí 7 (Quy tc tính i vi hng)
i 0, 1 ∈ B, ta có:
0
= 1
1 = 0
2.2. HÀM BOOLE VÀ CÁC PHNG PHÁP BIU DIN
2.2.1. Hàm Boole
1. nh ngha
Hàm Boole là mt ánh x ti s Boole vào chính nó. Ngha là ∀x, y∈ B c gi là các
bin Boole thì hàm Boole, ký hiu là f, c hình thành trên c s liên kt các bin Boole bng các
phép toán + (cng logic), x / . (nhân logic), nghch o logic (-).
Hàm Boole n gin nht là hàm Boole theo 1 bin Boole, c cho nh sau:
f(x) = x, f(x) =
x , f(x) = α (α là hng s )
Trong trng hp tng quát, ta có hàm Boole theo n bin Boole c ký hiu nh sau:
f(x
1
, x
2
, ...., x
n
)
2. Các tính cht ca hàm Boole
u f(x
1
, x
2
, ...., x
n
) là mt hàm Boole thì:
- α.f(x
1
, x
2
, ...., x
n
) cng là mt hàm Boole.
-
f (x
1
, x
2
, ...., x
n
) cng là mt hàm Boole.
u f
1
(x
1
, x
2
, ...., x
n
) và f
2
(x
1
, x
2
, ...., x
n
) là nhng hàm Boole thì:
- f
1
(x
1
, x
2
, ...., x
n
) + f
2
(x
1
, x
2
, ...., x
n
) cng là mt hàm Boole.
- f
1
(x
1
, x
2
, ...., x
n
).f
2
(x
1
, x
2
, ...., x
n
) cng là mt hàm Boole.
y, mt hàm Boole f cng c hình thành trên c s liên kt các hàm Boole bng các
phép toán + (cng logic), x (.) (nhân logic) hoc nghch o logic (-).
3. Giá tr ca hàm Boole
Gi s f(x
1
, x
2
, ...., x
n
) là mt hàm Boole theo n bin Boole.
Trong f ngi ta thay các bin x
i
bng các giá tr c th α
i
(
n,1i = ) thì giá tr f (α
1
, α
2
, ..., α
n
)
c gi là giá tr ca hàm Boole theo n bin.
Ví d 2.3:
Xét hàm f(x
1
, x
2
) = x
1
+ x
2
Xét trong tp B = B* ={0,1} ta có các trng hp sau (lu ý ây là phép ng logic hay còn gi
phép toán HOC / phép OR):
- x
1
= 0, x
2
= 0 → f(0,0) = 0 + 0 = 0
Bài ging N T S 1 Trang 14
- x
1
= 0, x
2
= 1 → f(0,1) = 0 + 1 = 1
- x
1
= 1, x
2
= 0 → f(1,0) = 1 + 0 = 1
- x
1
= 1, x
2
= 1 → f(1,1) = 1 + 1 = 1
Ta lp c bng giá tr ca hàm trên.
Ví d 2.4
:
Xét hàm cho bi biu thc sau: f(x
1
, x
2
, x
3
) = x
1
+ x
2
.x
3
Xét tp B = B* = {0,1}. Hoàn toàn tng t ta lp c bng giá tr ca hàm:
x
1
x
2
x
3
f (x
1
, x
2
, x
3
) = x
1
+ x
2
.x
3
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
1
1
1
1
1
2.2.2. Các phng pháp biu din hàm Boole
1. Phng pháp biu din hàm bng bng giá tr
ây là phng pháp thng dùng biu din hàm s nói chung và cng c s dng biu
din các hàm logic. Phng pháp này gm mt bng c chia làm hai phn:
- Mt phn dành cho bin ghi các t hp giá tr có th có ca bin vào.
- Mt phn dành cho hàm ghi các giá tr ca hàm ra tng ng vi các t hp bin vào.
Bng giá tr còn c gi là bng chân tr hay bng chân lý (TRUE TABLE). Nh vy vi mt
hàm Boole n bin bng chân lý s có:
- (n+1) t: n ct tng ng vi n bin vào, 1 ct tng ng vi giá tr ra ca hàm.
- 2
n
hàng: 2
n
giá tr khác nhau ca t hp n bin.
Ví d 2.5
: Hàm 3 bin f(x
1
, x
2
, x
3
) có thc cho bng bng giá tr nh sau:
x
1
x
2
x
3
f (x
1
, x
2
, x
3
)
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
1
1
1
1
1
Trong các ví d 2.3 và 2.4 chúng ta cng ã quen thuc vi phng pháp biu din hàm bng
ng giá tr.
x
1
x
2
f(x
1
, x
2
) = x
1
+ x
2
0
0
1
1
0
1
0
1
0
1
1
1
Chng 2. i s BOOLE Trang 15
2. Phng pháp gii tích
ây là phng pháp biu din hàm logic bng các biu thc i s. Phng pháp này có 2 dng:
ng ca các tích s hoc tích ca các tng s.
ng tng ca các tích s gi là dng chính tc th nht (Dng chính tc 1 – CT1).
ng tích ca các tng s gi là dng chính tc th hai (Dng chính tc 2 – CT2).
Hai dng chính tc này là i ngu nhau.
ng tng các tích s còn gi là dng chun tc tuyn (CTT), dng tích các tng s còn gi là
ng chun tc hi (CTH).
a. Dng chính tc 1(Dng tng ca các tích s)
Xét các hàm Boole mt bin n gin: f(x) = x, f(x) = x , f(x) = α (α là hng s).
ây là nhng trng hp có th có i vi hàm Boole 1 bin.
Chúng ta si chng minh biu thc tng quát ca hàm logic 1 bin si vi dng chính tc 1.
Sau ó áp dng biu thc tng quát ca hàm 1 bin tìm biu thc tng quát ca hàm 2 bin vi
vic xem 1 bin là hng s. Cui cùng, chúng ta suy ra biu thc tng quát ca hàm logic n bin cho
trng hp dng chính tc 1 (tng các tích s).
Xét f(x) = x:
Ta có: x =0.
x + 1.x
t khác:
( )
()
( )
=
=
⇒=
00f
11f
xxf
Suy ra: f(x) = x có th biu din:
f(x) = x = f(0).
x + f (1).x
trong ó: f (0), f (1) c gi là các giá tr ca hàm Boole theo mt bin.
Xét f(x) =
x :
Ta có: x = 1. x + 0. x
t khác:
( )
()
( )
=
=
⇒=
10f
01f
xxf
Suy ra: f(x) =
x có th biu din:
f(x) =
x = f(0). x + f(1).x
Xét f(x) = α (α là hng s):
Ta có: α = α.1 = α.(x +
x ) = α.x + α.x
t khác:
( )
()
( )
=
=
⇒=
0f
1f
xf
Suy ra f(x) = α có th biu din:
f(x) = α = f(0).
x + f(1).x
t lun
: Dù f(x) = x, f(x) =x hay f(x) = α, ta u có biu thc tng quát ca hàm mt bin vit
theo dng chính tc th nht nh sau:
Bài ging N T S 1 Trang 16
f(x) = f(0).x + f(1).x
y f(x) = f(0).
x + f(1).x, trong ó f(0), f(1) là giá tr ca hàm Boole theo mt bin, c gi là
biu thc tng quát ca hàm 1 bin vit ng chính tc th nht (dng tng ca các tích).
Biu thc tng quát ca hàm hai bin f(x
1
, x
2
):
Biu thc tng quát ca hàm 2 bin vit theo dng chính tc th nht cng hoàn toàn da trên
cách biu din ca dng chính tc th nht ca hàm 1 bin, trong ó xem mt bin là hng s.
th là: nu xem x
2
là hng s, x
1
là bin s và áp dng biu thc tng quát ca dng chính tc
th nht cho hàm 1 bin, ta có:
f(x
1
,x
2
) = f(0,x
2
).
x
1
+ f(1,x
2
).x
1
Bây gi, các hàm f(0,x
2
) và f(1,x
2
) tr thành các hàm 1 bin s theo x
2
. Tip tc áp dng biu
thc tng quát ca dng chính tc th nht cho hàm 1 bin, ta có:
f(0,x
2
) = f(0,0).
x
2
+ f(0,1).x
2
f(1,x
2
) = f(1,0).x
2
+ f(1,1).x
2
Suy ra:
f(x
1
,x
2
) = f(0,0).
x
1
x
2
+ f(0,1).
x
1
x
2
+ f(1,0).x
1
x
2
+ f(1,1).x
1
x
2
ây chính là biu thc tng quát ca dng chính tc th nht (dng tng ca các tích s) vit cho
hàm Boole hai bin s f(x
1
,x
2
).
Biu thc tng quát này có th biu din bng công thc sau:
f(x
1
,x
2
) =
2
2
1
12
1
0e
1
x)x,f(
2
2
∑
−
=
Trong ó e là s thp phân tng ng vi mã nh phân (α
1
,α
2
) và:
x
1
nu α
1
= 1
x
1
nu α
1
= 0
x
2
nu α
2
= 1
x
2
nu α
2
= 0
Biu thc tng quát cho hàm Boole n bin
:
T biu thc tng quát vit dng chính tc th nht ca hàm Boole 2 bin, ta có th tng quát
hoá cho hàm Boole n bin f(x
1
,x
2
, ..,x
n
) nh sau:
f(x
1
,x
2
, ..,x
n
) =
n
n
2
21
...xx)x,....,,f(
n2
1
n
2
0e
1
1
∑
−
=
trong ó e là s thp phân tng ng vi mã nh phân (α
1
,α
2
, ...,α
n
);
và: x
i
nu α
i
= 1
x
i
nu α
i
= 0 (vi i = 1, 2, 3,…,n)
1
1
x
=
2
2
x
=
i
i
x
=