Re: I think my book may be wrong about cardinality, but I'm not sure

From: Bob Badour <bbadour_at_pei.sympatico.ca>
Date: Thu, 26 Jul 2007 18:05:48 -0300
Message-ID: <46a90c7e$0$8837$9a566e8b_at_news.aliant.net>


Bruce C. Baker wrote:

> "Bob Badour" <bbadour_at_pei.sympatico.ca> wrote in message 
> news:46a8fca4$0$8833$9a566e8b_at_news.aliant.net...
> 

>>Bruce C. Baker wrote:
>>
>>
>>>"Cimode" <cimode_at_hotmail.com> wrote in message
>>>news:1185468975.337120.62330_at_d55g2000hsg.googlegroups.com...
>>>
>>>
>>>>On 26 juil, 18:21, "Bruce C. Baker" <b..._at_undisclosedlocation.net>
>>>>wrote:
>>>>
>>>>
>>>>>"Cimode" <cim..._at_hotmail.com> wrote in message
>>>>>
>>>>>news:1185462964.626601.174460_at_d55g2000hsg.googlegroups.com...
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>On 26 juil, 16:38, "Bruce C. Baker" <b..._at_undisclosedlocation.net>
>>>>>>wrote:
>>>>>>
>>>>>>
>>>>>>>"Cimode" <cim..._at_hotmail.com> wrote in message
>>>>>
>>>>>>>news:1185446387.854491.306850_at_w3g2000hsg.googlegroups.com...
>>>>>
>>>>>>>>On 26 juil, 03:13, "Bruce C. Baker" <b..._at_undisclosedlocation.net>
>>>>>>>>wrote:
>>>>>
>>>>>>><snip>
>>>>>
>>>>>>>>>Each tuple in a relation with N attributes corresponds to a point in
>>>>>>>>>an
>>>>>>>>>N-dimensional space, with each attribute being orthogonal to all of
>>>>>>>>>the
>>>>>>>>>others.
>>>>>>>>
>>>>>>>>What does that mean ? How is a single attribute orthogonal to N-1
>>>>>>>>attributes part of the same relation?. What do you exactly designate
>>>>>>>>as *orthogonality*? Why would a tuple necessarily be a point and not
>>>>>>>>a line ofr plane in geometrical N-space?
>>>>>>>>What about degree 0/1 relations? How does a degree 0 relation
>>>>>>>>represent a point in space?
>>>>>
>>>>>>>The answers to all your questions can be found in any linear algebra
>>>>>>>textbook.
>>>>>
>>>>>>Really? Would you care providing a source?
>>>>>
>>>>>"If a relation has /n/ columns, then /each row in that relation
>>>>>represents a
>>>>>point in n-dimensional space/--and the relation as a whole represents a
>>>>>set
>>>>>of such points. In other words, a relation of /n/ columns is
>>>>>/n/-dimensional, not two-dimensional. *Let's all vow never to say "flat
>>>>>relations" ever again.*"
>>>>>
>>>>>"Date on Database", ISBN 1-59059-746-X, page 371
>>>>>
>>>>>As for a linear algebra textbook, there are thousands of them. Pick one
>>>>>and
>>>>>make the necessary extrapolation to relational database theory.
>>>>
>>>>That's what I suspected (Date's algebra).
>>>>
>>>>Thank you anyway for providing some sources (I do appreciate the
>>>>effort). The purpose of my questions was to raise the issue that one
>>>>may *arbitrarily choose several math constructs to describe the *non
>>>>flat* nature of relations. Choosing a POINT in N dimensionnal space
>>>>(correlated to N attributes) to describe relation tuple set is just
>>>>one *possible* math construct choice and such choice has implications
>>>>I never felt confortable with. If I apply Date's definition replacing
>>>>the *n* by some values:
>>>>
>>>>
>>>>
>>>>>A degree 1 relation tuple set is necessarily a LINE (1 - dimensional
>>>>>space)
>>>>>A degree 2 relation tuple set is necessarily represented as a PLANE (2 -
>>>>>dimensional space)
>>>>>How is a degree 0 relation tuple set represented considering that it has
>>>>>0-dimensions according to Date?
>>>
>>>
>>>Good point! (Please excuse the pun; an opportunity like this arises only
>>>once in a lifetime. :-) )
>>>
>>>What /does/ an empty tuple represent? Is it some sort of NULL, as opposed
>>>to a null /set/?
>>>
>>>And since the tuples in a relation must all be distinct, that would seem
>>>to imply that a non-empty relation having no attributes could contain
>>>only a single "null tuple". Could this "null relation" serve as an
>>>identity element for joins?
>>>
>>>Let me get back to you ... :-)
>>
>>Not null. True. A non-empty 0-ary relation is the relational equivalent of
>>True. An empty 0-ary relation is the relational equivalent of False.
> 
> Allow me to correct a poor word choice in my previous post: When I wrote 
> NULL, I was thinking along the lines of a null reference, as in C or C#, NOT 
> a SQL NULL.
> 
> I think I see where you're going with True and False as defined in your 
> post, though ...

It's not so much where I am going as it is where the relational folks have already gone. In particular D&D. Received on Thu Jul 26 2007 - 23:05:48 CEST

Original text of this message