Co się stanie, jeśli zdefiniujemy P P A D w
Ostatnio dając szybsze algorytmy Okręgowego spełnialności dla małych obwodów okazało się być ważne, więc zastanawiam się, co się dzieje z rectricted wersjach P P A D
Co się stanie, jeśli zdefiniujemy P P A D w
Ostatnio dając szybsze algorytmy Okręgowego spełnialności dla małych obwodów okazało się być ważne, więc zastanawiam się, co się dzieje z rectricted wersjach P P A D
Odpowiedzi:
Podstawowa idea jest bardzo prosta: C 0 może zrobić jeden krok w obliczeniach maszyna Turinga, stąd możemy symulować jeden wielomian czasie obliczalny przewagę przez wielomianowo długiej linii C 0 -computable krawędziach. Poprzez dalsze rozszerzenie pomysłu można symulować krawędzie obliczalne w czasie wieloczłonowym z wyrocznią PPAD, to znaczy, że PPAD jest zamknięty w warunkach redukowalności Turinga; ten argument podano w Buss i Johnson .
W literaturze istnieje wiele równoważnych definicji PPAD, które różnią się w różnych szczegółach, dlatego pozwolę sobie tutaj poprawić jedną z nich dla pewności. Problem wyszukiwania NP S występuje w PPAD, jeśli występuje funkcja wielomianowa p ( n ) i funkcje wielomianowe f ( x , u ) , g ( x , u ) i h ( x , u ) o następujących właściwościach. Dla każdego wejścia x długości n , f i g oznaczają skierowany wykres G
Węzeł 0 p ( n ) ∈ V x jest źródłem (tj. Ma stopień 0 i stopień 1 ). Jeśli u ∈ V x jest dowolnym źródłem lub ujściem (stopień 1 , stopień 0 ) innym niż 0 p ( n ) , wówczas h ( x , u ) jest rozwiązaniem dla S ( x ) .
Możemy zdefiniować A C 0 P A D podobnie, z tym że wymagamy, aby f , g , h znajdowały się w F A C 0 .
Dla uproszczenia zignoruję h w konstrukcji. (Nietrudno wykazać, że można to uznać za projekcję, stąd obliczenie A C 0 ).
Rozważmy więc problem PPAD S zdefiniowany przez f i g , i naprawimy maszyny Turinga obliczające f i g w czasie q ( n ) . Dla dowolnego x definiujemy ukierunkowany wykres G ′ x = ( V ′ x , E ′ x ), którego wierzchołki są ciągami następującej postaci:
( 0 , u , c 1 , … , c k ) , gdzie u ∈ V x , 0 ≤ k ≤ q ( n ) , oraz c 1 , … , c k są pierwszymi k konfiguracjami w obliczeniach f ( x , u ) .
( 0 , u , c 1 , … , c q ( n ) , v , d 1 , … , d k ) , gdzie u , v ∈ V x , 0 ≤ k ≤ q ( n ) , f ( x , u ) = v , c 1 , … , c q (
(1,v,d1,…,dk)
(1,v,d1,…,dq(n),u,c1,…,ck)
E′x consists of the edges in V′x×V′x of the following kinds:
(0,u,c1,…,ck)→(0,u,c1,…,ck+1)
(0,u,c1,…,cq(n))→(0,u,c1,…,cq(n),v)
(0,u,c1,…,cq(n),v,d1,…,dk)→(0,u,c1,…,cq(n),v,d1,…,dk+1)
(0,u,c1,…,cq(n),v,d1,…,dq(n))→(1,v,d1,…,dq(n),u,c1,…,cq(n)) if f(u)=v and g(v)=u (i.e., either (u,v)∈Ex, or u=v is an isolated vertex)
(1,v,d1,…,dq(n),u,c1,…,ck+1)→(1,v,d1,…,dq(n),u,c1,…,ck)
(1,v,d1,…,dq(n),u)→(1,v,d1,…,dq(n))
(1,v,d1,…,dk+1)→(1,v,d1,…,dk)
(1,u)→(0,u)
Formally, let r(n) be a polynomial bounding the lengths of binary representations of all the sequences above (such that we can extend or shorten sequences, and extract their elements with AC0-functions); we actually put V′x={0,1}r(n), and we let all vertices except the above-mentioned sequences to be isolated.
It is easy to see that the functions f′, g′ representing G′x are AC0-computable: in particular, we can test in AC0 whether c1,…,ck is a valid partial computation of f(x,u), we can compute ck+1 from ck, and we can extract the value of f(x,u) from cq(n).
The sinks in G′x are nodes of the form (0,u,c1,…,cq(n),u,d1,…,dq(n)) where u is a sink in Gx. Likewise, sources are (1,v,d1,…,dq(n),v,c1,…,cq(n)) where v is a source in Gx, except that in the special case v=0p(n), we have pruned the line early and the corresponding source in G′x is just (0,0p(n)). We can assume the encoding of sequences is done in such a way that (0,0p(n))=0r(n).
Thus, f′ and g′ define an AC0PAD problem S′, and we can extract a solution to S(x) from a solution to S′(x) by an AC0-function h′ which outputs the second component of a sequence.