/-- The homotopy equivalence of complexes of `k`-modules between the standard resolution of `k` as
a trivial `G`-representation, and the complex which is `k` at 0 and 0 everywhere else, acts as
`∑ nᵢgᵢ ↦ ∑ nᵢ : k[G¹] → k` at 0. -/
theorem forget₂ToModuleCatHomotopyEquiv_f_0_eq :
    (forget₂ToModuleCatHomotopyEquiv k G).1.f 0 = (forget₂ (Rep k G) _).map (ε k G) := by
  show (HomotopyEquiv.hom _ ≫ HomotopyEquiv.hom _ ≫ HomotopyEquiv.hom _).f 0 = _
  simp only [HomologicalComplex.comp_f]
  dsimp
  convert Category.id_comp (X := (forget₂ToModuleCat k G).X 0) _
  · dsimp only [HomotopyEquiv.ofIso, compForgetAugmentedIso, map_alternatingFaceMapComplex]
    simp only [Iso.symm_hom, eqToIso.inv, HomologicalComplex.eqToHom_f, eqToHom_refl]
  trans (Finsupp.total _ _ _ fun _ => (1 : k)).comp ((ModuleCat.free k).map (terminal.from _))
  · dsimp
    erw [Finsupp.lmapDomain_total (α := Fin 1 → G) (R := k) (α' := ⊤_ Type u)
        (v := fun _ => (1 : k)) (v' := fun _ => (1 : k))
        (terminal.from
          ((classifyingSpaceUniversalCover G).obj (Opposite.op (SimplexCategory.mk 0))).V)
        LinearMap.id fun i => rfl,
      LinearMap.id_comp]
    rfl
  · congr
    · ext x
      dsimp (config := { unfoldPartialApp := true }) [HomotopyEquiv.ofIso,
        Finsupp.LinearEquiv.finsuppUnique]
      

Proof state:
case e_f.h.h
k G : Type u
inst✝¹ : CommRing k
n : ℕ
inst✝ : Monoid G
x : ⊤_ Type u
⊢ ((Finsupp.total (⊤_ Type u) k k fun x => 1) fun₀ | x => 1) =
    (HomologicalComplex.Hom.f
        ((ChainComplex.single₀ (ModuleCat k)).map
          {
            toAddHom :=
              { toFun := (fun f => f default) ∘ ⇑Finsupp.equivFunOnFinite,
                map_add' :=
                  (_ :
                    ∀ (x x_1 : (⊤_ Type u) →₀ k),
                      Equiv.toFun (Finsupp.equivFunOnFinite.trans (Equiv.funUnique (⊤_ Type u) k)) (x + x_1) =
                        Equiv.toFun (Finsupp.equivFunOnFinite.trans (Equiv.funUnique (⊤_ Type u) k)) (x + x_1)) },
            map_smul' :=
              (_ :
                ∀ (x : k) (x_1 : (⊤_ Type u) →₀ k),
                  AddHom.toFun
                      { toFun := (Finsupp.equivFunOnFinite.trans (Equiv.funUnique (⊤_ Type u) k)).toFun,
                        map_add' :=
                          (_ :
                            ∀ (x x_2 : (⊤_ Type u) →₀ k),
                              Equiv.toFun (Finsupp.equivFunOnFinite.trans (Equiv.funUnique (⊤_ Type u) k)) (x + x_2) =
                                Equiv.toFun (Finsupp.equivFunOnFinite.trans (Equiv.funUnique (⊤_ Type u) k))
                                  (x + x_2)) }
                      (x • x_1) =
                    AddHom.toFun
                      { toFun := (Finsupp.equivFunOnFinite.trans (Equiv.funUnique (⊤_ Type u) k)).toFun,
                        map_add' :=
                          (_ :
                            ∀ (x x_2 : (⊤_ Type u) →₀ k),
                              Equiv.toFun (Finsupp.equivFunOnFinite.trans (Equiv.funUnique (⊤_ Type u) k)) (x + x_2) =
                                Equiv.toFun (Finsupp.equivFunOnFinite.trans (Equiv.funUnique (⊤_ Type u) k))
                                  (x + x_2)) }
                      (x • x_1)) })
        0)
      fun₀ | x => 1

Next tactic:
rw [Finsupp.total_single, one_smul, @Unique.eq_default _ Types.terminalIso.toEquiv.unique x,
        ChainComplex.single₀_map_f_zero, LinearMap.coe_mk, AddHom.coe_mk, Function.comp_apply,
        Finsupp.equivFunOnFinite_apply, Finsupp.single_eq_same]