<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Sun, Jun 3, 2018 at 11:07 PM Kevin Sheppard <<a href="mailto:kevin.k.sheppard@gmail.com">kevin.k.sheppard@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="#954F72"><div class="m_-8738284531954605974WordSection1"><p class="MsoNormal">The seed() discussion seems unnecessary.  StableRandom will need to have a method to set/get state</p><p class="MsoNormal">which can be used by any project that needs to get reproducible numbers from the module-level generator.</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">While this is an implementation detail, many generators have much smaller states than MT19937 </p><p class="MsoNormal">(a few uint64s). So this is easy enough to hard code where needed.</p></div></div></blockquote><div><br></div><div>The question isn't about what .seed() methods look like on the new generators. Rather, it's about the behavior when code calls numpy.random.seed() then numpy.random.uniform() (or one of the other convenience aliases). Specifically, there will be a period of time when RandomState is merely deprecated but is still expected to be there and be fully backwards-compatible to give reproducible streams. Does that expectation extend to code that uses numpy.random.seed() to get that reproducibility? What happens with code that just calls numpy.random.uniform(): does it use RandomState or the new code?</div><div><br></div><div>These questions are probably in-scope for this NEP, but I'd like to get some kind of consensus on the rest first, as the higher level decisions will tell us more about what we want to do for numpy.random.seed().</div></div><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature">Robert Kern</div></div>