Re: Question about Date & Darwen <OR> operator

From: VC <boston103_at_hotmail.com>
Date: Tue, 6 Sep 2005 23:26:09 -0400
Message-ID: <WbCdncQqQZVWwIPeRVn-3Q_at_comcast.com>


"Mikito Harakiri" <mikharakiri_nospaum_at_yahoo.com> wrote in message news:1126047356.606690.305850_at_g47g2000cwa.googlegroups.com...
> VC wrote:
>> Can anyone give at least an informal definition of what <OR> and <AND>
>> are
>> since the formal one (as quoted ) appear rather nonsensical ? Without
>> such
>> definition any discussion is nonsensical too.
>
> Informal definition is rather easy.
>
> Let x be domain of values {a_1, a_2, ...}
> y be domain of values {b_1, b_2, ...}
> z be domain of values {c_1, c_2, ...}
>
> Consider the cartesian product space
> P={a_1, a_2, ...}x{b_1, b_2, ...}x{c_1, c_2, ...}

The defect of this definition is that you use mathematical relations which are sets of ordered tuples whilst relational tuples are unordered tuples/sets of (A,T,v) triples. I gave an <OR>/<AND> definition example using 'relational' tuples rather than ordered tuples earlier in this thread.

>
> Then, relations R_1(x,y) and R_1(y,z) both are cylindric sets in P.
> (Cylindric sets are geometric objects which are invariant under
> projection). R_1(x,y) <AND> R_1(y,z) is the formal intersection of the
> cylindric sets, and R_1(x,y) <OR> R_1(y,z) is their union.

You do not need to expand the vocabulary with new notions to define something so simple (apparently) as the <AND>/<OR> operations. An alternative definition might be:

Let R1 and R2 be two relations, Hr1 and Hr2 their respective headers. Further, let Ar1_1, Ar1_2, .., Ar1_m and Ar2_1, Ar_2, .., Ar2_n be sets of triples (attribute, type,value) formed over entire domains corresponding to the attributes such that attribute(Ar1_i) in (Hr2 minus Hr1) and attribute(Ar2_i) in (Hr1 minus Hr2). Further, let the relations

CR1 = {{t_1} union ..union (t_m} | t_1 in Ar1_1,...,t_m in Ar1_m} and
CR2 = {{t_1} union ..union (t_n} | t_1 in Ar2_1,..,t_n in Ar2_m}

Then

R1 <AND> R2 = {cr1 union r1| cr1 in CR1, r1 in R1} intersection {cr2 union r2| cr2 in CR2, r2 in R2}
R1 <OR> R2 = {cr1 union r1| cr1 in CR1, r1 in R1} union {cr2 union r2| cr2 in CR2, r2 in R2}

and the header H = Hr1 union Hr2 in both cases.

What is a "cylidric set" ? Probably you meant 'cylindric set algebra' rather than a "cylindric set". If so, it's unclear whether talking about databases in terms of cylindric set algebra is more insightful or clarifying than doing the same in terms of relations and predicates. If not, what exactly do you mean by "Cylindric sets are geometric objects which are invariant under projection" ? Received on Wed Sep 07 2005 - 05:26:09 CEST

Original text of this message