W3C home > Mailing lists > Public > public-rif-wg@w3.org > April 2009

Re: RIF Negation

From: Axel Polleres <axel.polleres@deri.org>
Date: Tue, 28 Apr 2009 13:40:41 +0100
Message-ID: <49F6F949.1000009@deri.org>
To: Jos de Bruijn <debruijn@inf.unibz.it>
CC: Adrian Paschke <adrian.paschke@gmx.de>, 'Sandro Hawke' <sandro@w3.org>, 'Christian De Sainte Marie' <csma@fr.ibm.com>, public-rif-wg@w3.org
As pointed out earlier [1] there are some differences here.
Particularly, since the semantics of default negation as failure differs 
for different semantics (would that man we need different naf's/neg's?)

I would be fine with naf, but note that some people might disagree with 
that and call it "default negation" instead.
Actually, in the literature and in implemented systems "not" is widely 
used for default negation/negation as failure, so I am not convinced 
yetthat any mentioned option is better than adrian's original one 
(not/neg) ...

Axel


1. http://www.w3.org/2005/rules/wg/wiki/negation



Jos de Bruijn wrote:
> If we want to distinguish between classical negation of negation as
> failure in the syntax, we should not use "Not", because for many people
> this is either naturally classical or naturally default negation.
> 
> Instead, we should use Naf for negation as failure.
> 
> Jos
> 
> Adrian Paschke wrote:
>> Right, probably it makes sense to have explicit constructs for
>>
>> Explicit/Strong/Classical negation                Neg
>> Default/Negation-as-failure/Weak/Inflationary     Not
>>
>>
>> -Adrian
>>
>> -----Ursprüngliche Nachricht-----
>> Von: Sandro Hawke [mailto:sandro@w3.org] 
>> Gesendet: Dienstag, 28. April 2009 13:34
>> An: Adrian Paschke
>> Cc: 'Christian De Sainte Marie'; public-rif-wg@w3.org
>> Betreff: Re: AW: [Admin] Agenda for RIF telecon 28 April *ADDENDUM* 
>>
>>
>>> We discussed it in the last PRD telecon. The semantics of a generic
>>> "not" in case of PRD is clear since it used in a production rule set,
>>> i.e. it is inflationary not.
>> But is it also classical negation and NAF?  In particular, if I have
>> this ruleset:
>>
>>    forall ?x
>>       if not ex:p(?x) then ex:q(?x)
>>
>> this proposal defines that as a PRD ruleset.  To my eye, it could just
>> as easily be FOL or LPD.  As long as the semantics in all cases would be
>> the same, they could all use the same "not", but otherwise, it seems
>> like they need to use different operators.
>>
>>> Alternative we could introduce many different constructs for
>>> negations, but this might be counterproductive to the interchange
>>> purpose of RIF. I would propose that the intended semantics of a rule
>>> set such as stratified, well-founded, stable models, is denoted by a
>>> special label (e.g. an attribute or additional construct) for the rule
>>> set and not by different constructs for negations. Otherwise a simple
>>> (business) rule set cannot be interchanged between a WFS rule engine
>>> and a Stable rule engine without a translation.
>> How would that work?  If a ruleset was labeled
>> "use-well-founded-semantics" and I was a "stable-semantics" engine, what
>> would I do with it?
>>
>>      -- Sandro
>>
>>
> 


-- 
Dr. Axel Polleres
Digital Enterprise Research Institute, National University of Ireland, 
Galway
email: axel.polleres@deri.org  url: http://www.polleres.net/
Received on Tuesday, 28 April 2009 12:41:29 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 2 June 2009 18:34:05 GMT