# Re: Sixth normal form

Date: Fri, 10 Aug 2007 20:41:01 GMT

Message-ID: <x34vi.27280$RX.8952_at_newssvr11.news.prodigy.net>

"Jan Hidders" <hidders_at_gmail.com> wrote in message
news:1186751333.018671.305210_at_j4g2000prf.googlegroups.com...

> On 9 aug, 04:15, "Brian Selzer" <br..._at_selzer-software.com> wrote:

*>>
**>>
**>> My use of the term "independent" is not the same as that defined by
**>> Rissanen. I consider a projection over a set of attributes A to be
**>> independent if and only if every dependent set of attributes determined
**>> by
**>> any subset of A is also a subset of A. In other words, a projection over
**>> a
**>> set of attributes A is independent if and only if for each functional
**>> dependency X --> Y in the closure of the set of functional dependencies
**>> for
**>> the relation schema containing A, if X is a subset of A then Y must also
**>> be
**>> a subset of A.
**>
**> Very good, finally a proper definition. So you apprently meant it as a
**> unary predicate over sets of attributes and not as a binary
**> relationship between sets of attributes. Let me see, if we have a
**> relation R1(A,B,C) with an FD A->B then you call the following sets
**> independent: {}, {B}, {C}, {A,B}, {B,C}, {A,B,C}. Correct?
*

Yes, provided A --> B covers the closure of the set of functional dependencies for R1.

> And if we have R2(A,B,C) with A->B and A->C then the following are

*> independent:
**> {}, {B}, {C}, {B,C}, {A,B,C}.
**>
*

Yes, provided A --> B and A --> C covers the closure of the set of functional dependencies for R2.

>> Consider a simple relation schema, {A, B, C} such that A --> B and B -->

*>> C.
**>> Rissanen would consider both of the projections {A, B} and {B, C}
**>> independent. I don't.
**>
**> Indeed. You only call {B,C} independent.
**>
**>> The closure of the set of functional dependencies
**>> includes A --> C, which can only be preserved by the inclusion
**>> dependency,
**>> {A,B}[B] IN {B,C}[B].
**>
**> Not necessarily. That depends on your definition of FDs over
**> attributes in different relations. The usual definition in
**> normalization theory is that they hold for a schema if they hold for
**> the natural join of all relations in the schema. In that case the FD
**> is preserved also without the inclusion dependency.
**>
*

I don't agree with the usual definition. It isn't strict enough, in my opinion.

(1) A --> B /and/ B --> C; therefore A --> C. (2) A --> B /or/ B --> C; therefore A -/-> C.

(1) is preserved by the IND {A, B}[B] IN {B, C}[B]; (2) is what is without
the IND.

While it is true that A --> C in {A, B} JOIN {B, C}, without the IND there
can still exist values for A that do not determine a value for C.

On the other hand, requiring a cyclical referential constraint for every decomposition is too strict.

*> -- Jan Hidders
**>
*

Received on Fri Aug 10 2007 - 22:41:01 CEST