∀ {ι : Type u_7} [inst : Fintype ι] [inst_1 : DecidableEq ι] (M : ι → Type u_8) [inst_2 : (i : ι) → CommMonoid (M i)]
  (M' : Type u_9) [inst_3 : CommMonoid M'],
  Pi.monoidHomMulEquiv M M' =
    { toFun := fun φ i => φ.comp (MonoidHom.mulSingle M i), invFun := fun φ => ∏ i, (φ i).comp (Pi.evalMonoidHom M i),
      left_inv := ⋯, right_inv := ⋯, map_mul' := ⋯ }