Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Complejidad 5
Complejidad 5
Notacin: si L es completo para C, decimos que L es C-completo. o Cmo podemos demostrar que un problema L es NP-completo? o - Nos basta con demostrar que L NP y que existe una reduccin polinomial de SAT a L. o Antes de utilizar esta tcnica tenemos que pensar que versin de e o SAT usar. - En general es ms fcil utilizar frmulas en alguna forma a a o normal.
65
Una versin de SAT muy util: o CNF-SAT = { | es una frmula en CNF y es satisfacible}. o
Es CNF-SAT NP-completo? - Podemos modicar la demostracin del Teorema de Cook para o mostrar esto. Teorema: CNF-SAT es NP-completo.
66
Ahora podemos usar la idea inicial para mostrar que otros problemas son NP-completos. Algunos ejemplos:
- 3-CNF-SAT = { | es una frmula en CNF que contiene tres o literales por clusula y es satisfacible}. a - 3-COL = {G | G es una grafo 3-coloreable}. - PRO-ENT = {(A, b) | A es una matriz de enteros, b es un vector de enteros y existe un vector de enteros x tal que Ax b}.
67
Conjetura de Cook
NP.
- No existe un algoritmo eciente para resolver SAT. - Tampoco existen algoritmos ecientes para resolver ninguno de los problemas NP-completos. Cun fundamental es este problema? a
68
Conjetura de Cook
Desde la pgina del Clay Mathematics Institute: a In order to celebrate mathematics in the new millennium, The Clay Mathematics Institute of Cambridge, Massachusetts (CMI) has named seven Prize Problems. The Scientic Advisory Board of CMI selected these problems, focusing on important classic questions that have resisted solution over the years. The Board of Directors of CMI designated a $7 million prize fund for the solution to these problems, with $1 million allocated to each.
69
Conjetura de Cook
Uno de los siete problemas es PTIME versus NP: Suppose that you are organizing housing accommodations for a group of four hundred university students. Space is limited and only one hundred of the students will receive places in the dormitory. To complicate matters, the Dean has provided you with a list of pairs of incompatible students, and requested that no pair from this list appear in your nal choice. This is an example of what computer scientists call an NP-problem, since it is easy to check if a given choice of one hundred students proposed by a coworker is satisfactory ..., however the task of generating such a list from scratch seems to be so hard as to be completely impractical ... Ejercicio: Muestre que el problema mencionado en este prrafo es a NP-completo.
70
La complejidad de 2-CNF-SAT
Sea 2-CNF-SAT = { | es una frmula en CNF que contiene dos o literales por clusula y es satisfacible}. a Teorema: 2-CNF-SAT puede ser solucionado ecientemente. Demostracin: Sea una frmula en CNF que contiene dos literales o o por clusula. Asuma que menciona las variables proposicionales x1 , a . . ., xn . Sea G = (N, A) un grafo construido de la siguiente forma: - N = {x1 , . . . , xn , x1 , . . . , xn }. - Para cada clusula C = l1 l2 en , A contiene los arcos (l , l2 ) y a 1 (l , l1 ). 2 Ntese que este grafo es dirigido. o
72
La complejidad de 2-CNF-SAT
x2
x2
x3
x3
73
La complejidad de 2-CNF-SAT
Por qu construimos G ? Cul es la relacin entre y G ? e a o Vamos a demostrar que es satisfacible si y slo si no existe un o nodo xi tal que xi es alcanzable desde xi y xi es alcanzable desde xi en G . Por qu nos sirve esta propiedad? e - Porque se puede vericar en tiempo polinomial (cmo?). o
74
La complejidad de 2-CNF-SAT
() Por contradiccin: Suponga que es satisfacible y existe xi tal que o xi es alcanzable desde xi y xi es alcanzable desde xi en G . Sea una valuacin tal que () = 1. o Consideramos (xi ) = 1. El otro caso se resuelve de la misma forma. Como xi es alcanzable desde xi en G : Existe un camino l1 , . . . , lk en G tal que k 2, l1 = xi y lk = xi . Como (xi ) = 0: Existe j [1, k 1] tal que (lj ) = 1 y (lj+1 ) = 0. Como (lj , lj+1 ) A: (l lj+1 ) o (lj+1 l ) es una clusula en . a j j Pero: no satisface a ninguna de estas clusulas, por lo que () = 0, a una contradiccin. o
75
La complejidad de 2-CNF-SAT
() Suponga que para todo i [1, n]: xi no es alcanzable desde xi o xi no es alcanzable desde xi en G . o Usamos G para construir una valuacin tal que () = 1: Sea V = {x1 , . . . , xn , x1 , . . . , xn } Mientras V = elija li V tal que li no es alcanzable desde li en G V := V \ {li , li } (li ) := 1 Para todo lj tal que lj es alcanzable desde li en G V := V \ {lj , l } j (lj ) := 1
76
La complejidad de 2-CNF-SAT
Primero tenemos que demostrar que est bien denida: a - asigna un valor de verdad a cada variable xi . - No existe una variable xi tal que el procedimiento asigna 1 tanto a xi como a xi . Es claro que el primer punto se cumple (por qu?). e Segundo punto: Por contradiccin, asuma que existe xi tal que el o procedimiento asigna 1 tanto a xi como a xi . Entonces existen literales l y l tales que: - l y l fueron elegidos en la tercera linea del procedimiento. - Existe un camino l1 , . . ., lj en G tal que j 1, l1 = l y lj = xi . - Existe un camino l1 , . . ., lk en G tal que k 1, l1 = l y lk = xi .
77
La complejidad de 2-CNF-SAT
Supongamos que l fue elegido primero. Como l , . . . , l es un camino en G desde xi a Existe un camino en l: j 1 G desde l a l. Como l fue elegido primero: el procedimiento asigna 1 a ( y remueve l) tanto l como desde V . l Por lo tanto: l no es elegido y (l) = 0, una contradiccin. o
Para terminar la demostracin, tenemos que mostrar que () = 1. o - Sea C = l1 l2 una clusula en . Tenemos que demostrar que a (C) = 1.
78
La complejidad de 2-CNF-SAT
Para cada arco (l, l ) en G , el procedimiento: - asigna 0 a (l) y (l ) o - asigna 0 a (l) y 1 a (l ) o - asigna 1 a (l) y (l ). Por lo tanto: En los dos primeros casos (l1 ) = 1, y en el ultimo caso (l2 ) = 1. En cualquiera de los tres casos, (l1 l2 ) = 1.
79
Clusulas de Horn a
Notacin: p es un literal positivo y p es un literal negativo. o Una clusula C es de Horn si C contiene a lo ms un literal a a positivo. Ejemplos: p q r, q r, p, q.
Conocimiento denitivo
Una frmula (p q) r expresa conocimiento denitivo: o - Si sabemos que p y q son verdaderos, entonces tambin sabemos que e r es verdadero.
En cambio, una frmula (p q) (r s) no expresa conocimiento o denitivo: - Si sabemos que p y q son verdaderos, no podemos concluir que r es verdadero ni tampoco podemos concluir que s es verdadero, slo o podemos concluir que alguno de los dos es verdadero. - Esta frmula expresa conocimiento disyuntivo. o
81
Conocimiento denitivo
La clusulas de Horn corresponden al siguiente tipo de reglas que a expresan conocimiento denitivo: - q. - q. - (p1 pn ) q. - (p1 pn ) q. En muchos casos es posible modelar el dominio de aplicacin o usando slo este tipo de reglas. o
82
La complejidad de HORN-SAT
83
La complejidad de NEG-HORN-SAT
84