Can we generate random numbers using irrational numbers like π and e?
$begingroup$
Irrational numbers like $pi$, $e$ and $sqrt{2}$ have a unique and non-repeating sequence after the decimal point. If we extract the $n$-th digit from such numbers (where $n$ is the number of times the method is called) and make a number with the digits as it is, should we not get a perfect random number generator? For example, if we're using $sqrt{2}$, $e$ and $pi$, the first number is 123, second one is 471, the next one is 184 and so on.
randomized-algorithms randomness random-number-generator
New contributor
$endgroup$
|
show 4 more comments
$begingroup$
Irrational numbers like $pi$, $e$ and $sqrt{2}$ have a unique and non-repeating sequence after the decimal point. If we extract the $n$-th digit from such numbers (where $n$ is the number of times the method is called) and make a number with the digits as it is, should we not get a perfect random number generator? For example, if we're using $sqrt{2}$, $e$ and $pi$, the first number is 123, second one is 471, the next one is 184 and so on.
randomized-algorithms randomness random-number-generator
New contributor
$endgroup$
18
$begingroup$
You have a strange definition of "random" in your head. "Random" means "unpredictable". How is your sequence unpredictable? What definition of "random" do you have in mind? Perhaps what you are calling "random" has another name.
$endgroup$
– Eric Lippert
yesterday
4
$begingroup$
Note the spigot algorithm can be used to generate any hex digit in pi, without having to generate prior digits.
$endgroup$
– rcgldr
yesterday
3
$begingroup$
@EricLippert Aren't all pseudorandom number generators predictable?
$endgroup$
– Federico Poloni
19 hours ago
1
$begingroup$
The term has come up a few times: this is a "psuedo random number" not a "random number." It's a number generated algorithmically (so not random), but which has many desirable properties that random numbers have. Another algorithm is the "NYC phonebook" algorithm, where you go down the list of phone numbers, alphabetically, and take the last digit from each of them. Not random, but pseudorandom with some rather nice statistical behaviors!
$endgroup$
– Cort Ammon
19 hours ago
1
$begingroup$
"Pseudo" means "similar to but not". So pseudo random numbers are similar to, but not random numbers. So I'm not following your train of thought here. Now, crypto-strength PRNGs have the desirable property that if the internal state is unknown to the attacker, no statistical test we possess can distinguish a crypto PRNG from a true RNG, and that includes their lack of predictability. But the digits of pi do not have that property; they are highly predictable.
$endgroup$
– Eric Lippert
13 hours ago
|
show 4 more comments
$begingroup$
Irrational numbers like $pi$, $e$ and $sqrt{2}$ have a unique and non-repeating sequence after the decimal point. If we extract the $n$-th digit from such numbers (where $n$ is the number of times the method is called) and make a number with the digits as it is, should we not get a perfect random number generator? For example, if we're using $sqrt{2}$, $e$ and $pi$, the first number is 123, second one is 471, the next one is 184 and so on.
randomized-algorithms randomness random-number-generator
New contributor
$endgroup$
Irrational numbers like $pi$, $e$ and $sqrt{2}$ have a unique and non-repeating sequence after the decimal point. If we extract the $n$-th digit from such numbers (where $n$ is the number of times the method is called) and make a number with the digits as it is, should we not get a perfect random number generator? For example, if we're using $sqrt{2}$, $e$ and $pi$, the first number is 123, second one is 471, the next one is 184 and so on.
randomized-algorithms randomness random-number-generator
randomized-algorithms randomness random-number-generator
New contributor
New contributor
edited yesterday
dkaeae
2,3621922
2,3621922
New contributor
asked yesterday
Abhradeep SarkarAbhradeep Sarkar
5716
5716
New contributor
New contributor
18
$begingroup$
You have a strange definition of "random" in your head. "Random" means "unpredictable". How is your sequence unpredictable? What definition of "random" do you have in mind? Perhaps what you are calling "random" has another name.
$endgroup$
– Eric Lippert
yesterday
4
$begingroup$
Note the spigot algorithm can be used to generate any hex digit in pi, without having to generate prior digits.
$endgroup$
– rcgldr
yesterday
3
$begingroup$
@EricLippert Aren't all pseudorandom number generators predictable?
$endgroup$
– Federico Poloni
19 hours ago
1
$begingroup$
The term has come up a few times: this is a "psuedo random number" not a "random number." It's a number generated algorithmically (so not random), but which has many desirable properties that random numbers have. Another algorithm is the "NYC phonebook" algorithm, where you go down the list of phone numbers, alphabetically, and take the last digit from each of them. Not random, but pseudorandom with some rather nice statistical behaviors!
$endgroup$
– Cort Ammon
19 hours ago
1
$begingroup$
"Pseudo" means "similar to but not". So pseudo random numbers are similar to, but not random numbers. So I'm not following your train of thought here. Now, crypto-strength PRNGs have the desirable property that if the internal state is unknown to the attacker, no statistical test we possess can distinguish a crypto PRNG from a true RNG, and that includes their lack of predictability. But the digits of pi do not have that property; they are highly predictable.
$endgroup$
– Eric Lippert
13 hours ago
|
show 4 more comments
18
$begingroup$
You have a strange definition of "random" in your head. "Random" means "unpredictable". How is your sequence unpredictable? What definition of "random" do you have in mind? Perhaps what you are calling "random" has another name.
$endgroup$
– Eric Lippert
yesterday
4
$begingroup$
Note the spigot algorithm can be used to generate any hex digit in pi, without having to generate prior digits.
$endgroup$
– rcgldr
yesterday
3
$begingroup$
@EricLippert Aren't all pseudorandom number generators predictable?
$endgroup$
– Federico Poloni
19 hours ago
1
$begingroup$
The term has come up a few times: this is a "psuedo random number" not a "random number." It's a number generated algorithmically (so not random), but which has many desirable properties that random numbers have. Another algorithm is the "NYC phonebook" algorithm, where you go down the list of phone numbers, alphabetically, and take the last digit from each of them. Not random, but pseudorandom with some rather nice statistical behaviors!
$endgroup$
– Cort Ammon
19 hours ago
1
$begingroup$
"Pseudo" means "similar to but not". So pseudo random numbers are similar to, but not random numbers. So I'm not following your train of thought here. Now, crypto-strength PRNGs have the desirable property that if the internal state is unknown to the attacker, no statistical test we possess can distinguish a crypto PRNG from a true RNG, and that includes their lack of predictability. But the digits of pi do not have that property; they are highly predictable.
$endgroup$
– Eric Lippert
13 hours ago
18
18
$begingroup$
You have a strange definition of "random" in your head. "Random" means "unpredictable". How is your sequence unpredictable? What definition of "random" do you have in mind? Perhaps what you are calling "random" has another name.
$endgroup$
– Eric Lippert
yesterday
$begingroup$
You have a strange definition of "random" in your head. "Random" means "unpredictable". How is your sequence unpredictable? What definition of "random" do you have in mind? Perhaps what you are calling "random" has another name.
$endgroup$
– Eric Lippert
yesterday
4
4
$begingroup$
Note the spigot algorithm can be used to generate any hex digit in pi, without having to generate prior digits.
$endgroup$
– rcgldr
yesterday
$begingroup$
Note the spigot algorithm can be used to generate any hex digit in pi, without having to generate prior digits.
$endgroup$
– rcgldr
yesterday
3
3
$begingroup$
@EricLippert Aren't all pseudorandom number generators predictable?
$endgroup$
– Federico Poloni
19 hours ago
$begingroup$
@EricLippert Aren't all pseudorandom number generators predictable?
$endgroup$
– Federico Poloni
19 hours ago
1
1
$begingroup$
The term has come up a few times: this is a "psuedo random number" not a "random number." It's a number generated algorithmically (so not random), but which has many desirable properties that random numbers have. Another algorithm is the "NYC phonebook" algorithm, where you go down the list of phone numbers, alphabetically, and take the last digit from each of them. Not random, but pseudorandom with some rather nice statistical behaviors!
$endgroup$
– Cort Ammon
19 hours ago
$begingroup$
The term has come up a few times: this is a "psuedo random number" not a "random number." It's a number generated algorithmically (so not random), but which has many desirable properties that random numbers have. Another algorithm is the "NYC phonebook" algorithm, where you go down the list of phone numbers, alphabetically, and take the last digit from each of them. Not random, but pseudorandom with some rather nice statistical behaviors!
$endgroup$
– Cort Ammon
19 hours ago
1
1
$begingroup$
"Pseudo" means "similar to but not". So pseudo random numbers are similar to, but not random numbers. So I'm not following your train of thought here. Now, crypto-strength PRNGs have the desirable property that if the internal state is unknown to the attacker, no statistical test we possess can distinguish a crypto PRNG from a true RNG, and that includes their lack of predictability. But the digits of pi do not have that property; they are highly predictable.
$endgroup$
– Eric Lippert
13 hours ago
$begingroup$
"Pseudo" means "similar to but not". So pseudo random numbers are similar to, but not random numbers. So I'm not following your train of thought here. Now, crypto-strength PRNGs have the desirable property that if the internal state is unknown to the attacker, no statistical test we possess can distinguish a crypto PRNG from a true RNG, and that includes their lack of predictability. But the digits of pi do not have that property; they are highly predictable.
$endgroup$
– Eric Lippert
13 hours ago
|
show 4 more comments
7 Answers
7
active
oldest
votes
$begingroup$
For any reasonable definition of perfect, the mechanism you describe is not a perfect random number generator.
Non-repeating isn't enough. The decimal number $0.101001000100001dots$ is non-repeating but it's a terrible generator of random digits, since the answer is "always" zero, occasionally one, and never anything else.
We don't actually know if every digit occurs equally often in the decimal expansion of $pi$ or $mathrm{e}$ (though we suspect they do).
In many situations, we require random numbers to be unpredictable (indeed, if you asked a random person what "random" means, they'd probably say something about unpredictability). The digits of well-known constants are totally predictable.
We usually want to generate random numbers reasonably quickly, but generating successive digits of mathematical constants tends to be quite expensive.
It is, however, true that the digits of $pi$ and $mathrm{e}$ look statistically random, in the sense that every possible sequence of digits seems to occur about as often as it should. So, for example, each digit does occur very close to one time in ten; each two-digit sequence very close to one in a hundred, and so on.
$endgroup$
7
$begingroup$
For the third point, there must be some sort of 'secret' input to your generation process for it to be unpredictable (the generation process itself should be deterministic if we don't want to rely on yet another random number generator.). This extra input is often called a seed.
$endgroup$
– Discrete lizard♦
yesterday
2
$begingroup$
@Discretelizard This is true but there's not much scope for seeding beyond "return successive digits starting with position $s$." By the time you've seen $2log s$ digits, that sequence occurs only a few times within the first $s^2$ digits of $pi$, so it's unique within the first $s$ digits with high probability and you know the seed.
$endgroup$
– David Richerby
yesterday
1
$begingroup$
@Barmar: At that point you have to ask whether this technique is really more performant (and more space-efficient) than a "standard" PRNG would be.
$endgroup$
– Kevin
yesterday
1
$begingroup$
The digits of pi or e are completely unpredictable, especially since the viewer / recipient / code breaker etc has no idea how far along in the sequence you already are. If you start at digit number 237423 of the sequence, it will take so long to figure out, as to be random.
$endgroup$
– DaveBoltman
20 hours ago
6
$begingroup$
@DaveBoltman If we're not doing something like cryptography, nobody's going to care enough to bother figuring it out. If we are doing cryptography, it's a standard assumption that your adversary knows what algorithm you're using which, in this case, includes what irrational number the sequence is coming from and how you're choosing the digits, except for any parameter such as "start at digit $s$". If the adversary doesn't know what number you're using then, sure, the next digit could be literally anything, but then they guess it's $sqrt{text{my birthday}}$ and the game's up.
$endgroup$
– David Richerby
17 hours ago
|
show 10 more comments
$begingroup$
It is cryptographically useless because an adversary can predict every single digit. It is also very time consuming.
$endgroup$
8
$begingroup$
OP never mentions cryptography...
$endgroup$
– AnoE
yesterday
9
$begingroup$
@AnoE So? That this process would be cryptographically useless is still relevant because crypto is an avid user of randomness. If you bring up the devices/dev/random
and/dev/urandom
someone will invariably bring up cryptography.
$endgroup$
– Greg Schmit
yesterday
3
$begingroup$
You would be amazed at how useless cryptographic security is in real time PRNG generation. irrational numbers are often used in GPU PRNGs. There are a lot of applications where how "secure" your PRNG is simply irrelevant. What matters in something like coherent noise generation is the quality of distribution and how often your period repeats, and correlation effects due to adjacent seeds (which would require avalanche mixers to fix). Quite honestly your answer is wrong, doesn't belong here, and should probably be deleted.
$endgroup$
– opa
yesterday
3
$begingroup$
This is anot an answer to the question. Note the OP of the linked question uses random numbers for seeding a monte carlo analysis. An update to address the question asked should be considered. mathoverflow.net/questions/26942/…
$endgroup$
– CramerTV
yesterday
6
$begingroup$
Certainly there are many applications where PRNGs don't need to be cryptographically secure. But OP didn't ask if it was useful for some purposes, they asked if this method was a "perfect RNG". While they haven't clarified what they mean by "perfect", the fact that it's unsuitable for one of the major uses of RNGs seems very relevant to answering that question.
$endgroup$
– Geoffrey Brent
yesterday
|
show 5 more comments
$begingroup$
Duplicate, but nice question. It was already answered https://math.stackexchange.com/questions/51829/distribution-of-the-digits-of-pi:
...it is believed that $pi$ is a normal number (~uniform distribution of every digits sequence).
For digit distribution data, see e.g. http://www.eveandersson.com/pi/precalculated-frequencies or https://thestarman.pcministry.com/math/pi/RandPI.html (first 1000 digits):
At mathoverflow, there are also nice answers at:
- What is the state of our ignorance about the normality of pi?
- Does pi contain 1000 consecutive zeroes?
$endgroup$
1
$begingroup$
If you believe the question is a duplicate, then why are you answering it? You should simply flag it, not reinforce undesired posting behavior.
$endgroup$
– dkaeae
yesterday
5
$begingroup$
@dkaeae There is no support for duplicates of questions on other sites. Furthermore, the same question on different sites can get different answers. In this case, a site such as Mathematics might not give much consideration to security concerns. See also this answer. Do note that we discourage asking the same question on multiple sites at the same time, since this tends to lead to wasted efforts. But the same question by different persons at different times on different sites is usually ok.
$endgroup$
– Discrete lizard♦
yesterday
4
$begingroup$
Unfortunately, just because a number is normal doesn't mean that outputting its digits gives you a good RNG. The outputs of such a RNG are still entirely predictable. Whether that's acceptable might depend on the application. So, I don't think it's quite as simple as saying "pi is normal, case closed".
$endgroup$
– D.W.♦
yesterday
1
$begingroup$
That is just emperical observation for first few digits? What is to be meant by that?
$endgroup$
– marshal craft
19 hours ago
$begingroup$
@D.W. I mentioned that I intend to use a combination of numbers like π and e. And please say how the output will be predictable if we do not know how far down the sequence the generator has gone?
$endgroup$
– Abhradeep Sarkar
17 hours ago
|
show 1 more comment
$begingroup$
The most obvious disadvantage is the unnecessary complexity of PRNG algorithms based on irrational numbers. They require much more computations per generated digit than, say, an LCG; and this complexity typically grows as you go further in the sequence. Calculating 256 bits of π at the two-quadrillionth bit took 23 days on 1000 computers (back in 2010) - a rather prohibitive complexity for an RNG.
$endgroup$
add a comment |
$begingroup$
In general, this approach does not work: "randomness" does not mean that you get a lot of different digits, but there are other aspects as well. For example, a classic test is to see if all two-digit, or three-digit etc. combinations occur with the same frequency. This would be a very simple test, which can rule out obvious non-random results, but is still by far too simplistic to check for really random behaviour.
See the Wikipedia page about Randomness Tests as a collection of links to primary sources regarding this. They do mention a good amount of quite complicated-sounding concepts; it is it not so important to go into deep detail about this - but it is clear that it is not intuitively possible to declare a specific number to be a good source for such digits.
On a positive note: For a specific irrational number, you are of course free to just try it; i.e., calculate the number to a sufficiantly large degree of digits, and run it through all known tests (there are tools for that, see above link). If the measure is good enough for your use case, and if you are aware that this is obviously useless for cryptographical applications, and always get the same numbers if you should start over, and that the quality might degrade if you get past the n
you picked for testing the randomness, you could use those numbers. But it will be far better to use a dedicated (pseudo-)random number generator; and nothing beats a good physical source of randomness.
$endgroup$
3
$begingroup$
OK but $pi$ and $mathrm{e}$ have the property that all the 2, 3, 4, ... digit sequences do empirically turn up with the right frequency. Nobody's managed to prove it but it seem to be true.
$endgroup$
– David Richerby
yesterday
1
$begingroup$
Ayrat's answer links to other sites where mathematicians have done these tests. They believe, but haven't proved, that π meets the statistical tests.
$endgroup$
– Barmar
yesterday
add a comment |
$begingroup$
It provides a good random number right until you realize how it was produced, as with many pseudo random number. The irrational (non algebraic and non transcendental) numbers you have chosen are common and so easier guessed then others. I can see no issue with this method provided you choose less commonly seen generators.
New contributor
$endgroup$
1
$begingroup$
No issue except the gross inefficiency, the fact that you're relying on any adversary not knowing what your algorithm is, the fact that a bad choice of generator could lead to very poor sequence, ...
$endgroup$
– David Richerby
16 hours ago
2
$begingroup$
By the way, of the numbers suggested in the question, $sqrt{2}$ is algebraic and $pi$ and $mathrm{e}$ are transcendental.
$endgroup$
– David Richerby
16 hours ago
add a comment |
$begingroup$
There has been similar methods for generating random numbers in the past. See random number book. Random numbers in a book are obviously predictable, but the number distribution is probably more random than π and e.
New contributor
$endgroup$
$begingroup$
It may be more random than π and e individually, but what about a number of irrational numbers combined?
$endgroup$
– Abhradeep Sarkar
16 hours ago
2
$begingroup$
I'm not seeing how this answers the question -- it looks more like an attempt to respond to another answer. The question asked if we can generate random numbers from numbers like pi; I don't see a direct answer to that question. Please edit your answer to make sure to provide a full answer to the question that was asked at the top. Our site works differently from others you might be used to -- we have strict quality standards, and the 'Your Answer' box should only be used for material that answers the question (not responses to other answers or other remarks).
$endgroup$
– D.W.♦
10 hours ago
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
});
});
}, "mathjax-editing");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "419"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Abhradeep Sarkar is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcs.stackexchange.com%2fquestions%2f106774%2fcan-we-generate-random-numbers-using-irrational-numbers-like-%25cf%2580-and-e%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
7 Answers
7
active
oldest
votes
7 Answers
7
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
For any reasonable definition of perfect, the mechanism you describe is not a perfect random number generator.
Non-repeating isn't enough. The decimal number $0.101001000100001dots$ is non-repeating but it's a terrible generator of random digits, since the answer is "always" zero, occasionally one, and never anything else.
We don't actually know if every digit occurs equally often in the decimal expansion of $pi$ or $mathrm{e}$ (though we suspect they do).
In many situations, we require random numbers to be unpredictable (indeed, if you asked a random person what "random" means, they'd probably say something about unpredictability). The digits of well-known constants are totally predictable.
We usually want to generate random numbers reasonably quickly, but generating successive digits of mathematical constants tends to be quite expensive.
It is, however, true that the digits of $pi$ and $mathrm{e}$ look statistically random, in the sense that every possible sequence of digits seems to occur about as often as it should. So, for example, each digit does occur very close to one time in ten; each two-digit sequence very close to one in a hundred, and so on.
$endgroup$
7
$begingroup$
For the third point, there must be some sort of 'secret' input to your generation process for it to be unpredictable (the generation process itself should be deterministic if we don't want to rely on yet another random number generator.). This extra input is often called a seed.
$endgroup$
– Discrete lizard♦
yesterday
2
$begingroup$
@Discretelizard This is true but there's not much scope for seeding beyond "return successive digits starting with position $s$." By the time you've seen $2log s$ digits, that sequence occurs only a few times within the first $s^2$ digits of $pi$, so it's unique within the first $s$ digits with high probability and you know the seed.
$endgroup$
– David Richerby
yesterday
1
$begingroup$
@Barmar: At that point you have to ask whether this technique is really more performant (and more space-efficient) than a "standard" PRNG would be.
$endgroup$
– Kevin
yesterday
1
$begingroup$
The digits of pi or e are completely unpredictable, especially since the viewer / recipient / code breaker etc has no idea how far along in the sequence you already are. If you start at digit number 237423 of the sequence, it will take so long to figure out, as to be random.
$endgroup$
– DaveBoltman
20 hours ago
6
$begingroup$
@DaveBoltman If we're not doing something like cryptography, nobody's going to care enough to bother figuring it out. If we are doing cryptography, it's a standard assumption that your adversary knows what algorithm you're using which, in this case, includes what irrational number the sequence is coming from and how you're choosing the digits, except for any parameter such as "start at digit $s$". If the adversary doesn't know what number you're using then, sure, the next digit could be literally anything, but then they guess it's $sqrt{text{my birthday}}$ and the game's up.
$endgroup$
– David Richerby
17 hours ago
|
show 10 more comments
$begingroup$
For any reasonable definition of perfect, the mechanism you describe is not a perfect random number generator.
Non-repeating isn't enough. The decimal number $0.101001000100001dots$ is non-repeating but it's a terrible generator of random digits, since the answer is "always" zero, occasionally one, and never anything else.
We don't actually know if every digit occurs equally often in the decimal expansion of $pi$ or $mathrm{e}$ (though we suspect they do).
In many situations, we require random numbers to be unpredictable (indeed, if you asked a random person what "random" means, they'd probably say something about unpredictability). The digits of well-known constants are totally predictable.
We usually want to generate random numbers reasonably quickly, but generating successive digits of mathematical constants tends to be quite expensive.
It is, however, true that the digits of $pi$ and $mathrm{e}$ look statistically random, in the sense that every possible sequence of digits seems to occur about as often as it should. So, for example, each digit does occur very close to one time in ten; each two-digit sequence very close to one in a hundred, and so on.
$endgroup$
7
$begingroup$
For the third point, there must be some sort of 'secret' input to your generation process for it to be unpredictable (the generation process itself should be deterministic if we don't want to rely on yet another random number generator.). This extra input is often called a seed.
$endgroup$
– Discrete lizard♦
yesterday
2
$begingroup$
@Discretelizard This is true but there's not much scope for seeding beyond "return successive digits starting with position $s$." By the time you've seen $2log s$ digits, that sequence occurs only a few times within the first $s^2$ digits of $pi$, so it's unique within the first $s$ digits with high probability and you know the seed.
$endgroup$
– David Richerby
yesterday
1
$begingroup$
@Barmar: At that point you have to ask whether this technique is really more performant (and more space-efficient) than a "standard" PRNG would be.
$endgroup$
– Kevin
yesterday
1
$begingroup$
The digits of pi or e are completely unpredictable, especially since the viewer / recipient / code breaker etc has no idea how far along in the sequence you already are. If you start at digit number 237423 of the sequence, it will take so long to figure out, as to be random.
$endgroup$
– DaveBoltman
20 hours ago
6
$begingroup$
@DaveBoltman If we're not doing something like cryptography, nobody's going to care enough to bother figuring it out. If we are doing cryptography, it's a standard assumption that your adversary knows what algorithm you're using which, in this case, includes what irrational number the sequence is coming from and how you're choosing the digits, except for any parameter such as "start at digit $s$". If the adversary doesn't know what number you're using then, sure, the next digit could be literally anything, but then they guess it's $sqrt{text{my birthday}}$ and the game's up.
$endgroup$
– David Richerby
17 hours ago
|
show 10 more comments
$begingroup$
For any reasonable definition of perfect, the mechanism you describe is not a perfect random number generator.
Non-repeating isn't enough. The decimal number $0.101001000100001dots$ is non-repeating but it's a terrible generator of random digits, since the answer is "always" zero, occasionally one, and never anything else.
We don't actually know if every digit occurs equally often in the decimal expansion of $pi$ or $mathrm{e}$ (though we suspect they do).
In many situations, we require random numbers to be unpredictable (indeed, if you asked a random person what "random" means, they'd probably say something about unpredictability). The digits of well-known constants are totally predictable.
We usually want to generate random numbers reasonably quickly, but generating successive digits of mathematical constants tends to be quite expensive.
It is, however, true that the digits of $pi$ and $mathrm{e}$ look statistically random, in the sense that every possible sequence of digits seems to occur about as often as it should. So, for example, each digit does occur very close to one time in ten; each two-digit sequence very close to one in a hundred, and so on.
$endgroup$
For any reasonable definition of perfect, the mechanism you describe is not a perfect random number generator.
Non-repeating isn't enough. The decimal number $0.101001000100001dots$ is non-repeating but it's a terrible generator of random digits, since the answer is "always" zero, occasionally one, and never anything else.
We don't actually know if every digit occurs equally often in the decimal expansion of $pi$ or $mathrm{e}$ (though we suspect they do).
In many situations, we require random numbers to be unpredictable (indeed, if you asked a random person what "random" means, they'd probably say something about unpredictability). The digits of well-known constants are totally predictable.
We usually want to generate random numbers reasonably quickly, but generating successive digits of mathematical constants tends to be quite expensive.
It is, however, true that the digits of $pi$ and $mathrm{e}$ look statistically random, in the sense that every possible sequence of digits seems to occur about as often as it should. So, for example, each digit does occur very close to one time in ten; each two-digit sequence very close to one in a hundred, and so on.
edited 17 hours ago
answered yesterday
David RicherbyDavid Richerby
70.2k15107196
70.2k15107196
7
$begingroup$
For the third point, there must be some sort of 'secret' input to your generation process for it to be unpredictable (the generation process itself should be deterministic if we don't want to rely on yet another random number generator.). This extra input is often called a seed.
$endgroup$
– Discrete lizard♦
yesterday
2
$begingroup$
@Discretelizard This is true but there's not much scope for seeding beyond "return successive digits starting with position $s$." By the time you've seen $2log s$ digits, that sequence occurs only a few times within the first $s^2$ digits of $pi$, so it's unique within the first $s$ digits with high probability and you know the seed.
$endgroup$
– David Richerby
yesterday
1
$begingroup$
@Barmar: At that point you have to ask whether this technique is really more performant (and more space-efficient) than a "standard" PRNG would be.
$endgroup$
– Kevin
yesterday
1
$begingroup$
The digits of pi or e are completely unpredictable, especially since the viewer / recipient / code breaker etc has no idea how far along in the sequence you already are. If you start at digit number 237423 of the sequence, it will take so long to figure out, as to be random.
$endgroup$
– DaveBoltman
20 hours ago
6
$begingroup$
@DaveBoltman If we're not doing something like cryptography, nobody's going to care enough to bother figuring it out. If we are doing cryptography, it's a standard assumption that your adversary knows what algorithm you're using which, in this case, includes what irrational number the sequence is coming from and how you're choosing the digits, except for any parameter such as "start at digit $s$". If the adversary doesn't know what number you're using then, sure, the next digit could be literally anything, but then they guess it's $sqrt{text{my birthday}}$ and the game's up.
$endgroup$
– David Richerby
17 hours ago
|
show 10 more comments
7
$begingroup$
For the third point, there must be some sort of 'secret' input to your generation process for it to be unpredictable (the generation process itself should be deterministic if we don't want to rely on yet another random number generator.). This extra input is often called a seed.
$endgroup$
– Discrete lizard♦
yesterday
2
$begingroup$
@Discretelizard This is true but there's not much scope for seeding beyond "return successive digits starting with position $s$." By the time you've seen $2log s$ digits, that sequence occurs only a few times within the first $s^2$ digits of $pi$, so it's unique within the first $s$ digits with high probability and you know the seed.
$endgroup$
– David Richerby
yesterday
1
$begingroup$
@Barmar: At that point you have to ask whether this technique is really more performant (and more space-efficient) than a "standard" PRNG would be.
$endgroup$
– Kevin
yesterday
1
$begingroup$
The digits of pi or e are completely unpredictable, especially since the viewer / recipient / code breaker etc has no idea how far along in the sequence you already are. If you start at digit number 237423 of the sequence, it will take so long to figure out, as to be random.
$endgroup$
– DaveBoltman
20 hours ago
6
$begingroup$
@DaveBoltman If we're not doing something like cryptography, nobody's going to care enough to bother figuring it out. If we are doing cryptography, it's a standard assumption that your adversary knows what algorithm you're using which, in this case, includes what irrational number the sequence is coming from and how you're choosing the digits, except for any parameter such as "start at digit $s$". If the adversary doesn't know what number you're using then, sure, the next digit could be literally anything, but then they guess it's $sqrt{text{my birthday}}$ and the game's up.
$endgroup$
– David Richerby
17 hours ago
7
7
$begingroup$
For the third point, there must be some sort of 'secret' input to your generation process for it to be unpredictable (the generation process itself should be deterministic if we don't want to rely on yet another random number generator.). This extra input is often called a seed.
$endgroup$
– Discrete lizard♦
yesterday
$begingroup$
For the third point, there must be some sort of 'secret' input to your generation process for it to be unpredictable (the generation process itself should be deterministic if we don't want to rely on yet another random number generator.). This extra input is often called a seed.
$endgroup$
– Discrete lizard♦
yesterday
2
2
$begingroup$
@Discretelizard This is true but there's not much scope for seeding beyond "return successive digits starting with position $s$." By the time you've seen $2log s$ digits, that sequence occurs only a few times within the first $s^2$ digits of $pi$, so it's unique within the first $s$ digits with high probability and you know the seed.
$endgroup$
– David Richerby
yesterday
$begingroup$
@Discretelizard This is true but there's not much scope for seeding beyond "return successive digits starting with position $s$." By the time you've seen $2log s$ digits, that sequence occurs only a few times within the first $s^2$ digits of $pi$, so it's unique within the first $s$ digits with high probability and you know the seed.
$endgroup$
– David Richerby
yesterday
1
1
$begingroup$
@Barmar: At that point you have to ask whether this technique is really more performant (and more space-efficient) than a "standard" PRNG would be.
$endgroup$
– Kevin
yesterday
$begingroup$
@Barmar: At that point you have to ask whether this technique is really more performant (and more space-efficient) than a "standard" PRNG would be.
$endgroup$
– Kevin
yesterday
1
1
$begingroup$
The digits of pi or e are completely unpredictable, especially since the viewer / recipient / code breaker etc has no idea how far along in the sequence you already are. If you start at digit number 237423 of the sequence, it will take so long to figure out, as to be random.
$endgroup$
– DaveBoltman
20 hours ago
$begingroup$
The digits of pi or e are completely unpredictable, especially since the viewer / recipient / code breaker etc has no idea how far along in the sequence you already are. If you start at digit number 237423 of the sequence, it will take so long to figure out, as to be random.
$endgroup$
– DaveBoltman
20 hours ago
6
6
$begingroup$
@DaveBoltman If we're not doing something like cryptography, nobody's going to care enough to bother figuring it out. If we are doing cryptography, it's a standard assumption that your adversary knows what algorithm you're using which, in this case, includes what irrational number the sequence is coming from and how you're choosing the digits, except for any parameter such as "start at digit $s$". If the adversary doesn't know what number you're using then, sure, the next digit could be literally anything, but then they guess it's $sqrt{text{my birthday}}$ and the game's up.
$endgroup$
– David Richerby
17 hours ago
$begingroup$
@DaveBoltman If we're not doing something like cryptography, nobody's going to care enough to bother figuring it out. If we are doing cryptography, it's a standard assumption that your adversary knows what algorithm you're using which, in this case, includes what irrational number the sequence is coming from and how you're choosing the digits, except for any parameter such as "start at digit $s$". If the adversary doesn't know what number you're using then, sure, the next digit could be literally anything, but then they guess it's $sqrt{text{my birthday}}$ and the game's up.
$endgroup$
– David Richerby
17 hours ago
|
show 10 more comments
$begingroup$
It is cryptographically useless because an adversary can predict every single digit. It is also very time consuming.
$endgroup$
8
$begingroup$
OP never mentions cryptography...
$endgroup$
– AnoE
yesterday
9
$begingroup$
@AnoE So? That this process would be cryptographically useless is still relevant because crypto is an avid user of randomness. If you bring up the devices/dev/random
and/dev/urandom
someone will invariably bring up cryptography.
$endgroup$
– Greg Schmit
yesterday
3
$begingroup$
You would be amazed at how useless cryptographic security is in real time PRNG generation. irrational numbers are often used in GPU PRNGs. There are a lot of applications where how "secure" your PRNG is simply irrelevant. What matters in something like coherent noise generation is the quality of distribution and how often your period repeats, and correlation effects due to adjacent seeds (which would require avalanche mixers to fix). Quite honestly your answer is wrong, doesn't belong here, and should probably be deleted.
$endgroup$
– opa
yesterday
3
$begingroup$
This is anot an answer to the question. Note the OP of the linked question uses random numbers for seeding a monte carlo analysis. An update to address the question asked should be considered. mathoverflow.net/questions/26942/…
$endgroup$
– CramerTV
yesterday
6
$begingroup$
Certainly there are many applications where PRNGs don't need to be cryptographically secure. But OP didn't ask if it was useful for some purposes, they asked if this method was a "perfect RNG". While they haven't clarified what they mean by "perfect", the fact that it's unsuitable for one of the major uses of RNGs seems very relevant to answering that question.
$endgroup$
– Geoffrey Brent
yesterday
|
show 5 more comments
$begingroup$
It is cryptographically useless because an adversary can predict every single digit. It is also very time consuming.
$endgroup$
8
$begingroup$
OP never mentions cryptography...
$endgroup$
– AnoE
yesterday
9
$begingroup$
@AnoE So? That this process would be cryptographically useless is still relevant because crypto is an avid user of randomness. If you bring up the devices/dev/random
and/dev/urandom
someone will invariably bring up cryptography.
$endgroup$
– Greg Schmit
yesterday
3
$begingroup$
You would be amazed at how useless cryptographic security is in real time PRNG generation. irrational numbers are often used in GPU PRNGs. There are a lot of applications where how "secure" your PRNG is simply irrelevant. What matters in something like coherent noise generation is the quality of distribution and how often your period repeats, and correlation effects due to adjacent seeds (which would require avalanche mixers to fix). Quite honestly your answer is wrong, doesn't belong here, and should probably be deleted.
$endgroup$
– opa
yesterday
3
$begingroup$
This is anot an answer to the question. Note the OP of the linked question uses random numbers for seeding a monte carlo analysis. An update to address the question asked should be considered. mathoverflow.net/questions/26942/…
$endgroup$
– CramerTV
yesterday
6
$begingroup$
Certainly there are many applications where PRNGs don't need to be cryptographically secure. But OP didn't ask if it was useful for some purposes, they asked if this method was a "perfect RNG". While they haven't clarified what they mean by "perfect", the fact that it's unsuitable for one of the major uses of RNGs seems very relevant to answering that question.
$endgroup$
– Geoffrey Brent
yesterday
|
show 5 more comments
$begingroup$
It is cryptographically useless because an adversary can predict every single digit. It is also very time consuming.
$endgroup$
It is cryptographically useless because an adversary can predict every single digit. It is also very time consuming.
answered yesterday
gnasher729gnasher729
11.9k1218
11.9k1218
8
$begingroup$
OP never mentions cryptography...
$endgroup$
– AnoE
yesterday
9
$begingroup$
@AnoE So? That this process would be cryptographically useless is still relevant because crypto is an avid user of randomness. If you bring up the devices/dev/random
and/dev/urandom
someone will invariably bring up cryptography.
$endgroup$
– Greg Schmit
yesterday
3
$begingroup$
You would be amazed at how useless cryptographic security is in real time PRNG generation. irrational numbers are often used in GPU PRNGs. There are a lot of applications where how "secure" your PRNG is simply irrelevant. What matters in something like coherent noise generation is the quality of distribution and how often your period repeats, and correlation effects due to adjacent seeds (which would require avalanche mixers to fix). Quite honestly your answer is wrong, doesn't belong here, and should probably be deleted.
$endgroup$
– opa
yesterday
3
$begingroup$
This is anot an answer to the question. Note the OP of the linked question uses random numbers for seeding a monte carlo analysis. An update to address the question asked should be considered. mathoverflow.net/questions/26942/…
$endgroup$
– CramerTV
yesterday
6
$begingroup$
Certainly there are many applications where PRNGs don't need to be cryptographically secure. But OP didn't ask if it was useful for some purposes, they asked if this method was a "perfect RNG". While they haven't clarified what they mean by "perfect", the fact that it's unsuitable for one of the major uses of RNGs seems very relevant to answering that question.
$endgroup$
– Geoffrey Brent
yesterday
|
show 5 more comments
8
$begingroup$
OP never mentions cryptography...
$endgroup$
– AnoE
yesterday
9
$begingroup$
@AnoE So? That this process would be cryptographically useless is still relevant because crypto is an avid user of randomness. If you bring up the devices/dev/random
and/dev/urandom
someone will invariably bring up cryptography.
$endgroup$
– Greg Schmit
yesterday
3
$begingroup$
You would be amazed at how useless cryptographic security is in real time PRNG generation. irrational numbers are often used in GPU PRNGs. There are a lot of applications where how "secure" your PRNG is simply irrelevant. What matters in something like coherent noise generation is the quality of distribution and how often your period repeats, and correlation effects due to adjacent seeds (which would require avalanche mixers to fix). Quite honestly your answer is wrong, doesn't belong here, and should probably be deleted.
$endgroup$
– opa
yesterday
3
$begingroup$
This is anot an answer to the question. Note the OP of the linked question uses random numbers for seeding a monte carlo analysis. An update to address the question asked should be considered. mathoverflow.net/questions/26942/…
$endgroup$
– CramerTV
yesterday
6
$begingroup$
Certainly there are many applications where PRNGs don't need to be cryptographically secure. But OP didn't ask if it was useful for some purposes, they asked if this method was a "perfect RNG". While they haven't clarified what they mean by "perfect", the fact that it's unsuitable for one of the major uses of RNGs seems very relevant to answering that question.
$endgroup$
– Geoffrey Brent
yesterday
8
8
$begingroup$
OP never mentions cryptography...
$endgroup$
– AnoE
yesterday
$begingroup$
OP never mentions cryptography...
$endgroup$
– AnoE
yesterday
9
9
$begingroup$
@AnoE So? That this process would be cryptographically useless is still relevant because crypto is an avid user of randomness. If you bring up the devices
/dev/random
and /dev/urandom
someone will invariably bring up cryptography.$endgroup$
– Greg Schmit
yesterday
$begingroup$
@AnoE So? That this process would be cryptographically useless is still relevant because crypto is an avid user of randomness. If you bring up the devices
/dev/random
and /dev/urandom
someone will invariably bring up cryptography.$endgroup$
– Greg Schmit
yesterday
3
3
$begingroup$
You would be amazed at how useless cryptographic security is in real time PRNG generation. irrational numbers are often used in GPU PRNGs. There are a lot of applications where how "secure" your PRNG is simply irrelevant. What matters in something like coherent noise generation is the quality of distribution and how often your period repeats, and correlation effects due to adjacent seeds (which would require avalanche mixers to fix). Quite honestly your answer is wrong, doesn't belong here, and should probably be deleted.
$endgroup$
– opa
yesterday
$begingroup$
You would be amazed at how useless cryptographic security is in real time PRNG generation. irrational numbers are often used in GPU PRNGs. There are a lot of applications where how "secure" your PRNG is simply irrelevant. What matters in something like coherent noise generation is the quality of distribution and how often your period repeats, and correlation effects due to adjacent seeds (which would require avalanche mixers to fix). Quite honestly your answer is wrong, doesn't belong here, and should probably be deleted.
$endgroup$
– opa
yesterday
3
3
$begingroup$
This is anot an answer to the question. Note the OP of the linked question uses random numbers for seeding a monte carlo analysis. An update to address the question asked should be considered. mathoverflow.net/questions/26942/…
$endgroup$
– CramerTV
yesterday
$begingroup$
This is anot an answer to the question. Note the OP of the linked question uses random numbers for seeding a monte carlo analysis. An update to address the question asked should be considered. mathoverflow.net/questions/26942/…
$endgroup$
– CramerTV
yesterday
6
6
$begingroup$
Certainly there are many applications where PRNGs don't need to be cryptographically secure. But OP didn't ask if it was useful for some purposes, they asked if this method was a "perfect RNG". While they haven't clarified what they mean by "perfect", the fact that it's unsuitable for one of the major uses of RNGs seems very relevant to answering that question.
$endgroup$
– Geoffrey Brent
yesterday
$begingroup$
Certainly there are many applications where PRNGs don't need to be cryptographically secure. But OP didn't ask if it was useful for some purposes, they asked if this method was a "perfect RNG". While they haven't clarified what they mean by "perfect", the fact that it's unsuitable for one of the major uses of RNGs seems very relevant to answering that question.
$endgroup$
– Geoffrey Brent
yesterday
|
show 5 more comments
$begingroup$
Duplicate, but nice question. It was already answered https://math.stackexchange.com/questions/51829/distribution-of-the-digits-of-pi:
...it is believed that $pi$ is a normal number (~uniform distribution of every digits sequence).
For digit distribution data, see e.g. http://www.eveandersson.com/pi/precalculated-frequencies or https://thestarman.pcministry.com/math/pi/RandPI.html (first 1000 digits):
At mathoverflow, there are also nice answers at:
- What is the state of our ignorance about the normality of pi?
- Does pi contain 1000 consecutive zeroes?
$endgroup$
1
$begingroup$
If you believe the question is a duplicate, then why are you answering it? You should simply flag it, not reinforce undesired posting behavior.
$endgroup$
– dkaeae
yesterday
5
$begingroup$
@dkaeae There is no support for duplicates of questions on other sites. Furthermore, the same question on different sites can get different answers. In this case, a site such as Mathematics might not give much consideration to security concerns. See also this answer. Do note that we discourage asking the same question on multiple sites at the same time, since this tends to lead to wasted efforts. But the same question by different persons at different times on different sites is usually ok.
$endgroup$
– Discrete lizard♦
yesterday
4
$begingroup$
Unfortunately, just because a number is normal doesn't mean that outputting its digits gives you a good RNG. The outputs of such a RNG are still entirely predictable. Whether that's acceptable might depend on the application. So, I don't think it's quite as simple as saying "pi is normal, case closed".
$endgroup$
– D.W.♦
yesterday
1
$begingroup$
That is just emperical observation for first few digits? What is to be meant by that?
$endgroup$
– marshal craft
19 hours ago
$begingroup$
@D.W. I mentioned that I intend to use a combination of numbers like π and e. And please say how the output will be predictable if we do not know how far down the sequence the generator has gone?
$endgroup$
– Abhradeep Sarkar
17 hours ago
|
show 1 more comment
$begingroup$
Duplicate, but nice question. It was already answered https://math.stackexchange.com/questions/51829/distribution-of-the-digits-of-pi:
...it is believed that $pi$ is a normal number (~uniform distribution of every digits sequence).
For digit distribution data, see e.g. http://www.eveandersson.com/pi/precalculated-frequencies or https://thestarman.pcministry.com/math/pi/RandPI.html (first 1000 digits):
At mathoverflow, there are also nice answers at:
- What is the state of our ignorance about the normality of pi?
- Does pi contain 1000 consecutive zeroes?
$endgroup$
1
$begingroup$
If you believe the question is a duplicate, then why are you answering it? You should simply flag it, not reinforce undesired posting behavior.
$endgroup$
– dkaeae
yesterday
5
$begingroup$
@dkaeae There is no support for duplicates of questions on other sites. Furthermore, the same question on different sites can get different answers. In this case, a site such as Mathematics might not give much consideration to security concerns. See also this answer. Do note that we discourage asking the same question on multiple sites at the same time, since this tends to lead to wasted efforts. But the same question by different persons at different times on different sites is usually ok.
$endgroup$
– Discrete lizard♦
yesterday
4
$begingroup$
Unfortunately, just because a number is normal doesn't mean that outputting its digits gives you a good RNG. The outputs of such a RNG are still entirely predictable. Whether that's acceptable might depend on the application. So, I don't think it's quite as simple as saying "pi is normal, case closed".
$endgroup$
– D.W.♦
yesterday
1
$begingroup$
That is just emperical observation for first few digits? What is to be meant by that?
$endgroup$
– marshal craft
19 hours ago
$begingroup$
@D.W. I mentioned that I intend to use a combination of numbers like π and e. And please say how the output will be predictable if we do not know how far down the sequence the generator has gone?
$endgroup$
– Abhradeep Sarkar
17 hours ago
|
show 1 more comment
$begingroup$
Duplicate, but nice question. It was already answered https://math.stackexchange.com/questions/51829/distribution-of-the-digits-of-pi:
...it is believed that $pi$ is a normal number (~uniform distribution of every digits sequence).
For digit distribution data, see e.g. http://www.eveandersson.com/pi/precalculated-frequencies or https://thestarman.pcministry.com/math/pi/RandPI.html (first 1000 digits):
At mathoverflow, there are also nice answers at:
- What is the state of our ignorance about the normality of pi?
- Does pi contain 1000 consecutive zeroes?
$endgroup$
Duplicate, but nice question. It was already answered https://math.stackexchange.com/questions/51829/distribution-of-the-digits-of-pi:
...it is believed that $pi$ is a normal number (~uniform distribution of every digits sequence).
For digit distribution data, see e.g. http://www.eveandersson.com/pi/precalculated-frequencies or https://thestarman.pcministry.com/math/pi/RandPI.html (first 1000 digits):
At mathoverflow, there are also nice answers at:
- What is the state of our ignorance about the normality of pi?
- Does pi contain 1000 consecutive zeroes?
edited yesterday
Discrete lizard♦
4,45011538
4,45011538
answered yesterday
AyratAyrat
4951419
4951419
1
$begingroup$
If you believe the question is a duplicate, then why are you answering it? You should simply flag it, not reinforce undesired posting behavior.
$endgroup$
– dkaeae
yesterday
5
$begingroup$
@dkaeae There is no support for duplicates of questions on other sites. Furthermore, the same question on different sites can get different answers. In this case, a site such as Mathematics might not give much consideration to security concerns. See also this answer. Do note that we discourage asking the same question on multiple sites at the same time, since this tends to lead to wasted efforts. But the same question by different persons at different times on different sites is usually ok.
$endgroup$
– Discrete lizard♦
yesterday
4
$begingroup$
Unfortunately, just because a number is normal doesn't mean that outputting its digits gives you a good RNG. The outputs of such a RNG are still entirely predictable. Whether that's acceptable might depend on the application. So, I don't think it's quite as simple as saying "pi is normal, case closed".
$endgroup$
– D.W.♦
yesterday
1
$begingroup$
That is just emperical observation for first few digits? What is to be meant by that?
$endgroup$
– marshal craft
19 hours ago
$begingroup$
@D.W. I mentioned that I intend to use a combination of numbers like π and e. And please say how the output will be predictable if we do not know how far down the sequence the generator has gone?
$endgroup$
– Abhradeep Sarkar
17 hours ago
|
show 1 more comment
1
$begingroup$
If you believe the question is a duplicate, then why are you answering it? You should simply flag it, not reinforce undesired posting behavior.
$endgroup$
– dkaeae
yesterday
5
$begingroup$
@dkaeae There is no support for duplicates of questions on other sites. Furthermore, the same question on different sites can get different answers. In this case, a site such as Mathematics might not give much consideration to security concerns. See also this answer. Do note that we discourage asking the same question on multiple sites at the same time, since this tends to lead to wasted efforts. But the same question by different persons at different times on different sites is usually ok.
$endgroup$
– Discrete lizard♦
yesterday
4
$begingroup$
Unfortunately, just because a number is normal doesn't mean that outputting its digits gives you a good RNG. The outputs of such a RNG are still entirely predictable. Whether that's acceptable might depend on the application. So, I don't think it's quite as simple as saying "pi is normal, case closed".
$endgroup$
– D.W.♦
yesterday
1
$begingroup$
That is just emperical observation for first few digits? What is to be meant by that?
$endgroup$
– marshal craft
19 hours ago
$begingroup$
@D.W. I mentioned that I intend to use a combination of numbers like π and e. And please say how the output will be predictable if we do not know how far down the sequence the generator has gone?
$endgroup$
– Abhradeep Sarkar
17 hours ago
1
1
$begingroup$
If you believe the question is a duplicate, then why are you answering it? You should simply flag it, not reinforce undesired posting behavior.
$endgroup$
– dkaeae
yesterday
$begingroup$
If you believe the question is a duplicate, then why are you answering it? You should simply flag it, not reinforce undesired posting behavior.
$endgroup$
– dkaeae
yesterday
5
5
$begingroup$
@dkaeae There is no support for duplicates of questions on other sites. Furthermore, the same question on different sites can get different answers. In this case, a site such as Mathematics might not give much consideration to security concerns. See also this answer. Do note that we discourage asking the same question on multiple sites at the same time, since this tends to lead to wasted efforts. But the same question by different persons at different times on different sites is usually ok.
$endgroup$
– Discrete lizard♦
yesterday
$begingroup$
@dkaeae There is no support for duplicates of questions on other sites. Furthermore, the same question on different sites can get different answers. In this case, a site such as Mathematics might not give much consideration to security concerns. See also this answer. Do note that we discourage asking the same question on multiple sites at the same time, since this tends to lead to wasted efforts. But the same question by different persons at different times on different sites is usually ok.
$endgroup$
– Discrete lizard♦
yesterday
4
4
$begingroup$
Unfortunately, just because a number is normal doesn't mean that outputting its digits gives you a good RNG. The outputs of such a RNG are still entirely predictable. Whether that's acceptable might depend on the application. So, I don't think it's quite as simple as saying "pi is normal, case closed".
$endgroup$
– D.W.♦
yesterday
$begingroup$
Unfortunately, just because a number is normal doesn't mean that outputting its digits gives you a good RNG. The outputs of such a RNG are still entirely predictable. Whether that's acceptable might depend on the application. So, I don't think it's quite as simple as saying "pi is normal, case closed".
$endgroup$
– D.W.♦
yesterday
1
1
$begingroup$
That is just emperical observation for first few digits? What is to be meant by that?
$endgroup$
– marshal craft
19 hours ago
$begingroup$
That is just emperical observation for first few digits? What is to be meant by that?
$endgroup$
– marshal craft
19 hours ago
$begingroup$
@D.W. I mentioned that I intend to use a combination of numbers like π and e. And please say how the output will be predictable if we do not know how far down the sequence the generator has gone?
$endgroup$
– Abhradeep Sarkar
17 hours ago
$begingroup$
@D.W. I mentioned that I intend to use a combination of numbers like π and e. And please say how the output will be predictable if we do not know how far down the sequence the generator has gone?
$endgroup$
– Abhradeep Sarkar
17 hours ago
|
show 1 more comment
$begingroup$
The most obvious disadvantage is the unnecessary complexity of PRNG algorithms based on irrational numbers. They require much more computations per generated digit than, say, an LCG; and this complexity typically grows as you go further in the sequence. Calculating 256 bits of π at the two-quadrillionth bit took 23 days on 1000 computers (back in 2010) - a rather prohibitive complexity for an RNG.
$endgroup$
add a comment |
$begingroup$
The most obvious disadvantage is the unnecessary complexity of PRNG algorithms based on irrational numbers. They require much more computations per generated digit than, say, an LCG; and this complexity typically grows as you go further in the sequence. Calculating 256 bits of π at the two-quadrillionth bit took 23 days on 1000 computers (back in 2010) - a rather prohibitive complexity for an RNG.
$endgroup$
add a comment |
$begingroup$
The most obvious disadvantage is the unnecessary complexity of PRNG algorithms based on irrational numbers. They require much more computations per generated digit than, say, an LCG; and this complexity typically grows as you go further in the sequence. Calculating 256 bits of π at the two-quadrillionth bit took 23 days on 1000 computers (back in 2010) - a rather prohibitive complexity for an RNG.
$endgroup$
The most obvious disadvantage is the unnecessary complexity of PRNG algorithms based on irrational numbers. They require much more computations per generated digit than, say, an LCG; and this complexity typically grows as you go further in the sequence. Calculating 256 bits of π at the two-quadrillionth bit took 23 days on 1000 computers (back in 2010) - a rather prohibitive complexity for an RNG.
answered 12 hours ago
Dmitry GrigoryevDmitry Grigoryev
25114
25114
add a comment |
add a comment |
$begingroup$
In general, this approach does not work: "randomness" does not mean that you get a lot of different digits, but there are other aspects as well. For example, a classic test is to see if all two-digit, or three-digit etc. combinations occur with the same frequency. This would be a very simple test, which can rule out obvious non-random results, but is still by far too simplistic to check for really random behaviour.
See the Wikipedia page about Randomness Tests as a collection of links to primary sources regarding this. They do mention a good amount of quite complicated-sounding concepts; it is it not so important to go into deep detail about this - but it is clear that it is not intuitively possible to declare a specific number to be a good source for such digits.
On a positive note: For a specific irrational number, you are of course free to just try it; i.e., calculate the number to a sufficiantly large degree of digits, and run it through all known tests (there are tools for that, see above link). If the measure is good enough for your use case, and if you are aware that this is obviously useless for cryptographical applications, and always get the same numbers if you should start over, and that the quality might degrade if you get past the n
you picked for testing the randomness, you could use those numbers. But it will be far better to use a dedicated (pseudo-)random number generator; and nothing beats a good physical source of randomness.
$endgroup$
3
$begingroup$
OK but $pi$ and $mathrm{e}$ have the property that all the 2, 3, 4, ... digit sequences do empirically turn up with the right frequency. Nobody's managed to prove it but it seem to be true.
$endgroup$
– David Richerby
yesterday
1
$begingroup$
Ayrat's answer links to other sites where mathematicians have done these tests. They believe, but haven't proved, that π meets the statistical tests.
$endgroup$
– Barmar
yesterday
add a comment |
$begingroup$
In general, this approach does not work: "randomness" does not mean that you get a lot of different digits, but there are other aspects as well. For example, a classic test is to see if all two-digit, or three-digit etc. combinations occur with the same frequency. This would be a very simple test, which can rule out obvious non-random results, but is still by far too simplistic to check for really random behaviour.
See the Wikipedia page about Randomness Tests as a collection of links to primary sources regarding this. They do mention a good amount of quite complicated-sounding concepts; it is it not so important to go into deep detail about this - but it is clear that it is not intuitively possible to declare a specific number to be a good source for such digits.
On a positive note: For a specific irrational number, you are of course free to just try it; i.e., calculate the number to a sufficiantly large degree of digits, and run it through all known tests (there are tools for that, see above link). If the measure is good enough for your use case, and if you are aware that this is obviously useless for cryptographical applications, and always get the same numbers if you should start over, and that the quality might degrade if you get past the n
you picked for testing the randomness, you could use those numbers. But it will be far better to use a dedicated (pseudo-)random number generator; and nothing beats a good physical source of randomness.
$endgroup$
3
$begingroup$
OK but $pi$ and $mathrm{e}$ have the property that all the 2, 3, 4, ... digit sequences do empirically turn up with the right frequency. Nobody's managed to prove it but it seem to be true.
$endgroup$
– David Richerby
yesterday
1
$begingroup$
Ayrat's answer links to other sites where mathematicians have done these tests. They believe, but haven't proved, that π meets the statistical tests.
$endgroup$
– Barmar
yesterday
add a comment |
$begingroup$
In general, this approach does not work: "randomness" does not mean that you get a lot of different digits, but there are other aspects as well. For example, a classic test is to see if all two-digit, or three-digit etc. combinations occur with the same frequency. This would be a very simple test, which can rule out obvious non-random results, but is still by far too simplistic to check for really random behaviour.
See the Wikipedia page about Randomness Tests as a collection of links to primary sources regarding this. They do mention a good amount of quite complicated-sounding concepts; it is it not so important to go into deep detail about this - but it is clear that it is not intuitively possible to declare a specific number to be a good source for such digits.
On a positive note: For a specific irrational number, you are of course free to just try it; i.e., calculate the number to a sufficiantly large degree of digits, and run it through all known tests (there are tools for that, see above link). If the measure is good enough for your use case, and if you are aware that this is obviously useless for cryptographical applications, and always get the same numbers if you should start over, and that the quality might degrade if you get past the n
you picked for testing the randomness, you could use those numbers. But it will be far better to use a dedicated (pseudo-)random number generator; and nothing beats a good physical source of randomness.
$endgroup$
In general, this approach does not work: "randomness" does not mean that you get a lot of different digits, but there are other aspects as well. For example, a classic test is to see if all two-digit, or three-digit etc. combinations occur with the same frequency. This would be a very simple test, which can rule out obvious non-random results, but is still by far too simplistic to check for really random behaviour.
See the Wikipedia page about Randomness Tests as a collection of links to primary sources regarding this. They do mention a good amount of quite complicated-sounding concepts; it is it not so important to go into deep detail about this - but it is clear that it is not intuitively possible to declare a specific number to be a good source for such digits.
On a positive note: For a specific irrational number, you are of course free to just try it; i.e., calculate the number to a sufficiantly large degree of digits, and run it through all known tests (there are tools for that, see above link). If the measure is good enough for your use case, and if you are aware that this is obviously useless for cryptographical applications, and always get the same numbers if you should start over, and that the quality might degrade if you get past the n
you picked for testing the randomness, you could use those numbers. But it will be far better to use a dedicated (pseudo-)random number generator; and nothing beats a good physical source of randomness.
answered yesterday
AnoEAnoE
1,02749
1,02749
3
$begingroup$
OK but $pi$ and $mathrm{e}$ have the property that all the 2, 3, 4, ... digit sequences do empirically turn up with the right frequency. Nobody's managed to prove it but it seem to be true.
$endgroup$
– David Richerby
yesterday
1
$begingroup$
Ayrat's answer links to other sites where mathematicians have done these tests. They believe, but haven't proved, that π meets the statistical tests.
$endgroup$
– Barmar
yesterday
add a comment |
3
$begingroup$
OK but $pi$ and $mathrm{e}$ have the property that all the 2, 3, 4, ... digit sequences do empirically turn up with the right frequency. Nobody's managed to prove it but it seem to be true.
$endgroup$
– David Richerby
yesterday
1
$begingroup$
Ayrat's answer links to other sites where mathematicians have done these tests. They believe, but haven't proved, that π meets the statistical tests.
$endgroup$
– Barmar
yesterday
3
3
$begingroup$
OK but $pi$ and $mathrm{e}$ have the property that all the 2, 3, 4, ... digit sequences do empirically turn up with the right frequency. Nobody's managed to prove it but it seem to be true.
$endgroup$
– David Richerby
yesterday
$begingroup$
OK but $pi$ and $mathrm{e}$ have the property that all the 2, 3, 4, ... digit sequences do empirically turn up with the right frequency. Nobody's managed to prove it but it seem to be true.
$endgroup$
– David Richerby
yesterday
1
1
$begingroup$
Ayrat's answer links to other sites where mathematicians have done these tests. They believe, but haven't proved, that π meets the statistical tests.
$endgroup$
– Barmar
yesterday
$begingroup$
Ayrat's answer links to other sites where mathematicians have done these tests. They believe, but haven't proved, that π meets the statistical tests.
$endgroup$
– Barmar
yesterday
add a comment |
$begingroup$
It provides a good random number right until you realize how it was produced, as with many pseudo random number. The irrational (non algebraic and non transcendental) numbers you have chosen are common and so easier guessed then others. I can see no issue with this method provided you choose less commonly seen generators.
New contributor
$endgroup$
1
$begingroup$
No issue except the gross inefficiency, the fact that you're relying on any adversary not knowing what your algorithm is, the fact that a bad choice of generator could lead to very poor sequence, ...
$endgroup$
– David Richerby
16 hours ago
2
$begingroup$
By the way, of the numbers suggested in the question, $sqrt{2}$ is algebraic and $pi$ and $mathrm{e}$ are transcendental.
$endgroup$
– David Richerby
16 hours ago
add a comment |
$begingroup$
It provides a good random number right until you realize how it was produced, as with many pseudo random number. The irrational (non algebraic and non transcendental) numbers you have chosen are common and so easier guessed then others. I can see no issue with this method provided you choose less commonly seen generators.
New contributor
$endgroup$
1
$begingroup$
No issue except the gross inefficiency, the fact that you're relying on any adversary not knowing what your algorithm is, the fact that a bad choice of generator could lead to very poor sequence, ...
$endgroup$
– David Richerby
16 hours ago
2
$begingroup$
By the way, of the numbers suggested in the question, $sqrt{2}$ is algebraic and $pi$ and $mathrm{e}$ are transcendental.
$endgroup$
– David Richerby
16 hours ago
add a comment |
$begingroup$
It provides a good random number right until you realize how it was produced, as with many pseudo random number. The irrational (non algebraic and non transcendental) numbers you have chosen are common and so easier guessed then others. I can see no issue with this method provided you choose less commonly seen generators.
New contributor
$endgroup$
It provides a good random number right until you realize how it was produced, as with many pseudo random number. The irrational (non algebraic and non transcendental) numbers you have chosen are common and so easier guessed then others. I can see no issue with this method provided you choose less commonly seen generators.
New contributor
New contributor
answered 19 hours ago
marshal craftmarshal craft
1093
1093
New contributor
New contributor
1
$begingroup$
No issue except the gross inefficiency, the fact that you're relying on any adversary not knowing what your algorithm is, the fact that a bad choice of generator could lead to very poor sequence, ...
$endgroup$
– David Richerby
16 hours ago
2
$begingroup$
By the way, of the numbers suggested in the question, $sqrt{2}$ is algebraic and $pi$ and $mathrm{e}$ are transcendental.
$endgroup$
– David Richerby
16 hours ago
add a comment |
1
$begingroup$
No issue except the gross inefficiency, the fact that you're relying on any adversary not knowing what your algorithm is, the fact that a bad choice of generator could lead to very poor sequence, ...
$endgroup$
– David Richerby
16 hours ago
2
$begingroup$
By the way, of the numbers suggested in the question, $sqrt{2}$ is algebraic and $pi$ and $mathrm{e}$ are transcendental.
$endgroup$
– David Richerby
16 hours ago
1
1
$begingroup$
No issue except the gross inefficiency, the fact that you're relying on any adversary not knowing what your algorithm is, the fact that a bad choice of generator could lead to very poor sequence, ...
$endgroup$
– David Richerby
16 hours ago
$begingroup$
No issue except the gross inefficiency, the fact that you're relying on any adversary not knowing what your algorithm is, the fact that a bad choice of generator could lead to very poor sequence, ...
$endgroup$
– David Richerby
16 hours ago
2
2
$begingroup$
By the way, of the numbers suggested in the question, $sqrt{2}$ is algebraic and $pi$ and $mathrm{e}$ are transcendental.
$endgroup$
– David Richerby
16 hours ago
$begingroup$
By the way, of the numbers suggested in the question, $sqrt{2}$ is algebraic and $pi$ and $mathrm{e}$ are transcendental.
$endgroup$
– David Richerby
16 hours ago
add a comment |
$begingroup$
There has been similar methods for generating random numbers in the past. See random number book. Random numbers in a book are obviously predictable, but the number distribution is probably more random than π and e.
New contributor
$endgroup$
$begingroup$
It may be more random than π and e individually, but what about a number of irrational numbers combined?
$endgroup$
– Abhradeep Sarkar
16 hours ago
2
$begingroup$
I'm not seeing how this answers the question -- it looks more like an attempt to respond to another answer. The question asked if we can generate random numbers from numbers like pi; I don't see a direct answer to that question. Please edit your answer to make sure to provide a full answer to the question that was asked at the top. Our site works differently from others you might be used to -- we have strict quality standards, and the 'Your Answer' box should only be used for material that answers the question (not responses to other answers or other remarks).
$endgroup$
– D.W.♦
10 hours ago
add a comment |
$begingroup$
There has been similar methods for generating random numbers in the past. See random number book. Random numbers in a book are obviously predictable, but the number distribution is probably more random than π and e.
New contributor
$endgroup$
$begingroup$
It may be more random than π and e individually, but what about a number of irrational numbers combined?
$endgroup$
– Abhradeep Sarkar
16 hours ago
2
$begingroup$
I'm not seeing how this answers the question -- it looks more like an attempt to respond to another answer. The question asked if we can generate random numbers from numbers like pi; I don't see a direct answer to that question. Please edit your answer to make sure to provide a full answer to the question that was asked at the top. Our site works differently from others you might be used to -- we have strict quality standards, and the 'Your Answer' box should only be used for material that answers the question (not responses to other answers or other remarks).
$endgroup$
– D.W.♦
10 hours ago
add a comment |
$begingroup$
There has been similar methods for generating random numbers in the past. See random number book. Random numbers in a book are obviously predictable, but the number distribution is probably more random than π and e.
New contributor
$endgroup$
There has been similar methods for generating random numbers in the past. See random number book. Random numbers in a book are obviously predictable, but the number distribution is probably more random than π and e.
New contributor
New contributor
answered 17 hours ago
Double Vision Stout Fat HeavyDouble Vision Stout Fat Heavy
91
91
New contributor
New contributor
$begingroup$
It may be more random than π and e individually, but what about a number of irrational numbers combined?
$endgroup$
– Abhradeep Sarkar
16 hours ago
2
$begingroup$
I'm not seeing how this answers the question -- it looks more like an attempt to respond to another answer. The question asked if we can generate random numbers from numbers like pi; I don't see a direct answer to that question. Please edit your answer to make sure to provide a full answer to the question that was asked at the top. Our site works differently from others you might be used to -- we have strict quality standards, and the 'Your Answer' box should only be used for material that answers the question (not responses to other answers or other remarks).
$endgroup$
– D.W.♦
10 hours ago
add a comment |
$begingroup$
It may be more random than π and e individually, but what about a number of irrational numbers combined?
$endgroup$
– Abhradeep Sarkar
16 hours ago
2
$begingroup$
I'm not seeing how this answers the question -- it looks more like an attempt to respond to another answer. The question asked if we can generate random numbers from numbers like pi; I don't see a direct answer to that question. Please edit your answer to make sure to provide a full answer to the question that was asked at the top. Our site works differently from others you might be used to -- we have strict quality standards, and the 'Your Answer' box should only be used for material that answers the question (not responses to other answers or other remarks).
$endgroup$
– D.W.♦
10 hours ago
$begingroup$
It may be more random than π and e individually, but what about a number of irrational numbers combined?
$endgroup$
– Abhradeep Sarkar
16 hours ago
$begingroup$
It may be more random than π and e individually, but what about a number of irrational numbers combined?
$endgroup$
– Abhradeep Sarkar
16 hours ago
2
2
$begingroup$
I'm not seeing how this answers the question -- it looks more like an attempt to respond to another answer. The question asked if we can generate random numbers from numbers like pi; I don't see a direct answer to that question. Please edit your answer to make sure to provide a full answer to the question that was asked at the top. Our site works differently from others you might be used to -- we have strict quality standards, and the 'Your Answer' box should only be used for material that answers the question (not responses to other answers or other remarks).
$endgroup$
– D.W.♦
10 hours ago
$begingroup$
I'm not seeing how this answers the question -- it looks more like an attempt to respond to another answer. The question asked if we can generate random numbers from numbers like pi; I don't see a direct answer to that question. Please edit your answer to make sure to provide a full answer to the question that was asked at the top. Our site works differently from others you might be used to -- we have strict quality standards, and the 'Your Answer' box should only be used for material that answers the question (not responses to other answers or other remarks).
$endgroup$
– D.W.♦
10 hours ago
add a comment |
Abhradeep Sarkar is a new contributor. Be nice, and check out our Code of Conduct.
Abhradeep Sarkar is a new contributor. Be nice, and check out our Code of Conduct.
Abhradeep Sarkar is a new contributor. Be nice, and check out our Code of Conduct.
Abhradeep Sarkar is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to Computer Science Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcs.stackexchange.com%2fquestions%2f106774%2fcan-we-generate-random-numbers-using-irrational-numbers-like-%25cf%2580-and-e%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
18
$begingroup$
You have a strange definition of "random" in your head. "Random" means "unpredictable". How is your sequence unpredictable? What definition of "random" do you have in mind? Perhaps what you are calling "random" has another name.
$endgroup$
– Eric Lippert
yesterday
4
$begingroup$
Note the spigot algorithm can be used to generate any hex digit in pi, without having to generate prior digits.
$endgroup$
– rcgldr
yesterday
3
$begingroup$
@EricLippert Aren't all pseudorandom number generators predictable?
$endgroup$
– Federico Poloni
19 hours ago
1
$begingroup$
The term has come up a few times: this is a "psuedo random number" not a "random number." It's a number generated algorithmically (so not random), but which has many desirable properties that random numbers have. Another algorithm is the "NYC phonebook" algorithm, where you go down the list of phone numbers, alphabetically, and take the last digit from each of them. Not random, but pseudorandom with some rather nice statistical behaviors!
$endgroup$
– Cort Ammon
19 hours ago
1
$begingroup$
"Pseudo" means "similar to but not". So pseudo random numbers are similar to, but not random numbers. So I'm not following your train of thought here. Now, crypto-strength PRNGs have the desirable property that if the internal state is unknown to the attacker, no statistical test we possess can distinguish a crypto PRNG from a true RNG, and that includes their lack of predictability. But the digits of pi do not have that property; they are highly predictable.
$endgroup$
– Eric Lippert
13 hours ago