- From: Boley, Harold <Harold.Boley@nrc-cnrc.gc.ca>
- Date: Mon, 30 Jun 2008 17:49:32 -0400
- To: "Gary Hallmark" <gary.hallmark@oracle.com>, "Dave Reynolds" <der@hplb.hpl.hp.com>
- Cc: "Christian de Sainte Marie" <csma@ilog.fr>, "RIF WG" <public-rif-wg@w3.org>
Production Rule languages such as the widely used CLIPS (http://en.wikipedia.org/wiki/CLIPS) employ predicates like car_problem with named arguments. CLIPS (Wikipedia rule1 is a "pure production rule"): (deffacts trouble_shooting (car_problem (name ignition_key) (status on)) (car_problem (name engine) (status wont_start)) (car_problem (name headlights) (status work)) ) (defrule rule1 (car_problem (name ignition_key) (status on)) (car_problem (name engine) (status wont_start)) => (assert (car_problem (name starter) (status faulty)) ) RIF-BLD (simplified, with rule1 as a Horn-like rule): (* trouble_shooting *) car_problem(name->ignition_key status->on) car_problem(name->engine status->wont_start) car_problem(name->headlights status->work) (* rule1 *) car_problem(name->starter status->faulty) :- And( car_problem(name->ignition_key status->on) car_problem(name->engine status->wont_start) ) -- Harold -----Original Message----- From: public-rif-wg-request@w3.org [mailto:public-rif-wg-request@w3.org] On Behalf Of Gary Hallmark Sent: June 30, 2008 6:35 PM To: Dave Reynolds Cc: Christian de Sainte Marie; RIF WG Subject: Re: RIF Core, and how much is PRD allowed to diverge from BLD [Was: Re: [PRD] Issues to resolve before publication] I'm sure the word "core" is overloaded and means many things to many people. Right now, I'm concerned with an operational meaning, which is literally the intersection of BLD and PRD. The larger this intersection, the better. I don't care so much for NAU per se, I just use it as an example. Because it is in BLD, the default should be that it is in PRD as well, unless there is some evidence that it is more difficult for PRD than for BLD. There is no such evidence -- in fact, it is common in PRD (Jess and CLIPS have it) Dave Reynolds wrote: > Gary Hallmark wrote: >> >> To maximize rule interchange between production rule engines and >> logic rule engines, clearly Core should be "as big as possible". We >> can, should, and must decide that now. I don't even know why I have >> to keep arguing this point. The bias to keep BLD and PRD aligned >> with a large common core should be so high that the burden of proof >> is on you to show why NAU should not be in Core. You have provided >> no such proof. > > I haven't followed all the ins and outs of all this discussion but > even without PRD I'm not immediately convinced NAU should be in core. > > They seem relatively uncommon in rule languages. They got in, in the > end, on the grounds that they can be handled at the translation stage > for languages that don't support them. However, the notion of a "Core" > suggests some criteria of simplicity and minimality and there needs to > be a higher burden of proof that these extra syntactic features have > value in the Core. > > Dave
Received on Monday, 30 June 2008 21:50:12 UTC