Krótka odpowiedź.
Jeśli sformułować odpowiedni problem decyzyjny wersję problemu logarytm dyskretny, możemy pokazać, że należy do skrzyżowania z klasami złożoności NP , CONP i BQP .
Wersja Discrete Log stanowiąca problem decyzyjny.
Problem logarytmu dyskretnego jest najczęściej formułowany jako problem funkcji , odwzorowujący krotki liczb całkowitych na inną liczbę całkowitą. Takie sformułowanie problemu jest niezgodne z klasami złożoności P , BPP , NP itd., Które ludzie wolą brać pod uwagę, które dotyczą wyłącznie problemów decyzyjnych (tak / nie). Możemy rozważyć wersję problemu z dyskretnym dziennikiem, który jest faktycznie równoważny:
Dyskretny dziennik (problem decyzyjny). Biorąc pod uwagę liczbę pierwszą , generator multiplikatywnych jednostek modulo , liczba całkowita i górna granica , określają, czy istnieje taki, że .Na∈Z×NN0<c<Nb∈N1⩽L⩽baL≡c(modN)
To pozwoliłoby nam faktycznie obliczyć log a ( c ) modulo N przez wyszukiwanie binarne, gdybyśmy mogli to skutecznie rozwiązać. Możemy wtedy zapytać, do których klas złożoności należy ten problem. Zwróćmy uwagę, że sformułowaliśmy to jako problem obietnicy: możemy rozszerzyć go na problem decyzyjny, zawieszając wymagania, że będzie liczbą pierwszą i generator, ale dodając warunek, że ograniczenia te dotyczą każda instancja problemu „TAK”.Na∈Z×N
Dyskretny dziennik jest w BQP.
Używając algorytmu Shora do obliczania logarytmu dyskretnego ( algorytmy wielomianowego czasu dla faktoryzacji pierwotnej i logarytmów dyskretnych na komputerze kwantowym ), możemy łatwo zawierać Log dyskretny w BQP . (Aby sprawdzić, czy faktycznie jest generatorem, możemy użyć algorytmu znajdowania porządku Shora w tym samym artykule, który jest podstawą algorytmu dyskretnego logarytmu, aby znaleźć kolejność i porównaj to z .)a∈Z×NaN−1
Discrete Log jest w NP ∩ coNP.
Jeśli tak naprawdę jest to, że jest liczbą pierwszą, a jest generatorem, wystarczającym certyfikatem dla wystąpienia „TAK” lub „NIE” problemu decyzyjnego jest unikalna liczba całkowita taki, że . Więc wystarczy to, aby pokazać, że możemy zaświadczyć, czy warunki na i zawieszone. Zgodnie z uwagą Brassarda dotyczącą złożoności kryptografii , jeśli zarówno przypadek jest liczbą pierwszą, jak i jest generatorem, to jest tak, że
Na∈Z×N0⩽L<N−1aL≡c(modN)aNNa∈Z×N
rN−1≡1(modN)andr(N−1)/q≢1(modN) for primes q dividing N−1
z definicji (korzystając z faktu, że ma porządek ).
Z×NN−1
Świadectwo, że ograniczenia w i zarówno chwyt będzie lista z głównych czynników dzielących , który pozwoli nam przetestować powyższe ograniczenia kongruencji. (Możemy sprawdzić, czy każdy jest liczbą pierwszą za pomocą testu AKS, jeśli chcemy, i przetestować, czy są to wszystkie czynniki pierwsze , próbując znaleźć rozkład na czynniki pierwsze tylko z tymi liczbami pierwszymi.)Naq1,q2,…N−1qjN−1N−1
Certyfikat, że jednym z ograniczeń lub nie byłoby całkowita która dzieli , tak, że . W tym przypadku nie jest konieczne testowanie kątem pierwotności; natychmiast oznacza to, że rząd jest mniejszy niż , a zatem jest generatorem grupy multiplikatywnej tylko wtedy, gdy nie jest liczbą pierwszą.NaqN−1a(N−1)/q≡1(modN)qaN−1N