Independent unbiased coin flips from a correlated biased source—A finite state markov chain


Von Neumann’s trick for simulating anabsolutely unbiased coin by a biased one is this:

  1. 1.

    Toss the biased coin twice, getting 00, 01, 10, or 11.

  2. 2.

    If 00 or 11 occur, go back to step 1; else

  3. 3.

    Call 10 aH, 01 aT.

Since Pr[H]=Pr[1]Pr[0]=Pr[T], the output is unbiased. Example: 00 10 11 01 01 →HTT.

Peter Elias gives an algorithm to generate an independent unbiased sequence ofHs andTs that nearly achieves the Entropy of the one-coin source. His algorithm is excellent, but certain difficulties arise in trying to use it (or the original von Neumann scheme) to generate bits in expected linear time from a Markov chain.

In this paper, we return to the original one-coin von Neumann scheme, and show how to extend it to generate an independent unbiased sequence ofHs andTs from any Markov chain in expected linear time. We give a wrong and a right way to do this. Two algorithms A and B use the simple von Neumann trick on every state of the Markov chain. They differ in the time they choose to announce the coin flip. This timing is crucial.

This is a preview of subscription content, access via your institution.


  1. [1]

    Josh D. Cohen, Fairing of biased Coins in Bounded Time,Yale Computer Science Technical Report 372 (1985).

  2. [2]

    Peter Elias, The Efficient Construction of an Unbiased Random Sequence, Ann. Math. Statist.43 (1972), 865–870.

    Google Scholar 

  3. [3]

    Benny Chor andOded Goldreich, Unbiased Bits from Sources of Weak Randomness and Probabilistic Communication Complexity,Proc. 26 th IEEE FOCS (1985), 429–442.

  4. [4]

    R. G. Gallager,Information Theory and Reliable Communication, Wiley, New York (1968).

    Google Scholar 

  5. [5]

    Miklós Sántha andUmesh V. Vazirani, Generating Quasi-Random Sequences from Slightly-Random Sources,Proc. 25 th IEEE FOCS (1985), 434–440. The following paper has a comprehensive bibliography:

  6. [6]

    Quentin F. Stout andBette Warren, Tree Algorithms for Unbiased Coin Tossing with a Baised Coin,Ann Prob. 12 (1984), 212–222.

    MATH  MathSciNet  Google Scholar 

  7. [7]

    Umesh V. Vazirani, Towards a Strong Communication Complexity Theory or Generating Quasi-Random Sequences from Two Communicating Slightly-Random Sources,Proc. 17 th ACM STOC (1985), 366–378.

  8. [8]

    John Von Neumann, Various Techniques Used in Connection with Random Digits, Notes by G. E. Forsythe, National Bureau of Standards,Applied Math Series, Vol.12 (1951), 36–38.Reprinted in: von Neumann’s Collected Works, Vol.5, Pergamon Press (1963), 768–770.

    Google Scholar 

Download references

Author information



Additional information

Supported in part by the National Science Foundation under grant DCR 85-13926.

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Blum, M. Independent unbiased coin flips from a correlated biased source—A finite state markov chain. Combinatorica 6, 97–108 (1986).

Download citation

AMS subject classification (1980)

  • 60 J 10
  • 68 C 05