4 ms·
So I think the most up-voted response does a great job of explaining the "why it matters" part of the question, but he never really touched on the "whats the di
by mox1 13y ago
So I think the most up-voted response does a great job of explaining the "why it matters" part of the question, but he never really touched on the "whats the difference"... IE the fact the pseudo-random basically means generating statistically random data, using a deterministic process.
- sliverstorm 13y agoThat's really interesting, in that case I've understood it wrong all this time! So you are saying pseudo-random really is honest-to-god random, following all the accepted rules for random distributions and such, with the critical difference simply being that the output of the pseudo-random function can be predicted if you understand the generating process?
- davidst 13y agoThat's a good way to think about it. A quality PRNG tells an undetectable lie.
- mox1 13y agoAs I understand it, yes your basically correct. Imagine a function like this: def init_prng(int x): state = x def prng(): state = md5(state) return state So while this is a good, simple PRNG its very recoverable if you know the initial x (or if the space of possible x values is small, ie a 32-bit number). One of the goals of a PRNG function is to extend the usefulness of truly random data, because fully random data is hard to come by.