Kwantowa część algorytmu Shora jest zasadniczo pojedynczym potęgowaniem modułowym wykonanym w superpozycji, po którym następuje transformata Fouriera, a następnie pomiar. Modułowe potęgowanie jest zdecydowanie najdroższą częścią.
Załóżmy, że [...] każda elementarna logiczna operacja faktoryzacji matematycznej jest w równym stopniu kosztowna w przypadku faktoryzacji klasycznej i kwantowej
Jeśli założymy, że potęgowanie modułowe zajmuje dokładnie tyle samo czasu na komputerze kwantowym, co na komputerze klasycznym, to przejście, w którym obliczenia kwantowe stały się lepsze, nastąpiłoby przy bardzo małej liczbie. Obliczanie modułowych potęgowań jest bardzo szybkie, klasycznie, ponieważ można użyć powtarzania kwadratu. Szalenie bym oszacował, że doszło do crossovera, zanim jeszcze dojdziesz do liczb 30-bitowych (liczby ponad miliard).
Ale komputery kwantowe nie będą robić matematyki tak szybko, jak klasyczne komputery . Na przykład na moim laptopie mogę wykonać 1000-bitowe potęgowanie modułowe w pythonie w ułamku sekundy. Ale na przewidywalnych komputerach kwantowych zajęłoby to godziny lub dni. Problemem jest ogromna ( masywna ) różnica w koszcie bramki AND.
|T⟩
Załóżmy więc, że otrzymujemy milion stanów T na sekundę i chcemy przekonwertować to na szybkość 64-bitowych dodatków w celu porównania z klasyczną maszyną. 64-bitowy dodatek wymaga 64 bramek AND, z których każda wymaga 4 bramek T. 1 milion podzielony przez 4 podzielony przez 64 daje ... około 4KHz. Dla kontrastu klasyczna maszyna z łatwością wykona miliard dodatków na sekundę. Sumatory kwantowe są milion razy wolniejsze niż klasyczne sumatory (ponownie, szalenie szacując, i pamiętaj, że ta liczba powinna z czasem ulec poprawie).
Kolejnym czynnikiem wartym rozważenia są różne koszty komputerów kwantowych i klasycznych. Jeśli masz sto milionów dolarów i wybierasz między jednym komputerem kwantowym a tysiącem klasycznych komputerów, ten współczynnik 1000 musi zostać uwzględniony. W tym sensie można powiedzieć, że sumatory kwantowe są miliard razy mniej wydajne niż klasyczne sumatory (w FLOPS / $).
Stała kara umowna w wysokości miliarda jest zwykle natychmiastowym przełamaniem umowy. A w przypadku algorytmów kwantowych o jedynie kwadratowej przewadze (takich jak Grover) twierdzę, że w rzeczywistości jest to przełom. Ale algorytm Shora staje się wykładniczo lepszy w stosunku do klasycznej strategii, gdy zwiększasz liczbę bitów liczby do współczynnika. Ile bitów zanim zjemy tę „nędzną” 10 ^ 9 stałą z przewagą naszego wykładniczego wzrostu?
Weź pod uwagę, że RSA-640 został uwzględniony w 2005 r. Przy użyciu ~ 33 lat procesora. Komputer kwantowy powinien być w stanie wykonać tę liczbę w ciągu jednego dnia. Jeśli masz tysiąc klasycznych komputerów pracujących nad problemem, skończyłyby się za około dwa tygodnie. Wygląda więc na to, że kwant wygrywa o 640 bitów, ale tylko o rząd wielkości lub trzy. Więc może odcięcie nastąpiłoby gdzieś około 500 bitów?
W każdym razie wiem, że nie jest to trudna i szybka odpowiedź. Mam jednak nadzieję, że przekazałem pewien sens wielkości, o których myślałbym, porównując klasykę i kwant. Naprawdę nikt jeszcze nie zna stałych czynników, więc zdziwiłbym się, gdyby ktoś mógł lepiej oszacować dane niż „gdzieś w setkach bitów”.