Re: lack of model theory for errors in built-ins

Hold on a second.  I have to think about the universal quantification bit some 
more but:

Jos de Bruijn wrote:
> Michael Kifer wrote:
>> Say, "a" is true, "b" false, and "c" is undefined. What's the values of
>>      Itruth (a \/ c) = ?
>>      Itruth (b /\ c) = ?
>> If it's true/false, then this is exactly the same as adding the undefined
>> truth value and a 3-valued logic. We discussed this before.

"Undefined" is not a truth value.  The point of undefined is that the model 
theory doesn't tell you what the truth value is in this case.  It is NOT defined 
- that is supposed to mean we don't care.  Specifying that undefined is a kind 
of truth value actually defines it.

>> If it is undefined, then this is unacceptable, because it would mean that
>> the following ruleset would have no models:
>>     q :- (p, a) \/ (r, c).
>>     p.

So this would have a model. c is undefined so (r,c) is either true or false, it 
doesn't matter, the BLD spec doesn't tell you which it is.  Whichever it is, q 
is in the model.

The point was supposed to be that we leave it up to implementors to deal with 
errors.   BLD doesn't specify the truth value of statements with errors.  That's 
why the mapping is partial.



Dr. Christopher A. Welty                    IBM Watson Research Center
+1.914.784.7055                             19 Skyline Dr.                           Hawthorne, NY 10532

Received on Tuesday, 5 February 2008 04:42:20 UTC