Re: teaching relational basics to people, questions

From: vldm10 <>
Date: Sun, 22 Nov 2009 03:23:41 -0800 (PST)
Message-ID: <>

On Nov 16, 8:42 pm, Sampo Syreeni <> wrote:
> Right now it is to be expected that I will be spreading the good
> relational word among my peers, in the near future. That is an
> opportunity one doesn't want to fuck up; many enough have gone down
> that road already. So I've been going over, and over, and over the
> basics. Don't want them to be able to catch me off guard with the
> minutiae, after all...
> So now I bump into my first real surprise, and the chills immediately
> go down my spine. That's Date et al.'s answer regarding the
> implications between 6NF and DK/NF, at
> . In there they flat out state that DK/NF doesn't imply 6NF.
> So, my first question is, can this really be true? I mean, this seems
> highly suspect to me: since 6NF is a normal form like any other and is
> as such defined by the constraints it upholds by design, and on the
> other hand DK/NF is by definition a normal form where any constraint
> whatsoever follows from the domain and key ones, shouldn't it be self-
> evident that DK/NF logically implies 6NF, and in fact any other form?
> No matter the fact that there might well be databases which could be
> put into 6NF which cannot attain DK/NF? I think at the very least said
> implication should follow at the price of making it a vacuous truth
> (i.e. all (non-trivial?) 6NF databases could be such that they cannot
> be put into DK/NF)?
> In particular I suspect that the seeming lack of implication follows
> from not treating the time dimension(s) on an equal footing with the
> rest of the attributes in a relation. That, then, would at least to me
> seem like a rather grave violation of the information principle.
> The second point ain't as much a rebuke as a retort: I wonder whether
> Date and Darwen chose their model of time -- which 6NF is defined on
> top of -- based on convenience and familiarity, instead of some deeper
> theoretical reasoning. To me the idea that time in a relational
> database should be treated as a discrete, countably infinite set of
> disjoint moments at a preset temporal granularity seems just
> unnatural, and unnecessarily limiting.
> To me it would seem much more natural to model time as a full
> continuum of precise moments in time, and to constrain such real life
> models using a finite (but otherwise unlimited cardinality) set of
> FOPL constraints, relying on the full linear order on top of the
> reals, on top. I.e. to model time using CW-complexes over the real
> line (i.e. finite unions of open, closed and semi-closed intervals of
> reals), in a fully discrete but also fully variable precision
> approximation.
> Model-wise, 6NF as D&D define it immediately generalizes to this --
> all that needs to be changed is to quantify every defining formula
> over the corresponding nondenumerable set -- yet the possibility of
> rigorously modelling the interaction between open and closed intervals
> as well is a considerable plus when dealing with general intersection
> queries. I also consider the the fact that imputing any kind of chosen-
> ahead granularity parameter into the basic model suddenly becomes
> unnecessary a huge plus. So, do you think this sort of approach is
> sound?
> Finally, I of course have the firm intention of covering the
> essentials, including the basics of dependency and normalization
> theory at least upto 6NF and DK/NF. If my audience proves to be game,
> I'd also like to mention in passing some of the lesser known, more
> esoteric, and less fully researched topics in dependency theory like
> (E)(B)MVD's (cf. e.g.
> ), just to make sure people don't accidentally think they've mastered
> the subject after what is a mere, hurried, introduction. I'd hope to
> pique some genuine interest in the relational way of thought, among
> people who perhaps haven't been exposed to the mindset, eventhough
> otherwise more than capable in modelling data. If you could suggest
> other ways to accomplish the feat, I would greatly appreciate a hint.
> --
> Sampo

Regarding DK/NF and 6NF you can see my solution at There I introduce “Simple Form” an effective solution which decomposes any relation to Binary Relations. My solution distinguishes two kinds of DBs. DBs that don’t maintain changes (Naive DBs) and DBs which maintain changes (General DBs). The Simple Form for Naive DBs is given in 6.5 while Simple Form for General DBs is given in 4.2.9.

DK/NF and 6NF don’t distinguish Naive DBs from General DBs. R. Fagin in his paper wrote: “The very important practical question of exactly when DK/NF can be obtained (and how to obtain it) is open.” What is a purpose of 6NF if key is compound? I mean very compound.

The Simple Form don’t need any other NF. The binary schema can be immediately constructed. Obviously Binary Relations are superior to NFs.

The idea of Binary Relations can be applied to Binary Files (see example 5). However the most general case is Binary Concept. Here I introduce Identifier of Entity which is very important for construction of entity’s abstraction. Binary Concepts are related to facts see (3.4 – 3.9). I introduce facts as primitives i.e. a fact is the smallest complete unit by means of which a semantic act.

Regarding time my solution is event oriented. There are only two kinds of events related to information (see 3.1). So - no events imply no time. These events are in the real world. DB’s events are also in the real world. So my DB design is very much related to the real world and always it enables determination of the corresponding real world events.
Hope this can help to determine answers on your questions. Vladimir Odrljin Received on Sun Nov 22 2009 - 12:23:41 CET

Original text of this message