1. Trang chủ
  2. » Khoa Học Tự Nhiên

chuong 6: dai so bool

11 1K 2
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Đại Số Bool
Trường học Trường Đại Học
Chuyên ngành Đại Số
Thể loại Bài Giảng
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 11
Dung lượng 279 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Vì đại số Bool là mô hình tổng quát của đại số mệnh đề nên các thảo luận trong chơng này liên quan đến biểu thức Bool cũng hoàn toàn đúng đối với các công thức mệnh đề, trong đó các giá

Trang 1

Chơng 6

Đại số Bool

I Hàm Bool

Nhiều mô hình tính toán trên thực tế chỉ làm việc trên 2 giá trị cụ thể là 0 và 1 Ví dụ các hệ toán mệnh đề, tập hợp các tập con của A với 3 phép toán lấy phần bù, hợp và giao, trong đó A đóng vai trò 1 và  tơng ứng với 0, các mạch máy tính … Vì vậy cần nghiên cứu đại số Bool là đại số Vì vậy cần nghiên cứu đại số Bool là đại số làm việc trên tập các giá trị {0,1} và với 3 phép toán theo thứ tự u tiên là phần bù (-), nhân (.), cộng (+) đợc định nghĩa giống các phép toán NOT, AND, OR trong đại số mệnh đề với T = 1, F

= 0 Cụ thể các phép toán phần bù (hoặc phủ định), nhân và cộng trong đại số Bool đ ợc định nghĩa nh sau :

0 = 1 0.0 = 0 0 + 0 = 0

1 = 0 0.1 = 0 0 + 1 = 1

1.0 = 0 1 + 1 = 1 1.1 = 1 1 + 0 = 1

Ví dụ : áp dụng bảng giá trị các phép toán Bool ở trên ta có thể tính đợc giá trị của biểu thức : 0.1

+ (1 + 0)(1 + 1) = 0.1 + (1.1) = 0 + 0 = 0

1 Biểu thức và hàm Bool

a Biểu thức Bool

 Biến Bool : Cho tập B = {0,1}, và X = {x} là tập các biến nhận giá trị trên B Khi đó

x đợc gọi là biến bool

 Biểu thức Bool : Đợc định nghĩa đệ qui :

 0, 1, x1, , xn là các biểu thức Bool (xi là các biến Bool)

 Nếu B1, B2 là các biểu thức Bool thì B1, (B1B2), (B1+B2) cũng là các biểu thức Bool

Từ định nghĩa trên ta thấy giá trị của biểu thức cũng sẽ là 0 hoặc 1 Bằng cách thay giá trị 0, 1 cho các biến trong biểu thức ta sẽ tính đợc giá trị của biểu thức Ví dụ : (x+y)z + xy là biểu thức Bool nhận giá trị 0 nếu với bộ giá trị của các biến x, y, z là (0, 0, 0) và nhận giá trị 1 với bộ giá trị biến (0, 1, 0) Cũng giống nh trong đại số, để ngắn gọn ta có thể bỏ dấu nhân trong tích x.y và viết xy thay cho x.y

Vì đại số Bool là mô hình tổng quát của đại số mệnh đề nên các thảo luận trong chơng này liên quan đến biểu thức Bool cũng hoàn toàn đúng đối với các công thức mệnh đề, trong đó các giá trị

0, 1 và các biến xi của đại số Bool tơng ứng với các giá trị T, F và các mệnh đề sơ cấp Xi trong

đại số mệnh đề

Tơng tự trong đại số mệnh đề hai biểu thức Bool nếu có giá trị bằng nhau trên mọi bộ giá trị của biến sẽ đợc gọi là 2 biểu thức tơng đơng

b Hàm Bool

Hàm Bool bậc n : Hàm fn : Bn  B đợc gọi là hàm Bool bậc n Tức hàm có n biến x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn

nhận giá trị 0, 1 và cho lại giá trị của hàm cũng là 0 hoặc 1

Trong trờng hợp không xảy ra nhầm lẫn, để đơn giản kí hiệu ta thờng viết f thay cho fn, và gọi ngắn gọn là hàm Bool thay cho hàm Bool bậc n

