Cho lược đồ quan hệ R=(U, F). Bao đóng của tập thuộc tính X (X ⊆ U), ký hiệu X+ là tập tất hợp cả các thuộc tính mà có thể suy diễn logic từ X.
Kiểm tra lần lượt từng phụ thuộc hàm fi=α→β size 12{ ital "fi"=α rightarrow β} {}, nếu α⊆X+ size 12{α subseteq X rSup { size 8{+{}} } } {} thì kết nạp vế phải (tức β size 12{β} {}) vào vào X+: X+=X+∪β size 12{X rSup { size 8{+{}} } =X rSup { size 8{+{}} } union β} {}
Lặp lại cho đến khi nào X+ = Const.
Thuật toán 1:
CònThayĐổi := True; X+ := X; While Còn_Thay_Đổi Do Begin Còn_Thay_Đổi := False; For mỗi fi=α→β Do Begin If α⊆X+ Then Begin X+=X+∪β ; Còn_Thay_Đổi := True; End; End; End;
Cho lược đồ quan hệ R = (U, F) với U= {A,B,C,D,E,G,H} và F= {AB→C, D→EG, ACD→B, C→A, BE→C, CE→AG, BC→D, CG→BD, G→ H}
a) Tính (D) +
X0 = D
1) X1 = DEG (áp dụng D→EG)
2) X2 = DEGH (áp dụng G→H) (= Constant)
Vậy (D)+ = DEGH
b) Tính (DE) +
X0 = DE
1 ) X1 = DEG (áp dụng D→EG)
Vậy (DE)+ = DEGH
c) Tính (BE) +
X0 = BE
1) X1 = BEC (áp dụng BE→C)
2) X2 = BECAG (áp dụng CE→AG)
3) X3 = BECAGD (áp dụng BC→D)
4) X4 = BECAGDH (áp dụng G→H) (= Constant)
Vậy (BE)+ = ABCDEGH
d) Tính (CG) +
X0 = CG
1) X1 = CGA (áp dụng C→A)
2) X2 = CGABD (áp dụng CG→BD)
3) X3 = CGABDH (áp dụng G→H)
4) X4 = CGABDHE (áp dụng D→EG) (= Constant)
Vậy (CG)+ = ABCDEGH
Cho lược đồ quan hệ R = (U, F) với U = {A,B,C,D,E,G} và F = {C→G, BG → CD, AEG → BC, CG → AE, B → CG }
a) Tính C +
X0 = C
1) X1 = CG (áp dụng C→G)
2) X2 = CGAE (áp dụng CG→AE)
3) X3 = CGAEB (áp dụng AEG→BC)
4) X4 = CGAEBD (áp dụng BG→CD) (= Constant)
Vậy (C)+ = ABCDEG
b) Tính (B)+
X0 = B
1) X1 = BCG (áp dụng B→CG)
2) X2 = BCGD (áp dụng BG→CD)
3) X3 = BCGDAE (áp dụng CG→AE) (= Constant)
Vậy (B)+ = ABCDEG
c) Tính (AEG)+
X0 = AEG
1) X1 = AEGBC (áp dụng AEG→BC)
2) X2 = AEGBCD (áp dụng BG→CD) (= Constant)
Vậy (AEG)+ = ABCDEG
Một ví dụ về tính bao đóng của tập phụ thuộc hàm.
Tính (BG → CD)+ với R cho ở bài tập 2.
X0 = BG → CD
X1 = (BG→C, BG → D) (Theo luật tách trong hệ tiên đề Amstrong)
X2 = (BG → C, BG → D, BG → B, BG → G) (Theo luật phản xạ)
X3 = (BG → B, BG → G, BG → C, BG → D, BG → CG) (Luật hợp)
X4 = (BG → B, BG → G, BG → C, BG → D, BG → CG, CG → AE) …..