-- Module: Mathlib.Algebra.Category.MonCat.FilteredColimits
Goal:
J : Type v
inst : SmallCategory J
inst_1 : IsFiltered J
F : J ⥤ CommMonCat
i : J
x :
  (↑(Functor.obj
        (F ⋙
          forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC :=
            carrier) MonCat (FD := fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
            MonCat.carrier))
        i) :
    Type (max u v))
j : J
y :
  (↑(Functor.obj
        (F ⋙
          forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC :=
            carrier) MonCat (FD := fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
            MonCat.carrier))
        j) :
    Type (max u v))
k : J := IsFiltered.max i j
f : i ⟶ IsFiltered.max i j := IsFiltered.leftToMax i j
g : j ⟶ IsFiltered.max i j := IsFiltered.rightToMax i j
dsimp :
  MonCat.FilteredColimits.M.mk
      (F ⋙
        forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC :=
          carrier) MonCat (FD := fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
          MonCat.carrier))
      (Sigma.mk (β := fun (j : J) ↦ (↑(F.obj j) : Type (max u v))) k
        (HMul.hMul (α := (↑(F.obj k) : Type (max u v))) (β := (↑(F.obj k) : Type (max u v)))
          ((Hom.hom (F.map f) : (a : (↑(F.obj i) : Type (max u v))) → (↑(F.obj k) : Type (max u v))) x :
            (↑(F.obj k) : Type (max u v)))
          ((Hom.hom (F.map g) : (a : (↑(F.obj j) : Type (max u v))) → (↑(F.obj k) : Type (max u v))) y :
            (↑(F.obj k) : Type (max u v))))) =
    MonCat.FilteredColimits.M.mk
      (F ⋙
        forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC :=
          carrier) MonCat (FD := fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
          MonCat.carrier))
      (Sigma.mk (β := fun (j : J) ↦ (↑(F.obj j) : Type (max u v))) k
        (HMul.hMul (α := (↑(F.obj k) : Type (max u v))) (β := (↑(F.obj k) : Type (max u v)))
          ((Hom.hom (F.map g) : (a : (↑(F.obj j) : Type (max u v))) → (↑(F.obj k) : Type (max u v))) y :
            (↑(F.obj k) : Type (max u v)))
          ((Hom.hom (F.map f) : (a : (↑(F.obj i) : Type (max u v))) → (↑(F.obj k) : Type (max u v))) x :
            (↑(F.obj k) : Type (max u v)))))
