0% found this document useful (0 votes)
52 views

Consider R (A, B, C, D, E, F, G, H) With A Set of Fds F (CD A, Ec H, GHB Ab, C D, Eg A, H B, Be CD, Ec B)

The document provides three exercises to determine normal form compliance for relations with given functional dependencies: 1) It finds the canonical cover for a set of FDs on relation R={A,B,C,D,E,F,G,H}. The canonical cover is FC={C→A, EC→H, GH→A, C→D, EG→A, H→B, BE→C}. 2) It determines that relation R={A,B,C,D,E,F,G,H} is not in 3NF due to FD CD→A violating 3NF requirements. 3) It determines that relation R={A,B,C,D

Uploaded by

Nikola Kadic
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
52 views

Consider R (A, B, C, D, E, F, G, H) With A Set of Fds F (CD A, Ec H, GHB Ab, C D, Eg A, H B, Be CD, Ec B)

The document provides three exercises to determine normal form compliance for relations with given functional dependencies: 1) It finds the canonical cover for a set of FDs on relation R={A,B,C,D,E,F,G,H}. The canonical cover is FC={C→A, EC→H, GH→A, C→D, EG→A, H→B, BE→C}. 2) It determines that relation R={A,B,C,D,E,F,G,H} is not in 3NF due to FD CD→A violating 3NF requirements. 3) It determines that relation R={A,B,C,D

Uploaded by

Nikola Kadic
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Exercise 1:

Consider R = {A, B, C, D, E, F, G, H} with a set of FDs


F = {CD→A, EC→H, GHB→AB, C→D, EG→A, H→B, BE→CD, EC→B}

Find a canonical cover for F

Step 1: Decompose all FDs in standard form

F = {CD→A, EC→H, GHB→A, GHB→B, C→D, EG→A, H→B, BE→C, BE→D,


EC→B} (since, GHB→B is trivial)

Step 2: Eliminate unnecessary attributes from LHS

We need to check all the FDs that have more than one attribute on the LHS:

CD→A
Can we remove D from CD→A?
C+ = CDA; YES (because, A∈ C+) [C→D, CD→A]
Can we remove C from CD→A?
D+ = D; NO

EC→H
Can we remove E from EC→H?
C+ = CDA; NO
Can we remove C from EC→H?
E+ = E; NO

GHB→A
We first check if we could remove 2 attributes from LHS:
Can we remove GH from GHB→A?
B+ = B; NO
Can we remove GB from GHB→A?
H+ = HB; NO
Can we remove HB from GHB→A?
G+ = G; NO

We now check if we could remove one single attribute from LHS:


Can we remove G from GHB→A?
HB+ = HB; NO
Can we remove H from GHB→A?
GB+ = GB; NO
Can we remove B from GHB→A?
GH+ = GHBA; YES (because, A∈ GH+) [H→B, GHB→A]
EG→A
Can we remove E from EG→A?
G+ = G; NO
Can we remove G from EG→A?
E+ = E; NO

BE→C
Can we remove B from BE→C?
E+ = E; NO
Can we remove E from BE→C?
B+ = B; NO

BE→D
Can we remove B from BE→D?
E+ = E; NO
Can we remove E from BE→D?
B+ = B; NO

EC→B
Can we remove E from EC→B?
C+ = CDA; NO
Can we remove C from EC→B?
E+ = E; NO

So, after step 2, we have:


F = {C→A, EC→H, GH→A, C→D, EG→A, H→B, BE→C, BE→D, EC→B}

Step 3: Remove redundant FD(s)

Consider C→A,
C+ = CD; so it’s not redundant.

Consider EC→H,
EC+ = ECBDA; so it’s not redundant. [EC→B, C→D, C→A]

Consider GH→A,
GH+ = GHB; so it’s not redundant.

Consider C→D,
C+ = C; so it’s not redundant.

Consider EG→A,
EG+ = EG; so it’s not redundant.

Consider H→B,
H+ = H; so it’s not redundant.
Consider BE→C,
BE+ = BED; so it’s not redundant.

Consider BE→D,
BE+ = BECD; [BE→C, C→D] Because D  BE+, BE→D is redundant. Remove it!

Consider EC→B,
EC+ = ECHB; [EC→H, H→B] Because B  EC+, EC→B is redundant. Remove it!

Therefore the canonical cover is:


FC = {C→A, EC→H, GH→A, C→D, EG→A, H→B, BE→C}
Exercise 2:

Consider R = {A, B, C, D, E, F, G, H} with a set of FDs


F = {CD→A, EC→H, GHB→AB, C→D, EG→A, H→B, BE→CD, EC→B}

Is R w.r.t. F in 3NF?

From the last tutorial, we know that the candidate keys are: {BEFG, CEFG, EFGH}

No, R w.r.t. F is NOT in 3NF, because CD→A violates the 3NF requirements.
i.e.
 CD→A is not trivial FD
 CD is not a superkey
 CD is not a key, but A is not part of any key of R either

Exercise 3:

Consider R = {A, B, C, D, E, F, G} with a set of FDs F = {ABC→DE, AB→D,


DE→ABCF, E→C}

Is R in BCNF, 3NF, or neither?

We first check if R w.r.t. F is in BCNF.

Let’s first take the attribute closure of LHS of FDs. If there is an FD for which we failed
to get the whole R, then this <R, F> is NOT in BCNF.

Consider ABC→DE
ABC+ = ABCDEF ≠ R
So, <R, F> is NOT in BCNF.

Is <R, F> in 3NF?


We have to compute the candidate keys to determine whether <R, F> is in 3NF.
From the last tutorial, we know that the candidate keys are: {GDE, GABC, GABE}

<R, F> is not in 3NF because:


 No FD is trivial
 LHS of all FDs are not superkey
 There is FD whose RHS is not a part of key (DE→ABCF).
So, <R, F> is NOT in 3NF either!

You might also like