A parte quântica do algoritmo de Shor é, essencialmente, uma única exponenciação modular feita sob superposição, seguida por uma transformada de Fourier e, em seguida, uma medição. A exponenciação modular é de longe a parte mais cara.
Suponhamos que [...] cada operação lógica elementar da fatoração matemática também gaste tempo na fatoração clássica e quântica.
Se assumirmos que a exponenciação modular leva exatamente tanto tempo em um computador quântico quanto em um computador clássico, a transição em que a computação quântica se tornou melhor aconteceria em um número muito baixo. A computação de exponenciações modulares é muito rápida, classicamente, porque você pode usar quadrados repetidos. Eu estimaria muito que o crossover acontecesse antes mesmo de você chegar a números de 30 bits (números acima de um bilhão).
Mas os computadores quânticos não fazem matemática tão rápido quanto os computadores clássicos . Por exemplo, no meu laptop, eu posso fazer uma exponenciação modular de 1000 bits em python em uma fração de segundo. Mas em computadores quânticos previsíveis, levaria horas ou dias. A questão é a enorme diferença ( enorme ) no custo de um portão AND.
Em uma máquina clássica, executar um AND é tão irrelevante que nem sequer pensamos nisso ao programar. É muito mais provável que você pense em termos de contagem de adições de 64 bits do que em termos de contagem de portas AND, ao determinar o custo do seu algoritmo. Mas em um computador quântico corrigido por erro, executar um AND (geralmente temporariamente, via Toffoli) tende a ser caro. Por exemplo, você pode fazer isso destilando quatro estados alta qualidade . Não vou entrar nos números ... basta dizer que em máquinas com correção precoce de erros você ficaria muito feliz em obter um milhão de T de estados por segundo.|T⟩
Então, suponha que tenhamos um milhão de T estados por segundo e queremos converter isso em uma taxa de acréscimos de 64 bits para comparar com a máquina clássica. Uma adição de 64 bits requer 64 portas AND, cada uma exigindo 4 portas T. 1 milhão dividido por 4 dividido por 64 dá ... cerca de 4KHz. Por outro lado, uma máquina clássica fará facilmente um bilhão de adições por segundo. Os aditivos quânticos são um milhão de vezes mais lentos que os aditivos clássicos (novamente, estimando amplamente, e lembre-se de que esse número deve melhorar com o tempo).
Outro fator que vale a pena considerar são os diferentes custos dos computadores quânticos e clássicos. Se você tem cem milhões de dólares e está escolhendo entre um computador quântico e mil computadores clássicos, esse fator de 1000 deve ser contabilizado. Nesse sentido, poderíamos dizer que os somadores quânticos são um bilhão de vezes menos eficientes que os somadores clássicos (em FLOPS / $).
Uma penalidade de fator constante de um bilhão é normalmente um rompimento imediato do negócio. E para algoritmos quânticos com uma mera vantagem quadrática (como Grover), afirmo que é de fato um rompimento de um acordo. Mas o algoritmo de Shor fica exponencialmente melhor em relação à estratégia clássica à medida que você aumenta o número de bits no número a ser fatorado. Quantos bits antes de comermos aquela constante "mísera" 10 ^ 9 com nosso crescimento exponencial em vantagem?
Considere que o RSA-640 foi fatorado em 2005 usando ~ 33 anos de CPU. Um computador quântico deve conseguir esse número em menos de um dia. Se você tem mil computadores clássicos trabalhando no problema, eles terminam em cerca de duas semanas. Parece que o quantum está ganhando 640 bits, mas apenas por uma ordem de magnitude ou três. Talvez o corte ocorra em torno de 500 bits?
De qualquer forma, eu sei que essa não é uma resposta difícil e rápida. Mas espero ter transmitido algum sentido das quantidades em que pensaria ao comparar o clássico e o quântico. Realmente ninguém sabe os fatores constantes envolvidos ainda, então eu ficaria surpreso se alguém pudesse lhe fornecer uma estimativa adequada melhor do que "em algum lugar nas centenas de bits".