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

Parameterized Complexity

Research Depth 103 in the knowledge graph ☐ I know this ☆ Set as goal
1topic build on this
526prerequisites beneath it
See this on the map →
NP-Completeness and Cook-Levin TheoremVertex Cover and Clique Problems+1 more→→Fixed-Parameter Tractability: Advanced Topics
parameterized-complexity fpt treewidth kernelization

Core Idea

Parameterized complexity refines the NP-hardness classification by asking: is a problem solvable in time f(k) * n^O(1), where k is a parameter of the input (not the input size)? Problems solvable in this form are Fixed-Parameter Tractable (FPT). Vertex cover parameterized by solution size k is FPT: solvable in O(2k * n) time via bounded search trees. Treewidth is a structural parameter that measures how "tree-like" a graph is — many NP-hard problems (independent set, coloring, Hamiltonian cycle) become FPT when parameterized by treewidth, solvable in time f(tw) * n via dynamic programming on tree decompositions. Kernelization provides a complementary approach: reducing the instance to an equivalent instance of size bounded by g(k), independent of n. The W-hierarchy (W[1], W[2], ...) classifies parameterized problems believed not to be FPT, analogous to the polynomial hierarchy for classical complexity.

Explainer

NP-hardness is a blunt instrument: it says that no polynomial-time algorithm solves all instances, but says nothing about which instances are hard. Parameterized complexity provides a finer lens. Instead of measuring complexity solely as a function of input size n, it measures complexity as f(k) * nc, where k is a problem-specific parameter and f can be any computable function. If c is a constant (independent of k), the problem is Fixed-Parameter Tractable (FPT) — the combinatorial explosion is confined to the parameter, and for small k the algorithm is efficient.

Vertex cover is the poster child. The bounded search tree algorithm picks any edge (u,v), branches on whether u or v is in the cover (one must be), and recurses with k decremented. The recursion depth is k, branching factor is 2, and each step does O(n) work: total O(2k * n). For k = 30 in a graph with a million vertices, this is about 1015 — feasible with a fast computer. The same problem solved by brute-force enumeration of size-30 subsets would require C(106, 30) operations — a number with 160 digits. FPT algorithms exploit problem structure (here, the constraint that cover vertices must hit every edge) to confine the exponential search to the parameter.

Treewidth provides a structural approach to parameterized tractability. A tree decomposition breaks a graph into overlapping "bags" arranged in a tree structure, with the constraint that each edge appears in some bag and each vertex's bags form a connected subtree. The treewidth — maximum bag size minus 1 — measures the graph's departure from tree-likeness. On trees (treewidth 1), many problems are solvable by straightforward DP. On graphs of bounded treewidth w, the same DP works but with state space exponential in w instead of n. Courcelle's meta-theorem makes this precise: any property definable in monadic second-order logic is decidable in f(w) * n time on graphs of treewidth w.

Kernelization complements FPT algorithms by reducing instances to equivalent smaller ones. A kernelization algorithm runs in polynomial time and produces an instance with size bounded by g(k) — independent of n — that has a solution if and only if the original does. For vertex cover, kernelization reduces to at most 2k vertices. This is powerful in practice: a huge graph with a small vertex cover parameter can be reduced to a tiny equivalent instance. The theory of kernelization lower bounds, using cross-composition and polynomial parameter transformations, proves that certain problems cannot have small kernels under complexity assumptions, providing a fine-grained map of which problems compress and which do not.

Practice Questions 4 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 → Boolean Type and Truth Values → Comparison Operators and Boolean Tests → Logical Operators and Boolean Algebra → Boolean Algebra and Fundamental Laws → Logic Gates Fundamentals → Implementing Boolean Functions with Gates → Karnaugh Map Simplification → Combinational Circuit Design → Flip-Flops and Latches → Finite State Machines (FSMs) → Deterministic Finite Automata (DFA) → Nondeterministic Finite Automata (NFA) → Two-Way Finite Automata → NFA to DFA Conversion (Subset Construction) → DFA Properties and Minimization Algorithms → Regular Languages: Definition and Characterization → Context-Free Grammars (CFGs) → Pushdown Automata (PDA) → Equivalence of CFGs and Pushdown Automata → Closure Properties of Context-Free Languages → Limitations of Context-Free Languages → Pumping Lemma for Context-Free Languages → Turing Machines → Variants of Turing Machines and Equivalence → Nondeterministic Time Complexity and NP → The P vs. NP Problem → Complexity Class P: Polynomial Time → Complexity Class NP: Nondeterministic Polynomial Time → NP-Completeness and Cook-Levin Theorem → The Cook-Levin Theorem → Boolean Satisfiability, Cook-Levin, and Reductions → 3-SAT and k-SAT Variants → Partition and Subset Sum Problems → Vertex Cover and Clique Problems → Parameterized Complexity

Longest path: 104 steps · 526 total prerequisite topics

Prerequisites (3)

Leads To (1)