W3C home > Mailing lists > Public > public-rule-workshop-discuss@w3.org > February 2006

Re: [RIF] backward vs forward chaining [was some other subject]

From: Francois Bry <bry@ifi.lmu.de>
Date: Fri, 03 Feb 2006 10:32:06 +0100
Message-ID: <43E32316.3040008@ifi.lmu.de>
To: public-rule-workshop-discuss@w3.org

doug foxvog wrote:

>Do you mean the procedural semantics should be defined for each rule, 
>
surely not. I would not make much sense.

>or
>that one procedural semantics (backward chaining) should be defined for
>all rules?
>  
>
for rulesets.

>Aren't we considering contexts here?  Parts of the web that are not in
>the context in which the question is asked are not applicable for the
>answer.  
>
Considering contexts is good if one can. Very often on the web, contexts 
are not konwn before hand. This is one of (the?) essential difference 
between the web and hypertext systems considered before the web.

>A context would include that of the included knowledge bases
>and that of all (recursively) referenced ontologies as well as specified
>other areas of the web.  
>
With recursive references, one can soon get a huge number of web sites 
-- eg too large for a given evaluation strategy.

>Someone's knowledge base using my ontology
>doesn't necessatate my access to that knowledge base.
>  
>
It depends on how "access" and "using" are defined.

>What forward chaining would mean is that forward rules fire when they
>are asserted or when an outside ontology or knowledge base accesses an
>ontology with a forward rule.  The conclusions are then available
>whenever a question is asked.  
>
This is forward chaining with memoing, ie a common approach. It is often 
impracticable for size reasons or if the data are frequently updated. 
Those cases where it is not practicable are the interesting ones from a 
research viewepoint, I beleive.

>Backward chaining requires the execution
>of backward rules when the question is asked.
>  
>
Pre-evaluated questions with saved answers can be considered. But, you 
are right, the standard approach to backward chsaining it at query time. 
In a distributed and chanuigng world, furthermore without agreements on 
when something is changed, this is one of the appealing features of 
backward chaining.

>>>>My point was that forward chaining inherently requires to start 
>>>>computing from all web sites that might be involved.   Either those web
>>>>sites are known and limited in number -- and this is fine -- or not 
>>>>-- and forward chaining is impracticable.
>>>>        
>>>>
>
>True, but backward chaining also impracticable if the number of sites to 
>chain over are not known or unlimited in number for queries that are not
>answered completely within a more limited context.
>  
>
Right. In addition, on the web there are rules that are inherently 
inappropriate for backward chaining, cf (1)  (like some other rules are 
inherently inappropriate for forward chaining, cf (2)). If I understand 
well, this is what you (Douglas) mentioned.

(1) interesting(A) :- link-from-to(B, A), interesting(B)
(2) interesting(A) :- link-from-to(A, B), interesting(B)

Remark: in both examples html-like links, not XLink-like generalized 
links, are considered.
-- 
Francois
Received on Friday, 3 February 2006 09:32:10 GMT

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