Gagasan pengurangan waktu polinomial (pengurangan Cook) adalah abstraksi dari konsep yang sangat intuitif: secara efisien menyelesaikan masalah dengan menggunakan algoritma untuk masalah yang berbeda.
Namun, dalam teori kelengkapan, gagasan kekerasan ditangkap melalui pemetaan reduksi (pengurangan Karp). Konsep pengurangan "terbatas" ini kurang intuitif (setidaknya bagi saya). Bahkan tampaknya sedikit dibuat-buat, karena ia menciptakan gagasan tentang kekerasan yang agak kurang intuitif; oleh bahwa aku mengacu pada fakta bahwa tidak sepele mengandung . Meskipun dalam teori kompleksitas kita sangat terbiasa dengan konsep yang mampu menyelesaikan masalah seperti tidak menyiratkan bahwa kita dapat menyelesaikan¯ S A T S A T ¯ S A T S A T, dalam pengaturan alami (yang ditangkap oleh pengurangan Cook), dengan asumsi kami memiliki algoritme untuk menyelesaikan , kami dapat memecahkan hanya dengan menjalankan algoritme untuk dan mengembalikan yang sebaliknya.
Pertanyaan saya adalah mengapa kita harus menggunakan pengurangan Karp untuk teori -completeness? Gagasan intuitif apa yang ditangkapnya? Bagaimana hubungannya dengan cara kita memahami "kekerasan perhitungan" di dunia nyata?
Jawaban:
Seperti pengurangan Turing, banyak-satu pengurangan datang ke teori kompleksitas dari literatur teori komputasi / rekursi. Pengurangan Cook dan Karp adalah versi teoritis kompleksitas alami dari pengurangan yang sama dalam komputasi.
Ada cara intuitif untuk menjelaskan banyak-satu pengurangan: itu adalah pembatasan pengurangan Turing di mana kita hanya bisa mengajukan satu pertanyaan dari oracle dan jawaban oracle akan menjadi jawaban kita.
Sekarang pertanyaannya adalah mengapa kita perlu mempelajari ini (dan jenis pengurangan lainnya seperti tabel kebenaran, tabel kebenaran lemah, dll.)?
Reduksi ini memberikan gambar yang lebih bagus daripada reduksi Turing. Pengurangan Turing terlalu kuat untuk dibedakan antara banyak konsep. Sebagian besar teori komputabilitas dikhususkan untuk mempelajari derajat ce / re. Gagasan set ce adalah pusat. Kita dapat memiliki mesin TM yang dapat menyebutkan satu set infinite, kita mungkin tidak dapat menghitung komplemennya. Jika Anda ingin mempelajari set ce maka pengurangan Turing terlalu kuat karena set ce tidak ditutup di bawahnya. Begitu banyak pengurangan adalah cara alami (dan mungkin) mendefinisikan pengurangan untuk tujuan ini.
Jenis pengurangan lainnya didefinisikan untuk alasan yang sama. Jika Anda tertarik, saya sarankan untuk memeriksa "Teori Rekursi Klasik" karya Piergiorgio Odifreddi. Ini memiliki bab yang cukup komprehensif tentang berbagai pengurangan dan hubungan mereka.
sumber
ada beberapa pertanyaan di situs ini yang terkait dengan pengurangan Cook vs Karp. belum melihat deskripsi yang sangat jelas tentang hal ini untuk orang baru karena sifatnya agak halus dalam banyak hal dan merupakan area penelitian aktif / terbuka. berikut adalah beberapa referensi yang mungkin berguna untuk mengatasinya. seperti yang diringkas oleh wikipedia, "Banyak-satu pengurangan berharga karena sebagian besar kelas kompleksitas yang dipelajari dengan baik ditutup di bawah beberapa jenis reducibilitas banyak-satu, termasuk P, NP, L, NL, co-NP, PSPACE, EXP, dan banyak lainnya. Kelas-kelas ini tidak ditutup dengan reduksi banyak-satu yang sewenang-wenang.
tampaknya adil untuk mengatakan bahwa bahkan ahli teori tingkat lanjut secara aktif merenungkan perbedaan dan perbedaan yang tepat seperti dalam referensi di bawah ini dan cerita lengkapnya tidak akan tersedia kecuali pemisahan kelas kompleksitas terbuka yang penting diselesaikan, yaitu pertanyaan-pertanyaan ini tampaknya terpotong menjadi pusat yang diketahui vs tidak diketahui.
[1] Cook versus Karp-Levin: Memisahkan Kelengkapan Gagasan Jika NP Tidak Kecil (1992) Lutz, Mayordomo
[2] Apakah Masak dan Karp Selalu Sama? Beigel dan Fortnow
[3] Lebih Banyak Masalah NP-Lengkap (PPT) lihat slide 9-14 tentang perbedaan riwayat & Cook vs pengurangan Karp
sumber