W3C home > Mailing lists > Public > public-rif-wg@w3.org > March 2006

Re: On production rules and phase I&II

From: Frank McCabe <frank.mccabe@us.fujitsu.com>
Date: Tue, 7 Mar 2006 22:44:42 -0800
Message-Id: <37F5C77E-487F-4871-B5D5-2B842FD6C89D@us.fujitsu.com>
To: public-rif-wg@w3.org

The lack of recursion comes from the mapping into
isTrue(C) <- A ^ B

Actually, the mapping I saw for phase I PRs was

mustBeTrue(C) <- A ^ B

which is a closer fit to the original meaning of assert; since C *may  
not* be true prior to the use of the rule.

To support chaining in PRs you must go on from mustBeTrue to being  
true! That is where possible worlds comes in -- if you want to be  
halfway faithful to the intent of PRs.

Also, I understand that chaining in PRs is not  necessarily automatic  
(what is?) Hence you may wish to suppress chaining. Hence the lack of  

I apologize if I gave the impression that the logic part of Phase I  
would not support recursion, I would have been flabbergasted to hear  


On Mar 7, 2006, at 3:10 PM, Peter F. Patel-Schneider wrote:

> From: Frank McCabe <frank.mccabe@us.fujitsu.com>
> Subject: On production rules and phase I&II
> Date: Tue, 7 Mar 2006 14:56:37 -0800
>> Part of the proposed plan is to partition the handling of production
>> rules across the phases, with phase I being the 'pure' subset of
>> production rules.
>> The pure subset corresponding to an extremely small subset of horn
>> clause logic (no recursion!) and an extremely small subset of PR (no
>> modify or remove in the action part of the rule)
> I don't understand where the "no recursion" comes from here.  Could  
> you perhaps
> point to evidence that recursion is not going to be part of phase I?
>> Quite apart from the fact that that to isolate this small subset of
>> PRs is to completely miss the point & approach of PRs, there is a
>> further technical issue.
>> It is possible to map a rule of the form
>> when A & B then assert C
>> into a 'horn clause' of the form
>> isTrue(C) <- A ^ B
> Well, maybe, but wouldn't it be much better to just map it into
> 	C <- A ^ B
>> A point to bear in mind: to support chaining, it will be nec. to
>> conclude from
>> isTrue(C)
>> to
>> C
>> This appears to imply a Kripke-style possible world semantics.
> Why?  Even if one was to utilize isTrue, then why would isTrue just  
> be a truth
> predicate, which does not require a Kripke-style semantics.
> [ Some interesting issues having to do with retraction removed. ]
>> Frank
> Peter F. Patel-Schneider
Received on Wednesday, 8 March 2006 06:44:55 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:47:37 UTC