This article is rated C-class on Wikipedia's
content assessment scale. It is of interest to the following WikiProjects: | ||||||||||||||||||||||||||||||||||||||||||||
|
Criterion K1 doesn't state that consecutive number repeats should have low probability, i.e. probability any lower than any other number, rather, if one generates random vectors of numbers, these should be different from one another with high probability. Here's the original text: "There should be a high probability that random vectors (r1,…,rc),(rc+1,…,r2c),…,(rMc+1,…,rM) formed from random numbers r1,r2,… are mutually different." I've tried to correct the K1 summarization to be truer to the source text, yet maintaining the simplicity of the writing. Todd ( talk) 16:53, 6 January 2017 (UTC)
Whoever added:
(Assuming one bit is produced every picosecond, a state of 64 bits would suffice as (1 picosecond)*264= over 142 million years.)
This is mistake. 1 picosecond)*264 = 18,446,744 seconds = 213 days. Well over the lifetime of a fruit fly. This is not a good example either, since generating a random number takes well over 1 picosecond, and supercomputer can generate hundreds of them or even thousands in parallel. I'd vote for removing this paragraph entirely, but I left it to be polite and discuss. I removed error, since it is so extremely misleading to anyone wanting to learn this material, I could not in good conscience leave it.
About Matsumoto's and Nishimura's
Mersenne Twister I can say that it really works almost as Nature's randomness - believe it or not. This algorithm is already fully implemented on
VOG a Russian server for
board games. I've played there quite vast period of time on
Backgammon arena and on
Reversi one. The
C function int rand (int) is not as good as PRNG based on Mersenne twister - that is for sure. Try it and feel it. Nice you've started a PRNG at last. We really needed this one. I was already thinking to do your job. Can you put some Knuth's work on this field too. About the simpliest PRNG and such.
XJam [2002.03.23] 6 Saturday (0)
ww ( talk) 03:35, 5 August 2009 (UTC)
Kotika98 ( talk) 13:33, 26 December 2012 (UTC)
> It has a colossal period of 219937-1 iterations, is proven to be equidistributed in 623 dimensions.
Ostrich can you please explain a liitle bit more what herein dimensions means exactly? Otherwise everything else is explained as clear as can be.
XJam [2002.03.23] 6 Saturday (1st ed)
Statistical patterns in a sequence may appear in many ways. The dimensions noted are ways of examining the sequence for patterns. See Knuth Semi-numerical algorithms for more detail. Please note that this article needs serious revision, particularly with regard to CSPRNGs. It is not easy to build these and statements that 'one could' have one if one does this or that are dangerous. Someone might rely on them and get into considerable (insecure) trouble as a result. Indeed, many PRNGs are built with block cypher encryption algorithms operating in CTR mode. However, the description of CTR mode here is inadequate. Note that CSPRNGs not only must satisfy certain statistical properties, but also must not be predictable which is another kettle of bits altogether.
The
spectral test article and the
RANDU article have an example of what "dimensions" means in this context.
--
DavidCary (
talk) 02:11, 31 December 2014 (UTC)
For some reason my Delphi/Pascal code is not formated correctly with the <pre> tag. Suggestions? - Jim
I see that most of the material in Cryptographically secure pseudorandom number generators is repeated on its own page. Can we remove or summarize it here?
Sander123 13:13, 21 Jul 2004 (UTC)
In the citation to the von Neumann paper, several authors are given, but there is no title. Perhaps an editing glitch ate it? Can anyone suggest what it was before this supposed whale of an editor swallowed up our Jonah of a title? ww 08:52, 26 March 2006 (UTC)
The "random" link in the first paragraph goes to an article about some rap artist, named "Random." Can someone fix?
This page hasn't been written by the world's most gifted writer. E.g.:
"Because any PRNG run on a deterministic computer (contrast quantum computer) is necessarily a deterministic algorithm" "The outputs of pseudorandom number generators only approximate some of the properties of random numbers" "Careful mathematical analysis is required to have any confidence the algorithm generates numbers that are sufficiently "random" to suit the intended use"
The whole article reads like a mathematical text book, not an article from an encyclopedia.
The article claims that, "However, it is possible to efficiently analyze the output of the Mersenne Twister algorithm and to detect that it is non-random (as with the Berlekamp-Massey algorithm or an extension of it, such as the Reed-Sloane algorithm)."
I've actually done the experiment with the Berlkamp-Massey algorithm and the Mersenne Twister. The Mersenne Twister is not linear.
At the risk of being pedantic, let me discuss Berlkamp-Massey. This agorithm will determine the shortest linear feedback shift register that can produce a given bit sequence. This length is the sequence's linear complexity. The algorithm is used to verify that a PRNG isn't linear (in the strict sense of being equivalent to a linear feedback shift register) and to examine its linear complexity profile.
The Mersenne Twister is not equivalent to any linear feedback shift register. The Berlkmap-Massey algorithm doesn't reveal any bias or predicatability in the output of the Mersenne Twister. That does not imply that no bias or predictablity exists. Predictability always exists if the PRNG algorithm and the internal state of the PRNG is known or can be inferred.
I'm very curious about the author's source for the claim quoted above.
I have recently experimented with the Mersenne Twister, in particular by analyzing its output with the Berlkamp-Massey algorithm. My recent changes to this page are motivated by what I discovered. For details, search the sci.crypt.random-numbers newsgroup for Mersenne Twister Linearity. I am still very interested in any actual numerical analysis of the output of this (and other!) generator's output.
Dude, sign your postings, and also read WP policy regarding original research, OR is not allowed in any article on WP. Kotika98 ( talk) 13:41, 26 December 2012 (UTC)
That's a little hard to believe... do we have a source for that? -- Tgr 15:35, 26 October 2006 (UTC)
In Visual Studio 2005, the default rand() produces values in 0..0x7fff. This C program: :int main() { int i,j,k; j=(rand()<<15)|rand(); for (i=0; i<0xffffffff; ++i) { k=((k<<15)|rand())&0x3fffffff; if (j==k) printf("%.8x\n", i); }} reports repeats at 0x18932e78, 0x37c97143, 0x7fffffff, 0x98932e78, 0xb7c97143. So it has a cycle length of 2^^31 values, not 2^^15 values. That implies an internal state of at least 31 bits. (The 0x1e932e78 alone doesn't indicate a cycle, it just happened those two values appeared sequentially again. PRNGs are allowed ... are SUPPOSED ... to do that occasionally.) Though, the original comment might have been referring to some other rand() shipped by Microsoft.
I've removed that line for the time being. A generator with a cycle length of 2^^31 values is still awfully bad in my book, but unfortunately not exceptionally bad. 2^^15 would be exceptionally bad. (I also rearranged the quotes at the top of the page: Jon Von Neumann's "state of sin" quote is about the distinction between random and pseudorandom numbers, not the difficulty of generating adequate pseudorandom numbers.)
This intriguing statement is a little isolated within the article. Could someone elaborate or provide a source or link? GdB 15:29, 3 January 2007 (UTC)
A lot of practical uses of random numbers involves non-uniform distributions; which are often produced via a non-linear function upon a uniform random number generator: e.g. tan(x) for Gaussian pseudo-random. I've started a section.
The section is presumably correct, except that it only indicates one method, which needs determination of a cumulative distribution function. There is at least one other method, usable practically when the range of possible values is finite and the distribution function is (in the range) everywhere finite and not grossly uneven (or when the required distribution can be mapped to that).
Choose a random X in the range, and a random Y within a range from 0 to at least the peak probability. If Y is less than the desired probability of X, then return X; otherwise, try again.
Advantage : works with any distribution in a range, without additional algebra. Disadvantage : needs two randoms per go, and on average more than one go per result.
The above description may contain errors in detail; but it should be good enough to identify the method.
82.163.24.100 ( talk) 12:09, 5 May 2010 (UTC)
How can you have an article about RNG's without discussing Knuth's work on statistical testing and Marsaglia's extensive work on inventing and testing random number generators. It is naive to focus so much attention on the Twister algorithm, which in fact is far too slow and complicated for many numerical applications. There should be some discussion of the extremely efficient multiply-with-carry generators, which pass statistical testing and only emply a few machine instructions. The article needs work. DonPMitchell 04:53, 31 October 2007 (UTC)
Under the BSI evaluation criteria the article mentions "inner state". This should probably be defined somewhere. —Preceding unsigned comment added by ColinGillespie ( talk • contribs) 17:49, 31 January 2009 (UTC)
Tis para was removed from the end of the article because 1) it is out of place in the language interwiki list 2) extensive text in other languages is out of place on enWP 2a) not clear it isn't vandalism of an obscure type. Anyone who clarify any of this should lend a hand.
ww ( talk) 18:22, 4 August 2009 (UTC)
Should we mention somehow results of recent research [1] (research paper: [2])? Maxal ( talk) 21:00, 25 March 2010 (UTC)
This article really confuses the definitions. In general, I'd say it should discuss pseudo-random generators (PRGs). Pseudo-random bit generators (PRBGs) and pseudo-random number generators (PRNGs) should be introduced as sub-classes of PRGs. Don't say a PRNG is a deterministic RBG (or PRBG). Anyway, I would love to see the distinction addressed in a proper reference. Anyone has a good ref?
Next, it may be desirable to point out that in computational complexity theory the definition of PRG equals that of a CSPRG.
Nageh ( talk) 21:50, 20 May 2010 (UTC)
I've removed the example of integer factorization as a "known hard problem". It isn't proven that integer factorization is NP-complete and is currently believed not to be in this class (but rather, in the class of NP-indeterminate problems). See the article on integer factorization.
If anyone can propose a better example, please insert it in the text. Ross Fraser ( talk) 08:35, 4 October 2011 (UTC)
I enjoy the witty quote about the generation of random numbers being too important to be left to chance and think it is one that a very broad spectrum of readers would appreciate. But the von Neumann quote about being in a state of sin will puzzle many (most?) and adds little to the article. It is excruciatingly specific to Catholicism (von Neumann received the last rites and may or may not have converted to Roman Catholicism on his marriage) and many readers simply won't know what he means by state of sin, at least not in relation to mathematics, which is usually thought of as utterly divorced from Christian theology. In any event, it certainly doesn't tell the reader anything about PRNGs. Donald Knuth's "Random numbers should not be generated with a method chosen at random." is at least as good and at least informative to the reader. (Donald Knuth, The Art of Computer Programming, Vol. II, 1969, section 3.1). But really, it's best to just drop it and leave the one good quote from Coveyou. Ross Fraser ( talk) 12:22, 14 November 2011 (UTC)
I don't think the flaw described in strfry(3) has anything to do with its PRNG (it does also suffer from the standard "remainder problem", but that's another usage error). Unless I'm mistaken, the sentence/reference should just be removed. -- Tardis ( talk) 13:14, 9 April 2012 (UTC)
Maybe it's just me, but it seems there are so many symbols to explain so little. Angry bee ( talk) 21:03, 14 June 2013 (UTC)
78.229.106.132 ( talk) 20:01, 11 March 2014 (UTC)"Mersenne twister [...] is proven to be equidistributed ".
Wrong. What is proved in the 1998 Matsumoto's paper, is that it is equidistributed "to v-bits accuracy", not completely equidistributed.
It could not be, anyway. The algorithm generates a finite list of numbers (huge, but finite), say in [a,b]. Therefore there are a lot of (very small) intervals that contain no generated numbers at all. Let [c,d] be such an interval. If you generate n numbers in [a,b], the number k(n) of generated numbers in [c,d] is zero. So the ratio k(n)/n is also zero, and can not tend to (d-c)/(b-a) when n increases.
Of course, in practice, on a computer it does not make any difference, but it may be worth noting that some algorithms (and simpler to code, in fact) generate infinite lists that are equidistributed.
The article currently has this: The PRNG-generated sequence is not truly random, because it is completely determined by a relatively small set of initial values, called the PRNG's seed (which may include truly random values).
Is that correct? For example, a 63-bit LFSR has 263-1 possible seeds. Since that LFSR produces a sequence of 263-1 numbers, the set of initial values is not relatively small. As I understand it, it is not truly random because the sequence is generated algorithmically and is therefore predictable to anyone knowing the algorithm. See http://en.wiktionary.org/wiki/pseudorandom -- 158.158.240.230 ( talk) 16:26, 23 April 2015 (UTC) Aric.
Hello fellow Wikipedians,
I have just modified one external link on Pseudorandom number generator. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
When you have finished reviewing my changes, please set the checked parameter below to true or failed to let others know (documentation at {{
Sourcecheck}}
).
This message was posted before February 2018.
After February 2018, "External links modified" talk page sections are no longer generated or monitored by InternetArchiveBot. No special action is required regarding these talk page notices, other than
regular verification using the archive tool instructions below. Editors
have permission to delete these "External links modified" talk page sections if they want to de-clutter talk pages, but see the
RfC before doing mass systematic removals. This message is updated dynamically through the template {{
source check}}
(last update: 18 January 2022).
Cheers.— cyberbot II Talk to my owner:Online 21:13, 26 May 2016 (UTC)
The statement "The first PRNG to avoid major problems and still run fairly quickly was the Mersenne Twister (discussed below), which was published in 1998. Other high-quality PRNGs have since been developed." is untrue and should be corrected.
High-quality PRNGs existed prior to 1998, including the
ACORN family of generators developed in 1984 and published in 1989 (and sans doute others), and although ignored or possbly misunderstood by the 'mainstream', they are still valid, passing all current test suites as of August 2019, while MT fails on or two in TestU01.
I propose to replace this incorrect statement but other opinions would probably be a very good thing.
Options include
Dear fellow-wikipedians, what are your reactions to my suggestions? jw ( talk) 16:10, 12 August 2019 (UTC)
I have moderated the statement about MT being 'the first' but I'm not yet happy with this ... any reactions ? jw ( talk) 15:40, 27 September 2019 (UTC)
I propose to delete two separate bits of irrelevant material from this page:
1. the 'implementation' paragraph introduced here 6 month ago, giving unreferenced source-code as an example, together with a statement which may or may not be true.
2. an 'external link' to wsphynx which was introduced here two years ago (and on a few other pages from which it was removed without ceremony) - this link brings no added value to the article.
Please react before I make the changes. jw ( talk) 07:33, 11 February 2023 (UTC)
This article is rated C-class on Wikipedia's
content assessment scale. It is of interest to the following WikiProjects: | ||||||||||||||||||||||||||||||||||||||||||||
|
Criterion K1 doesn't state that consecutive number repeats should have low probability, i.e. probability any lower than any other number, rather, if one generates random vectors of numbers, these should be different from one another with high probability. Here's the original text: "There should be a high probability that random vectors (r1,…,rc),(rc+1,…,r2c),…,(rMc+1,…,rM) formed from random numbers r1,r2,… are mutually different." I've tried to correct the K1 summarization to be truer to the source text, yet maintaining the simplicity of the writing. Todd ( talk) 16:53, 6 January 2017 (UTC)
Whoever added:
(Assuming one bit is produced every picosecond, a state of 64 bits would suffice as (1 picosecond)*264= over 142 million years.)
This is mistake. 1 picosecond)*264 = 18,446,744 seconds = 213 days. Well over the lifetime of a fruit fly. This is not a good example either, since generating a random number takes well over 1 picosecond, and supercomputer can generate hundreds of them or even thousands in parallel. I'd vote for removing this paragraph entirely, but I left it to be polite and discuss. I removed error, since it is so extremely misleading to anyone wanting to learn this material, I could not in good conscience leave it.
About Matsumoto's and Nishimura's
Mersenne Twister I can say that it really works almost as Nature's randomness - believe it or not. This algorithm is already fully implemented on
VOG a Russian server for
board games. I've played there quite vast period of time on
Backgammon arena and on
Reversi one. The
C function int rand (int) is not as good as PRNG based on Mersenne twister - that is for sure. Try it and feel it. Nice you've started a PRNG at last. We really needed this one. I was already thinking to do your job. Can you put some Knuth's work on this field too. About the simpliest PRNG and such.
XJam [2002.03.23] 6 Saturday (0)
ww ( talk) 03:35, 5 August 2009 (UTC)
Kotika98 ( talk) 13:33, 26 December 2012 (UTC)
> It has a colossal period of 219937-1 iterations, is proven to be equidistributed in 623 dimensions.
Ostrich can you please explain a liitle bit more what herein dimensions means exactly? Otherwise everything else is explained as clear as can be.
XJam [2002.03.23] 6 Saturday (1st ed)
Statistical patterns in a sequence may appear in many ways. The dimensions noted are ways of examining the sequence for patterns. See Knuth Semi-numerical algorithms for more detail. Please note that this article needs serious revision, particularly with regard to CSPRNGs. It is not easy to build these and statements that 'one could' have one if one does this or that are dangerous. Someone might rely on them and get into considerable (insecure) trouble as a result. Indeed, many PRNGs are built with block cypher encryption algorithms operating in CTR mode. However, the description of CTR mode here is inadequate. Note that CSPRNGs not only must satisfy certain statistical properties, but also must not be predictable which is another kettle of bits altogether.
The
spectral test article and the
RANDU article have an example of what "dimensions" means in this context.
--
DavidCary (
talk) 02:11, 31 December 2014 (UTC)
For some reason my Delphi/Pascal code is not formated correctly with the <pre> tag. Suggestions? - Jim
I see that most of the material in Cryptographically secure pseudorandom number generators is repeated on its own page. Can we remove or summarize it here?
Sander123 13:13, 21 Jul 2004 (UTC)
In the citation to the von Neumann paper, several authors are given, but there is no title. Perhaps an editing glitch ate it? Can anyone suggest what it was before this supposed whale of an editor swallowed up our Jonah of a title? ww 08:52, 26 March 2006 (UTC)
The "random" link in the first paragraph goes to an article about some rap artist, named "Random." Can someone fix?
This page hasn't been written by the world's most gifted writer. E.g.:
"Because any PRNG run on a deterministic computer (contrast quantum computer) is necessarily a deterministic algorithm" "The outputs of pseudorandom number generators only approximate some of the properties of random numbers" "Careful mathematical analysis is required to have any confidence the algorithm generates numbers that are sufficiently "random" to suit the intended use"
The whole article reads like a mathematical text book, not an article from an encyclopedia.
The article claims that, "However, it is possible to efficiently analyze the output of the Mersenne Twister algorithm and to detect that it is non-random (as with the Berlekamp-Massey algorithm or an extension of it, such as the Reed-Sloane algorithm)."
I've actually done the experiment with the Berlkamp-Massey algorithm and the Mersenne Twister. The Mersenne Twister is not linear.
At the risk of being pedantic, let me discuss Berlkamp-Massey. This agorithm will determine the shortest linear feedback shift register that can produce a given bit sequence. This length is the sequence's linear complexity. The algorithm is used to verify that a PRNG isn't linear (in the strict sense of being equivalent to a linear feedback shift register) and to examine its linear complexity profile.
The Mersenne Twister is not equivalent to any linear feedback shift register. The Berlkmap-Massey algorithm doesn't reveal any bias or predicatability in the output of the Mersenne Twister. That does not imply that no bias or predictablity exists. Predictability always exists if the PRNG algorithm and the internal state of the PRNG is known or can be inferred.
I'm very curious about the author's source for the claim quoted above.
I have recently experimented with the Mersenne Twister, in particular by analyzing its output with the Berlkamp-Massey algorithm. My recent changes to this page are motivated by what I discovered. For details, search the sci.crypt.random-numbers newsgroup for Mersenne Twister Linearity. I am still very interested in any actual numerical analysis of the output of this (and other!) generator's output.
Dude, sign your postings, and also read WP policy regarding original research, OR is not allowed in any article on WP. Kotika98 ( talk) 13:41, 26 December 2012 (UTC)
That's a little hard to believe... do we have a source for that? -- Tgr 15:35, 26 October 2006 (UTC)
In Visual Studio 2005, the default rand() produces values in 0..0x7fff. This C program: :int main() { int i,j,k; j=(rand()<<15)|rand(); for (i=0; i<0xffffffff; ++i) { k=((k<<15)|rand())&0x3fffffff; if (j==k) printf("%.8x\n", i); }} reports repeats at 0x18932e78, 0x37c97143, 0x7fffffff, 0x98932e78, 0xb7c97143. So it has a cycle length of 2^^31 values, not 2^^15 values. That implies an internal state of at least 31 bits. (The 0x1e932e78 alone doesn't indicate a cycle, it just happened those two values appeared sequentially again. PRNGs are allowed ... are SUPPOSED ... to do that occasionally.) Though, the original comment might have been referring to some other rand() shipped by Microsoft.
I've removed that line for the time being. A generator with a cycle length of 2^^31 values is still awfully bad in my book, but unfortunately not exceptionally bad. 2^^15 would be exceptionally bad. (I also rearranged the quotes at the top of the page: Jon Von Neumann's "state of sin" quote is about the distinction between random and pseudorandom numbers, not the difficulty of generating adequate pseudorandom numbers.)
This intriguing statement is a little isolated within the article. Could someone elaborate or provide a source or link? GdB 15:29, 3 January 2007 (UTC)
A lot of practical uses of random numbers involves non-uniform distributions; which are often produced via a non-linear function upon a uniform random number generator: e.g. tan(x) for Gaussian pseudo-random. I've started a section.
The section is presumably correct, except that it only indicates one method, which needs determination of a cumulative distribution function. There is at least one other method, usable practically when the range of possible values is finite and the distribution function is (in the range) everywhere finite and not grossly uneven (or when the required distribution can be mapped to that).
Choose a random X in the range, and a random Y within a range from 0 to at least the peak probability. If Y is less than the desired probability of X, then return X; otherwise, try again.
Advantage : works with any distribution in a range, without additional algebra. Disadvantage : needs two randoms per go, and on average more than one go per result.
The above description may contain errors in detail; but it should be good enough to identify the method.
82.163.24.100 ( talk) 12:09, 5 May 2010 (UTC)
How can you have an article about RNG's without discussing Knuth's work on statistical testing and Marsaglia's extensive work on inventing and testing random number generators. It is naive to focus so much attention on the Twister algorithm, which in fact is far too slow and complicated for many numerical applications. There should be some discussion of the extremely efficient multiply-with-carry generators, which pass statistical testing and only emply a few machine instructions. The article needs work. DonPMitchell 04:53, 31 October 2007 (UTC)
Under the BSI evaluation criteria the article mentions "inner state". This should probably be defined somewhere. —Preceding unsigned comment added by ColinGillespie ( talk • contribs) 17:49, 31 January 2009 (UTC)
Tis para was removed from the end of the article because 1) it is out of place in the language interwiki list 2) extensive text in other languages is out of place on enWP 2a) not clear it isn't vandalism of an obscure type. Anyone who clarify any of this should lend a hand.
ww ( talk) 18:22, 4 August 2009 (UTC)
Should we mention somehow results of recent research [1] (research paper: [2])? Maxal ( talk) 21:00, 25 March 2010 (UTC)
This article really confuses the definitions. In general, I'd say it should discuss pseudo-random generators (PRGs). Pseudo-random bit generators (PRBGs) and pseudo-random number generators (PRNGs) should be introduced as sub-classes of PRGs. Don't say a PRNG is a deterministic RBG (or PRBG). Anyway, I would love to see the distinction addressed in a proper reference. Anyone has a good ref?
Next, it may be desirable to point out that in computational complexity theory the definition of PRG equals that of a CSPRG.
Nageh ( talk) 21:50, 20 May 2010 (UTC)
I've removed the example of integer factorization as a "known hard problem". It isn't proven that integer factorization is NP-complete and is currently believed not to be in this class (but rather, in the class of NP-indeterminate problems). See the article on integer factorization.
If anyone can propose a better example, please insert it in the text. Ross Fraser ( talk) 08:35, 4 October 2011 (UTC)
I enjoy the witty quote about the generation of random numbers being too important to be left to chance and think it is one that a very broad spectrum of readers would appreciate. But the von Neumann quote about being in a state of sin will puzzle many (most?) and adds little to the article. It is excruciatingly specific to Catholicism (von Neumann received the last rites and may or may not have converted to Roman Catholicism on his marriage) and many readers simply won't know what he means by state of sin, at least not in relation to mathematics, which is usually thought of as utterly divorced from Christian theology. In any event, it certainly doesn't tell the reader anything about PRNGs. Donald Knuth's "Random numbers should not be generated with a method chosen at random." is at least as good and at least informative to the reader. (Donald Knuth, The Art of Computer Programming, Vol. II, 1969, section 3.1). But really, it's best to just drop it and leave the one good quote from Coveyou. Ross Fraser ( talk) 12:22, 14 November 2011 (UTC)
I don't think the flaw described in strfry(3) has anything to do with its PRNG (it does also suffer from the standard "remainder problem", but that's another usage error). Unless I'm mistaken, the sentence/reference should just be removed. -- Tardis ( talk) 13:14, 9 April 2012 (UTC)
Maybe it's just me, but it seems there are so many symbols to explain so little. Angry bee ( talk) 21:03, 14 June 2013 (UTC)
78.229.106.132 ( talk) 20:01, 11 March 2014 (UTC)"Mersenne twister [...] is proven to be equidistributed ".
Wrong. What is proved in the 1998 Matsumoto's paper, is that it is equidistributed "to v-bits accuracy", not completely equidistributed.
It could not be, anyway. The algorithm generates a finite list of numbers (huge, but finite), say in [a,b]. Therefore there are a lot of (very small) intervals that contain no generated numbers at all. Let [c,d] be such an interval. If you generate n numbers in [a,b], the number k(n) of generated numbers in [c,d] is zero. So the ratio k(n)/n is also zero, and can not tend to (d-c)/(b-a) when n increases.
Of course, in practice, on a computer it does not make any difference, but it may be worth noting that some algorithms (and simpler to code, in fact) generate infinite lists that are equidistributed.
The article currently has this: The PRNG-generated sequence is not truly random, because it is completely determined by a relatively small set of initial values, called the PRNG's seed (which may include truly random values).
Is that correct? For example, a 63-bit LFSR has 263-1 possible seeds. Since that LFSR produces a sequence of 263-1 numbers, the set of initial values is not relatively small. As I understand it, it is not truly random because the sequence is generated algorithmically and is therefore predictable to anyone knowing the algorithm. See http://en.wiktionary.org/wiki/pseudorandom -- 158.158.240.230 ( talk) 16:26, 23 April 2015 (UTC) Aric.
Hello fellow Wikipedians,
I have just modified one external link on Pseudorandom number generator. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
When you have finished reviewing my changes, please set the checked parameter below to true or failed to let others know (documentation at {{
Sourcecheck}}
).
This message was posted before February 2018.
After February 2018, "External links modified" talk page sections are no longer generated or monitored by InternetArchiveBot. No special action is required regarding these talk page notices, other than
regular verification using the archive tool instructions below. Editors
have permission to delete these "External links modified" talk page sections if they want to de-clutter talk pages, but see the
RfC before doing mass systematic removals. This message is updated dynamically through the template {{
source check}}
(last update: 18 January 2022).
Cheers.— cyberbot II Talk to my owner:Online 21:13, 26 May 2016 (UTC)
The statement "The first PRNG to avoid major problems and still run fairly quickly was the Mersenne Twister (discussed below), which was published in 1998. Other high-quality PRNGs have since been developed." is untrue and should be corrected.
High-quality PRNGs existed prior to 1998, including the
ACORN family of generators developed in 1984 and published in 1989 (and sans doute others), and although ignored or possbly misunderstood by the 'mainstream', they are still valid, passing all current test suites as of August 2019, while MT fails on or two in TestU01.
I propose to replace this incorrect statement but other opinions would probably be a very good thing.
Options include
Dear fellow-wikipedians, what are your reactions to my suggestions? jw ( talk) 16:10, 12 August 2019 (UTC)
I have moderated the statement about MT being 'the first' but I'm not yet happy with this ... any reactions ? jw ( talk) 15:40, 27 September 2019 (UTC)
I propose to delete two separate bits of irrelevant material from this page:
1. the 'implementation' paragraph introduced here 6 month ago, giving unreferenced source-code as an example, together with a statement which may or may not be true.
2. an 'external link' to wsphynx which was introduced here two years ago (and on a few other pages from which it was removed without ceremony) - this link brings no added value to the article.
Please react before I make the changes. jw ( talk) 07:33, 11 February 2023 (UTC)