ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- CategoryTheory.Center.associator_hom_f
@[simp]
theorem associator_hom_f (X Y Z : Center C) : Hom.f (α_ X Y Z).hom = (α_ X.1 Y.1 Z.1).hom 
Arguments: {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] (X Y Z : CategoryTheory.Center C)
Goal: (α_ X Y Z).hom.f = (α_ X.fst Y.fst Z.fst).hom
-- CategoryTheory.Center.associator_inv_f
@[simp]
theorem associator_inv_f (X Y Z : Center C) : Hom.f (α_ X Y Z).inv = (α_ X.1 Y.1 Z.1).inv 
Arguments: {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] (X Y Z : CategoryTheory.Center C)
Goal: (α_ X Y Z).inv.f = (α_ X.fst Y.fst Z.fst).inv
-- CategoryTheory.Center.leftUnitor_hom_f
@[simp]
theorem leftUnitor_hom_f (X : Center C) : Hom.f (λ_ X).hom = (λ_ X.1).hom 
Arguments: {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] (X : CategoryTheory.Center C)
Goal: (λ_ X).hom.f = (λ_ X.fst).hom
-- CategoryTheory.Center.leftUnitor_inv_f
@[simp]
theorem leftUnitor_inv_f (X : Center C) : Hom.f (λ_ X).inv = (λ_ X.1).inv 
Arguments: {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] (X : CategoryTheory.Center C)
Goal: (λ_ X).inv.f = (λ_ X.fst).inv
-- CategoryTheory.Center.rightUnitor_hom_f
@[simp]
theorem rightUnitor_hom_f (X : Center C) : Hom.f (ρ_ X).hom = (ρ_ X.1).hom 
Arguments: {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] (X : CategoryTheory.Center C)
Goal: (ρ_ X).hom.f = (ρ_ X.fst).hom
-- CategoryTheory.Center.rightUnitor_inv_f
@[simp]
theorem rightUnitor_inv_f (X : Center C) : Hom.f (ρ_ X).inv = (ρ_ X.1).inv 
Arguments: {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] (X : CategoryTheory.Center C)
Goal: (ρ_ X).inv.f = (ρ_ X.fst).inv
-- CategoryTheory.Center.forget_toLaxMonoidalFunctor_ε
@[simps]
def forget : MonoidalFunctor (Center C) C 
Arguments: (C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C]
Goal: (CategoryTheory.Center.forget C).ε = 𝟙 (𝟙_ C)
-- CategoryTheory.Center.forget_toLaxMonoidalFunctor_toFunctor_map
@[simps]
def forget : MonoidalFunctor (Center C) C 
Arguments: (C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C]
Goal: ∀ {X Y : CategoryTheory.Center C} (f : X ⟶ Y), (CategoryTheory.Center.forget C).map f = f.f
-- CategoryTheory.Center.forget_toLaxMonoidalFunctor_μ
@[simps]
def forget : MonoidalFunctor (Center C) C 
Arguments: (C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] (X Y : CategoryTheory.Center C)
Goal: (CategoryTheory.Center.forget C).μ X Y = 𝟙 (X.fst ⊗ Y.fst)
-- CategoryTheory.Center.forget_toLaxMonoidalFunctor_toFunctor_obj
@[simps]
def forget : MonoidalFunctor (Center C) C 
Arguments: (C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] (X : CategoryTheory.Center C)
Goal: (CategoryTheory.Center.forget C).obj X = X.fst
-- CategoryTheory.Center.braiding_hom_f
@[simps!]
def braiding (X Y : Center C) : X ⊗ Y ≅ Y ⊗ X 
Arguments: {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] (X Y : CategoryTheory.Center C)
Goal: (X.braiding Y).hom.f = (X.snd.β Y.fst).hom
-- CategoryTheory.Center.braiding_inv_f
@[simps!]
def braiding (X Y : Center C) : X ⊗ Y ≅ Y ⊗ X 
Arguments: {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] (X Y : CategoryTheory.Center C)
Goal: (X.braiding Y).inv.f = (X.snd.β Y.fst).inv
-- CategoryTheory.Center.ofBraidedObj_fst
@[simps]
def ofBraidedObj (X : C) : Center C 
Arguments: {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] [CategoryTheory.BraidedCategory C] (X : C)
Goal: (CategoryTheory.Center.ofBraidedObj X).fst = X
-- CategoryTheory.Center.ofBraidedObj_snd_β
@[simps]
def ofBraidedObj (X : C) : Center C 
Arguments: {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] [CategoryTheory.BraidedCategory C] (X Y : C)
Goal: (CategoryTheory.Center.ofBraidedObj X).snd.β Y = β_ X Y
-- CategoryTheory.Center.ofBraided_toLaxMonoidalFunctor_μ_f
@[simps]
def ofBraided : MonoidalFunctor C (Center C) 
Arguments: (C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] [CategoryTheory.BraidedCategory C] (X Y : C)
Goal: ((CategoryTheory.Center.ofBraided C).μ X Y).f =
  𝟙
    ({ obj := CategoryTheory.Center.ofBraidedObj, map := fun {X Y} f => { f := f, comm := ⋯ }, map_id := ⋯,
              map_comp := ⋯ }.obj
          X ⊗
        { obj := CategoryTheory.Center.ofBraidedObj, map := fun {X Y} f => { f := f, comm := ⋯ }, map_id := ⋯,
              map_comp := ⋯ }.obj
          Y).fst
