I think Scott Moss wrote: > >The order in which rules are fired depends first on the conflict > >resolution strategy, but if two rules are of equal priority by that > >criterion, then they'll fire in an arbitrary order that just falls out > >of the Rete network implementation. That order is affected by, but > >isn't equal to nor even easily predicatable from, the order in which > >the rules are defined. > > > That's good to know since one of our developments will be to implement a > conflict resolution strategy sound and consistent with a formal logic > or, more likely, several conflict resolution strategies based on > several logics. The ability to do this is, I think, one of the great > strengths of Jess from a modeller's point of view. I imagine that, in > so doing, the order of the defrule statements can be entirely > irrelevant. Is that right?
Only if you replace the existing arbitrary-but-not-random order with your own arbitrary-but-not-random order. As a trivial example, these two rules: (defrule rule-1 => ) (defrule rule-2 => ) will fire in an arbitrary order which will definitely depend on the order in which they're defined. To remove that dependency in your strategy implementation, you'd have to order them based on dictionary ordering of their names, or some other arbitrary criterion. But the point is that yes, you could do that. --------------------------------------------------------- Ernest Friedman-Hill Advanced Software 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] --------------------------------------------------------------------