-- Lean 4 proof step from Mathlib.CategoryTheory.Limits.Constructions.Filtered (goal)
Goal:
C : Type u
inst : Category.{v, u} C
α : Type w
inst_1 : HasFiniteProducts.{v, u} C
inst_2 : HasLimitsOfShape.{w, w, v, u} (Finset (Discrete α))ᵒᵖ C
F : Functor.{w, v, w, u} (Discrete α) C
s : Cone F
m :
  s.pt ⟶
    Cone.pt.{w, v, w, u} (J := Discrete α) (F := F)
      { pt := limit (liftToFinsetObj F),
        π :=
          Discrete.natTrans fun (j : Discrete α) ↦
            limit.π (liftToFinsetObj F) (op {j}) ≫
              Pi.π (fun (x : ↥(unop (op {j}))) ↦ F.obj (↑x : Discrete α))
                (Subtype.mk (p := fun (x : Discrete α) ↦ Membership.mem (γ := Finset (Discrete α)) {j} x) j ⋯) }
h :
  ∀ (j : Discrete α),
    m ≫
        NatTrans.app
          (Cone.π
            { pt := limit (liftToFinsetObj F),
              π :=
                Discrete.natTrans fun (j : Discrete α) ↦
                  limit.π (liftToFinsetObj F) (op {j}) ≫
                    Pi.π (fun (x : ↥(unop (op {j}))) ↦ F.obj (↑x : Discrete α))
                      (Subtype.mk (p := fun (x : Discrete α) ↦ Membership.mem (γ := Finset (Discrete α)) {j} x) j ⋯) })
          j =
      s.π.app j
t : (Finset (Discrete α))ᵒᵖ
⊢ m ≫ limit.π (liftToFinsetObj F) t =
    CategoryStruct.comp (Y := limit (liftToFinsetObj F))
      (limit.lift (liftToFinsetObj F)
        { pt := s.pt,
          π :=
            { app := fun (x : (Finset (Discrete α))ᵒᵖ) ↦ Pi.lift fun (x_1 : ↥(unop x)) ↦ s.π.app (↑x_1 : Discrete α),
              naturality := ⋯ } })
      (limit.π (liftToFinsetObj F) t)
