Złożoność faktoringu w polach liczbowych


25

Co wiadomo na temat złożoności obliczeniowej liczb całkowitych faktoringu w ogólnych polach liczbowych? Dokładniej:

  1. Nad liczbami całkowitymi reprezentujemy liczby całkowite poprzez ich binarne rozszerzenia. Jakie są analogiczne reprezentacje liczb całkowitych w ogólnych polach liczbowych?
  2. Czy wiadomo, że pierwszeństwo nad polami liczbowymi ma postać P lub BPP?
  3. Jakie są najbardziej znane algorytmy faktorowania w polach liczbowych? (Wykonaj exp⁡n i (pozornie)exp⁡n1/3) algorytmy rozciągają się odZ?) Tutaj, faktoring odnosi się do znalezienia pewną reprezentację liczby (reprezentowany przeznbitów) jako produkt liczb pierwszych.
  4. Jaka jest złożoność znalezienia wszystkich faktoryzacji liczby całkowitej w polu liczbowym? Policzenia, ile ma różnych faktoryzacji?
  5. Ponad Z wiadomo, że przy podejmowaniu decyzji, czy dana liczba ma czynnik w przedziale [a,b] jest trudne dla NP. Czy poza pierścieniem liczb całkowitych w polach liczbowych może się zdarzyć, że ustalenie, czy istnieje czynnik główny, którego norma jest w określonym przedziale, jest już trudne NP?
  6. Czy faktoring w polach liczbowych w BQP?

Uwagi, motywacje i aktualizacje.

Oczywiście kluczowy jest tutaj fakt, że faktoryzacja nie jest unikalna dla pól liczbowych. Pytanie (szczególnie część 5) było motywowane tym postem na blogu nad GLL (patrz ta uwaga ), a także wcześniejszym pytaniem TCSexchange. Przedstawiłem to również na moim blogu, na którym Lior Silverman przedstawił dokładną odpowiedź .


czy możesz podać przykład? czym różni się faktoring w polach od faktoringu z całkowitą liczbą całkowitą?
— vzn

2
Dla (0) Chyba zwykle pole numeru jest reprezentowany jako Q [ ξ ] / ⟨ φ ⟩ gdzie φ jest nierozkładalny wielomianu. Zatem element K jest krotką par ( ( n 0 , d 0 ) , ( n 1 , d 1 ) , … , ( n δ - 1 , d δ - 1 ) ) gdzie δ = degKQ[ξ]/⟨φ⟩φK((n0,d0),(n1,d1),…,(nδ−1,dδ−1)) . Oznacza to, że twoim elementem jest n 0 / d 0 + n 1 ξ / d 1 + ⋯ + n δ - 1 ξ δ - 1 / d δ - 1 . δ=deg⁡(φ)n0/d0+n1ξ/d1+⋯+nδ−1ξδ−1/dδ−1
— Bruno,

2
@Gil Czy widziałeś już tę książkę? springer.com/mathematics/numbers/book/978-3-540-55640-4 W tej chwili nie mam dostępu do mojej kopii (chociaż wrócę za kilka dni i sprawdzę to). Chciałbym sprawdzić, czy coś jest napisane na temat faktoryzacji w (i) polach liczb algebraicznych lub (ii) domenach Dedekinda, o klasie klasy> 1.
— Daniel Apon

4
@vzn: Bez wkładania słów w usta Gila jestem pewien, że ma na myśli skończone rozszerzenia racjonalności (dokładnie to, z czym się łączysz). Kiedy mówi „faktoring w takim polu”, jestem prawie pewien, że ma na myśli faktoring w pierścieniu liczb całkowitych takiego pola. Ta sama strona wikipedia, do której linkujesz, ma sekcję na pierścieniu liczb całkowitych w polu liczby algebraicznej.
— Joshua Grochow

1
@vzn Sito z polem liczbowym używa pól liczbowych do obliczania liczb całkowitych.
— Yuval Filmus

Odpowiedzi:


14

Poniższa odpowiedź została pierwotnie opublikowana jako komentarz na blogu Gila

(1) Niech będzie polem liczbowym, w którym zakładamy, że α ma monomiczny minimalny wielomian f ∈ Z [ x ] . Następnie można reprezentować elementy pierścienia liczb całkowitych O K jako wielomianów w α lub w kategoriach integralnej podstawy - oba są równoważne.K=Q(α)αf∈Z[x]OKα

