Sebagai pendekatan intuitif, pertimbangkan bahwa instantiasi masalah NP-complete tidak selalu sesulit kasus umum. Binary satisifiability (SAT) adalah NP-complete, tetapi sepele untuk menemukan solusi untuk A v B v C v D v ... Algoritma kompleksitas hanya mengikat kasus terburuk, bukan kasus rata-rata, atau bahkan kasus 90% .
Cara termudah untuk mengurangi masalah NP-lengkap menjadi sesuatu yang lebih sederhana adalah dengan hanya mengecualikan bagian-bagian yang sulit. Itu curang, ya. Tetapi seringkali bagian yang tersisa masih berguna untuk memecahkan masalah dunia nyata. Dalam beberapa kasus, garis antara "mudah" dan "sulit mudah untuk ditarik. Seperti yang Anda tunjukkan untuk TSP, ada pengurangan yang kuat dalam kesulitan saat Anda membatasi masalah di sekitar arah" normal "yang mungkin dipikirkan orang. Untuk masalah lain , lebih sulit untuk menemukan cara berguna kehidupan nyata untuk memisahkan bagian yang mudah dan sulit.
Untuk benar-benar meninggalkan ranah CS dan matematika, pertimbangkan sebuah mobil tua. Temanmu ingin mengendarainya. Jika Anda harus memberitahunya, "hei, mobilnya berfungsi sempurna. Hanya saja, jangan naik di atas 95mph. Ada goyangan jahat yang akan menjatuhkan Anda dari jalan," mungkin itu bukan masalah besar. Teman Anda mungkin hanya ingin membawanya berkeliling kota saja. Namun, jika Anda harus mengatakan kepadanya, "Anda harus menggunakan kopling tepat untuk beralih dari tanggal 1 ke 2, atau mesin akan berhenti," mungkin akan lebih sulit bagi teman Anda untuk menggunakan mobil di sekitar kota tanpa sedikit pelatihan.
Demikian juga, jika masalah NP-lengkap terjadi hanya menjadi sulit dalam kasus-kasus eksotis, itu mengurangi kompleksitas lebih cepat ketika Anda melihat subdomain. Namun, jika semakin sulit dalam kasus yang umum terjadi, tidak ada banyak subdomain berguna yang menghindari bagian yang sulit.