-- Module: Mathlib.RepresentationTheory.Homological.GroupHomology.Functoriality
Goal:
k G H : Type u
inst : CommRing k
inst_1 : Group G
inst_2 : Group H
A : Rep k G
B : Rep k H
f : G →* H
φ_1 : Quiver.Hom.{?u.1135932, max u (?u.1135932 + 1)} A (res f B)
n_1 n : ℕ
X Y : Rep k H
φ : X ⟶ Y
simp :
  Eq (α := cycles (of (MonoidHom.comp X.ρ f)) n ⟶ groupHomology Y n)
    (HomologicalComplex.cyclesMap
        (chainsMap (f.comp (MonoidHom.id G))
          (CategoryStruct.comp (Y := res (MonoidHom.id G) (of (MonoidHom.comp Y.ρ f)))
            (ofHom
              {
                toLinearMap :=
                  (↑(Hom.hom φ) :
                    [inst_3 : FunLike (X.ρ.IntertwiningMap Y.ρ) (↑X : Type u) (↑Y : Type u)] →
                      [SemilinearMapClass (X.ρ.IntertwiningMap Y.ρ) (RingHom.id k) (↑X : Type u) (↑Y : Type u)] →
                        (↑X : Type u) →ₗ[k] (↑Y : Type u)),
                isIntertwining' := ⋯ })
            (ofHom
              {
                toLinearMap :=
                  (↑(IntertwiningMap.id (MonoidHom.comp Y.ρ f)) :
                    [inst_3 :
                        FunLike (IntertwiningMap (MonoidHom.comp Y.ρ f) (MonoidHom.comp Y.ρ f)) (↑Y : Type u)
                          (↑Y : Type u)] →
                      [SemilinearMapClass (IntertwiningMap (MonoidHom.comp Y.ρ f) (MonoidHom.comp Y.ρ f)) (RingHom.id k)
                            (↑Y : Type u) (↑Y : Type u)] →
                        (↑Y : Type u) →ₗ[k] (↑Y : Type u)),
                isIntertwining' := ⋯ })))
        n ≫
      HomologicalComplex.homologyπ (inhomogeneousChains Y) n)
    (HomologicalComplex.cyclesMap
        (chainsMap (MonoidHom.comp (MonoidHom.id H) f)
          (ofHom
            {
              toLinearMap :=
                (↑(Hom.hom φ) :
                  [inst_3 :
                      FunLike (X.ρ.IntertwiningMap (MonoidHom.comp Y.ρ (MonoidHom.id H))) (↑X : Type u) (↑Y : Type u)] →
                    [SemilinearMapClass (X.ρ.IntertwiningMap (MonoidHom.comp Y.ρ (MonoidHom.id H))) (RingHom.id k)
                          (↑X : Type u) (↑Y : Type u)] →
                      (↑X : Type u) →ₗ[k] (↑Y : Type u)),
              isIntertwining' := ⋯ }))
        n ≫
      HomologicalComplex.homologyπ (inhomogeneousChains Y) n)
⊢ Eq (α := Functor.obj (resFunctor f ⋙ functor k G n) X ⟶ Functor.obj (functor k H n) Y)
    (CategoryTheory.Functor.map (resFunctor f ⋙ functor k G n) φ ≫ map f (𝟙 (res f Y)) n)
    (map f (𝟙 (res f X)) n ≫ CategoryTheory.Functor.map (functor k H n) φ)

Tactic:
simp only [← cancel_epi (groupHomology.π _ n), functor_obj, Functor.comp_obj, Functor.comp_map,
      functor_map, HomologicalComplex.homologyπ_naturality_assoc,
      HomologicalComplex.homologyπ_naturality, ← HomologicalComplex.cyclesMap_comp_assoc,
      ← chainsMap_comp, res_obj_ρ, Rep.hom_id, Category.id_comp]

Premises used: CategoryTheory.Functor.comp_obj, HomologicalComplex.cyclesMap_comp_assoc, Rep.hom_id, groupHomology.functor_obj, HomologicalComplex.homologyπ_naturality, HomologicalComplex.homologyπ_naturality_assoc, groupHomology.chainsMap_comp, groupHomology.functor_map, Rep.res_obj_ρ, CategoryTheory.cancel_epi, CategoryTheory.Functor.comp_map, groupHomology.π, CategoryTheory.Category.id_comp