El código de Shor de 9 qubits
Ahora pasamos al código de Shor de 9 qubits, un código corrector de errores cuánticos que surge de la combinación de los dos códigos considerados en la sección anterior: el código de repetición de 3 bits para qubits, que permite la corrección de un solo error de inversión de bit, y la versión modificada de este código, que permite la corrección de un solo error de inversión de fase.
Descripción del código
El código de Shor de 9 qubits se obtiene mediante la concatenación de los dos códigos de la sección anterior. Esto significa que primero aplicamos una codificación que codifica un qubit en tres, y luego aplicamos la otra codificación a cada uno de los tres qubits de la primera codificación, lo que da un total de nueve qubits.
Más precisamente, aunque en este caso particular podríamos aplicar los dos códigos en cualquier orden, elegimos aplicar primero la versión modificada del código de repetición de 3 bits (que detecta errores de inversión de fase), y luego codificar cada uno de los tres qubits resultantes de forma independiente con el código de repetición de 3 bits original (que detecta errores de inversión de bit). Aquí hay una representación en diagrama de circuito de esta codificación.
Como sugiere la figura, consideraremos los nueve qubits del código de Shor agrupados en tres bloques de tres qubits cada uno, donde cada bloque se obtiene del segundo paso de codificación (el código de repetición de 3 bits ordinario). El código de repetición de 3 bits ordinario, aplicado aquí tres veces de forma independiente, se denomina en este contexto el código interno, mientras que el código externo es el código utilizado para el primer paso de codificación: la versión modificada del código de repetición de 3 bits que detecta errores de inversión de fase.
Alternativamente, podemos especificar el código describiendo cómo se codifican los dos estados de la base estándar de nuestro qubit original.
Una vez que sabemos esto, podemos determinar por linealidad cómo se codifica cualquier vector de estado de qubit arbitrario.
Corrección de errores de inversión de bit y de fase
Errores y puertas CNOT
Para analizar cómo los errores y afectan a las codificaciones de qubits — tanto para el código de Shor de 9 qubits como para otros códigos —, es útil observar algunas relaciones simples entre estos errores y las puertas CNOT. Al inicio del análisis del código de Shor de 9 qubits, es un buen momento para hacerlo.
Los siguientes diagramas de circuito ilustran tres relaciones fundamentales entre las puertas y las puertas CNOT. Concretamente: aplicar una puerta al qubit objetivo antes de una CNOT equivale a invertir el orden y realizar la CNOT primero, pero aplicar una puerta al qubit de control antes de una CNOT equivale a aplicar puertas a ambos qubits después de la CNOT. Finalmente, aplicar puertas a ambos qubits antes de una CNOT equivale a realizar la CNOT primero y luego aplicar una puerta al qubit de control. Estas relaciones se pueden verificar mediante las multiplicaciones matriciales necesarias o calculando la acción de los circuitos sobre los estados de la base estándar.
La situación es similar para las puertas , excepto que los roles del qubit de control y del qubit objetivo se intercambian. En particular, tenemos las tres relaciones representadas por los siguientes circuitos cuánticos.
Corrección de errores de inversión de bit
Ahora consideremos cómo se pueden detectar y corregir errores utilizando el código de Shor de 9 qubits, comenzando con los errores de inversión de bit — que en adelante, por brevedad, denominaremos errores .
Para detectar y corregir errores , podemos tratar cada uno de los tres bloques de la codificación por separado. Cada bloque es una codificación de un qubit con el código de repetición de 3 bits, que protege contra errores — por lo que, aplicando las mediciones de síndrome y las correcciones de errores descritas anteriormente a cada bloque, podemos detectar y corregir hasta un error por bloque. Así, si hay a lo sumo un error en los nueve qubits de la codificación, este error será detectado y corregido por este procedimiento.
En resumen: la corrección de errores de inversión de bit es sencilla para este código, ya que el código interno corrige errores de inversión de bit.
Corrección de errores de inversión de fase
A continuación, consideremos los errores de inversión de fase, o errores para abreviar. Esta vez no es tan claro qué hacer, ya que el código externo es el que detecta errores , pero el código interno parece estar de alguna manera "en el camino", lo que hace la detección y corrección de estos errores un poco más difícil.
Supongamos que un error ocurre en uno de los 9 qubits del código de Shor, como se muestra en este diagrama.
Ya hemos observado lo que sucede cuando ocurre un error mientras usamos el código de repetición de 3 bits — equivale a un error que ocurre antes de la codificación. En el contexto del código de Shor de 9 qubits, esto significa que un error en cualquiera de los tres qubits dentro de un bloque siempre tiene el mismo efecto, que corresponde a un error en el qubit correspondiente antes de la aplicación del código interno.
El diagrama de circuito anterior, por ejemplo, es equivalente al siguiente diagrama. Esto se puede justificar usando las relaciones entre y las puertas CNOT descritas anteriormente, o simplemente evaluando los circuitos sobre un estado de qubit arbitrario .
Esto sugiere una forma de detectar y corregir errores : decodificar el código interno, de modo que obtengamos los tres qubits de la codificación externa junto con seis qubits de trabajo inicializados. Luego podemos verificar estos tres qubits del código externo en busca de errores y finalmente volver a codificar con el código interno para regresar a la codificación de 9 qubits que obtenemos del código de Shor. Si detectamos un error , podemos corregirlo antes de volver a codificar con el código interno, o después, aplicando una puerta a uno de los qubits en ese bloque.
Aquí hay un diagrama de circuito que contiene el circuito de codificación y el error sugerido anteriormente, junto con los pasos recién descritos (pero no el paso de corrección real).
En este ejemplo concreto, el resultado de la medición del síndrome es , lo que identifica el error como ocurrido en uno de los qubits del bloque central.
Una ventaja de corregir los errores después del paso de recodificación en lugar de antes es que el circuito anterior se puede simplificar. El siguiente circuito es equivalente, pero requiere cuatro puertas CNOT menos.
Nuevamente, el síndrome no indica qué qubit ha sido afectado por un error , sino qué bloque ha experimentado un error , siendo el efecto el mismo independientemente de qué qubit dentro del bloque fue afectado. Podemos entonces corregir el error aplicando una puerta a uno de los tres qubits del bloque afectado.
Por cierto, aquí vemos un ejemplo de degeneración en un código corrector de errores cuánticos: podemos corregir ciertos errores (en este caso errores ) sin poder identificarlos de manera única.
Errores simultáneos de inversión de bit y de fase
Hemos visto ahora cómo se pueden detectar y corregir tanto los errores como los errores utilizando el código de Shor de 9 qubits — en particular, cómo se puede detectar y corregir a lo sumo un error o a lo sumo un error . Supongamos ahora que ocurren tanto un error de inversión de bit como un error de inversión de fase, posiblemente en el mismo qubit. Resulta que en esta situación no es necesario hacer nada diferente de lo ya discutido — el código puede detectar y corregir hasta un error y un error simultáneamente, sin modificación alguna.
Más precisamente, los errores se detectan aplicando la medición de síndrome del código de repetición de 3 bits ordinario, que se aplica por separado a cada uno de los tres bloques de tres qubits; y los errores se detectan mediante el procedimiento descrito justo arriba, que equivale a decodificar el código interno, realizar la medición de síndrome para el código de repetición de 3 bits modificado para inversiones de fase, y luego volver a codificar. Estos dos pasos de detección de errores — así como las correcciones correspondientes — se pueden realizar de manera completamente independiente, y de hecho no importa en qué orden se realicen.
Para entender por qué esto es así, considera el siguiente diagrama de circuito, en el que tanto un error como un error han afectado al qubit inferior del bloque central.
Primero, observamos que el orden de los errores no importa, en el sentido de que intercambiar la posición de los errores y produce un circuito equivalente. Aquí está claro: y no conmutan, anticonmutan: