Practical presentation and analysis of existing and historic pseudorandom number generation techniques. The hands-on presentation and descriptions give readers a practical knowledge to apply directly to their own work. Skipping the step of translating theoretical results into something directly applicable, it also lowers the bar for enjoying the book by not requiring a sophisticated math background. This is particularly beneficial to undergraduate students Implementations, with walk-through, in C and Python, that includes descriptions of an algorithm followed by an implementation in a familiar and commonly used programming language with its own description. This reinforces the ideas behind the algorithm and provides code that can be used as-is or adapted intelligently Experiments to illustrate the properties of pseudorandom number generators, including how to compare them with each other. The experiments are advanced enough to show a real use while still fitting nicely into the presentation format enforced by a static book. It also gives the reader an opportunity to see the "how and why" of the selection and implementation. This benefits the reader by going beyond a simple presentation and augmenting it with a worked example.
Random Numbers and Computers