⊢ MonCat.FilteredColimits.M.mk
      (F ⋙
        forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC :=
          carrier) MonCat (FD := fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
          MonCat.carrier))
      (Sigma.mk (β := fun (j : J) ↦
        (↑(Functor.obj
              (F ⋙
                forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v)))
                  (CC := carrier) MonCat (FD := fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v)))
                  (CD := MonCat.carrier))
              j) :
          Type (max u v)))
        k
        (HMul.hMul (α :=
          (↑(Functor.obj
                (F ⋙
                  forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v)))
                    (CC := carrier) MonCat (FD := fun (x1 x2 : MonCat) ↦
                    (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                k) :
            Type (max u v)))
          (β :=
          (↑(Functor.obj
                (F ⋙
                  forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v)))
                    (CC := carrier) MonCat (FD := fun (x1 x2 : MonCat) ↦
                    (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                k) :
            Type (max u v)))
          ((ConcreteCategory.hom (FC := fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC :=
                  MonCat.carrier) (X :=
                  Functor.obj
                    (F ⋙
                      forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                        (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                        fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                    (Sigma.fst (β := fun (j : J) ↦
                      (↑(Functor.obj
                            (F ⋙
                              forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                                (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                                fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                                MonCat.carrier))
                            j) :
                        Type (max u v)))
                      (Sigma.mk (β := fun (j : J) ↦
                        (↑(Functor.obj
                              (F ⋙
                                forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                                  (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                                  fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                                  MonCat.carrier))
                              j) :
                          Type (max u v)))
                        i x)))
                  (CategoryTheory.Functor.map
                    (F ⋙
                      forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                        (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                        fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                    f) :
                (a : (↑((F ⋙ forget₂ CommMonCat MonCat).obj ⟨i, x⟩.fst) : Type (max u v))) →
                  (↑((F ⋙ forget₂ CommMonCat MonCat).obj k) : Type (max u v)))
              (Sigma.snd (β := fun (j : J) ↦
                (↑(Functor.obj
                      (F ⋙
                        forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                          (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                          fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                          MonCat.carrier))
                      j) :
                  Type (max u v)))
                (Sigma.mk (β := fun (j : J) ↦
                  (↑(Functor.obj
                        (F ⋙
                          forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                            (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                            fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                            MonCat.carrier))
                        j) :
                    Type (max u v)))
                  i x)) :
            (↑(Functor.obj
                  (F ⋙
                    forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                      (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                      fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                  k) :
              Type (max u v)))
          ((ConcreteCategory.hom (FC := fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC :=
                  MonCat.carrier) (X :=
                  Functor.obj
                    (F ⋙
                      forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                        (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                        fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                    (Sigma.fst (β := fun (j : J) ↦
                      (↑(Functor.obj
                            (F ⋙
                              forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                                (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                                fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                                MonCat.carrier))
                            j) :
                        Type (max u v)))
                      (Sigma.mk (β := fun (j : J) ↦
                        (↑(Functor.obj
                              (F ⋙
                                forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                                  (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                                  fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                                  MonCat.carrier))
                              j) :
                          Type (max u v)))
                        j y)))
                  (CategoryTheory.Functor.map
                    (F ⋙
                      forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                        (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                        fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                    g) :
                (a : (↑((F ⋙ forget₂ CommMonCat MonCat).obj ⟨j, y⟩.fst) : Type (max u v))) →
                  (↑((F ⋙ forget₂ CommMonCat MonCat).obj k) : Type (max u v)))
              (Sigma.snd (β := fun (j : J) ↦
                (↑(Functor.obj
                      (F ⋙
                        forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                          (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                          fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                          MonCat.carrier))
                      j) :
                  Type (max u v)))
                (Sigma.mk (β := fun (j : J) ↦
                  (↑(Functor.obj
                        (F ⋙
                          forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                            (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                            fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                            MonCat.carrier))
                        j) :
                    Type (max u v)))
                  j y)) :
            (↑(Functor.obj
                  (F ⋙
                    forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                      (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                      fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                  k) :
              Type (max u v))))) =
    MonCat.FilteredColimits.M.mk
      (F ⋙
        forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC :=
          carrier) MonCat (FD := fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
          MonCat.carrier))
      (Sigma.mk (β := fun (j : J) ↦
        (↑(Functor.obj
              (F ⋙
                forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v)))
                  (CC := carrier) MonCat (FD := fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v)))
                  (CD := MonCat.carrier))
              j) :
          Type (max u v)))
        k
        (HMul.hMul (α :=
          (↑(Functor.obj
                (F ⋙
                  forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v)))
                    (CC := carrier) MonCat (FD := fun (x1 x2 : MonCat) ↦
                    (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                k) :
            Type (max u v)))
          (β :=
          (↑(Functor.obj
                (F ⋙
                  forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v)))
                    (CC := carrier) MonCat (FD := fun (x1 x2 : MonCat) ↦
                    (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                k) :
            Type (max u v)))
          ((ConcreteCategory.hom (FC := fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC :=
                  MonCat.carrier) (X :=
                  Functor.obj
                    (F ⋙
                      forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                        (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                        fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                    (Sigma.fst (β := fun (j : J) ↦
                      (↑(Functor.obj
                            (F ⋙
                              forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                                (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                                fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                                MonCat.carrier))
                            j) :
                        Type (max u v)))
                      (Sigma.mk (β := fun (j : J) ↦
                        (↑(Functor.obj
                              (F ⋙
                                forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                                  (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                                  fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                                  MonCat.carrier))
                              j) :
                          Type (max u v)))
                        j y)))
                  (CategoryTheory.Functor.map
                    (F ⋙
                      forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                        (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                        fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                    g) :
                (a : (↑((F ⋙ forget₂ CommMonCat MonCat).obj ⟨j, y⟩.fst) : Type (max u v))) →
                  (↑((F ⋙ forget₂ CommMonCat MonCat).obj k) : Type (max u v)))
              (Sigma.snd (β := fun (j : J) ↦
                (↑(Functor.obj
                      (F ⋙
                        forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                          (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                          fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                          MonCat.carrier))
                      j) :
                  Type (max u v)))
                (Sigma.mk (β := fun (j : J) ↦
                  (↑(Functor.obj
                        (F ⋙
                          forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                            (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                            fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                            MonCat.carrier))
                        j) :
                    Type (max u v)))
                  j y)) :
            (↑(Functor.obj
                  (F ⋙
                    forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                      (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                      fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                  k) :
              Type (max u v)))
          ((ConcreteCategory.hom (FC := fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC :=
                  MonCat.carrier) (X :=
                  Functor.obj
                    (F ⋙
                      forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                        (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                        fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                    (Sigma.fst (β := fun (j : J) ↦
                      (↑(Functor.obj
                            (F ⋙
                              forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                                (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                                fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                                MonCat.carrier))
                            j) :
                        Type (max u v)))
                      (Sigma.mk (β := fun (j : J) ↦
                        (↑(Functor.obj
                              (F ⋙
                                forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                                  (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                                  fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                                  MonCat.carrier))
                              j) :
                          Type (max u v)))
                        i x)))
                  (CategoryTheory.Functor.map
                    (F ⋙
                      forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                        (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                        fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                    f) :
                (a : (↑((F ⋙ forget₂ CommMonCat MonCat).obj ⟨i, x⟩.fst) : Type (max u v))) →
                  (↑((F ⋙ forget₂ CommMonCat MonCat).obj k) : Type (max u v)))
              (Sigma.snd (β := fun (j : J) ↦
                (↑(Functor.obj
                      (F ⋙
                        forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                          (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                          fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                          MonCat.carrier))
                      j) :
                  Type (max u v)))
                (Sigma.mk (β := fun (j : J) ↦
                  (↑(Functor.obj
                        (F ⋙
                          forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                            (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                            fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD :=
                            MonCat.carrier))
                        j) :
                    Type (max u v)))
                  i x)) :
            (↑(Functor.obj
                  (F ⋙
                    forget₂ CommMonCat (FC := fun (x1 x2 : CommMonCat) ↦
                      (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CC := carrier) MonCat (FD :=
                      fun (x1 x2 : MonCat) ↦ (↑x1 : Type (max u v)) →* (↑x2 : Type (max u v))) (CD := MonCat.carrier))
                  k) :
              Type (max u v)))))

Tactic:
dsimp