Re: compound propositions

From: paul c <toledobythesea_at_oohay.ac>
Date: Wed, 17 Mar 2010 02:01:14 GMT
Message-ID: <KJWnn.68297$Db2.43147_at_edtnps83>


Nilone wrote:
> On Mar 16, 7:12 pm, paul c <toledobythe..._at_oohay.ac> wrote:

>> Must admit I've never understood what is the important difference
>> between a tuple and an entity, other than that some people would rather
>> talk about entities instead of tuples.

>
> My current understanding is that a tuple is a proposition which may
> describe one or more entities, while an entity is an abstraction which
> may be described by any number of tuples in any number of relations.
> ...

I would say tuples are abstractions, also that they are not propositions, just partial representations. (While I don't object to an entity being called an abstraction, the word often confuses me because some people give the impression it's not abstract.)

>>  So in somebody else's vernacular
>> maybe I am assuming an 'entity point of view', but that choice of term
>> doesn't seem significant to me.

>
> When you said "'C1' is a customer OR 'C1' is a client", it seemed to
> me you were describing roles or properties of an entity or entity type
> C1. In a relational database, such roles can be described via
> separate relvars on which we can define referential constraints to
> prevent the conjunction of the predicates from being asserted for any
> C1.
>
>>  (I'm not even sure that talking about
>> tuples matters as far as the user or programming interface is concerned,
>>   eg., when talking only about the logical theory it matters but
>> probably not at other times.)

>
> Predicates and tuples have permeated my perspective as a programmer.
> For example, I'm using associative arrays much more frequently now. I
> find these concepts exceptionally applicable and practical.
>
>> If those relations were 'exclusive', I think the proposition would be
>> something like ( 'C1' is a customer and 'C1' is not a client ) OR ( 'C1'
>> is not a customer and 'C1' is a client ).

>
> I'm sorry, I don't follow. Would you mind rephrasing, please?

That is a proposition which satisfies an 'exclusive-or' predicate, which I think is the assumption you had in mind when you mentioned 'exclusive' in the previous message and 'prevent the conjunction' in this one. By giving the 'xor' proposition, I was just trying to point out that it was different from the original one I had given and that I hadn't made that assumption about disjoint values.

I think one reason people interested in db theory spend so much time on predicates is because of the practical problem of expressing union (and negation), eg., this proposition might be more clear if expressed by tuples with four attributes, but the storage to materialize that is usually impractical. So instead most if not all dbms' expect us to use what Codd called 'union-compatible' relations for a result that has only one attribute.

I don't object to people talking about entities instead of the actual 'objects' of an algebra, after all Codd talked about them. But I think he did that to help his exposition, not to suggest that an algebra or FOL could ever operate on entities (at least in his papers before 1974 or so, not sure about later nor his book). I assume my original question is at fault for leading to this 'exclusive' assumption because it was probably too fuzzy.

(My personal excuse for not paying much attention to what he wrote after   about 1974 is part laziness and part due to being a natural-born revisionist. But there are people who think deeper than I who also seem to put more importance on the early papers.) Received on Wed Mar 17 2010 - 03:01:14 CET

Original text of this message