GSJ24Factory Clase
Implementa la fábrica mágica de cultivo de estado de Gidney, Shutty y Jones (2024) para producir lógica >>|<<T⟩ estados de las operaciones de nivel físico.
El cultivo del estado mágico aumenta gradualmente el tamaño y la confiabilidad de un estado mágico dentro de un parche de código de superficie, usando aproximadamente el mismo número de puertas físicas que una puerta CNOT de cirugía de lattice de confiabilidad equivalente. El enfoque refina las ideas de Knill (1996), Jones (2016), Chamberland (2020), Gidney (2023/2024), Bombin (2024) y Hirano (2024).
En comparación con los enfoques anteriores de destilación de estado mágico, el cultivo utiliza un orden de magnitud menos de redondeos cuánticos para alcanzar tasas de error lógicas tan bajas como 2·10⁻⁹ menores de 10⁻ruido uniforme despolarizado del circuito. La reducción del ruido del circuito a 5·10⁻⁴ mejora la tasa de error lógica factible a 4·10⁻¹¹.
La factoría se parametriza mediante datos de simulación calculados previamente (desde el muestreo de Monte Carlo en https://doi.org/10.5281/zenodo.13777072) que asignan tasas de error físicas a (logical_error, num_qubits, volumen, pasos) tuplas para pares de distancia admitidos.
Hiperparámetres: distancia: tupla (d_color, d_surface) especificando la distancia del código de color y la distancia de código expuesta usada en el protocolo de cultivo. Los valores admitidos son (3, 15) y (5, 15). Una distancia de código de color mayor (5 frente a 3) produce tasas de error lógicas más bajas a costa de un mayor número de cúbits y más pasos de tiempo.
Referencia:
C. Gidney, C. Shutty, C. Jones, "Cultivo del estado mágico: estados de crecimiento T con 78% reducción de la sobrecarga", arXiv:2409.17595 (2024). https://arxiv.org/abs/2409.17595
Datos de simulación: https://doi.org/10.5281/zenodo.13777072
Constructor
GSJ24Factory(syndrome_extraction_depth: int = 4, passthrough: bool = False, *, distance: tuple[int, int] = (3, 15))
Parámetros
| Nombre | Description |
|---|---|
|
syndrome_extraction_depth
|
Valor predeterminado: 4
|
|
passthrough
|
Valor predeterminado: False
|
Parámetros de palabra clave únicamente
| Nombre | Description |
|---|---|
|
distance
|
Valor predeterminado: (3, 15)
|
Métodos
| provided_isa | |
| required_isa |
provided_isa
provided_isa(impl_isa: ISA, ctx: ISAContext) -> Generator[ISA, None, None]
Parámetros
| Nombre | Description |
|---|---|
|
impl_isa
Requerido
|
|
|
ctx
Requerido
|
|
required_isa
static required_isa() -> ISARequirements
Atributos
syndrome_extraction_depth
Número de ciclos de código expuesta necesarios por extracción de síndrome. El valor predeterminado es 4.
syndrome_extraction_depth: int = 4
passthrough
Si es True, el ISA de salida incluye las instrucciones ISA de entrada (físicas) junto con los estados T lógicos generados. Si es False (valor predeterminado), solo se proporcionan los estados T lógicos.
passthrough: bool = False
distance
distance: tuple[int, int] = (3, 15)