Re: RA with MV attributes

From: David <davidbl_at_iinet.net.au>
Date: 18 Jan 2007 16:41:33 -0800
Message-ID: <1169167293.297163.240780_at_a75g2000cwd.googlegroups.com>


Aloha Kakuikanu wrote:
> Never mind. Partial order is not enough. It has to be total order.
>
> Aloha Kakuikanu wrote:
> > David wrote:
> > > Here is a partial formalization of a relational algebra based on MV
> > > attributes. The approach appears simple and intuitive. In particular
> > > the join of two relations is rather elegant.
> > > ...
> >
> > IMO, RA with MV attributes is quite easy to formalize. I suggest a
> > nested relation as a formal definition for MV attribute. A critical
> > step is noticing that there is a (partial) order "<" among all the
> > relations. Formally:
> >
> > Q < R iff Q /\ R = R
> >
> > where "/\" is a symbol for relational join. (I don't quite like the
> > "&&" symbol that Marshall uses:-)
> >
> > Next,
> >
> > Q = R iff Q < R and R < Q
> >
> > Now that we can compare relational valued attributes, we can define all
> > the RA operations. Interestingly, set joins (and relational division)
> > are easily expressed in this framework. For example, given
> >
> > A = { <x=1, y={<t=a>,<t=b>}> , <x=2, y={<t=b>,<t=c>} > }
> >
> > B = { <y={<t=a>} }
> >
> > Then, inequality join
> >
> > A /\_a.y<b.y B
> >
> > is the same as relational division between "flattened" A and B
> > relations.

Playing around with the definition of equality can't work because you can't get away from the need to *intersect* the MV attributes (rather than merely test them for equality, as done in the conventional RA) in order to perform a join operation. Received on Fri Jan 19 2007 - 01:41:33 CET

Original text of this message