have w : m ≫
    limit.π
      { obj := fun (s : (Finset (Discrete α))ᵒᵖ) ↦ piObj.{w, v, u} fun (x : ↥(unop s)) ↦ F.obj (↑x : Discrete α),
        map := fun {Y x : (Finset (Discrete α))ᵒᵖ} (h : Y ⟶ x) ↦
          Pi.lift fun (y : ↥(unop x)) ↦
            Pi.π (fun (x : ↥(unop Y)) ↦ F.obj (↑x : Discrete α))
              (Subtype.mk (p := fun (x : Discrete α) ↦ x ∈ unop Y) (↑y : Discrete α) sorry),
        map_id := sorry, map_comp := sorry : Functor.{w, v, w, u} (Finset (Discrete α))ᵒᵖ C }
      t =
  CategoryStruct.comp (Y :=
    limit.{w, w, v, u} (J := (Finset (Discrete α))ᵒᵖ)
      { obj := fun (s : (Finset (Discrete α))ᵒᵖ) ↦ piObj.{w, v, u} fun (x : ↥(unop s)) ↦ F.obj (↑x : Discrete α),
        map := fun {Y x : (Finset (Discrete α))ᵒᵖ} (h : Y ⟶ x) ↦
          Pi.lift fun (y : ↥(unop x)) ↦
            Pi.π (fun (x : ↥(unop Y)) ↦ F.obj (↑x : Discrete α))
              (Subtype.mk (p := fun (x : Discrete α) ↦ x ∈ unop Y) (↑y : Discrete α) sorry),
        map_id := sorry, map_comp := sorry })
    (limit.lift
        { obj := fun (s : (Finset (Discrete α))ᵒᵖ) ↦ piObj.{w, v, u} fun (x : ↥(unop s)) ↦ F.obj (↑x : Discrete α),
          map := fun {Y x : (Finset (Discrete α))ᵒᵖ} (h : Y ⟶ x) ↦
            Pi.lift fun (y : ↥(unop x)) ↦
              Pi.π (fun (x : ↥(unop Y)) ↦ F.obj (↑x : Discrete α))
                (Subtype.mk (p := fun (x : Discrete α) ↦ x ∈ unop Y) (↑y : Discrete α) sorry),
          map_id := sorry, map_comp := sorry }
        { pt := s.pt,
          π :=
            { app := fun (x : (Finset (Discrete α))ᵒᵖ) ↦ Pi.lift fun (x_1 : ↥(unop x)) ↦ s.π.app (↑x_1 : Discrete α),
              naturality := sorry } } :
      Cone.pt.{w, v, w, u} (J := (Finset (Discrete α))ᵒᵖ) (F :=
          { obj := fun (s : (Finset (Discrete α))ᵒᵖ) ↦ piObj.{w, v, u} fun (x : ↥(unop s)) ↦ F.obj (↑x : Discrete α),
            map := fun {Y x : (Finset (Discrete α))ᵒᵖ} (h : Y ⟶ x) ↦
              Pi.lift fun (y : ↥(unop x)) ↦
                Pi.π (fun (x : ↥(unop Y)) ↦ F.obj (↑x : Discrete α))
                  (Subtype.mk (p := fun (x : Discrete α) ↦ x ∈ unop Y) (↑y : Discrete α) sorry),
            map_id := sorry, map_comp := sorry : Functor.{w, v, w, u} (Finset (Discrete α))ᵒᵖ C })
          { pt := s.pt,
            π :=
              { app := fun (x : (Finset (Discrete α))ᵒᵖ) ↦ Pi.lift fun (x_1 : ↥(unop x)) ↦ s.π.app (↑x_1 : Discrete α),
                naturality := sorry :
                NatTrans.{w, v, w, u} (C := (Finset (Discrete α))ᵒᵖ)
                  (Functor.obj (Functor.const (Finset (Discrete α))ᵒᵖ) s.pt)
                  {
                    obj := fun (s : (Finset (Discrete α))ᵒᵖ) ↦
                      piObj.{w, v, u} fun (x : ↥(unop s)) ↦ F.obj (↑x : Discrete α),
                    map := fun {Y x : (Finset (Discrete α))ᵒᵖ} (h : Y ⟶ x) ↦
                      Pi.lift fun (y : ↥(unop x)) ↦
                        Pi.π (fun (x : ↥(unop Y)) ↦ F.obj (↑x : Discrete α))
                          (Subtype.mk (p := fun (x : Discrete α) ↦ x ∈ unop Y) (↑y : Discrete α) sorry),
                    map_id := sorry, map_comp := sorry : Functor.{w, v, w, u} (Finset (Discrete α))ᵒᵖ C } } :
            Cone.{w, v, w, u} (J := (Finset (Discrete α))ᵒᵖ) (C := C)
              {
                obj := fun (s : (Finset (Discrete α))ᵒᵖ) ↦
                  piObj.{w, v, u} fun (x : ↥(unop s)) ↦ F.obj (↑x : Discrete α),
                map := fun {Y x : (Finset (Discrete α))ᵒᵖ} (h : Y ⟶ x) ↦
                  Pi.lift fun (y : ↥(unop x)) ↦
                    Pi.π (fun (x : ↥(unop Y)) ↦ F.obj (↑x : Discrete α))
                      (Subtype.mk (p := fun (x : Discrete α) ↦ x ∈ unop Y) (↑y : Discrete α) sorry),
                map_id := sorry, map_comp := sorry : Functor.{w, v, w, u} (Finset (Discrete α))ᵒᵖ C } } ⟶
        limit.{w, w, v, u} (J := (Finset (Discrete α))ᵒᵖ)
          { obj := fun (s : (Finset (Discrete α))ᵒᵖ) ↦ piObj.{w, v, u} fun (x : ↥(unop s)) ↦ F.obj (↑x : Discrete α),
            map := fun {Y x : (Finset (Discrete α))ᵒᵖ} (h : Y ⟶ x) ↦
              Pi.lift fun (y : ↥(unop x)) ↦
                Pi.π (fun (x : ↥(unop Y)) ↦ F.obj (↑x : Discrete α))
                  (Subtype.mk (p := fun (x : Discrete α) ↦ x ∈ unop Y) (↑y : Discrete α) sorry),
            map_id := sorry, map_comp := sorry })
    (limit.π
        { obj := fun (s : (Finset (Discrete α))ᵒᵖ) ↦ piObj.{w, v, u} fun (x : ↥(unop s)) ↦ F.obj (↑x : Discrete α),
          map := fun {Y x : (Finset (Discrete α))ᵒᵖ} (h : Y ⟶ x) ↦
            Pi.lift fun (y : ↥(unop x)) ↦
              Pi.π (fun (x : ↥(unop Y)) ↦ F.obj (↑x : Discrete α))
                (Subtype.mk (p := fun (x : Discrete α) ↦ x ∈ unop Y) (↑y : Discrete α) sorry),
          map_id := sorry, map_comp := sorry }
        t :
      Quiver.Hom.{v, u} (V := C)
        (limit.{w, w, v, u} (J := (Finset (Discrete α))ᵒᵖ)
          { obj := fun (s : (Finset (Discrete α))ᵒᵖ) ↦ piObj.{w, v, u} fun (x : ↥(unop s)) ↦ F.obj (↑x : Discrete α),
            map := fun {Y x : (Finset (Discrete α))ᵒᵖ} (h : Y ⟶ x) ↦
              Pi.lift fun (y : ↥(unop x)) ↦
                Pi.π (fun (x : ↥(unop Y)) ↦ F.obj (↑x : Discrete α))
                  (Subtype.mk (p := fun (x : Discrete α) ↦ x ∈ unop Y) (↑y : Discrete α) sorry),
            map_id := sorry, map_comp := sorry })
        (Functor.obj.{w, v, w, u}
          { obj := fun (s : (Finset (Discrete α))ᵒᵖ) ↦ piObj.{w, v, u} fun (x : ↥(unop s)) ↦ F.obj (↑x : Discrete α),
            map := fun {Y x : (Finset (Discrete α))ᵒᵖ} (h : Y ⟶ x) ↦
              Pi.lift fun (y : ↥(unop x)) ↦
                Pi.π (fun (x : ↥(unop Y)) ↦ F.obj (↑x : Discrete α))
                  (Subtype.mk (p := fun (x : Discrete α) ↦ x ∈ unop Y) (↑y : Discrete α) sorry),
            map_id := sorry, map_comp := sorry }
          t))
Tactic: dsimp [liftToFinsetObj]