Functors

Graduate Depth 57 in the knowledge graph I know this Set as goal
Unlocks 94 downstream topics
functors structure-preserving maps covariant contravariant

Core Idea

A functor F: C → D between categories assigns to each object A in C an object F(A) in D, and to each morphism f: A → B a morphism F(f): F(A) → F(B), preserving composition and identities: F(g∘f) = F(g)∘F(f) and F(id_A) = id_{F(A)}. Functors are the morphisms of the category of categories; they include familiar constructions like the forgetful functor from Grp to Set, the free group functor, and the fundamental group functor in topology. A contravariant functor reverses the direction of morphisms and can be viewed as a covariant functor from C^op.

How It's Best Learned

Work through at least three concrete functors: the forgetful functor from groups to sets, the power set functor on Set, and the hom-functor Hom(A, -). Verify functoriality axioms explicitly for each. Then identify where contravariance arises naturally (e.g., Hom(-, B) reverses arrows).

Common Misconceptions

Explainer

In category theory, you have seen that a category consists of objects, morphisms between them, composition of morphisms, and identity morphisms — and that all of the interesting information lives in the morphisms, not just in the objects. A functor is the natural notion of a structure-preserving map between categories: it translates one category into another in a way that respects all of this structure.

Formally, a functor F: C → D has two components. First, an object map: for every object A in C, it assigns an object F(A) in D. Second, a morphism map: for every morphism f: A → B in C, it assigns a morphism F(f): F(A) → F(B) in D. These two components must satisfy the functoriality axioms: F preserves composition, meaning F(g∘f) = F(g)∘F(f), and F preserves identities, meaning F(id_A) = id_{F(A)}. If either axiom fails, the map is not a functor — it does not respect categorical structure.

The forgetful functor U: Grp → Set is the most accessible example. It sends each group (G, ·) to its underlying set G, forgetting the multiplication structure. Each group homomorphism h: G → H is already a function between sets, so U(h) = h as a bare function. Composition and identities are preserved trivially. The power set functor P: Set → Set is another example: it sends each set X to its power set P(X), and each function f: X → Y to the function P(f): P(X) → P(Y) defined by P(f)(S) = {f(s) | s ∈ S}. Checking functoriality here requires a small calculation worth doing.

Contravariant functors arise when the morphism map reverses arrows: F sends f: A → B to F(f): F(B) → F(A). The most important example is the contravariant hom-functor Hom(-, B): C^op → Set, which sends each object A to the set of morphisms Hom(A, B) and each morphism f: A → A' to the pre-composition function f*: Hom(A', B) → Hom(A, B). This reversal is not an anomaly but a fundamental feature: contravariant functors appear naturally whenever you are mapping into a target rather than out of it. The clean way to handle them is to note that a contravariant functor C → D is the same as a covariant functor C^op → D, so all theorems about covariant functors apply.

Functors are not merely curiosities — they are the morphisms of the category Cat (the category of all small categories), so they allow you to reason about categories as objects in their own right. More concretely, every major construction in mathematics that maps between mathematical structures and does so coherently — fundamental groups in topology, homology groups in algebraic topology, free constructions in algebra — is a functor. The discipline of checking that a construction is actually functorial (rather than just defined on objects) is what forces mathematical precision and reveals hidden structure. Natural transformations, which you will study next, are the morphisms between functors, and together they give you the tools to compare mathematical structures at a level of abstraction that pays off across all of modern mathematics.

Practice Questions 3 questions

Prerequisite Chain

Counting to 10Counting to 20Understanding ZeroThe Number ZeroCounting to FiveOne-to-One CorrespondenceCombining Small Groups Within 5Addition Within 10Addition Within 20Two-Digit Addition Without RegroupingTwo-Digit Addition with RegroupingAddition Within 100Repeated Addition as MultiplicationMultiplication Facts Within 100Division as Equal SharingDivision as Grouping (Measurement Division)Division: Grouping (Repeated Subtraction) ModelDivision: Fair Sharing ModelDivision as Equal SharingDivision as GroupingBasic Division FactsDivision Facts Within 100Two-Digit by One-Digit DivisionDivision with RemaindersRemainders and Quotients in DivisionDivision Word ProblemsIntroduction to Long DivisionFactors and MultiplesPrime and Composite NumbersEquivalent FractionsRelating Fractions and DecimalsDecimal Place ValueIntegers and the Number LineOpposites and Additive InversesAbsolute ValueAdding IntegersSubtracting IntegersMultiplying IntegersDividing IntegersUnit RatesProportionsPercent ConceptConverting Between Fractions, Decimals, and PercentsOperations with Rational NumbersTwo-Step EquationsSolving Multi-Step EquationsEquations with Variables on Both SidesLiteral EquationsSlope-Intercept FormPoint-Slope FormWriting Linear EquationsParallel and Perpendicular Line SlopesGraphing Linear EquationsPiecewise FunctionsStep FunctionsComposition of FunctionsCategories and MorphismsFunctors

Longest path: 58 steps · 274 total prerequisite topics

Prerequisites (6)

Leads To (21)