4.6.27 · HinglishTheory of Computation

NP-hard — harder than NP, may not be in NP

2,015 words9 min readRead in English

4.6.27 · Coding › Theory of Computation


NP-hard KYA hai?


Definition mein reductions kyun use hote hain?

Structure ko first principles se derive karna

Hum formalize karna chahte hain ki " poore class NP se kam-se-kam utna hi hard hai."

  1. " se kam-se-kam utna hard" ka matlab hona chahiye: solve karne se sasta solve ho jaata hai.
  2. Sabse sasta meaningful glue polynomial-time translation hai (taaki hardness dominate kare, translation nahi).
  3. Ek clean translation ek function hai jo poly time mein computable hai jisme Yahi many-one (Karp) reduction hai.
  4. "Har NP se kam-se-kam utna hard" yeh sab ke liye require karo.

Yahi literally NP-hard ki definition hai. Kuch extra (jaise NP) ki zarurat nahi thi — yahi precisely reason hai ki NP-hard NP ke upar stick out kar sakta hai.

Figure — NP-hard — harder than NP, may not be in NP

Reductions compose kaise hote hain (NP-hardness proofs ka engine)


Worked examples


Common mistakes (steel-manned)


Recall Feynman: 12-saal ke bacche ko samjhao

Socho ek classroom mein "NP" naam ke homework problems hain. Ek problem NP-hard hoti hai agar woh ek "master key" ho: agar tum use fast solve kar sako, toh tum us classroom ki har problem quickly solve kar sakte ho — pehle unhe isme translate karke. Lekin surprise yeh hai — master key kisi bilkul alag, aur bhi impossible room ki problem se belong kar sakti hai (jaise "kya yeh computer program kabhi band hoga?"). Woh key NP room kholne ke liye kaafi strong hai, chahe woh khud kahin aur mushkil jagah mein rehti ho. Toh "NP-hard" ka matlab hai poori NP class jitna kam-se-kam tough, iska member hona nahi.


Active-recall flashcards

NP-hard problem ki definition kya hai?
Ek problem jisme har NP, polynomial time mein usmein reduce hota hai ( sabhi NP ke liye) — NP ke sab se kam-se-kam utna hi hard.
NP-complete vs NP-hard?
NP-complete = NP-hard AND NP mein; NP-hard akele NP mein membership require nahi karta.
Ek NP-hard problem bataao jo NP mein NAHI hai.
Halting Problem (undecidable, isliye koi poly-time verifier nahi) — ya optimization TSP (decision problem nahi).
Ek NP-hard problem NP mein fail kyun ho sakti hai?
NP ko ek yes/no decision problem chahiye jisme poly-time-checkable certificate ho; NP-hard sirf ek hardness lower bound demand karta hai, toh optimization/undecidable problems hard toh qualify karti hain lekin certificate/type nahi rakhtin.
Ek naya problem NP-hard prove karne ke liye kya karte ho?
Ek KNOWN NP-hard problem ko mein reduce karo (); transitivity se poora NP mein reduce ho jaata hai.
NP-hardness prove karne ke liye reduction direction kaun si hai — mein ya se bahar?
mein: known-hard . ko kisi easy mein reduce karna sirf ki easiness prove karta hai, hardness nahi.
ki transitivity state karo aur justify karo.
Agar aur toh , ke zariye; poly∘poly poly hai aur answers preserve hote hain.
Agar , toh kya sab NP-hard problems poly-time ban jaati hain?
Nahi — sirf woh jo NP mein bhi hain (NP-complete). Undecidable NP-hard problems jaise HALT unsolvable rehti hain.
SAT NP-hard kyun hai?
Cook–Levin: kisi bhi NP machine ki poly-time accepting computation ko ek Boolean formula ke roop mein encode kiya ja sakta hai jo satisfiable hai iff input accept hota hai, poly size mein.

Connections

  • NP-complete — NP-hard and in NP
  • Cook–Levin Theorem
  • Polynomial-time many-one reduction
  • Class NP — verifier and certificate definition
  • Halting Problem — undecidability
  • P vs NP
  • 3-SAT and reduction templates
  • Decision vs Optimization problems

Concept Map

every A reduces via

to

defined by all NP reducing to L

plus membership in NP

requires

absent so outside NP

still NP-hard

no verifier yet NP-hard

builds new

composes via

Problems in NP

Poly-time many-one reduction

NP-hard

NP-complete

Short certificate verifiable in poly time

Transitivity of reductions

Halting Problem undecidable

Optimization or counting problems