[issue39867] randrange(N) for N's in same dyadic blocs have excessive correlations when sharing identical seeds

Tim Peters report at bugs.python.org
Thu Mar 5 20:54:00 EST 2020


Tim Peters <tim at python.org> added the comment:

This is where you're not getting traction:

"A randrange() function should a priori not be so strongly tied to the binary base."

That's a raw assertion.  _Why_ shouldn't it be?  "Because I keep saying so" isn't changing minds ;-)

I understand you're looking at exact equality of t-tuples.  I wasn't in my example:  I was looking at the individual values, one pair at a time.  The extreme correlation is dead obvious by eyeball either way, despite that the only test you seem to have in mind (exact equality of t-tuples) is blind to it.  Why is that test so important?  Why does it not matter that, e.g., number of inversions, number of runs, distribution of run-lengths (etc) remain highly correlated regardless?

Nobody else has had a problem with this, and it remains unclear why you do:  what's your objection to Mark's suggestions (use different seeds, or _don't_ reset the seed)?  That's the obvious approach:  use the facilities in straightforward ways.

In any case, we can't/won't make changes on a whim.  As far as possible, we strive to keep results bit-for-bit identical across releases for people who save/set seeds, hoping to get reproducible results.  Changing the results from any random module function requires strong justification.

So far, I don't see that here.

----------

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue39867>
_______________________________________


More information about the Python-bugs-list mailing list