Złożoność osiągalności w liniowych układach dynamicznych nad polami skończonymi


10

Niech A będzie macierzą nad polem skończonym F2={0,1} a x , y będą wektorami przestrzeni F2n . Interesuje mnie złożoność obliczeniowa przy podejmowaniu decyzji, czy istnieje t∈N takie, że Atx=y , tj. Problem osiągalności liniowych układów dynamicznych nad polami skończonymi.

Problem ten jest wyraźnie NP (przypuszczenie 0≤t<2n i obliczyć T w czasie wielomianowym przez wielokrotne kwadratury). Ja i moi współpracownicy byli w stanie wykazać N P -completeness związanego z tym problemu ustalenia, czy istnieje t ∈ N , tak że t x ≥ Y , gdzie ≥ jest componentwise nierówności.AtNPt∈NAtx≥y≥

Problem ten wydaje się dość naturalny, ale nie udało mi się znaleźć w literaturze odniesień do jego złożoności obliczeniowej, prawdopodobnie dlatego, że nie znam dokładnej terminologii. Czy wiesz, czy problem z równości jest NP -Complete lub jeśli to jest rzeczywiście w P ?


3
Można zredukować do przypadku, w którym jest odwracalny. Zauważmy, że obrazy z A 1 , A 2 , ... są nonincreasing łańcuch podprzestrzeni, a co za tym idzie staje się w końcu stały odstęp W (w rzeczywistości w ciągu pierwszych n etapach). Następnie jest odwracalna transformacji Liniowy W . Można łatwo sprawdzić przypadki specjalne, gdy t = 1 , 2 , … , n , po których pozostaje rozwiązanie problemu z A ograniczonym do W i xAA1,A2,…WnAWt=1,2,…,nAWxzastąpiony przez . Anx
— Andrew Morgan

Odpowiedzi:


4

Dla jasności uogólnię twoje pytanie, aby przekroczyło charakterystykę (z polem bazowym F q ) zamiast konkretnego przypadku p = q = 2 . Przyjmę p i q jako stałe; Zostawię czytelnikowi, aby dowiedzieć się, jaka jest dokładna zależność od tych parametrów, ponieważ istnieje kilka kompromisów, które można wprowadzić. Rezultat końcowy jest taki, że twój problem jest w przybliżeniu równoważny dyskretnemu problemowi z logami dla skończonych pól charakterystyki p .p>0Fqp=q=2pqp

Aby być bardziej konkretny, niech zwykły dyskretnego problemu dziennika nad rozszerzeniami być, biorąc pod uwagę pole rozszerzenie F z F q , a , b ∈ F , odnaleźć dowolny całkowitą t tak, że = b T lub raport, że żaden istnieje . Niech silne dyskretne problemem log na przedłużenie F q być, zważywszy, F , a , b, tak jak poprzednio, znaleźć liczby całkowite Z , m , tak aby FqFFqa,b∈Fta=btFqF,a,bz,m dla liczby całkowitej t ifflub zgłoś, że nieistnieje. Następnie istnieją następujące redukcje:a=btttt=z(modm)t

  • Istnieje deterministyczne ograniczenie mapowania z dyskretnego dziennika nad rozszerzeniami do twojego problemu.Fq

  • Istnieje skuteczny, deterministyczny algorytm, który rozwiązuje twój problem, gdy masz dostęp do wyroczni obliczającej silny dyskretny problem dziennika nad rozszerzeniami .Fq

W związku z tym uważam, że jest mało prawdopodobne, aby ktoś opublikował dowód twardość lub dowód, że twój problem jest w w najbliższej przyszłości.PNPP

Uwaga: Silny problem z logami dyskretnymi dotyczącymi rozszerzeń można zredukować do Turinga do pozornie słabszej postaci (choć nadal wydaje się silniejszy niż zwykły problem z logami dyskretnymi): Biorąc pod uwagę pole rozszerzenia z oraz , znajdź najmniejszą, nieujemną liczbę całkowitą , aby . Wynika to z faktu, że rząd wynosi jeden plus najmniejszy nieujemny tak że .F F q a,b∈ F ta= b t bt b - 1 = b tFqFFqa,b∈Fta=btbtb−1=bt


