La plupart des algorithmes quantiques réversibles utilisent des portes standard comme la porte de Toffoli (CCNOT) ou la porte de Fredkin (CSWAP). Étant donné que certaines opérations nécessitent une constante comme entrée et le nombre d'entrées et de sorties est égal, qubits à ordures (ou qubits indésirables ) apparaissent au cours du calcul.
Donc, un circuit principal comme devient en fait ,
où représente le qubit de déchets (s).
Les circuits qui préservent la valeur d'origine se retrouvent avec
Je comprends que les qubits d'ordures sont inévitables si nous voulons que le circuit reste réversible, mais de nombreuses sources prétends qu'il est important de les éliminer. Pourquoi en est-il ainsi?
En raison de demandes de sources, voir par exemplecet article arXiv, p. 8, qui dit
Cependant, chacune de ces opérations simples contient un certain nombre de qubits auxiliaires supplémentaires, qui servent à stocker les résultats intermédiaires, mais ne sont pas pertinents à la fin. Afin de ne pas gaspiller d'espace [sic] inutile, il est donc important de remettre ces qubits à 0 pour pouvoir les réutiliser
ou ce papier arXiv qui dit
L'élimination des qubits d'ordures et des qubits d'ancilla est essentielle dans la conception d'un circuit quantique efficace.
ou les nombreuses autres sources - une recherche google produit de nombreux hits.
la source
If you want to use a quantum circuit as a subroutine (such as an oracle) to a quantum algorithm that makes use of interference, you must allow interference by a process known as uncomputing your ancillary (or, in your words, garbage) qubits. Uncomputing is always possible: Since your gates are reversible, you can just apply their inverse. That is, after the step you mentioned,|x⟩|0⟩|0⟩↦|x⟩|f(x)⟩|g⟩ , you perform another computation (or uncomputation) that leads to |x⟩|f(x)⟩|0⟩ .
la source