Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> comp.databases.theory -> Re: The "standard" way to get to 3NF
Jan Hidders <jan.hidders_at_REMOVETHIS.pandora.be> wrote in message news:<kugfc.71448$OG1.4811821_at_phobos.telenet-ops.be>...
> Jan Hidders wrote:
> > Jan Hidders wrote:
> >> [...] The usual algorithm that gets you to 3NF in one step (the one
> >> using the minimal cover) splits as little as possible. See for example
> >> sheet 46 on:
> >>
> >> http://cs.ulb.ac.be/cours/info364/relnormnotes.pdf
> >
> >
> > Did anyone notice that this algorithm is actually not correct? Take the
> > following example of a relation R(A,B,C,D,E) with the set of FDs:
> >
> > { AB->C, AB->D, BC->D }
> >
> > It is clear that the relation ABCD is not in 3NF. Since the set of FDs
> > it is already a minimal cover the resulting decomposition is:
> >
> > { ABCD, BCD }
> >
> > But that gives us our old relation back (plus a projection) so this is
> > definitely not in 3NF.
>
> As was pointed out to me by Ramez Elmasri, the counterexample is not
> correct since the set of FDs is not a minimal cover. The reason for this
> is that AB->D can be derived from AB->C and BC->D. So a proper minimal
> cover would be
>
> { AB->C, BC->D }
>
> and that leads to the decomposition
>
> { ABC, BCD }
>
> which is indeed in 3NF.
>
> I now officially declare this thread closed an will stop replying to
> myself. :-)
>
I know this thread is officially closed, though I'm disapointed
because I like the discourses you hold with yourself.
Date in his *Intro* textbook also demonstrates finding minimal cover using Armstrong's axioms (versus the algorithm), correct?
Thanks,
Dan
> -- Jan Hidders
Received on Wed Apr 14 2004 - 22:34:41 CDT