-- Lean 4 proof step from Mathlib.Topology.Category.TopCat.Limits.Konig (goal)
Goal:
J : Type u
inst : SmallCategory J
F : J ⥤ TopCat
A B : FiniteDiagram J
ιA : FiniteDiagramArrow (A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) →
  FiniteDiagramArrow
    (A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
      B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) :=
  fun (f : FiniteDiagramArrow (A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)))) ↦
    PSigma.mk (β := fun (X : J) ↦
      (Y : J) ×'
        (_ :
          X ∈
            A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
              B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
          (_ :
            Y ∈
              A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
                B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
            (X ⟶ Y))
      (f.fst (β := fun (X : J) ↦
        (Y : J) ×'
          (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
            (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)))
      (PSigma.mk (β := fun (Y : J) ↦
        (_ :
          f.fst (β := fun (X : J) ↦
              (Y : J) ×'
                (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                  (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
            A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
              B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
          (_ :
            Y ∈
              A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
                B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
            (f.fst (β := fun (X : J) ↦
                (Y : J) ×'
                  (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
              Y))
        (f.snd (β := fun (X : J) ↦
              (Y : J) ×'
                (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                  (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).fst
          (β := fun (Y : J) ↦
          (_ :
            f.fst (β := fun (X : J) ↦
                (Y : J) ×'
                  (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
              A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
            (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
              (f.fst (β := fun (X : J) ↦
                  (Y : J) ×'
                    (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                      (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                Y)))
        (PSigma.mk (β :=
          fun
            (x :
              f.fst (β := fun (X : J) ↦
                  (Y : J) ×'
                    (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                      (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
                  B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ↦
          (_ :
            f.snd (β := fun (X : J) ↦
                    (Y : J) ×'
                      (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                        (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).fst
                (β := fun (Y : J) ↦
                (_ :
                  f.fst (β := fun (X : J) ↦
                      (Y : J) ×'
                        (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                    A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                  (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (f.fst (β := fun (X : J) ↦
                        (Y : J) ×'
                          (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                      Y)) ∈
              A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
                B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
            (f.fst (β := fun (X : J) ↦
                (Y : J) ×'
                  (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
              f.snd (β := fun (X : J) ↦
                    (Y : J) ×'
                      (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                        (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).fst
                (β := fun (Y : J) ↦
                (_ :
                  f.fst (β := fun (X : J) ↦
                      (Y : J) ×'
                        (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                    A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                  (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (f.fst (β := fun (X : J) ↦
                        (Y : J) ×'
                          (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                      Y))))
          ⋯
          (PSigma.mk (β :=
            fun
              (x :
                f.snd (β := fun (X : J) ↦
                        (Y : J) ×'
                          (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).fst
                    (β := fun (Y : J) ↦
                    (_ :
                      f.fst (β := fun (X : J) ↦
                          (Y : J) ×'
                            (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                              (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                        A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                      (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                        (f.fst (β := fun (X : J) ↦
                            (Y : J) ×'
                              (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                          Y)) ∈
                  A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
                    B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ↦
            f.fst (β := fun (X : J) ↦
                (Y : J) ×'
                  (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
              f.snd (β := fun (X : J) ↦
                    (Y : J) ×'
                      (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                        (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).fst
                (β := fun (Y : J) ↦
                (_ :
                  f.fst (β := fun (X : J) ↦
                      (Y : J) ×'
                        (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                    A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                  (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (f.fst (β := fun (X : J) ↦
                        (Y : J) ×'
                          (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                      Y)))
            ⋯
            (f.snd (β := fun (X : J) ↦
                          (Y : J) ×'
                            (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                              (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).snd
                      (β := fun (Y : J) ↦
                      (_ :
                        f.fst (β := fun (X : J) ↦
                            (Y : J) ×'
                              (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                          A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                        (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (f.fst (β := fun (X : J) ↦
                              (Y : J) ×'
                                (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                  (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                    (X ⟶ Y)) ⟶
                            Y)).snd
                  (β :=
                  fun
                    (x :
                      f.fst (β := fun (X : J) ↦
                          (Y : J) ×'
                            (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                              (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                        A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ↦
                  (_ :
                    f.snd (β := fun (X : J) ↦
                            (Y : J) ×'
                              (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                  (X ⟶ Y)).fst
                        (β := fun (Y : J) ↦
                        (_ :
                          f.fst (β := fun (X : J) ↦
                              (Y : J) ×'
                                (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                  (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                    (X ⟶ Y)) ∈
                            A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (f.fst (β := fun (X : J) ↦
                                (Y : J) ×'
                                  (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                    (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                      (X ⟶ Y)) ⟶
                              Y)) ∈
                      A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (f.fst (β := fun (X : J) ↦
                        (Y : J) ×'
                          (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                      f.snd (β := fun (X : J) ↦
                            (Y : J) ×'
                              (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                  (X ⟶ Y)).fst
                        (β := fun (Y : J) ↦
                        (_ :
                          f.fst (β := fun (X : J) ↦
                              (Y : J) ×'
                                (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                  (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                    (X ⟶ Y)) ∈
                            A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (f.fst (β := fun (X : J) ↦
                                (Y : J) ×'
                                  (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                    (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                      (X ⟶ Y)) ⟶
                              Y)))).snd
              (β :=
              fun
                (x :
                  f.snd (β := fun (X : J) ↦
                          (Y : J) ×'
                            (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                              (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).fst
                      (β := fun (Y : J) ↦
                      (_ :
                        f.fst (β := fun (X : J) ↦
                            (Y : J) ×'
                              (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                          A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                        (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (f.fst (β := fun (X : J) ↦
                              (Y : J) ×'
                                (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                  (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                    (X ⟶ Y)) ⟶
                            Y)) ∈
                    A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ↦
              f.fst (β := fun (X : J) ↦
                  (Y : J) ×'
                    (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                      (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                f.snd (β := fun (X : J) ↦
                      (Y : J) ×'
                        (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).fst
                  (β := fun (Y : J) ↦
                  (_ :
                    f.fst (β := fun (X : J) ↦
                        (Y : J) ×'
                          (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                      A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                      (f.fst (β := fun (X : J) ↦
                          (Y : J) ×'
                            (_ : X ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                              (_ : Y ∈ A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                        Y)))))))
ιB : FiniteDiagramArrow (B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) →
  FiniteDiagramArrow
    (A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
      B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) :=
  fun (f : FiniteDiagramArrow (B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)))) ↦
    PSigma.mk (β := fun (X : J) ↦
      (Y : J) ×'
        (_ :
          X ∈
            A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
              B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
          (_ :
            Y ∈
              A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
                B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
            (X ⟶ Y))
      (f.fst (β := fun (X : J) ↦
        (Y : J) ×'
          (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
            (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)))
      (PSigma.mk (β := fun (Y : J) ↦
        (_ :
          f.fst (β := fun (X : J) ↦
              (Y : J) ×'
                (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                  (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
            A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
              B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
          (_ :
            Y ∈
              A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
                B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
            (f.fst (β := fun (X : J) ↦
                (Y : J) ×'
                  (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
              Y))
        (f.snd (β := fun (X : J) ↦
              (Y : J) ×'
                (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                  (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).fst
          (β := fun (Y : J) ↦
          (_ :
            f.fst (β := fun (X : J) ↦
                (Y : J) ×'
                  (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
              B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
            (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
              (f.fst (β := fun (X : J) ↦
                  (Y : J) ×'
                    (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                      (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                Y)))
        (PSigma.mk (β :=
          fun
            (x :
              f.fst (β := fun (X : J) ↦
                  (Y : J) ×'
                    (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                      (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
                  B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ↦
          (_ :
            f.snd (β := fun (X : J) ↦
                    (Y : J) ×'
                      (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                        (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).fst
                (β := fun (Y : J) ↦
                (_ :
                  f.fst (β := fun (X : J) ↦
                      (Y : J) ×'
                        (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                    B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                  (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (f.fst (β := fun (X : J) ↦
                        (Y : J) ×'
                          (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                      Y)) ∈
              A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
                B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
            (f.fst (β := fun (X : J) ↦
                (Y : J) ×'
                  (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
              f.snd (β := fun (X : J) ↦
                    (Y : J) ×'
                      (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                        (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).fst
                (β := fun (Y : J) ↦
                (_ :
                  f.fst (β := fun (X : J) ↦
                      (Y : J) ×'
                        (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                    B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                  (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (f.fst (β := fun (X : J) ↦
                        (Y : J) ×'
                          (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                      Y))))
          ⋯
          (PSigma.mk (β :=
            fun
              (x :
                f.snd (β := fun (X : J) ↦
                        (Y : J) ×'
                          (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).fst
                    (β := fun (Y : J) ↦
                    (_ :
                      f.fst (β := fun (X : J) ↦
                          (Y : J) ×'
                            (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                              (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                        B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                      (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                        (f.fst (β := fun (X : J) ↦
                            (Y : J) ×'
                              (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                          Y)) ∈
                  A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
                    B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ↦
            f.fst (β := fun (X : J) ↦
                (Y : J) ×'
                  (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
              f.snd (β := fun (X : J) ↦
                    (Y : J) ×'
                      (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                        (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).fst
                (β := fun (Y : J) ↦
                (_ :
                  f.fst (β := fun (X : J) ↦
                      (Y : J) ×'
                        (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                    B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                  (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (f.fst (β := fun (X : J) ↦
                        (Y : J) ×'
                          (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                      Y)))
            ⋯
            (f.snd (β := fun (X : J) ↦
                          (Y : J) ×'
                            (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                              (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).snd
                      (β := fun (Y : J) ↦
                      (_ :
                        f.fst (β := fun (X : J) ↦
                            (Y : J) ×'
                              (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                          B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                        (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (f.fst (β := fun (X : J) ↦
                              (Y : J) ×'
                                (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                  (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                    (X ⟶ Y)) ⟶
                            Y)).snd
                  (β :=
                  fun
                    (x :
                      f.fst (β := fun (X : J) ↦
                          (Y : J) ×'
                            (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                              (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                        B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ↦
                  (_ :
                    f.snd (β := fun (X : J) ↦
                            (Y : J) ×'
                              (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                  (X ⟶ Y)).fst
                        (β := fun (Y : J) ↦
                        (_ :
                          f.fst (β := fun (X : J) ↦
                              (Y : J) ×'
                                (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                  (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                    (X ⟶ Y)) ∈
                            B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (f.fst (β := fun (X : J) ↦
                                (Y : J) ×'
                                  (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                    (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                      (X ⟶ Y)) ⟶
                              Y)) ∈
                      B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (f.fst (β := fun (X : J) ↦
                        (Y : J) ×'
                          (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                      f.snd (β := fun (X : J) ↦
                            (Y : J) ×'
                              (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                  (X ⟶ Y)).fst
                        (β := fun (Y : J) ↦
                        (_ :
                          f.fst (β := fun (X : J) ↦
                              (Y : J) ×'
                                (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                  (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                    (X ⟶ Y)) ∈
                            B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (f.fst (β := fun (X : J) ↦
                                (Y : J) ×'
                                  (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                    (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                      (X ⟶ Y)) ⟶
                              Y)))).snd
              (β :=
              fun
                (x :
                  f.snd (β := fun (X : J) ↦
                          (Y : J) ×'
                            (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                              (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).fst
                      (β := fun (Y : J) ↦
                      (_ :
                        f.fst (β := fun (X : J) ↦
                            (Y : J) ×'
                              (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                          B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                        (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (f.fst (β := fun (X : J) ↦
                              (Y : J) ×'
                                (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                  (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                                    (X ⟶ Y)) ⟶
                            Y)) ∈
                    B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ↦
              f.fst (β := fun (X : J) ↦
                  (Y : J) ×'
                    (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                      (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                f.snd (β := fun (X : J) ↦
                      (Y : J) ×'
                        (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                          (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)).fst
                  (β := fun (Y : J) ↦
                  (_ :
                    f.fst (β := fun (X : J) ↦
                        (Y : J) ×'
                          (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                            (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ∈
                      B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                    (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                      (f.fst (β := fun (X : J) ↦
                          (Y : J) ×'
                            (_ : X ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×'
                              (_ : Y ∈ B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ×' (X ⟶ Y)) ⟶
                        Y)))))))
u : (j : J) → (↑(F.obj j) : Type v)
hu :
  Membership.mem (γ := Set ((j : J) → (↑(F.obj j) : Type v)))
    ((fun (G : FiniteDiagram J) ↦ partialSections F (G.snd (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))))
      (Sigma.mk (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))
        (A.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)) ⊔
          B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)))
        (Finset.image ιA (A.snd (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))) ⊔
          Finset.image ιB (B.snd (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))))))
    u
f : FiniteDiagramArrow (B.fst (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)))
hf : f ∈ B.snd (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G))
⊢ ιB f ∈ Finset.image ιB (B.snd (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)))
have h : ∃ a ∈ B.snd (β := fun (G : Finset J) ↦ Finset (FiniteDiagramArrow G)), ιB a = ιB f
Tactic: rw [Finset.mem_image]