Tải bản đầy đủ (.ppt) (46 trang)

Bài giản tiểu luận thuyết trình toán rời rạc Ham bool

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (674.31 KB, 46 trang )

Lớp MAT04.C15 - Chiều thứ 6
Giảng viên: TS. Cao Thanh Tình
HÀM BOOL

1


Nội Dung Chính







HÀM BOOL

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


Nội Dung Chính (tt)
I.

II.



HÀM BOOL

Hàm Bool

1.
2.
3.

Đại số Bool nhị phân
Hàm Bool
Đại số Bool của các hàm Bool

Các Dạng Biểu Diễn Hàm Bool

1.
2.
3.
4.
5.
6.
7.
8.
9.

Từ đơn
Đơn thức
Đơn thức tối tiểu trong Fn
Đa thức trong Fn
Dạng nối rời chính tắc của hàm Bool

Cách tìm dạng nối rời chính tắc của hàm Bool
Mệnh đề
So sánh các dạng đa thức của hàm Bool
Công thức đa thức tối tiểu cho hàm Bool

3


Nội Dung Chính (tt)
III.

IV.

V.

VI.

HÀM BOOL

Biểu Đồ Karnaugh Cho Hàm Bool

1.
2.
3.
4.
5.
6.
7.

Bảng mã

Biểu đồ Karnaugh cho hàm Bool
Nhận xét
Tính chất
Biểu đồ của 1 đơn thức
Biểu đồ của đa thức
Tế bào và tế bào lớn

Thuật Toán Tìm Công Thức Đa Thức Tối Tiểu Cho Hàm Bool

1.
2.

Họ phủ và họ phủ tối tiểu
Thuật toán

Đại Số Các Mạch Điện

1.
2.
3.
4.

Hàm Bool của mạch điện
Các loại cổng cớ bản
Thiết kế mạng các cổng tổng hợp hàm Bool
Tối ưu hóa việc thiết kế mạng các cổng tổng hợp hàm Bool

Bài Tập

4



I.

Hàm Bool

George Boole
(1815-1864)

HÀM BOOL

5


I.

Hàm Bool
1.

Đại số Bool nhị phân:

Cho B ={0,1}.





HÀM BOOL

ta đặt các phép toán như sau:


∀x, y ∈ B

x y = xy
x V y = (x + y) – (xy)
¬x=1–x

6


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 đề.

Luât phủ định kép

¬ ¬E <=> E

Luật lũy đẳng

E E <=> E
E V E <=> E

Luật giao hoán

F E <=> E F

F V E <=> E V F

Luật kết hợp

(E F) G <=> E (F G)
(E V F) V G <=> E V (F V G)

Luật phân phối

E (G V F) <=> (E G) V (E F)
E V (G F) <=> (E V G) (E V F)

Luật phủ định De-Morgan

¬ (E F) <=> ¬E V ¬F
¬ (E V F) <=> ¬E ¬F

Luật hấp thụ

E (E V F) <=> E ; E V (E F) <=> E

Luật trung hòa

E 1 <=> E
E V 0 <=> E

Luật thống trị

E 0 <=> 0
E V 1 <=> 1


Luật bù

E ¬E <=> 0
E V¬E <=> 1

HÀM BOOL

Luật kéo theo

E → F <=> ¬E V F

Phủ định kéo theo

¬( E → F) <=> E ¬F

7


I.

Hàm Bool
2.

Hàm Bool:

a. Định nghĩa Cho

n ≥ 1 và n ∈ N.


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(x ,x ,…,x ), trong đó
1 2
n
{0, 1}

mỗi biến trong x , x ,…, x và f chỉ nhận giá trị trong B =
1 2
n

Ký hiệu F để chỉ tập các hàm Bool n biến.
n

Ví dụ: Biểu thức logic E = E(p ,p ,…,p ) theo n biến p , p ,…, p là một
1 2
n
1 2
n

HÀM BOOL

hàm Bool n biến.

8


I.

Hàm Bool

2.

Hàm Bool:

b.

Bảng chân trị

Xét hàm Bool n biến f(x ,x ,…,x )
1 2
n



Vì mỗi biến x chỉ nhận hai giá trị 0, 1 nên chỉ có 2n trường hợp của bộ biến (x ,x ,…,x ).
i
1 2
n



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.

HÀM 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ẽ