-- CategoryTheory.Center.ofBraided_toLaxMonoidalFunctor_ε_f
@[simps]
def ofBraided : MonoidalFunctor C (Center C) 
Arguments: (C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] [CategoryTheory.BraidedCategory C]
Goal: (CategoryTheory.Center.ofBraided C).ε.f = 𝟙 (𝟙_ (CategoryTheory.Center C)).fst
-- CategoryTheory.Center.ofBraided_toLaxMonoidalFunctor_toFunctor_map_f
@[simps]
def ofBraided : MonoidalFunctor C (Center C) 
Arguments: (C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] [CategoryTheory.BraidedCategory C]
Goal: ∀ {X Y : C} (f : X ⟶ Y), ((CategoryTheory.Center.ofBraided C).map f).f = f
-- CategoryTheory.Center.ofBraided_toLaxMonoidalFunctor_toFunctor_obj
@[simps]
def ofBraided : MonoidalFunctor C (Center C) 
Arguments: (C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] [CategoryTheory.BraidedCategory C] (X : C)
Goal: (CategoryTheory.Center.ofBraided C).obj X = CategoryTheory.Center.ofBraidedObj X
-- CategoryTheory.Functor.RightExtension.mk_hom
@[simps!]
def RightExtension.mk (F' : D ⥤ H) {L : C ⥤ D} {F : C ⥤ H} (α : L ⋙ F' ⟶ F) :
    RightExtension L F 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : L.comp F' ⟶ F)
