Re: 3vl 2vl and NULL

From: Hugo Kornelis <hugo_at_pe_NO_rFact.in_SPAM_fo>
Date: Thu, 15 Dec 2005 00:12:55 +0100
Message-ID: <6d91q11tft1pif358jkiu6d2qb1v0ddh1j_at_4ax.com>


On 13 Dec 2005 12:37:00 -0800, dawn wrote:

>Hugo Kornelis wrote:
>> On 10 Dec 2005 05:22:38 -0800, dawn wrote:
>>
>> (snip)
>> >> "Show me all family members who are NOT older than Aunt Marge" - should
>> >> Uncle Vernon be included or not? Why?
>> >
>> >Two choices of how to ask the question --
>> >1) Show me all members who have an age where that age is less than or
>> >equal to Aunt Marge's age
>> >
>> >In this case Uncle Vernon does not show up because he does not have an
>> >age
>> >
>> >2) Show me all family members who do not have an age greater than Aunt
>> >Marge's
>> >
>> >In this case Uncle Vernon does show up
>>
>> Hi Dawn,
>>
>> So the results of the query would depend on exactly how you formulate
>> it?
>
>I cannot think of any situation where that is not the case, can you ;-)

Hi Dawn,

I have a lot more trouble thinking of a situation where it IS the case.

In SQL, the following queries will return the same results:

SELECT Name
FROM MyFamily
WHERE Age <= (SELECT Age FROM MyFamily WHERE Name = 'Aunt Marge')

SELECT Name
FROM MyFamily
WHERE NOT (Age > (SELECT Age FROM MyFamily WHERE Name = 'Aunt Marge'))

>> Hmmm. AFAICT, this means that in your 2VL algebra, missing data results
>> in ~(A) not being the same as (~A).
>
>No, I don't think so, but before I respond to more, can you give me an
>example that makes you think this? Thanks. --dawn

See the above queries. Rules of Booolean algebra say that   NOT (Age(x) > Age(Aunt Marge))
should be the same as
  (Age(x) <= Age(Aunt(Marge))

Your explanation made me believe that this is not the case in your 2VL system.

Best, Hugo

-- 

(Remove _NO_ and _SPAM_ to get my e-mail address)
Received on Thu Dec 15 2005 - 00:12:55 CET

Original text of this message