¿Qué sucede si definimos P P A D de
Recientemente dando algoritmos más rápidos para satisfacibilidad circuito para circuitos pequeños resultaron ser importante, así que me pregunto lo que ocurre con las versiones de permisividad en P P A D
¿Qué sucede si definimos P P A D de
Recientemente dando algoritmos más rápidos para satisfacibilidad circuito para circuitos pequeños resultaron ser importante, así que me pregunto lo que ocurre con las versiones de permisividad en P P A D
Respuestas:
La idea básica es bastante simple: A C 0
Hay muchas definiciones equivalentes de PPAD en la literatura que difieren en varios detalles, por lo tanto, permítanme arreglar una aquí para mayor precisión. Un problema de búsqueda NP está en PPAD si hay un polinomio y funciones de tiempo polinomial , y con las siguientes propiedades. Para cada entrada de longitud , y representan un gráfico dirigido sin auto-bucles donde , y cada nodo tiene grado y fuera de grado como máximo . La representación es tal que siS p ( n ) f ( x , u ) g ( x , u ) h ( x , u ) x n f g G x = ( V x , E x ) V x = { 0 , 1 } p ( n ) 1 ( u , v ) ∈ E x f ( x
El nodo es una fuente (es decir, tiene un grado de entrada y un grado de salida ). Si es cualquier fuente o sumidero (dentro del grado , fuera del grado ) que no sea , entonces es una solución para .0 p ( n ) ∈ V x 0 1 u ∈ V x 1 0 0 p ( n ) h ( x , u ) S ( x )
Podemos definir manera similar, excepto que requerimos que esté en .A C 0 P A D f,g,h F A C 0
Ignoraré en la construcción por simplicidad. (No es difícil demostrar que uno puede tomarlo como una proyección, por lo tanto, -computable).h A C 0
Entonces, considere un problema PPAD definido por y , y arregle las máquinas de Turing que calculan y en el tiempo . Para cualquier , definimos un gráfico dirigido cuyos vértices son secuencias de la siguiente forma:S f g f g q ( n ) x G ′ x = ( V ′ x , E ′ x )
( 0 , u , c 1 , ... , c k )
( 0 , u , c 1 , ... , c q ( n ) , v , d 1 , ... , d k )
( 1 , v , d 1 , ... , d k )
(1,v,d1,…,dq(n),u,c1,…,ck) , donde , , , , es el cálculo de , y son los primeros pasos en el cálculo de .u,v∈Vxv≠0p(n)0≤k≤q(n)g(x,v)=ud1,…,dq(n)g(x,v)c1,…,ckkf(x,u)
E′x consta de las aristas en de los siguientes tipos:V′x×V′x
(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)) si y (es decir, , o es un vértice aislado)f(u)=vg(v)=u(u,v)∈Exu=v
(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)
Formalmente, supongamos que es un polinomio que limita las longitudes de las representaciones binarias de todas las secuencias anteriores (de modo que podamos extender o acortar secuencias, y extraer sus elementos con funciones ); en realidad ponemos , y dejamos que se aíslen todos los vértices, excepto las secuencias mencionadas anteriormente.r(n)AC0V′x={0,1}r(n)
Es fácil ver que las funciones , representan son -computable: en particular, podemos probar en si es un cálculo parcial válido de , podemos calcular partir de , y podemos extraer el valor de partir de .f′g′G′xAC0AC0c1,…,ckf(x,u)ck+1ckf(x,u)cq(n)
Los sumideros en son nodos de la forma donde es un sumidero en . Del mismo modo, las fuentes son donde es una fuente en , excepto que en el especial caso , hemos podado la línea temprano y la fuente correspondiente en es justa . Podemos suponer que la codificación de secuencias se realiza de tal manera que .G′x(0,u,c1,…,cq(n),u,d1,…,dq(n))uGx(1,v,d1,…,dq(n),v,c1,…,cq(n))vGxv=0p(n)G′x(0,0p(n))(0,0p(n))=0r(n)
Por lo tanto, y definir un problema , y podemos extraer una solución a a partir de una solución a por un -Función que salidas El segundo componente de una secuencia.f′g′AC0PADS′S(x)S′(x)AC0h′