Re: views of binary operations

From: Cimode <cimode_at_hotmail.com>
Date: 16 Jul 2006 01:42:19 -0700
Message-ID: <1153039339.819969.316490_at_p79g2000cwp.googlegroups.com>


Marshall wrote:
> Consider named views of binary operations on relations.
>
> Given a relational operator "op" and relation variables A and B,
> and a declaration of:
>
> r = A op B
>
> the language evaluates the expression "A op B" and assigns the
> result to r.
>
> However, if we declare this as a view, we do not evaluate A op B
> at the time of the declaration, but instead (re)evaluate A op B each
> time we make reference to r in later expressions.
>
> r = view(A op B)
>
> Is it the case that we want exactly the above, or might we
> want a more fine-grained control? Might we ever want
>
> r = A op view(B)
>
> In other words, the value of A at the time of the declaration and
> value of B at the time of evaluations of r? In which case, we
> then have four possibilities:
>
> r = A op B
> r = view(A) op B
> r = A op view(B)
> r = view(A) op view(B)
>
> (Actual evaluation of the expression is deferred if either of
> the operands is a view.)
>
>
> In other words, when we have a view of a binary relation operation,
> are we necessarily creating a view of the entire expression, or are
> we making views of the operands?
>
> (I am asking in the theoretical sense, and not about SQL per se,
> although if current practice in SQL sheds light on the question,
> I am interested in that as well.)
If you assume r = (A op B) the only deduction you are allow to make is view(r) = view(A op B)...

For having the expression r = view(A op B) you are making the common mistake of assuming r = view(r) which basically is a confusion between the relvar and its projection as a view...

In order to start making operations with the *op* operator, you must first characterize the *op* operator...Hint: I have been working on it a some years and so far I have found some interesting results...refer to dissymetrical nature of relvars thread...

> Marshall
Received on Sun Jul 16 2006 - 10:42:19 CEST

Original text of this message