Articulo de referencia

Teorema de la dicotomía de Schaefer

En la teoría de la complejidad computacional , una rama de la informática , el teorema de la dicotomía de Schaefer , demostrado por Thomas Jerome Schaefer , establece condicione...

En la teoría de la complejidad computacional , una rama de la informática , el teorema de la dicotomía de Schaefer , demostrado por Thomas Jerome Schaefer , establece condiciones necesarias y suficientes bajo las cuales un conjunto finito S de relaciones sobre el dominio booleano produce problemas de tiempo polinomial o NP-completos cuando las relaciones de S se utilizan para restringir algunas de las variables proposicionales . [ 1 ] Se llama teorema de la dicotomía porque la complejidad del problema definido por S está en P o es NP-completo, en contraposición a una de las clases de complejidad intermedia que se sabe que existen (suponiendo P ≠ NP ) por el teorema de Ladner .

Entre los casos especiales del teorema de dicotomía de Schaefer se incluye la NP-completitud del SAT (el problema de satisfacibilidad booleana ) y sus dos variantes más populares: el SAT 1 en 3 y el SAT 3 no todos iguales (a menudo denominado NAE-3SAT). De hecho, para estas dos variantes del SAT, el teorema de dicotomía de Schaefer demuestra que sus versiones monótonas (en las que no se permiten negaciones de variables) también son NP-completas.

Presentación original

Schaefer define un problema de decisión que denomina problema de satisfacibilidad generalizada para S (denotado por SAT( S )), dondeS={R1,,Rmetro}{\displaystyle S=\{R_{1},\ldots ,R_{m}\}}es un conjunto finito de relaciones sobre el dominio binario{0,1}{\displaystyle \{0,1\}}. Un ejemplo del problema es una fórmula S , es decir, una conjunción de restricciones de la formaRj(incógnitai1,,incógnitainorte){\displaystyle R_{j}(x_{i_{1}},\dots ,x_{i_{n}})}dóndeRjS{\displaystyle R_{j}\in S}y elincógnitaij{\displaystyle x_{i_{j}}}son variables proposicionales. El problema consiste en determinar si la fórmula dada es satisfacible, es decir , si a las variables se les pueden asignar valores de tal manera que satisfagan todas las restricciones dadas por las relaciones de S.

Schaefer identifica seis clases de conjuntos de relaciones booleanas para las cuales SAT( S ) pertenece a P y demuestra que todos los demás conjuntos de relaciones generan un problema NP-completo. Un conjunto finito de relaciones S sobre el dominio booleano define un problema de satisfacibilidad computable en tiempo polinomial si se cumple alguna de las siguientes condiciones:

  1. Todas las relaciones que no son constantemente falsas son verdaderas cuando todos sus argumentos son verdaderos;
  2. Todas las relaciones que no son constantemente falsas son verdaderas cuando todos sus argumentos son falsos;
  3. Todas las relaciones son equivalentes a una conjunción de cláusulas binarias ;
  4. Todas las relaciones son equivalentes a una conjunción de cláusulas de Horn ;
  5. Todas las relaciones son equivalentes a una conjunción de cláusulas de doble cuerno;
  6. Todas las relaciones son equivalentes a una conjunción de fórmulas afines. [ 2 ]

De lo contrario, el problema SAT( S ) es NP-completo.

Presentación moderna

Hubie Chen ofrece una presentación moderna y simplificada del teorema de Schaefer en un artículo divulgativo. [ 3 ] [ 4 ] En términos modernos, el problema SAT( S ) se considera un problema de satisfacción de restricciones sobre el dominio booleano . En este ámbito, es habitual denotar el conjunto de relaciones por Γ y el problema de decisión definido por Γ como CSP(Γ).

Esta comprensión moderna utiliza el álgebra , en particular, el álgebra universal . Para el teorema de la dicotomía de Schaefer, el concepto más importante en el álgebra universal es el de polimorfismo. Una operaciónF:DmetroD{\displaystyle f:D^{m}\to D}es un polimorfismo de una relaciónRDk{\displaystyle R\subseteq D^{k}}si, para cualquier elección de m tuplas(t11,,t1k),,(tmetro1,,tmetrok){\displaystyle (t_{11},\dotsc ,t_{1k}),\dotsc ,(t_{m1},\dotsc ,t_{mk})}de R , sostiene que la tupla obtenida a partir de estas m tuplas aplicando f coordenada por coordenada, es decir(F(t11,,tmetro1),,F(t1k,,tmetrok)){\displaystyle (f(t_{11},\dotsc ,t_{m1}),\dotsc ,f(t_{1k},\dotsc ,t_{mk}))}, está en R. Es decir, una operación f es un polimorfismo de R si R es cerrado bajo f : al aplicar f a cualquier tupla en R se obtiene otra tupla dentro de R. Se dice que un conjunto de relaciones Γ tiene un polimorfismo f si toda relación en Γ tiene f como polimorfismo. Esta definición permite la formulación algebraica del teorema de dicotomía de Schaefer.

