Re: What to call this operator?

From: Mikito Harakiri <mikharakiri_nospaum_at_yahoo.com>
Date: 28 Jun 2005 10:04:31 -0700
Message-ID: <1119978271.802677.323620_at_g47g2000cwa.googlegroups.com>


As Jon correctly noticed, I goofed with outer union:-)

Marshall Spight wrote:
> > http://arxiv.org/pdf/cs.DB/0501053
>
> I skimmed that paper and it looks quite interesting. (I'll try to
> give it a deeper read tonight.) I'm unfamiliar with the tensor
> product, and Googling only gave me vector definitions which I
> couldn't map into relations.

Now that either Cartesian Product, not Tensor Product is considered primitive they are somewhat less interesting. It was called "Tensor" because it behaves multiplicatively on columns and additively on rows (ahem, tuples). More pressing questions are how to express difference, and aggregation. Without answering these there is little practicality.

> As a math paper it makes sense, but I wouldn't expect to be
> able to use those concepts unmodified in trying to build
> a computer system because of the use of infinite relations.

Well, in D&D algebra infinite relation can be a result of primitive operation (<OR>) applied to finite relations! Lattice algebra produces finite relations whenever arguments are finite, although there is little camfort in that.

> My intuition is that there might be some advantage to
> building systems with as few primitives as possible
> because it would simplify the optimizer. But that's
> not immediately clear.

Simplifying query transformations was indeed one the goals. With only 2 operations one can hope to make query rewrite formal and mechanical. The major stumbling block, however, is non-distributivity. Received on Tue Jun 28 2005 - 19:04:31 CEST

Original text of this message