-- Module: Mathlib.CategoryTheory.Limits.Bicones
Goal:
J : Type v₁
inst : SmallCategory J
C : Type u₁
inst_1 : Category.{v₁, u₁} C
F : J ⥤ C
c₁ c₂ : Cone F
j k : J
f : j ⟶ k
⊢ Eq.{v₁ + 1} (α :=
    Quiver.Hom.{v₁, u₁} (V := C)
      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.left c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
    (@BiconeHom.casesOn _ _
        (fun (a a_1 : Bicone J) (x : BiconeHom J a a_1) ↦
          (h : Bicone.left = a) →
            (h : Bicone.diagram k = a_1) →
              (h : HEq (α := Bicone.left ⟶ Bicone.diagram k) (BiconeHom.left j ≫ BiconeHom.diagram f) x) →
                Quiver.Hom.{v₁, u₁} (V := C)
                  (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.left c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                  (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦
                      F.obj j :
                    C))
        Bicone.left (Bicone.diagram k) (BiconeHom.left j ≫ BiconeHom.diagram f)
        (fun (h : Eq.{v₁ + 1} (α := Bicone J) Bicone.left Bicone.left) ↦
          Eq.ndrec (motive := fun {X : Bicone J} ↦
            (f : X ⟶ Bicone.diagram k) →
              (h : Bicone.diagram k = Bicone.left) →
                (h : HEq f (β := BiconeHom J Bicone.left Bicone.left) BiconeHom.left_id) →
                  Quiver.Hom.{v₁, u₁} (V := C)
                    (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                    (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦
                        F.obj j :
                      C))
            (fun (f : Bicone.left ⟶ Bicone.diagram k) (h : Bicone.diagram k = Bicone.left) ↦
              Eq.ndrec (motive := fun {Y : Bicone J} ↦
                (f : Bicone.left ⟶ Y) →
                  (h : HEq f (β := BiconeHom J Bicone.left Bicone.left) BiconeHom.left_id) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.left c₁.pt c₂.pt fun (j : J) ↦ F.obj j :
                        C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                (fun (f : Quiver.Hom (V := Bicone J) Bicone.left Bicone.left)
                    (h : HEq f (β := BiconeHom J Bicone.left Bicone.left) BiconeHom.left_id) ↦
                  𝟙 (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.left c₁.pt c₂.pt fun (j : J) ↦ F.obj j))
                ⋯ f)
            ⋯ (BiconeHom.left j ≫ BiconeHom.diagram f))
        (fun (h : Eq.{v₁ + 1} (α := Bicone J) Bicone.left Bicone.right) ↦
          Eq.ndrec (motive := fun {X : Bicone J} ↦
            (f : X ⟶ Bicone.diagram k) →
              (h : Bicone.diagram k = Bicone.right) →
                (h : HEq f (β := BiconeHom J Bicone.right Bicone.right) BiconeHom.right_id) →
                  Quiver.Hom.{v₁, u₁} (V := C)
                    (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                    (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦
                        F.obj j :
                      C))
            (fun (f : Bicone.right ⟶ Bicone.diagram k) (h : Bicone.diagram k = Bicone.right) ↦
              Eq.ndrec (motive := fun {Y : Bicone J} ↦
                (f : Bicone.right ⟶ Y) →
                  (h : HEq f (β := BiconeHom J Bicone.right Bicone.right) BiconeHom.right_id) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.right c₁.pt c₂.pt fun (j : J) ↦
                          F.obj j :
                        C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                (fun (f : Quiver.Hom (V := Bicone J) Bicone.right Bicone.right)
                    (h : HEq f (β := BiconeHom J Bicone.right Bicone.right) BiconeHom.right_id) ↦
                  𝟙 (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.right c₁.pt c₂.pt fun (j : J) ↦ F.obj j))
                ⋯ f)
            ⋯ (BiconeHom.left j ≫ BiconeHom.diagram f))
        (fun (j_1 : J) (h : Eq.{v₁ + 1} (α := Bicone J) Bicone.left Bicone.left) ↦
          Eq.ndrec (motive := fun {X : Bicone J} ↦
            (f : X ⟶ Bicone.diagram k) →
              (h : Bicone.diagram k = Bicone.diagram j_1) →
                (h : HEq f (β := BiconeHom J Bicone.left (Bicone.diagram j_1)) (BiconeHom.left j_1)) →
                  Quiver.Hom.{v₁, u₁} (V := C)
                    (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                    (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦
                        F.obj j :
                      C))
            (fun (f : Bicone.left ⟶ Bicone.diagram k) (h : Bicone.diagram k = Bicone.diagram j_1) ↦
              Eq.ndrec (motive := fun {Y : Bicone J} ↦
                (f : Bicone.left ⟶ Y) →
                  (h : HEq f (β := BiconeHom J Bicone.left (Bicone.diagram j_1)) (BiconeHom.left j_1)) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.left c₁.pt c₂.pt fun (j : J) ↦ F.obj j :
                        C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                (fun (f : Bicone.left ⟶ Bicone.diagram j_1)
                    (h : HEq f (β := BiconeHom J Bicone.left (Bicone.diagram j_1)) (BiconeHom.left j_1)) ↦
                  c₁.π.app j_1)
                ⋯ f)
            ⋯ (BiconeHom.left j ≫ BiconeHom.diagram f))
        (fun (j_1 : J) (h : Eq.{v₁ + 1} (α := Bicone J) Bicone.left Bicone.right) ↦
          Eq.ndrec (motive := fun {X : Bicone J} ↦
            (f : X ⟶ Bicone.diagram k) →
              (h : Bicone.diagram k = Bicone.diagram j_1) →
                (h : HEq f (β := BiconeHom J Bicone.right (Bicone.diagram j_1)) (BiconeHom.right j_1)) →
                  Quiver.Hom.{v₁, u₁} (V := C)
                    (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                    (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦
                        F.obj j :
                      C))
            (fun (f : Bicone.right ⟶ Bicone.diagram k) (h : Bicone.diagram k = Bicone.diagram j_1) ↦
              Eq.ndrec (motive := fun {Y : Bicone J} ↦
                (f : Bicone.right ⟶ Y) →
                  (h : HEq f (β := BiconeHom J Bicone.right (Bicone.diagram j_1)) (BiconeHom.right j_1)) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.right c₁.pt c₂.pt fun (j : J) ↦
                          F.obj j :
                        C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                (fun (f : Bicone.right ⟶ Bicone.diagram j_1)
                    (h : HEq f (β := BiconeHom J Bicone.right (Bicone.diagram j_1)) (BiconeHom.right j_1)) ↦
                  c₂.π.app j_1)
                ⋯ f)
            ⋯ (BiconeHom.left j ≫ BiconeHom.diagram f))
        (fun {j_1 k_1 : J} (f_1 : j_1 ⟶ k_1) (h : Bicone.left = Bicone.diagram j_1) ↦
          Eq.ndrec (motive := fun {X : Bicone J} ↦
            (f : X ⟶ Bicone.diagram k) →
              (h : Bicone.diagram k = Bicone.diagram k_1) →
                (h : f ≍ BiconeHom.diagram f_1) →
                  Quiver.Hom.{v₁, u₁} (V := C)
                    (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                    (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦
                        F.obj j :
                      C))
            (fun (f : Bicone.diagram j_1 ⟶ Bicone.diagram k) (h : Bicone.diagram k = Bicone.diagram k_1) ↦
              Eq.ndrec (motive := fun {Y : Bicone J} ↦
                (f : Bicone.diagram j_1 ⟶ Y) →
                  (h : f ≍ BiconeHom.diagram f_1) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram j_1) c₁.pt c₂.pt fun (j : J) ↦
                          F.obj j :
                        C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                (fun (f : Bicone.diagram j_1 ⟶ Bicone.diagram k_1) (h : f ≍ BiconeHom.diagram f_1) ↦ F.map f_1) ⋯ f)
            ⋯ (BiconeHom.left j ≫ BiconeHom.diagram f))
        ⋯ ⋯ ⋯ :
      Quiver.Hom.{v₁, u₁} (V := C)
        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.left c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
    (CategoryStruct.comp (Y :=
        Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram j) c₁.pt c₂.pt fun (j : J) ↦ F.obj j)
        (BiconeHom.casesOn (motive := fun (a a_1 : Bicone J) (x : BiconeHom J a a_1) ↦
          (h : Bicone.left = a) →
            (h : Bicone.diagram j = a_1) →
              (h : HEq (α := Bicone.left ⟶ Bicone.diagram j) (BiconeHom.left j) x) →
                Quiver.Hom.{v₁, u₁} (V := C)
                  (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.left c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                  (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram j) c₁.pt c₂.pt fun (j : J) ↦
                      F.obj j :
                    C))
          (BiconeHom.left j)
          (fun (h : Eq.{v₁ + 1} (α := Bicone J) Bicone.left Bicone.left) ↦
            Eq.ndrec (motive := fun {X : Bicone J} ↦
              (f : X ⟶ Bicone.diagram j) →
                (h : Bicone.diagram j = Bicone.left) →
                  (h : HEq f (β := BiconeHom J Bicone.left Bicone.left) BiconeHom.left_id) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram j) c₁.pt c₂.pt fun (j : J) ↦
                          F.obj j :
                        C))
              (fun (f : Bicone.left ⟶ Bicone.diagram j) (h : Bicone.diagram j = Bicone.left) ↦
                Eq.ndrec (motive := fun {Y : Bicone J} ↦
                  (f : Bicone.left ⟶ Y) →
                    (h : HEq f (β := BiconeHom J Bicone.left Bicone.left) BiconeHom.left_id) →
                      Quiver.Hom.{v₁, u₁} (V := C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.left c₁.pt c₂.pt fun (j : J) ↦
                            F.obj j :
                          C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                  (fun (f : Quiver.Hom (V := Bicone J) Bicone.left Bicone.left)
                      (h : HEq f (β := BiconeHom J Bicone.left Bicone.left) BiconeHom.left_id) ↦
                    𝟙 (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.left c₁.pt c₂.pt fun (j : J) ↦ F.obj j))
                  ⋯ f)
              ⋯ (BiconeHom.left j))
          (fun (h : Eq.{v₁ + 1} (α := Bicone J) Bicone.left Bicone.right) ↦
            Eq.ndrec (motive := fun {X : Bicone J} ↦
              (f : X ⟶ Bicone.diagram j) →
                (h : Bicone.diagram j = Bicone.right) →
                  (h : HEq f (β := BiconeHom J Bicone.right Bicone.right) BiconeHom.right_id) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram j) c₁.pt c₂.pt fun (j : J) ↦
                          F.obj j :
                        C))
              (fun (f : Bicone.right ⟶ Bicone.diagram j) (h : Bicone.diagram j = Bicone.right) ↦
                Eq.ndrec (motive := fun {Y : Bicone J} ↦
                  (f : Bicone.right ⟶ Y) →
                    (h : HEq f (β := BiconeHom J Bicone.right Bicone.right) BiconeHom.right_id) →
                      Quiver.Hom.{v₁, u₁} (V := C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.right c₁.pt c₂.pt fun (j : J) ↦
                            F.obj j :
                          C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                  (fun (f : Quiver.Hom (V := Bicone J) Bicone.right Bicone.right)
                      (h : HEq f (β := BiconeHom J Bicone.right Bicone.right) BiconeHom.right_id) ↦
                    𝟙
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.right c₁.pt c₂.pt fun (j : J) ↦
                        F.obj j))
                  ⋯ f)
              ⋯ (BiconeHom.left j))
          (fun (j_1 : J) (h : Eq.{v₁ + 1} (α := Bicone J) Bicone.left Bicone.left) ↦
            Eq.ndrec (motive := fun {X : Bicone J} ↦
              (f : X ⟶ Bicone.diagram j) →
                (h : Bicone.diagram j = Bicone.diagram j_1) →
                  (h : HEq f (β := BiconeHom J Bicone.left (Bicone.diagram j_1)) (BiconeHom.left j_1)) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram j) c₁.pt c₂.pt fun (j : J) ↦
                          F.obj j :
                        C))
              (fun (f : Bicone.left ⟶ Bicone.diagram j) (h : Bicone.diagram j = Bicone.diagram j_1) ↦
                Eq.ndrec (motive := fun {Y : Bicone J} ↦
                  (f : Bicone.left ⟶ Y) →
                    (h : HEq f (β := BiconeHom J Bicone.left (Bicone.diagram j_1)) (BiconeHom.left j_1)) →
                      Quiver.Hom.{v₁, u₁} (V := C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.left c₁.pt c₂.pt fun (j : J) ↦
                            F.obj j :
                          C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                  (fun (f : Bicone.left ⟶ Bicone.diagram j_1)
                      (h : HEq f (β := BiconeHom J Bicone.left (Bicone.diagram j_1)) (BiconeHom.left j_1)) ↦
                    c₁.π.app j_1)
                  ⋯ f)
              ⋯ (BiconeHom.left j))
          (fun (j_1 : J) (h : Eq.{v₁ + 1} (α := Bicone J) Bicone.left Bicone.right) ↦
            Eq.ndrec (motive := fun {X : Bicone J} ↦
              (f : X ⟶ Bicone.diagram j) →
                (h : Bicone.diagram j = Bicone.diagram j_1) →
                  (h : HEq f (β := BiconeHom J Bicone.right (Bicone.diagram j_1)) (BiconeHom.right j_1)) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram j) c₁.pt c₂.pt fun (j : J) ↦
                          F.obj j :
                        C))
              (fun (f : Bicone.right ⟶ Bicone.diagram j) (h : Bicone.diagram j = Bicone.diagram j_1) ↦
                Eq.ndrec (motive := fun {Y : Bicone J} ↦
                  (f : Bicone.right ⟶ Y) →
                    (h : HEq f (β := BiconeHom J Bicone.right (Bicone.diagram j_1)) (BiconeHom.right j_1)) →
                      Quiver.Hom.{v₁, u₁} (V := C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.right c₁.pt c₂.pt fun (j : J) ↦
                            F.obj j :
                          C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                  (fun (f : Bicone.right ⟶ Bicone.diagram j_1)
                      (h : HEq f (β := BiconeHom J Bicone.right (Bicone.diagram j_1)) (BiconeHom.right j_1)) ↦
                    c₂.π.app j_1)
                  ⋯ f)
              ⋯ (BiconeHom.left j))
          (fun {j_1 k : J} (f : j_1 ⟶ k) (h : Bicone.left = Bicone.diagram j_1) ↦
            Eq.ndrec (motive := fun {X : Bicone J} ↦
              (f_1 : X ⟶ Bicone.diagram j) →
                (h : Bicone.diagram j = Bicone.diagram k) →
                  (h : f_1 ≍ BiconeHom.diagram f) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram j) c₁.pt c₂.pt fun (j : J) ↦
                          F.obj j :
                        C))
              (fun (f_1 : Bicone.diagram j_1 ⟶ Bicone.diagram j) (h : Bicone.diagram j = Bicone.diagram k) ↦
                Eq.ndrec (motive := fun {Y : Bicone J} ↦
                  (f_2 : Bicone.diagram j_1 ⟶ Y) →
                    (h : f_2 ≍ BiconeHom.diagram f) →
                      Quiver.Hom.{v₁, u₁} (V := C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram j_1) c₁.pt c₂.pt
                            fun (j : J) ↦ F.obj j :
                          C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                  (fun (f_2 : Bicone.diagram j_1 ⟶ Bicone.diagram k) (h : f_2 ≍ BiconeHom.diagram f) ↦ F.map f) ⋯ f_1)
              ⋯ (BiconeHom.left j))
          ⋯ ⋯ ⋯)
        (BiconeHom.casesOn (motive := fun (a a_1 : Bicone J) (x : BiconeHom J a a_1) ↦
          (h : Bicone.diagram j = a) →
            (h : Bicone.diagram k = a_1) →
              (h : BiconeHom.diagram f ≍ x) →
                Quiver.Hom.{v₁, u₁} (V := C)
                  (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram j) c₁.pt c₂.pt fun (j : J) ↦
                      F.obj j :
                    C)
                  (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦
                      F.obj j :
                    C))
          (BiconeHom.diagram f)
          (fun (h : Bicone.diagram j = Bicone.left) ↦
            Eq.ndrec (motive := fun {X : Bicone J} ↦
              (f : X ⟶ Bicone.diagram k) →
                (h : Bicone.diagram k = Bicone.left) →
                  (h : HEq f (β := BiconeHom J Bicone.left Bicone.left) BiconeHom.left_id) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦
                          F.obj j :
                        C))
              (fun (f : Bicone.left ⟶ Bicone.diagram k) (h : Bicone.diagram k = Bicone.left) ↦
                Eq.ndrec (motive := fun {Y : Bicone J} ↦
                  (f : Bicone.left ⟶ Y) →
                    (h : HEq f (β := BiconeHom J Bicone.left Bicone.left) BiconeHom.left_id) →
                      Quiver.Hom.{v₁, u₁} (V := C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.left c₁.pt c₂.pt fun (j : J) ↦
                            F.obj j :
                          C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                  (fun (f : Quiver.Hom (V := Bicone J) Bicone.left Bicone.left)
                      (h : HEq f (β := BiconeHom J Bicone.left Bicone.left) BiconeHom.left_id) ↦
                    𝟙 (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.left c₁.pt c₂.pt fun (j : J) ↦ F.obj j))
                  ⋯ f)
              ⋯ (BiconeHom.diagram f))
          (fun (h : Bicone.diagram j = Bicone.right) ↦
            Eq.ndrec (motive := fun {X : Bicone J} ↦
              (f : X ⟶ Bicone.diagram k) →
                (h : Bicone.diagram k = Bicone.right) →
                  (h : HEq f (β := BiconeHom J Bicone.right Bicone.right) BiconeHom.right_id) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦
                          F.obj j :
                        C))
              (fun (f : Bicone.right ⟶ Bicone.diagram k) (h : Bicone.diagram k = Bicone.right) ↦
                Eq.ndrec (motive := fun {Y : Bicone J} ↦
                  (f : Bicone.right ⟶ Y) →
                    (h : HEq f (β := BiconeHom J Bicone.right Bicone.right) BiconeHom.right_id) →
                      Quiver.Hom.{v₁, u₁} (V := C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.right c₁.pt c₂.pt fun (j : J) ↦
                            F.obj j :
                          C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                  (fun (f : Quiver.Hom (V := Bicone J) Bicone.right Bicone.right)
                      (h : HEq f (β := BiconeHom J Bicone.right Bicone.right) BiconeHom.right_id) ↦
                    𝟙
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.right c₁.pt c₂.pt fun (j : J) ↦
                        F.obj j))
                  ⋯ f)
              ⋯ (BiconeHom.diagram f))
          (fun (j_1 : J) (h : Bicone.diagram j = Bicone.left) ↦
            Eq.ndrec (motive := fun {X : Bicone J} ↦
              (f : X ⟶ Bicone.diagram k) →
                (h : Bicone.diagram k = Bicone.diagram j_1) →
                  (h : HEq f (β := BiconeHom J Bicone.left (Bicone.diagram j_1)) (BiconeHom.left j_1)) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦
                          F.obj j :
                        C))
              (fun (f : Bicone.left ⟶ Bicone.diagram k) (h : Bicone.diagram k = Bicone.diagram j_1) ↦
                Eq.ndrec (motive := fun {Y : Bicone J} ↦
                  (f : Bicone.left ⟶ Y) →
                    (h : HEq f (β := BiconeHom J Bicone.left (Bicone.diagram j_1)) (BiconeHom.left j_1)) →
                      Quiver.Hom.{v₁, u₁} (V := C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.left c₁.pt c₂.pt fun (j : J) ↦
                            F.obj j :
                          C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                  (fun (f : Bicone.left ⟶ Bicone.diagram j_1)
                      (h : HEq f (β := BiconeHom J Bicone.left (Bicone.diagram j_1)) (BiconeHom.left j_1)) ↦
                    c₁.π.app j_1)
                  ⋯ f)
              ⋯ (BiconeHom.diagram f))
          (fun (j_1 : J) (h : Bicone.diagram j = Bicone.right) ↦
            Eq.ndrec (motive := fun {X : Bicone J} ↦
              (f : X ⟶ Bicone.diagram k) →
                (h : Bicone.diagram k = Bicone.diagram j_1) →
                  (h : HEq f (β := BiconeHom J Bicone.right (Bicone.diagram j_1)) (BiconeHom.right j_1)) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦
                          F.obj j :
                        C))
              (fun (f : Bicone.right ⟶ Bicone.diagram k) (h : Bicone.diagram k = Bicone.diagram j_1) ↦
                Eq.ndrec (motive := fun {Y : Bicone J} ↦
                  (f : Bicone.right ⟶ Y) →
                    (h : HEq f (β := BiconeHom J Bicone.right (Bicone.diagram j_1)) (BiconeHom.right j_1)) →
                      Quiver.Hom.{v₁, u₁} (V := C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.right c₁.pt c₂.pt fun (j : J) ↦
                            F.obj j :
                          C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                  (fun (f : Bicone.right ⟶ Bicone.diagram j_1)
                      (h : HEq f (β := BiconeHom J Bicone.right (Bicone.diagram j_1)) (BiconeHom.right j_1)) ↦
                    c₂.π.app j_1)
                  ⋯ f)
              ⋯ (BiconeHom.diagram f))
          (fun {j_1 k_1 : J} (f_1 : j_1 ⟶ k_1) (h : Bicone.diagram j = Bicone.diagram j_1) ↦
            Eq.ndrec (motive := fun {X : Bicone J} ↦
              (f : X ⟶ Bicone.diagram k) →
                (h : Bicone.diagram k = Bicone.diagram k_1) →
                  (h : f ≍ BiconeHom.diagram f_1) →
                    Quiver.Hom.{v₁, u₁} (V := C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) X c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
                      (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦
                          F.obj j :
                        C))
              (fun (f : Bicone.diagram j_1 ⟶ Bicone.diagram k) (h : Bicone.diagram k = Bicone.diagram k_1) ↦
                Eq.ndrec (motive := fun {Y : Bicone J} ↦
                  (f : Bicone.diagram j_1 ⟶ Y) →
                    (h : f ≍ BiconeHom.diagram f_1) →
                      Quiver.Hom.{v₁, u₁} (V := C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram j_1) c₁.pt c₂.pt
                            fun (j : J) ↦ F.obj j :
                          C)
                        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Y c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))
                  (fun (f : Bicone.diagram j_1 ⟶ Bicone.diagram k_1) (h : f ≍ BiconeHom.diagram f_1) ↦ F.map f_1) ⋯ f)
              ⋯ (BiconeHom.diagram f))
          ⋯ ⋯ ⋯) :
      Quiver.Hom.{v₁, u₁} (V := C)
        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) Bicone.left c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C)
        (Bicone.casesOn (motive := fun (x : Bicone J) ↦ C) (Bicone.diagram k) c₁.pt c₂.pt fun (j : J) ↦ F.obj j : C))

Tactic:
(Category.id_comp _).symm.trans (c₁.π.naturality _)

Premises used: CategoryTheory.Limits.Cone.π, CategoryTheory.NatTrans.naturality, Eq.symm, Eq.trans, CategoryTheory.Category.id_comp