- From: Paul Vincent <pvincent@tibco.com>
- Date: Tue, 16 Jun 2009 13:51:45 -0700
- To: "Paul Vincent" <pvincent@tibco.com>, "Sandro Hawke" <sandro@w3.org>, "Christian De Sainte Marie" <csma@fr.ibm.com>
- Cc: "RIF" <public-rif-wg@w3.org>
Oops: just to clarify in the light of Dave's response: my comment below pertains to PRD, and is possibly irrelevant / out-of-context for BLD etc! Paul Vincent +1 650 206 2493 / mobile +44 781 493 7229 > -----Original Message----- > From: public-rif-wg-request@w3.org [mailto:public-rif-wg-request@w3.org] > On Behalf Of Paul Vincent > Sent: 16 June 2009 15:51 > To: Sandro Hawke; Christian De Sainte Marie > Cc: RIF > Subject: RE: [Core][PRD] Definition of safeness > > Hi Sandro: > Generally*, a ruleVariable can bind to: > > - zero entities: > -- the rule is invalid for firing** > > - one entity: > -- this is the case where a rule variable is really treated as a simple > (singleton) variable that can only have one value; for example from a > parameter to the rule service; > -- also the case when there is only 1 member of the class specifying > the > ruleVariable in memory > > - two or more entities: > -- this is the case where there are >1 members of the Class specifying > the ruleVariable in memory > > In the case where there is a singleton value, but the value is defined > as "null", then this is normally considered to be a "value". > > >From the above, the statement > > "Intuitively, safeness of rules guarantees that when performing > > reasoning in a forward-chaining manner, it is possible to find > bindings > > for all the variables in the rule so that the condition can be > > evaluated. " > ...seems to be reasonable, as it covers cases of zero, 1 or more > bindings. > > Your alternative > > "A rule is safe if it is possible to find bindings for all the > > variables in the rule such that the condition can be evaluated." > ...seems cleaner as I can't think how the safeness would be affected > for > backward chaining rather than forward chaining: it might be that this > constraint is "just in case"... > > Notes: > * as in "I don't know nor conceive of any counterexamples" > ** excluding the case of disjunction / "or" in the rule condition: > disjunct parts of a rule should really be viewed as separate rules > > PS: its not a naive question IMHO. > > Paul Vincent > +1 650 206 2493 / mobile +44 781 493 7229 > > > -----Original Message----- > > From: public-rif-wg-request@w3.org > [mailto:public-rif-wg-request@w3.org] > > On Behalf Of Sandro Hawke > > Sent: 16 June 2009 14:44 > > To: Christian De Sainte Marie > > Cc: RIF > > Subject: Re: [Core][PRD] Definition of safeness > > > > > > I have an naive question about our effort to define of safeness. > > > > We say, "Intuitively, safeness of rules guarantees that when > performing > > reasoning in a forward-chaining manner, it is possible to find > bindings > > for all the variables in the rule so that the condition can be > > evaluated. " > > > > Is there any variation among PR systems, where there are rules for > > which > > some systems can find such bindings and others cannot? If not, is it > > likely PR systems will emerge which will differ from the crowd about > > which rules are safe? Since I haven't heard anyone argue about our > > definition of safeness in these terms (eg "this is safe for clips but > > not jess"), I'm guessing the answer to both is No. > > > > In that case, can't our single, normative definition one sentence, > like: > > "A rule is safe if it is possible to find bindings for all the > > variables > > in the rule such that the condition can be evaluated." That should > > probably be expanded a little (including explaining binding patterns > > for > > externals), but I'm not seeing why we need to standardize what amount > > to > > an algorithm for determining this case. By all means, we could > provide > > one or more helpful, non-normative guides to how to determine if > > bindings are findable, but if there's no actual disagreement likely > > among implementors, I don't see why we're trying to standardize it. > > > > -- Sandro >
Received on Tuesday, 16 June 2009 20:52:39 UTC