2.13 Cho lược đồ quan hệ R=ABCDEGH và tập phụ thuộc hàm trên
R: F={ABC → D, AB → E, BC → DC, C → ED, CE → H, DC → G, CH → G, AD → H} 1) Tìm một phủ tối tiểu của F. Bước 1 : Tách F thành một tập phụ thuộc hàm mà vế phải chỉ có mộF={ABC t thuộc tín→ h:D C →D AB → E
CE → H
BC → D
DC → G
BC → C
CH → G
C →E
AD → H}
Bước 2 : Loại bỏ những phụ thuộc hàm không đầy dủ : Loại 1 : BC → C bỏ khỏi F
Loại 2 : ABC → D BC → D
Loại bỏ ABC → D, BC → D khỏi F
C →D Loại 3:
Với AB → E A+F = A E B+F = B E Với CE → H C+F = CEDH… H thay CE → H bỡi C → H Với DC → G D+F = D G C+F = CEDHG… G thay DC → G bỡi C → G Với CH → G C+F = CEDHG… G thay CH → G bỡi C → G Với AD → H A+F = A H D+ = D H
Sau bước 2 F={AB → E C →E C →D C →H C →G AD → H} Bước 3 : Với f1 : AB → E, F1 = F \{f1} AB+F1 = AB E Với f2 : C → E, F2 = F \{f2} C+F2 = CDHG E Với f3 : C → H, F3 = F \{f3} C+F3 = CEDG H Với f4 : AD → H, F4= F \{f4} AD+={AB H → E, C → D, C → H, C → G, AD → H} Vậy PTT(F) → E, C F4 = AD
2) Tìm một khoá của R dự a vào F PTT(F) ={AB → E, C → E, C → D, C → H, C → G, AD → H} D
A
H
C
G
E K = ABC B
K+F = ABCDEGH Vậy K=ABC là khoá của R.
3) Tìm một phân rã của R dựa trên phủ tối tiểu của F có dạng chuẩn 3 và bảo toàn thông tin. F = {AB → E, C → E, C → D, C → H, C → G, AD → H} ABCDEGH AB → E ABE
ABCDGH C →D ABCGH
CD
C →H CH
ABCG
ρ = {ABE, CD, CH, ABCG} là một phân rã bảo toàn thông tin, dạng chuẩn 3 của R
Cho lược đồ quan hệ R=ABCDEGHI và tập phụ thuộc hàm trên R :
2.14
F={A→CB, AB→CD, C→D, CI→DG, AC→BD, E→CD, AC→BI, EC→A, EG→B, G→CD} 1) Tìm một phủ tối tiểu của F. Bước 1 : Tách F thành một tập phụ thuộc hàm mà vế phải chỉ có một thuộc tính: F={A→C, A→B, AB→C, AB→D, C→D, CI→D, CI→G, AC→B, AC→D,
E→C, E→D, AC→B, AC→I , EC→A, EG→B, G→C, G→D}
Bước 2 : Loại bỏ những phụ thuộc hàm không đầy dủ Loại 1 : Không có. Loại 2 : A→ C Loại bỏ AB → C khỏi F AB → C A→ B AC → B
Loại bỏ AC → B khỏi F
C →D CI → D
Loại bỏ CI → D, AC → D khỏi F
AC → D Loại 3 : Với AB→D Có A+F = ACBD… chứ a D ⇒ thay AB→D bỡi A→D Với CI→ G Có C+F = CD không chứ a G Có I+F = I không chứ a G
Với AC→ I Có A+F = ACBDI… chứ a I ⇒ thay AC→I bỡi A→I Với EC→ A Có E+F = ECDA… chứ a A ⇒ thay EC→A bỡi E→A Với EG→ B Có E+F = ECDAB… chứ a B ⇒ thay EG→B bỡi E→B Sau bước 2 F={A→C, E→D, A→B, A→I , A→D, E→A, C→D, E→B, CI→G, G→C, E→C, G→D} Bước 3 : Với f1= A→C, F1 = F\{f1} A+F1 = ABDI không chứ a C. Với f2= A→B, F2 = F\{f2} A = ACDIG khô hứ a B
Với f3= A→D, F3 = F\{f3} A+F3 = ACBD… chứa D, loại f3 khỏi F. Với f4= C→D, F4 = F\{f4} C+F4 = C không chứ a D. Với f5= E→C, F5 = F\{f5} E+F5 = EDAC… chứa C, loại f5 khỏi F. Với f6= E→D, F6 = F\{f6} E+F6 = EABCD… chứa D, loại f6 khỏi F. Với f7= E→B, F7 = F\{f7} E+F7 = EACB… chứa B, loại f7 khỏi F. Với f8= G→C, F8 = F\{f8} G+F8 = GD không chứ a C. Với f9= G→D, F9 = F\{f9} G+F9 = GCD… aB, D,Clo i f9CI kh i F.A→I , E→A, G→C} ạD, ỏG, Vậy PTT(F)={A →C,ch Aứ → → →
2) Tìm một khóa của R dựa vào phủ tối tiểu của F. PTT(F)={A→C, A→B, C→D, CI→G, A→I , E→A, G→C} Đồ thị của R và F : D E
A
C G
H
B
K = HE K+F=HEACBDIG = R Vậy HE là một khoá của R.
I
3) Tìm một phân rã của R dựa trên phủ tối tiểu của F có dạng chuẩn 3 và bảo toàn thông tin. PTT(F)={A→C, A→B, C→D, CI→G, A→I , E→A, G→C} ABCDEGHI A→C AC
ABDEGHI A→B AB
ADEGHI A→I AI
ADEGH E→A EA
DEGH
= {AC, AB, AI, EA, DEGH} là một phân rã bảo toàn thông tin, dạng chuẩn 3 của R.
ρ
2.15
Cho lược đồ quan hệ R=ABCDEGH và tập phụ thuộc hàm trên
R: F={A→CB, AB→CD, C→D, CH→DG, E→CD, AC→BD, EC→A, EG→B, G→CD} 1) Tìm một phủ tối tiểu của F. Bước 1 : Tách F thành một tập phụ thuộc hàm mà vế phải chỉ có một thuộc tính: F={A→C, CH→D, AC→D, A→B, CH→G, EC→A, AB→C, E→C, EG→B, AB→D, E→D, G→C, C→D, AC→B, G→D} Bước 2 : Loại bỏ những phụ thuộc hàm không đầy dủ Loại 1 : Không có. Loại 2 : A→ C Loại bỏ AB → C khỏi F AB → C
A→ B AC → B
Loại bỏ AC → B khỏi F
C →D CH→ D
Loại bỏ CH → D, AC → D khỏi F
AC → D
Loại 3 : Với AB→D Có A+F = ACBD… chứ a D ⇒ thay AB→D bỡi A→D Với CH→ G Có C+F = CD không chứ a G Có H+F = H không chứ a G Với EC→ A Có E+F = ECDA… chứ a A ⇒ thay EC→A bỡi E→A Với EG→ B Có E+F = ECDAB… chứ a B ⇒ thay EG→B bỡi E→B F={A→C, A→B, A→D, C→D, CH→G, E→C, E→D, EC→A, EG→B, G→C, G→D}
Sau bước 2 : F={A→C, A→B, A→D, C→D, CH→G, E→C, E→D, E→A, E→B, G→C, G→D} Bước 3 : Với f1= A→C, F1 = F\{f1} A+F1 = ABD không chứ a C. Với f2= A→B, F2 = F\{f2} A+F2 = ACD không chứ a B. Với f3= A→D, F3 = F\{f3} A+F3 = ACBD… chứa D, loại f3 khỏi F. Với f4= C→D, F4 = F\{f4} C+F4 = C không chứ a D. Với f5= E→C, F5 = F\{f5} E+F5 = EDAC… chứa C, loại f5 khỏi F. Với f6= E→D, F6 = F\{f6} E+F6 = EABCD… chứa D, loại f6 khỏi F. Với f7= E→B, F7 = F\{f7} E+ = EACB chứa B loại f khỏi F
Với f8= G→C, F8 = F\{f8} G+F8 = GD không chứ a C. Với f9= G→D, F9 = F\{f9} G+F9 = GCD… chứa D, loại f9 khỏi F. Vậy PTT(F) ={A→C, A→B, C→D, CH→G, E→A, G→C}
F={A→C, A→B, A→D, C→D, CH→G, E→C, E→D, E→A, E→B, G→C, G→D}
2) Tìm một khóa của R dựa vào phủ tối tiểu của F. PTT(F)={A→C, A→B, C→D, CH→G, E→A, G→C} Đồ thị của R và F : D E
A
C G
I
B
K = IEH K+F=IEHACBDIG = R Vậy IHE là một khoá của R.
H
3) Tìm một phân rã của R dựa trên phủ tối tiểu của F có dạng chuẩn 3 và bảo toàn thông tin. PTT(F)={A→C, A→B, C→D, CH→G, E→A, G→C} ABCDEGHI A→C AC
ABDEGHI A→B AB
ADEGHI E→A EA
DEGHI
= {AC, AB, EA, DEGHI} là một phân rã bảo toàn thông tin, dạng chuẩn 3 của R.
ρ