W3C home > Mailing lists > Public > public-rule-workshop-discuss@w3.org > August 2005

Re: SNAF, NAF, and monotonicity [was: Comments on * DRAFT * Rules...]

From: Christian de Sainte Marie <csma@ilog.fr>
Date: Tue, 30 Aug 2005 20:50:38 +0200
Message-ID: <4314AA7E.2070602@ilog.fr>
To: Michael Kifer <kifer@cs.sunysb.edu>
CC: Dan Connolly <connolly@w3.org>, public-rule-workshop-discuss@w3.org

Michael Kifer wrote:
> 
> There was a set S (I am changing the name to avoid confusion with the above
> symbol A):
> 
> 2 rules, one with a SNAF
> several facts
> 
> There was a conclusion F, such that
> 
>      S |= F.
> 
> Note: |= here is NOT due to modus ponens!
> 
> There was also a set B of facts (just 1 fact), such that
> 
>      S + B |/=F

Could it be that the misunderstanding comes from how you think of the 
CWA? (Forgive me if I misuse formal notation below: I hope that the 
intended meaning remains clear)

If you think of CWA as an inference rule (like modus ponens), you get

CWA: rule with SNAF and several facts |= some negated facts {~Fi}

Modus Ponens: other rule and several facts + {~Fi} |= F

So that, really, S |= {~Fi} + F

Now, if you add {Fi} to S, you cannot infer {~Fi] anymore, and without 
them, you cannot infer F anymore:

S + {Fi} |\= F

Now, if you think of CWA as a property of the world (to be closed, I 
mean) for which SNAF is an indicator, then

S really is:
2 rules, one with classical negation (you do not need SNAF anymore once 
you make everything explicit)
several facts
{~Fi}

then, you have

Modus Ponens: S |= F

but you do not have S + {Fi} |\= F, because S + {Fi} is inconsistent.

I do not claim that the second interpretation is correct: I just wonder 
whether this is not what Dan really had in mind when he challenged your 
addition of OO7car being yellow in S to prove nonmonotonicity?

At least, I believe this is what I had in mind when I introduced the 
farfeluesque notion of "bounded monotonicity": in the same way like you 
need not take into account facts out of the scope of my SNAF if you need 
only reason within that closed world (and thus you do not need 
nonmonotonic inference), you can safely reason monotonically if you know 
that you stay within the bounds where your world is monotonic (yes, this 
look a lot like a definition of nonmonotonicity, but it is not, really: 
if I am born, do queries and draw inferences from a database and then 
die before any change affects that DB - within the bounds of that DB 
monotonicity -, then, for all practical purposes, that DB is monotonic, 
as far as I am concerned).

Once again, I am not trying to say that bounded monotonicity makes sense 
or whatever.

I am just wondering if we would not all agree that we need not care 
about nonmonotonicity as long as the interchange language provides a way 
to make clear the scope (of NAF, and of other nonmonotonicity-generating 
operations, if there are any and they are required): the applications 
that want to use the retrieved rules have to care about it, if they want 
to reason outside that scope.

And, yes: I am perfectly aware that, maybe, none of this makes sense :-)

Christian
Received on Tuesday, 30 August 2005 18:49:38 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 8 January 2008 14:16:23 GMT