Re: Notions of Type
Date: 17 Aug 2006 11:14:54 -0700
Message-ID: <1155838494.024994.117310_at_b28g2000cwb.googlegroups.com>
Bob Badour wrote:
> Marshall wrote:
> > Consider PROJECT:
> >
> > PROJECT: Relation, Set-of-attributes -> Relation
> >
> > So for PROJECT of an x,y point over x, we pass it two
> > things:
> >
> > 1) A relation defined over attributes x and y
> > 2) ???
> > and it returns
> > 3) A relation defined over attribute x (aka "profit")
> >
> > Whoops! Doesn't fit the template. The second argument isn't
> > a relation. So, strictly speaking, this is not an algebraic operator,
> > because it isn't closed over the type Relation. Exercise for the
> > reader: what *is* the type of the other argument? This should
> > make your head hurt a least a little bit.
>
> It is a relation of degree 1 and cardinality N representing a set of N
> attribute names.
This is formally correct, although I'd have to be convinced it's not a vacuous construction. You can go one step further and pivot this relation into an empty relation with N attributes. Then notice that this operation behaves like union... Received on Thu Aug 17 2006 - 20:14:54 CEST