database refinement - minimal cover of F (extraneous attributes)

Schema R = (A, B, C, D, E, F)

FD F = {ABC -> D, CD -> B, BCF -> D, CDF -> BE, BCDF -> E}

Find Fc, the minimal cover (aka. canonical cover) of F.

This is the method using in my book:

Example: abc -> xyz

a is redundant (extraneous) if (bc)+ ⊇ a; x is redundant if (abc)+ ⊇ x.

NOTE: Here, the closures are computed using F, with a or x being deleted from abc -> xyz respectively.

I don't understand the last bold sentence.

one solution is:

Consider CDF -> BE

B is redundant: (CDF)+ = (CDFBE) ⊇ (B)

F becomes { ABC -> D, CD -> B, BCF -> D, CDF -> E}

but I don't understand.

according to this logic:

E can be redundant too,

coz:

Consider CDF -> BE

E is redundant: (CDF)+ = (CDFBE) ⊇ (E)

F becomes { ABC -> D, CD -> B, BCF -> D, CDF -> B}

I know I must overlook some important criteria. Can anyone tell me what is that?

5
задан Newbie 15 May 2011 в 12:33
поделиться