what is correct and fastest way to check whether dependencies are preserved or not?
Consider this question https://gateoverflow.in/3371/gate2008-it-61
In this question , If Arjun Sir haven't mentioned about ,
C→D is indirectly present via C→B in (B,C) and B→D in (B,D).
I wouldn't have come to know about C→B & B→D.
How to identify these FD's correctly
I have one method , can someone verify if it is correct or not
This is wrong way
generally we take FD's given in F and try to distribute it to sub relation
hence A→B will go to (A,B)
B→C will go to (B,C)
D→B will go to (B,D)
and C→D will remained unmapped , also we can't derive it using other 3 FD's. hence dependency not preserved hence we get wrong answer.
Correct Way
Given FD's for F find F+ (closure of FD's of F) then we will get
A→B , B→C , D→B , C→D & B→D & C→B
Now you try to distribute this Fd's
hence A→B will go to (A,B)
B→C & C→B will go to (B,C)
D→B & B→D will go to (B,D)
and C→D will remained unmapped , now if we try to derive C→D from Above FD we will be able ro derive it , hence dependency preserved.
Can someone please verify whether it is correct way to check dependency preservation ?