Module 3 Glossary: Functors and Natural Transformations
Definitions for the three levels of the categorical hierarchy: categories, functors, and natural transformations. Fluency with all three levels is required before Module 4.
- Functor
- A functor F: C → D between categories C and D consists of: (1) a map F on objects: for each object c ∈ C, an object F(c) ∈ D; and (2) a map F on morphisms: for each morphism f: c → c' in C, a morphism F(f): F(c) → F(c') in D. These maps must satisfy two laws: F(id_c) = id_{F(c)} (identity preservation) and F(g ∘ f) = F(g) ∘ F(f) (composition preservation). A functor is a structure-preserving map between categories.
- Functor Laws
- The two axioms a functor F: C → D must satisfy: (1) Identity: F(id_c) = id_{F(c)} for all objects c — a functor sends identity morphisms to identity morphisms. (2) Composition: F(g ∘ f) = F(g) ∘ F(f) for all composable morphisms f: c → c' and g: c' → c'' — a functor respects composition. These laws ensure that the categorical structure (which morphisms exist and how they compose) is preserved by F.
- Covariant Functor
- A functor F: C → D that preserves the direction of morphisms: if f: c → c', then F(f): F(c) → F(c'). This is the default meaning of "functor." Most functors encountered in this course are covariant. Contrast with contravariant functors.
- Contravariant Functor
- A functor F: C^op → D that reverses the direction of morphisms: if f: c → c' in C, then F(f): F(c') → F(c) in D. A contravariant functor from C is equivalently a covariant functor from the opposite category C^op. The hom-functor hom(-, d) is contravariant in its first argument — the key example for the Yoneda Lemma (Module 4).
- Opposite Category
- The opposite category C^op of a category C has the same objects as C but all morphisms reversed: a morphism f: A → B in C becomes a morphism f^op: B → A in C^op. Composition in C^op is defined by f^op ∘ g^op = (g ∘ f)^op. The opposite category is used to handle contravariant functors covariantl and appears in the definition of presheaves (Module 11).
- Forgetful Functor
- A functor U: C → D that "forgets" some structure. For example, U: Grp → Set sends each group to its underlying set and each group homomorphism to the same function (forgetting that it is a group homomorphism). Forgetful functors are typically faithful (injective on hom-sets) but not full (not all functions are group homomorphisms). The forgetful functor is always the right adjoint in a free/forgetful adjunction (Module 6).
- Natural Transformation
- Given functors F, G: C → D, a natural transformation η: F ⟹ G is a family of morphisms η_c: F(c) → G(c) in D, one for each object c ∈ C, such that for every morphism f: c → c' in C, the naturality square commutes: η_{c'} ∘ F(f) = G(f) ∘ η_c. A natural transformation is a morphism between functors in the functor category [C, D].
- Naturality Square
- For a natural transformation η: F ⟹ G and a morphism f: c → c' in C, the naturality square is the commutative diagram: F(c) →^{η_c} G(c), F(c') →^{η_{c'}} G(c'), F(c) →^{F(f)} F(c'), G(c) →^{G(f)} G(c'). Commutativity means η_{c'} ∘ F(f) = G(f) ∘ η_c. The naturality square encodes the condition that η is "coherent" across all morphisms of C — it does not just assign components at individual objects but does so consistently across the entire category.
- Natural Isomorphism
- A natural transformation η: F ⟹ G in which every component η_c: F(c) → G(c) is an isomorphism in D. If a natural isomorphism exists, F and G are naturally isomorphic, written F ≅ G. Natural isomorphism is the correct notion of "sameness" for functors. The Yoneda Lemma (Module 4) characterizes representable functors via natural isomorphism.
- Functor Category [C, D]
- The category whose objects are functors C → D and whose morphisms are natural transformations between them. Composition of natural transformations is defined componentwise: (β ∘ α)_c = β_c ∘ α_c. Identity natural transformations have (id_F)_c = id_{F(c)}. The functor category [C, D] is itself a category, demonstrating the recursive depth of the categorical framework: categories organize not just objects and morphisms, but also functors and natural transformations.
- Full Functor
- A functor F: C → D that is surjective on hom-sets: for every morphism g: F(c) → F(c') in D, there exists a morphism f: c → c' in C with F(f) = g. A full functor "sees all the morphisms" in the image. The Yoneda embedding (Module 4) is full and faithful.
- Faithful Functor
- A functor F: C → D that is injective on hom-sets: if F(f) = F(g) for morphisms f, g: c → c', then f = g. A faithful functor "distinguishes all morphisms." Forgetful functors are typically faithful. A functor that is both full and faithful is an embedding of categories.
- Graph Homomorphism
- A structure-preserving map between graphs: a function on vertices that maps adjacent vertices to adjacent vertices. More precisely, if there is an edge (u, v) in G, then there must be an edge (f(u), f(v)) in H. Graph homomorphisms are exactly the morphisms in the category Graph, and they are exactly functors between the path categories of the two graphs.