Cho lược đồ quan hệ có F={A → B, B → X, BX → Z}, áp dụng các hệ tiên đề AMSTRONG ta có phụ thuộc hàm nào?
Đáp án đúng: A
Ta có F={A → B, B → X, BX → Z}.
Áp dụng luật bắc cầu (Transitivity):
- Từ A → B và B → X suy ra A → X
- Từ A → B và BX → Z không suy ra được A → Z vì vế trái phải là A → BX
- Từ B → X và BX → Z không suy ra được B → Z vì vế trái phải là B → BX
Áp dụng luật hợp (Augmentation):
- Từ A → B suy ra AX → BX
Áp dụng luật phân rã (Decomposition): không áp dụng được.
Áp dụng luật hợp nhất (Union):
- Từ BX → Z suy ra B → Z và X → Z (sai vì không có luật này)
Ta có BX → Z.
Mà B → X, suy ra BX → X.
Do đó, BX → Z và BX → X. Vậy BX → XZ.
Từ BX → Z và B → X không suy ra được A → Z
Từ BX → Z và A → B suy ra AX → BX (Augmentation).
Mà BX → Z suy ra AX → Z (Transitivity).
Vậy ta có A → Z.
Xét B → Z, ta có B → X và BX → Z, do đó không thể suy ra B → Z một cách trực tiếp từ các phụ thuộc hàm đã cho.
Xét X → Z, ta thấy không có cách nào suy ra được X → Z từ các phụ thuộc hàm đã cho.
Vậy đáp án đúng là A → Z.
Xét B → X và BX → Z:
Nếu B → Z thì BX → XZ (hợp nhất).
BX → Z là đã cho.
Vậy B → Z có thể tồn tại.
Nếu X → Z thì BX → BZ (hợp nhất).
Nhưng BX → Z là đã cho.
Vậy X → Z có thể tồn tại.
Do đó C. B → Z, X → Z là đáp án phù hợp nhất.
Câu hỏi liên quan
1. Chuẩn hóa dạng chuẩn: Chuyển tất cả các phụ thuộc hàm về dạng chuẩn, tức là mỗi phụ thuộc hàm chỉ có một thuộc tính ở vế phải.
2. Loại bỏ thuộc tính thừa ở vế trái: Với mỗi phụ thuộc hàm, kiểm tra xem có thuộc tính nào ở vế trái có thể loại bỏ mà không làm thay đổi bao đóng của vế trái hay không. Nếu có, loại bỏ nó.
3. Loại bỏ phụ thuộc hàm dư thừa: Kiểm tra xem có phụ thuộc hàm nào trong tập có thể suy diễn ra từ các phụ thuộc hàm còn lại hay không. Nếu có, loại bỏ nó.
Áp dụng các bước này cho F={AB → C, C → A, BC → D, ACD → B, D → EG, BE → C, CG → BD, CE → AG}:
1. Chuẩn hóa dạng chuẩn:
- F = {AB → C, C → A, BC → D, ACD → B, D → E, D → G, BE → C, CG → B, CG → D, CE → A, CE → G}
2. Loại bỏ thuộc tính thừa ở vế trái:
- AB → C (không có thuộc tính thừa)
- C → A (không có thuộc tính thừa)
- BC → D (không có thuộc tính thừa)
- ACD → B: Xét AC → B? Không suy ra được B từ AC. Xét AD → B? Không suy ra được B từ AD. Xét CD → B? Không suy ra được B từ CD. Vậy ACD → B
- D → E (không có thuộc tính thừa)
- D → G (không có thuộc tính thừa)
- BE → C (không có thuộc tính thừa)
- CG → B: (không có thuộc tính thừa)
- CG → D: (không có thuộc tính thừa)
- CE → A (không có thuộc tính thừa)
- CE → G (không có thuộc tính thừa)
3. Loại bỏ phụ thuộc hàm dư thừa:
- F = {AB → C, C → A, BC → D, ACD → B, D → E, D → G, BE → C, CG → B, CG → D, CE → A, CE → G}
- Kiểm tra AB → C: (AB)+ = AB. Không suy ra C. Giữ lại.
- Kiểm tra C → A: (C)+ = C. Không suy ra A. Giữ lại.
- Kiểm tra BC → D: (BC)+ = BC. Không suy ra D. Giữ lại.
- Kiểm tra ACD → B: (ACD)+ = ACD. Không suy ra B. Giữ lại.
- Kiểm tra D → E: (D)+ = D. Không suy ra E. Giữ lại.
- Kiểm tra D → G: (D)+ = D. Không suy ra G. Giữ lại.
- Kiểm tra BE → C: (BE)+ = BE. Không suy ra C. Giữ lại.
- Kiểm tra CG → B: (CG)+ = CG. Không suy ra B. Giữ lại.
- Kiểm tra CG → D: (CG)+ = CG. Không suy ra D. Giữ lại.
- Kiểm tra CE → A: (CE)+ = CE. Không suy ra A. Giữ lại.
- Kiểm tra CE → G: (CE)+ = CE. Không suy ra G. Giữ lại.
Tiếp tục rút gọn:
- Từ D → E và D → G suy ra D → EG
- Từ CG → B và CG → D suy ra CG → BD
- Từ CE → A và CE → G suy ra CE → AG
Xét tập F={AB → C, C → A, BC → D, ACD → B, D → E, D → G, BE → C, CG → B, CG → D, CE → A, CE → G}
Ta thấy đáp án D có vẻ đúng, cần kiểm tra kỹ hơn.
Trong đáp án D. {AB → C, C → A, D → G, BE → C, CG → BD, CE → G}.
* AB → C, C → A, suy ra AB → A (sai)
*BE → C, C → A, suy ra BE → A, do đó CE → AE, nên CE → A, CE → G
Trong các đáp án, đáp án B có vẻ đúng hơn cả.
B.{AB → C, C → A, BC → D, D → E, D → G, BE → C, CG → BD, CE → G}.
Sau khi kiểm tra và so sánh, đáp án B là đáp án đúng nhất.
1. Tách các phụ thuộc hàm có vế phải không đơn lẻ:
- XYW ST tách thành: XYW S, XYW T
Vậy, F = {XY → W, XW → U, XYW → S, XYW → T, X → Y}
2. Loại bỏ thuộc tính dư thừa ở vế trái của mỗi phụ thuộc hàm:
- Xét XY → W:
- Kiểm tra X → W: Tính bao đóng X⁺ = {X, Y}. Vì W ∉ X⁺, nên X không dư thừa.
- Kiểm tra Y → W (với giả sử X cố định): Tính bao đóng Y⁺ = {Y}. Vì W ∉ Y⁺, nên Y không dư thừa.
- Xét XW → U:
- Kiểm tra X → U: Tính bao đóng X⁺ = {X, Y}. Vì U ∉ X⁺, nên X không dư thừa.
- Kiểm tra W → U (với giả sử X cố định): Tính bao đóng W⁺ = {W}. Vì U ∉ W⁺, nên W không dư thừa.
- Xét XYW → S:
- Kiểm tra XY → S: Tính bao đóng (XY)⁺ = {X, Y, W}. Vì S ∉ (XY)⁺, nên XY không dư thừa.
- Kiểm tra XW → S (với giả sử Y cố định): Tính bao đóng (XW)⁺ = {X, W, U}. Vì S ∉ (XW)⁺, nên XW không dư thừa.
- Kiểm tra YW → S (với giả sử X cố định): Tính bao đóng (YW)⁺ = {Y, W}. Vì S ∉ (YW)⁺, nên YW không dư thừa.
- Xét XYW → T:
- Kiểm tra XY → T: Tính bao đóng (XY)⁺ = {X, Y, W}. Vì T ∉ (XY)⁺, nên XY không dư thừa.
- Kiểm tra XW → T (với giả sử Y cố định): Tính bao đóng (XW)⁺ = {X, W, U}. Vì T ∉ (XW)⁺, nên XW không dư thừa.
- Kiểm tra YW → T (với giả sử X cố định): Tính bao đóng (YW)⁺ = {Y, W}. Vì T ∉ (YW)⁺, nên YW không dư thừa.
- Xét X → Y: Không có thuộc tính để loại bỏ.
3. Loại bỏ các phụ thuộc hàm dư thừa:
- Xét XY → W: Tính bao đóng (XY)⁺ trong F' = {XW → U, XYW → S, XYW → T, X → Y}. Ta có (XY)⁺ = {X, Y}. Vì W ∉ (XY)⁺, nên XY → W không dư thừa.
- Xét XW → U: Tính bao đóng (XW)⁺ trong F' = {XY → W, XYW → S, XYW → T, X → Y}. Ta có (XW)⁺ = {X, W, Y}. Vì U ∉ (XW)⁺, nên XW → U không dư thừa. Tuy nhiên, nếu ta có X -> Y và XY -> W, thì XW -> U có thể được viết lại thành X -> U. Để chắc chắn, ta kiểm tra lại. Tính bao đóng của X trong {XY → W, XYW → S, XYW → T, XW → U, X → Y}: X⁺ = {X, Y}. Vậy X -> U không thể suy ra từ các phụ thuộc hàm còn lại.
- Xét XYW → S: Tính bao đóng (XYW)⁺ trong F' = {XY → W, XW → U, X → Y}. Ta có (XYW)⁺ = {X, Y, W, U}. Vì S ∉ (XYW)⁺, nên XYW → S không dư thừa.
- Xét XYW → T: Tính bao đóng (XYW)⁺ trong F' = {XY → W, XW → U, XYW → S, X → Y}. Ta có (XYW)⁺ = {X, Y, W, U, S}. Vì T ∉ (XYW)⁺, nên XYW → T không dư thừa.
- Xét X → Y: Tính bao đóng X⁺ trong F' = {XY → W, XW → U, XYW → S, XYW → T}. Ta có X⁺ = {X}. Vì Y ∉ X⁺, nên X → Y không dư thừa.
4. Gộp các phụ thuộc hàm có cùng vế trái:
- XYW → S và XYW → T gộp thành XYW → ST
Vậy, F = {XY → W, XW → U, XYW → ST, X → Y}
F = {X → Y, XY → W, XW → U, XYW → ST}
Nhưng đề bài yêu cầu tách ra nên ta giữ nguyên bước 3.
Ta thấy không có đáp án nào hoàn toàn trùng khớp với kết quả phân tích này. Tuy nhiên, đáp án gần đúng nhất là B, vì nó chứa tất cả các phụ thuộc hàm ban đầu.
1. Xác định thuộc tính không xuất hiện ở vế phải: Thuộc tính C không xuất hiện ở vế phải của bất kỳ phụ thuộc hàm nào. Do đó, C chắc chắn phải nằm trong khóa.
2. Tìm bao đóng của C: C+ = {C, I, D, A, K, F, B, L, M, G} (áp dụng C → IDAKF, D → B, K → L, L → MG, K → I). Bao đóng của C chứa tất cả các thuộc tính của R, do đó C là khóa.
3. Kiểm tra lại các phương án:
* A. C: Đúng, vì C+ chứa tất cả thuộc tính của R.
* B. CK: Sai, vì C đã là khóa.
* C. CKL: Sai, vì C đã là khóa.
* D. KL: Sai, vì (KL)+ = {K, L, I, M, G} không chứa tất cả các thuộc tính của R, D không thể suy diễn ra từ KL, nên KL không thể là khóa.
Vậy, đáp án đúng là A. C.
Ta sẽ kiểm tra từng đáp án:
A. AD: AD+ = {A, D, G, H, I}. Không thể suy ra B, C, E, F, J. Vậy AD không phải là khóa.
B. ABC: ABC+ = {A, B, C, J, I}. Không thể suy ra D, E, F, G, H. Vậy ABC không phải là khóa.
C. ABD: ABD+ = {A, B, D, E, F, G, H, I, C, J}. Vì ABD+ chứa tất cả các thuộc tính của R, nên ABD là siêu khóa. Kiểm tra tính tối thiểu của ABD:
- AB+ = {A, B, C, I, J}. Không suy ra D, E, F, G, H.
- AD+ = {A, D, G, H, I}. Không suy ra B, C, E, F, J.
- BD+ = {B, D, E, F}. Không suy ra A, C, G, H, I, J.
Vì không thuộc tính nào trong ABD có thể bỏ đi mà vẫn là siêu khóa, ABD là khóa.
D. ADH: ADH+ = {A, D, H, G, I}. Không thể suy ra B, C, E, F, J. Vậy ADH không phải là khóa.
Vậy đáp án đúng là C. ABD.
1. Kiểm tra 1NF: Lược đồ R ở dạng 1NF nếu tất cả các thuộc tính đều là nguyên tố (atomic). Giả sử các thuộc tính B, A, E, D đều là nguyên tố, vậy R thỏa mãn 1NF.
2. Kiểm tra 2NF: Lược đồ R ở dạng 2NF nếu nó ở dạng 1NF và mọi thuộc tính không khóa đều phụ thuộc đầy đủ vào khóa chính.
* Khóa chính có thể là BA (vì BA→D và E→A, từ BA có thể suy ra tất cả các thuộc tính còn lại).
* Xét phụ thuộc hàm BA→D: D phụ thuộc đầy đủ vào khóa BA.
* Xét phụ thuộc hàm E→A: E không phải là siêu khóa, và A là thuộc tính khóa (một phần của khóa BA). Do đó, A phụ thuộc hàm vào một tập con của khóa BA (cụ thể là E), vi phạm điều kiện 2NF.
3. Kiểm tra 3NF: Lược đồ R ở dạng 3NF nếu nó ở dạng 2NF và không có thuộc tính không khóa nào phụ thuộc hàm bắc cầu vào khóa chính. Vì R không ở dạng 2NF, nên không cần kiểm tra 3NF.
Kết luận: Vì R vi phạm 2NF, R chỉ ở dạng 1NF.

