Partilhar via


Portas T e fábricas T

Este artigo descreve a função das portas T e das fábricas T na computação quântica tolerante a falhas. Ao dar um algoritmo quântico, a estimativa dos recursos necessários para executar as portas T e as fábricas T torna-se crucial.

Conjunto universal de portas quânticas

De acordo com os critérios de DiVincenzo , um computador quântico dimensionável tem de 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 tem de se decompor novamente numa sequência finita de portas universais. No mínimo, um computador quântico tem de ser capaz de mover qubits únicos para qualquer posição no Bloch Sphere (utilizando portas de qubit único), bem como introduzir o entrelaçamento no sistema, o que requer uma porta multi-qubit.

Existem apenas quatro funções que mapeiam um bit a um bit num computador clássico. Por outro lado, existe um número infinito de transformações unitárias num único qubit num computador quântico. Portanto, nenhum conjunto finito de operações quânticas ou portas primitivas pode replicar exatamente o conjunto infinito de transformações unitárias permitidas na computação quântica. Isto 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 com 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, significamos algo ligeiramente mais fraco do que queremos dizer com computação clássica.

Para a universalidade, é necessário que um computador quântico se aproxima apenas de todas as matrizes unitárias dentro de um erro finito ao utilizar uma sequência de porta de comprimento finito.

Por outras palavras, um conjunto de portas é uma porta universal definida se qualquer transformação unitária puder ser escrita aproximadamente como um produto de portas deste conjunto. É necessário que, para qualquer erro prescrito vinculado, existam portas $G_, G_{2}, \ldots, G_N$ do conjunto de portas{1} de modo a que

$${G_N G_N-1}\cdots G_2 G_1 \approx U.$$

Uma vez que a convenção para multiplicação de matriz é 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 portões é considerado universal se para cada tolerância $de erro \epsilon>0$ existir $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 alcançar esta distância de $\epsilon$ deve dimensionar poly-logarithmicamente 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 portões 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} $$

Num computador quântico, as portas quânticas podem ser classificadas em duas categorias: portas Clifford e portas não Clifford, neste caso, a porta T. Os programas quânticos feitos apenas a partir de portas Clifford podem ser simulados de forma eficiente através de um computador clássico e, portanto, as portas não Clifford são necessárias para obter vantagens quânticas. Em muitos esquemas de correção de erros quânticos (QEC), as chamadas portas Clifford são fáceis de implementar, ou seja, necessitam de muito poucos recursos em termos de operações e qubits para implementar a falha de forma tolerante, enquanto as portas não Clifford são bastante dispendiosas quando exigem tolerância a falhas. Num conjunto de portões quânticos universal, a porta T é normalmente utilizada como a porta não Clifford.

O conjunto padrão de portas Clifford de qubit único, incluído por predefinição no Q#, incluir

$$ 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 a porta não Clifford (a porta T), estas operações podem ser compostas para aproximar qualquer transformação unitária num único qubit.

Fábricas T no Avaliador de Recursos do Azure Quantum

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, podem ser difíceis de implementar diretamente em qubits lógicos e também podem ser difíceis para alguns qubits físicos.

Num computador quântico tolerante a falhas, os estados T de baixa taxa de erros necessários são produzidos com uma fábrica de destilação de estado T ou fábrica T para abreviar. Normalmente, estas fábricas T envolvem uma sequência de rondas de destilação, em que cada ronda assume muitos estados T ruidosos codificados num código de distância mais pequeno, processa-os utilizando uma unidade de destilação e produz menos estados T menos ruidosos codificados num código de distância maior, com o número de arredondamentos, unidades de destilação e distâncias que podem ser parâmetros que podem ser variados. Este procedimento é iterado, em que os estados T de saída de uma ronda são introduzidos na próxima ronda como entradas.

Com base na duração da fábrica T, o Avaliador de Recursos do Azure Quantum determina a frequência com que 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 runtime do algoritmo. Normalmente, são necessários mais estados T do que os que podem ser produzidos nas invocações de uma única fábrica T durante o runtime do algoritmo. Para produzir mais estados T, o Avaliador de Recursos utiliza cópias das fábricas T.

Estimativa física da fábrica T

O Avaliador 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 o respetivo runtime.

O objetivo é produzir todos os estados T no runtime do algoritmo com o mínimo de cópias de fábrica T possível. O diagrama seguinte mostra um exemplo do runtime do algoritmo e do runtime de uma fábrica T. Pode ver que o runtime da fábrica T é mais curto do que o runtime do algoritmo. Neste exemplo, uma fábrica T pode destilar um estado T. Surgem duas questões:

  • Com que frequência a fábrica T pode ser invocada antes do fim do algoritmo?
  • Quantas cópias da ronda de destilação da fábrica T são necessárias para criar o número de estados T necessários durante o runtime do algoritmo?
Diagrama a mostrar o runtime do algoritmo (vermelho) em comparação com o runtime de uma fábrica T (azul). Antes do fim do algoritmo, a fábrica T pode ser executada oito vezes. Se precisarmos de 30 estados T e a fábrica de T puder ser executada 8 vezes durante o runtime, precisamos de 4 cópias das fábricas T em execução em paralelo para destilar 30 T estados.

Antes do fim do algoritmo, a fábrica T pode ser invocada oito vezes, que é denominada ronda de destilação. Por exemplo, se precisar de 30 estados T, uma única fábrica T é invocada oito vezes durante o runtime do algoritmo e, assim, cria oito estados T. Em seguida, precisa de quatro cópias da ronda de destilação da fábrica T em execução em paralelo para destilar os 30 estados T necessários.

Nota

Tenha em atenção 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 numa sequência de arredondamentos, em que cada ronda consiste num conjunto de cópias de unidades de destilação em execução em paralelo. O Avaliador de Recursos calcula quantos qubits físicos são necessários para executar uma fábrica T e durante quanto tempo a fábrica de T é executada, entre outros parâmetros necessários.

Só pode efetuar invocações completas de uma fábrica T. Por conseguinte, podem existir situações em que o runtime acumulado de todas as invocações de fábrica T é menor do que o runtime do algoritmo. Uma vez que os qubits são reutilizados por diferentes rondas, o número de qubits físicos para uma fábrica T é o número máximo de qubits físicos utilizados para uma ronda. O runtime da fábrica T é a soma do tempo de execução em todas as rondas.

Nota

Se a taxa de erro da porta T física for inferior à taxa de erro de estado T lógica necessária, o Avaliador de Recursos não pode efetuar uma boa estimativa de recursos. Quando submete uma tarefa de estimativa de recursos, poderá deparar-se com o facto de não ser possível encontrar a fábrica T porque a taxa de erros de estado T lógica necessária é demasiado baixa ou demasiado elevada.

Para obter mais informações, veja Apêndice C de Requisitos de Avaliação para dimensionar para vantagens quânticas práticas.

Passos seguintes