Re: object algebra

From: Marshall Spight <mspight_at_dnai.com>
Date: Wed, 25 Feb 2004 07:37:08 GMT
Message-ID: <EgY_b.120006$uV3.621497_at_attbi_s51>


"Neo" <neo55592_at_hotmail.com> wrote in message news:4b45d3ad.0402241230.1365e6a5_at_posting.google.com...
> > Do you make some distinction between relational and RDM,
> > and if so, what is RDM?
>
> RDM (data expressed as collections of tuples contrained by the header,
> etc) is less general than relational [ie ((((ab)cd)e)f)(gh)].

What does that last thing represent? Is it some kind of s-expression syntax? So you're showing us a pair of trees and saying it's more general than relations? Why did you show a pair of trees when multiple heterogeneous trees are no more general than a single heterogeneous tree?

Could you show us the parenthesized representation of a three node directed graph, with nodes A, B, and C, and arcs from A->B, B->C, and C->A? If you believe that relations are unnecessary, then you should be able to do it without directly encoding a relation into your expression.

I do not believe there is any way to do this with a tree, other than to build what would be the relational representation of this graph and to stick that into a tree. At which point one must ask what value does sticking it in a tree add?

> Any time you add rules to a system, it becomes less general.

Can you justify that statement? Do you know what an axiom is, or what axiomatic mathematics are?

> A relation (table) by definition is "rectangularish".

This statement is meaningless without a formal definition of "rectangularish." Since I have no such definition, I cannot refute it, but without such a definition, the statement doesn't mean much.

> Per Date, a
> relation consists of 1) a heading of a fixed set of attributes 2) a
> body consisting of tuples (rows), each containing of values related to
> the heading.
>
> You don't see anything "rectangularish" in the above ???

I admit that I can see how a naive person might think they saw a two dimensional data structure in there.

The dimensionality of an n-ary relation is n. It's really important that you understand that if you want to get anywhere with the fundamentals. And I have to say that even though you dismiss the value of the teachings of those who have come before you, you seem to have some desire to learn the fundamentals.

Consider points in three dimensions. Clearly they are not "rectangularish" because they are three dimensional, not two. Yet encoding three dimensional points in a relations is trivial:

create table Point3D ( x int, y int, z int);

Equally clearly, this approach can model points in any number of dimensions, by simply adding columns. That's because: the number of dimensions of the data being modeled is equal to the number of columns! Do you still see a rectangle?

And if you're still stuck on the rectangle, consider how one-dimensional main memory could possibly be used to store these supposedly two dimensional, "rectangularish" relations?

> Because the fundamental building block in RDM is "rectangularish",
> dealing with missing data, trees, and complex structure is more
> difficult and sometimes impractical, although not impossible, since
> you have to use more smaller blocks to get the desired shape or
> eliminate NULLs.
>
> > You can display, for example, a 4-dimensional tessaract (hypercube)
> > as a table if you like - that doesn't mean it's rectangular.
>
> It is not that you cant represent 4-th dimensional, trees and complex
> data structures using the "rectangularish" building block provided by
> RDM, it's just more difficult and sometimes impractical.

What are you using to measure difficulty? To my mind, what is difficult is not using a table to model a tree but rather, using a tree to model a table.

> > The general case is for data to fit into relations
>
> Reality doesn't always provide data that fits "rectangularish"
> relations.
> And when it doesn't, RDM needs NULLs, as Codd has correctly
> recognized.

I never heard any statement to the effect that Codd said NULLs were *required.*

I also find odd the idea that "reality ... provide[s] data."

Marshall Received on Wed Feb 25 2004 - 08:37:08 CET

Original text of this message