← Back to CoursesComputer Science: Advanced

Neuroanatomy Explorer

Drag to rotate · scroll to zoom · click regions to explore

View
Loading 3D model…

Click a region
to explore it

Memory Deck

Flip each card and rate whether you knew it. Your score is saved.

Term
Definition

Deck complete — score saved.

Match the Pairs

Match each term to its definition. Finish the board to earn your score.

All matched — score saved.

Concept Constellation

Every key idea in this course, mapped as an explorable 3D constellation. Drag to rotate, scroll to zoom, click a node.

Click a node to read its definition.

Reductions, NP-Completeness, and Problem Hardness

Manual: General · Subject: Computer Science

Learn how hardness is transferred and why NP-completeness is the benchmark for intractability.

Reductions as a Universal Language

Reduction Concept

A reduction transforms instances of one problem into instances of another while preserving answers. If problem AA reduces to problem BB, then a solver for BB yields a solver for AA.

Hardness Vocabulary

Polynomial-time reduction
A mapping computable in polynomial time that preserves yes/no answers.
NP-hard
At least as hard as every problem in NPNP under polynomial-time reductions.
NP-complete
Both in NPNP and NPNP-hard.
Cook-Levin theorem
The first NP-complete problem was shown via Boolean satisfiability.

A problem is NP-complete if it is...

Why is SAT historically important in complexity theory?

Proving NP-Completeness

  1. 1

    Show the target problem is in NPNP.

  2. 2

    Choose a known NP-complete source problem, such as 33-SAT or CLIQUE.

  3. 3

    Construct a polynomial-time reduction from the source to the target.

  4. 4

    Prove correctness in both directions.

  5. 5

    Conclude NP-completeness.

⚠️

Common Pitfall

To prove a problem is NP-hard, you reduce a known hard problem to it — not the other way around.

Reduction Directions

Source to target

  • Used to prove target hardness
  • The standard NP-hardness direction
  • Shows the target is at least as hard as the source

Target to source

  • Usually proves little about hardness
  • Often the wrong direction for reductions
  • Can imply the source is no harder than the target

Which direction is standard for proving a new problem BB is NP-hard?

Why Hardness Results Matter in Practice

Hardness results do not say a problem cannot be solved; they say that a general polynomial-time algorithm is unlikely unless foundational complexity assumptions fail. This guides practitioners toward heuristics, approximation, parameterization, or special-case structure.