I am working with relation H
that is detailed below:
H = {A,B,C,D}
It shows the following functional dependencies (FD[s]):
F = { A -> B, B -> C, {C,D} -> A}
The candidate keys are
{A,D}, {B,D}, {C,D}
I belive relation H
is in 3NF.
I also believe there are two FD that prevent this relation from satisfying BCNF:
A -> B and B -> C
Then I have:
A -> B
H1 = {A,B} F1 = {A -> B} <- this is BCNF
H2 = {A,C,D} F2 = {A -> C, {C,D} -> A} <- this isnt' BCNF
B -> C
H11 = {B,C} F11 = {B -> C} <- this is BCNF
H12 = {A,B,D} F12 = {A -> B} <- this is in BCNF
The questions
I have partial information about this algorithm, so I am not sure about certain things:
What should I do with
H2
? Just throw it away and say thatH1
,H11
,H12
are decompositions ofH
to meet BCFN?Can this relation be converted to BCNF with functional dependency preservation? (I would say no! because it is impossible to derive the FD
{C,D} -> A
fromF1 sum F11 sum F12
. Can you confirm that?
BD->A
.