I think James C. Owen wrote: > Ernest: > > Let me see if I can understand what we're actually saying here: As written > below, since ?fact is being modified in the RHS of the rule then the rule will > be placed on the agenda as available to be fired again, even though the > recursion principle would otherwise have removed the rule from > consideration.. This is basically the data-driven concept of almost all > Rete-type rulebased systems and some that are not Rete-based. In fact, the > rule will be removed (via the recursion principle) from the agenda and never > be replaced if the rule fires and the data are NOT changed. Recursion is the > first rule of conflict resolution of both LEX and MEA and is used by, well, > everybody who builds a rulebased system of any kind of merit. (Jess, JRules, > OPSJ, JEOPS, Advisor, Expert, ART, etc., etc.)
That's right. The current behavior in all cases is that a rule won't fire on a given set of unchanged facts more than once. > > So. Now. Are we asking that this should be changed so that if the rules are > slot-driven rather than data-driven,? Meaning that the rule will be removed > if the rule, regardless of data, fires? If so, it can't work because then > only one case would match. i.e., we would be asking the question, "Is there > ANY case" and when the case is answered true then the engine stops. No, not quite. The proposal is for a new, special class of rules that will fire no more than once for a given set of facts, regardless of whether their slot data changes. Currently, modifying any slot in a fact on a rule's RHS will make the LHS match again. Under this proposal, this wouldn't happen for this special class of rules. In classical expert systems, facts were just tuples, without their own independent existence. In Jess, a fact is a lot more like an Object, and it persists over time. Note that in OPS-derived systems, where each fact has a numeric id, that id traditionally changed when a fact was modified. In Jess, the id -doesn't- change, highlighting the Object-ness of a fact. In a way, there are two different ways to think about Jess rules. You can be matching a fact with particular slot data, or you can be matching a particular fact object. The latter class of rules can sensibly be expected to match a given fact (or set of facts) only once; that's the class of rules for which the "one-shot" idea is useful. --------------------------------------------------------- Ernest Friedman-Hill Distributed Systems Research Phone: (925) 294-2154 Sandia National Labs FAX: (925) 294-2234 PO Box 969, MS 9012 [EMAIL PROTECTED] Livermore, CA 94550 http://herzberg.ca.sandia.gov -------------------------------------------------------------------- To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]' in the BODY of a message to [EMAIL PROTECTED], NOT to the list (use your own address!) List problems? Notify [EMAIL PROTECTED] --------------------------------------------------------------------