Sea Γ un lenguaje de restricciones finito sobre el dominio booleano. El problema CSP(Γ) es decidible en tiempo polinomial si Γ tiene una de las siguientes seis operaciones como polimorfismo:

  1. la operación unaria constante 1;
  2. la operación unaria constante 0;
  3. la operación AND binaria ∧;
  4. la operación OR binaria ∨;
  5. la operación de mayoría ternariaMayoría(incógnita,y,z)=(incógnitay)(incógnitaz)(yz);{\displaystyle \operatorname {Mayoría} (x,y,z)=(x\wedge y)\vee (x\wedge z)\vee (y\wedge z);}
  6. la operación minoritaria ternariaMinoría(incógnita,y,z)=incógnitayz.{\displaystyle \operatorname {Minoría} (x,y,z)=x\oplus y\oplus z.}

De lo contrario, el problema CSP(Γ) es NP-completo.

En esta formulación, es fácil comprobar si se cumple alguna de las condiciones de manejabilidad.

Propiedades de los polimorfismos

Dado un conjunto Γ de relaciones, existe una conexión sorprendentemente estrecha entre sus polimorfismos y la complejidad computacional de CSP(Γ).

Una relación R se denomina primitiva positiva definible , o abreviada pp-definible , de un conjunto Γ de relaciones si R ( v 1 , ... , v k ) ⇔ ∃ x 1 ... x m . C se cumple para alguna conjunción C de restricciones de Γ y ecuaciones sobre las variables { v 1 ,..., v k , x 1 ,..., x m }. Por ejemplo, si Γ consiste en la relación ternaria nae ( x , y , z ) que se cumple si x , y , z no son todos iguales, y R ( x , y , z ) es xyz , entonces R puede ser pp-definida por R ( x , y , z ) ⇔ ∃ a . nae (0, x , a ) ∧ nae ( y , za ); Esta reducción se ha utilizado para demostrar que NAE-3SAT es NP-completo. El conjunto de todas las relaciones que son pp-definibles desde Γ se denota por ≪Γ≫. Si Γ' ⊆ ≪Γ≫ para algunos conjuntos de restricciones finitos Γ y Γ', entonces CSP(Γ') se reduce a CSP(Γ). [ 5 ]

Dado un conjunto Γ de relaciones, Pol (Γ) denota el conjunto de polimorfismos de Γ. Recíprocamente, si O es un conjunto de operaciones, entonces Inv ( O ) denota el conjunto de relaciones que tienen todas las operaciones en O como un polimorfismo. Pol e Inv juntos forman una conexión de Galois antitona . Para cualquier conjunto finito Γ de relaciones sobre un dominio finito, se cumple ≪Γ≫ = Inv ( Pol (Γ)), es decir, el conjunto de relaciones pp-definibles a partir de Γ puede derivarse de los polimorfismos de Γ. [ 6 ] Además, si Pol (Γ) ⊆ Pol (Γ') para dos conjuntos de relaciones finitos Γ y Γ', entonces Γ' ⊆ ≪Γ≫ y CSP(Γ') se reduce a CSP(Γ). Como consecuencia, dos conjuntos de relaciones que tienen los mismos polimorfismos conducen a la misma complejidad computacional. [ 7 ]

Generalizaciones

El análisis se ajustó posteriormente: CSP(Γ) es resoluble en co-NLOGTIME, L-completo , NL-completo , ⊕L-completo, P-completo o NP-completo, y dado Γ, se puede decidir en tiempo polinomial cuál de estos casos se cumple. [ 8 ]

El teorema de la dicotomía de Schaefer también se ha generalizado para utilizar la lógica proposicional de grafos en lugar de la lógica booleana. [ 9 ]

Si el problema consiste en contar el número de soluciones, que se denota por #CSP(Γ), entonces existe un resultado similar para el dominio binario por Creignou y Hermann. [ 10 ] Específicamente, un conjunto finito de relaciones S sobre el dominio booleano define un problema de satisfacibilidad computable en tiempo polinomial si cada relación en S es equivalente a una conjunción de fórmulas afines. [ 2 ]

Para dominios más grandes, Bulatov y Dalmau dieron una condición necesaria para la satisfacibilidad en tiempo polinomial. [ 11 ] Sea Γ un lenguaje de restricciones finito sobre el dominio booleano. Si el problema #CSP(Γ) es computable en tiempo polinomial, entonces Γ tiene una operación de Mal'tsev como polimorfismo. De lo contrario, el problema #CSP(Γ) es #P-completo . Una operación de Mal'tsev m es una operación ternaria que satisfacemetro(incógnita,y,y)=metro(y,y,incógnita)=incógnita.{\displaystyle m(x,y,y)=m(y,y,x)=x.}Un ejemplo de una operación de Mal'tsev es la operación Minoría dada en la formulación algebraica moderna del teorema de dicotomía de Schaefer anterior. Por lo tanto, cuando Γ tiene la operación Minoría como un polimorfismo, no solo es posible decidir CSP(Γ) en tiempo polinomial, sino también calcular #CSP(Γ) en tiempo polinomial. Hay un total de 4 operaciones de Mal'tsev sobre variables booleanas, determinadas por los valores demetro(T,F,T){\displaystyle m(V,F,V)}ymetro(F,T,F){\displaystyle m(F,T,F)}. Un ejemplo de uno menos simétrico viene dado pormetro(incógnita,y,z)=(incógnitaz)(¬y(incógnitaz)){\displaystyle m(x,y,z)=(x\wedge z)\vee (\neg y\wedge (x\vee z))}En otros dominios, como los grupos , algunos ejemplos de operaciones de Mal'tsev incluyen:incógnitay+z{\displaystyle x-y+z}yincógnitay1z.{\displaystyle xy^{-1}z.} Para dominios más grandes, incluso para un dominio de tamaño tres, la existencia de un polimorfismo de Mal'tsev para Γ es una condición insuficiente para la tratabilidad de #CSP(Γ). Sin embargo, la ausencia de un polimorfismo de Mal'tsev para Γ implica la #P-dureza de #CSP(Γ).

Véase también

Referencias

  1. Schaefer, Thomas J. (1978). "La complejidad de los problemas de satisfacibilidad". Actas del décimo simposio anual de la ACM sobre Teoría de la Computación - STOC '78 . págs. 216–226 . doi : 10.1145/800133.804350 . 
  2. 1 2 Schaefer (1978, p.218 izquierda) define una fórmula afín de la forma x 1 ⊕ ... ⊕ x n = c , donde cada x i es una variable, c es una constante, es decir verdadero o falso , y "⊕" denota XOR , es decir suma en un anillo booleano .
  3. Chen, Hubie (diciembre de 2009). "Un encuentro de lógica, complejidad y álgebra". ACM Computing Surveys . 42 (1): 1– 32. arXiv : cs/0611018 . doi : 10.1145/1592451.1592453 . S2CID 11975818 . 
  4. Chen, Hubie (diciembre de 2006). "Un encuentro de lógica, complejidad y álgebra". ACM SIGACT News . 37 (4): 85– 114. arXiv : cs/0611018 . doi : 10.1145/1189056.1189076 . S2CID 14130916 . 
  5. Chen (2006), pág. 8, Proposición 3.9; Chen utiliza la reducción de muchos a uno en tiempo polinomial.
  6. Chen (2006), pág. 9, Teorema 3.13
  7. Chen (2006), pág. 11, Teorema 3.15
  8. Allender, Eric; Bauland, Michael; Immerman, Neil ; Schnoor, Henning; Vollmer, Heribert (junio de 2009). "La complejidad de los problemas de satisfacibilidad: refinando el teorema de Schaefer" (PDF) . Journal of Computer and System Sciences . 75 (4): 245–254 . doi : 10.1016/j.jcss.2008.11.001 . Consultado el 19 de septiembre de 2013 .
  9. Bodirsky, Manuel; Pinsker, Michael (2015). "Teorema de Schaefer para grafos". J. ACM . 62 (3): 19:1–19:52. arXiv : 1011.2894 . doi : 10.1145/2764899 . S2CID 750401 . 
  10. Creignou, Nadia; Hermann, Miki (1996). "Complejidad de los problemas generalizados de conteo de satisfacibilidad" . Information and Computation . 125 (1): 1– 12. doi : 10.1006/inco.1996.0016 . ISSN 0890-5401 . 
  11. Bulatov, Andrei A.; Dalmau, Víctor (1 de mayo de 2007). "Hacia un teorema de dicotomía para el problema de satisfacción de restricciones de conteo" . Information and Computation . 205 (5): 651– 678. doi : 10.1016/j.ic.2006.09.005 . hdl : 10230/36327 . ISSN 0890-5401 .