Discussion Post: Pseudorandom Random Number (Bit) Generator (PRNG)
Implement a pseudorandom randomnumber (bit) generator (PRNG). A good random bit generator is supposed to generate bits independently, i.e., the probability of bit 0 (p0) is the same as the probability of bit 1 (p1), where
p0 = p1 = 0.5 and p0 + p1 = 1.
However, one student (Alice) implemented it in a bad way, i.e., p0 6= p1. For example, p0 = 0.3 and p1 = 0.7, or p0 = 0.2 and p1 = 0.8. Of course, the actual probabilities and her implementation details are unknown to you. You job is to use Alice's defective generator to produce an unbiased random bit string without using additional cryptographic tools.
First, clearly explain your step-by-step algorithms (or pseudocode). Second, provide a formal proof of correctness.
The response must include a reference list. One-inch margins, double-space, Using Times New Roman 12 pnt font and APA style of writing and citations.