Pular para o conteúdo principal

Procedimento de estimação de fase

A seguir, vamos discutir o procedimento de estimação de fase, que é um algoritmo quântico para resolver o problema de estimação de fase.

Começaremos com um aquecimento de baixa precisão, que explica a intuição básica por trás do método. Em seguida, falaremos sobre a transformada quântica de Fourier, que é uma operação quântica importante usada no procedimento de estimação de fase, bem como sua implementação em circuito quântico. Com a transformada quântica de Fourier em mãos, descreveremos o procedimento de estimação de fase em sua generalidade completa e analisaremos seu desempenho.

Aquecimento: aproximando fases com baixa precisão

Começaremos com algumas versões simples do procedimento de estimação de fase que fornecem soluções de baixa precisão para o problema de estimação de fase. Isso é útil para explicar a intuição por trás do procedimento geral que veremos um pouco mais adiante na lição.

Usando o phase kickback

Uma abordagem simples ao problema de estimação de fase, que nos permite aprender algo sobre o valor θ\theta que buscamos, é baseada no fenômeno do phase kick-back. Como veremos, isso é essencialmente uma versão de um único qubit do procedimento geral de estimação de fase a ser discutido mais adiante na lição.

Como parte da entrada para o problema de estimação de fase, temos um circuito quântico unitário para a operação U.U. Podemos usar a descrição desse circuito para criar um circuito para uma operação controlada-UU, que pode ser representada como sugere esta figura (com a operação U,U, vista como uma porta quântica, à esquerda e uma operação controlada-UU à direita).

Versões não controlada e controlada de uma operação unitária

Podemos criar um circuito quântico para uma operação controlada-UU adicionando primeiro um qubit de controle ao circuito de UU e, em seguida, substituindo cada porta no circuito de UU por uma versão controlada dessa porta — assim, nosso novo qubit de controle efetivamente controla cada porta individual no circuito de U.U. Isso exige que tenhamos uma versão controlada de cada porta no nosso circuito, mas sempre podemos construir circuitos para essas operações controladas caso elas não estejam incluídas no nosso conjunto de portas.

Agora considere o circuito a seguir, onde o estado de entrada ψ\vert\psi\rangle de todos os qubits exceto o de cima é o autovetor de estado quântico de U.U.

Um circuito de um único qubit para estimação de fase

As probabilidades de resultado da medição para este circuito dependem do autovalor de UU correspondente ao autovetor ψ.\vert\psi\rangle. Vamos analisar o circuito em detalhes para determinar exatamente como isso acontece.

Estados de um circuito de um único qubit para estimação de fase

O estado inicial do circuito é

π0=ψ0\vert\pi_0\rangle = \vert\psi\rangle \vert 0\rangle

e a primeira porta Hadamard transforma esse estado em

π1=ψ+=12ψ0+12ψ1.\vert\pi_1\rangle = \vert\psi\rangle \vert +\rangle = \frac{1}{\sqrt{2}} \vert\psi\rangle \vert 0\rangle + \frac{1}{\sqrt{2}} \vert\psi\rangle \vert 1\rangle.

Em seguida, a operação controlada-UU é executada, resultando no estado

π2=12ψ0+12(Uψ)1.\vert\pi_2\rangle = \frac{1}{\sqrt{2}} \vert\psi\rangle \vert 0\rangle + \frac{1}{\sqrt{2}} \bigl(U \vert\psi\rangle\bigr) \vert 1\rangle.

Usando a suposição de que ψ\vert\psi\rangle é um autovetor de UU com autovalor λ=e2πiθ,\lambda = e^{2\pi i\theta}, podemos expressar esse estado de forma alternativa como segue.

π2=12ψ0+e2πiθ2ψ1=ψ(120+e2πiθ21)\vert\pi_2\rangle = \frac{1}{\sqrt{2}} \vert\psi\rangle \vert 0\rangle + \frac{e^{2\pi i \theta}}{\sqrt{2}} \vert\psi\rangle \vert 1\rangle = \vert\psi\rangle \otimes \left( \frac{1}{\sqrt{2}} \vert 0\rangle + \frac{e^{2\pi i \theta}}{\sqrt{2}} \vert 1\rangle\right)

Aqui observamos o fenômeno do phase kickback. É ligeiramente diferente desta vez em comparação ao algoritmo de Deutsch e ao algoritmo de Deutsch-Jozsa, porque não estamos trabalhando com uma porta de consulta — mas a ideia é semelhante.

Por fim, a segunda porta Hadamard é aplicada. Após uma simplificação, obtemos esta expressão para o estado resultante.

π3=ψ(1+e2πiθ20+1e2πiθ21)\vert\pi_3\rangle = \vert\psi\rangle \otimes \left( \frac{1+ e^{2\pi i \theta}}{2} \vert 0\rangle + \frac{1 - e^{2\pi i \theta}}{2} \vert 1\rangle\right)

A medição, portanto, produz os resultados 00 e 11 com estas probabilidades:

p0=1+e2πiθ22=cos2(πθ)p1=1e2πiθ22=sin2(πθ).\begin{aligned} p_0 &= \left\vert \frac{1+ e^{2\pi i \theta}}{2} \right\vert^2 = \cos^2(\pi\theta)\\[1mm] p_1 &= \left\vert \frac{1- e^{2\pi i \theta}}{2} \right\vert^2 = \sin^2(\pi\theta). \end{aligned}

Aqui está um gráfico das probabilidades para os dois resultados possíveis, 00 e 1,1, como funções de θ.\theta.

Probabilidades de resultado do phase kickback

Naturalmente, as duas probabilidades sempre somam 1.1. Observe que quando θ=0,\theta = 0, o resultado da medição é sempre 0,0, e quando θ=1/2,\theta = 1/2, o resultado da medição é sempre 1.1. Portanto, embora o resultado da medição não revele exatamente qual é θ,\theta, ele nos fornece alguma informação sobre ele — e se nos fosse prometido que ou θ=0\theta = 0 ou θ=1/2,\theta = 1/2, poderíamos descobrir pelo circuito qual é o correto sem erro.

Intuitivamente falando, podemos pensar no resultado da medição do circuito como uma estimativa para θ\theta com "um bit de precisão." Em outras palavras, se escrevêssemos θ\theta em notação binária e o arredondássemos para um bit, teríamos um número assim:

