Re: The Fact of relational algebra (was Re: Clean Object Class Design -- What is it?)

From: Bob Badour <bbadour_at_golden.net>
Date: 10 Oct 2001 17:47:09 -0700
Message-ID: <cd3b3cf.0110101647.4c4358cb_at_posting.google.com>


"Daniel Poon" <spam_at_spam.com> wrote in message news:<1002618908.638568_at_kang.qonos>...
> "Bob Badour" <bbadour_at_golden.net> wrote in message
> news:AJHv7.668$5X7.18802717_at_radon.golden.net...
> > > I mean, mechanical engineers use applied mathematics
> > > to underpin their theories, but they don't go an redefine fundamental
> > > concepts on a whim! So why do computer scientists do that???
> >
> > I doubt that mechanical engineers have much use for infinite in their
> daily
> > jobs when applying mathematics. Recalling from my own electrical
> engineering
> > background, such singularities only proved useful in frequency filter
> > design.
>
> Engineers seem to use mathematics to communicate. In computer science they
> seem to use mathematics to create walls.

I disagree. Computer scientists use mathematics to communicate. Just as engineers require some minimum grounding in mathematics to communicate effectively, computer scientists require some minimum grounding in mathematics to communicate effectively. When one lacks the minimum grounding, one will perceive walls.

My mother, who is completely ignorant of differential equations, would look at Schroedinger's equation and see a blank wall. An electrical engineer designing semiconductor devices would look at the same equation and start considering boundary conditions and inconsequential terms.

> Maybe thats just how it seems at
> the moment. It would be good if everyone had some knowlege of set theory.
> Then you could 'kick down' into set theory if you wanted to express
> something more rigorously.

The relational algebra is a direct application of set algebra. "A database is a set of axioms." -- Hugh Darwen

> Insead we have the 'relational model' which is
> fine, but not very good as a method of communication, and we have all sorts
> of diagramming techniques which are very good for communication, but aren't
> very rigourously defined.

Only those who are ignorant of the basics will find it a poor method of communication. Unfortunately, too many practitioners are ignorant of the basics. As Fabian Pascal points out on his website, http://www.firstsql.com/dbdebunk/ , schools do not teach the basics preferring to teach products instead.

> > > But I think its kind of important. I think you could re-implement
> relational
> > > algebra with identity based semantics.
> >
> > Values are identity, which obviates the need for re-implementation.
>
> Values are not identities. Vaules are only unique in their domain. For
> example, each member of the 'Set of all employee keys', is unique only in
> that set.
> E = set if employees

E is a set of self-identifying values

> D = set of departments

D is another set of self-identifying values

> Ek = set of employee keys

Ek is a different set of self-identifying values

> Dk = set of department keys

Dk is yet another different set of self-identifying values

As I said before, values are identity.

> > > I think it would be a lot closer to
> > > set theory then. Set theory is what people use to 'implement'
> mathematics
> > > these days ;-)
> >
> > I think you will find that the attempt ran into limitations.
>
> It certainly did, it it is irrelevent to us anyway. Set theory still remains
> the basic language that mathematitians seem to use (in my limited experience
> anyway).

Set algebra, which equates to the relational algebra, is one basic language that mathematicians use. Predicate calculus, which equates to the relational calculus, is another basic language that mathematicians use.

While I have never seen the proof myself, I have been led to believe that one outcome of the relational model is a constructive proof of the equivalence between set algebra and predicate calculus. Received on Thu Oct 11 2001 - 02:47:09 CEST

Original text of this message