Giáo trình Toán rời rạc Chương 5

15 1.7K 10
Giáo trình Toán rời rạc Chương 5

Đ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

Giáo trình Toán rời rạc

Chương VQUAN HỆI. QUAN HỆ VÀ CÁC TÍNH CHẤTo Khái niệm và tính chất :Đònh nghóa: Cho A và B là các tập hợp. Một quan hệ hai ngôi ℜ từ A đến B là một tập con của tích Descartes AxB.Chúng ta dùng cách kí hiệu: aℜb để chỉ (a,b) ∈ℜ và nói rằng a có quan hệ ℜ với b. Khi A=B ta nói ℜ là một quan hệ hai ngôi trên A.Ví dụ 1: Xét tập A={1; 2; 3; 4; 5} và tập B={1; 2; 3; 4; 5; 6} với quan hệ ℜ đònh nghóa như sau:∀(a,b)∈AxB: aℜb⇔a chia hết b.Ta thấy: ℜ={(1,1); (1,2); (1,3); (1,4); (1,5); (1,6); (2,2); (2,4); (2,6); (3,3); (3,6); (4,4); (5,5)} (là một tập con của tập AxB). Các tính chất của quan hệ :Đònh nghóa: Cho ℜ là một quan hệ hai ngôi trên tập A ta nói ℜ có tính chất:Phản xạ (reflexivity) nếu và chỉ nếu : ∀a ∈ A : a ℜ ối xứng (symmetric) nếu và chỉ nếu :∀ a,b ∈ A : a ℜ b ⇒b ℜ aPhản đối xứng (antisymmetric) nếu và chỉ nếu :∀ a,b ∈ A : (a ℜ b) ∧ (b ℜ a) ⇒ (a=b)Bắc cầu (transitivity) nếu và chỉ nếu :∀ a,b,c ∈ A : (a ℜ b) ∧ (b ℜ c) ⇒ (a ℜ c)Ví dụ 2:Xét tập Z các số nguyên và quan hệ hai ngôi trên Z đònh nghóa bởi:∀(a,b)∈ZxZ: aℜb⇔a ≡ b (mod 5)87 Ta có: 1) ∀(a,a)∈ZxZ: a ≡ a (mod 5)2) ∀(a,b)∈ZxZ: a ≡ b (mod 5) ⇒ a ≡ b (mod 5)3) ∀ a,b,c ∈ Z : [a ≡ b (mod 5)] ∧ [b ≡ c (mod 5)] ⇒ a ≡ c (mod 5)Vậy quan hệ đồng dư modulo 3 xác đònh trên tập Z là một quan hệ hai ngôi có các tính chất phản xạ, đối xứng và bắc cầu. Quan hệ này không có tính phản đối xứng vì, chẳng hạn, : [10 ≡ 15 (mod 5)] ∧ [15 ≡ 10 (mod 5)] nhưng rõ ràng là 15≠10.Ví dụ 3:Cho X là một tập khác ∅ và P là tập các ánh xạ đi từ X đến tập các số thực R. Xét quan hệ p trên P như sau:∀f,g ∈ P : fpg ⇔(∀x∈ X , f(x) ≤ g(x))Có thể chứng minh rằng quan hệ p là một quan hệ hai ngôi có các tính chất: phản xạ, phản đối xứng và bắc cầu.o Đònh nghóa khái niệm “hàm” nhờ quan hệ :Một hàm f từ tập A đến tập B cho phép thiết lập mối quan hệ f giữa mỗi phần tử a ∈ A với một phần tử b ∈ B tương ứng. Đồ thò của f:Γ(f)={ }( , ) ( ) ( ) ( ( ))a b a A b B b f a∈ ∧ ∈ ∧ =là một tập con của AxB nên f cũng có thể xem như một quan hệ hai ngôi từ A đến B. Ngược lại nếu ℜ là một quan hệ hai ngôi từ A đến B sao cho mọi phần tử trong A là phần tử thứ nhất của chỉ một cặp có sắp xếp trong ℜ thì có thể đònh nghóa hàm f với ℜ như là đồ thò của nó.Ví dụ 4: Cho ℜ là quan hệ 2-ngôi từ A = {1; 2; 3; 4; 5}đến B = {1; 2; 3; 4; 5; 6}xác đònh như sau: ℜ={(1,1); (2,4); (3,3); (4,4); (5,5)}.Khi đó ℜ có thể xem như đồ thò của hàm f f : A B1 12 43 34 45 588 o Quan hệ n-ngôi và cơ sở dữ liệu :Ta có thể mở rộng đònh nghóa về quan hệ nói trên lên nhiều tập như sau:Đònh nghóa: Cho A1,A2, .,An là các tập hợp. Một quan hệ n-ngôi ℜ xác đònh trên các tập này là một tập con của tích Descartes A1xA2x xAn.Ví dụ 5:Cho ℜ là quan hệ gồm các bộ sáu (T,N,P,Q,K,B) biểu diễn thông tin về mỗi sinh viên, trong đó T là họ và tên, N là ngày sinh, P là phái tính, Q là quê quán, K là lớp, B là số danh bộ. Chẳng hạn nam sinh viên Trần Dạ Lan sinh ngày 12-2-1987 tại Mỏ cày lớp K1 CNTT có số danh bộ là K1_9110 thì:(Trần Dạ Lan, 12-2-1987, Nam, Mỏ cày, K1 CNTT,K1_9110) ∈ ℜKhi đó ℜ là quan hệ 6-ngôi xác đònh trên các tập dữ liệu về Họ và tên, Ngày sinh, Phái tính, Danh sách lớp, Sổ danh bộ.Một quan hệ ℜ kiểu như vậy, như trong phần trình bày dưới đây, được gọi là một bảng. Tập các bảng chứa các thông tin có liên quan với nhau (dữ liệu) được gọi là một cơ sở dữ liệu (CSDL) . Trong công nghệ thông tin các CSDL được lưu trữ trong các bộ nhớ và được truy xuất, xử lí bởi các chương trình máy tính đặc biệt gọi là các hệ quản trò CSDL. Thời gian cần thiết để thao tác các thông tin trong một CSDL tùy thuộc vào việc các thông tin đó đã được lưu trữ như thế nào. Nhìn chung các thao tác xử lí thông tin trên các CSDL bao gồm: Tạo lập CSDL, bổ sung / xóa bớt/điều chỉnh/sắp xếp/tìm kiếm các mẫu tin và tổ hợp các mẫu tin từ các CSDL. Các CSDL thường bao gồm rất nhiều bảng (table) có liên kết với nhau. Các CSDL như vậy thường được gọi bằng thuật ngữ CSDL quan hệ.Ta dùng thuật ngữ mẫu tin (record) để chỉ là một bộ gồm n phần tử dữ liệu có liên quan với nhau theo một nghóa nào đó. Ví dụ 6: Bộ 6 phần tử:(Trần Dạ Lan, 12-2-1987, Nam, Mỏ cày, K1 CNTT,K1_9110)là một mẫu tin chứa các dữ liệu liên quan về sinh viên (Trần Dạ Lan)Một mẫu tin gồm các phần tử tạo nên các trường (field). Trong mẫu tin cụ thể nói trên có các trường: Họ và Tên, Ngày sinh, Phái tính, Nơi sinh, Sinh viên lớp, Số danh bộ (HoTen, NgaySinh, Phai, Noisinh, Lop, và SDBo).Mô hình CSDL quan hệ biểu diễn một CSDL gồm các mẫu tin dưới dạng một quan hệ n-ngôi. Các quan hệ được dùng để biểu diễn CSDL còn gọi là các bảng (table) vì những quan hệ đó thường được thể hiện dưới dạng một hoặc nhiều bảng. Ví dụ bảng sau đây mô tả CSDL về sinh viênHọ và Tên Ngày sinh Phái Nơi sinh Lớp. Số danh bộBùi Bánh 12-12-1978 Nữ Giồng Trôm K17 Toán Tin K17_1255Đô Văn Mật 21-03-1981 Nam Thạnh Phú K21 Lý K21_3455Lê Thò Nâu 18-06-1980 Nữ Thạnh Phú K20 Sinh K20_122189 Đặng Trụi 27-05-1980 Nam Thò xã K20 Sinh K20_1012 .Bảng như thế chính là một quan hệ 6-ngôi trên các tập HoTen, NgaySinh, Phai, Noisinh, Lop, và SDBo. Có một tập mà quan hệ n-ngôi xác đònh trên đó có một tính chất là:a) Khác ∅b) Không có hai mẫu tin nào có cùng giá trò tại trường (filed) này.Tập đó gọi là Khóa (key) của bảng dữ liệu. Tuy nhiên một tập hợp các trường cũng có thể xác đònh một biểu thức thỏa mãn hai tính chất a) và b) nói trên khi đó ta có một khóa phức hợp .Ví dụ 7:Trong ví dụ 5, trường HoTen không thể lấy làm khóa được mặc dù ai cũng phải có họ và tên (ie: khác∅) tuy nhiên có thể có nhiều sinh viên có cùng họ và tên. Tương tự như vậy có thể có rất nhiều sinh viên có cùng ngày tháng năm sinh do đó trường Ngaysinh cũng không thể là một khóa. Trường số danh bộ SDBo có thể được lấy làm khóa vì mỗi sinh viên đều bắt buộc phải có một số danh bộ và hơn nữa số danh bộ này không trùng lắp giữa hai sinh viên khác nhau. Một khóa là nhằm để phân biệt các mẫu tin khác nhau vì vậy đối với một bảng không cần thiết phải có hơn một khóa1 , tuy nhiên nếu tin tưởng chắc rằng trên các tập HoTen, NgaySinh, Phai, Noisinh, Lop, và SDBo đang xét không thể có hai người cùng họ tên, cùng ngày sinh và nơi sinh thì bộ “HoTen+NgaySinh+Noisinh” có thể lấy làm một khóa được (khóa phức hợp) . Có nhiều phép toán trên các quan hệ n-ngôi để tạo nên các quan hệ n-ngôi mới, ta xét một số trong các phép toán đó:Đònh nghóa: Phép chiếu Pi1,i2, ,im ánh xạ bộ n phần tử (a1,a2, .,an) thành bộ m phần tử (ai1,ai2, .,aim), trong đó m≤n.Nói cách khác phép chiếu Pi1,i2, ,im cho phép lọc và giữ lại n-m phần tử (ai1,ai2, .,aim) trong bộ (a1,a2, .,an).Ví dụ 8: Phép chiếu P1,4,5 ánh xạ bộ(Trần Dạ Lan, 12-2-1987, Nam, Mỏ cày, K1 CNTT,K1_9110)thành bộ(Trần Dạ Lan, Mỏ cày, K1 CNTT)Qua ví dụ này ta có thể thấy phép chiếu Pi1,i2, ,im đã biến đổi một quan hệ n-ngôi thành một quan hệ khác chỉ gồm n-m ngôi. Qua phép chiếu một bảng ta sẽ nhận được một bảng mới 1 Một số hệ quản trò CSDL, như Visual Foxpro, dùng thuật ngữ PRIMARY KEY để chỉ khóa này.90 mà số mẫu tin có thể bò giảm đi nếu có một số mẫu tin có các giá trò như nhau trong tất cả m phần tử của phép chiếu.Ví dụ 9:Phép chiếu P2,3 sẽ biến bảng ℜ thành bảng ℜ’ như sau:Ngược lại với phép chiếu làm số cột của một bảng có thể giảm đi thì phép hợp nói sau đây cho phép tổ hợp hai bảng thành một bảng mới khi hai bảng này có một số trường giống nhau.Đònh nghóa: Cho ℜ là quan hệ bậc m và S là quan hệ bậc n. Phép hợp Jp(ℜ,S), với p≤m và p≤n là một quan hệ bậc (m+n-p) chứa tất cả các bộ (m+n-p) phần tử (a1,a2, ,am-p, c1 ,c2, ,cp,b1,b2,bn-p) trong đó bộ m phần tử (a1,a2, ,am-p, c1 ,c2, ,cp) thuộc ℜ và bộ n phần tử c1 ,c2, ,cp,b1,b2,bn-p) thuộc S.Nói cách khác toán tử hợp Jp tạo một quan hệ mới từ hai quan hệ cũ bằng cách tổ hợp tất cả các bộ m phần tử của quan hệ thứ nhất với tất cả các bộ n phần tử của quan hệ thứ hai, trong đó p phần tử cuối cùng của bộ m phần tử phù hợp với p phần tử đầu tiên của bộ n phần tử.2Ví dụ 10:Xét hai bảng:Bảng 1Giảng viên Khoa Mã số môn họcVương Đức Bình CNTT C123Vương Đức Bình CNTT C134Võ Thành Phước Tự NhiênT345Võ Thành Phước Tự NhiênT367Trần thò Bạch HuệCNTT C052Lê Văn Hoa Xã Hội X111Lê Văn Hoa Xã Hội X1172 Trong thuật ngữ của ngôn ngữ SQL toán tử này còn được gọi là toán tử Left Outer JointBảng ℜSinh viên Ngành họcMôn họcLê Ngọt Toán học TopologyDiễm Thuý Toán học TopologyHoàng Hậu Tin học C++Trần Bạch Sinh học Di truyềnĐặng Vô Tin học C++Sùng Văn KhoaiSinh học Di truyềnVàng A Vọt Toán học Đại sốBảng ℜ’Ngành họcMôn họcToán học TopologyTin học C++Sinh học Di truyềnToán học Đại sốBảng 2Khoa Mã số môn họcPhòng họcGiờ dạyCNTT C123 A202 14hCNTT C134 A203 8hCNTT C216 A204 10hTự Nhiên T345 B201 8hTự Nhiên T367 B202 10hTự Nhiên T412 B204 10hCNTT C052 B203 16hXã Hội X111 A301 8hXã Hội X117 A302 10hXã Hội X212 A303 14hXã Hội X213 A304 16hMầm NonM111 B301 8hThể Dục T112 A102 8h91 Toán tử J2 áp trên hai Bảng 1 và Bảng 2 sẽ cho ra Bảng 3 sau đây:Bảng 3Giảng viên Khoa Mã số môn họcPhòng họcGiờ dạyVương Đức Bình CNTT C123 A202 14hVương Đức Bình CNTT C134 A203 8hVõ Thành Phước Tự NhiênT345 B201 8hVõ Thành Phước Tự NhiênT367 B202 10hTrần Thò Bạch HuệCNTT C052 B203 16hLê Văn Hoa Xã Hội X111 A301 8hLê Văn Hoa Xã Hội X117 A302 10hNhiều vấn đề về các toán tử này sẽ còn được nghiên cứu sâu hơn trong môn Cơ Sở Dữ Liệu Quan Hệ và ngôn ngữ SQL (Structured Query Language).II. QUAN HỆ THỨ TỰ VÀ QUAN HỆ TƯƠNG ĐƯƠNG1. Quan hệ thứ tự: Đònh nghóa: Một quan hệ ℜ trên A gọi là quan hệ thứ tự nếu ℜ thỏa các tính chất: phản hồi, phản đối xứng, bắc cầu.Ví dụ 11: Quan hệ nói trong ví dụ 3 là một quan hệ thứ tự.o Quan hệ tương đương và sự chia lớp Đònh nghóa: Một quan hệ ℜ trên A gọi là quan hệ tương đươngï nếu ℜ thỏa các tính chất: phản hồi, đối xứng, bắc cầu.Ví dụ 12: Quan hệ nói trong ví dụ 2 là một quan hệ tương đương.Ví dụ 13: Xét các tập X và Y, f là một ánh xạ từ X đến Y. Đònh nghóa một quan hệ ≈ trên X như sau: ∀x1,x2 ∈X: (x1 ≈x2) ⇔(f(x1) = f(x2)).Dễ dàng thấy rằng ≈ là một quan hệ tương đương xác đònh trên X.Sự chia lớp:Cho ℜ là một quan hệ tương đương xác đònh trên A, với mỗi a ∈ A đặt L(a) là tập con của A chứa các phần tử có quan hệ ℜ với a, ie:L(a)={ }( ) ( )b b A a b∈ ∧ ℜ92 Ta thấy L(a) có các tính chất sau:1) ∀a∈ A: L(a) ≠ ∅(vì a∈ L(a))2) ∀a,b ∈ L(a) : aℜb ⇒ L(a) = L(b)Thật vậy: ∀x∈ L(a) : aℜx . (1)Vì b ∈ L(a) nên : aℜb (2)Do tính đối xứng của ℜ nên từ (1) suy ra: xℜa (3)Do tính bắc cầu củaℜ nên từ (2) và (3) ta có: xℜbVậy x∈ L(b).Do đó ∀a,b ∈ L(a) : aℜb ⇒ L(a) ⊂ L(b)Phần còn lại (∀a,b ∈ L(a) : aℜb ⇒ L(a) ⊃ L(b) ) chứng minh tương tự.3) ∀a,b ∈ A: Nếu a không có quan hệ ℜ với b thì: L(a) ∩ L(b) = ∅.Thật vậy, giả sử L(a) ∩ L(b) ≠ ∅ thì : ∃c ∈L(a) ∩ L(b)Vì c∈L(a) nên : aℜc (1)Vì c∈L(b) nên : cℜb. (2)Từ (1) và (2) và do tính bắc cầu của ℜ ta có: aℜb. Trái với giả thiết là a và b không có quan hệ ℜ với nhau.4) ( )x AA L x∈=UThật vậy:∀a∈ A : a∈ L(a) nên a ∈ ( )x AL x∈U. Chiều ngược lại là hiển nhiên.Ta sẽ gọi L(a) là lớp tương đương với a xác đònh bởi quan hệ tương đương ℜ. Do các nhận xét trên ta thấy nếu ℜ là một quan hệ tương đương trên A thì ℜ cũng xác đònh một tập các lớp tương đương thỏa mãn các tính chất:i) Mỗi lớp tương đương là khác rỗng.ii) Các lớp tương đương hoặc là phân biệt hoặc là trùng nhau.iii) Hợp tất cả các lớp tương đương chính là A.Tập các lớp tương đương như vậy gọi là tập thương của A xác đònh bởi ℜ, và được kí hiệu: AℜVí dụ 14: Xét tập Z các số nguyên và quan hệ tương đương trên Z đònh nghóa bởi:∀(a,b)∈ZxZ: aℜb⇔a ≡ b (mod 3)93 Ta có:L(0) = { .; -6; -3; 0; 3; 6; 9; 12; .}L(1) = { .; -5; -2; 1; 4; 7; 10; 13; .}L(2) ={ .; 5; 8; 11; 14; .}L(3) ={ .; -6; -3; 0; 3; 6; 9; 12; .}= L(0)Thông thường lớp L(a) sẽ được kí hiệu là a, và tập thương Zℜ sẽ được kí hiệu là Z3. Vậy Z3 ={0;1;2}III. THUẬT TOÁN TRÊN CÁC QUAN HỆ1. Đồ thò có hướng. Biểu diễn quan hệ trên máy tính . Có nhiều cách để biểu diễn các quan hệ giữa các tập hữu hạn. Ta đã xét cách biểu diễn bằng cách liệt kê tất cả các phần tử của nó. Cũng có thể biểu diễn quan hệ bằng cách dùng đồ thò hoặc thuận tiện hơn cho cách biểu diễn trên máy tính là bằng cách hiện thực nó thành một ma trận.Đồ thò:Đònh nghóa: Một đồ thò có hướng G là một bộ ba có thứ tự <V,E,I> trong đó:V là một tập hợp, gọi là tập các đỉnh (Vertex). E là một tập hợp, gọi là tập các cạnh (Edge).I là quan hệ giữa hai tập V và E, I là tập con của tập VxExV, gọi là “quan hệ tới”và nếu V=∅ thì E=∅.Ví dụ 1: V = {A; B; C; D; E}và E ={e; f; g; h; i; j}I= {(A,e,C); (A,i,A); (B,f,C); (B,g,D); (C,h,D); (C,j,D)}A,B,C,D,E là các đỉnh.e,f,g,h,i,j là các cạnh(A,e,C) là phần tử của quan hệ tới:”A đi tới C theo cạnh e”. Trong quan hệ giữa A và C ta gọi A là đỉnh bắt đầu và C là đỉnh kết thúc. Đôi khi ta cũng ghi vắn tắt (A,C) thay cho (A,e,C). Đỉnh không có đỉnh nào nối tới, như đỉnh E, gọi là đỉnh cô lập. Cạnh nối một đỉnh đến chính nó, như cạnh i gọi là một vòng (hay một khuyên). Hai cạnh cùng nối tới hai đỉnh phân biệt, như cạnh h và cạnh j gọi là hai cạnh song song. 94 Nếu với mọi X,Y ∈ V và với mọi e ∈ E ta không phân biệt các phần tử (X,e,Y) và (Y,e,X) của I thì đồ thò G trở thành đồ thò vô hướng và thường được biểu diễn như hình bên. Bằng cách đònh nghóa như trên ta có thể biểu diễn một quan hệ hai ngôiℜ trên tập V bằng một đồ thò G mà các đỉnh là các phần tử của V và các cặp (A,B)∈ℜ như là các cạnh. Cách biểu diễn này tạo nên mối quan hệ 1-1 giữa các quan hệ hai ngôi trên tập V và các đồ thò có hướng. Như thế mỗi khai báo về các quan hệ hai ngôi ℜ trên V tương ứng với với một đồ thò có hướng G (và ngược lại).Ví dụ 2: Cho tập V= {3;7;4;10;9;6;12;5} và quan hệ hai ngôi ℜ xác đònh trên V bởi:∀a,b ∈ V: aℜb ⇔a chia hết cho b.Ta thấy: ℜ ={(3,3);(7,7);(4,4);(10,10);(9,9); (6,6);(12,12);(5,5); (10,5);(9,3);(6,3);(12,3);(12,4)} tương ứng với đồ thò có hướng G sau đây:Ma trận kề:Có thể biểu diễn một đồ thò bằng cách dùng ma trận như sau:Giả sử đồ thò G có n đỉnh, mỗi đỉnh sẽ được gán một nhãn số trong miền [1 n]. Dùng một ma trận vuông A kích thước nxn được xác đònh như sau:A[i,j] = 1 nếu có một cạnh nối từ đỉnh i đến đỉnh j và A[i,j]= 0 trong trường hợp ngược lại.Ví dụ 3: Trong ví dụ 2 nói trên đồ thò có hướng G sẽ được biểu diễn bởi ma trận kề: trong đó các đỉnh được đánh số thứ tự lại như sau: 1 → 5 2 → 10 3 → 64 → 3 5 → 9 6 → 77 → 12 8 → 4Nhận xét: Nếu G không phải là một đồ thò có hướng thì ma trận kề là một ma trận đối xứng.Ví dụ 4: Ma trận sau đây biểu diễn cho đồ thò nào (và quan hệ nào)?152103643596771284151 0 0 0 0 0 0 02101 1 0 0 0 0 0 0360 0 1 1 0 0 0 0430 0 0 1 0 0 0 0590 0 0 1 1 0 0 0670 0 0 0 0 1 0 07120 0 0 1 0 0 1 1840 0 0 0 0 0 0 195 A = 1 1 1 00 0 0 11 0 0 00 1 0 0      Giải: Đặt các đỉnh là [1], [2], [3], [4] thì ma trận kề nêu trên ứng với đồ thò G tương ứng với quan hệ hai ngôi xác đònh trên tậpV = {[1]; [2]; [3]; [4]} xác đònh bởi ℜ ={([1],[1]); ([1],[2]);([1],[3]);([2],[4]);([3],[1]);([4],[2])} o Bao đóng của các quan hệ: Giả sử ta có một mạng máy tính có các trung tâm dữ liệu ở Hà Nội, Huế, Đà Nẳng, tp Hồ Chí Minh, Đà Lạt, Cần Thơ, An Giang, Cà Mau. Phương thức kết nối là Dial-up (ie: dùng đường điện thoại). có các đường dây điện thoại một chiều trực tiếp từ Hà Nội đến Huế, từ Huế đến Đà Lạt, từ Huế đến tp Hồ Chí Minh, từ tp Hồ Chí Minh đến Cần Thơ,ø từ tp Hồ Chí Minh đến Đà Nẳng, từ Đà Lạt đến An Giang, từ An Giang dến Cà Mau, từ Cà Mau đến Hà Nội và từ Cần Thơ đến Huế. Cho ℜ là một quan hệ hai ngôi trên tập các trung tâm dữ liệu nói trên, ℜ chứa cặp (a,b) nếu có một đường dây điện thoại trực tiếp từ trung tâm dữ liệu a đến trung tâm dữ liệu b, chẳng hạn (Cần Thơ, Huế) ∈ℜ . Câu hỏi đặt ra là: “Liệu có một đường dây liên lạc nào đó dù là gián tiếp hay trực tiếp giữa một trung tâm dữ liệu này với một trung tâm khác hay không?”. Vì không phải mọi đường liên lạc là trực tiếp, eg: đường liên lạc giữa Đà Lạt và Hà Nội hay giữa tp Hồ Chí Minh và Cà Mau đều phải đi qua An Giang, nên không thể dùng trực tiếp ℜ để trả lời cho câu hỏi đó. Để giải quyết vấn đề đó ta cần thiết lập tập nhỏ nhất gồm tất cả các cặp trung tâm có đường liên lạc ngắn nhất (có thể là gián tiếp!) với nhau. Rõ ràng tập đó phải chứa ℜ. Một tập như vậy, nếu có, cũng là một quan hệ và sẽ được gọi là bao đóng bắc cầu của ℜ.Đònh nghóa: Cho một quan hệ ℜ trên tập V. Nếu một quan hệ S trên V, S⊃ℜ, S có tính chất P (P có thể là phản xạ/đối xứng hay bắc cầu) và nếu mọi quan hệ S’ có cùng những tính chất đó thì S’⊃ S thì S được gọi là một bao đóng có tính chất P của ℜ. Theo như đònh nghóa đó, cho một quan hệ ℜ của V ta có thể có bao đóng phản xạ, bao đóng đối xứng và bao đóng bắc cầu của ℜ.33 Tuy nhiên cũng cần lưu ý là bao đóng của một quan hệ ℜ đối với một tính chất nào đó có thể không tồn tại.96 [...]... làm cơ sở cho thuật toán tính ma trận biểu diễn quan hệ bắc cầu ℜ * Để tìm ma trận này cần phải tính liên tiếp các lũy thừa của Mℜ cho tới lũy thừa bậc n Thuật toán: Procedure Bao đóng bắc cầu (MR: Ma trận kề nxn của quan hệ ℜ ) A:= Mℜ B:=A For i:=2 to n do Begin A:= A e Mℜ {Tích boole của hai ma trận} B:=B ∨ A End Return B {B là ma trận kề biểu diễn ℜ *} o Thuật toán Warshall: Thuật toán sau đây mang... đường đi sẽ chứa một chu trình khép kín từ Xi đến Xj Loại bỏ chu trình này khỏi đường đi ta được con đường X0,X1, ,Xi,Xj+1, ,Xm-1,Xm với độ dài ngắn hơn m Mâu thuẩn với giả thiết m là nhỏ nhất Vậy m ≤ n Trường hợp A ≠ B đề nghò người đọc tự chứng minh QED Ta đã biết một quan hệ hai ngôi (ie: một đồ thò) có thể biểu diễn bằng một ma trận kề cho nên sau đây ta sẽ nghiên cứu thuật toán tính bao đóng bắc... nhất chứa ℜ : Gọi S là một quan hệ có tính bắc cầu nào đó chứa ℜ , ta có thể suy ra Sn cũng là quan hệ có tính bắc cầu, và hơn nữa Sn ⊆ S Vì Ví dụ 6 và ví dụ 7 sau đây trích của Kennet H Rosen - Toán học rời rạc và những ứng dụng trong tin học - Bản dòch của Nhà xuất bản Thống kê - 2002 - trang 639 4 97 S* = ∞ US k =1 k và Sk ⊆ S với mọi k nên suy ra S* ⊆ S Vì ℜ ⊆ S nên mọi đường đi trong ℜ cũng là... hai ma trận} B:=B ∨ A End Return B {B là ma trận kề biểu diễn ℜ *} o Thuật toán Warshall: Thuật toán sau đây mang tên của Stephen Warshall được trình bày vào năm 1960 cho phép tính bao đóng bắc cầu của một quan hệ hiệu quả hơn thuật toán vừa nêu trên: Thuật toán Warshall dựa trên khái niệm đỉnh trong của một đường đi: Giả sử ℜ là một quan hệ trên tập V có n phần tử được liệt kê như sau: v1,v2,v3, ,vn... nhiều cạnh (X0,X1),(X1,X2), ,(Xn-1,Xn) trong G sao cho A=X0 và B=Xn Đường đi này sẽ được kí hiệu X0,X1,X2, ,Xn và có độ dài n Trường hợp X0=Xn ta sẽ có một đường đi khép kín (còn được gọi là một chu trình) Ví dụ 5: Trong đồ thò G vừa nêu một đường đi từ Tp Hồ Chí Minh đến An Giang là (Thành phố Hồ Chí Minh, Cần Thơ), (Cần Thơ, Huế), (Huế, Đà Lạt), (Đà Lạt,An Giang) o Bao đóng bắc cầu: Đònh nghóa: Cho ℜ... (cũng có nghóa là một ma trận Boole) của một quan hệ ℜ trên một tập có n phần tử Lúc đó ma trận kề của bao đóng bắc cầu ℜ * là: [ [3 [ Mℜ* = Mℜ ∨ Mℜ2] ∨ Mℜ ] ∨ ∨ Mℜn] 5 Ví dụ 7: Tìm ma trận Boole của bao đóng bắc cầu của quan hệ ℜ với: 5 Kí hiệu [ Mℜn] để chỉ tích Boole Mℜ e Mℜ e e Mℜ (thực hiện n lần) 98 1 0 1  Mℜ =  0 1 0    1 1 0   [ 2] [ 3] Giải: Theo đònh lí trên ta có: M R* = M R ∨... Boole có 1 ở vò trí (i,j) nếu chỉ nếu tồn tại một đường đi từ vi đến vj với các đỉnh trong thuộc tập { v1,v2,v3, ,vk } [ [ [ [ wijk ] = wijk −1] ∨ (wikk −1] ∧ wkjk −1] ) trong đó: 1 ≤ i,j,k ≤ n Thuật toán: Procedure Warshall (MR: ma trận kề nxn của quan hệ ℜ ) W:= Mℜ For k:=1 to n do Begin For i:=1 to n do begin For j:=1 to n do wij := wij ∨ (wik ∧ wkj) end End Return W {W= [wij] là Mℜ }  101 . (mod 5) 87 Ta có: 1) ∀(a,a)∈ZxZ: a ≡ a (mod 5) 2) ∀(a,b)∈ZxZ: a ≡ b (mod 5) ⇒ a ≡ b (mod 5) 3) ∀ a,b,c ∈ Z : [a ≡ b (mod 5) ] ∧ [b ≡ c (mod 5) ] ⇒ a ≡ c (mod 5) Vậy. 4; 5} đến B = {1; 2; 3; 4; 5; 6}xác đònh như sau: ℜ={(1,1); (2,4); (3,3); (4,4); (5, 5)}.Khi đó ℜ có thể xem như đồ thò của hàm f f : A B1 12 43 34 45 588 o

Ngày đăng: 13/11/2012, 16:18

Từ khóa liên quan

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

Tài liệu liên quan