Goal: (CategoryTheory.Functor.RightExtension.mk F' α).hom = α
-- CategoryTheory.Functor.RightExtension.mk_right_as
@[simps!]
def RightExtension.mk (F' : D ⥤ H) {L : C ⥤ D} {F : C ⥤ H} (α : L ⋙ F' ⟶ F) :
    RightExtension L F 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : L.comp F' ⟶ F)
Goal: (CategoryTheory.Functor.RightExtension.mk F' α).right.as = PUnit.unit
-- CategoryTheory.Functor.RightExtension.mk_left
@[simps!]
def RightExtension.mk (F' : D ⥤ H) {L : C ⥤ D} {F : C ⥤ H} (α : L ⋙ F' ⟶ F) :
    RightExtension L F 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : L.comp F' ⟶ F)
Goal: (CategoryTheory.Functor.RightExtension.mk F' α).left = F'
-- CategoryTheory.Functor.LeftExtension.mk_left_as
@[simps!]
def LeftExtension.mk (F' : D ⥤ H) {L : C ⥤ D} {F : C ⥤ H} (α : F ⟶ L ⋙ F') :
    LeftExtension L F 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : F ⟶ L.comp F')
Goal: (CategoryTheory.Functor.LeftExtension.mk F' α).left.as = PUnit.unit
-- CategoryTheory.Functor.LeftExtension.mk_right
@[simps!]
def LeftExtension.mk (F' : D ⥤ H) {L : C ⥤ D} {F : C ⥤ H} (α : F ⟶ L ⋙ F') :
    LeftExtension L F 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : F ⟶ L.comp F')
Goal: (CategoryTheory.Functor.LeftExtension.mk F' α).right = F'
-- CategoryTheory.Functor.LeftExtension.mk_hom
@[simps!]
def LeftExtension.mk (F' : D ⥤ H) {L : C ⥤ D} {F : C ⥤ H} (α : F ⟶ L ⋙ F') :
    LeftExtension L F 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : F ⟶ L.comp F')
Goal: (CategoryTheory.Functor.LeftExtension.mk F' α).hom = α
-- CategoryTheory.Functor.IsRightKanExtension.nonempty_isUniversal
class IsRightKanExtension : Prop where
  nonempty_isUniversal : Nonempty (RightExtension.mk F' α).IsUniversal
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] {F' : CategoryTheory.Functor D H} {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} {α : L.comp F' ⟶ F} [self : F'.IsRightKanExtension α]
Goal: Nonempty (CategoryTheory.CostructuredArrow.IsUniversal (CategoryTheory.Functor.RightExtension.mk F' α))
-- CategoryTheory.Functor.liftOfIsRightKanExtension_fac
@[reassoc (attr := simp)]
lemma liftOfIsRightKanExtension_fac (G : D ⥤ H) (β : L ⋙ G ⟶ F) :
    whiskerLeft L (F'.liftOfIsRightKanExtension α G β) ≫ α = β 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_9, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_7, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : L.comp F' ⟶ F) [F'.IsRightKanExtension α] (G : CategoryTheory.Functor D H) (β : L.comp G ⟶ F)
Goal: CategoryTheory.CategoryStruct.comp (CategoryTheory.whiskerLeft L (F'.liftOfIsRightKanExtension α G β)) α = β
-- CategoryTheory.Functor.liftOfIsRightKanExtension_fac_app
@[reassoc (attr := simp)]
lemma liftOfIsRightKanExtension_fac_app (G : D ⥤ H) (β : L ⋙ G ⟶ F) (X : C) :
    (F'.liftOfIsRightKanExtension α G β).app (L.obj X) ≫ α.app X = β.app X 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_9, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_7, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : L.comp F' ⟶ F) [F'.IsRightKanExtension α] (G : CategoryTheory.Functor D H) (β : L.comp G ⟶ F) (X : C)
Goal: CategoryTheory.CategoryStruct.comp ((F'.liftOfIsRightKanExtension α G β).app (L.obj X)) (α.app X) = β.app X
-- CategoryTheory.Functor.hom_ext_of_isRightKanExtension
lemma hom_ext_of_isRightKanExtension {G : D ⥤ H} (γ₁ γ₂ : G ⟶ F')
    (hγ : whiskerLeft L γ₁ ≫ α = whiskerLeft L γ₂ ≫ α) : γ₁ = γ₂ 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_9, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_7, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : L.comp F' ⟶ F) [F'.IsRightKanExtension α] {G : CategoryTheory.Functor D H} (γ₁ γ₂ : G ⟶ F') (hγ :
  CategoryTheory.CategoryStruct.comp (CategoryTheory.whiskerLeft L γ₁) α =
    CategoryTheory.CategoryStruct.comp (CategoryTheory.whiskerLeft L γ₂) α)
Goal: γ₁ = γ₂
-- CategoryTheory.Functor.isRightKanExtension_of_iso
lemma isRightKanExtension_of_iso {F' F'' : D ⥤ H} (e : F' ≅ F'') {L : C ⥤ D} {F : C ⥤ H}
    (α : L ⋙ F' ⟶ F) (α' : L ⋙ F'' ⟶ F) (comm : whiskerLeft L e.hom ≫ α' = α)
    [F'.IsRightKanExtension α] : F''.IsRightKanExtension α' 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_9, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_7, u_5} D] {F' F'' : CategoryTheory.Functor D H} (e : F' ≅ F'') {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : L.comp F' ⟶ F) (α' : L.comp F'' ⟶ F) (comm : CategoryTheory.CategoryStruct.comp (CategoryTheory.whiskerLeft L e.hom) α' = α) [F'.IsRightKanExtension α]
Goal: F''.IsRightKanExtension α'
-- CategoryTheory.Functor.isRightKanExtension_iff_of_iso
lemma isRightKanExtension_iff_of_iso {F' F'' : D ⥤ H} (e : F' ≅ F'') {L : C ⥤ D} {F : C ⥤ H}
    (α : L ⋙ F' ⟶ F) (α' : L ⋙ F'' ⟶ F) (comm : whiskerLeft L e.hom ≫ α' = α) :
    F'.IsRightKanExtension α ↔ F''.IsRightKanExtension α' 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_9, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_7, u_5} D] {F' F'' : CategoryTheory.Functor D H} (e : F' ≅ F'') {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : L.comp F' ⟶ F) (α' : L.comp F'' ⟶ F) (comm : CategoryTheory.CategoryStruct.comp (CategoryTheory.whiskerLeft L e.hom) α' = α)
Goal: F'.IsRightKanExtension α ↔ F''.IsRightKanExtension α'
-- CategoryTheory.Functor.rightKanExtensionUniqueOfIso_inv
@[simps]
noncomputable def rightKanExtensionUniqueOfIso {G : C ⥤ H} (i : F ≅ G) (G' : D ⥤ H)
    (β : L ⋙ G' ⟶ G) [G'.IsRightKanExtension β] : F' ≅ G' 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : L.comp F' ⟶ F) [F'.IsRightKanExtension α] {G : CategoryTheory.Functor C H} (i : F ≅ G) (G' : CategoryTheory.Functor D H) (β : L.comp G' ⟶ G) [G'.IsRightKanExtension β]
Goal: (F'.rightKanExtensionUniqueOfIso α i G' β).inv =
  F'.liftOfIsRightKanExtension α G' (CategoryTheory.CategoryStruct.comp β i.inv)
-- CategoryTheory.Functor.rightKanExtensionUniqueOfIso_hom
@[simps]
noncomputable def rightKanExtensionUniqueOfIso {G : C ⥤ H} (i : F ≅ G) (G' : D ⥤ H)
    (β : L ⋙ G' ⟶ G) [G'.IsRightKanExtension β] : F' ≅ G' 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : L.comp F' ⟶ F) [F'.IsRightKanExtension α] {G : CategoryTheory.Functor C H} (i : F ≅ G) (G' : CategoryTheory.Functor D H) (β : L.comp G' ⟶ G) [G'.IsRightKanExtension β]
Goal: (F'.rightKanExtensionUniqueOfIso α i G' β).hom =
  G'.liftOfIsRightKanExtension β F' (CategoryTheory.CategoryStruct.comp α i.hom)
-- CategoryTheory.Functor.rightKanExtensionUnique_hom
@[simps!]
noncomputable def rightKanExtensionUnique
    (F'' : D ⥤ H) (α' : L ⋙ F'' ⟶ F) [F''.IsRightKanExtension α'] : F' ≅ F'' 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : L.comp F' ⟶ F) [F'.IsRightKanExtension α] (F'' : CategoryTheory.Functor D H) (α' : L.comp F'' ⟶ F) [F''.IsRightKanExtension α']
Goal: (F'.rightKanExtensionUnique α F'' α').hom = F''.liftOfIsRightKanExtension α' F' α
-- CategoryTheory.Functor.rightKanExtensionUnique_inv
@[simps!]
noncomputable def rightKanExtensionUnique
    (F'' : D ⥤ H) (α' : L ⋙ F'' ⟶ F) [F''.IsRightKanExtension α'] : F' ≅ F'' 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : L.comp F' ⟶ F) [F'.IsRightKanExtension α] (F'' : CategoryTheory.Functor D H) (α' : L.comp F'' ⟶ F) [F''.IsRightKanExtension α']
Goal: (F'.rightKanExtensionUnique α F'' α').inv = F'.liftOfIsRightKanExtension α F'' α'
-- CategoryTheory.Functor.isRightKanExtension_iff_isIso
lemma isRightKanExtension_iff_isIso {F' : D ⥤ H} {F'' : D ⥤ H} (φ : F'' ⟶ F')
    {L : C ⥤ D} {F : C ⥤ H} (α : L ⋙ F' ⟶ F) (α' : L ⋙ F'' ⟶ F)
    (comm : whiskerLeft L φ ≫ α = α') [F'.IsRightKanExtension α] :
    F''.IsRightKanExtension α' ↔ IsIso φ 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_9, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_7, u_5} D] {F' F'' : CategoryTheory.Functor D H} (φ : F'' ⟶ F') {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : L.comp F' ⟶ F) (α' : L.comp F'' ⟶ F) (comm : CategoryTheory.CategoryStruct.comp (CategoryTheory.whiskerLeft L φ) α = α') [F'.IsRightKanExtension α]
Goal: F''.IsRightKanExtension α' ↔ CategoryTheory.IsIso φ
-- CategoryTheory.Functor.IsLeftKanExtension.nonempty_isUniversal
class IsLeftKanExtension : Prop where
  nonempty_isUniversal : Nonempty (LeftExtension.mk F' α).IsUniversal
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] {F' : CategoryTheory.Functor D H} {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} {α : F ⟶ L.comp F'} [self : F'.IsLeftKanExtension α]
Goal: Nonempty (CategoryTheory.StructuredArrow.IsUniversal (CategoryTheory.Functor.LeftExtension.mk F' α))
-- CategoryTheory.Functor.descOfIsLeftKanExtension_fac
@[reassoc (attr := simp)]
lemma descOfIsLeftKanExtension_fac (G : D ⥤ H) (β : F ⟶ L ⋙ G) :
    α ≫ whiskerLeft L (F'.descOfIsLeftKanExtension α G β) = β 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_9, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_7, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : F ⟶ L.comp F') [F'.IsLeftKanExtension α] (G : CategoryTheory.Functor D H) (β : F ⟶ L.comp G)
Goal: CategoryTheory.CategoryStruct.comp α (CategoryTheory.whiskerLeft L (F'.descOfIsLeftKanExtension α G β)) = β
-- CategoryTheory.Functor.descOfIsLeftKanExtension_fac_app
@[reassoc (attr := simp)]
lemma descOfIsLeftKanExtension_fac_app (G : D ⥤ H) (β : F ⟶ L ⋙ G) (X : C) :
    α.app X ≫ (F'.descOfIsLeftKanExtension α G β).app (L.obj X) = β.app X 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_9, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_7, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : F ⟶ L.comp F') [F'.IsLeftKanExtension α] (G : CategoryTheory.Functor D H) (β : F ⟶ L.comp G) (X : C)
Goal: CategoryTheory.CategoryStruct.comp (α.app X) ((F'.descOfIsLeftKanExtension α G β).app (L.obj X)) = β.app X
-- CategoryTheory.Functor.hom_ext_of_isLeftKanExtension
lemma hom_ext_of_isLeftKanExtension {G : D ⥤ H} (γ₁ γ₂ : F' ⟶ G)
    (hγ : α ≫ whiskerLeft L γ₁ = α ≫ whiskerLeft L γ₂) : γ₁ = γ₂ 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_9, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_7, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : F ⟶ L.comp F') [F'.IsLeftKanExtension α] {G : CategoryTheory.Functor D H} (γ₁ γ₂ : F' ⟶ G) (hγ :
  CategoryTheory.CategoryStruct.comp α (CategoryTheory.whiskerLeft L γ₁) =
    CategoryTheory.CategoryStruct.comp α (CategoryTheory.whiskerLeft L γ₂))
Goal: γ₁ = γ₂
-- CategoryTheory.Functor.isLeftKanExtension_of_iso
lemma isLeftKanExtension_of_iso {F' : D ⥤ H} {F'' : D ⥤ H} (e : F' ≅ F'')
    {L : C ⥤ D} {F : C ⥤ H} (α : F ⟶ L ⋙ F') (α' : F ⟶ L ⋙ F'')
    (comm : α ≫ whiskerLeft L e.hom = α') [F'.IsLeftKanExtension α] :
    F''.IsLeftKanExtension α' 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_9, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_7, u_5} D] {F' F'' : CategoryTheory.Functor D H} (e : F' ≅ F'') {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : F ⟶ L.comp F') (α' : F ⟶ L.comp F'') (comm : CategoryTheory.CategoryStruct.comp α (CategoryTheory.whiskerLeft L e.hom) = α') [F'.IsLeftKanExtension α]
Goal: F''.IsLeftKanExtension α'
-- CategoryTheory.Functor.isLeftKanExtension_iff_of_iso
lemma isLeftKanExtension_iff_of_iso {F' F'' : D ⥤ H} (e : F' ≅ F'')
    {L : C ⥤ D} {F : C ⥤ H} (α : F ⟶ L ⋙ F') (α' : F ⟶ L ⋙ F'')
    (comm : α ≫ whiskerLeft L e.hom = α') :
    F'.IsLeftKanExtension α ↔ F''.IsLeftKanExtension α' 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_9, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_7, u_5} D] {F' F'' : CategoryTheory.Functor D H} (e : F' ≅ F'') {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : F ⟶ L.comp F') (α' : F ⟶ L.comp F'') (comm : CategoryTheory.CategoryStruct.comp α (CategoryTheory.whiskerLeft L e.hom) = α')
Goal: F'.IsLeftKanExtension α ↔ F''.IsLeftKanExtension α'
-- CategoryTheory.Functor.leftKanExtensionUniqueOfIso_inv
@[simps]
noncomputable def leftKanExtensionUniqueOfIso {G : C ⥤ H} (i : F ≅ G) (G' : D ⥤ H)
    (β : G ⟶ L ⋙ G') [G'.IsLeftKanExtension β] : F' ≅ G' 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : F ⟶ L.comp F') [F'.IsLeftKanExtension α] {G : CategoryTheory.Functor C H} (i : F ≅ G) (G' : CategoryTheory.Functor D H) (β : G ⟶ L.comp G') [G'.IsLeftKanExtension β]
Goal: (F'.leftKanExtensionUniqueOfIso α i G' β).inv =
  G'.descOfIsLeftKanExtension β F' (CategoryTheory.CategoryStruct.comp i.inv α)
-- CategoryTheory.Functor.leftKanExtensionUniqueOfIso_hom
@[simps]
noncomputable def leftKanExtensionUniqueOfIso {G : C ⥤ H} (i : F ≅ G) (G' : D ⥤ H)
    (β : G ⟶ L ⋙ G') [G'.IsLeftKanExtension β] : F' ≅ G' 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : F ⟶ L.comp F') [F'.IsLeftKanExtension α] {G : CategoryTheory.Functor C H} (i : F ≅ G) (G' : CategoryTheory.Functor D H) (β : G ⟶ L.comp G') [G'.IsLeftKanExtension β]
Goal: (F'.leftKanExtensionUniqueOfIso α i G' β).hom =
  F'.descOfIsLeftKanExtension α G' (CategoryTheory.CategoryStruct.comp i.hom β)
-- CategoryTheory.Functor.leftKanExtensionUnique_hom
@[simps!]
noncomputable def leftKanExtensionUnique
    (F'' : D ⥤ H) (α' : F ⟶ L ⋙ F'') [F''.IsLeftKanExtension α'] : F' ≅ F'' 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : F ⟶ L.comp F') [F'.IsLeftKanExtension α] (F'' : CategoryTheory.Functor D H) (α' : F ⟶ L.comp F'') [F''.IsLeftKanExtension α']
Goal: (F'.leftKanExtensionUnique α F'' α').hom = F'.descOfIsLeftKanExtension α F'' α'
-- CategoryTheory.Functor.leftKanExtensionUnique_inv
@[simps!]
noncomputable def leftKanExtensionUnique
    (F'' : D ⥤ H) (α' : F ⟶ L ⋙ F'') [F''.IsLeftKanExtension α'] : F' ≅ F'' 
Arguments: {C : Type u_1} {H : Type u_3} {D : Type u_5} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_8, u_3} H] [CategoryTheory.Category.{u_9, u_5} D] (F' : CategoryTheory.Functor D H) {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor C H} (α : F ⟶ L.comp F') [F'.IsLeftKanExtension α] (F'' : CategoryTheory.Functor D H) (α' : F ⟶ L.comp F'') [F''.IsLeftKanExtension α']
Goal: (F'.leftKanExtensionUnique α F'' α').inv = F''.descOfIsLeftKanExtension α' F' α