Powszechnie wiadomo, że jeśli wówczas hierarchia wielomianowa upadnie, a .
Można to łatwo zrozumieć indukcyjnie za pomocą maszyn Oracle. Pytanie brzmi - dlaczego nie możemy kontynuować procesu indukcyjnego poza stałym poziomem naprzemienności i udowodnić (aka )?
Szukam intuicyjnej odpowiedzi.
Odpowiedzi:
DowodemP=AltTime(O(1)) ( =PH ) jest indukcja stosując P=NP . Indukcja pokazuje, że dla dowolnej liczby naturalnej k , P=AltTime(k) (i AltTime(O(1)) to tylko ich związek).
Indukcja nie działa, gdy liczba naprzemienności może się zmieniać wraz z rozmiarem wejściowym (tj. Gdy liczba możliwych alternatyw maszyny nie jest liczbą, ale funkcją wielkości wejściowej, tzn. Nie pokazujemy, że wykonanie maszyny na jednym wejściu można zredukować do braku przemienności, pokazujemy, że wykonanie maszyny na wszystkich wejściach można „równomiernie” zredukować do braku przemienności).
Spójrzmy na podobne, ale prostsze stwierdzenie. Chcemy pokazać, że funkcja tożsamości ostatecznie dominuje nad wszystkimi stałymi funkcjami ( f ≪ g iff dla wszystkich, ale ostatecznie wiele n f ( n ) ≤ g ( n ) ). Można to udowodnić przez indukcję. Dla wszystkich k , k ≪ n (tj. F k ≪ i d gdzie f k ( n ) = kid(n)=n f≪g n f(n)≤g(n) k k≪n fk≪id fk(n)=k ), ale nie mamy tego dla funkcji nie stałych, takich jak , n 2 ≪ ̸ n .n2 n2≪̸n
źródło
Porównaj hierarchię wielomianową z hierarchią dla dowodów interaktywnych. Jeśli dla niektórych stałych k masz interaktywne k w dowodzie interaktywnym - IP ( k ) - wynikowa klasa złożoności ma nie więcej mocy niż to, co otrzymujesz z dwiema alternatywami - to znaczy, IP ( k ) = IP (2 ) = AM (przy założeniu k ≥2). Jeśli jednak dopuścisz wielomianową liczbę alternatyw, otrzymasz klasę złożoności IP = PSPACE, która, jak się uważa, jest znacznie większa niż AM, klasa jest zawarta w Π 2 P, na drugim poziomie hierarchii wielomianowej. Zjawisko to faktycznie się dzieje (chociaż, o ile wiemy, z hierarchią wielomianową).
Dzieje się tak, ponieważ redukcja, która bierze problem rozmiaru nw IP ( k ) i zamienia go w problem w IP (2), wysadza rozmiar problemu, tak że podczas gdy dla konkretnego IP ( k ) problem pozostaje wielomianowy , jeśli pozwolisz k zmieniać, wynikowa redukcja nie daje problemów, które są wielomianowe w k .
źródło
Oto mała intuicja dotycząca przerwy między stałymi i nieograniczonymi naprzemiennościami: operacja wielomianowa powtarzana stałą liczbę razy jest wielomianowa, ale powtarzanie wielomianowej liczby razy może być wykładnicze. Na przykład weź mnożenie powtórzone na sobie:
Liczba iteracji jest liniowa, a dane wyjściowe są wykładnicze. Ale jeśli naprawisz n, jest to wielomian wielkości początkowej wartości.
źródło
Poniżej rozwijam nieco kwestię odpowiedzi Petera, próbując usunąć kwantyfikator przez więcej niż stałą liczbę kroków, aby zobaczyć, gdzie zawodzi i czy cokolwiek można uratować po takiej próbie.
Spróbujmy wzmocnićP=NP więcej niż stałą liczbę razy.
Załóżmy, żeP=NP . Dlatego istnieje wielomianowa wehikuł czasu, który rozwiązuje Ext-Circuit-SAT (czy istnieje zadowalające rozszerzenie dla danego obwodu i częściowe przypisanie do jego wejść?).
Mówiąc bardziej formalnie, mamy algorytm wielogodzinnyA z wielomianowym czasem działania p(n)∈poly(n) st
Aby przejść przez stały czas, musimy skutecznie usunąć kwantyfikator. Możemy to zrobić, ponieważ Twierdzenie Cooka Twierdzenie to konstruktywne, w rzeczywistości daje czasie wielomianowym algorytmCook st
Spróbujmy wykorzystać do rozszerzenia argumentu dlaP=PH uzyskanie TQBF rozwiązywania algorytm (właściwie TQBCircuit, czyli Totally problemem Ilościowy Boolean obwodu).
Idea algorytmu jest następujący: to wielokrotne użycieCook na A w celu usunięcia kwantyfikatorów z danego obwodu ilościowo. Istnieją numer liniowy kwantyfikatorów więc mamy nadzieję uzyskać algorytm czasu wielomianu (mamy algorytm z wielomianowo wielu kroków wykorzystujących czasie wielomianowym podprogramów Cook ). Pod koniec tego procesu eliminacji kwantyfikatora będziemy mieli obwód bez kwantyfikatora, który można ocenić w czasie wielomianowym (problem z wartością obwodu jest w P , niech CV będzie algorytmem wielomianowym do obliczania wartości obwodu w danym obwodzie) .
Zobaczymy jednak, że ten pomysł nie działa (z tego samego powodu, na który wskazał Piotr).
Dlai od k do 1 zrobić
JeśliQ="∃" ,
JeśliQ="∀" ,
Wynikowy algorytm wygląda na czas wielomianowy: mamy wielomian wiele kroków, każdy krok jest obliczalny w czasie wielomianowym. Jednak nie jest to poprawne, algorytm nie jest czasem wielomianowym.
Korzystanie z podprogramów czasu wielomianowego w algorytmie czasu wielomianowego jest czasem wielomianowym. Problem polega na tym, że generalnie nie musi to być prawdą, jeśli wartości zwracane przez podprogramy nie mają wielomianowego rozmiaru w oryginalnych danych wejściowych i zakładamy, że wykonujemy przypisania dotyczące wartości zwracanych z podprogramów. (W modelu TM musimy odczytywać dane wyjściowe dowolnego podprogramu wielomianowego bit po bicie). Tutaj wielkość zwracanej wartości z algorytmuCook rośnie (może być potęgą wielkości przekazanego jej wejścia , dokładna moc zależy od czasu przebiegu A i wynosi około p2(|input|) , skoro wiemy, że A nie może być krótszy niż czas liniowy, |output| jest przynajmniej |input|2 ).
Problem jest podobny do prostego kodu poniżej:
Za każdym razem, gdy wykonujemyy=y|y| kwadratowy rozmiar y . Po n wykonaniach będziemy mieć y które jest x2n i ma rozmiar n2n , oczywiście nie jest wielomianem w wielkości wejściowej.
Załóżmy, że bierzemy pod uwagę tylko formuły kwantyfikowane zk(n) przemianami kwantyfikatora (gdzie n jest całkowitą wielkością formuły kwantyfikowanej).
Załóżmy, żeA jest uruchamiany w czasie p (np liniowy czasu, który nie jest wykluczone, do tej pory), i być może bardziej skuteczne Cook algorytm wyprowadzania mniejszy obwód wielkości l(t) w miejsce t2 , to uzyskać algorytm dla ExtCircuitSat działający w czasie (l∘p)O(k)(n)=l(p(l(p(…(l(p(n)))))))O(k) compositions . Nawet w przypadku, gdy zarównol jakip były liniowe (ale o współczynniku całkowityma≥2 ) otrzymalibyśmy algorytm działający w czasieΩ(n2k(n)) i gdybyk(n)=Θ(n) to byłobyΩ(n2n) podobny do algorytmu brutalnej siły (a nawet to było oparte na założeniu, że Cook-Levin można wykonać na algorytmach, uzyskując obwody o rozmiarach liniowych w czasie działania algorytmu).
źródło
Myślę, że dzieje się tak, ponieważ na każdym poziomie PH liczba zmian jest stała (tj. Niezależna od wielkości wejściowej), podczas gdy w AP liczba alternatyw może być nieograniczona (ale wielomianowa w wielkości wejściowej).
źródło