Is the hashing based on Object.hashcode() or is it custom ?
Because, in practice, Object.hashcode() can be considered *random*.

> From: ejfr...@sandia.gov
> To: jess-users@sandia.gov
> Subject: Re: JESS: Jess determinism
> Date: Wed, 9 Feb 2011 20:45:54 -0500
> 
> 
> 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 y...@address.com'
> in the BODY of a message to majord...@sandia.gov, NOT to the list
> (use your own address!) List problems? Notify owner-jess-us...@sandia.gov

Reply via email to