W prostej formie:
Można dwukierunkowa skończony automat rozpoznaje wykresy -Vertex które zawierają trójkąt z stany?
Detale
Zainteresowania są tu wykresy -Vertex kodowane przy użyciu sekwencji krawędzi, każda krawędź jest para różnych wierzchołki .
Załóżmy, że jest ciągiem dwukierunkowy automaty skończone (deterministyczny lub niedeterministyczny), tak że rozpoznaje -Clique na wykresach wejściowych -Vertex i ma stany. Ogólna forma pytania brzmi: czy ?
Jeśli i dla nieskończenie wielu , to NL ≠ NP. Mniej ambitnie, dlatego zastrzegam, że jest ustalone, a przypadek jest pierwszym nietrywialnym.
tło
Dwukierunkowy automat skończony (2FA) to maszyna Turinga, która nie ma obszaru roboczego, tylko stałą liczbę stanów wewnętrznych, ale może przesuwać swoją głowicę wejściową tylko do odczytu tam iz powrotem. W przeciwieństwie do tego zwykły automat skończony (1FA) przesuwa głowicę wejściową tylko do odczytu w jednym kierunku. Automaty skończone mogą być deterministyczne (DFA) lub niedeterministyczne (NFA), a także mieć jedno- lub dwukierunkowy dostęp do swoich danych wejściowych.
Właściwość wykresu jest podzbiorem wykresów. Niech Q v oznaczamy v wykresach -Vertex z nieruchomości Q . Dla każdej właściwości wykresu Q język Q v może być rozpoznany przez 1DFA z maksymalnie 2 stanami v ( v - 1 ) / 2 , poprzez użycie stanu dla każdego możliwego wykresu i oznaczenie go zgodnie z Q , oraz przejścia między stanami oznaczone po krawędziach. Q v jest zatem zwykłym językiem dla dowolnej właściwości Q. Według twierdzenia Myhill-Nerode istnieje unikalny aż do izomorfizmu najmniejszy 1DFA, który rozpoznaje . Jeśli ma to stany 2 s ( v ) , wówczas standardowe granice wysadzenia dają, że 2FA rozpoznające Q v ma co najmniej stany s ( v ) Ω ( 1 ) . To podejście poprzez standardowe granice wysadzenia daje co najwyżej kwadratową in v dolną granicę liczby stanów w 2FA dla dowolnego Q v (nawet gdy Q jest trudne lub nierozstrzygalne).
-Clique to właściwość graph zawierająca pełnypodgraph k -vertex. Rozpoznawanie k- kliki v może być wykonane przez 1NFA, który najpierw nie deterministycznie wybiera jedną z ( v różne potencjalnek-kliki, których należy szukać, a następnie skanuje dane wejściowe raz, szukając każdej z wymaganych krawędzi w celu potwierdzenia kliki i śledząc te krawędzie za pomocąstanów2k(k-1)/2dla każdego z różne potencjalne kliky. Taki 1NFA ma ( vZjednoczonych, gdzie1≤cv≤e. Kiedykjest ustalone, są tostanyΘ(vk). Zezwolenie na dwukierunkowy dostęp do danych wejściowych potencjalnie umożliwia poprawę w stosunku do tego jednokierunkowego ograniczenia. Pytanie dotyczy zatemk=3 czy 2FA może zrobić lepiej niż ta górna granica 1FA.
Dodatek (16.04.2017): patrz także powiązane pytanie dotyczące deterministycznego czasu i ładna odpowiedź obejmująca najbardziej znane algorytmy . Moje pytanie dotyczy niejednolitej, niedeterministycznej przestrzeni. W tym kontekście redukcja do mnożenia macierzy stosowana przez algorytmy efektywne czasowo jest gorsza niż metoda brutalnej siły.
źródło
Odpowiedzi:
Wydaje mi się, że trójkąty mogą być wykonane przez 2FA ze stanem O ( n 2 ) (n jest liczbą wierzchołków).A O(n2)
Dla idea jest następująca:k=3
Można to właściwie zrobić prawie od lewej do prawej (wtedy może niedeterministycznie zdecydować się na ( j , m ) lub ( m , j ) w fazie 2). Jeśli jednak druga krawędź ma postać ( m , i ) , A musi najpierw odczytać i, a następnie m , tj. Potrzebny jest tutaj pojedynczy lewy krok.A (j,m) (m,j) (m,i) A i m
To powinno dać automaty ze stanami dla k- Kliki dla k > 3 , najpierw zgadując zbiór S o wielkości k - 3 i testując, że węzły S są połączone parami krawędziami i dla każdego I, J, m powyżej, sprawdzając, czy mają one krawędzie do wszystkich węzłów S .O(nk−1) k k>3 S k−3 S S
źródło