Re: [TED] Action-188, ISSUE: production rule systems have "difficulty" with recursive rules in RIF Core

> This would be a ridiculous and unjustified restriction.
> 
> The core is for exchange. There is no requirement for any concrete
> system to properly include the core. (Don't confuse concrete systems with
> RIF dialects.)

I'm not sure where the disagreement or misunderstanding here is.

My understanding fits with what Gary said, that RIF Core is a dialect
and it's a part of every RIF dialect, so every rule engine using RIF
must implement RIF Core.    

We'll need some normative Conformance text at some point, something a
bit like:
   http://www.w3.org/TR/owl-test/#consistencyChecker

We could say something like (as a rought first cut):

     A "RIF Core Rule Engine" is a rule engine which can perform sound
     and complete reasoning on any rule set which can encoded in one or
     more RIF Core documents.  It must be able to answer all queries
     against the deductive closure of the ruleset, where a query is
     equivalent to a RIF Core anticedent, and to answer a query means to
     provide every matching set of bindings to the variables in the
     anticedent. 

At the moment, unless some new information comes along, I'm inclined to
agree that we need to leave recursive Horn rules out of the core.

My understanding is that recursive Horn rules are also a problem for
prolog.  As with rete systems, there are lots of clever and effective
ways of dealing with this problem (I was once an enthusiastic XSB user),
but my sense is that they are still kind of cutting edge instead of the
kind of dirt simple we want in RIF Core.  With non-recursive rules, one
can do the trivial mapping to prolog or rete rules and any halfway
decent engine will be a sound and complete reasoner for RIF Core rules.
I think that's what we want.

We could go another step back for RIF Core, all the way to datalog, but
I think non-recursive terms are still quite useful (eg for defining
uncle), so I'd rather not do that.

   -- Sandro

Received on Thursday, 14 December 2006 16:23:36 UTC