Re: Concurrency in an RDB

From: paul c <toledobythesea_at_oohay.ac>
Date: Fri, 22 Dec 2006 16:33:40 GMT
Message-ID: <ENTih.511609$5R2.246715_at_pd7urf3no>


Bob Badour wrote:
> paul c wrote:
>

>> Bob Badour wrote:
...
>
> What I am saying is: When you project onto A, the data type of B is
> mostly** irrelevant. Likewise, when you project onto B, the data type of
> A is mostly irrelevant.
>
> The fact that you have a recursive data type definition has no effect on
> project or join or restrict or union or intersect or difference etc. The
> values identified as B are simply values.
>
> Assuming:
>
> A = { a1, a2, a3, a4, a5 }
> B = { {a,b} | a in A and b in B }
>
> Given relation R{a in A,b in B}: /* Using C-style comments */
>
> R = { { a1, { a2, { a3, {} } } } /* a=a1, b={ a2, { a3, {} } */
> , { a4, { a3, {} } } /* a=a4, b={ a3, {} } */
> , { a5, { a2, { a3, {} } } } /* a=a5, b={ a2, { a3, {} } */
> }
>
>
> Project R onto R1=R{A}:
>
> R1 = { { a1 }, { a4 }, { a5 } }
>
> Project R onto R2=R{B}:
>
> R2 = { { a2, { a3, {} } }, { a3, {} } }
>
>
> ** I say "mostly" irrelevant because the predicate for the projected
> relation still makes reference to B in the sense of "A where exists some
> B".

Thanks for that example.

p Received on Fri Dec 22 2006 - 17:33:40 CET

Original text of this message