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 tN 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 0t<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.AtNPtNAtxy

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,bFta=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,bFta=btbtb1=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 aBbe 1 F q n p=q=2nFqFqnFqnnFqa=btFqna=BteFqa,enBn×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ć.FqaaBbe1Fqnp=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=P1JPAt=P1JtPy=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 FFFFqFnFq 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]xyFFF

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

[y1y2y3yk1yk]=[λ1λ1λ1λ1λ]t[x1x2x3xk1xk]

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,,p1} t s S t = ssS[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)xk0

[λ1λ1λ1λ1λ]t=[λt(t1)λt1(t2)λt2(tk1)λtk+1λt(t1)λt1(tk2)λtk+2λt(t1)λt1λ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=0k1xy(k1)×(k1)xk0

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=zzkt>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=λtxkykxk1λtykxk1λzλtzt

[y1y2y3yk1yk]=[ykxk1(t1)ykxk1λ1(t2)ykxk1λ2(tk1)ykxk1λ(k1)ykxk1(t1)ykxk1λ1(tk2)ykxk1λ(k2)ykxk1(t1)ykxk1λ1ykxk1][x1x2x3xk1xk]
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,,p1}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)sSy=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=P1QPP,QFqQAFFqAQbę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łasneCAFFC

    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.CFCnFq

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(nlogn)
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.