0.a={0a=012a=1.0.a = \begin{cases} 0 & a = 0\\ \frac{1}{2} & a = 1. \end{cases}

O resultado da medição pode ser visto como uma estimativa para o bit a.a. Quando θ\theta não é nem 00 nem 1/2,1/2, há uma probabilidade não nula de que a estimativa esteja errada — mas a probabilidade de cometer um erro fica cada vez menor conforme nos aproximamos de 00 ou 1/2.1/2.

É natural perguntar qual papel as duas portas Hadamard desempenham neste procedimento:

  • A primeira porta Hadamard coloca o qubit de controle em uma superposição uniforme de 0\vert 0\rangle e 1,\vert 1\rangle, de modo que quando o phase kickback ocorre, ele acontece para o estado 1\vert 1\rangle e não para o 0\vert 0\rangle, criando uma diferença de fase relativa que afeta os resultados da medição. Se não fizéssemos isso e o phase kickback produzisse uma fase global, não teria nenhum efeito nas probabilidades de se obter diferentes resultados de medição.

  • A segunda porta Hadamard nos permite aprender algo sobre o número θ\theta através do fenômeno da interferência. Antes da segunda porta Hadamard, o estado do qubit do topo é

    120+e2πiθ21,\frac{1}{\sqrt{2}} \vert 0\rangle + \frac{e^{2\pi i \theta}}{\sqrt{2}} \vert 1\rangle,

    e se fôssemos medir esse estado, obteríamos 00 e 11 cada um com probabilidade 1/2,1/2, sem aprender nada sobre θ.\theta. Ao aplicar a segunda porta Hadamard, porém, fazemos com que o número θ\theta afete as probabilidades de saída.

Dobrando a fase

O circuito acima usa o fenômeno do phase kickback para aproximar θ\theta com um único bit de precisão. Um bit de precisão pode ser tudo que precisamos em algumas situações — mas para a fatoração vamos precisar de muito mais precisão do que isso. Uma pergunta natural é: como podemos aprender mais sobre θ?\theta?

Uma coisa muito simples que podemos fazer é substituir a operação controlada-UU em nosso circuito por duas cópias dessa operação, como neste circuito:

Estimação de fase de um único bit duplicada

Duas cópias de uma operação controlada-UU são equivalentes a uma operação controlada-U2U^2. Se ψ\vert\psi\rangle é um autovetor de UU com autovalor λ=e2πiθ,\lambda = e^{2\pi i \theta}, então esse estado também é um autovetor de U2,U^2, desta vez com autovalor λ2=e2πi(2θ).\lambda^2 = e^{2\pi i (2\theta)}.

Portanto, se executarmos esta versão do circuito, estamos efetivamente realizando o mesmo cálculo de antes, exceto que o número θ\theta é substituído por 2θ.2\theta. Aqui está um gráfico ilustrando as probabilidades de saída conforme θ\theta varia de 00 a 1.1.

Probabilidades de resultado do phase kickback duplo

Fazer isso pode de fato nos fornecer informações adicionais sobre θ.\theta. Se a representação binária de θ\theta for

θ=0.a1a2a3\theta = 0.a_1 a_2 a_3\cdots

então dobrar θ\theta efetivamente desloca a vírgula binária uma posição para a direita:

2θ=a1.a2a32\theta = a_1. a_2 a_3\cdots

E como estamos equiparando θ=1\theta = 1 com θ=0\theta = 0 ao percorrer o círculo unitário, vemos que o bit a1a_1 não influencia nossas probabilidades, e estamos efetivamente obtendo uma estimativa para o segundo bit após a vírgula binária se arredondarmos θ\theta para dois bits. Por exemplo, se soubéssemos de antemão que θ\theta era 00 ou 1/4,1/4, poderíamos confiar totalmente no resultado da medição para nos dizer qual é.

Não é imediatamente claro, porém, como essa estimativa deve ser conciliada com o que aprendemos do circuito original de phase kickback (não dobrado) para nos dar as informações mais precisas possíveis sobre θ.\theta. Então, vamos dar um passo atrás e considerar como proceder.

Estimação de fase com dois qubits

Em vez de considerar as duas opções descritas acima separadamente, vamos combiná-las em um único circuito, assim.

A configuração inicial para estimação de fase com dois qubits

As portas Hadamard após as operações controladas foram removidas e ainda não há medições aqui. Adicionaremos mais ao circuito conforme consideramos nossas opções para aprender o máximo possível sobre θ.\theta.

Se executarmos este circuito quando ψ\vert\psi\rangle for um autovetor de U,U, o estado dos qubits inferiores permanecerá ψ\vert\psi\rangle durante todo o circuito, e as fases serão "chutadas" para o estado dos dois qubits superiores. Vamos analisar o circuito cuidadosamente, por meio da figura a seguir.

Estados para estimação de fase com dois qubits

Podemos escrever o estado π1\vert\pi_1\rangle assim:

π1=ψ12a0=01a1=01a1a0.\vert\pi_1\rangle = \vert \psi\rangle \otimes \frac{1}{2} \sum_{a_0 = 0}^1 \sum_{a_1 = 0}^1 \vert a_1 a_0 \rangle.

Quando a primeira operação controlada-UU é executada, o autovalor λ=e2πiθ\lambda = e^{2\pi i\theta} é kickeado para a fase quando a0a_0 (o qubit do topo) é igual a 1,1, mas não quando é 0.0. Assim, podemos expressar o estado resultante dessa forma:

π2=ψ12a0=01a1=01e2πia0θa1a0.\vert\pi_2\rangle = \vert\psi\rangle \otimes \frac{1}{2} \sum_{a_0=0}^1 \sum_{a_1=0}^1 e^{2 \pi i a_0 \theta} \vert a_1 a_0 \rangle.

As segunda e terceira portas controladas-UU fazem algo semelhante, exceto para a1a_1 em vez de a0,a_0, e com θ\theta substituído por 2θ.2\theta. Podemos expressar o estado resultante assim:

π3=ψ12a0=01a1=01e2πi(2a1+a0)θa1a0.\vert\pi_3\rangle = \vert\psi\rangle\otimes\frac{1}{2}\sum_{a_0 = 0}^1 \sum_{a_1 = 0}^1 e^{2\pi i (2 a_1 + a_0)\theta} \vert a_1 a_0 \rangle.

Se pensarmos na string binária a1a0a_1 a_0 como representando um inteiro x{0,1,2,3}x \in \{0,1,2,3\} em notação binária, que é x=2a1+a0,x = 2 a_1 + a_0, podemos expressar esse estado de forma alternativa como segue.

π3=ψ12x=03e2πixθx\vert\pi_3\rangle = \vert \psi\rangle \otimes \frac{1}{2} \sum_{x = 0}^3 e^{2\pi i x \theta} \vert x \rangle

Nosso objetivo é extrair o máximo de informação possível sobre θ\theta a partir desse estado.

Neste ponto, vamos considerar um caso especial, em que nos é prometido que θ=y4\theta = \frac{y}{4} para algum inteiro y{0,1,2,3}.y\in\{0,1,2,3\}. Em outras palavras, temos θ{0,1/4,1/2,3/4},\theta\in \{0, 1/4, 1/2, 3/4\}, portanto podemos expressar esse número exatamente em notação binária com dois bits, como .00,00, .01,01, .10,10, ou .11.11. Em geral, θ\theta pode não ser um desses quatro valores, mas pensar nesse caso especial nos ajudará a descobrir como extrair informações sobre θ\theta da forma mais eficaz em geral.

Primeiro, vamos definir um vetor de estado de dois qubits para cada valor possível y{0,1,2,3}.y \in \{0, 1, 2, 3\}.

ϕy=12x=03e2πix(y4)x=12x=03e2πixy4x\vert \phi_y\rangle = \frac{1}{2} \sum_{x = 0}^3 e^{2\pi i x (\frac{y}{4})} \vert x \rangle = \frac{1}{2} \sum_{x = 0}^3 e^{2\pi i \frac{x y}{4}} \vert x \rangle

Após simplificar as exponenciais, podemos escrever esses vetores da seguinte forma.

ϕ0=120+121+122+123ϕ1=120+i21122i23ϕ2=120121+122123ϕ3=120i21122+i23\begin{aligned} \vert\phi_0\rangle & = \frac{1}{2} \vert 0 \rangle + \frac{1}{2} \vert 1 \rangle + \frac{1}{2} \vert 2 \rangle + \frac{1}{2} \vert 3 \rangle \\[3mm] \vert\phi_1\rangle & = \frac{1}{2} \vert 0 \rangle + \frac{i}{2} \vert 1 \rangle - \frac{1}{2} \vert 2 \rangle - \frac{i}{2} \vert 3 \rangle \\[3mm] \vert\phi_2\rangle & = \frac{1}{2} \vert 0 \rangle - \frac{1}{2} \vert 1 \rangle + \frac{1}{2} \vert 2 \rangle - \frac{1}{2} \vert 3 \rangle \\[3mm] \vert\phi_3\rangle & = \frac{1}{2} \vert 0 \rangle - \frac{i}{2} \vert 1 \rangle - \frac{1}{2} \vert 2 \rangle + \frac{i}{2} \vert 3 \rangle \end{aligned}

Esses vetores são ortogonais: se escolhermos qualquer par deles e calcularmos o produto interno, obtemos 0.0. Cada um é também um vetor unitário, portanto {ϕ0,ϕ1,ϕ2,ϕ3}\{\vert\phi_0\rangle, \vert\phi_1\rangle, \vert\phi_2\rangle, \vert\phi_3\rangle\} é uma base ortonormal. Portanto, sabemos imediatamente que existe uma medição capaz de discriminá-los perfeitamente — o que significa que, se nos for dado um deles sem saber qual, podemos descobrir qual é sem erro.

Para realizar essa discriminação com um circuito quântico, podemos primeiro definir uma operação unitária VV que transforma estados da base padrão nos quatro estados listados acima.

V00=ϕ0V01=ϕ1V10=ϕ2V11=ϕ3\begin{aligned} V \vert 00 \rangle & = \vert\phi_0\rangle \\ V \vert 01 \rangle & = \vert\phi_1\rangle \\ V \vert 10 \rangle & = \vert\phi_2\rangle \\ V \vert 11 \rangle & = \vert\phi_3\rangle \end{aligned}

Para escrever VV como uma matriz 4×4,4\times 4, basta tomar as colunas de VV como os estados ϕ0,,ϕ3.\vert\phi_0\rangle,\ldots,\vert\phi_3\rangle.

V=12(11111i1i11111i1i)V = \frac{1}{2} \begin{pmatrix} 1 & 1 & 1 & 1\\[1mm] 1 & i & -1 & -i\\[1mm] 1 & -1 & 1 & -1\\[1mm] 1 & -i & -1 & i \end{pmatrix}

Esta é uma matriz especial, e é provável que alguns leitores já a tenham encontrado antes: é a matriz associada à transformada discreta de Fourier de dimensão 44. Em vista desse fato, vamos chamá-la pelo nome QFT4\mathrm{QFT}_4 em vez de V.V. O nome QFT\mathrm{QFT} é uma abreviação de quantum Fourier transform — que é essencialmente apenas a transformada discreta de Fourier, vista como uma operação unitária. Discutiremos a transformada quântica de Fourier com mais detalhes e generalidade em breve.

QFT4=12(11111i1i11111i1i)\mathrm{QFT}_4 = \frac{1}{2} \begin{pmatrix} 1 & 1 & 1 & 1\\[1mm] 1 & i & -1 & -i\\[1mm] 1 & -1 & 1 & -1\\[1mm] 1 & -i & -1 & i \end{pmatrix}

Podemos aplicar a inversa dessa operação para ir no sentido contrário, transformando os estados ϕ0,,ϕ3\vert\phi_0\rangle,\ldots,\vert\phi_3\rangle de volta nos estados da base padrão 0,,3.\vert 0\rangle,\ldots,\vert 3\rangle. Se fizermos isso, podemos medir para descobrir qual valor y{0,1,2,3}y\in\{0,1,2,3\} descreve θ\theta como θ=y/4.\theta = y/4. Aqui está o diagrama de um circuito quântico que faz isso.

Estimação de fase com dois qubits

Para resumir, se executarmos este circuito quando θ=y/4\theta = y/4 para y{0,1,2,3},y\in\{0,1,2,3\}, o estado imediatamente antes das medições ocorrerem será ψy\vert \psi\rangle \vert y\rangle (com yy codificado como uma string binária de dois bits), portanto as medições revelarão o valor yy sem erro.

Este circuito é motivado pelo caso especial em que θ{0,1/4,1/2,3/4}\theta \in \{0,1/4,1/2,3/4\} — mas podemos executá-lo para qualquer escolha de UU e ψ,\vert \psi\rangle, e portanto para qualquer valor de θ,\theta, que desejarmos. Aqui está um gráfico das probabilidades de saída que o circuito produz para escolhas arbitrárias de θ.\theta.

Probabilidades de resultado da estimação de fase com dois qubits

Esta é uma melhora clara em relação à variante de um único qubit descrita anteriormente na lição. Não é perfeita — pode nos dar a resposta errada — mas a resposta está fortemente inclinada para valores de yy para os quais y/4y/4 está próximo de θ.\theta. Em particular, o resultado mais provável sempre corresponde ao valor de y/4y/4 mais próximo de θ\theta (equiparando θ=0\theta = 0 e θ=1\theta = 1 como antes), e pelo gráfico parece que esse valor mais próximo para xx sempre aparece com probabilidade um pouco acima de 40%.40\%. Quando θ\theta está exatamente no meio entre dois desses valores, como θ=0.375\theta = 0.375 por exemplo, os dois valores de yy igualmente próximos são igualmente prováveis.

Preparando-se para generalizar para muitos qubits

Dada a melhoria que acabamos de obter usando dois qubits de controle em vez de um, em conjunto com a inversa da transformada quântica de Fourier de dimensão 44, é natural considerar generalizá-la ainda mais — adicionando mais qubits de controle. Quando fazemos isso, obtemos o procedimento geral de estimação de fase. Veremos como isso funciona em breve, mas para descrevê-lo com precisão precisaremos discutir a transformada quântica de Fourier com maior generalidade, para ver como ela é definida em outras dimensões e como podemos implementá-la (ou sua inversa) com um circuito quântico.

Transformada Quântica de Fourier

A transformada quântica de Fourier é uma operação unitária que pode ser definida para qualquer dimensão inteira positiva N.N. Nesta seção, veremos como essa operação é definida e como ela pode ser implementada com um circuito quântico em mm qubits com custo O(m2)O(m^2) quando N=2m.N = 2^m.

As matrizes que descrevem a transformada quântica de Fourier são derivadas de uma operação análoga em vetores de dimensão NN conhecida como transformada discreta de Fourier. Essa operação pode ser vista de diferentes ângulos. Por exemplo, podemos pensar na transformada discreta de Fourier em termos puramente abstratos e matemáticos, como um mapeamento linear. Ou podemos pensá-la em termos computacionais, onde recebemos um vetor de dimensão NN de números complexos (usando notação binária para codificar as partes real e imaginária das entradas, por exemplo) e o objetivo é calcular o vetor de dimensão NN obtido ao aplicar a transformada discreta de Fourier. Nosso foco será numa terceira abordagem: ver essa transformação como uma operação unitária que pode ser realizada em um sistema quântico.

Existe um algoritmo eficiente para calcular a transformada discreta de Fourier em um vetor de entrada dado, conhecido como transformada rápida de Fourier. Ela tem aplicações em processamento de sinais e em muitas outras áreas, sendo considerada por muitos como um dos algoritmos mais importantes já descobertos. Como veremos, a implementação da transformada quântica de Fourier quando NN é uma potência de 2 se baseia exatamente na mesma estrutura subjacente que torna a transformada rápida de Fourier possível.

Definição da transformada quântica de Fourier

Para definir a transformada quântica de Fourier, vamos primeiro definir um número complexo ωN,\omega_N, para cada inteiro positivo N,N, da seguinte forma:

ωN=e2πiN=cos(2πN)+isin(2πN).\omega_N = e^{\frac{2\pi i}{N}} = \cos\left(\frac{2\pi}{N}\right) + i \sin\left(\frac{2\pi}{N}\right).

Esse é o número no círculo unitário complexo que obtemos partindo de 11 e nos movendo no sentido anti-horário por um ângulo de 2π/N2\pi/N radianos, ou seja, uma fração de 1/N1/N da circunferência do círculo. Aqui estão alguns exemplos:

ω1=1ω2=1ω3=12+32iω4=iω8=1+i2ω16=2+22+222iω1000.998+0.063i\begin{gathered} \omega_1 = 1\\[1mm] \omega_2 = -1\\[1mm] \omega_3 = -\frac{1}{2} + \frac{\sqrt{3}}{2} i\\[2mm] \omega_4 = i\\[1mm] \omega_8 = \frac{1+i}{\sqrt{2}}\\[3mm] \omega_{16} = \frac{\sqrt{2 + \sqrt{2}}}{2} + \frac{\sqrt{2 - \sqrt{2}}}{2} i\\[2mm] \omega_{100} \approx 0.998 + 0.063 i \end{gathered}

Agora podemos definir a transformada quântica de Fourier de dimensão NN, descrita por uma matriz N×NN\times N cujas linhas e colunas estão associadas aos estados da base padrão 0,,N1.\vert 0\rangle,\ldots,\vert N-1\rangle. Vamos precisar dessa operação apenas quando N=2mN = 2^m é uma potência de 22 para a estimação de fase, mas a operação pode ser definida para qualquer inteiro positivo N.N.

QFTN=1Nx=0N1y=0N1ωNxyxy\mathrm{QFT}_N = \frac{1}{\sqrt{N}} \sum_{x = 0}^{N-1} \sum_{y = 0}^{N-1} \omega_N^{xy} \vert x \rangle\langle y\vert

Como já foi dito, essa é a matriz associada à transformada discreta de Fourier de dimensão NN. Frequentemente o fator prefatorial de 1/N1/\sqrt{N} não é incluído na definição dessa matriz, mas precisamos incluí-lo para obter uma matriz unitária.

A seguir temos a transformada quântica de Fourier, escrita como matriz, para alguns valores pequenos de N.N.

QFT1=(1)\mathrm{QFT}_1 = \begin{pmatrix} 1 \end{pmatrix} QFT2=12(1111)\mathrm{QFT}_2 = \frac{1}{\sqrt{2}} \begin{pmatrix} 1 & 1\\[1mm] 1 & -1 \end{pmatrix} QFT3=13(11111+i321i3211i321+i32)\mathrm{QFT}_3 = \frac{1}{\sqrt{3}} \begin{pmatrix} 1 & 1 & 1\\[2mm] 1 & \frac{-1 + i\sqrt{3}}{2} & \frac{-1 - i\sqrt{3}}{2}\\[2mm] 1 & \frac{-1 - i\sqrt{3}}{2} & \frac{-1 + i\sqrt{3}}{2} \end{pmatrix} QFT4=12(11111i1i11111i1i)\mathrm{QFT}_4 = \frac{1}{2} \begin{pmatrix} 1 & 1 & 1 & 1\\[1mm] 1 & i & -1 & -i\\[1mm] 1 & -1 & 1 & -1\\[1mm] 1 & -i & -1 & i \end{pmatrix} QFT8=122(1111111111+i2i1+i211i2i1i21i1i1i1i11+i2i1+i211i2i1i21111111111i2i1i211+i2i1+i21i1i1i1i11i2i1i211+i2i1+i2)\mathrm{QFT}_8 = \frac{1}{2\sqrt{2}} \begin{pmatrix} 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1\\[2mm] 1 & \frac{1+i}{\sqrt{2}} & i & \frac{-1+i}{\sqrt{2}} & -1 & \frac{-1-i}{\sqrt{2}} & -i & \frac{1-i}{\sqrt{2}}\\[2mm] 1 & i & -1 & -i & 1 & i & -1 & -i\\[2mm] 1 & \frac{-1+i}{\sqrt{2}} & -i & \frac{1+i}{\sqrt{2}} & -1 & \frac{1-i}{\sqrt{2}} & i & \frac{-1-i}{\sqrt{2}}\\[2mm] 1 & -1 & 1 & -1 & 1 & -1 & 1 & -1\\[2mm] 1 & \frac{-1-i}{\sqrt{2}} & i & \frac{1-i}{\sqrt{2}} & -1 & \frac{1+i}{\sqrt{2}} & -i & \frac{-1+i}{\sqrt{2}}\\[2mm] 1 & -i & -1 & i & 1 & -i & -1 & i\\[2mm] 1 & \frac{1-i}{\sqrt{2}} & -i & \frac{-1-i}{\sqrt{2}} & -1 & \frac{-1+i}{\sqrt{2}} & i & \frac{1+i}{\sqrt{2}}\\[2mm] \end{pmatrix}

Observe, em particular, que QFT2\mathrm{QFT}_2 é outro nome para a operação de Hadamard.

Unitariedade

Vamos verificar que QFTN\mathrm{QFT}_N é unitária para qualquer escolha de N.N. Uma forma de fazer isso é mostrar que suas colunas formam uma base ortonormal. Podemos definir um vetor correspondente à coluna número y,y, começando em y=0y = 0 e indo até y=N1,y = N-1, da seguinte forma:

ϕy=1Nx=0N1ωNxyx.\vert\phi_y\rangle = \frac{1}{\sqrt{N}} \sum_{x = 0}^{N-1} \omega_N^{xy} \vert x \rangle.

Calculando o produto interno entre dois desses vetores quaisquer, obtemos a seguinte expressão:

ϕzϕy=1Nx=0N1ωNx(yz)\langle \phi_z \vert \phi_y \rangle = \frac{1}{N} \sum_{x = 0}^{N-1} \omega_N^{x (y - z)}

Podemos avaliar somas como essa usando a seguinte fórmula para a soma dos primeiros NN termos de uma série geométrica.

1+α+α2++αN1={αN1α1if α1Nif α=11 + \alpha + \alpha^2 + \cdots + \alpha^{N-1} = \begin{cases} \frac{\alpha^N - 1}{\alpha - 1} & \text{if } \alpha\neq 1\\[2mm] N & \text{if } \alpha=1 \end{cases}

Especificamente, podemos usar essa fórmula quando α=ωNyz.\alpha = \omega_N^{y-z}. Quando y=z,y = z, temos α=1,\alpha = 1, e aplicando a fórmula e dividindo por NN obtemos

ϕyϕy=1.\langle \phi_y \vert \phi_y \rangle = 1.

Quando yz,y\neq z, temos α1,\alpha \neq 1, e a fórmula revela o seguinte:

ϕzϕy=1NωNN(yz)1ωNyz1=1N11ωNyz1=0.\langle \phi_z \vert \phi_y \rangle = \frac{1}{N} \frac{\omega_N^{N(y-z)} - 1}{\omega_N^{y-z} - 1} = \frac{1}{N} \frac{1 - 1}{\omega_N^{y-z} - 1} = 0.

Isso ocorre porque ωNN=e2πi=1,\omega_N^N = e^{2\pi i} = 1, logo ωNN(yz)=1yz=1,\omega_N^{N(y-z)} = 1^{y-z} = 1, tornando o numerador zero, enquanto o denominador é não nulo pois ωNyz1.\omega_N^{y-z} \neq 1. Intuitivamente, o que estamos fazendo é somar um conjunto de pontos distribuídos ao longo do círculo unitário — e eles se cancelam, resultando em 00 quando somados.

Estabelecemos, portanto, que {ϕ0,,ϕN1}\{\vert\phi_0\rangle,\ldots,\vert\phi_{N-1}\rangle\} é um conjunto ortonormal,

ϕzϕy={1y=z0yz,\langle \phi_z \vert \phi_y \rangle = \begin{cases} 1 & y=z\\ 0 & y\neq z, \end{cases}

o que revela que QFTN\mathrm{QFT}_N é unitária.

Portas de fase controladas

Para implementar a transformada quântica de Fourier com um circuito quântico, precisaremos usar as portas de fase controlada. Lembre-se de que uma operação de fase é uma operação unitária de um qubit da forma

Pα=(100eiα)P_{\alpha} = \begin{pmatrix} 1 & 0\\[1mm] 0 & e^{i\alpha} \end{pmatrix}

para qualquer número real α.\alpha. A versão controlada dessa porta tem a seguinte matriz:

CPα=(100001000010000eiα)CP_{\alpha} = \begin{pmatrix} 1 & 0 & 0 & 0\\[1mm] 0 & 1 & 0 & 0\\[1mm] 0 & 0 & 1 & 0\\[1mm] 0 & 0 & 0 & e^{i\alpha} \end{pmatrix}

Para essa porta controlada, não importa qual qubit é o controle e qual é o alvo, pois as duas possibilidades são equivalentes. Podemos usar qualquer um dos seguintes símbolos para representar essa porta em diagramas de circuito quântico.

Quantum circuit diagram representation for controlled-phase gates

Na terceira forma, o rótulo α\alpha às vezes também é colocado na lateral da linha de controle ou abaixo do controle inferior, quando isso for conveniente.

Para realizar a transformada quântica de Fourier quando N=2mN = 2^m e m2,m\geq 2, vamos precisar de uma operação em mm qubits cuja ação sobre os estados da base padrão pode ser descrita como

yaω2mayya,\vert y \rangle \vert a \rangle \mapsto \omega_{2^m}^{ay} \vert y \rangle \vert a \rangle,

onde aa é um bit e y{0,,2m11}y \in \{0,\ldots,2^{m-1} - 1\} é um número codificado em notação binária como uma cadeia de m1m-1 bits. Isso pode ser feito usando portas de fase controlada generalizando o exemplo a seguir, para o qual m=5.m=5.

Quantum circuit diagram for phase injection

Em geral, para uma escolha arbitrária de m2,m\geq 2, o qubit do topo, correspondente ao bit a,a, pode ser visto como o controle, com as portas de fase PαP_{\alpha} variando de α=π/2m1\alpha = \pi/2^{m-1} no qubit correspondente ao bit menos significativo de yy até α=π2\alpha = \frac{\pi}{2} no qubit correspondente ao bit mais significativo de y.y. Essas portas de fase controlada comutam entre si e podem ser realizadas em qualquer ordem.

Implementação em circuito da QFT

Agora veremos como implementar a transformada quântica de Fourier com um circuito quando a dimensão N=2mN = 2^m é uma potência de 2.2. Existem, na verdade, múltiplas formas de implementar a transformada quântica de Fourier, mas essa é indiscutivelmente o método mais simples conhecido. Uma vez que sabemos como implementar a transformada quântica de Fourier com um circuito quântico, implementar sua inversa é direto: basta substituir cada porta por sua inversa (ou, equivalentemente, sua transposta conjugada) e aplicar as portas na ordem inversa. Todo circuito quântico composto apenas de portas unitárias pode ser invertido dessa forma.

A implementação tem natureza recursiva, e por isso é mais natural descrevê-la dessa forma. O caso base é m=1,m=1, em que a transformada quântica de Fourier é uma operação de Hadamard.

Para realizar a transformada quântica de Fourier em mm qubits quando m2,m \geq 2, podemos executar os seguintes passos, cujas ações descreveremos para estados da base padrão da forma xa,\vert x \rangle \vert a\rangle, onde x{0,,2m11}x\in\{0,\ldots,2^{m-1} - 1\} é um inteiro codificado como m1m-1 bits em notação binária e aa é um único bit.

  1. Primeiro aplique a transformada quântica de Fourier de dimensão 2m12^{m-1} aos m1m-1 qubits inferiores/da esquerda para obter este estado:

    (QFT2m1x)a=12m1y=02m11ω2m1xyya.\Bigl(\mathrm{QFT}_{2^{m-1}} \vert x \rangle\Bigr) \vert a\rangle = \frac{1}{\sqrt{2^{m-1}}} \sum_{y = 0}^{2^{m-1} - 1} \omega_{2^{m-1}}^{xy} \vert y \rangle \vert a \rangle.

    Isso é feito aplicando recursivamente o método descrito para um qubit a menos, usando a operação de Hadamard em um único qubit como caso base.

  2. Use o qubit superior/da direita como controle para injetar a fase ω2my\omega_{2^m}^y para cada estado da base padrão y\vert y\rangle dos m1m-1 qubits restantes (conforme descrito acima) para obter este estado:

    12m1y=02m11ω2m1xyω2mayya.\frac{1}{\sqrt{2^{m-1}}} \sum_{y = 0}^{2^{m-1} - 1} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} \vert y \rangle \vert a \rangle.
  3. Aplique uma porta de Hadamard no qubit superior/da direita para obter este estado:

    12my=02m11b=01(1)abω2m1xyω2mayyb.\frac{1}{\sqrt{2^{m}}} \sum_{y = 0}^{2^{m-1} - 1} \sum_{b=0}^1 (-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} \vert y \rangle \vert b \rangle.
  4. Permute a ordem dos qubits de forma que o bit menos significativo se torne o mais significativo, com todos os outros deslocados para cima/direita:

    12my=02m11b=01(1)abω2m1xyω2mayby.\frac{1}{\sqrt{2^{m}}} \sum_{y = 0}^{2^{m-1} - 1} \sum_{b=0}^1 (-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} \vert b \rangle \vert y \rangle.

Por exemplo, aqui está o circuito que obtemos para N=32=25.N = 32 = 2^5. Neste diagrama, os qubits recebem nomes que correspondem aos vetores da base padrão xa\vert x\rangle \vert a\rangle (para a entrada) e by\vert b\rangle \vert y\rangle (para a saída), para maior clareza.

Quantum circuit diagram for the 32-dimensional quantum Fourier transform

Análise

A fórmula-chave que precisamos para verificar que o circuito descrito acima implementa a transformada quântica de Fourier de dimensão 2m2^m é a seguinte:

(1)abω2m1xyω2may=ω2m(2x+a)(2m1b+y).(-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} = \omega_{2^m}^{(2x+ a)(2^{m-1}b + y)}.

Essa fórmula vale para qualquer escolha de inteiros a,a, b,b, x,x, e y,y, mas só vamos precisar dela para a,b{0,1}a,b\in\{0,1\} e x,y{0,,2m11}.x,y\in\{0,\ldots,2^{m-1}-1\}. Ela pode ser verificada expandindo o produto no expoente do lado direito:

ω2m(2x+a)(2m1b+y)=ω2m2mxbω2m2xyω2m2m1abω2may=(1)abω2m1xyω2may, \omega_{2^m}^{(2x+ a)(2^{m-1}b + y)} = \omega_{2^m}^{2^m xb} \omega_{2^m}^{2xy} \omega_{2^m}^{2^{m-1}ab} \omega_{2^m}^{ay} = (-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay},

onde a segunda igualdade usa a observação de que

ω2m2mxb=(ω2m2m)xb=1xb=1.\omega_{2^m}^{2^m xb} = \bigl(\omega_{2^m}^{2^m}\bigr)^{xb} = 1^{xb} = 1.

A transformada quântica de Fourier de dimensão 2m2^m é definida da seguinte forma para todo u{0,,2m1}.u\in\{0,\ldots,2^m - 1\}.

QFT2mu=12mv=02m1ω2muvv\mathrm{QFT}_{2^m} \vert u\rangle = \frac{1}{\sqrt{2^m}} \sum_{v = 0}^{2^m - 1} \omega_{2^m}^{uv} \vert v\rangle

Se escrevermos uu e vv como

u=2x+av=2m1b+y\begin{aligned} u & = 2x + a\\ v & = 2^{m-1}b + y \end{aligned}

para a,b{0,1}a,b\in\{0,1\} e x,y{0,,2m11},x,y\in\{0,\ldots,2^{m-1} - 1\}, obtemos

QFT2m2x+a=12my=02m11b=01ω2m(2x+a)(2m1b+y)b2m1+y=12my=02m11b=01(1)abω2m1xyω2mayb2m1+y.\begin{aligned} \mathrm{QFT}_{2^m} \vert 2x + a\rangle & = \frac{1}{\sqrt{2^m}} \sum_{y = 0}^{2^{m-1} - 1} \sum_{b=0}^1 \omega_{2^m}^{(2x+ a)(2^{m-1}b + y)} \vert b 2^{m-1} + y\rangle\\[2mm] & = \frac{1}{\sqrt{2^m}} \sum_{y = 0}^{2^{m-1} - 1} \sum_{b=0}^1 (-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} \vert b 2^{m-1} + y\rangle. \end{aligned}

Por fim, pensando nos estados da base padrão xa\vert x \rangle \vert a\rangle e by\vert b \rangle \vert y \rangle como codificações binárias de inteiros no intervalo {0,,2m1},\{0,\ldots,2^m-1\},

xa=2x+aby=2m1b+y,\begin{aligned} \vert x \rangle \vert a\rangle & = \vert 2x + a \rangle\\ \vert b \rangle \vert y \rangle & = \vert 2^{m-1}b + y\rangle, \end{aligned}

vemos que o circuito acima implementa a operação requerida. Se esse método para realizar a transformada quântica de Fourier parece notável, é porque realmente é: trata-se essencialmente da transformada rápida de Fourier na forma de um circuito quântico.

Por fim, vamos contar quantas portas são usadas no circuito descrito. As portas de fase controlada não fazem parte do conjunto de portas padrão que discutimos na lição anterior, mas, por ora, vamos ignorar isso e contar cada uma delas como uma única porta.

Seja sms_m o número de portas necessárias para cada possível escolha de m.m. Se m=1,m=1, a transformada quântica de Fourier é apenas uma operação de Hadamard, portanto

s1=1.s_1 = 1.

Se m2,m\geq 2, então no circuito acima precisamos de sm1s_{m-1} portas para a transformada quântica de Fourier em m1m-1 qubits, mais m1m-1 portas de fase controlada, mais uma porta de Hadamard e mais m1m-1 portas de troca (swap), portanto

sm=sm1+(2m1).s_m = s_{m-1} + (2m - 1).

Podemos obter uma expressão em forma fechada somando:

sm=k=1m(2k1)=m2.s_m = \sum_{k = 1}^m (2k - 1) = m^2.

Na prática, não precisamos de tantas portas de troca quanto o método descreve. Se reorganizarmos um pouco as portas, podemos empurrar todas as portas de troca para a direita e reduzir o número necessário a m/2.\lfloor m/2\rfloor. Assintoticamente, isso não é uma grande melhoria: ainda obtemos circuitos de tamanho O(m2)O(m^2) para realizar QFT2m.\mathrm{QFT}_{2^m}.

Se quisermos implementar a transformada quântica de Fourier usando apenas portas do nosso conjunto padrão, precisamos construir ou aproximar cada uma das portas de fase controlada com portas do nosso conjunto. O número necessário depende da precisão requerida, mas como função de mm o custo total permanece quadrático.

De fato, é possível aproximar a transformada quântica de Fourier com bastante precisão usando um número sub-quadrático de portas, aproveitando o fato de que PαP_{\alpha} é muito próxima da operação identidade quando α\alpha é muito pequeno — o que significa que podemos simplesmente omitir a maioria das portas de fase controlada sem perder muita precisão.

Procedimento geral e análise

Agora vamos examinar o procedimento de estimativa de fase de forma geral. A ideia é estender a versão de dois qubits da estimativa de fase que consideramos acima, da maneira natural sugerida pelo diagrama a seguir.

Procedimento de estimativa de fase

Observe que, para cada novo qubit de controle adicionado no topo, dobramos o número de vezes que a operação unitária UU é executada. Isso é indicado no diagrama pelas potências em UU para cada uma das operações unitárias controladas.

A forma mais direta de implementar uma operação UkU^k controlada para algum valor de kk é simplesmente repetir a operação UU controlada kk vezes. Se essa for de fato a metodologia utilizada, é preciso reconhecer que a adição de qubits de controle contribui significativamente para o tamanho do circuito: se temos mm qubits de controle, como o diagrama mostra, um total de 2m12^m - 1 cópias da operação UU controlada são necessárias. Isso significa que um custo computacional significativo é incorrido conforme mm aumenta — mas, como veremos, isso também leva a uma aproximação de θ\theta significativamente mais precisa.

É importante notar, entretanto, que para algumas escolhas de UU pode ser possível criar um circuito que implemente a operação UkU^k para valores grandes de kk de forma mais eficiente do que simplesmente repetir kk vezes o circuito para U.U. Veremos um exemplo específico disso no contexto da fatoração de inteiros mais adiante na lição, onde o algoritmo eficiente para exponenciação modular discutido na lição anterior entra em cena.

Agora vamos analisar o circuito recém-descrito. O estado imediatamente antes da transformada quântica de Fourier inversa é o seguinte:

12mx=02m1(Uxψ)x=ψ12mx=02m1e2πixθx.\frac{1}{\sqrt{2^m}} \sum_{x = 0}^{2^m - 1} \bigl( U^x \vert\psi\rangle \bigr) \vert x\rangle = \vert\psi\rangle \otimes \frac{1}{\sqrt{2^m}} \sum_{x = 0}^{2^m - 1} e^{2\pi i x\theta} \vert x\rangle.

Um caso especial

De maneira semelhante ao que fizemos no caso m=2m=2, vamos primeiro considerar o caso especial em que θ=y/2m\theta = y/2^m para y{0,,2m1}.y\in\{0,\ldots,2^m-1\}. Nesse caso, o estado antes da transformada quântica de Fourier inversa pode ser escrito alternativamente assim:

ψ12mx=02m1e2πixy2mx=ψ12mx=02m1ω2mxyx=ψQFT2my.\vert\psi\rangle \otimes \frac{1}{\sqrt{2^m}} \sum_{x = 0}^{2^m - 1} e^{2\pi i \frac{xy}{2^m}} \vert x\rangle = \vert\psi\rangle \otimes \frac{1}{\sqrt{2^m}} \sum_{x = 0}^{2^m - 1} \omega_{2^m}^{xy} \vert x\rangle = \vert\psi\rangle \otimes \mathrm{QFT}_{2^m} \vert y\rangle.

Assim, quando a transformada quântica de Fourier inversa é aplicada, o estado se torna

ψy\vert\psi\rangle \vert y\rangle

e as medições revelam yy (codificado em binário).

Limitando as probabilidades

Para outros valores de θ,\theta, ou seja, aqueles que não assumem a forma y/2my/2^m para um inteiro y,y, os resultados das medições não serão certos, mas podemos provar limites para as probabilidades dos diferentes resultados. A partir de agora, vamos considerar uma escolha arbitrária de θ\theta satisfazendo 0θ<1.0\leq \theta < 1.

Após a transformada quântica de Fourier inversa ser realizada, o estado do circuito é:

ψ12my=02m1x=02m1e2πix(θy/2m)y.\vert \psi \rangle \otimes \frac{1}{2^m} \sum_{y=0}^{2^m - 1} \sum_{x=0}^{2^m-1} e^{2\pi i x (\theta - y/2^m)} \vert y\rangle.

Assim, quando as medições nos mm qubits do topo são realizadas, observamos cada resultado yy com probabilidade

py=12mx=02m1e2πix(θy/2m)2.p_y = \left\vert \frac{1}{2^m} \sum_{x=0}^{2^m - 1} e^{2\pi i x (\theta - y/2^m)} \right\vert^2.

Para entender melhor essas probabilidades, vamos usar a mesma fórmula que vimos antes, para a soma da porção inicial de uma série geométrica.

1+α+α2++αN1={αN1α1if α1Nif α=11 + \alpha + \alpha^2 + \cdots + \alpha^{N-1} = \begin{cases} \frac{\alpha^N - 1}{\alpha - 1} & \text{if } \alpha\neq 1\\[2mm] N & \text{if } \alpha=1 \end{cases}

Podemos simplificar a soma que aparece na fórmula de pyp_y tomando α=e2πi(θy/2m).\alpha = e^{2\pi i (\theta - y/2^m)}. Eis o que obtemos.

x=02m1e2πix(θy/2m)={2mθ=y/2me2πi(2mθy)1e2πi(θy/2m)1θy/2m\sum_{x=0}^{2^m - 1} e^{2\pi i x (\theta - y/2^m)} = \begin{cases} 2^m & \theta = y/2^m\\[2mm] \frac{e^{2\pi i (2^m \theta - y)} - 1}{e^{2\pi i (\theta - y/2^m)} - 1} & \theta\neq y/2^m \end{cases}

Portanto, no caso em que θ=y/2m,\theta = y/2^m, encontramos que py=1p_y = 1 (como já sabíamos ao considerar esse caso especial), e no caso em que θy/2m,\theta \neq y/2^m, encontramos que

py=122me2πi(2mθy)1e2πi(θy/2m)12.p_y = \frac{1}{2^{2m}} \left\vert \frac{e^{2\pi i (2^m \theta - y)} - 1}{e^{2\pi i (\theta - y/2^m)} - 1}\right\vert^2.

Podemos aprender mais sobre essas probabilidades pensando em como os comprimentos de arco e de corda no círculo unitário se relacionam. Aqui está uma figura que ilustra as relações de que precisamos para qualquer número real δ[12,12].\delta\in \bigl[ -\frac{1}{2},\frac{1}{2}\bigr].

Ilustração da relação entre comprimentos de arco e de corda

Primeiro, o comprimento da corda (desenhado em azul) não pode ser maior do que o comprimento do arco (desenhado em roxo):

e2πiδ12πδ.\bigl\vert e^{2\pi i \delta} - 1\bigr\vert \leq 2\pi\vert\delta\vert.

Relacionando esses comprimentos na direção oposta, vemos que a razão entre o comprimento do arco e o comprimento da corda é máxima quando δ=±1/2,\delta = \pm 1/2, e nesse caso a razão é metade da circunferência do círculo dividida pelo diâmetro, que é π/2.\pi/2. Assim, temos

2πδe2πiδ1π2,\frac{2\pi\vert\delta\vert}{\bigl\vert e^{2\pi i \delta} - 1\bigr\vert} \leq \frac{\pi}{2},

e portanto

e2πiδ14δ.\bigl\vert e^{2\pi i \delta} - 1\bigr\vert \geq 4\vert\delta\vert.

Uma análise baseada nessas relações revela os dois fatos a seguir.

  1. Suponha que θ\theta seja um número real e que y{0,,2m1}y\in \{0,\ldots,2^m-1\} satisfaça

    θy2m2(m+1).\Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert \leq 2^{-(m+1)}.

    Isso significa que y/2my/2^m é ou a melhor aproximação de mm bits para θ,\theta, ou está exatamente no meio entre y/2my/2^m e (y1)/2m(y-1)/2^m ou (y+1)/2m,(y+1)/2^m, sendo portanto uma das duas melhores aproximações para θ.\theta.

    Vamos provar que pyp_y precisa ser bem grande nesse caso. Pela hipótese que estamos considerando, segue que 2mθy1/2,\vert 2^m \theta - y \vert \leq 1/2, então podemos usar a segunda observação acima sobre comprimentos de arco e de corda para concluir que

    e2πi(2mθy)142mθy=42mθy2m.\left\vert e^{2\pi i (2^m \theta - y)} - 1\right\vert \geq 4 \vert 2^m \theta - y \vert = 4 \cdot 2^m \cdot \Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert.

    Também podemos usar a primeira observação sobre comprimentos de arco e de corda para concluir que

    e2πi(θy/2m)12πθy2m.\left\vert e^{2\pi i (\theta - y/2^m)} - 1\right\vert \leq 2\pi \Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert.

    Aplicando essas duas desigualdades a pyp_y, obtemos

    py122m1622m4π2=4π20.405.p_y \geq \frac{1}{2^{2m}} \frac{16 \cdot 2^{2m}}{4 \pi^2} = \frac{4}{\pi^2} \approx 0.405.

    Isso explica nossa observação de que o melhor resultado ocorre com probabilidade maior que 40%40\% na versão m=2m=2 da estimativa de fase discutida anteriormente. Na verdade não é exatamente 40%, é 4/π2,4/\pi^2, e de fato esse limite vale para qualquer escolha de m.m.

  2. Agora suponha que y{0,,2m1}y\in \{0,\ldots,2^m-1\} satisfaça

    2mθy2m12.2^{-m} \leq \Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert \leq \frac{1}{2}.

    Isso significa que existe uma aproximação melhor z/2mz/2^m para θ\theta entre θ\theta e y/2m.y/2^m.

    Desta vez, vamos provar que pyp_y não pode ser muito grande. Podemos começar com a observação simples de que

    e2πi(2mθy)12,\left\vert e^{2\pi i (2^m \theta - y)} - 1\right\vert \leq 2,

    o que decorre do fato de que quaisquer dois pontos no círculo unitário podem diferir em valor absoluto em no máximo 2.2.

    Também podemos usar a segunda observação sobre comprimentos de arco e de corda acima, desta vez trabalhando com o denominador de pyp_y em vez do numerador, para concluir

    e2πi(θy/2m)14θy2m42m.\left\vert e^{2\pi i (\theta - y/2^m)} - 1\right\vert \geq 4\Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert \geq 4 \cdot 2^{-m}.

    Juntando as duas desigualdades, obtemos

    py122m41622m=14.p_y \leq \frac{1}{2^{2m}} \frac{4}{16 \cdot 2^{-2m}} = \frac{1}{4}.

    Note que, embora esse limite seja suficiente para nossos propósitos, ele é bastante grosseiro — a probabilidade costuma ser muito menor do que 1/4.1/4.

A conclusão importante dessa análise é que aproximações muito próximas de θ\theta têm alta probabilidade de ocorrer — obteremos a melhor aproximação de mm bits com probabilidade maior que 40%40\% — enquanto aproximações que se desviam mais de 2m2^{-m} são menos prováveis, com probabilidade limitada superiormente por 25%.25\%.

Dadas essas garantias, é possível aumentar nossa confiança repetindo o procedimento de estimativa de fase várias vezes, para reunir evidências estatísticas sobre θ.\theta. É importante notar que o estado ψ\vert\psi\rangle do conjunto inferior de qubits não é alterado pelo procedimento de estimativa de fase, portanto ele pode ser usado para executar o procedimento quantas vezes quisermos. Em particular, cada vez que executamos o circuito, obtemos a melhor aproximação de mm bits para θ\theta com probabilidade maior que 40%,40\%, enquanto a probabilidade de errar por mais de 2m2^{-m} é limitada por 25%.25\%. Se executarmos o circuito várias vezes e tomarmos o resultado que aparece com mais frequência, é portanto muito improvável que o resultado mais frequente seja aquele que ocorre no máximo 25%25\% das vezes. Como resultado, é muito provável que obtenhamos uma aproximação y/2my/2^m que esteja a menos de 1/2m1/2^m do valor θ.\theta. De fato, a pequena chance de errar por mais de 1/2m1/2^m decresce exponencialmente com o número de vezes que o procedimento é executado.

Aqui estão dois gráficos mostrando as probabilidades para três valores consecutivos de yy quando m=3m = 3 e m=4m=4 como funções de θ.\theta. (Apenas três resultados são mostrados para maior clareza. As probabilidades para outros resultados são obtidas deslocando ciclicamente a mesma função subjacente.)

Gráfico mostrando as probabilidades de resultado para estimativa de fase com três qubits

Gráfico mostrando as probabilidades de resultado para estimativa de fase com quatro qubits