Bộ Đồ Án Tốt Nghiệp Ngành Trí Tuệ Nhân Tạo Và Học Máy

Bộ 120+ Đồ Án Tốt Nghiệp Ngành Hệ Thống Thông Tin

Bộ Đồ Án Tốt Nghiệp Ngành Mạng Máy Tính Và Truyền Thông

Bộ Luận Văn Tốt Nghiệp Ngành Kiểm Toán

Bộ 370+ Luận Văn Tốt Nghiệp Ngành Kế Toán Doanh Nghiệp

Bộ Luận Văn Tốt Nghiệp Ngành Quản Trị Thương Hiệu
ĐĂNG KÝ GÓI THI VIP
- Truy cập hơn 100K đề thi thử và chính thức các năm
- 2M câu hỏi theo các mức độ: Nhận biết – Thông hiểu – Vận dụng
- Học nhanh với 10K Flashcard Tiếng Anh theo bộ sách và chủ đề
- Đầy đủ: Mầm non – Phổ thông (K12) – Đại học – Người đi làm
- Tải toàn bộ tài liệu trên TaiLieu.VN
- Loại bỏ quảng cáo để tăng khả năng tập trung ôn luyện
- Tặng 15 ngày khi đăng ký gói 3 tháng, 30 ngày với gói 6 tháng và 60 ngày với gói 12 tháng.