Articulo de referencia

Reducción de conteo en tiempo polinomial

En la teoría de la complejidad computacional de los problemas de conteo , una reducción de conteo en tiempo polinomial es un tipo de reducción (una transformación de un problema...

En la teoría de la complejidad computacional de los problemas de conteo , una reducción de conteo en tiempo polinomial es un tipo de reducción (una transformación de un problema a otro) que se utiliza para definir la noción de completitud para la clase de complejidad ♯P . [ 1 ] Estas reducciones también pueden denominarse reducciones de conteo polinomiales de muchos a uno o reducciones débilmente parsimoniosas ; son análogas a las reducciones de muchos a uno para problemas de decisión y generalizan las reducciones parsimoniosas . [ 2 ]

Definición

Una reducción de conteo en tiempo polinomial se utiliza habitualmente para transformar instancias de un problema conocido y difícil.incógnita{\displaystyle X}en instancias de otro problemaY{\displaystyle Y}Eso está por demostrarse que es difícil. Consta de dos funciones.F{\displaystyle f}ygramo{\displaystyle g}, ambas deben ser computables en tiempo polinomial . La funciónF{\displaystyle f}transforma entradas paraincógnita{\displaystyle X}en entradas paraY{\displaystyle Y}y la funcióngramo{\displaystyle g}transforma salidas paraY{\displaystyle Y}en salidas paraincógnita{\displaystyle X}. [ 1 ] [ 2 ]

Estas dos funciones deben preservar la corrección de la salida. Es decir, supongamos que se transforma una entrada.incógnita{\displaystyle x}para el problemaincógnita{\displaystyle X}a una entraday=F(incógnita){\displaystyle y=f(x)}para el problemaY{\displaystyle Y}y luego se resuelvey{\displaystyle y}para producir una salidaz{\displaystyle z}Debe ser el caso que la salida transformadagramo(z){\displaystyle g(z)}es una salida correcta para la entrada originalincógnita{\displaystyle x}. Es decir, si las relaciones de entrada-salida deincógnita{\displaystyle X}yY{\displaystyle Y}Si se expresan como funciones, entonces su composición de funciones debe obedecer la identidad.incógnita=gramoYF{\displaystyle X=g\circ Y\circ f}Alternativamente, expresado en términos de algoritmos , un posible algoritmo para resolverincógnita{\displaystyle X}sería aplicarF{\displaystyle f}transformar el problema en una instancia deY{\displaystyle Y}, resuelve esa instancia y luego aplicagramo{\displaystyle g}transformar la salida deY{\displaystyle Y}en la respuesta correcta paraincógnita{\displaystyle X}. [ 1 ] [ 2 ]

Relación con otros tipos de reducción

Como caso especial, una reducción parsimoniosa es una transformación de tiempo polinomial.F{\displaystyle f}en las entradas de los problemas que preserva los valores exactos de las salidas. Dicha reducción puede verse como una reducción de conteo en tiempo polinomial, utilizando la función identidad como la funcióngramo{\displaystyle g}. [ 1 ] [ 2 ]

Aplicaciones en la teoría de la complejidad

Un problema funcional (especificado por sus entradas y salidas deseadas) pertenece a la clase de complejidad ♯P si existe una máquina de Turing no determinista que se ejecuta en tiempo polinomial, cuya salida al problema es el número de caminos de aceptación de la máquina de Turing. Intuitivamente, tales problemas cuentan el número de soluciones a problemas en la clase de complejidad NP . Un problema funcionalY{\displaystyle Y}Se dice que es ♯P-difícil si existe una reducción de conteo en tiempo polinomial a partir de cada problema.incógnita{\displaystyle X}en ♯P aY{\displaystyle Y}. Si, además,Y{\displaystyle Y}en sí pertenece a ♯P, entoncesY{\displaystyle Y}Se dice que es ♯P-completa . [ 1 ] [ 2 ] (A veces, como en el artículo original de Valiant que demuestra la completitud del permanente de matrices 0-1 , se utiliza una noción más débil de reducción, la reducción de Turing , para definir la ♯P-completitud. [ 3 ] )

El método habitual para demostrar un problemaY{\displaystyle Y}En ♯P, ser ♯P-completo significa comenzar con un único problema conocido que sea ♯P-completo.incógnita{\displaystyle X}y encontrar una reducción de conteo en tiempo polinomial a partir deincógnita{\displaystyle X}aY{\displaystyle Y}. Si existe esta reducción, entonces existe una reducción de cualquier otro problema en ♯P aY{\displaystyle Y}, obtenido componiendo una reducción del otro problema aincógnita{\displaystyle X}con la reducción deincógnita{\displaystyle X}aY{\displaystyle Y}. [ 1 ] [ 2 ]

Referencias

  1. 1 2 3 4 5 6 Gomes, Carla P. ; Sabharwal, Ashish; Selman, Bart (2009), "Capítulo 20. Conteo de modelos", en Biere, Armin; Heule, Marijn ; van Maaren, Hans; Walsh, Toby (eds.), Handbook of Satisfiability (PDF) , Frontiers in Artificial Intelligence and Applications, vol.  185, IOS Press, pp. 633– 654, ISBN  9781586039295Véase en particular las páginas 634-635 .
  2. 1 2 3 4 5 6 Creignou, Nadia; Khanna, Sanjeev ; Sudan, Madhu (2001), "2.2.2 Reducciones parsimoniosas y ♯P-completitud" , Clasificaciones de complejidad de problemas de satisfacción de restricciones booleanas , Monografías SIAM sobre matemáticas discretas y aplicaciones, Sociedad de Matemáticas Industriales y Aplicadas (SIAM), Filadelfia, PA, págs. 12–13 , doi : 10.1137/1.9780898718546 , ISBN  0-89871-479-6, MR 1827376 
  3. Valiant, LG (1979), "La complejidad del cálculo del permanente", Theoretical Computer Science , 8 (2): 189–201 , doi : 10.1016/0304-3975(79)90044-6 , MR 0526203