mathlib documentation


Adjoint functor theorem #

This file proves the (general) adjoint functor theorem, in the form:

We show that the converse holds, i.e. that if G has a left adjoint then it satisfies the solution set condition, see solution_set_condition_of_is_right_adjoint (the file category_theory/adjunction/limits already shows it preserves limits).

We define the solution set condition for the functor G : D ⥤ C to mean, for every object A : C, there is a set-indexed family ${f_i : A ⟶ G (B_i)}$ such that any morphism A ⟶ G X factors through one of the f_i.

def category_theory.solution_set_condition {C : Type u} [category_theory.category C] {D : Type u} [category_theory.category D] (G : D C) :

The functor G : D ⥤ C satisfies the solution set condition if for every A : C, there is a family of morphisms {f_i : A ⟶ G (B_i) // i ∈ ι} such that given any morphism h : A ⟶ G X, there is some i ∈ ι such that h factors through f_i.

The key part of this definition is that the indexing set ι lives in Type v, where v is the universe of morphisms of the category: this is the "smallness" condition which allows the general adjoint functor theorem to go through.


If G : D ⥤ C is a right adjoint it satisfies the solution set condition.