Jak mogę udowodnić, że konwersja z CNF do DNF jest NP-trudna?
Nie proszę o odpowiedź, tylko kilka sugestii na temat tego, jak to udowodnić.
Jak mogę udowodnić, że konwersja z CNF do DNF jest NP-trudna?
Nie proszę o odpowiedź, tylko kilka sugestii na temat tego, jak to udowodnić.
Odpowiedzi:
Nieprzepisowo:
W DNF możesz wybrać dowolną klauzulę, aby była prawdziwa, aby formuła była prawdziwa. Oznacza to, że DNF, który jest równoważny z pewną CNF, jest w zasadzie wyliczeniem wszystkich rozwiązań boolean na CNF. Uwaga: wykładnicza liczba rozwiązań może być wykładnicza. Ponieważ rozwiązywanie wartości logicznych dla CNF dla pojedynczego rozwiązania jest zakończone NP, konwersja do DNF zasadniczo oznacza rozwiązywanie każdego rozwiązania. Jest więc co najmniej tak trudny jak Boolean SAT, a zatem jest NP-trudny.