# Re: a union is always a join!

From: Brian Selzer <brian_at_selzer-software.com>
Date: Thu, 9 Apr 2009 09:28:49 -0400
Message-ID: <lEmDl.15280\$8_3.15084_at_flpi147.ffdc.sbc.com>

<vldm10_at_yahoo.com> wrote in message
> On Apr 5, 2:06 am, "Brian Selzer" <br..._at_selzer-software.com> wrote:
> > "rpost" <rp..._at_pcwin518.campus.tue.nl> wrote in message
> >
> > news:gq8e2h\$1ujr\$1_at_mud.stack.nl...
> >
> >
> >
> > > Brian Selzer wrote:
> >
> > >>>> The mathematics of relational calculus and relational algebra are
> > >>>> fully
> > >>>> capable, AFAIK, of describing the difference between two states of
> > >>>> a
> > >>>> database.
> >
> > > [...]
> >
> > >>The algebra is capable of that if and only if each and every tuple has
> > >>a
> > >>key
> > >>that permanently identifies the thing in the universe of discourse
> > >>that
> > >>the
> > >>tuple maps to.
> >
> > > No, the algebra can describe the difference between database states
> > > without any assumption on how these states are interpreted.
> >
> > I don't agree. Even without any assumption on /how/ the states are
> > interpreted, there is still the bald fact that they are subject to
> > interpretation. If one state asserts that the employee operating welder
> > #4
> > is being paid at the overtime rate, and another state asserts that the
> > employee operating welder #4 is being paid at the standard rate, would
> > it be
> > valid to infer that 'the employee operating welder #4' denotes the same
> > employee at both states? I think not. Bottom line: the same term can
> > denote different things at different states, consequently, any
> > conclusion
> > drawn from an algebraic expression, such as R' JOIN R, which in essence
> > relies upon the identity of terms, would be faulty, since identity of
> > terms
> > at differnt states does not necessarily imply identity of the terms'
> > referents.
> >
> > > And as Walter Mitty already wrote, it is not in fact necessary that
> > > databases are inpeepreted in such a way that tuples are about "things"
> > > in the universe of discourse.
> >
> > > I think you are overstating your point, which was, if I understand
> > > you correctly, that while relational algebra and calculus may be used
> > > to express the contents of a database change, they do not express the
> > > fact that the contents change; and this does need to be expressed in
> >
> > >>But since that isn't a requirement of the RM, the RM must be
> > >>in trouble! If different keys at different states map to the same
> > >>thing
> > >>in
> > >>the universe of discourse, or if the same key at different states maps
> > >>to
> > >>different things in the universe of discourse, then how is it possible
> > >>to
> > >>describe exactly what is different between two states of a database.
> >
> > > It is really simple. However, you are right in that mutability of
> > > keys and other aspects of the relationship between database contents
> > > and its interpretation will fall outside the scope of that
> > > description.
> >
> > > --
> > > Reinier

```>
>
```

> I would like to make the following note.
> In my model (see www.dbdesign11.com) I didn’t use terms as “possible
> worlds”, “state of affairs” or “temporal”. Especially I didn’t use the
> mentioned terms as basic. They are undefined terms. For example,
> nobody knows what “world” is. However I precisely defined the state of
> entity and state of relationship which are some of my basic terms.

You defined entities in terms of the "world" and the "real world." Now, you say that nobody knows what "world" is. Doesn't it follow then that your "state of entity" is in effect the state of the unknown? Does NULL even have state?

> Reinier for example doesn’t distinguish “state of affairs” from the
> state of entity. He wrote about my model the following: “The database
> records not only present state of affairs, but also all past state…” -
> meaning that db records something like “possible worlds” + all past
> states.

The db doesn't record possible worlds, though the database schema specifies what is possible.

> You intensively used terms “possible world” and “rigid designator” but
> you carefully made transformation and now you are using term the
> state. In the above message, you went further and you mentioned term -
> the state of “the employee”.

Actually, I didn't: I used the term "state" because "database state" is redundant, but, conceivably, there could be states of the employee.

I am not using terms or ideas from your "model." Your "definitions" lack clarity and defy convention. For example, a "state" of a thing is exactly what that thing is at a particular location in time; it is not knowledge of a thing.

> But you proclaim superiority of the relational model and it is unclear
> to me why you don’t use basic terms from relational model or maybe
> from a combination of “temporal” data and relational model?
>