Trang 2

Nh vậy với n đầu vào có giá trị 0, 1 hàm f sẽ cho 1 đầu ra với giá trị 0, 1 Giá trị của hàm Bool thờng đợc cho trong các bảng, giống nh các bảng chân trị của các công thức mệnh đề

Với hàm n biến sẽ có tất cả hàm Ví dụ ta có tất cả 4 hàm 1 biến và 16 hàm 2 biến đợc cho

d-ới dạng bảng nh sau :

4 hàm bool 1 biến

trong đó f1 = 0, f2 = x, f3 = x, f4 = 1, nói cách khác các biểu thức Bool 0, x, x, 1 biểu diễn các hàm Bool f1, f2, f3, f4

Từ các hàm Bool có sẵn ta có thể tạo thành các hàm khác thông qua các phép toán Bool Ví dụ từ các hàm một biến f1, f2, f3, f4 ở trên ta có thể tạo thành các hàm mới : f1, f2.f3, f1 + f4, … Vì vậy cần nghiên cứu đại số Bool là đại số mà giá trị của nó có thể tính đợc và đợc liệt kê trong bảng sau :

Hai hàm có cùng bảng giá trị sẽ đợc gọi là bằng nhau Ví dụ trên cho ta thấy f1 = f1 + f4

c Biểu diễn hàm bởi biểu thức

Một biểu thức đợc gọi là biểu diễn của một hàm nếu giá trị của chúng bằng nhau trên mọi bộ giá trị của biến Biểu thức biểu diễn hàm f đợc kí hiệu E(f), Ef hoặc E Nh vậy việc xét tính chất của hàm có thể đợc làm việc thông qua biểu thức

Chú ý rằng có thể có nhiều biểu thức cùng biểu diễn một hàm Khi đó các biểu thức cùng biểu diễn một hàm đợc gọi là các biểu thức tơng đơng Ví dụ : xy, xy + 0 và xy.1 là các biểu thức tơng

đơng Với E và E' tơng đơng ta viết E  E' Vì cùng biểu diễn một hàm nên các biểu thức tơng

đ-ơng là bằng nhau trên mọi bộ giá trị của các biến

Về mặt hình thức, để đơn giản nếu E và E' cùng biểu diễn hàm Bool f ta viết f = E = E'

Bảng sau đây liệt kê 16 hàm Bool 2 biến cùng các biểu thức biểu diễn chúng

Trang 3

f13 1 1 0 0

trong đó để ngắn gọn ta đã dùng một số kí hiệu phép toán mới nh , , , |,  Các kí hiệu này

độc giả có thể liên tởng lại các phép toán tơng tự trong đại số mệnh đề và đợc định nghĩa thông qua các phép toán phủ định, cộng, nhân nh sau :

 Phép toán tơng đơng  : x  y = (x  y)  (y  x)

 Phép toán cộng loại trừ  (XOR) : x  y = xy + xy

 Phép toán  (NOR) : x  y = ( x  y)

Có thể chứng minh dễ dàng các biểu thức trên là biểu diễn của các hàm f tơng ứng Chúng tôi dành lại phần chứng minh cho độc giả nh một bài tập

2 Các hằng đẳng thức

Luật lũy đẳng xx = x; x + x = x

Luật đồng nhất x + 0 = x1 = x

Luật giao hoán xy = yx; x + y = y + x

Luật kết hợp x(yz) = (xy)z; x+(y+z) = (x+y)+z

Luật phân phối x(y+z) = xy+xz; x+yz = (x+y)(x+z)

Luật De Morgan (xy) = x+y; (x+y) = xy

Dùng bảng các hằng đẳng thức để chứng minh tính tơng đơng của các biểu thức

Ví dụ : Chứng minh x(x + y) = x

a  (x + 0)(x + y) : đồng nhất

x + 0.y : phân phối ((x+0)(x+y) = x + 0y rút gọn)

x + y.0 : giao hoán

x + 0 : nuốt

3 Tính đối ngẫu

a Định nghĩa

