From Wikipedia, the free encyclopedia
Creating a logical conjunction of the five controls out of Toffoli gates and ancilla bits. Uncomputation is used to restore the ancilla bits to their original states before finishing.

Uncomputation is a technique, used in reversible circuits, for cleaning up temporary effects on ancilla bits so that they can be re-used.[1]

Uncomputation is a fundamental step in quantum computing algorithms. Whether or not intermediate effects have been uncomputed affects how states interfere with each other when measuring results.[2]

The process is primarily motivated by the principle of implicit measurement.[3], which states that discarding a register during computation is physically equivalent to measuring it. Failure to uncompute garbage registers can have unintentional consequences. For example, if we take the state where and are garbage registers. Then, if we do not apply any further operations to those registers, according to the principle of implicit measurement, the entangled state has been measured, resulting in a collapse to either or with probability . What makes this undesirable is that wave-function collapse occurs before the program terminates, and thus may not yield the expected result.


  1. ^ Aaronson, Scott; Grier, Daniel; Schaeffer, Luke (2015). "The Classification of Reversible Bit Operations". arXiv:1504.05155 [quant-ph].
  2. ^ Aaronson, Scott (2002). "Quantum Lower Bound for Recursive Fourier Sampling". Quantum Information and Computation ():, 00. 3 (2): 165–174. arXiv:quant-ph/0209060. Bibcode:2002quant.ph..9060A. doi:10.26421/QIC3.2-7.
  3. ^ Nielsen, Michael; Chuang, Isaac. "Quantum Computation and Quantum Information"