# Re: Declaring super types

Date: Thu, 22 Apr 2010 17:02:17 -0700 (PDT)

Message-ID: <50e3cae2-86c4-4d4c-8445-d3c942be2c23_at_x18g2000prb.googlegroups.com>

On Apr 22, 2:26 pm, r..._at_raampje.lan (Reinier Post) wrote:

> Vadim Tropashko wrote:

*>
**> [I've removed some empty lines]
**>
**>
**>
**> >On Apr 20, 3:03 pm, r..._at_raampje.lan (Reinier Post) wrote:
**> >> Vadim Tropashko wrote:
**> >> >Are you saying
**> >> >"R is a S"
**> >> >is eqivalent to
**> >> >"R join S = R"?
**>
**> >> Hmmm ... that seems a nice shorthand for the first and third clause,
**> >> but it doesn't imply the second one.
**>
**> >Well, let's approach this question from math perspective. I suggest
**> >the "is a" is some [partial] order between a pair of relations, so it
**> >has to honor 3 laws:
**>
**> >R < R
**> >R < S & S < R -> R = S
**> >R < S & S < T -> R < T
**>
**> >One can prove that the order defined via join satisfies all them.
**>
**> Certainly. But these properties don't uniquely determine the order.
**> I haven't checked it, but I bet the definition obtained by
**> adding the second clause satisfies them as well.
**>
**> [...]
**>
**> >However, there is the strong reason to suspect that the order defined
**> >by join is the most important one (and, therefore, is candidate to
**> >represent "is a"). This is because the order introduced via
**> >generalized union (or relational algebra projection) coinsides it!
**>
**> Not strong enough. Without the second clause, you're talking about
**> aggregation, or in Silberschatz et al.'s terms, a weak entity: an entity
**> (the "whole") being used to identify another (the "part").
**> The "is a" relationship is more restricted in that the "whole"-"part"
**> relationship is one-to-at-most-one.
**>
**> >So, you are suggesting that your definition gives rize to yet another
**> >order relation? Can you prove its three defining properties?
**>
**> I gave the three defining properties.
**> I'm not sure why you're asking for an alternative.
*

I have meant proving reflexivity, symmetry and transitivity. However in the followup message I figured that out, so your "is-a" relation is indeed an order. More importantly, I don't quite follow your definition. Suppose you have two relations

Circles = [centerX centerY radius]

0 0 10 10 0 20

;

Ellipses = [centerX centerY axisX axisY]

0 0 10 10 10 0 20 20 0 10 10 50

;

these don't match your definition. Or perhaps you want to correct the "radius" attribute name to match say "axisX", then I still fail to see how it would match your definition. Received on Fri Apr 23 2010 - 02:02:17 CEST