Lección 11 de 13
Qudits: del cúbit a p niveles y el código de 3 cútrits
Los operadores X y Z de un qudit, el producto simpléctico con signo y el código de 3 cútrits [[3,1,2]]_3: detecta un error, corrige un borrón y reparte un secreto.
Al terminar sabrás:
- Definir X y Z para p niveles y usar ZX = ωXZ y el producto simpléctico con signo
- Calcular síndromes de un código estabilizador de qudits
- Describir el código de 3 cútrits: estados lógicos, operadores lógicos y distancia 2
- Explicar por qué detecta un error y corrige un borrón, pero no corrige un error
Si sabes multiplicar matrices, operar con números complejos y calcular un síndrome con una matriz de paridad (lo tienes en el curso de códigos correctores), puedes seguirlo. La física imprescindible (estado, medida, producto tensorial) se explica desde cero.
En la lección anterior cerramos el trayecto de los cúbits: Shor, el formalismo de estabilizadores y los códigos CSS hechos con Hamming. El relato sigue en pie (se dudaba de que fuera posible, y Shor lo cambió todo), pero ahora lo generalizamos. ¿Y si el sistema físico no tiene dos niveles sino tres, cinco o siete? Un sistema de niveles se llama qudit (con , un cútrit). Este es el puente hacia los códigos sobre cuerpos finitos del curso de códigos, y trae una sorpresa: un código diminuto de 3 cútrits que corrige un tipo de daño y no otro.
Aquí el número de niveles es un primo , así que las cuentas son en el cuerpo de la lección cuerpos finitos. Con primo se hace casi todo el curso. Al final de la lección 12 veremos qué cambia con niveles, que la lección 13 usa con . Para otros números de niveles hay teoría, pero no la vemos.
La idea
Casi todo lo de los cúbits se copia cambiando por . Lo único que se rompe es una cosa pequeña y esencial: con cúbits y anticonmutan (), y con niveles conmutan salvo una fase . Esa fase es la que hace que el signo del producto simpléctico importe. Y de ella sale el primer ejemplo de código que no existe para cúbits y sí para cútrits.
Repaso Enteros módulo p y raíces de la unidad
Con , los índices se toman módulo 3 (, ). El número cumple y . Para es .
Pauli para un qudit
Los estados de un qudit son vectores unitarios de , con base . Los dos errores básicos son
desplaza el nivel (cíclicamente) y gira la fase según el nivel. Cumplen y la relación clave
Razón de una línea: y . Para el cútrit:
Para , y no son hermíticas (por ejemplo ), pero sí unitarias, y es lo que hace falta.
Los errores se discretizan también aquí. Los operadores , con , son ortogonales para , así que son matrices independientes: una base de las matrices . Todo error de un qudit es una combinación , y por linealidad basta saber corregir los . Es el análogo exacto de . Un ejemplo: la matriz de unos del cútrit es .
qudits y el producto simpléctico con signo
Para se define . El grupo de Pauli son estos operadores multiplicados por una fase . Olvidando la fase, cada uno es un vector , y multiplicar es sumar vectores. El peso es el número de posiciones con .
El producto simpléctico, ahora con su signo, es
Si y , pasar por encima de cuesta cada vez, y sale
Conmutan si y solo si el producto simpléctico vale 0. Para cúbits el signo no se veía (porque módulo 2). Es antisimétrico: , y .
Estabilizadores y síndrome para qudits
Todo es igual que en la lección sobre estabilizadores. Un grupo estabilizador es un subgrupo abeliano del grupo de Pauli que no contiene con ; sus elementos son los estabilizadores del código. El código son los estados que fija todo . Con generadores independientes, : codifica qudits. Los parámetros se escriben .
El síndrome de un error es . Al medir el generador sobre no sale sino el valor propio (una de las raíces de la unidad). ¿Qué es medir un operador que no es hermítico? Como es unitario y , sus valores propios son con , y el espacio se parte en autoespacios ortogonales, uno por valor. Medir es la medida de la lección 2 con estos proyectores en lugar de dos: el resultado es una de las y el estado queda en ese autoespacio. La razón de que salga , igual que antes: . Y se corrige igual: se elige el error de menor peso con ese síndrome y se aplica su inverso.
El código de 3 cútrits
Tomamos cútrits y dos generadores:
¿Conmutan? . Sí. Con cúbits, el mismo par da : y anticonmutan y no hay código. Con tres niveles, el se hace y todo encaja. Es el ejemplo estrella de por qué importa que los generadores conmuten.
Con y sale : un cútrit lógico. Los estados lógicos son
En general es la suma de los con . Son ortonormales y y los dejan fijos (el primero baraja los tres sumandos, el segundo multiplica cada uno por ).
Operadores lógicos. Son los Pauli que conmutan con y y no están en el grupo estabilizador (ni siquiera cambiando su fase). Por ejemplo,
con y . Los dos pesan 2. Y no hay ningún operador lógico de peso 1: en la tabla de la sección siguiente, ninguno de los 8 errores no triviales de un cútrit tiene síndrome , así que ninguno conmuta con los dos generadores. La distancia es . El código es un .
Detecta un error, corrige un borrón, no corrige un error
Con , lo que dice la fórmula de la lección sobre distancia es: detecta error y corrige errores. Veámoslo con las tablas.
Detecta. Cualquiera de los 8 errores no triviales de un cútrit, en cualquiera de las 3 posiciones, tiene síndrome distinto de (en el orden , ):
| error | |||||
|---|---|---|---|---|---|
| síndrome |
(los otros tres, , y , se obtienen sumando). Esa fila es la misma en las tres posiciones.
No corrige. Mira lo que implica que el síndrome no dependa de la posición. Un error y un error dan el mismo síndrome , y no se puede saber cuál ocurrió. Si el decodificador adivina cuando fue , aplica , que es un operador lógico (de hecho ): el estado queda bien codificado pero cambiado, . Es la situación que ya conoces: dos errores de peso 1 con el mismo síndrome cuyo cociente está en , es decir, es un operador lógico.
Corrige un borrón. Un borrón (o borrado) es la pérdida de un cútrit cuya posición se conoce. Así lo vimos en errores y borrones: un código de distancia corrige borrones y solo errores, con . Aquí : se corrige un borrón y ningún error. Por qué es posible: supón que se pierde el cútrit 1. El estado codificado es . En los cútrits 2 y 3 restantes, con y , se calculan y . Ese reetiquetado es un unitario sobre los cútrits 2 y 3 (permuta los 9 estados de la base). Deja el estado : el cútrit 3 lleva el estado lógico intacto, y el cútrit 2 solo guarda el valor , entrelazado con el cútrit perdido y sin nada del secreto. La información estaba entera en los dos que quedan. La razón de fondo es la distancia: como no hay operadores lógicos de peso 1, ninguno cabe en la posición perdida, y por eso perder una posición conocida no borra información (con distancia , lo mismo vale para posiciones).
Reparto de un secreto cuántico
Lo mismo, visto al revés, es un esquema de reparto de secreto con umbral : el estado lógico se reparte entre tres personas, un cútrit cada una. Dos cualesquiera lo recuperan (es el borrón que acabamos de reparar, con tres posibles). Una sola no obtiene ninguna información. Lo que se puede saber mirando solo un cútrit lo resume su estado reducido: una matriz que da las probabilidades de cualquier medida hecha solo sobre ese cútrit. Aquí vale para cualquier : mida en la base que mida, cada resultado sale con probabilidad , como un cútrit totalmente aleatorio. Que no dependa del secreto es consecuencia de que no hay lógicos de peso 1: ningún operador sobre un solo cútrit distingue unos estados lógicos de otros. (Que sea justo se debe además a que ningún estabilizador actúa en un solo cútrit.)
Esto es el tema de R. Cleve, D. Gottesman y H.-K. Lo, «How to share a quantum secret», Phys. Rev. Lett. 83, 648 (1999): esquemas con umbral en que partes cualesquiera de las reconstruyen el secreto y no saben nada. Su primer ejemplo es precisamente este código de 3 cútrits como esquema . Muestran que la única limitación viene de la no clonación, que exige ( para ).
Ejemplo resuelto
Se produce el error en el cútrit 2 del estado . Calcula el síndrome, di qué sale al medir y explica por qué no se puede corregir.
Vector. en la posición 2 es .
Síndrome. Con : . Con : . Síndrome , que está en la tabla.
Qué se ve. Al medir sale y al medir sale . Se comprueba directamente: , así que . Aplicando : cada término pasa a tener , y , y sale . Bien.
Por qué no se corrige. El mismo síndrome lo producen en el cútrit 1, en el 2 y en el 3. Con el síndrome solo sabemos que «algo pasó en algún cútrit»: lo detectamos, pero no sabemos dónde. Si se hubiera perdido el cútrit 2 (un borrón: sabemos que es el 2), los cútrits 1 y 3 son y el perdido guardaba . El unitario los convierte en , porque y . El cútrit 1 queda con el mismo valor que el perdido, sin nada del secreto, y el cútrit 3 lleva intacto, como en el borrón del cútrit 1. Ojo: no basta con que salga en un cútrit. Con el cútrit 3 también acaba con la etiqueta , pero el cútrit 1 se queda con , y junto con el perdido () delata : el dato se estropea.
Ejercicios
Ejercicio 1
Calcula para y en , y comprueba que concuerda con .
Ver la solución
y , luego . Entonces , y multiplicando por a ambos lados, . Es , la misma relación que cumplen y de un cútrit: lo esperado de un cútrit lógico.
Ejercicio 2
Da el síndrome del error en el cútrit 3 y di qué otros errores de peso 1 tienen el mismo síndrome.
Ver la solución
El síndrome es lineal en el error. da y da , así que da . Como el síndrome no depende de la posición, también lo tienen en el cútrit 1 y en el 2. Son 3 errores con el mismo síndrome, y el código no puede distinguirlos.
Ejercicio 3
Un código tiene distancia . ¿Cuántos errores detecta, cuántos corrige, cuántos borrones corrige y cabe la mezcla de 1 error y 1 borrón? Después explica con el reparto de secreto por qué perder dos cútrits del código de 3 cútrits no se puede reparar.
Ver la solución
Detecta error, corrige errores y corrige borrón. La mezcla necesita : falso, no cabe. Si se pierden dos cútrits, queda uno solo, y su estado reducido es para cualquier estado lógico: no conserva ninguna información del secreto, así que ningún unitario ni ninguna otra operación puede reconstruirlo.
En resumen
- Para un qudit, y cumplen , y los operadores son base: los errores se discretizan.
- Con se tiene . El síndrome de es el valor propio .
- es un código para cútrits () y no existe para cúbits.
- Detecta un error o corrige un borrón, pero no corrige un error: borrones frente a errores.
- Es un reparto de secreto cuántico : dos cútrits recuperan el estado y uno solo es .
Siguiente lección: Códigos CSS sobre cuerpos finitos
Para profundizar
- A. Ketkar, A. Klappenecker, S. Kumar y P. K. Sarvepalli, Nonbinary stabilizer codes over finite fields (2006).
- R. Cleve, D. Gottesman y H.-K. Lo, How to share a quantum secret (1999).
- D. Gottesman, Stabilizer Codes and Quantum Error Correction (tesis doctoral) (1997).