Re: header part of the value?

From: David BL <davidbl_at_iinet.net.au>
Date: Mon, 25 Feb 2008 00:12:43 -0800 (PST)
Message-ID: <51498080-cc6a-45bb-a90b-4a58959cf4f2_at_71g2000hse.googlegroups.com>


On Feb 25, 5:26 am, JOG <j..._at_cs.nott.ac.uk> wrote:
> On Feb 24, 6:48 pm, Marshall <marshall.spi..._at_gmail.com> wrote:
>
> > Occasionally the question has come up as to whether a
> > relation value is the body, or the body+the header. In the past
> > I've sided with the just-the-body approach, but today I decided
> > that I don't think that anymore.
>
> Oh eck.
>
>
>
> > Consider the algorithm to perform a natural join on two
> > relation values. Just values: not tables in a database
> > with a known schema or whatever. Just two plain relation
> > values. The natural join specification *requires* the header;
> > it is defined (in part) in terms of the header. So the header
> > must be part of the value.
>
> So far so good. All makes sense.
>
>
>
> > Of course, that then leads me to think of a relation value
> > as a <header, body> tuple.
>
> Woaaaah, hold on a tootin minute there cowboy...why would it lead you
> to think that? Why is a db-relation value not merely a set of finite
> partial functions (db-tuples), mapping attribute names onto values?
> We've broadly agreed in another thread that functions can be
> represented themselves as mathematical relations, so let us represent
> an example ternary relation-value, without a header component in
> sight:
>
> {
> { (a, x1), (b, y1), (c, z1) } ,
> { (a, x2), (b, y2), (c, z2) } ,
> ...
> { (a, xn), (b, yn), (c, zn) }
>
> }
>
> No probs there right?

What if the relation has no tuples? Received on Mon Feb 25 2008 - 09:12:43 CET

Original text of this message