O papel das portas T e das fábricas T na computação quântica
Este artigo descreve o papel das portas T e fábricas T na computação quântica tolerante a falhas. Dando um algoritmo quântico, a estimativa dos recursos necessários para executar as portas T e fábricas T torna-se crucial para determinar a viabilidade do algoritmo. O Azure Quantum Resource Estimator calcula o número de estados T necessários para executar o algoritmo, o número de qubits físicos para uma única fábrica T e o tempo de execução da fábrica T.
Conjunto universal de portas quânticas
De acordo com os critérios de DiVincenzo, um computador quântico escalável deve ser capaz de implementar um conjunto universal de portas quânticas. Um conjunto universal contém todas as portas necessárias para realizar qualquer computação quântica, ou seja, qualquer computação deve se decompor de volta em uma sequência finita de portas universais. No mínimo, um computador quântico deve ser capaz de mover qubits únicos para qualquer posição na Esfera de Bloch (usando portas de qubit único), bem como introduzir emaranhamento no sistema, o que requer uma porta multi-qubit.
Existem apenas quatro funções que mapeiam um bit para um bit em um computador clássico. Em contraste, há um número infinito de transformações unitárias em um único qubit em um computador quântico. Portanto, nenhum conjunto finito de operações quânticas primitivas ou portas pode replicar exatamente o conjunto infinito de transformações unitárias permitidas na computação quântica. Isso significa que, ao contrário da computação clássica, é impossível para um computador quântico implementar todos os programas quânticos possíveis exatamente usando um número finito de portas. Assim, os computadores quânticos não podem ser universais no mesmo sentido dos computadores clássicos. Como resultado, quando dizemos que um conjunto de portas é universal para a computação quântica, na verdade queremos dizer algo um pouco mais fraco do que queremos dizer com a computação clássica.
Para a universalidade, é necessário que um computador quântico apenas se aproxime de cada matriz unitária dentro de um erro finito usando uma sequência de porta de comprimento finito.
Em outras palavras, um conjunto de portões é um conjunto de portas universais se qualquer transformação unitária pode ser aproximadamente escrita como um produto de portões desse conjunto. É necessário que, para qualquer limite de erro prescrito, existam portas $G_, G_{2}, \ldots G_N$ do conjunto de portas{1} de tal forma que
$$ G_N G_{N-1}\cdots G_2 G_1 \aproximadamente U. $$
Como a convenção para a multiplicação matricial é multiplicar da direita para a esquerda, a primeira operação de porta nesta sequência, $G_N$, é na verdade a última aplicada ao vetor de estado quântico. Mais formalmente, tal conjunto de portas é dito ser universal se para cada tolerância ao $erro \epsilon>0$ existe $G_1, \ldots, G_N$ tal que a distância entre $G_N\ldots G_1$ e $U$ é no máximo $\epsilon$. Idealmente, o valor de N$ necessário para atingir esta distância de \epsilon$ deve ser dimensionado $$polilogaritmicamente com $1/\epsilon$.
Por exemplo, o conjunto formado pelas portas Hadamard, CNOT e T é um conjunto universal, a partir do qual qualquer computação quântica (em qualquer número de qubits) pode ser gerada. O conjunto de portas Hadamard e T gera qualquer porta de qubit único:
$$H=\frac{1}{\sqrt{ 1 amp; 1 \\ 1 &-1 \end{bmatrix}, \qquad T=\begin{bmatrix} 1 & 0 \\ 0 & e^{i\pi/4}\end{bmatrix}.&{2}}\begin{bmatrix} $$
Em um computador quântico, os portões quânticos podem ser classificados em duas categorias: portões Clifford e portões não-Clifford, neste caso, o portão T. Programas quânticos feitos apenas a partir de portões Clifford podem ser simulados eficientemente usando um computador clássico e, portanto, portões não-Clifford são necessários para obter vantagem quântica. Em muitos esquemas de correção de erros quânticos (QEC), os chamados portões Clifford são fáceis de implementar, ou seja, exigem muito poucos recursos em termos de operações e qubits para implementar falhas tolerantemente, enquanto os portões não-Clifford são bastante caros quando exigem tolerância a falhas. Em um conjunto de portas quânticas universais, o portão T é comumente usado como o portão não-Clifford.
O conjunto padrão de portas Clifford de qubit único, incluído por padrão em Q#, inclui
$$ H=\frac{{1}{\sqrt{{2}}\begin{bmatrix} 1 & 1 \\ 1 &-1 \end{bmatrix} , \qquad S =\begin{bmatrix} 1 & 0 \\ 0 & i \end{bmatrix}= T^2, \qquad X=\begin{bmatrix} 0 & \\ 1 1& 0 \end{bmatrix}= HT^4H, $$
$$ Y =\begin{bmatrix} 0 & -i \\ i & 0 \end{bmatrix}=T^2HT^4 HT^6, \qquad Z=\begin{bmatrix}1& \\ 0 0&-1 \end{bmatrix}=T^4. $$
Juntamente com o portão não-Clifford (o portão T), essas operações podem ser compostas para aproximar qualquer transformação unitária em um único qubit.
Fábricas T no Azure Quantum Resource Estimator
A preparação da porta T não-Clifford é crucial porque as outras portas quânticas não são suficientes para a computação quântica universal. Para implementar operações não-Clifford para algoritmos de escala prática, são necessárias portas T de baixa taxa de erro (ou estados T). No entanto, eles podem ser difíceis de implementar diretamente em qubits lógicos, e também podem ser difíceis para alguns qubits físicos.
Em um computador quântico tolerante a falhas, os estados T de baixa taxa de erro necessários são produzidos usando uma fábrica de destilação de estado T, ou fábrica T para abreviar. Essas fábricas T normalmente envolvem uma sequência de rodadas de destilação, onde cada rodada recebe muitos estados T barulhentos codificados em um código de distância menor, processa-os usando uma unidade de destilação e produz menos estados T menos barulhentos codificados em um código de distância maior, com o número de rodadas, unidades de destilação e distâncias sendo parâmetros que podem ser variados. Este procedimento é iterado, onde os estados T de saída de uma rodada são alimentados na próxima rodada como entradas.
Com base na duração da fábrica T, o Estimador de Recursos Quânticos do Azure determina com que frequência uma fábrica T pode ser invocada antes de exceder o tempo de execução total do algoritmo e, portanto, quantos estados T podem ser produzidos durante o tempo de execução do algoritmo. Normalmente, mais estados T são necessários do que o que pode ser produzido dentro das invocações de uma única fábrica T durante o tempo de execução do algoritmo. Para produzir mais estados T, o Estimador de Recursos usa cópias das fábricas T.
Estimativa física da fábrica T
O Estimador de Recursos calcula o número total de estados T necessários para executar o algoritmo e o número de qubits físicos para uma única fábrica T e seu tempo de execução.
O objetivo é produzir todos os estados T dentro do tempo de execução do algoritmo com o menor número possível de cópias de fábrica T. O diagrama a seguir mostra um exemplo do tempo de execução do algoritmo e o tempo de execução de uma fábrica T. Você pode ver que o tempo de execução da fábrica T é menor do que o tempo de execução do algoritmo. Neste exemplo, uma fábrica T pode destilar um estado T. Colocam-se duas questões:
- Com que frequência a fábrica T pode ser invocada antes do fim do algoritmo?
- Quantas cópias da rodada de destilação de fábrica T são necessárias para criar o número de estados T necessários durante o tempo de execução do algoritmo?
Antes do fim do algoritmo, a fábrica T pode ser invocada oito vezes, o que é chamado de rodada de destilação. Por exemplo, se você precisar de 30 estados T, uma única fábrica T é invocada oito vezes durante o tempo de execução do algoritmo e, portanto, ele cria oito estados T. Então você precisa de quatro cópias da rodada de destilação da fábrica T funcionando em paralelo para destilar os 30 estados T necessários.
Nota
Observe que as cópias de fábrica T e as invocações de fábrica T não são as mesmas.
As fábricas de destilação do estado T são implementadas em uma sequência de rodadas, onde cada rodada consiste em um conjunto de cópias de unidades de destilação funcionando em paralelo. O Estimador de Recursos calcula quantos qubits físicos são necessários para executar uma fábrica T e por quanto tempo a fábrica T é executada, entre outros parâmetros necessários.
Você só pode fazer invocações completas de uma fábrica T. Portanto, pode haver situações em que o tempo de execução acumulado de todas as invocações de fábrica T é menor do que o tempo de execução do algoritmo. Como os qubits são reutilizados por diferentes rodadas, o número de qubits físicos para uma fábrica T é o número máximo de qubits físicos usados para uma rodada. O tempo de execução da fábrica T é a soma do tempo de execução em todas as rodadas.
Nota
Se a taxa de erro física da porta T for menor do que a taxa de erro de estado T lógica necessária, o Estimador de Recursos não poderá executar uma boa estimativa de recursos. Ao enviar um trabalho de estimativa de recursos, você pode descobrir que a fábrica T não pode ser encontrada porque a taxa de erro de estado T lógica necessária é muito baixa ou muito alta.
Para obter mais informações, consulte o Apêndice C de Avaliação de requisitos para dimensionar para vantagem quântica prática.