Re: JESS: Jess determinism

"Ernest Friedman-Hill" <[email protected]> Wed, 9 Feb 2011 20:45:54 -0500
Newsgroups gmane.comp.java.jess
Message-ID <[email protected]>
On Feb 9, 2011, at 2:38 PM, Skeptic . wrote:

>
> Hi,
>
> By default, is the firing order deterministic? (i.e. rules fired in  
> the same order if the same WM is given).
>
> Also, is the order of the facts produced by the next method on a  
> QueryResult deterministic? (i.e. if I run the same defquery twice on  
> the same WM, I get the same facts in the same order)


Jess's behavior is in no way *random*, which means it's completely  
deterministic. But the order in which these things occur is  
*undefined*, which means that it is determined by a number of factors,  
some of which are not visible to you. One of those factors is the  
number of hash buckets in the various node memories; if a node memory  
is rehashed, then the order may change within a given session.

But if you run a single-threaded Jess program twice, starting from  
scratch, and execute the exact same sequence of commands both times,  
then you will get the exact same results.



---------------------------------------------------------
Ernest Friedman-Hill
Informatics & Decision Sciences, Sandia National Laboratories
PO Box 969, MS 9012, Livermore, CA 94550
http://www.jessrules.com







--------------------------------------------------------------------
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].
--------------------------------------------------------------------