Re: Types and "join compatibility"

From: x <x_at_not-exists.org>
Date: Wed, 3 Aug 2005 17:03:07 +0300
Message-ID: <dcqir2$1lt$1_at_domitilla.aioe.org>


"Marshall Spight" <marshall.spight_at_gmail.com> wrote in message news:1122761293.933576.29120_at_o13g2000cwo.googlegroups.com...

>As to the rename, yes of course, otherwise it wouldn't be a *natural*
>join. In fact, I'm going to rename your whole example for clarity.

>(read ":" as "has type"; P for parent, C for child)
>Relation PR : (a : P)
>Relation CR : (a : C)

>What is the type of PR join CR?

What kind of type ?
The declared type or the most specific type ?

>Date&Darwen's TTM says it's a relation of type (a : P).
>This has never made sense to me; the result can only contain
>values that correspond to C, so what's the point of having
>it be P?

The declared type is (a:P).
The most specific type is (a:C)

The declared type is (a:P) because they decided that every two echivalent expressions have the same declared type. Let M:Set(P) and N:Set(C).
M intersect N = M minus (M minus N)
type(M intersect N) = type (M minus ( M minus N)) = type (M)\/(type(M)\/type(N))=Set(P)\/(Set(P)\/Set(C))= Set(P)\/Set(P)=Set(P) Received on Wed Aug 03 2005 - 16:03:07 CEST

Original text of this message