A
M

N
B

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.

C

Bảng giá trị

HÀM BOOL

10


I.


Hàm Bool
3.

Các phép toán trên hàm Bool:

Với

f , g ∈ Fn

ta định nghĩa tổng, tích, bù hàm Bool của f và g như sau



f ∨ g = ( f + g ) − ( fg )


f ∧ g = fg


f = 1− f

HÀM BOOL

11


I.

Hàm Bool
3.


Các phép toán trên hàm Bool:
Ví dụ: n = 2

HÀM BOOL

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

12


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 F

n


theo n biến x ,x ,…,x .
1 2
n

Mỗi hàm bool x hay ¬ x được gọi là từ đơn.
i
i
Ví dụ: x , x , x ,…
1 2 3

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 x , x x , x x x x (bậc của đơn thức là số thành phần x)
3 1 2 1 2 3 4
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

HÀM BOOL

13


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 = y y ...y y = x hoặc ¬x 1 ≤ i ≤n
1 2 n, i
i
i
Ví dụ: Trong F4 xét các đơn thức tối tiểu bậc 4
x x x x x ¬x x x x x x x , ¬x ¬x ¬x ¬x
1 2 3 4, 1 2 3 4, 1 2 3 4
1 2 3 3

4.

Đa thức trong Fn:
Là tổng Bool các đơn thức f = u V u V u V…V u , trong đó Ui là các đơn thức.
1
2
3
k
Ví dụ: Trong F5 xét đa thức
f(x ,x ,x x ) = x ¬x V ¬x x ¬x V ¬x V ¬x x x x
1 2 3, 4
1 5
2 3 4
3
1 3 4 5
=> Tổng Bool 4 đơn thức f(1,0,1,1,0)=1¬0V¬01¬1V¬1V¬1110 = 1

HÀM BOOL


14


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 = m V m V m V …V m , (*)
1
2
3
k
với m là các đơn thức tối tiểu bậc = n (i = 1…n )
i

(*) đượ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 (*)

HÀM BOOL

15


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ổ xung 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 dời chính tắc

HÀM 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 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

HÀM BOOL

17


II. Các Dạng Biểu Diễn Hàm Bool
7.

Mệnh đề:

f ∈ F Khi đó,
n





HÀM BOOL

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).

18


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 ∈ F và f có 2 dạng đa thức
n
f = u V u V… V u (1)
1
2
p
f = v V v V… V v (2)
1
2
q

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(u ) ≤ deg(u ) (1 ≤ j ≤ p)
j
j


chú ý:




HÀM BOOL

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

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:
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

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)

HÀM 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ụ:

b. g ∈ F4 có 3 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`


p = q` = 4
deg(uj) ≤ deg(wj)

HÀM BOOL

21



III.

Biểu đồ karnaugh cho hàm Bool
1.

HÀM BOOL

Bảng mã: xét B = {0,1}

a.

2
Bảng mã cho B (2 biến bool x và y)

b.

3
Bảng mã cho B (3 biến bool x, y, z)

c.

4
Bảng mã cho B (4 biến pool x, y, z, t)

22


III.


Biểu đồ karnaugh cho hàm Bool

2.

Ghi chú:

a.

Khái niệm kề nhau trong bảng mã được hiểu như sau





b.

HÀM BOOL

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í

23


III.


Biểu đồ karnaugh cho hàm Bool
3.

Biểu đồ Karnaugh cho hàm Bool:
Biểu đồ Karnaugh chỉ dùng cho 4 biến trở xuống.

f ∈ F (n ≤ 4) và xét bảng chân trị của f. Ta quan tâm các vector bool mà f=1 tại đó. Đánh dấu các ô đó của bảng mã. Tập hợp
n
các ô được đánh dấu gọi là biểu đồ karnaugh của hàm bool F.

Ký hiệu: kar(f) – biểu đồ karnaugh của f
Ví dụ: f ∈ F có bảng chân trị
3

HÀM BOOL

24


III.

Biểu đồ karnaugh cho hàm Bool
4.

Nhận xét:
Một hàm bool f ∈ F được xác định nếu ta biết 1 trong 4 yếu tố sau đây:
n

a.

b.
c.
d.
5.

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)).

Tính chất:
f, g f ∈ F (n ≤ 1)
n

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).

HÀM BOOL

25


×