1. Trang chủ
  2. » Luận Văn - Báo Cáo

Toan-Roi-Rac_Nguyen-Viet-Dong_Vi.dai-So-Bool-Va-Ham-Bool - [Cuuduongthancong.com].Pdf

17 0 0

Đ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

Nội dung

toán rời rạc,nguyễn viết đông,dhkhtnhcm 1 1 Phần VI Đại Số Bool và hàm Bool Biên soạn Nguyễn Viết Đông 2 George Boole (1815 1864) 3 Tài liệu tham khảo  [1] GS TS Nguyễn Hữu Anh, Toán rời rạc, Nhà xuấ[.]

Phần VI Đại Số Bool hàm Bool Biên soạn:Nguyễn Viết Đông George Boole (1815-1864) Tài liệu tham khảo Đại Số Bool [1] GS.TS Nguyễn Hữu Anh, Toán rời rạc, Nhà xuất giáo dục  [2] TS.Trần Ngọc Hội, Tốn rời rạc  Một đại số Bool (A,,) tập hợp A   với hai phép toán , , tức hai ánh xạ: : AA  A (x,y) xy vaø : AA  A (x,y)xy thỏa tính chất sau: CuuDuongThanCong.com https://fb.com/tailieudientucntt Đại Số Bool   Đại Số Bool Tính giao hoán: x,yA xy = yx; xy = yx; Tính kết hợp: x,y,zA (xy) z = x(y z); (xy) z = x (y z)   Có phần tử trung hòa 0: x A x1 = 1x = x; x0 = 0x = x Mọi phần tử có phần tử bù: x A,  x A, x  x= x  x = 0; x x = x  x =  Tính phân bố: x,y,zA x(y z) = (xy) (xz); x (y z) = (xy)  (xz) Đại Số Bool Đại Số Bool Ví dụ: Xét tập hợp B = {0, 1} Trên B ta định nghóa hai Xét F tập hợp tất dạng mệnh đề theo n biến p1, p2,…,pn với hai phép toán nối liền , phép toán nối rời , ta đồng dạng mệnh đề tương đương Khi F đại số Bool với phần tử 1, phần tử sai 0, phần tử bù dạng mệnh đề E dạng mệnh đề bù E phép toán , sau: Khi đó, B trở thành đại số Bool CuuDuongThanCong.com https://fb.com/tailieudientucntt Đại Số Bool Định nghĩa hàm Bool Cho đại số Bool (A,,) Khi với x,yA, ta có: 1) xx = x; xx = x 2) x0 = 0x =0; x1 =1x = 3) Phần tử bù x vàx = x;  0;  4) Công thức De Morgan: Hàm Bool n biến ánh xạ f : Bn  B , B = {0, 1} Như hàm Bool n biến hàm số có dạng : f = f(x1,x2,…,xn), biến x1, x2,…, xn f nhận giá trị B = {0, 1} x  y  x  y; Ký hiệu Fn để tập hàm Bool n biến x  y  x  y 5) Tính hấp thụ:x(xy) = x; x (xy) = x Ví dụ: Dạng mệnh đề E = E(p 1,p2,…,pn) theo n biến p1, p2,…, pn hàm Bool n biến Ví dụ Bảng chân trị Xét kết f việc thông qua định dựa vào phiếu bầu x, y, z Xét hàm Bool n biến f(x1,x2,…,xn) Mỗi phiếu lấy hai giá trị: (tán thành) (bác bỏ) Kết qủa f (thông qua định) Vì biến xi nhận hai giá trị 0, nên có 2n trường hợp biến (x1,x2,…,xn) Do đó, để mô tả f, ta lập bảng gồm 2n hàng ghi tất giá trị f tùy theo 2n trường hợp biến Ta gọi bảng chân trị f đa số phiếu tán thành, (không thông qua định) đa số phiếu bác bỏ 11 CuuDuongThanCong.com 10 12 https://fb.com/tailieudientucntt Hàm Bool Các phép toán hàm Bool Khi f hàm Bool theo biến x, y, z có bảng chân trị sau: Các phép tốn Fn định nghĩa sau: Phép cộng Bool : Với f, g  Fn ta định nghóa tổng Bool f g: f  g = f + g – fg x = (x1,x2,…,xn) Bn, (f  g)(x) = f(x) + g(x) – f(x)g(x) 13 Các phép toán hàm Bool 14 Các phép toán hàm Bool Phép nhân Bool : Với f, g Fn ta định nghóa tích Bool f g f  g = fg 3) Phép lấy hàm bù: Với f  Fn ta định nghóa hàm bù f sau : f  1 f 4) Thứ tự Fn Với f, g  Fn f  g   x = (x1, x2, …, xn) Bn , f(x)  g(x) x=(x1,x2,…,xn)Bn, (f  g)(x) = f(x)g(x) Ta thường viết fg thay cho f  g 15 CuuDuongThanCong.com 16 https://fb.com/tailieudientucntt Dạng nối rời tắc Hàm Bool Dạng nối liền tắc hàm Bool Xét tập hợp hàm Bool n biến Fn theo n biến x1 ,x2,…,xn      Mỗi hàm bool xi hay xiđược gọi từ đơn Đơn thức tích khác khơng số hữu hạn từ đơn Từ tối tiểu tích khác không n từ đơn Công thức đa thức công thức biểu diễn hàm Bool thành tổng đơn thức Dạng nối rời tắc công thức biểu diễn hàm Bool thành tổng từ tối tiểu   Từ tối đại phần bù từ tối tiểu Mỗi từ tối đại tổng Boole n từ đơn Công thức biểu diễn hàm Boole f thành tích từ tối đại gọi dạng nối liền tắc hàm Boole f 17 Công thức đa thức tối tiểu 18 Công thức đa thức tối tiểu Đơn giản Cho hai công thức đa thức hàm Bool : f = m1 m2 …  mk (F) f = M1  M2 …  Ml (G) Ta nói công thức F đơn giản công thức G tồn đơn ánh : {1,2, ,k} → { 1,2,…, l} cho với i {1,2, ,k} số từ đơn mi không nhiều số từ đơn M(i)  Đơn giản Nếu F đơn giản G G đơn giản F ta nói F G đơn giản ** Công thức đa thức tối tiểu: Công thức F hàm Bool f gọi tối tiểu với công thức G f mà đơn giản F F G đơn giản  19 CuuDuongThanCong.com 20 https://fb.com/tailieudientucntt Phương pháp biểu đồ Karnaugh Xét f hàm Bool theo n biến x1,x2,…,xn với n = Trường hợp n = 3: f hàm Bool theo biến x, y, z Khi bảng chân trị f gồm hàng Thay cho bảng chân trị f ta vẽ bảng chữ nhật gồm ô, tương ứng với hàng bảng chân trị, đánh dấu sau: Trường hợp n = 4: f hàm Bool theo biến x, y, z, t Khi bảng chân trị f gồm 16 hàng Thay cho bảng chân trị f ta vẽ bảng chữ nhật gồm 16 ô, tương ứng với 16 hàng bảng chân trị, đánh dấu sau: CuuDuongThanCong.com Với qui ước: 1.Khi ô nằm dãy đánh dấu x x =1, x x =0, tương tự cho y, z 2.Các ô f đánh dấu (tô đậm gạch chéo) Tập ô đánh dấu gọi biểu đồ Karnaugh f, ký hiệu kar(f) Với qui ước: Khi ô nằm dãy đánh dấu x x =1, x =0, tương tự cho y, z, t x Các ô f đánh dấu (tô đậm gạch chéo) Tập ô đánh dấu gọi biểu đồ karnaugh f, ký hiệu kar(f) https://fb.com/tailieudientucntt Tế bào Định lý Cho f, g hàm Bool theo n biến x1,x2,…,xn Khi đoù: a) kar(fg) = kar(f)kar(g) b) kar(fg) = kar(f)kar(g) c) kar(f) gồm ô f từ tối tiểu d) kar(f)  kar(g)  f  g Ví du 1ï: Xét hàm Bool theo biến x, y, z, t CuuDuongThanCong.com Hai ô gọi kề (theo nghóa rộng), chúng hai ô liền chúng ô đầu, ô cuối hàng (cột) Nhận xét rằng, cách đánh dấu trên, hai ô kề lệch biến Tế bào hình chữ nhật (theo nghĩa rộng) gồm 2k (k = 0,1,…,n – 1) Nếu T tế bào T biểu đồ karnaugh đơn thức m, cách xác định m sau: chiếu T lên cạnh, toàn hình chiếu nằm trọn từ đơn từ đơn xuất m Ví dụ 2: Xét hàm Bool theo biến x, y, z, t https://fb.com/tailieudientucntt Ví dụ 3: Xét hàm Bool theo biến x, y, z, t Ví dụ 5: Ví dụ 4: Xét hàm Bool theo biến x, y, z, t Tế bào lớn Xét hàm Bool theo biến x, y, z, t Tế bào sau: Cho hàm Bool f Ta nói T tế bào lớn kar(f) T thoả hai tính chất sau: a) T tế bào vaø T  kar(f) Là biểu đồ Karnaugh đơn thức nào? b) Không tồn tế bào T’ thỏa T’  T T  T’  kar(f) CuuDuongThanCong.com https://fb.com/tailieudientucntt Ví dụ: Xét hàm Bool f theo biến x, y, z, t có biểu đồ karnaugh sau: CuuDuongThanCong.com Kar(f) có tế bào lớn sau: https://fb.com/tailieudientucntt Thuật toán Bước 1: Vẽ biểu đồ karnaugh f Bước 2: Xác định tất tế bào lớn kar(f) Bước 3: Xác định tế bào lớn mà thiết phải chọn Ta thiết phải chọn tế bào lớn T tồn ô kar(f) mà ô nằm tế bào lớn T không nằm tế bào lớn khác Thuật toán Bước 4: Xác định phủ tối tiểu gồm tế bào lớn Nếu tế bào lớn chọn bước phủ kar(f) ta có phủ tối tiểu gồm tế bào lớn kar(f) Nếu tế bào lớn chọn bước chưa phủ kar(f) xét ô chưa bị phủ, có hai tế bào lớn chứa ô này, ta chọn tế bào lớn Cứ tiếp tục ta tìm tất phủ gồm tế bào lớn kar(f) Loại bỏ phủ không tối tiểu, ta tìm tất phủ tối tiểu gồm tế bào lớn kar(f) Thuật toán Bước 5: Xác định công thức đa thức tối tiểu f Từ phủ tối tiểu gồm tế bào lớn kar(f) tìm bước ta xác định công thức đa thức tương ứng f So sánh công thức Loại bỏ công thức đa thức mà có công thức đa thức thực đơn giản chúng Các công thức đa thức lại công thức đa thức tối tiểu f CuuDuongThanCong.com Một số ví dụ Ví dụ 1: Tìm tất công thức đa thức tối tiểu hàm Bool: f (x, y,z, t)  xyzt  xy  xz  yz  xy(z  t) https://fb.com/tailieudientucntt 10 Giải Ta có f  xyzt xy xz yz xyz xyt Bước 1: Vẽ kar(f) Bước 3: Xác định tế bào lớn thiết phải chọn - Ô nằm tế bào lớn x Ta chọn x - Ô nằm tế bào lớn yz Ta chọn yz Bước 4: Xác định phủ tối tiểu gồm tế bào lớn Các ô tế bào lớn chọn bước phủ sau: Ta phủ tối tiểu gồm tế bào lớn kar(f): x; yz CuuDuongThanCong.com Bước 5: Xác định công thức đa thức tối tiểu f Ứng với phủ tối tiểu gồm tế bào lớn tìm bước ta tìm công thức đa thức tối tiểu f: f  x  yz https://fb.com/tailieudientucntt 11 Ví dụ 2: Tìm tất công thức đa thức tối tiểu hàm Bool: Bước 2: Kar(f) có tế bào lớn sau: f (x, y, z, t)  y(zt  zt)  y(zt  xzt)  xzt Giaûi Ta có Bước : f  yzt  yzt  yzt  xyzt  xzt Vẽ kar(f): Bước 3: Xác định tế bào lớn thiết phải chọn Ô nằm tế bào lớn Ta chọn xt xt Ô nằm tế bào lớn xzt Ta chọn xzt Ô nằm tế bào lớn Ta chọn zt zt Bước 4: Xác định phủ tối tiểu gồm tế bào lớn Các ô tế bào lớn chọn bước phủ sau: CuuDuongThanCong.com https://fb.com/tailieudientucntt 12 Bước 5: Xác định công thức đa thức tối tiểu f Ứng với hai phủ tối tiểu gồm tế bào lớn tìm bước ta tìm hai công thức đa thức f: Ta thấy hai công thức đơn giản Do đó, chúng hai công thức đa thức tối tiểu f Vídụ 3(BÀI 7Đề2007) • Hãy xác định công thức đa thức tối tiểu hàm Bool: • Biểu đồ Karnaugh: (0,25đ) f  x z( y  t )  x z t  z ( yt  x y) CuuDuongThanCong.com https://fb.com/tailieudientucntt 13 • Các tế bào lớn: (0,5đ) xz, yz, zt, x z t , x y t • Các tế bào lớn bắt buộc phải chọn xz , zt, x z t • Còn lại ô (1,4) nằm tế bào lớn • Do có công thức đa thức tương ứng với phủ tối tiểu: (0, 5đ) f  xz  zt  x z t  x y t f  xz  zt  x z t  yz • Trong có công thức thứ hai tối tiểu (0,25đ) yz, x y t Mạng logic (Mạng cổng) Định nghóa Cổng NOT Cổng AND Một mạng logic hay mạng cổng hệ thống có dạng: Cổng OR đó: - Input: x1, x2, , xn biến Bool Cổng NAND - Output f(x1, x2, , xn) hàm Bool Ta nói mạng logic tổng hợp hay biểu diễn hàm Bool f Một mạng logic luôn cấu tạo từ số mạng sơ cấp mà ta gọi cổng CuuDuongThanCong.com Coång NOR https://fb.com/tailieudientucntt 14 Basic Gates We combine gates by allowing output of one gate to become input of other gates xy x x x inverter xy  xy y x+y x y x y xn OR gate OR gate with n inputs xy x x1+x2+…+xn x1 x2 y x1 x2 x1x2…xn xy  xy y x xy Example of Circuits Example Construct the circuit that provides the output x y z x y z Example Design a circuit to simulate the voting of a committee of three persons based on the majority Solution The voting of three persons are represented by three Boolean variables x, y, z : for YES and for NO x+y+z ( x  y  z) x y z x CuuDuongThanCong.com xz xy+xz+yz z y xyz z xy x y x y OR xy AND gate with n inputs ( x  y  z) x y z xy x xn AND gate x z yz https://fb.com/tailieudientucntt 15 Example of Circuits The corresponding circuit Example Design a circuit for a light controlled by two switches Solution The switches are represented by two Boolean variables x, y : for CLOSED and for OPEN Let F(x, y) =1 when the light is ON and when it is OFF Assume that F(1, 1) =1 when both switches are closed Then the Boolean function F(x, y) is determined by the truth table x y F(x, y) 1 1 0 0 x y x y z F(x, y) 1 1 Assume that F(1, 1, 1) =1 when three switches are closed 1 0 1 0 1 0 1 0 1 0 0 xy y y Let F(x,y,z) =1 when the light is ON and when it is OFF CuuDuongThanCong.com xy  x y x x x y Example Design a circuit for a light controlled by three switches Solution The switches are represented by three Boolean variables x, y, z : for CLOSED and for OPEN Then the Boolean function F(x, y, z) is determined by the truth table xy xyz z x xyz y y z The corresponding circuit z x x y z x y z y z x x yz xyzxyz x yzx yz x yz https://fb.com/tailieudientucntt 16 f  x yz The corresponding circuit y This formula contains only three literals It allows us to design a circuit to represent f with only one OR gate with three inputs x f  x yz  y yz z y z xy x x y z f  y z  xy  x yz  w x z x yz w x z wx z Đề thi 2009 Xét hàm Bool f  ( x y  xy)( z  t )  z( xt  y t )  y z t  f a) Hãy tìm từ tối tiểu m cho m b) Suy cách biểu diễn f tích từ tối đại , từ tối đại tổng Bool từ đơn CuuDuongThanCong.com https://fb.com/tailieudientucntt 17

Ngày đăng: 15/11/2023, 23:28