A topic in the Open Knowledge Graph — a free, open map of 15,290 topics and the order to learn them in.

Polynomial-Time Reductions

College Depth 89 in the knowledge graph ☐ I know this ☆ Set as goal
30topics build on this
536prerequisites beneath it
See this on the map →
NP and Polynomial-Time VerificationTime Complexity and the Class P+2 more→→Lower Bounds Techniques in Computational ComplexityMany-One and Turing Reducibility+5 more
reductions polynomial-time complexity NP-hardness

Core Idea

A polynomial-time many-one reduction (Karp reduction) from problem A to problem B is a polynomial-time computable function f such that x ∈ A iff f(x) ∈ B. If B has a polynomial-time algorithm, so does A. Polynomial-time reductions are the standard tool for proving NP-hardness: to show a new problem B is NP-hard, reduce a known NP-hard problem to B in polynomial time. This preserves computational hardness upward and solutions downward, enabling systematic comparison of complexity.

How It's Best Learned

Master the 3-SAT to 3-Colorability reduction as a template: understand both the formal gadget construction and why it is correct. Practice building reductions from 3-SAT to other NP-complete problems, always verifying correctness and polynomial-time running time.

Common Misconceptions

Explainer

Polynomial-time reductions are the backbone of complexity theory's comparative framework. You have already seen computability reductions, which ask whether one problem is computable given an oracle for another. Polynomial-time reductions sharpen that question: not only can we solve A using B, but we can do the transformation efficiently — in polynomial time. This efficiency requirement is what makes them the right tool for distinguishing tractable from intractable problems.

The formal definition of a Karp reduction (many-one polynomial-time reduction) from A to B is a function f computable in polynomial time such that x ∈ A if and only if f(x) ∈ B. Every instance of A gets mapped to an instance of B such that membership is preserved in both directions. If you can solve B efficiently, then to solve A you just transform the input and run B's algorithm. The key consequence: B being easy makes A easy, so B being hard implies A must also be hard.

This asymmetry in how hardness and ease flow is the hardest conceptual piece. The direction of the arrow A ≤_p B says "A reduces to B," meaning B is at least as hard as A — hardness travels upward, against the arrow. To prove a new problem B is NP-hard, you reduce a known NP-hard problem (like 3-SAT) to B. This shows that an efficient algorithm for B would yield an efficient algorithm for 3-SAT, which would imply P = NP. Since we believe P ≠ NP, no such algorithm for B can exist.

The classic example is the reduction from 3-SAT to 3-Colorability: given a 3-SAT formula, construct a graph (using variable gadgets and clause gadgets) such that the graph is 3-colorable exactly when the formula is satisfiable. The construction runs in polynomial time. This proves 3-Colorability is NP-hard, because if you could color graphs efficiently, you could solve 3-SAT efficiently.

Polynomial-time reductions are more restrictive than the Turing reductions encountered in computability theory. A Turing reduction allows multiple adaptive queries to an oracle; a Karp reduction must produce a single transformed instance. In practice, most NP-hardness proofs use Karp reductions, which also compose: if A ≤_p B and B ≤_p C, then A ≤_p C, allowing chains of reductions across the NP-complete problems.

Practice Questions 3 questions

Prerequisite Chain

Understanding Zero → The Number Zero → Counting to Five → Counting to 10 → Counting to 20 → Counting a Set of Objects Up to 20 → Cardinality: The Last Number Counted → Matching Numerals to Quantities → Subitizing Small Quantities → Addition Within 10 → Number Bonds to 10 → Addition Within 20 → Doubles and Near Doubles → Doubles Facts Within 10 → Near Doubles Facts Within 20 → Mental Math Strategies for Addition → Mental Math: Adding and Subtracting Tens → Addition Within 100 → Repeated Addition as Multiplication → Multiplication as Equal Groups → Multiplication: Arrays → Basic Multiplication Facts (0s, 1s, 2s, 5s, 10s) → Multiplication Facts Within 100 → Division as Equal Sharing → Division as Grouping (Measurement Division) → Division: Grouping (Repeated Subtraction) Model → Division: Fair Sharing Model → Division as Equal Sharing → Division as Grouping → Basic Division Facts → Division Facts Within 100 → Multiplication and Division Fact Families → Relationship Between Multiplication and Division → Division Facts as Inverse of Multiplication → Remainders and Quotients in Division → Division Word Problems → Multi-Step Word Problems → Solving Multi-Step Word Problems → Multiplication Word Problems → Division Word Problems → Introduction to Long Division → Factors and Multiples → Prime and Composite Numbers → Equivalent Fractions → Relating Fractions and Decimals → Decimal Place Value → Integers and the Number Line → Comparing and Ordering Integers → Absolute Value → Adding Integers → Subtracting Integers → Multiplying Integers → Introduction to Exponents → Order of Operations → Integer Order of Operations → Variable Expressions → The Distributive Property → Variables and Expressions Review → Introduction to Polynomials → Adding and Subtracting Polynomials → Multiplying Polynomials → Factorial → Permutations → Combinations → Counting Principles: Addition and Multiplication Rules → Introduction to Graph Theory → Propositional Logic Foundations → Logical Equivalences → Boolean Algebra → Introduction to Propositional Logic → Introduction to Predicate Logic (First-Order Logic) → First-Order Logic Syntax → ZFC Axioms Overview → Axiom Schema of Separation → Axiom Schema of Replacement → Von Neumann Ordinals → Hereditarily Finite Sets → Recursive Definitions on Finite Sets → Well-Founded Relations and Transfinite Recursion → The Axiom of Choice and Equivalent Formulations → Axiom of Choice → Well-Ordering Theorem → Infinite Cardinal Numbers → Cantor's Theorem → Uncountability and the Diagonal Argument → The Cantor Set: An Uncountable Nowhere Dense Example → Uncountable Sets and Cantor Diagonalization → The Halting Problem → Computability Reductions → Polynomial-Time Reductions

Longest path: 90 steps · 536 total prerequisite topics

Prerequisites (4)

Leads To (7)