-- Lean 4 proof step from Mathlib.CategoryTheory.Sites.Point.Conservative (hypothesis)
Goal:
C : Type u
inst : Category.{v, u} C
J : GrothendieckTopology.{v, u} C
P : ObjectProperty (GrothendieckTopology.Point.{w, v, u} J)
inst_1 : LocallySmall.{w, v, u} C
inst_2 : HasSheafify J (Type w)
inst_3 : J.WEqualsLocallyBijective (Type w) (FA := TypeCat.Fun)
hP : P.IsConservativeFamilyOfPoints
X : C
ι : Type u_1
inst_4 : Small.{w, u_1} ι
U : ι → C
f : (i : ι) → U i ⟶ X
hf :
  ∀ (Φ : P.FullSubcategory) (x : Φ.obj (P := P).fiber.obj X),
    ∃ (i : ι) (y : Φ.obj (P := P).fiber.obj (U i)),
      (ConcreteCategory.hom (FC := TypeCat.Fun) (Φ.obj (P := P).fiber.map (f i)) :
            (a : (fun (X : Type w) ↦ X) (Φ.obj.fiber.obj (U i))) → (fun (X : Type w) ↦ X) (Φ.obj.fiber.obj X))
          y =
        x
Φ : P.FullSubcategory
i : ι
y : Φ.obj (P := P).fiber.obj (U i)
⊢ Eq (α := Functor.obj Φ.obj (P := P).presheafFiber (Functor.obj shrinkYoneda.{w, v, u} X))
    ((ConcreteCategory.hom (FC := TypeCat.Fun)
            (Functor.map Φ.obj (P := P).presheafFiber
              (Sigma.desc fun (i : ι) ↦ Functor.map shrinkYoneda.{w, v, u} (f i))) :
          (a : Φ.obj.presheafFiber.obj (∐ fun (i : ι) ↦ shrinkYoneda.{w, v, u}.obj (U i))) →
            Φ.obj.presheafFiber.obj (shrinkYoneda.{w, v, u}.obj X))
        (((@ConcreteCategory.hom _ types TypeCat.Fun _ _ _ _ _
                  (Functor.map Φ.obj (P := P).presheafFiber
                    (Sigma.ι (C := Functor.{v, w, u, w + 1} Cᵒᵖ (Type w))
                      (fun (i : ι) ↦ Functor.obj shrinkYoneda.{w, v, u} (U i)) i)) :
                TypeCat.Fun (Functor.obj Φ.obj (P := P).presheafFiber (Functor.obj shrinkYoneda.{w, v, u} (U i)))
                  (Functor.obj (C := Functor.{v, w, u, w + 1} Cᵒᵖ (Type w)) Φ.obj (P := P).presheafFiber
                    (∐ fun (i : ι) ↦ Functor.obj shrinkYoneda.{w, v, u} (U i)))) :
              (a : (fun (X : Type w) ↦ X) (Φ.obj.presheafFiber.obj (shrinkYoneda.{w, v, u}.obj (U i)))) →
                (fun (X : Type w) ↦ X) (Φ.obj.presheafFiber.obj (∐ fun (i : ι) ↦ shrinkYoneda.{w, v, u}.obj (U i))))
            ((ConcreteCategory.hom (FC := TypeCat.Fun)
                    (NatTrans.app (Iso.inv Φ.obj (P := P).shrinkYonedaCompPresheafFiberIso) (U i)) :
                  (a : (fun (X : Type w) ↦ X) (Φ.obj.fiber.obj (U i))) →
                    (fun (X : Type w) ↦ X) ((shrinkYoneda.{w, v, u} ⋙ Φ.obj.presheafFiber).obj (U i)))
                y :
              (fun (X : Type w) ↦ X) ((shrinkYoneda.{w, v, u} ⋙ Φ.obj (P := P).presheafFiber).obj (U i))) :
          (fun (X : Type w) ↦ X)
            (Functor.obj (C := Functor.{v, w, u, w + 1} Cᵒᵖ (Type w)) Φ.obj (P := P).presheafFiber
              (∐ fun (i : ι) ↦ Functor.obj shrinkYoneda.{w, v, u} (U i)))) :
      Functor.obj Φ.obj (P := P).presheafFiber (Functor.obj shrinkYoneda.{w, v, u} X))
    ((Equiv.symm (Iso.toEquiv (Iso.app Φ.obj (P := P).shrinkYonedaCompPresheafFiberIso X)) :
          (a : Φ.obj.fiber.obj X) → (shrinkYoneda.{w, v, u} ⋙ Φ.obj.presheafFiber).obj X)
        ((ConcreteCategory.hom (FC := TypeCat.Fun) (Φ.obj (P := P).fiber.map (f i)) :
              (a : (fun (X : Type w) ↦ X) (Φ.obj.fiber.obj (U i))) → (fun (X : Type w) ↦ X) (Φ.obj.fiber.obj X))
            y :
          (fun (X : Type w) ↦ X) (Φ.obj (P := P).fiber.obj X)) :
      (shrinkYoneda.{w, v, u} ⋙ Φ.obj (P := P).presheafFiber).obj X)
have this : Eq (α := (shrinkYoneda.{w, v, u} ⋙ Φ.obj (P := P).presheafFiber).obj X)
  ((ConcreteCategory.hom (FC := TypeCat.Fun)
          (Φ.obj (P := P).fiber.map (f i) ≫ NatTrans.app (Iso.inv Φ.obj (P := P).shrinkYonedaCompPresheafFiberIso) X) :
        (a : Φ.obj.fiber.obj (U i)) → (shrinkYoneda.{w, v, u} ⋙ Φ.obj.presheafFiber).obj X)
      y :
    (shrinkYoneda.{w, v, u} ⋙ Φ.obj (P := P).presheafFiber).obj X)
  ((ConcreteCategory.hom (FC := TypeCat.Fun)
          (NatTrans.app (Iso.inv Φ.obj (P := P).shrinkYonedaCompPresheafFiberIso) (U i) ≫
            (shrinkYoneda.{w, v, u} ⋙ Φ.obj (P := P).presheafFiber).map (f i)) :
        (a : Φ.obj.fiber.obj (U i)) → (shrinkYoneda.{w, v, u} ⋙ Φ.obj.presheafFiber).obj X)
      y :
    (shrinkYoneda.{w, v, u} ⋙ Φ.obj (P := P).presheafFiber).obj X)
Tactic: have := ConcreteCategory.congr_hom
      (Φ.obj.shrinkYonedaCompPresheafFiberIso.inv.naturality (f i)) y