Pierwsza redukcja: Twierdzenie jest takie, że zwykły dyskretny problem dziennika dotyczący rozszerzeń mapowania redukuje do tego problemu. Wynika to z faktu, że mnożenie w jest transformacją liniową, gdy widzimy jako wymiarową przestrzeń wektorową nad . Stąd pytanie o postać nad staje się nad , gdzie są wymiarowymi wektorami, a jestF q n F q n n F q a= b t F q n → a = B t → e F q → a , → e nBn×n F q → a aBb → e 1∈ F q n p=q=2nFqFqnFqnnFqa=btFqna→=Bte→Fqa→,e→nBn×nmacierz, cała . Wektor może być łatwo obliczony z , od , a tylko przedstawienie , która może być zapisana skutecznie . Wydaje się, że nadal jest to trudny przypadek ogólnego problemu z logami dyskretnymi, nawet przy (ale oczywiście rośnie ). W szczególności ludzie nadal konkurują ze sobą, aby zobaczyć, jak daleko mogą to obliczyć.Fqa→aBbe→1∈Fqnp=q=2n


Druga redukcja: twierdzenie jest takie, że twój problem sprowadza się do silnego problemu z logiem dyskretnym dotyczącym rozszerzeń . Ta redukcja ma kilka elementów, więc wybacz długość. Niech dane wejściowe będą wymiarowymi wektorami i macierzy , w całym ; celem jest znalezienie , aby . nx,yn×nA F q ty= A t xFqnx,yn×nAFqty=Atx

Podstawową ideą jest napisanie w postaci kanonicznej Jordana (JCF), z której możemy zredukować testowanie do silnego problemu z logami dyskretnymi za pomocą prostej algebry.y = A t xAy=Atx

Jednym z powodów użycia formy kanonicznej podobieństwa macierzy jest to, że jeśli , to . W związku z tym można przekształcić do , w którym teraz jest w postaci znacznie przyjemniejsze niż arbitralne . JCF jest szczególnie prostą formą, która umożliwia resztę algorytmu. Odtąd załóżmy, że jest już w JCF, ale pozwól również, aby i mogły mieć wpisy w polu rozszerzenia .A t = P - 1 J t P y = A t x ( P y ) = J t ( P x ) J A A x , y , A F qA=P−1JPAt=P−1JtPy=Atx(Py)=Jt(Px)JAAx,y,AFq

Uwaga: Istnieją pewne subtelności wynikające z pracy z JCF. W szczególności że możemy wykonywać operacje terenowe w dowolnym rozszerzeniu (bez względu na to, jak duże) w jednym kroku czasowym i że możemy efektywnie obliczyć JCF. a priori jest to nierealne, ponieważ praca z JCF może wymagać pracy w polu rozszerzającym (polu podziału charakterystycznego wielomianu) o stopniu wykładniczym. Jednak z pewną ostrożnością i korzystając z faktu, że pracujemy nad skończonym polem, możemy obejść te problemy. W szczególności skojarzymy z każdym blokiem Jordana pole stopnia co najwyżej ponadF ′ n F q xy F ′ F ′ F ′FqF′nFq tak aby wszystkie wpisy w bloku Jordana i odpowiadające im elementy , znajdowały się w . Pole może różnić się w zależności od bloku, ale użycie tej `` mieszanej reprezentacji' 'pozwala na skuteczny opis JCF, który ponadto można skutecznie znaleźć. Algorytm opisany w pozostałej części tej sekcji musi działać tylko z jednym blokiem na raz, tak długo, jak wykonuje swoje operacje w polu w powiązanym polu , algorytm będzie wydajny. [uwaga końcowa]xyF′F′F′

Zastosowanie JCF daje nam równania o następującej formie, przy czym każde równanie odpowiada blokowi Jordana:

