Re: views of binary operations

From: Cimode <cimode_at_hotmail.com>
Date: 16 Jul 2006 01:54:52 -0700
Message-ID: <1153040092.140863.284900_at_h48g2000cwc.googlegroups.com>


My best advice to you if you want to deal with the complex issue of the operator is to forget *totally* about SQL perspective on the problem...

Cimode wrote:
> 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:54:52 CEST

Original text of this message