-- Module: Mathlib.Algebra.Category.ModuleCat.Stalk
Goal:
C : Type u_1
inst : SmallCategory C
inst_1 : IsFiltered C
R : C ⥤ RingCat
M : C ⥤ Ab
inst_2 : (i : C) → Module.{u_2, u_3} (↑(R.obj i) : Type u_2) (↑(M.obj i) : Type u_3)
H :
  ∀ {i j : C} (f : i ⟶ j) (r : (↑(R.obj i) : Type u_2)) (m : (↑(M.obj i) : Type u_3)),
    (ConcreteCategory.hom (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC :=
            AddCommGrpCat.carrier) (M.map f) :
          (a : (↑(M.obj i) : Type u_3)) → (↑(M.obj j) : Type u_3))
        (r • m) =
      HSMul.hSMul (α := (↑(R.obj j) : Type u_2)) (β := (↑(M.obj j) : Type u_3))
        ((ConcreteCategory.hom (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2)) (CC :=
                RingCat.carrier) (R.map f) :
              (a : (↑(R.obj i) : Type u_2)) → (↑(R.obj j) : Type u_2))
            r :
          (↑(R.obj j) : Type u_2))
        ((ConcreteCategory.hom (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC :=
                AddCommGrpCat.carrier) (M.map f) :
              (a : (↑(M.obj i) : Type u_3)) → (↑(M.obj j) : Type u_3))
            m :
          (↑(M.obj j) : Type u_3))
r :
  (R ⋙
      forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2)) (CC :=
        RingCat.carrier)).ColimitType
m :
  (M ⋙
      forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC :=
        AddCommGrpCat.carrier)).ColimitType
U : C
a :
  (R ⋙
        forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2)) (CC :=
          RingCat.carrier)).obj
    U
V₁ : C
b₁ :
  (M ⋙
        forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC :=
          AddCommGrpCat.carrier)).obj
    V₁
