Take for instance when you ask Mathematica 7 to generate a random number. This number can't be really random. It has to adhere to some process for picking that specific number. Does anyone know anything about the algorithm/process to this?
There are a variety of well-studied techniques for this. Google "pseudorandom number generation" or "pseudorandom number generator".
I believe that modern Intel chips have an instruction or somesuch that actually produces true random numbers (it uses two interfering oscillators plugged into a voltage meter, or something) but I do not know whether any programming libraries actually tap into this.
Pseudorandom is used in 995 of applications, whether they are good enough or not depends.
If you are using them to hand out money (lotteries) or do crypto that you care about then you might need real (hardware) random numbers.
The via C3 (used in a lot of low power notebooks) has hw random number feature so do a bunch of specialist IBM and Intel chips, but AFAIK Intel's regular desktop chips don't. HW random number generators aren't guaranteed to produce perfectly random numbers either - you still have to be careful in the actual implementation.
Pseudorandom is still very useful for things like monte-carlo simulations, you don't care if the same stream of numbers is used everytime (in fact that is vital for testing) but you need a set of numbers with a certain known distribution.
(This is not spam, I have no affiliation with that company).
They also make a true quantum key-distribution system, which lets you set up a quantum channel (an optical fiber which carries single photons) and carry out what is, theoretically, a perfectly secure communication. They use this in the Swiss federal elections.
We Value Quality
• Topics based on mainstream science
• Proper English grammar and spelling We Value Civility
• Positive and compassionate attitudes
• Patience while debating We Value Productivity
• Disciplined to remain on-topic
• Recognition of own weaknesses
• Solo and co-op problem solving