[y1y2y3⋮yk−1yk]=[λ1λ1λ1⋱λ1λ]t[x1x2x3⋮xk−1xk]

Algorytm będzie obsługiwał każdy blok osobno. W ogólnym przypadku dla każdego bloku będziemy mieli zapytanie o naszą silną dyskretną wyrocznię z dziennika, z której wyrocznia poinformuje nas o warunku modułowości, . . Otrzymamy również zestaw , aby musiał trzymać . Po przetworzeniu wszystkich bloków musimy sprawdzić, czy istnieje wybór który spełnia kombinacje wszystkich tych warunków. Można to zrobić poprzez zapewnienie jest wspólnym elementem wszystkich zestawów tak, że równania iS ⊆ { 0 , 1 , ⋯ , p - 1 } ⋁ s ∈ S [ t = st=z(modm)S⊆{0,1,⋯,p−1} t s S t = s⋁s∈S[t=s(modp)]tsSt = z jt=s(modp)jt=zj(modmj)są jednocześnie spełnione, gdzie rozciąga się na bloki.j

Istnieją również specjalne przypadki, które pojawiają się podczas całej procedury. W takich przypadkach dostaniemy warunków formie jakiegoś wartości lub formularza dla niektórych specyficznych liczba całkowita , z niektórych blokach, albo może nawet okazać, że nie może istnieć . Można je bez problemu włączyć do logiki ogólnego przypadku.ℓ t = s s tt>ℓℓt=sst

Teraz opisujemy podprocedurę do obsługi każdego bloku Jordana. Napraw taki blok.

Zacznij od skupienia się na ostatniej współrzędnej w bloku. Warunek wymaga, aby . Innymi słowy, jest to instancja problemu dziennika dyskretnego w pewnym rozszerzeniu pola . Następnie używamy wyroczni, aby go rozwiązać, co albo nie daje żadnego rozwiązania, albo daje warunek modułowości dla . Jeśli nie zostanie zwrócone „brak rozwiązania”, zwracamy informację o tym. W przeciwnym razie otrzymamy warunek , który jest równoważny .y k = λ t x k F q t t = zy=Atxyk=λtxkFqty k = λ t x kt=z(modm)yk=λtxk

Aby obsłużyć inne współrzędne, zaczynamy od następującej formuły (patrz np. Tutaj ): xk=0yk=λtxkyk=0k-1xy(k-1)×(k-1)xk≠0

[λ1λ1λ1⋱λ1λ]t=[λt(t1)λt−1(t2)λt−2⋯⋯(tk−1)λt−k+1λt(t1)λt−1⋯⋯(tk−2)λt−k+2⋱⋱⋮⋮⋱⋱⋮λt(t1)λt−1λt]
\ ddots & \ ddots & \ vdots \\ & & & & & lambda ^ t & \ binom {t} {1} \ lambda ^ {t-1} \\ & & & & & lambda ^ t \ end {bmatrix } Najpierw zajmijmy się przypadkiem, w którymxk=0 . Ponieważ mamy już warunek modułowości, który implikuje , możemy założyć, że również. Ale potem możemy po prostu zredukować się do skupiania się na pierwszych wpisach i oraz na górnej lewej submatrix bloku Jordana. Więc od teraz załóżmy, że .yk=λtxkyk=0k−1xy(k−1)×(k−1)xk≠0

Po drugie, zajmiemy się przypadkiem, w którym . W tym przypadku potęgi bloku Jordana mają specjalną postać i wymuszają albo dla niektórych , albo , bez żadnych innych warunków. Nie będę omawiać tych spraw, ale wystarczy powiedzieć, że każdy z nich można skutecznie sprawdzić. (Alternatywnie możemy ograniczyć się do przypadku, w którym jest odwracalny; patrz mój komentarz do pytania.)t = z z ≤ k t > k Aλ=0t=zz≤kt>kA

Wreszcie dochodzimy do ogólnej sprawy. Ponieważ mamy już warunek modułowości, który implikuje, że , możemy założyć, że warunek się utrzymuje i użyć jako stand-in dla . Mówiąc bardziej ogólnie, możemy użyć do reprezentowania . Dlatego musimy sprawdzić, czy następujący system ma pewien wybór : yk=λtxkykxk−1λtykxk−1λ−zλt−zt

[y1y2y3⋮yk−1yk]=[ykxk−1(t1)ykxk−1λ−1(t2)ykxk−1λ−2⋯⋯(tk−1)ykxk−1λ−(k−1)ykxk−1(t1)ykxk−1λ−1⋯⋯(tk−2)ykxk−1λ−(k−2)⋱⋱⋮⋮⋱⋱⋮ykxk−1(t1)ykxk−1λ−1ykxk−1][x1x2x3⋮xk−1xk]
y_kx_k ^ {- 1} \ koniec {bmatrix} \ {zaczynać bmatrix} X_1 \\ x_2 \\ x_3 \\ \ vdots \\ x_ {K-1} \\ x_ {k} \\ \ koniec {bmatrix} Zauważmy, że to, czy równanie się zachowuje, zależy tylko od ; dzieje się tak, ponieważ zależność od jest tylko wielomianowa, t(modp)tt musi być liczbą całkowitą, a powyższe równania dotyczą pola charakterystyki . Dlatego możemy po prostu wypróbować każdą wartość osobno. Zestaw , który powrócimy, to tylko wybory dla których system jest spełniony.pt∈{0,1,…,p−1}St

Tak więc teraz, z wyjątkiem niektórych szczególnych przypadków, podprocedura dla bloku znalazła warunek modułowości i zestaw tak że jeden z musi zostać zachowany dla niektórych . Warunki te są równoważne w tym konkretnym bloku Jordana. Zwracamy je więc z podprocedury. W szczególnych przypadkach albo dochodzi do wniosku, że nie może istnieć (w którym to przypadku podprocedura natychmiast zwraca informację o tym), albo mamy warunek modułowości i pewne warunki specjalne, takie jak dla liczby całkowitej lub dla jakiejś liczby całkowitejt=a(modm)St=s(modp)s∈Sy=Atxtt=a(modm)t=sst>ℓℓ . W każdym razie wszystkie warunki są równoważne w tym bloku Jordana. Tak więc, jak wspomniano powyżej, podprocedura po prostu zwraca te warunki.y=Atx

Na tym kończy się specyfikacja podprocedury na blok oraz całego algorytmu. Jego poprawność i skuteczność wynikają z poprzedniej dyskusji.


Subtelności z wykorzystaniem JCF w drugiej redukcji: Jak wspomniano w drugiej redukcji, istnieją pewne subtelności, które wynikają z pracy z JCF. Istnieje kilka uwag na temat łagodzenia tych problemów:

  • Rozszerzenia pól skończonych są normalne . Oznacza to, że jest nieredukowalną wielomian przez , a każde przedłużenie zawierający pierwiastek zawiera wszystkie korzenie . Innymi słowy, pole rozszczepienie nieredukowalnego wielomianu stopnia ma tytuł tylko nad .PFqFqPPPddFq

  • Istnieje uogólnienie jordańskiej formy kanonicznej, zwanej pierwotną racjonalną formą kanoniczną (PRCF), która nie wymaga spisywania rozszerzeń pól. W szczególności, jeśli jest macierzą z wpisami w , to możemy napisać dla niektórych macierzy z wpisami w , gdzie ponadto jest w PRCF. Dodatkowo, jeśli udajemy, że wpisy żyją w polu rozszerzającym który zawiera wszystkie wartości własne , toAFqA=P−1QPP,QFqQAF′FqAQbędzie w rzeczywistości w JCF. Zatem możemy postrzegać obliczanie JCF jako szczególny przypadek obliczania PRCF.A

  • Korzystając z formularza PRCF, możemy uwzględnić obliczanie JCF dla jakoA

    1. obliczanie PRCF przezAFq

    2. obliczanie PRCF każdego bloku (zapożyczenie zapisu z artykułu z Wikipedii) w PRCF , nad polem rozszerzenia , gdzie jest wybrany tak, aby zawierał wszystkie wartości własneCAF′F′C

    Kluczową zaletą tej faktoryzacji jest to, że charakterystyczne wielomianów bloków wszystkie będą nieredukowalne , a zatem dzięki naszej pierwszej obserwacji możemy wybrać aby uzyskać stopień wielkości (co najwyżej ) ponad . Minusem jest to, że teraz musimy używać różnych pól rozszerzeń do reprezentowania każdego bloku JCF, więc reprezentacja jest nietypowa i skomplikowana.CF′CnFq

Zatem, biorąc pod uwagę możliwość wydajnego obliczenia PRCF, możemy efektywnie obliczyć odpowiednie kodowanie JCF, a kodowanie to jest takie, że praca z dowolnym konkretnym blokiem JCF może być wykonana w polu rozszerzenia co najwyżej ponad .nFn

Ponieważ do obliczenia PRCF efektywnie papier „ Rational postaci kanonicznej algorytm ” (KR Matthews Math. Bohemica 117 (1992), 315-324) umożliwia skuteczną algorytm obliczyć PRCF gdy faktoryzacji charakterystycznej wielomianu jest znany . Aby ustalić stałą charakterystykę (taką jak my), faktoring wielomianów wielowymiarowych nad polami skończonymi można wykonać w deterministycznym czasie wielomianowym (patrz np. „ O nowym algorytmie faktoryzacji dla wielomianów nad polami skończonymi ” (H. Niederreitter i R. Gottfert, Math. Z Computation 64 (1995) 347-353).), Dzięki czemu PRCF można obliczyć wydajnie.A


Czy JCF można obliczyć wydajnie? W każdym razie jego istnienie może wymagać rozszerzenia pola.
— Emil Jeřábek

@ EmilJeřábek Dzięki - przypuszczam, że pracowałem przy domyślnym założeniu, że było to łatwe, ale tak naprawdę nie znam specyfiki. Wydaje się, że jest to silnie powiązane z faktoringiem wielomianów wielowymiarowych nad polami skończonymi, co można zrobić wystarczająco skutecznie dla powyższych celów, przynajmniej według Wikipedii . ...
— Andrew Morgan

Domyślam się, że JCF można znaleźć skutecznie, ale nie jestem do końca pewien. Wspominasz o konieczności rozszerzenia pola - jest to konieczne do zmniejszenia (dyskretne rejestrowanie ponad stałymi polami skończonymi jest łatwe), więc nie powinno być zaskoczeniem. Martwię się jednak o stopień rozszerzenia - podczas gdy wartości własne mają tylko stopień , wartości i są liniowymi kombinacjami mocy wartości własnych, więc mogą potrzebować żyć w polu o wielkości. W mojej odpowiedzi zanotuję te ewentualne pułapki, choć myślę, że nadal zapewnia wystarczająco dużo pomysłów, aby pozostać w pobliżu. nxiyin!
— Andrew Morgan

Dobrze. Elementy żyją w polu podziału charakterystycznego wielomianu macierzy, który może być arbitralnym wielomianem stopnia n, więc pole podziału może mieć stopień tak wysoki jak w przybliżeniu (jeśli moje obliczenia są prawidłowe). Ale może można to jakoś obejść. Rozłóżmy na czynniki char char (wystarczy nawet wyraźny stopień faktoryzacji). Czy możemy w jakiś sposób zidentyfikować przestrzenie własne odpowiadające pierwiastkom każdego czynnika? Oznacza to, że zamiast pełnego JCF otrzymalibyśmy macierz diagonalną bloku na pierwotnym polu, gdzie każdy blok miałby wartości własne ...exp⁡(nlog⁡n)
— Emil Jeřábek

... w rozszerzeniu stopnia co najwyżej . Wtedy moglibyśmy przetworzyć każdy blok osobno. (To tylko niejasny pomysł, nie próbowałem go wypracować.)n
— Emil Jeřábek,
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.