File: Mathlib/CategoryTheory/Bicategory/Kan/Adjunction.lean

full_name: CategoryTheory.Bicategory.Adjunction.isAbsoluteLeftKan
code: /-- For an adjuntion `f ⊣ u`, `u` is an absolute left Kan extension of the identity along `f`.
The unit of this Kan extension is given by the unit of the adjunction. -/
def Adjunction.isAbsoluteLeftKan {f : a ⟶ b} {u : b ⟶ a} (adj : f ⊣ u) :
    IsAbsKan (.mk u adj.unit) 
goal: (CategoryTheory.Bicategory.LeftExtension.mk u adj.unit).IsAbsKan

full_name: CategoryTheory.Bicategory.LeftExtension.IsKan.adjunction
code: /-- A left Kan extension of the identity along `f` such that `f` commutes with is a right adjoint
to `f`. The unit of this adjoint is given by the unit of the Kan extension. -/
def LeftExtension.IsKan.adjunction {f : a ⟶ b} {t : LeftExtension f (𝟙 a)}
    (H : IsKan t) (H' : IsKan (t.whisker f)) :
      f ⊣ t.extension 
goal: CategoryTheory.Bicategory.Adjunction f t.extension

full_name: CategoryTheory.Bicategory.LeftExtension.IsAbsKan.adjunction
code: /-- For an adjuntion `f ⊣ u`, `u` is a left Kan extension of the identity along `f`.
The unit of this Kan extension is given by the unit of the adjunction. -/
def LeftExtension.IsAbsKan.adjunction {f : a ⟶ b} (t : LeftExtension f (𝟙 a)) (H : IsAbsKan t) :
    f ⊣ t.extension 
goal: CategoryTheory.Bicategory.Adjunction f t.extension

full_name: CategoryTheory.Bicategory.isLeftAdjoint_TFAE
code: theorem isLeftAdjoint_TFAE (f : a ⟶ b) :
    List.TFAE [
      IsLeftAdjoint f,
      HasAbsLeftKanExtension f (𝟙 a),
      ∃ _ : HasLeftKanExtension f (𝟙 a), Lan.CommuteWith f (𝟙 a) f] 
goal: [CategoryTheory.Bicategory.IsLeftAdjoint f,
    CategoryTheory.Bicategory.HasAbsLeftKanExtension f (CategoryTheory.CategoryStruct.id a),
    ∃ (x : CategoryTheory.Bicategory.HasLeftKanExtension f (CategoryTheory.CategoryStruct.id a)),
      CategoryTheory.Bicategory.Lan.CommuteWith f (CategoryTheory.CategoryStruct.id a) f].TFAE

full_name: CategoryTheory.Bicategory.Adjunction.isAbsoluteLeftKanLift
code: /-- For an adjuntion `f ⊣ u`, `f` is an absolute left Kan lift of the identity along `u`.
The unit of this Kan lift is given by the unit of the adjunction. -/
def Adjunction.isAbsoluteLeftKanLift {f : a ⟶ b} {u : b ⟶ a} (adj : f ⊣ u) :
    IsAbsKan (.mk f adj.unit) 
goal: (CategoryTheory.Bicategory.LeftLift.mk f adj.unit).IsAbsKan

full_name: CategoryTheory.Bicategory.LeftLift.IsKan.adjunction
code: /-- A left Kan lift of the identity along `u` such that `u` commutes with is a left adjoint
to `u`. The unit of this adjoint is given by the unit of the Kan lift. -/
def LeftLift.IsKan.adjunction {u : b ⟶ a} {t : LeftLift u (𝟙 a)}
    (H : IsKan t) (H' : IsKan (t.whisker u)) :
      t.lift ⊣ u 
goal: CategoryTheory.Bicategory.Adjunction t.lift u

full_name: CategoryTheory.Bicategory.LeftLift.IsAbsKan.adjunction
code: /-- For an adjuntion `f ⊣ u`, `f` is a left Kan lift of the identity along `u`.
The unit of this Kan lift is given by the unit of the adjunction. -/
def LeftLift.IsAbsKan.adjunction {u : b ⟶ a} (t : LeftLift u (𝟙 a)) (H : IsAbsKan t) :
    t.lift ⊣ u 
goal: CategoryTheory.Bicategory.Adjunction t.lift u

full_name: CategoryTheory.Bicategory.isRightAdjoint_TFAE
code: theorem isRightAdjoint_TFAE (u : b ⟶ a) :
    List.TFAE [
      IsRightAdjoint u,
      HasAbsLeftKanLift u (𝟙 a),
      ∃ _ : HasLeftKanLift u (𝟙 a), LanLift.CommuteWith u (𝟙 a) u] 
goal: [CategoryTheory.Bicategory.IsRightAdjoint u,
    CategoryTheory.Bicategory.HasAbsLeftKanLift u (CategoryTheory.CategoryStruct.id a),
    ∃ (x : CategoryTheory.Bicategory.HasLeftKanLift u (CategoryTheory.CategoryStruct.id a)),
      CategoryTheory.Bicategory.LanLift.CommuteWith u (CategoryTheory.CategoryStruct.id a) u].TFAE

full_name: CategoryTheory.Bicategory.LeftExtension.isKanOfWhiskerLeftAdjoint
code: /-- A left adjoint commutes with a left Kan extension. -/
def isKanOfWhiskerLeftAdjoint
    {f : a ⟶ b} {g : a ⟶ c} {t : LeftExtension f g} (H : LeftExtension.IsKan t)
      {x : B} {h : c ⟶ x} {u : x ⟶ c} (adj : h ⊣ u) :
        LeftExtension.IsKan (t.whisker h) 
goal: (t.whisker h).IsKan

full_name: CategoryTheory.Bicategory.LeftExtension.instCommuteWithOfIsLeftAdjoint
code: instance {f : a ⟶ b} {g : a ⟶ c} {x : B} {h : c ⟶ x} [IsLeftAdjoint h] [HasLeftKanExtension f g] :
    Lan.CommuteWith f g h 
goal: CategoryTheory.Bicategory.Lan.CommuteWith f g h