Bagaimana saya dapat membuktikan bahwa konversi dari CNF ke DNF adalah NP-Hard?
Saya tidak meminta jawaban, hanya beberapa saran tentang bagaimana cara membuktikannya.
Bagaimana saya dapat membuktikan bahwa konversi dari CNF ke DNF adalah NP-Hard?
Saya tidak meminta jawaban, hanya beberapa saran tentang bagaimana cara membuktikannya.
Jawaban:
Secara informal:
Di DNF, Anda dapat memilih klausa mana pun untuk menjadi kenyataan, untuk membuat formula itu benar. Ini berarti bahwa DNF yang setara dengan CNF tertentu, pada dasarnya adalah enumerasi semua solusi untuk boolean yang tersimpan di CNF. Catatan, mungkin ada sejumlah solusi eksponensial. Karena menyelesaikan boolean sat untuk CNF untuk satu solusi adalah NP-complete, konversi ke DNF pada dasarnya berarti pemecahan untuk setiap solusi. Jadi setidaknya sekeras Boolean SAT, dan karenanya NP-keras.
sumber