Bài giảng môn Toán rời rạc - Chương 2: Hàm Bool

ppt 64 trang Đức Chiến 03/01/2024 720
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng môn Toán rời rạc - Chương 2: Hàm Bool", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptbai_giang_mon_toan_roi_rac_chuong_2_ham_bool.ppt

Nội dung text: Bài giảng môn Toán rời rạc - Chương 2: Hàm Bool

  1. Hàm Bool
  2. Tài liệu tham khảo • [1] Ts.Trần Ngọc Hội, Toán rời rạc. • [2] Gs.Ts Nguyễn Hữu Anh, Toán rời rạc, Nhà xuất bản giáo dục.
  3. B = { 0, 1} • Trên tập hợp B ta định nghĩa các phép toán cộng, nhân và phép lấy bù của các phần tử thuộc B như sau: – 0 + 0 = 0; 0 + 1 = 1 + 0 = 1 + 1 = 1 – 0 . 0 = 0 . 1 = 1 . 0 = 0; 1 . 1 = 1 luật phủ định của phủ định, luật lũy đẳng, luật về phần tử trung hòa, luật về phần tử trung bù, luật giao hoán, luật kết hợp, luật phân bố, luật De Morgan, luật thống trị.
  4. Định nghĩa hàm Bool Một hàm Bool n biến là một á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 chỉ nhận hai giá trị 0, 1 và f nhận giá trị trong B = {0, 1}. Ký hiệu Fn để chỉ tập các hàm Bool 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.
  5. Bảng chân trị Xét hàm Bool n biến f(x1,x2, ,xn) n Vì mỗi biến xi chỉ nhận hai giá trị 0, 1 nên chỉ có 2 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
  6. Ví dụ Xét kết qủa f trong việc thông qua một Quyết định dựa vào 3 phiếu bầu x, y, z 1. Mỗi phiếu chỉ lấy một trong hai giá trị: 1 (tán thành) hoặc 0 (bác bỏ). 2. Kết qủa f là 1 (thông qua Quyết định) nếu được đa số phiếu tán thành, là 0 (không thông qua Quyết định) nếu đa số phiếu bác bỏ. Khi đó f là hàm Bool theo 3 biến x, y, z có bảng chân trị như sau:
  7. Hàm Bool
  8. Các phép toán trên hàm Bool (f+g) (x1, x2, , xn) = f(x1, x2, , xn) + g(x1, x2, , xn) (f.g) (x1, x2, , xn) = f(x1, x2, , xn) . g(x1, x2, , xn)
  9. Dạng nối rời chinh tắc của Hàm Bool • 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 được gọi là từ đơn. • Đơn thức là tích khác không của một số hữu hạn từ đơn. • Từ tối tiểu là tích khác không của đúng n từ đơn. • Công thức đa thức là công thức biễu diễn hàm Bool thành tổng của các đơn thức. • Dạng nối rời chính tắc là công thức biểu diễn hàm Bool thành tổng của các từ tối tiểu.
  10. Xét hàm Bool f có bảng chân trị định bởi:
  11. Mạng logic (Mạng các cổng)
  12. Các cổng
  13. Công thức đa thức tối tiểu • Đơn giản hơn Cho hai công thức đa thức của một hàm Bool : f = m1+ m2 + . +mk (F) f =M1 + M2 + + Ml (G) Ta nói rằngcông thức F đơn giản hơn công thức G nếu tốn tại đơn ánh h: {1,2, ,k} → { 1,2, , l} sao cho với mọi i {1,2, ,k} thì số từ đơn của mi không nhiều hơn số từ đơn của Mh(i)
  14. Công thức đa thức tối tiểu • Đơn giản như nhau Nếu F đơn giản hơn G và G đơn giản hơn F thì ta nói F và G đơn giản như nhau Công thức đa thức tối tiểu: Công thức F của hàm Bool f được gọi là tối tiểu nếu với bất kỳ công thức G của f mà đơn giản hơn F thì F và G đơn giản như nhau
  15. Phương pháp biểu đồ Karnaugh Khi một ô nằm trong dãy được đánh dấu bởi x thì tại đó x =1, bởi thì tại đó x =0, tương tự cho y, z, t.
  16. • Tập các ô tại đó f bằng 1 được gọi là biểu đồ karnaugh của f, ký hiệu là kar(f) z t y
  17. Biểu đồ karnaugh của đơn thức z y
  18. • Hai ô được gọi là kề nhau (theo nghĩa rộng), nếu chúng là hai ô liền nhau hoặc chúng là ô đầu, ô cuối của cùng một hàng (cột) nào đó • Tế bào: hình chữ nhật gồm một lũy thừa của 2 những ô kề nhau.
  19. Tế bào
  20. tế bào 2 16 16
  21. Tế bào 4 16 4
  22. Tế bào 4 4 1
  23. Tế bào 8 4 4
  24. Tế bào lớn • Cho hàm Bool f. Ta nói T là một tế bào lớn của kar(f) nếu T thoả hai tính chất sau: – T là một tế bào và T kar(f) – Không tồn tại tế bào T’ nào thỏa T’  T kar(f)
  25. Xét hàm Bool f theo 4 biến x, y, z, t có biểu đồ karnaugh
  26. Xét hàm Bool f theo 4 biến x, y, z, t có biểu đồ karnaugh
  27. Xét hàm Bool f theo 4 biến x, y, z, t có biểu đồ karnaugh
  28. Xét hàm Bool f theo 4 biến x, y, z, t có biểu đồ karnaugh
  29. Xét hàm Bool f theo 4 biến x, y, z, t có biểu đồ karnaugh
  30. Xét hàm Bool f theo 4 biến x, y, z, t có biểu đồ karnaugh
  31. Thuật toán • 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: Xác định các tế bào lớn nhất thiết phải chọn Ta nhất thiết phải chọn tế bào lớn T khi tồn tại một ô của kar(f) mà ô này chỉ nằm trong tế bào lớn T và không nằm trong bất kỳ tế bào lớn nào khác.
  32. Thuật toán • 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).
  33. • 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.
  34. Ví dụ 1 • Tìm tất cả các công thức đa thức tối tiểu của hàm Bool:
  35. Bước 1:Vẽ kar(f):
  36. Bước 2: Kar(f) có các tế bào lớn như sau: x yz
  37. Bước 3: Xác định các tế bào lớn nhất thiết phải chọn: - Ô 1 nằm trong một tế bào lớn duy nhất x. Ta chọn x. - Ô 3 nằm trong một tế bào lớn duy nhất yz. Ta chọn yz. 1 2 x 4 5 1 2 3 7 8 4 5 6 9 10 7 8 2 3 5 6 9 10 yz
  38. Bước 4: Xác định các phủ tối tiểu gồm các tế bào lớn 1 2 3 4 5 6 1 2 3 7 8 x 4 5 6 9 10 7 8 9 10 1 2 3 4 5 6 yz 7 8 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): x + yz. 9 10
  39. • Bước 5: Xác định các công thức đa thức tối tiểu của f. Ứng với phủ tối tiểu gồm các tế bào lớn tìm được ở bước 4 ta tìm được duy nhất một công thức đa thức tối tiểu của f: x + yz
  40. 1 2 3 4 5 6 7 8 9 B1: Vẽ Kar(f)
  41. 1 2 1 2 1 2 3 4 5 3 4 5 3 4 5 6 7 8 9 6 7 8 9 6 7 8 9 1 2 3 4 5 1 2 1 2 3 4 5 3 4 5 6 7 8 9 6 7 8 9 6 7 8 9 B2: Xác định tế bào lớn
  42. 1 2 1 2 1 2 3 4 5 3 4 5 3 4 5 6 7 8 9 6 7 8 9 6 7 8 9 1 2 1 2 3 4 5 1 2 3 4 5 3 4 5 6 7 8 9 6 7 8 9 6 7 8 9 B3: Xác định các tế bào lớn nhất thiết phải chọn
  43. • Bước 3: Xác định các tế bào lớn nhất thiết phải chọn – Ô 6 nằm trong một tế bào lớn duy nhất . Ta chọn – Ô 1 nằm trong một tế bào lớn duy nhất . Ta chọn – Ô 4 nằm trong một tế bào lớn duy nhất xzt . Ta chọn xzt
  44. 1 2 1 2 1 2 3 4 5 3 4 5 3 4 5 6 7 8 9 6 7 8 9 6 7 8 9 1 2 1 2 3 4 5 1 2 3 4 5 3 4 5 6 7 8 9 6 7 8 9 6 7 8 9 B4: Xác định các phủ tối tiểu gồm các tế bào lớn
  45. 1 2 Còn lại ô 5 chưa bị phủ 3 4 5 Ô 5 nằm trong 2 tế bào lớn: 2 cách chọn 6 7 8 9 1 2 1 2 3 4 5 3 4 5 6 7 8 9 6 7 8 9 B4: Xác định các phủ tối tiểu gồm các tế bào lớn
  46. 1 2 Còn lại ô 5 chưa bị phủ 3 4 5 Ô 5 nằm trong 2 tế bào lớn: 2 cách chọn 1 2 6 7 8 9 3 4 5 6 7 8 9 B4: Xác định các phủ tối tiểu gồm các tế bào lớn
  47. 1 2 Còn lại ô 5 chưa bị phủ 3 4 5 Ô 5 nằm trong 2 tế bào lớn: 2 cách chọn 6 7 8 9 1 2 3 4 5 6 7 8 9 B4: Xác định các phủ tối tiểu gồm các tế bào lớn
  48. • Bước 5: Xác định các công thức đa thức tối tiểu của f