# Re: Idempotence and "Replication Insensitivity" are equivalent ?

Date: Mon, 25 Sep 2006 12:36:28 GMT
Message-ID: <g3QRg.38624\$9u.331234_at_ursa-nb00s0.nbnet.nb.ca>

paul c wrote:
> David Cressey wrote:
>

```>> "paul c" <toledobythesea_at_oohay.ac> wrote in message
>> news:od0Rg.12923\$1T2.10076_at_pd7urf2no...
>>
>>> David Cressey wrote:
>>>
>>>> "Chris Smith" <cdsmith_at_twu.net> wrote in message
```

>
> ...
>
```>> It's probably me.  I'm trying to use the term "domain" the way some of
>> the
>> mathematicians  seem to be using it.
>>
>> Here's what I think I got by making inferences from other posts:  the
>> domain
>> of a relation is the cartesian product of the domains of each of its
>> attributes.
>>
>> I probably misinterpreted something I read in here.  That'll teach me to
>> learn things in c.d.t.!
```

>
> Seems okay to me, but this got me to thinking in a different line. As
> far as RT is concerned, I tend to think of a domain as being equivalent
> to a type, eg., a set of values plus identity operator plus maybe some
> other ops. (Maybe this isn't strictly correct but my reason is that I
> haven't thought of a situation where there might be some difference that
> mattered.)

For the relation, F(x,y) = { x in R, x > 0, y in R | y = log x }, R (as in a real number) corresponds to the type, but the domain of x is positive reals only.

If one has specialization by constraint, one could argue that positive real is a subtype of real, though.

Thus, it is arguable either way whether domain is identical to type.

> If you just mean project in some mathematical sense that is apart from
> the RM, then I suppose the domain formed that way could still have the
> same name as the relation (at least that would be convenient).

Project in the RM is the mathematical sense. It is limited, however, to what for now I will call 'orthogonal project'. Arguably, one could project onto a subspace that is neither orthogonal nor parallel to any of the dimensions of the relation. However, one could argue that such a project is an orthogonal project following some other transformation including rotation.

> But I'm also thinking that when you say 'project a relation onto its
> attributes', if such a thing were permitted by some RM impl'n, what
> *could* actually happen is that a relation with a single relation-valued
> attribute would be formed and I suppose that attribute's 'type' would be
> the name of the relation. But join is usually the operator we expect to
> be able to undo a projection, so if an impl'n did this, then I suppose
> it might want to undo the rva-creating projection, and that might entail
> that it also have a way of equating a relation with several attributes
> against a single-attribute rva equivalent.

Such as the relational equality operation?

> In this admittedly oddball view of things, I wonder if the name of an
> rva really matters? That's as far as I've got.

What's oddball about it? Received on Mon Sep 25 2006 - 14:36:28 CEST

Original text of this message