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

Fixed-Parameter Tractability (FPT)

Graduate Depth 96 in the knowledge graph ☐ I know this ☆ Set as goal
1topic build on this
601prerequisites beneath it
See this on the map →
NP-CompletenessVertex Cover and Set Cover Problems→→Parameterized Complexity and Fixed-Parameter Tractability
parameterized-complexity tractable-hardness algorithms

Core Idea

Fixed-parameter tractability asks: while a problem is NP-hard in general, can it be solved in time f(k)·n^O(1) where k is a problem parameter (like solution size) and f is an arbitrary computable function? A problem is FPT if such algorithms exist. For instance, vertex cover is FPT parameterized by cover size k, though NP-complete in general. FPT provides a refined complexity landscape beyond classical NP-hardness.

Explainer

From NP-completeness theory, you know that many important problems are NP-hard: no polynomial-time algorithm is known, and finding one would imply P = NP. But NP-hardness is a worst-case statement that treats all inputs as equally difficult. In practice, inputs to hard problems often have structure — a small solution size, sparse graphs, bounded tree-width — and exploiting that structure can make the problem tractable. Fixed-parameter tractability formalizes this observation.

The key idea is to identify a parameter k that captures the "hard part" of the input, then analyze complexity in terms of both n (input size) and k. A problem is FPT (fixed-parameter tractable) with respect to k if it can be solved in time f(k) · nc, where f is any computable function (possibly exponential or worse in k) and c is a constant. The crucial point: for any *fixed* value of k, the running time is polynomial in n. When k is small, f(k) is just a constant multiplier, and the algorithm runs efficiently even on large inputs.

The vertex cover problem illustrates this perfectly. The problem asks: given a graph G and an integer k, does G have a vertex cover of size at most k? (A vertex cover is a set S of vertices such that every edge has at least one endpoint in S.) The brute-force approach checks all k-subsets of vertices, costing O(nk) — polynomial for fixed k, but the degree grows with k, which isn't FPT. The FPT algorithm uses a different insight: pick any uncovered edge (u,v); a valid cover must include u or v (or both). Branch into two subproblems — include u, or include v — and recurse with k decremented. The search tree has depth k and branching factor 2, so at most 2k leaf nodes, each checkable in polynomial time. Total cost: O(2k · n). This is f(k) · n1, which is FPT.

The function f(k) can be wild — 22k, k!, anything computable — and the problem is still FPT. The point is that when your actual inputs have k ≤ 20 or k ≤ 50, even an exponential-in-k factor is manageable. This makes FPT algorithms genuinely useful for real instances of NP-hard problems, provided the right parameter is small. Not every parameterization works: W[1]-hard problems (the parameterized analog of NP-hard) are unlikely to be FPT under the standard parameterization, forming a separate hardness class. The existence of a rich hierarchy (W[1], W[2], ...) shows that parameterized complexity theory, like classical complexity, has deep structure beyond a simple FPT/non-FPT divide.

The conceptual shift from classical to parameterized complexity is a shift from binary classification (tractable vs. intractable) to a refined landscape: the same problem can be FPT under one parameterization and W[1]-hard under another. Vertex cover parameterized by solution size is FPT; parameterized by the number of vertices in the complement, it's W[1]-hard. Choosing the right parameter to expose tractability is both the art and the science of the field.

Practice Questions 5 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 → Lower Bounds Techniques in Computational Complexity → NP-Completeness → The Cook-Levin Theorem → 3-SAT and NP-Completeness via CNF → Clique Problem and Its Variants → Vertex Cover and Set Cover Problems → Fixed-Parameter Tractability (FPT)

Longest path: 97 steps · 601 total prerequisite topics

Prerequisites (2)

Leads To (1)