Toán rời rạc đỗ như an

182 697 1
Toán rời rạc  đỗ như an

Đ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

TRƯỜNG ĐẠI HỌC NHA TRANG BÀI GIẢNG TOÁN RỜI RẠC TS Đỗ Như An Bộ môn Khoa học Máy tính Khoa Công nghệ Thông tin Nha trang - 2002 Lời nói đầu Cùng với phát triển nhanh chóng công nghệ thông tin, Toán rời rạc (Discrete Mathematics) trở thành lĩnh vực quan trọng toán học đại thiếu người ta cần phải giải toán quan hệ đối tượng rời rạc lý thuyết thực tế máy tính Hiện Toán rời rạc ngày quan tâm trở thành kiến thức cho sinh viên ngành Toán – Tin, Công nghệ thông tin ngành khoa học kỹ thuật khác Nội dung: Chương Lý thuyết tổ hợp (Combinatorics Theory): Các phương pháp giải toán: Bài toán đếm, toán tồn tại, Bài toán liệt kê, Bài toán tối ưu Chương Lý thuyết đồ thị (Graph Theory): Những kết đồ thị, đồ thị Euler, đồ thị Hamilton, thuật toán đồ thị ứng dụng Chương Đại số boole (Boole Algebra): Các phương pháp tối thiểu hóa hàm boole ứng dụng đại số boole việc thiết kế mạch boole TÀI LIỆU THAM KHẢO [1] Vũ Đình Hoà, Một số kiến thức sở Graph hữu hạn, Nhà xuất giáo dục, Hà Nội 2002 [2] Nguyễn Đức Nghĩa – Nguyễn Tô Thành, Toán rời rạc, Nhà xuất giáo dục, Hà Nội 2000 [3] Đặng Huy Ruận, Lý thuyết đồ thị ứng dụng, Nhà xuất KH&KT, Hà Nội 2000 [4] Kenneth H Rosen, Discrete mathematics and its applications, McGraw – Hill, 1994 [5] Đỗ Đức Giáo, Cơ sở toán lập trình, Nhà xuất KH&KT, Hà Nội 1998 [6] Nguyễn Thanh Sơn, Lý thuyết đồ thị, Đại học Bách Khoa TP HCM.1993 [7] Seymour Lipschutz - Mare Lars Lipson, Tuyển chọn 1800 tập rời rạc, NXB Thống kê, Hà Nội 2002 [8] Diestel R., Graph theory, Second Edition Springer-Verlag New York, 2000 CHƯƠNG 1: LÝ THUYẾT TỔ HỢP Lý thuyết tổ hợp lĩnh vực toán học rời rạc Xuất vào đầu kỷ 17 nhiều công trình nghiên cứu nhà toán học xuất sắc Pascal, Fermat, Leibnitz, Euler, … lý thuyết tổ hợp thực phát triển vào năm 50 kỷ trước mà máy tính điện tử đời Nội dung lý thuyết tổ hợp giải bốn toán lớn: Bài toán đếm, toán tồn tại, toán liệt kê, toán tối ưu tổ hợp Hiện lý thuyết tổ hợp công cụ toán học hữu hiệu ứng dụng nhiều lĩnh vực khác như: Lý thuyết số, Hình học hữu hạn, Đại số giao hoán, Thống kê, Quy hoạch thực nghiệm, … đặc biệt ngành khoa học máy tính Công nghệ thông tin I BÀI TOÁN ĐẾM MỘT SỐ NGUYÊN LÝ ĐẾM Bài toán đếm toán nhằm trả lời câu hỏi “Có …?” Một số toán đếm thường gặp đếm số phần tử tập hợp thỏa mãn tính chất đó; đếm số nghiệm phương trình, đếm số phép toán thuật toán; đếm số tổ hợp, … Với toán đếm, đối tượng cần đếm thường gọi cấu hình tổ hợp Ví dụ 1.1 a) Có cách xếp người đứng thành hàng ngang để chụp ảnh? b) Có cách xếp người đứng thành hàng ngang để chụp ảnh cho bạn A không đứng cạnh bạn B? Giải a) Mỗi cách xếp người đứng thành hàng ngang hoán vị người, ta có 5! cách xếp b) Có × 4! cách xếp cho A B đứng cạnh Vậy số cách xếp người mà A B không đứng cạnh 5!− × 4! I BÀI TOÁN ĐẾM MỘT SỐ NGUYÊN LÝ ĐẾM Ví dụ 1.2 Thuật toán “sắp xếp nỗi bọt” (bubble sort) dùng để xếp theo thứ tự không giảm dãy phần tử a1 , a , K , a n cho trước mô tả đoạn chương trình sau: For i := to n − For j := to n−i If a[ j + 1] < a[ j ] then hoandoi ( a[ j + 1], a[ j ]) ; Hỏi thuật toán có phép toán so sánh? Giải Cách 1:Với i (i = 1, n − 1) phải thực n − i phép so sánh Vậy số phép so n(n − 1) Cách 2: Thuật toán “sắp xếp nỗi bọt” phải so sánh tất cặp phần tử đôi khác sánh (n − 1) + ( n − 2) + L + = n phần tử cho Do số phép so sánh C n2 = n! n( n − 1) = 2 !(n − 2)! I BÀI TOÁN ĐẾM MỘT SỐ NGUYÊN LÝ ĐẾM Ký hiệu A số phần tử tập hợp A Nếu A ⊂ X , A := X \ A tập hợp bù A X 1.1 Nguyên lý cộng Định lý 1.1 Giả sử A , B hai tập hợp rời nhau, | A ∪ B |=| A | + | B | n n i =1 i =1 Tổng quát: Nếu Ai , i = 1, n n tập rời nhau, | U Ai | = ∑| Ai | Ví dụ 1.3 Cần chọn sinh viên năm thứ ba hay năm thứ tư dự hội nghị Hỏi có cách chọn lựa sinh viên biết có 100 sinh viên năm thứ ba 50 sinh viên năm thứ tư? Giải: A := {sinh viên năm ba}, B := {sinh viên năm tư} Ta có A∩ B = ∅, | A |= 1000 , | B |= 50 Theo nguyên lý cộng, | A ∪ B |=| A | + | B |= 100 + 50 = 150 I BÀI TOÁN ĐẾM MỘT SỐ NGUYÊN LÝ ĐẾM Ví dụ 1.4 Xác định giá trị S sau thực xong đoạn chương trình sau: S := 0; For i := to 10 S := S + ; For j := to 20 S := S + ; For l := to 30 S := S + ; Giải Rõ ràng, đoạn chương trình câu lệnh For độc lập nhau, theo nguyên lý cộng, S = 10 + 20 + 30 = 60 I BÀI TOÁN ĐẾM MỘT SỐ NGUYÊN LÝ ĐẾM 1.2 Nguyên lý bù trừ Định lý 1.2 Giả sử A, B hai tập hợp bất kỳ, | A ∪ B |= | A | + | B | − | A ∩ B | Ví dụ 1.5 Giả sử A = {a, b, c}, B = {c, d, e, f} Tính |A U B| =? «d A Giải Ta có, A ∩ B = {c} ≠ Ø Do |A U B| = |A| + |B| - |A ∩ B| = + -1 = «a «b «c B «e «f H.2 Nhận xét: Nguyên lý cộng trường hợp riêng nguyên lý bù trừ hai tập rời I BÀI TOÁN ĐẾM MỘT SỐ NGUYÊN LÝ ĐẾM Ÿ Trường hợp với tập hợp: Giả sử A, B, C ba tập hợp bất kỳ, |A U B U C| = |A|+|B|+|C| - (|A ∩ B| + |A ∩ C| + |B ∩ C|) + |A ∩ B ∩ C| Ví dụ 1.6 Giả sử A = {1, 2}, B = {2, 3, 4}, C = {1, 2, 5, 6} Tính |AUBUC| ? A «4 Giải Ta có N1 = |A| + |B| + |C| = + + = N2 = |A ∩ B| + |A ∩ C| + |B ∩ C| = + + = N3 = |A ∩ B ∩ C| = Do đó, |A U B U C| = N1 - N2 + N3 = - + = «1 «2 «5«6 B «3 C H.3 10 CHƯƠNG ĐẠI SỐ BOOLE Các dạng khác hàm Boole Ví dụ 3.15 Xác định dạng tối thiểu hàm sau đây: f1 = xy + x y, f = x y + xy + x y, f = xy + x y Giải Các số hạng hàm f1 tương ứng gồm ô kề bảng Karnaugh biểu diễn theo biến x Do dạng tối thiểu f1 f1 = x Các số hạng hàm f gồm ô tương ứng bảng Karnaugh với hai cặp ô kề nguyên nhân nguyên tố nó, dạng tối thiểu f f2 = x + y Các số hạng hàm f gồm hai ô riêng lẻ, ô biểu diễn nguyên nhân nguyên tố f , dạng tối thiểu f f = x y + x y 168 CHƯƠNG ĐẠI SỐ BOOLE Các dạng khác hàm Boole b) Trường hợp ba biến f ( x, y , z ) : B → B Bảng Karnaugh trường hợp biến hình chữ nhật x Mỗi hàm đại số boole dạng tổng chuẩn tắc hoàn toàn biểu diễn bảng Karnaugh, ô tương ứng với số hạng f Ta xem hình dạng hình chữ nhật mặt bên hình trụ (chiều cao 2, chu vi đáy 4), hai mép hình chữ nhật kề Ta gọi hình chữ nhật sở ô vuông riêng lẻ, hai ô vuông kề nhau, ô vuông kề hợp thành hình chữ nhật kích thước x x Ta gọi hình chữ nhật sở tối đa hình chữ nhật sở không phận (không nằm trong) hình chữ nhật sở khác Một nguyên nhân nguyên tố (cốt yếu) f biểu diễn hình chữ nhật sở tối đa Dạng tối thiểu f tổng nguyên nhân nguyên tố hình chữ nhật sở tối đa 169 CHƯƠNG ĐẠI SỐ BOOLE Các dạng khác hàm Boole Ví dụ 3.16 Tìm dạng tối thiểu hàm: f = xyz + xy z + x y z + x y z f = xyz + xy z + x y z + x yz + x y z f = xyz + xy z + x y z + x y z + x y z Giải Biểu diễn hàm hình chữ nhật Karnaugh Hình (a) có HCN sở tối đa biểu diễn f1 tương ứng với ba nguyên nhân nguyên tố xy , y z x y z Dạng tối thiểu f1 f = xy + y z + x y z Hình (b) Dạng tối thiểu f f = xy + z Hình (c) có HCN sở tối đa biểu diễn f , có hai cách chọn HCN sở tương ứng dạng tối thiểu nó: f 31 = xy + y z + x y , f 32 = xy + x z + x y 170 CHƯƠNG ĐẠI SỐ BOOLE Các dạng khác hàm Boole c) Trường hợp bốn biến f ( x, y, z , t ) : B → B Bảng Karnaugh bốn biến hình chữ nhật x 4, trường hợp hai cặp cạnh đối diện coi kề Hình chữ nhật sở ô vuông riêng lẻ, ô vuông kề nhau, ô vuông kích thước x x 2, ô vuông kề kích thước x Ví dụ 3.17 Xác định dạng tối thiểu hàm f = xy z t + xy zt + x y zt + x yz t + x y zt + x yz t + + x y z t Giải Có hình chữ nhật sở tối đa biểu diễn f tương ứng với nguyên nhân nguyên tố yz , xy z , y z t Vì dạng tối thiểu f = yz + xy z + y z t 171 CHƯƠNG ĐẠI SỐ BOOLE Các dạng khác hàm Boole Phương pháp Quine - Mc Cluskey Trong phương pháp Karnaugh phương pháp hình học đơn giản khó thực số biến lớn bốn, phương pháp khó để tự động hoá, phương pháp Mc Cluskey – Quine lại thích hợp cho lập trình Phương pháp tối thiểu hoá hàm boole Quine – Mc Cluskey cụ thể hoá bước tính toán dạng bảng Ví dụ 3.18 Tối thiểu hóa hàm boole f = x yz t + x yzt + x yz t + x yzt + xy z t + xy zt + xyzt + xyzt Giải 10 Đưa dạng tổng chuẩn tắc thu gọn: Hàm cho dạng tổng chuẩn tắc hoàn toàn Viết tổ hợp cho tính f theo nguyên tắc xi tương ứng với 1, xi tương ứng với , tích biểu thị số nhị phân có giá trị theo hệ thập phân ghi bên cạnh (Bảng a) 172 CHƯƠNG ĐẠI SỐ BOOLE Các dạng khác hàm Boole Sắp xếp tổ hợp theo số lượng chữ số thành nhóm, ta nhóm với lượng chữ số 0,1,2, (Bảng b) So sánh tổ hợp thuộc nhóm thứ i với tổ hợp thuộc nhóm i + Nếu hai tổ hợp khác vị trí (một cột số) ta tổ hợp thay vị trí khác chúng dấu gạch (-) Bằng cách ta có Bảng (c) Đánh dấu * tổ hợp cặp có tính chất kể (ý nghĩa ‘–‘là loại bỏ biến thay theo luật bù: a + a = ) 173 CHƯƠNG ĐẠI SỐ BOOLE Các dạng khác hàm Boole Gạch bỏ tổ hợp trùng lặp để lại tiếp tục thực bước 1.3 thực thu Bảng (d), (e) Thiết lập tập hợp tổ hợp nằm bảng với tổ hợp không đánh dấu * Đây tổng nguyên nhân nguyên tố f Tổ hợp nhận từ Bảng (e) nguyên nhân nguyên tố, ta có dạng thu gọn f = xz + yz + xy 174 CHƯƠNG ĐẠI SỐ BOOLE Các dạng khác hàm Boole Dạng thu gọn f = xz + yz + xy 20 Chọn nguyên nhân nguyên tố cốt yếu ta có bảng có hai nguyên nhân nguyên tố cốt yếu phủ toàn f x z xy Vậy dạng tối thiểu f = x z + xy 175 CHƯƠNG ĐẠI SỐ BOOLE Các dạng khác hàm Boole Ví dụ 3.19 Tối thiểu hóa hàm f = x y z t + xyzt + x y zt + xy z t + x y zt + xy zt + xyz t 176 CHƯƠNG ĐẠI SỐ BOOLE Các dạng khác hàm Boole Dạng thu gọn f = x y z + y zt + xzt + xy 20 Chọn nguyên nhân nguyên tố cốt yếu: Dễ thấy, số hạng thứ thứ nguyên nhân nguyên tố cốt yếu, hàm boole cho có hai dạng tối thiểu: f1 = x yz + yzt + xy , f = x yz + xzt + xy 177 CHƯƠNG ĐẠI SỐ BOOLE Mạch Boole Đại số boole có nhiều ứng dụng việc thiết kế thiết bị điều khiển tự động mà bên mạch điện mô tả hàm boole gọi mạch logic hay mạch boole Việc tối thiểu hóa hàm boole tương ứng mạch boole giúp ta thiết kế mạch điện tối ưu Ví dụ 3.20 Xét sơ đồ mạch điện gồm ngắt a, b, c sau • M • b • a N • • c Bảng chân trị hàm boole tương ứng f (a, b, c) = a + bc 178 CHƯƠNG ĐẠI SỐ BOOLE Mạch Boole CÁC CỔNG BOOLE CƠ SỞ Mạch boole tạo thành từ cổng boole sở or, and, not ký hiệu cụ thể sau: x x y y x+y Hình 2.8 Mạch điện (song song) cổng or tương ứng x x y xy y Hình 3.9 Mạch điện (nối tiếp) cổng and tương ứng x x x x Hình 3.10 Mạch điện phủ định (bộ đảo) cổng not tương ứng 179 CHƯƠNG ĐẠI SỐ BOOLE Mạch Boole Đối với cổng or and, có nhiều đầu vào Ví dụ trường hợp với n đầu vào biểu diễn Hình 3.11 x1 x2 xn x1 + x + + x n x1 x1 x x n x2 xn Hình 3.11 Các cổng and or với n đầu vào 180 CHƯƠNG ĐẠI SỐ BOOLE Mạch Boole Ví Dụ Thiết kế mạch với hàm boole f = abc + a bc + ab Dạng tối thiểu f = ac + ab mạch boole tối thiểu tương ứng 181 CHƯƠNG ĐẠI SỐ BOOLE Mạch Boole ứng dụng Ví dụ 3.22 Một hệ thống đèn cố định điều khiển nhiều công tắc Một mạch cần thiết kế cho mở (ngắt mạch) công tắc hệ thống đèn sáng tắt tắt sáng Hãy thiết kế mạch thực điều với hai công tắc Giải Bảng chân trị hàm boole thu f ( x , y ) = xy + x y dạng tối thiểu, mạch boole tương ứng 182

Ngày đăng: 27/08/2016, 09:02

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan