Re: Undefinedness
Date: Thu, 22 Nov 2007 09:39:41 -0800 (PST)
Message-ID: <ea3deb47-3697-4eb5-8b4f-34cf2ef2ec25_at_t47g2000hsc.googlegroups.com>
On Nov 21, 2:22 pm, "David Cressey" <cresse..._at_verizon.net> wrote:
> "JOG" <j..._at_cs.nott.ac.uk> wrote in message
>
> news:84c11971-6500-48e4-ba0f-b8b659f390da_at_d61g2000hsa.googlegroups.com...
>
>
>
> > Word up CDT. How the devil are you all? Well, I return with a question
> > that as ever highlights my complete lack of formal mathematical
> > training, and in light of knowing no logicians in my daily life (funny
> > that), I was hoping that one of you kind folks might be able to
> > advise:
>
> > Say I had a set of 3 encoded propositions:
> > R := { {(Name, Tom), (Age, 42)}, {(Name, Dick), (Age, 16)}, {(Name,
> > Harry)} }
>
> > (note that Harry's Age is missing, so instead of adding a null, i've
> > intentionally just left the attribute out. Just ride with such oddness
> > for now if you would.)
>
> > What if I deigned to create a simple 'adults' subset of this set of
> > propositions, by creating a predicate that only returned the elements,
> > p, which contained an age attribute greater than 18. Could I state
> > this as (where E signifies set membership):
>
> > Adults := { p E R | EXISTSx ( x > 18 && (Age, x) E p ) }
>
> > My question obviously hinges around Harry's missing age attribute. In
> > this case would the EXISTSx (...) part of the set's intension simply
> > return a FALSE, or will I end up in the quagmire of 3VL with an
> > UNDEFINED? My instinct is that I am still in 2VL given there is no
> > null floating about, but since the recent, excellent discussions of
> > Jan's DEF operator, and having delved into beeson's logic of partial
> > terms, I am not at all confident.
>
> > Any comments are much appreciated, and regards to all, Jim.
>
> I'm no mathematician or logician, but I'll answer anyway.
>
> To me, it dpends on whether the relationship (Name, Age) follows the open
> world assumption or the closed world assumption.
Perfectly fine with full information, and a constraint that a condition can't appear in both. And I can happily extrapolate from CWA from the first relation that: !is(condition:cold)), and from the second !is_not(condition:hot). Nice...
...until we're faced missing information. If both relations are empty (because we just don't have the data say), then CWA tells me that: !Weather_is(condition:Hot) and !Weather_is_not(condition:Hot). It is both hot and not hot. Genius. I don't see how CWA based directly on what propositions state can ever be justified for a system working in the real world (TM).
Equally CWA would suggest that Harry is neither a child nor an adult
in the other example. Meh.
I am hence of the opinion that we should stick to OWA, or better still
a CWA that is aware it is only commenting on the _existence of
propositions_ themselves, and not the underlying truth of their
contents (preventing us asking questions with contradictory answers in
the first place).
> adults. However, if we defined another set, Children,
>
> Children := { p E R | EXISTSx ( x < 19 && (Age, x) E p ) }
>
> Please note that Harry is excluded from Children as well.
>
> If we had a rule that says that every person mentioned in R is either a
> child or an adult, that would be tantamount to requiring that the entry for
> Harry be rejected at time of insertion.
>
> BTW, I see nothing odd about your notation.
Huzzah ;)
> NULLS are not needed. Hwever,
> your proposition R actually contains two propositions: first that the named
> person exists, and second that the person named with an age has that age.