Why is this not in 2NF and 3NF form? R = {A, B, C, D, E, F}

Dependencies:

{A} -&gt; {C,F}
{C} -&gt; {D}
{B} -&gt; {E}


a. this relation is in 1st normal form (NF). Explain why it is not in 2nd NF and not in 3rd NF.

b. make the required adjustments to convert relation to 2nd NF.

c. make the required adjustments to convert relation to 3rd NF.
If I understand you correctly,

{A} determines {C,F}, and {C}determines {D}, so {A} determines {C, D, F}

Also {B} determines {E},

Put together, this means {A, B} uniquely determines the entire row {A, B, C, D, E, F}. Therefore, columns {A, B} is a key of relation R.

Now, 2NF is violated if a non-key field is determined (functionally dependent) by a proper subset of the key, which is obviously the case here for {B} -&gt; {E}. i.e. part of the key {A, B} alone is sufficient to determine a non-key field {E}. This causes all the redundancy issues etc. and violates 2NF. So R is not 2NF. 

To normalize R to 2NF, we need to decompose R into 

R1 = {A, C, D, F} 


and 

R2 = {B, E}

R3 = {A, B}


Now, {A} is key for R1 and {B} is key for R2, and they have no proper subsets (non-empty). {A, B} is key for R3 and there is no non-key field in R3. Therefore, R1, R2, R3 are in 2NF.

3NF is violated if a non-key field functionally depends on another non-key field. This is the case for R1 where we have {A} -&gt; {C} and {C} -&gt; {D}, which causes similar problems with the violation of 2NF. To fix/normalize this, we can split R1 = {A, C, D, F} further into:

R11 = {A, C, F}


and 

R12 = {C, D}


Now, it's easy to verify that R11, R12, R2, R3 together are in 3NF.