Jawaban:
Untuk menunjukkan bahwa masalah NP selesai, Anda perlu:
Dengan kata lain, diberikan beberapa informasi C
, Anda dapat membuat algoritma waktu polinomial V
yang akan memverifikasi untuk setiap masukan yang mungkin X
apakah X
ada di domain Anda atau tidak.
Buktikan bahwa masalah penutup simpul (yaitu, untuk beberapa graf G
, apakah ia memiliki satu set ukuran penutup simpul k
sedemikian rupa sehingga setiap tepi di G
memiliki setidaknya satu simpul dalam set penutup ?) Ada di NP:
masukan kami X
adalah beberapa grafik G
dan beberapa angka k
(ini dari definisi masalah)
Jadikan informasi kami C
sebagai "setiap subset yang mungkin dari simpul dalam G
ukuran grafik k
"
Kemudian kita dapat menulis algoritma V
yang, diberikan G
, k
dan C
, akan mengembalikan apakah kumpulan simpul itu adalah penutup simpul G
atau tidak, dalam waktu polinomial .
Kemudian untuk setiap graf G
, jika ada beberapa "kemungkinan subset dari simpul dalam G
ukuran k
" yang merupakan penutup simpul, maka G
masuk NP
.
Perhatikan bahwa kita tidak perlu mencari C
dalam waktu polinomial. Jika kita bisa, masalahnya ada di `P.
Perhatikan bahwa algoritme V
harus berfungsi untuk setiap G
, untuk beberapa C
. Untuk setiap masukan harus ada informasi yang dapat membantu kami memverifikasi apakah masukan tersebut ada di domain bermasalah atau tidak. Artinya, tidak boleh ada masukan yang informasinya tidak ada.
Ini melibatkan mendapatkan masalah NP-complete yang diketahui seperti SAT , kumpulan ekspresi boolean dalam bentuk:
(A atau B atau C) dan (D atau E atau F) dan ...
di mana ekspresi itu memuaskan , apakah ada beberapa pengaturan untuk boolean ini, yang membuat ekspresi itu benar .
Kemudian kurangi masalah NP-complete menjadi masalah Anda dalam waktu polinomial .
Artinya, dengan beberapa masukan X
untuk SAT
(atau masalah NP-complete apa pun yang Anda gunakan), buat beberapa masukan Y
untuk masalah Anda, seperti X
dalam SAT jika dan hanya jika Y
ada dalam masalah Anda. Fungsi tersebut f : X -> Y
harus berjalan dalam waktu polinomial .
Dalam contoh di atas, inputnya Y
adalah grafik G
dan ukuran tutup puncak k
.
Untuk bukti lengkap , Anda harus membuktikan keduanya:
yang X
ada di SAT
=> Y
dalam masalah Anda
dan Y
dalam masalah Anda => X
dalam SAT
.
Jawaban marcog memiliki kaitan dengan beberapa masalah NP-complete lainnya yang dapat Anda kurangi menjadi masalah Anda.
Catatan kaki: Pada langkah 2 ( Buktikan bahwa ini NP-hard ), mengurangi masalah NP-hard (belum tentu NP-complete) ke masalah saat ini akan dilakukan, karena masalah NP-complete adalah bagian dari masalah NP-hard (yaitu juga di NP).
Anda perlu mengurangi masalah NP-Complete menjadi masalah yang Anda miliki. Jika reduksi bisa dilakukan dalam waktu polinomial maka Anda sudah membuktikan bahwa soal Anda NP-complete, jika soal sudah ada di NP, karena:
Ini tidak lebih mudah daripada masalah NP-complete, karena dapat direduksi menjadi masalah dalam waktu polinomial yang membuat masalah menjadi NP-Hard.
Lihat akhir dari http://www.ics.uci.edu/~eppstein/161/960312.html untuk lebih lanjut.
Untuk membuktikan bahwa masalah L adalah NP-complete, kita perlu melakukan langkah-langkah berikut:
Pertama, Anda menunjukkan bahwa itu terletak di NP.
Kemudian Anda menemukan masalah lain yang sudah Anda ketahui adalah NP lengkap dan menunjukkan bagaimana Anda mengurangi masalah NP Hard secara polinomial ke masalah Anda.