-- Lean 4 proof step from Mathlib.CategoryTheory.Galois.Prorepresentability (goal)
Goal:
C : Type u₁
inst : Category.{u₂, u₁} C
inst_1 : GaloisCategory.{u₁, u₂} C
F : C ⥤ FintypeCat
inst_2 : FiberFunctor F
f : End F
A : PointedGaloisObject F
⊢ Eq (α := (F.obj A.obj).obj)
    (ULift.down.{u₁, u₂}
        ((↑((Types.limitEquivSections (incl F ⋙ (F ⋙ FintypeCat.incl) ⋙ uliftFunctor.{u₁, u₂}) :
                  (a : limit ((incl F ⋙ F ⋙ FintypeCat.incl) ⋙ uliftFunctor.{u₁, u₂})) →
                    (↑((incl F ⋙ F ⋙ FintypeCat.incl) ⋙ uliftFunctor.{u₁, u₂}).sections : Type (max u₁ u₂)))
                (((ConcreteCategory.hom (FC := TypeCat.Fun)
                        (Iso.hom (colimitCoyonedaHomIsoLimit' (incl F) (F ⋙ FintypeCat.incl))) :
                      TypeCat.Fun
                        (colimit (J := (PointedGaloisObject F)ᵒᵖ) (Functor.op (incl F) ⋙ coyoneda) ⟶
                          F ⋙ FintypeCat.incl)
                        (limit (J := PointedGaloisObject F) ((incl F ⋙ F ⋙ FintypeCat.incl) ⋙ uliftFunctor.{u₁, u₂}))) :
                    (a : colimit ((incl F).op ⋙ coyoneda) ⟶ F ⋙ FintypeCat.incl) →
                      limit ((incl F ⋙ F ⋙ FintypeCat.incl) ⋙ uliftFunctor.{u₁, u₂}))
                  (CategoryStruct.comp (Y := Cocone.pt (J := (PointedGaloisObject F)ᵒᵖ) (cocone F))
                    (Iso.hom (colimit.isoColimitCocone { cocone := cocone F, isColimit := isColimit F }) :
                      colimit (J := (PointedGaloisObject F)ᵒᵖ) (Functor.op (incl F) ⋙ coyoneda) ⟶
                        Cocone.pt (J := (PointedGaloisObject F)ᵒᵖ) (cocone F))
                    ((FullyFaithful.homEquiv ((FullyFaithful.ofFullyFaithful FintypeCat.incl).whiskeringRight C) :
                        (a : End F) → End (F ⋙ FintypeCat.incl))
                      f)))) :
            (j : PointedGaloisObject F) → ULift.{u₁, u₂} (F.obj j.obj).obj)
          A) :
      (F.obj A.obj).obj)
    ((@ConcreteCategory.hom _ (ObjectProperty.FullSubcategory.category Finite)
            (fun (X Y : ObjectProperty.FullSubcategory Finite) ↦ TypeCat.Fun X.obj Y.obj)
            (fun (X : ObjectProperty.FullSubcategory Finite) ↦ X.obj)
            (fun (X Y : ObjectProperty.FullSubcategory Finite) ↦
              (TypeCat.instFunLikeFun : FunLike (TypeCat.Fun X.obj Y.obj) X.obj Y.obj))
            _ _ _ (f.app A.obj : F.obj A.obj ⟶ F.obj A.obj) :
          (a : (F.obj A.obj).obj) → (F.obj A.obj).obj)
        A.pt :
      (F.obj A.obj).obj)
have erw : Eq (α := (F.obj A.obj).obj)
  (ULift.down.{u₁, u₂}
      {
        down :=
          (ConcreteCategory.hom (FC := TypeCat.Fun)
                (NatTrans.app
                  (CategoryStruct.comp (Y := Cocone.pt (J := (PointedGaloisObject F)ᵒᵖ) (cocone F))
                    (Iso.hom
                        (colimit.isoColimitCocone
                          { cocone := cocone F, isColimit := isColimit F :
                            ColimitCocone (J := (PointedGaloisObject F)ᵒᵖ) (Functor.op (incl F) ⋙ coyoneda) }) :
                      colimit (J := (PointedGaloisObject F)ᵒᵖ) (Functor.op (incl F) ⋙ coyoneda) ⟶
                        Cocone.pt (J := (PointedGaloisObject F)ᵒᵖ) (cocone F))
                    ((FullyFaithful.homEquiv ((FullyFaithful.ofFullyFaithful FintypeCat.incl).whiskeringRight C) :
                        (a : End F) → End (F ⋙ FintypeCat.incl))
                      f))
                  (Functor.obj (incl F) A)) :
              (a : (colimit ((incl F).op ⋙ coyoneda)).obj ((incl F).obj A)) →
                (F ⋙ FintypeCat.incl).obj ((incl F).obj A))
            ((@ConcreteCategory.hom _ types TypeCat.Fun _ _ _ _ _
                    (NatTrans.app (colimit.ι (Functor.op (incl F) ⋙ coyoneda) (Opposite.op A))
                      (Functor.obj (incl F) A)) :
                  (a : (incl F).obj A ⟶ (incl F).obj A) → (colimit ((incl F).op ⋙ coyoneda)).obj ((incl F).obj A))
                (𝟙 (Functor.obj (incl F) A)) :
              (colimit (J := (PointedGaloisObject F)ᵒᵖ) (Functor.op (incl F) ⋙ coyoneda)).obj
                (Functor.obj (incl F) A)) } :
    (F.obj A.obj).obj)
  ((@ConcreteCategory.hom _ (ObjectProperty.FullSubcategory.category Finite)
          (fun (X Y : ObjectProperty.FullSubcategory Finite) ↦ TypeCat.Fun X.obj Y.obj)
          (fun (X : ObjectProperty.FullSubcategory Finite) ↦ X.obj)
          (fun (X Y : ObjectProperty.FullSubcategory Finite) ↦
            (TypeCat.instFunLikeFun : FunLike (TypeCat.Fun X.obj Y.obj) X.obj Y.obj))
          _ _ _ (f.app A.obj : F.obj A.obj ⟶ F.obj A.obj) :
        (a : (F.obj A.obj).obj) → (F.obj A.obj).obj)
      A.pt :
    (F.obj A.obj).obj)
Tactic: erw [Types.limitEquivSections_apply, colimitCoyonedaHomIsoLimit'_π_apply]