V₂ : C
f : V₁ ⟶ V₂
s : C
α : IsFiltered.max U V₁ ⟶ s
β : IsFiltered.max U V₂ ⟶ s
h₁ : leftToMax U V₁ ≫ α = leftToMax U V₂ ≫ β
h₂ : rightToMax U V₁ ≫ α = (f ≫ rightToMax U V₂) ≫ β
⊢ Eq (α :=
    (M ⋙
        forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC :=
          AddCommGrpCat.carrier)).ColimitType)
    ((fun
          (Ua :
            (j : C) ×
              (R ⋙
                    forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2)) (CC :=
                      RingCat.carrier)).obj
                j)
          (Vb :
            (j : C) ×
              (M ⋙
                    forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC :=
                      AddCommGrpCat.carrier)).obj
                j) ↦
        (M ⋙
              forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC :=
                AddCommGrpCat.carrier)).ιColimitType
          (IsFiltered.max
            (Ua.fst (β := fun (j : C) ↦
              (R ⋙
                    forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2)) (CC :=
                      RingCat.carrier)).obj
                j))
            (Vb.fst (β := fun (j : C) ↦
              (M ⋙
                    forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC :=
                      AddCommGrpCat.carrier)).obj
                j)))
          (HSMul.hSMul (α :=
            (↑(R.obj
                  (IsFiltered.max
                    (Ua.fst (β := fun (j : C) ↦
                      (R ⋙
                            forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                              (CC := RingCat.carrier)).obj
                        j))
                    (Vb.fst (β := fun (j : C) ↦
                      (M ⋙
                            forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3))
                              (CC := AddCommGrpCat.carrier)).obj
                        j)))) :
              Type u_2))
            (β :=
            (↑(M.obj
                  (IsFiltered.max
                    (Ua.fst (β := fun (j : C) ↦
                      (R ⋙
                            forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                              (CC := RingCat.carrier)).obj
                        j))
                    (Vb.fst (β := fun (j : C) ↦
                      (M ⋙
                            forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3))
                              (CC := AddCommGrpCat.carrier)).obj
                        j)))) :
              Type u_3))
            ((ConcreteCategory.hom (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2)) (CC :=
                    RingCat.carrier) (Y :=
                    R.obj
                      (IsFiltered.max
                        (Ua.fst (β := fun (j : C) ↦
                          (R ⋙
                                forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                                  (CC := RingCat.carrier)).obj
                            j))
                        (Vb.fst (β := fun (j : C) ↦
                          (M ⋙
                                forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦
                                  (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC := AddCommGrpCat.carrier)).obj
                            j))))
                    (R.map
                      (leftToMax
                        (Ua.fst (β := fun (j : C) ↦
                          (R ⋙
                                forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                                  (CC := RingCat.carrier)).obj
                            j))
                        (Vb.fst (β := fun (j : C) ↦
                          (M ⋙
                                forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦
                                  (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC := AddCommGrpCat.carrier)).obj
                            j)))) :
                  (a : (↑(R.obj Ua.fst) : Type u_2)) → (↑(R.obj (IsFiltered.max Ua.fst Vb.fst)) : Type u_2))
                (Ua.snd (β := fun (j : C) ↦
                  (R ⋙
                        forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2)) (CC :=
                          RingCat.carrier)).obj
                    j)) :
              (↑(R.obj
                    (IsFiltered.max
                      (Ua.fst (β := fun (j : C) ↦
                        (R ⋙
                              forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                                (CC := RingCat.carrier)).obj
                          j))
                      (Vb.fst (β := fun (j : C) ↦
                        (M ⋙
                              forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3))
                                (CC := AddCommGrpCat.carrier)).obj
                          j)))) :
                Type u_2))
            ((ConcreteCategory.hom (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3))
                    (CC := AddCommGrpCat.carrier) (X :=
                    M.obj
                      (Vb.fst (β := fun (j : C) ↦
                        (M ⋙
                              forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3))
                                (CC := AddCommGrpCat.carrier)).obj
                          j)))
                    (Y :=
                    M.obj
                      (IsFiltered.max
                        (Ua.fst (β := fun (j : C) ↦
                          (R ⋙
                                forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                                  (CC := RingCat.carrier)).obj
                            j))
                        (Vb.fst (β := fun (j : C) ↦
                          (M ⋙
                                forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦
                                  (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC := AddCommGrpCat.carrier)).obj
                            j))))
                    (M.map
                      (rightToMax
                        (Ua.fst (β := fun (j : C) ↦
                          (R ⋙
                                forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                                  (CC := RingCat.carrier)).obj
                            j))
                        (Vb.fst (β := fun (j : C) ↦
                          (M ⋙
                                forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦
                                  (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC := AddCommGrpCat.carrier)).obj
                            j)))) :
                  (a : (↑(M.obj Vb.fst) : Type u_3)) → (↑(M.obj (IsFiltered.max Ua.fst Vb.fst)) : Type u_3))
                (Vb.snd (β := fun (j : C) ↦
                  (M ⋙
                        forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3))
                          (CC := AddCommGrpCat.carrier)).obj
                    j)) :
              (↑(M.obj
                    (IsFiltered.max
                      (Ua.fst (β := fun (j : C) ↦
                        (R ⋙
                              forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                                (CC := RingCat.carrier)).obj
                          j))
                      (Vb.fst (β := fun (j : C) ↦
                        (M ⋙
                              forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3))
                                (CC := AddCommGrpCat.carrier)).obj
                          j)))) :
                Type u_3))))
      (Sigma.mk (β := fun (j : C) ↦
        (R ⋙
              forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2)) (CC :=
                RingCat.carrier)).obj
          j)
        U a)
      (Sigma.mk (β := fun (j : C) ↦
        (M ⋙
              forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC :=
                AddCommGrpCat.carrier)).obj
          j)
        V₁ b₁))
    ((fun
          (Ua :
            (j : C) ×
              (R ⋙
                    forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2)) (CC :=
                      RingCat.carrier)).obj
                j)
          (Vb :
            (j : C) ×
              (M ⋙
                    forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC :=
                      AddCommGrpCat.carrier)).obj
                j) ↦
        (M ⋙
              forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC :=
                AddCommGrpCat.carrier)).ιColimitType
          (IsFiltered.max
            (Ua.fst (β := fun (j : C) ↦
              (R ⋙
                    forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2)) (CC :=
                      RingCat.carrier)).obj
                j))
            (Vb.fst (β := fun (j : C) ↦
              (M ⋙
                    forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC :=
                      AddCommGrpCat.carrier)).obj
                j)))
          (HSMul.hSMul (α :=
            (↑(R.obj
                  (IsFiltered.max
                    (Ua.fst (β := fun (j : C) ↦
                      (R ⋙
                            forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                              (CC := RingCat.carrier)).obj
                        j))
                    (Vb.fst (β := fun (j : C) ↦
                      (M ⋙
                            forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3))
                              (CC := AddCommGrpCat.carrier)).obj
                        j)))) :
              Type u_2))
            (β :=
            (↑(M.obj
                  (IsFiltered.max
                    (Ua.fst (β := fun (j : C) ↦
                      (R ⋙
                            forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                              (CC := RingCat.carrier)).obj
                        j))
                    (Vb.fst (β := fun (j : C) ↦
                      (M ⋙
                            forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3))
                              (CC := AddCommGrpCat.carrier)).obj
                        j)))) :
              Type u_3))
            ((ConcreteCategory.hom (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2)) (CC :=
                    RingCat.carrier) (Y :=
                    R.obj
                      (IsFiltered.max
                        (Ua.fst (β := fun (j : C) ↦
                          (R ⋙
                                forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                                  (CC := RingCat.carrier)).obj
                            j))
                        (Vb.fst (β := fun (j : C) ↦
                          (M ⋙
                                forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦
                                  (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC := AddCommGrpCat.carrier)).obj
                            j))))
                    (R.map
                      (leftToMax
                        (Ua.fst (β := fun (j : C) ↦
                          (R ⋙
                                forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                                  (CC := RingCat.carrier)).obj
                            j))
                        (Vb.fst (β := fun (j : C) ↦
                          (M ⋙
                                forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦
                                  (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC := AddCommGrpCat.carrier)).obj
                            j)))) :
                  (a : (↑(R.obj Ua.fst) : Type u_2)) → (↑(R.obj (IsFiltered.max Ua.fst Vb.fst)) : Type u_2))
                (Ua.snd (β := fun (j : C) ↦
                  (R ⋙
                        forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2)) (CC :=
                          RingCat.carrier)).obj
                    j)) :
              (↑(R.obj
                    (IsFiltered.max
                      (Ua.fst (β := fun (j : C) ↦
                        (R ⋙
                              forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                                (CC := RingCat.carrier)).obj
                          j))
                      (Vb.fst (β := fun (j : C) ↦
                        (M ⋙
                              forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3))
                                (CC := AddCommGrpCat.carrier)).obj
                          j)))) :
                Type u_2))
            ((ConcreteCategory.hom (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3))
                    (CC := AddCommGrpCat.carrier) (X :=
                    M.obj
                      (Vb.fst (β := fun (j : C) ↦
                        (M ⋙
                              forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3))
                                (CC := AddCommGrpCat.carrier)).obj
                          j)))
                    (Y :=
                    M.obj
                      (IsFiltered.max
                        (Ua.fst (β := fun (j : C) ↦
                          (R ⋙
                                forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                                  (CC := RingCat.carrier)).obj
                            j))
                        (Vb.fst (β := fun (j : C) ↦
                          (M ⋙
                                forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦
                                  (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC := AddCommGrpCat.carrier)).obj
                            j))))
                    (M.map
                      (rightToMax
                        (Ua.fst (β := fun (j : C) ↦
                          (R ⋙
                                forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                                  (CC := RingCat.carrier)).obj
                            j))
                        (Vb.fst (β := fun (j : C) ↦
                          (M ⋙
                                forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦
                                  (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC := AddCommGrpCat.carrier)).obj
                            j)))) :
                  (a : (↑(M.obj Vb.fst) : Type u_3)) → (↑(M.obj (IsFiltered.max Ua.fst Vb.fst)) : Type u_3))
                (Vb.snd (β := fun (j : C) ↦
                  (M ⋙
                        forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3))
                          (CC := AddCommGrpCat.carrier)).obj
                    j)) :
              (↑(M.obj
                    (IsFiltered.max
                      (Ua.fst (β := fun (j : C) ↦
                        (R ⋙
                              forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2))
                                (CC := RingCat.carrier)).obj
                          j))
                      (Vb.fst (β := fun (j : C) ↦
                        (M ⋙
                              forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3))
                                (CC := AddCommGrpCat.carrier)).obj
                          j)))) :
                Type u_3))))
      (Sigma.mk (β := fun (j : C) ↦
        (R ⋙
              forget RingCat (FC := fun (R S : RingCat.{u_2}) ↦ (↑R : Type u_2) →+* (↑S : Type u_2)) (CC :=
                RingCat.carrier)).obj
          j)
        U a)
      (Sigma.mk (β := fun (j : C) ↦
        (M ⋙
              forget Ab (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC :=
                AddCommGrpCat.carrier)).obj
          j)
        V₂
        ((ConcreteCategory.hom (FC := fun (x1 x2 : AddCommGrpCat.{u_3}) ↦ (↑x1 : Type u_3) →+ (↑x2 : Type u_3)) (CC :=
              AddCommGrpCat.carrier) (M.map f) :
            (a : (↑(M.obj V₁) : Type u_3)) → (↑(M.obj V₂) : Type u_3))
          b₁)))

Tactic:
Functor.ιColimitType_eq_of_map_eq_map _ _ _ α β ?_

Premises used: CategoryTheory.Functor.ιColimitType_eq_of_map_eq_map