Đối ngẫu của biểu thức : Cho biểu thức E Đổi chỗ (0, 1), (+, ) ta đợc biểu thức E* đợc gọi là biểu thức đối ngẫu của biểu thức E Khi đó hàm đợc biểu diễn bởi E* đợc gọi là hàm đối ngẫu của f, và đợc kí hiệu là f*

Ví dụ : Cho hàm f(x,y,z) = x(y + 0)x.1 + (y + z) có đối ngẫu x + (y1) + (x+0)(yz)

b Nguyên lý đối ngẫu

Trang 4

Đối ngẫu 2 hàm (biểu thức) bằng nhau cho ra 2 hàm (biểu thức) bằng nhau Tức nếu f = g thì f* = g*

Chứng minh điều trên bằng cách chứng minh thông qua định nghĩa biểu thức và biểu thức đối ngẫu nh chứng minh đối với các công thức mệnh đề

Ví dụ : x(x + y) = x Luật hấp thụ

 x + xy = x cũng đúng và là hấp thụ

II Biểu diễn các hàm Bool

1 Dạng chuẩn tắc của hàm Bool

a Đặt vấn đề

 Cho một hàm bool bất kỳ, liệu có biểu thức bool nào biểu diễn nó

 Nếu biểu diễn đợc thì dùng bao nhiêu phép toán để biểu diễn nó

Ví dụ : Một uỷ ban 3 ngời biểu quyết về một vấn đề nào đó Giả sử nếu có ít nhất 2 ngời chấp

thuận thì vấn đề đợc xem là thông qua và ngợc lại Hãy xây dựng một biểu thức Bool để phản ánh kết quả của cuộc biểu quyết trên

Giải : Gọi các thành viên uỷ ban là x, y, z và các giá trị 0, 1 biểu thị cho kết quả bỏ phiếu của

từng thành viên trong đó 1 là chấp thuận và 0 là ngợc lại Khi đó kết quả cuộc bỏ phiếu đợc phản

ánh thông qua hàm Bool f cho trong bảng sau :

Theo bảng trên ta thấy kết quả là thuận (1) nếu và chỉ nếu các thành viên bỏ phiếu theo 1 trong các cách thể hiện trên các dòng 1, 2, 3, 5 tức cách bỏ phiếu phải rơi vào một trong các bộ giá trị tơng ứng của (x, y, z) là (1, 1, 1)  (1, 1, 0)  (1, 0, 1)  (0, 1, 1) Từ đó hàm đợc tạo thành từ tổng các biểu thức con sao cho mỗi biểu thức con biểu thị một khả năng bỏ phiếu ở trên tức biểu thức con có giá trị 1 khi và chỉ khi bộ (x, y, z) nhận giá trị theo bộ số mà nó t ơng ứng Từ đó dễ thấy các biểu thức con đợc tạo :

 Tơng ứng với (1, 1, 1) : xyz

 Tơng ứng với (1, 1, 0) : xyz

 Tơng ứng với (1, 0, 1) : xyz

 Tơng ứng với (1, 1, 0) : xyz

Và do đó hàm f = xyz + xyz + xyz + xyz Ví dụ trên có thể đợc tổng quát hoá cho ta một

ph-ơng pháp tìm biểu thức đề biểu diễn một hàm Bool bất kỳ

b Các định nghĩa

 xi hoặc xi đợc gọi là biến hạng (term, literal) và kí hiệu là xi'

 tích x1' xn' gọi là các tiểu hạng (minterm, conjunction clause) hay hội sơ cấp

 tổng : x1' + x2' + + xn' gọi là các đại hạng (maxterm, disjunction clause) hay tuyển sơ cấp

Trang 5

Từ các định nghĩa trên có thể thấy :

 tiểu hạng = 1 khi và chỉ khi mọi xi' = 1  xi = 1 nếu xi' = xi và xi = 0 nếu xi' = xi

 đại hạng = 0 khi và chỉ khi mọi xi' = 0  xi = 0 nếu xi' = xi và xi = 1 nếu xi' =  xi

Ví dụ : Tiểu hạng x1 x2 x3 x4 x5 = 1 khi và chỉ khi (x1, x2, x3, x4, x5) = (1,1,0,0,1)

