Complejidad Semana 4 - Elisa Schaeffer...BDD del ejemplo ROBDD Ordenados en términos de las...
Transcript of Complejidad Semana 4 - Elisa Schaeffer...BDD del ejemplo ROBDD Ordenados en términos de las...
Semana 4
Complejidad
El problema de satisfacción de una expresión Booleana es NP-completo (Teorema de Cook).
Para expresiones en DNF satisfactibilidad es polinomial, pero es coNP-completo determinar si son tautologías.
Para CNF es al revés: satisfactibilidad es NP-completo pero tautologías son fáciles de checar.
La conversión de un forma normal a otro es exponencial.
Puntos extra
Describe un algoritmo polinomial que determina si un DNF es satisfactible.
Describe un algoritmo polinomial para determinar si un CNF es una tautología.
Explica porqué como consecuencia del teorema de Cook, checando que dos expresiones Booleanas no sean equivalentes debe ser NP-duro.
Diagramas binarios de decisión
Construcciones para examinar expresiones Booleanas.
Nos basamos en “Introduction to Binary Decision Diagrams” de Henrik Reif Andersen.
If-then-else
x → y0, y1 = (x ∧ y0) ∨ (¬x ∧y1)
Expresión de prueba
INF = If-then-else normal form
¬x = (x → 0, 1)
x ⇔ y = x → (y →1, 0), (y → 0, 1)
x → 1, 0
Expansión de Shannon
Denotamos por t[0/x] la expresión obtenida reemplazando x con cero en la expresión t.
Aplica que t = x → t[1/x], t[0/x].
Así cualquiera expresión Booleana se puede expresar en INF.
Se expanden todas las variables en algún orden.
Ejemplo
BDD del ejemplo ROBDD
Ordenados en términos de las variables.
El órden afecta mucho la estructura resultante.
Reducidos al forma mínimo.
Proveen representaciones compactas de expresiones Booleanas.
Permite la realización eficiente de operaciones lógicas.
Tarea
Inventen una expresión Booleana.
Usando por mínimo 3 variables y 4 conectivos básicos.
Construyan y dibujen su BDD.
Reduzcan el BDD resultante a un ROBDD.
Dibujen el ROBDD resultante.