Categories.Adjoint
Anna Williams, 6 March 2026 Definition of adjoint.{-# OPTIONS --safe --without-K #-} open import MLTT.Spartan open import UF.FunExt open import Notation.UnderlyingType open import Categories.Pre open import Categories.Functor open import Categories.Functor-Composition open import Categories.NaturalTransformation open import Categories.Notation.Functor open import Categories.Notation.NaturalTransformation module Categories.Adjoint whereA functor F : A → B is left adjoint [1], if there exists - a functor G : B → A, - a natural transformation η : id A → GF, the unit, and - a natual transformation ε : FG → id B, the counit. Such that - (εF)(Fη) = id F, and - (Gε)(ηG) = id G. [1] The Univalent Foundations Program (2013), Homotopy Type Theory: Univalent Foundations of Mathematics. Institute for Advanced Study: https://homotopytypetheory.org/book.record LeftAdjoint {A : Precategory 𝓤 𝓥} {B : Precategory 𝓦 𝓣} (F : Functor A B) (fe : Fun-Ext) : 𝓤 ⊔ 𝓥 ⊔ 𝓦 ⊔ 𝓣 ̇ where field G : Functor B A unit : NaturalTransformation (id-functor A) (G F∘ F) counit : NaturalTransformation (F F∘ G) (id-functor B) private η = unit ε = counit private εF = transport (NaturalTransformation ((F F∘ G) F∘ F)) (id-left-neutral-F∘ fe F) (ε · F) Fη = transport (NaturalTransformation F) (assoc-F∘ fe F G F) (transport (λ - → NaturalTransformation - (F F∘ (G F∘ F))) (id-right-neutral-F∘ fe F) (F ·' η)) Gε = transport (NaturalTransformation (G F∘ (F F∘ G))) (id-right-neutral-F∘ fe G) (G ·' ε) ηG = transport (NaturalTransformation G) ((assoc-F∘ fe G F G)⁻¹) (transport (λ - → NaturalTransformation - ((G F∘ F) F∘ G)) (id-left-neutral-F∘ fe G) (η · G)) field first-axiom : εF N∘ Fη = id-natural-transformation F second-axiom : Gε N∘ ηG = id-natural-transformation G