Đại hạng x1+x2+x3+x4+x5 = 0 khi và chỉ khi (x1,x2,x3,x4,x5) = (0,1,1,0,1)

c Định lý : Mọi hàm Bool bất kỳ cấp n f(x1, x2, , xn) đều có thể biểu diễn đợc dới dạng :

Tổng của các tiểu hạng hay còn gọi là dạng chuẩn tắc tuyển, tức

f = + (x1 xn )

Tích của các đại hạng hay còn gọi là dạng chuẩn tắc hội, tức

f = x (x11 + + xn ) Việc chứng minh định lý trên một cách không hình thức, có thể dễ dàng xây dựng đợc dựa theo việc lập tổng các tiểu hạng với mỗi tiêủ hạng dựa trên các dòng giá trị có f = 1, hoặc lập tích của các đại hạng dựa trên các dòng có giá trị 0 nh trong ví dụ mở đầu đã chỉ ra Tuy nhiên, trong phần sau chúng ta sẽ phát biểu lại định lý và chứng minh một cách chặt chẽ hơn

Ví dụ : Cho f là hàm XOR () với bảng giá trị (xem định nghĩa ở trên) :

sẽ tơng ứng với dạng chuẩn tắc tuyển : xy + xy hoặc chuẩn tắc hội : (x + y)(x + y)

Chú ý :

Việc biểu diễn hàm f dới dạng chuẩn tắc nh trên còn đợc gọi là khai triển f thành tổng

các tích hoặc tích các tổng.

Các dạng chuẩn tắc ở trên còn đợc gọi là dạng chuẩn tắc hoàn toàn vì các tiểu hạng và

đại hạng chứa đúng n hạng biến, phân biệt với các dạng chuẩn tắc khác không chứa đủ

n hạng biến (ví dụ : xyz + z hoặc (x+y)z), tuy nhiên để đơn giản ta gọi chung chúng là dạng chuẩn tắc

Để phục vụ việc chứng minh định lý trên một cách chặt chẽ về mặt toán học ta sử dụng các kí hiệu sau :

