Mam mały problem z pełnym zrozumieniem ostatnich kroków algorytmu faktoringu Shora.
Biorąc pod uwagę którą chcemy uwzględnić, wybieramy losowy x, który ma porządek r .
Pierwszy krok obejmuje skonfigurowanie rejestrów i zastosowanie operatora Hadamard. W drugim kroku stosuje się operator liniowy. Trzeci krok jest mierzony drugim rejestrem (uważam, że ten krok można wykonać później). Czwarty krok dyskretna transformata Fouriera jest stosowana do pierwszego rejestru. Następnie mierzymy pierwszy rejestr.
Oto, gdzie jestem trochę zamglony:
Dostajemy pomiar w formie .
Z tego możemy znaleźć zbieżności ułamka , zbieżności są możliwymi wartościami rzędur. Czy po prostu wypróbowujemy wszystkie zbieżności<N,a jeśli nie znajdziemyrjako jednego ze zbieżności, to zaczynamy od nowa?
W jaki sposób różni się prawdopodobieństwo dla możliwych wartości ? Sądzę, że widzę, że wszyscy powinni mieć takie samo prawdopodobieństwo, ale artykuł Shora mówi, że tak nie jest?
Tylko trochę zdezorientowany, ponieważ niektóre dokumenty wydają się mówić różne rzeczy.
Dzięki.
źródło
Odpowiedzi:
Mógłbyś; algorytm działa dość szybko, jeśli to zrobisz. Jeśli chcesz zmniejszyć oczekiwaną liczbę kroków kwantowych, możesz również wykonać inne testy; na przykład powinieneś sprawdzić, czy jest małą wielokrotnością jednego ze zbieżności. Ale jeśli nie znajdziesz po tych rozszerzonych testach, musisz zacząć od nowa.r r
Nie wiem, czy mogę ci w tym pomóc, ponieważ nie dostarczyłeś mi wystarczającej ilości informacji, aby wyjaśnić, dlaczego jesteś zdezorientowany. Prawdopodobieństwo dla każdej wartości we frakcji jest (bardzo prawie) takie samo. Jednak w zależności od tego, gdzie dokładnie mieści się między sąsiednimi wartościami i , prawdopodobieństwo określonych wartości różni się.k k/r k/r j/2q (j+1)/2q j
źródło