¿Cómo puedo probar que la conversión de CNF a DNF es NP-Hard?
No estoy pidiendo una respuesta, solo algunas sugerencias sobre cómo probarlo.
¿Cómo puedo probar que la conversión de CNF a DNF es NP-Hard?
No estoy pidiendo una respuesta, solo algunas sugerencias sobre cómo probarlo.
Respuestas:
Informalmente:
En DNF, puede elegir cualquier cláusula para que sea verdadera, para que la fórmula sea verdadera. Esto significa que un DNF que es equivalente a un determinado CNF, es básicamente una enumeración de todas las soluciones a boolean sat en el CNF. Tenga en cuenta que puede haber un número exponencial de soluciones. Dado que la solución de boolean sat para CNF para una solución única es NP-complete, la conversión a DNF esencialmente significa resolver para cada solución. Por lo tanto, es al menos tan difícil como el Boolean SAT y, por lo tanto, es NP-duro.
fuente