(Giả sử i = 1, theo định nghĩa i

i

giả sử i = 0 do định nghĩa nên = xi, do đó i

i

 Tf = {(x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn) : f(x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn) = 1}

Khi đó định lý trên có thể phát biểu lại nh sau : Mọi hàm Bool cấp n f(x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn) đều biểu diễn đợc dới dạng :

Trang 6

Chuẩn tắc tuyển : f(x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn) =

Chuẩn tắc hội : f(x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn) = 

f n

n

T ) x , x , x (

n

x x x

2 1

2 1

2 1

Chứng minh : ở đây ta chỉ chứng minh cho trờng hợp dạng chuẩn tắc tuyển Khi đó có thể chứng

minh dạng chuẩn tắc hội một cách tơng tự hoặc suy từ dạng chuẩn tắc tuyển và nguyên lý đối ngẫu

Để đơn giản ta gọi tổng các tiểu hạng ở vế phải là g(x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn) Cần chứng minh f = g với mọi (x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn)  Bn Lấy bộ giá trị bất kỳ của (x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn) = (1, 2, … Vì vậy cần nghiên cứu đại số Bool là đại số , n)  Bn

 Giả sử f(1, 2, … Vì vậy cần nghiên cứu đại số Bool là đại số , n) = 1  (1, 2, … Vì vậy cần nghiên cứu đại số Bool là đại số , n)  Tf  n

n x x

x1 2 

2

1 là một tiểu hạng của g(x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn) Thay giá trị cụ thể của (x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn) bởi (1, 2, … Vì vậy cần nghiên cứu đại số Bool là đại số , n) ta đợc tiểu hạng này bằng 1 (vì xi = i, i) Do đó g(1, 2, … Vì vậy cần nghiên cứu đại số Bool là đại số , n) = 1 = f(1, 2, … Vì vậy cần nghiên cứu đại số Bool là đại số , n)

 Nếu f(1, 2, … Vì vậy cần nghiên cứu đại số Bool là đại số , n) = 0 ta sẽ chứng minh mọi tiểu hạng của g cũng bằng 0, do đó g =

0 Thật vậy lấy bất kỳ tiểu hạng n

n x x

x1 2 

2

1 của g(x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn), tức f(1, 2, … Vì vậy cần nghiên cứu đại số Bool là đại số,

n) = 1 Tiểu hạng này bằng 1 (với (x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn) = (1, 2, … Vì vậy cần nghiên cứu đại số Bool là đại số , n)) nếu i = xi = i, i

Do đó f(1, 2, … Vì vậy cần nghiên cứu đại số Bool là đại số , n) = f(1, 2, … Vì vậy cần nghiên cứu đại số Bool là đại số , n) = 1, mâu thuẫn với giả thiết

Vậy mọi f(x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn) = g(x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn) (x1, x2, … Vì vậy cần nghiên cứu đại số Bool là đại số, xn)  Bn  Tóm lại, từ các thảo luận trên ta thấy mọi hàm Bool đều biểu diễn đợc bởi một biểu thức và mọi biểu thức đều biểu diễn một hàm Bool nào đó

2 Tính đầy đủ

a Định nghĩa : Một hệ đầy đủ là một tập hợp phép toán có khả năng biểu diễn đợc mọi

hàm

Theo định lý khai triển hàm Bool thành dạng chuẩn tắc ta thấy hệ các phép toán {, +, } là một

hệ đầy đủ Vấn đề đặt ra liệu có thể biểu diễn mọi hàm Bool qua hệ với phép toán ít hơn nữa ?

Định lý sau đây cho thấy mọi hàm Bool đều có thể biểu diễn đợc bằng biểu thức chỉ cần dùng 1 phép toán

b Định lý : Các hệ sau : {+, }, {., }, {|}, {} là đầy đủ.

Chứng minh :

x = x | x xy = (x | y) | (x | y) x + y = (x | x) | (y | y)

x = x  x x+y = (x  y)  (x  y) xy = (x  x)  (y  y)

Để chứng minh hệ không đầy đủ cần :

i tìm một tính chất  nào đó sao cho nếu A và B có tính chất  thì A  B cũng có tính chất  với  là các phép toán của hệ  đựoc gọi là tính chất bảo toàn của hệ

ii chỉ ra một hàm nào đó không có tính chất , tức không thể biểu diễn đợc qua các phép toán của hệ

Ví dụ : {} không phải là hệ đầy đủ Vì tính chất x  x = x, tức nếu tiếp tục làm toán với phép  ta

luôn luôn đợc x, do đó không biểu diễn đợc hàm x ở đây tính chất  là "hàm = x"

III rút gọn các hàm bool

Trong các tiết trên chúng ta đã chứng minh đợc mọi hàm đều có thể biểu diễn đợc bằng các biểu thức Bool Tuy nhiên phơng pháp khai triển hàm về dạng chuẩn tắc hoàn toàn sẽ tạo ra biểu thức chứa nhiều phép toán và các toán hạng (biến) nhiều khi nhiều hơn mức cần thiết Ví dụ : bài toán biểu quyết 2/3 ở trên đã xây dựng đợc dạng chuẩn tắc tuyển là xyz + xyz + xyz + xyz dùng 3 biến và 14 phép toán Tuy nhiên, ta có thể liệt kê một số biểu thức khác rút gọn hơn và cũng biểu

Trang 7

diễn hàm nói trên nh :

xyz + xyz + xyz + xyz 14

xy + xz + yz 5 (chuẩn tắc tối thiểu)

Dạng biểu thức cuối cùng với số phép toán ít nhất đợc gọi là dạng chuẩn tắc tối thiểu của hàm Chú ý rằng một hàm có thể có nhiều dạng chuẩn tắc tối thiểu Thực tế dạng chuẩn tắc tối thiểu vẫn cha phải là dạng tối thiểu của hàm (tức ít phép toán nhất và không cần chuẩn tắc)

Từ đó một bài toán thực tế đặt ra là thiết kế các mạch thực hiện hàm Bool sao cho sử dụng các mạch cơ bản là ít nhất và số lần sử dụng nó là ít nhất Tức cần biểu diễn các hàm dới dạng các biểu thức tối thiểu Đây là bài toán khó và cho đến nay vẫn cha đợc giải một cách có hiệu quả Chỉ riêng các thuật toán tìm dạng chuẩn tắc tối thiểu vẫn còn mang độ phức tạp rất lớn và việc

mở rộng kết quả của bài toán này cho hệ nhiều hàm hoặc xét trên hệ đầy đủ bất kỳ là vẫn còn nhiều hạn chế

Trong tiết này ta đa ra thuật toán tìm dạng chuẩn tắc tối thiểu của hàm bất kỳ theo phơng pháp Quine-McCluskey Hàm ban đầu đợc biểu diễn dới dạng chuẩn tắc tuyển (hoàn toàn) và đợc tìm theo định lý trong II.2 ở trên

1. Biểu diễn mỗi tiểu hạng cấp n bằng xâu bit độ dài n, trong đó bit thứ i =1 nếu xi xuất hiện trong tiểu hạng và ngợc lại Để thuận tiện nên sắp xếp các tiểu hạng có cùng số số 1 liên tiếp với nhau, sau đó nhóm các tiểu hạng có số số 1 cách nhau 1

2. Tạo tất cả các tích cấp n-1 bằng cách nhóm các tích cấp n chỉ khác nhau một vị trí và loại bỏ biến hạng khác nhau này Xâu biểu diễn tích cấp n-1 đợc tạo bằng cách thay bit bị loại bởi dấu - từ xâu tích cấp n

3. Tiếp tục tạo các tích có cấp nhỏ dần cho đến khi không tạo đợc nữa Chú ý chỉ nhóm các tích có dấu - cùng vị trí

4. Tìm tất cả các tích đã xuất hiện nhng không đợc dùng để lập tích với cấp nhỏ hơn Lấy tổng nhỏ nhất các tích này sao cho tổng biểu diễn đợc hàm đã cho bằng cách theo dõi các tiểu hạng nào đã đợc phủ bởi tích nào Mỗi tiểu hạng phải đợc phủ bởi ít nhất một tích

Ví dụ : Rút gọn hàm đợc biểu diễn bởi : wxyz + wx yz + wxyz + wx yz + wxy z + w x

yz + w x yz

1 wxyz 1110 (1,4) wyz 1-10 (3,5,6,7) wz 0 1

2 wx yz 1011 (2,4) wx y

101-3 wxyz 0111 (2,6) x yz -011

4 wx yz 1010 (3,5) wxz 01-1

5 wxyz 0101 (3,6) wyz 0-11

6 w xyz 0011 (5,7) w y

z

0-01

Trang 8

7 w x y

z

0001 (6,7) x z 00-1

Các tích đợc đánh dấu là đã đợc sử dụng Các tích còn lại là cha sử dụng (không bị rút gọn) Bớc cuối cùng ta sẽ phải tổ hợp nhỏ nhất các tích này sao cho chúng phủ đợc các tiểu hạng của hàm ban đầu bằng cách lập bảng sau :

wxyz a

wx yz b

c

wx yz d

e

f

w x

y z g

Đầu tiên phải chọn 1 vì 1 là duy nhất để phủ c, e, và g Sau khi loại c, e, f, g (đ ợc phủ bởi 1) ta phải chọn 2 vì 2 duy nhất để phủ a và d Tiếp tục loại a, c, d, e, f, g (đ ợc phủ bởi 1 và 2) ta còn duy nhất b có thể phủ đợc bởi 3 hoặc 4 Chọn tiếp 3 hoặc 4 ta đợc dạng chuẩn tắc tối thiểu :

f = wz + wyz + wxy hoặc f = wz + wyz + x yz

Trang 9

Bài tập

I hàm bool

1. Chứng minh hàm f(x, y, z) = xy + yz + zx có giá trị 1 nếu và chỉ nếu có ít nhất 2 biến nhận giá trị 1

2. Chứng minh rằng xy + yz + zx = x y + y z + zx

Chứng minh : xy (z + z) + yz(x + x ) + zx(y + y ) = xy + y z + z x 

3. Rút gọn các biểu thức : x  0, x  1, x  x, x  x

4. Chứng minh : x  y = (x+y)(xy) = (xy) + (xy)

5. Chứng minh rằng F*(x1, , xn) = F(x1, , xn)

6. Có bao nhiêu hàm Bool f(x, y, z) khác nhau sao cho f(x , y , z ) = f(x, y, z)

Chứng minh : 8 bộ giá trị của x, y, z tạo thành 4 cặp giá trị (x, y, z) và (x, y, z) Hàm f tại mỗi cặp này có giá trị giống nhau Vì có 4 cặp, mỗi cặp có thể nhận 2 giá trị 0,1 nên có thể tạo

đ-ợc 16 hàm nh vậy

7. Có bao nhiêu hàm Bool f(x, y, z) khác nhau sao cho f(x , y, z) = f(x, y , z) = f(x, y, z )

Chứng minh : Tơng tự bài trên, có thể phân hoạch 8 bộ số của (x, y, z) thành 2 nhóm gồm (1, 1,

1), (0, 0, 1), (0, 1, 0), (1, 0, 0) và nhóm còn lại (trên mỗi nhóm này f lấy cùng một giá trị) Vì có hai nhóm nên có thể tạo đợc 4 hàm f nh vậy

Các bài tập sau đây dựa trên định nghĩa tổng quát về đại số Bool nh sau : Một hệ gồm tập B bất kỳ có chứa 2 phần tử đặc biệt 0, 1, các phép toán 1 ngôi , và 2 ngôi ,  đợc gọi là đại số Bool nếu các tính chất sau thoả với bất kỳ x, y, z  B:

Trang 10

Luật đồng nhất x  0 = x

x  1 = x Luật nuốt x  x = 1

x  x = 0 Luật kết hợp (x  y)  z = x  (y  z)

(x  y)  z = x  (y  z) Luật giao hoán x  y = y  x

x  y = y  x Luật phân phối x  (y  z) = (x  y) ( (x ( z)

x ( (y ( z) = (x ( y) ( (x ( z)

8. Chứng minh rằng trong một đại số Bool bất kỳ các tính chất sau đây luôn luôn đúng với mọi x:

Tính luỹ đẳng x ( x = x

x ( x = x Luật phần bù kép (x = x Luật De Morgan (x  y) = x  y

(x  y) = x  y

Chứng minh :

a Tính luỹ đẳng :

x  x = (x  x)  1 đồng nhất = (x  x)  (x  x) nuốt

biểu thức còn lại chứng minh tơng tự

b Luật phần bù kép

x = x  (x  x ) = (x  x)  (x  )

= (x  x)  (x  x)

= x ( ((x  x )

= x

c Luật De Morgan

Cần chứng minh (x  y)  (x  y) = 1 và (x  y)  (x  y ) = 0

(x  y)  (x  ) = (x ( ( y) ( (x ( y ( ) = 1 ( 1 = 1 (1)

(x  y)  (x  y) = (x  x  y) ( (y  x  y ) = 0  0 = 1 (2)

Từ (1), (2) và luật nuốt ta có : (x  y) =  y Biểu thức còn lại đợc chứng minh tơng tự

9. Chứng minh rằng trong đại số Bool bất kỳ

 mọi phần tử x đều có một phần bù x duy nhất sao cho x  x = 1 và x  x = 0

 phần bù của 0 là 1 và ngợc lại

 nếu x  y = 0 thì x = 0 và y = 0, nếu x  y = 1 thì x = 1 và y = 1

10 Chứng minh rằng trong đại số Bool bất kỳ đối ngẫu của một hằng đẳng thức nhận đ ợc bằng

cách thay  bởi , 0 bởi 1 và ngợc lại cũng là một hằng đẳng thức

11 Xét hệ gồm tập P(A) là tập các tập con của tập A nào đó và các phép toán giao, hợp, lấy

Ngày đăng: 06/09/2013, 10:50

HÌNH ẢNH LIÊN QUAN

Bảng sau đây liệt kê 16 hàm Bool 2 biến cùng các biểu thức biểu diễn chúng. - chuong 6:  dai so bool
Bảng sau đây liệt kê 16 hàm Bool 2 biến cùng các biểu thức biểu diễn chúng (Trang 2)

TỪ KHÓA LIÊN QUAN

w