Czy


15

Co się stanie, jeśli zdefiniujemy P P A D wPPAD taki sposób, że zamiast polytime-maszyny Turinga / obwodu polisize, maszyny logistycznej Turinga lub obwodu A C 0AC0 koduje problem?

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


Buss i Johnson, „Dowody propozycji i redukcje między problemami wyszukiwania NP”, dowodzą, że PPAD jest zamknięty w ramach redukcji Turinga i jestem prawie pewien, że niewielka modyfikacja argumentu daje równoważność PPAD z jego (jednolitą) wersją AC ^ 0 .
Emil Jeřábek wspiera Monikę

@Emil: Dziękuję za sugestię, niestety pojęcia zawarte w tym artykule są poza mną. Byłbym wdzięczny, gdyby ktoś mógł mi powiedzieć, jakie są tego konsekwencje. Dodaję
domotorp

Odpowiedzi:


10

Tak C 0 P D = P P D . (Tu i poniżej, m zakładając C 0 definiuje się jako jednolity klasy. Oczywiście, z niejednorodnym C 0 chcemy po prostu P P A D / s O l y ).AC0PAD=PPADAC0AC0PPAD/poly

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

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 GSp(n)f(x,u)g(x,u)h(x,u)xnfgx = ( V x , E x ) bez pętli własnych, gdzie V x = { 0 , 1 } p ( n ) , a każdy węzeł ma stopień i stopień co najwyżej 1 . Odwzorowanie jest taka, że w przypadku ( u , v ) e x , a f ( x , w kształcie U ) = v i g ( x , v ) = u ; gdybyGx=(Vx,Ex)Vx={0,1}p(n)1(u,v)Exf(x,u)=vg(x,v)=uu ma stopień 0 , f ( x , u ) = u ; a jeśli u ma stopień 0 , g ( x , u ) = u .u0f(x,u)=uu0g(x,u)=u

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 ) .0p(n)Vx01uVx100p(n)h(x,u)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 .AC0PADf,g,hFAC0

Dla uproszczenia zignoruję h w konstrukcji. (Nietrudno wykazać, że można to uznać za projekcję, stąd obliczenie A C 0 ).hAC0

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:Sfgfgq(n)xGx=(Vx,Ex)

  • ( 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,c1,,ck)uVx0kq(n)c1,,ckkf(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 ((0,u,c1,,cq(n),v,d1,,dk)u,vVx0kq(n)f(x,u)=vn)c1,,cq(n) is the full computation of f(x,u)f(x,u), and d1,,dkd1,,dk are the first kk steps in the computation of g(x,v)g(x,v).

  • (1,v,d1,,dk)(1,v,d1,,dk), where 0p(n)vVx0p(n)vVx, 0kq(n)0kq(n), and d1,,dkd1,,dk are the first kk configurations in the computation of g(x,v)g(x,v).

  • (1,v,d1,,dq(n),u,c1,,ck)(1,v,d1,,dq(n),u,c1,,ck), where u,vVxu,vVx, v0p(n), 0kq(n), g(x,v)=u, d1,,dq(n) is the computation of g(x,v), and c1,,ck are the first k steps in the computation of f(x,u).

Ex consists of the edges in Vx×Vx 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 Vx={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 Gx 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 Gx 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 Gx 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.

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.