En la computación cuántica tolerante a fallas, hacemos una distinción entre física qubits y qubits lógicos .
nortenorte qubits son qubits lógicos. Cuando solicitamos una transformación cuántica de Fourier en una colección de qubits, estos también serán qubits lógicos. Esperamos que los qubits lógicos y las operaciones que realizamos en ellos estén completamente libres de errores, tal como lo hacemos con los bits y las operaciones en las computadoras normales.
Los qubits físicos son los que realmente existen, y son ruidosos. Esto es lo que usamos para hacer qubits lógicos, pero generalmente se necesitan muchos qubits físicos para hacer un qubit lógico. Esto se debe a la gran redundancia necesaria para poder detectar y corregir errores.
El diseño del código real ejecutado en qubits físicos se realizará en capas. Un ingeniero de software de corrección de errores cuánticos diseñará los qubits lógicos escribiendo el programa necesario para implementar el código de corrección de errores cuánticos. Para cada operación que alguien pueda necesitar en un algoritmo, diseñarán una versión compatible con corrección de errores, que realice la operación en los qubits lógicos de una manera que permita detectar y corregir sus imperfecciones.
Entonces el programador vendrá y escribirá su programa. No necesitarán pensar en qubits físicos o corrección de errores en absoluto.
Finalmente, el compilador combinará todo para crear la versión tolerante a fallas del programa que se ejecutará en los qubits físicos. Esto no se parecerá en nada a lo que escribió el programador. No parecerá una alternancia constante de cosas que escribió el programador, seguido de cosas de corrección de errores para limpiarlo. Se ocupará casi por completo de detectar y corregir los errores que ocurren constantemente, con pequeñas perturbaciones para implementar el algoritmo.
Como referencia, creo que es mejor recomendar algo que explique cómo se implementan las operaciones en qubits lógicos en qubits físicos a través de un código de corrección de errores. Uno de mis propios trabajos hace este trabajo, al explicar esto para una variedad de formas de obtener operaciones lógicas en el código de superficie. También tiene referencias a muchas obras de otros en la misma área.