What is random generation?

I wanted to write this as a sequel to &quot;What is a property?&quot; where I would talk about how Property-Based Testing libraries generate random structures, don&#39;t worry, I&#39;ll still do that! But I realized that without talking about randomness in computers, the writing would be incomplete. So the first part of this article will go into a core problem that we consider &quot;solved&quot; in PBT, which is designing good random number generators, with the latter part talking about implementing complex random data generators on top of such RNGs.