Bit recycling for scaling random number generators
Abstract: Many Random Number Generators (RNG) are available nowadays; they are divided in two categories, hardware RNG, that provide "true" random numbers, and algorithmic RNG, that generate pseudo random numbers (PRNG). Both types usually generate random numbers $(X_n)$ as independent uniform samples in a range $0,\cdots,2{b-1}$, with $b = 8, 16, 32$ or $b = 64$. In applications, it is instead sometimes desirable to draw random numbers as independent uniform samples $(Y_n)$ in a range $1, \cdots, M$, where moreover M may change between drawings. Transforming the sequence $(X_n)$ to $(Y_n)$ is sometimes known as scaling. We discuss different methods for scaling the RNG, both in term of mathematical efficiency and of computational speed.
Paper Prompts
Sign up for free to create and run prompts on this paper using GPT-5.
Top Community Prompts
Collections
Sign up for free to add this paper to one or more collections.