Teraz mocowania jak w (1) jest wielomianem zmniejszenie czasu problem polegający na K problemu w Q . Aby sprawdzić, czy obliczenia (np. Przecięcie ideału z Z lub faktoring modu wielomianowego p ) można wykonać w czasie wielomianowym, zobacz książkę Cohena, o której mowa w poprzedniej odpowiedzi.KKQZp

Jako wstępne obliczenie dla każdej racjonalnej liczby pierwszej dzielącej dyskryminator α (czyli dyskryminatora f ) znajdź wszystkie liczby pierwsze O K leżące powyżej p .pαfOKp

(2) W przypadku testowania pierwotności, dla idealnej niech p ∈ Z będzie takie, że a ∩ Z = p Z (można to obliczyć w czasie wielomianowym, a liczba bitów p jest wielomianowa na wejściu). Sprawdź w czasie wielomianowym, czy p jest liczbą pierwszą. Jeśli nie, to a nie jest liczbą pierwszą. Jeśli tak, to znajdź liczby pierwsze O K leżące powyżej p albo na podstawie wstępnego obliczenia, albo przez uwzględnienie f mod p . W każdym razie, jeśli a jest liczbą pierwszą, musi być jedną z tych liczb pierwszych.a◃OKp∈Za∩Z=pZppaOKpfpa

(3a), (6a) Dla faktoryzacji w liczbach pierwszych, dla idealnego znajdź jego normę y = N K Q ( a ) = [ O K : a ] . Znów można to znaleźć w czasie wielomianowym, a zatem nie jest zbyt duże. Współczynnik y w Z (klasycznie lub przy użyciu algorytmu Shora, w zależności od żądanej redukcji). Daje to listę racjonalnych liczb pierwszych dzielących y , a zatem, podobnie jak w 2, możemy znaleźć listę liczb pierwszych O K dzielących y . Od | ya◃OKy=NQK(a)=[OK:a]yZyOKy daje to listę liczb pierwszych dzielących a . Wreszcie łatwo jest wyznaczyć wykładnik, do którego liczba pierwsza dzieli dany ideał.a|yOKa

(3b), (6b) Ale Gil chce faktoryzacji w nieredukowalne, a nie w liczbach pierwszych. Okazuje się, że ze względu na czynniki pierwsze można budować efektywnie jeden faktoryzacji X w nieredukowalnych elementów O K . W tym celu niech h K będzie numerem klasy i zwróć uwagę, że można skutecznie obliczyć idealną klasę danego ideału. Teraz, aby znaleźć nieredukowalny dzielnik x, wybierz h podstawowe ideały K (ewentualnie z powtórzeniem) z faktoryzacji xxOKxOKhKxhKx. Zgodnie z zasadą szufladki pewien podzbiór tych mnoży się do tożsamości w grupie klasowej; znajdź minimalny taki podzbiór. Jego produkt jest wówczas głównym ideałem generowanym przez element nieredukowalny. Podziel przez ten element, usuń odpowiednie ideały z faktoryzacji i powtórz. Jeśli rozkład na czynniki ma mniej niż h K elementów, wystarczy wziąć minimalny podzbiór wszystkich czynników.xhK

(4) Myślę, że można policzyć faktoryzacje na nieredukowalne, ale jest to trochę dodatkowa kombinatoryka - proszę dać mi czas na wypracowanie tego. Z drugiej strony ustalenie ich wszystkich nie jest interesujące w kontekście algorytmów faktoryzacji sub wykładniczej, ponieważ generalnie istnieje wiele wykładniczo takich faktoryzacji.

(5) Nie mam pojęcia.


5

Jak wspomniał Daniel, niektóre informacje można znaleźć w książce A Course in Computational Algebraic Number Theory ( link ).

W szczególności istnieje kilka sposobów przedstawiania elementów pól liczbowych. Niech być Pole numeru z φ stopnio n monic nieredukowalnego wielomianu Z [ ξ ] . Niech θ będzie dowolnym źródłem φ . Tak zwana standardowa reprezentacja elementu α ∈ K jest krotką ( a 0 , … , a n - 1 , d )K=Q[ξ]/⟨φ⟩φnZ[ξ]θφα∈K(a0,…,an−1,d)gdzie , d > 0 i gcd ( a 0 , … , a n - 1 , d ) = 1 , tak że α = 1ai∈Zd>0gcd(a0,…,an−1,d)=1

α=1d∑i=0n−1aiθi.
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.