-- Lean 4 proof step from Mathlib.Algebra.Polynomial.Module.Basic (goal)
Goal:
R : Type u_1
M : Type u_2
inst : CommRing R
inst_1 : AddCommGroup M
inst_2 : Module R M
R' : Type u_4
M' : Type u_5
inst_3 : CommRing R'
inst_4 : AddCommGroup M'
inst_5 : Module R' M'
inst_6 : Module R M'
inst_7 : Algebra R R'
inst_8 : IsScalarTower R R' M'
f_1 : M →ₗ[R] M'
r : R
f g : PolynomialModule R M
e₁ :
  Eq (α := M')
    (((eval ((algebraMap R R' : (a : R) → R') r) : PolynomialModule R' M' →ₗ[R'] M') :
          (a : PolynomialModule R' M') → M')
        (((map R' f_1 : LinearMap.{u_1, u_1, u_2, u_5} (RingHom.id R) (PolynomialModule R M) (PolynomialModule R' M')) :
              (a : PolynomialModule R M) → PolynomialModule R' M')
            f :
          PolynomialModule R' M') :
      M')
    ((f_1 : (a : M) → M') ((eval r : (a : PolynomialModule R M) → M) f : M) : M')
e₂ :
  Eq (α := M')
    (((eval ((algebraMap R R' : (a : R) → R') r) : PolynomialModule R' M' →ₗ[R'] M') :
          (a : PolynomialModule R' M') → M')
        (((map R' f_1 : LinearMap.{u_1, u_1, u_2, u_5} (RingHom.id R) (PolynomialModule R M) (PolynomialModule R' M')) :
              (a : PolynomialModule R M) → PolynomialModule R' M')
            g :
          PolynomialModule R' M') :
      M')
    ((f_1 : (a : M) → M') ((eval r : (a : PolynomialModule R M) → M) g : M) : M')
add :
  HAdd.hAdd (α := M') (β := M')
      (((eval ((algebraMap R R' : (a : R) → R') r) : PolynomialModule R' M' →ₗ[R'] M') :
            (a : PolynomialModule R' M') → M')
          (((map R' f_1 :
                  LinearMap.{u_1, u_1, u_2, u_5} (RingHom.id R) (PolynomialModule R M) (PolynomialModule R' M')) :
                (a : PolynomialModule R M) → PolynomialModule R' M')
              f :
            PolynomialModule R' M') :
        M')
      (((eval ((algebraMap R R' : (a : R) → R') r) : PolynomialModule R' M' →ₗ[R'] M') :
            (a : PolynomialModule R' M') → M')
          (((map R' f_1 :
                  LinearMap.{u_1, u_1, u_2, u_5} (RingHom.id R) (PolynomialModule R M) (PolynomialModule R' M')) :
                (a : PolynomialModule R M) → PolynomialModule R' M')
              g :
            PolynomialModule R' M') :
        M') =
    HAdd.hAdd (α := M') (β := M') ((f_1 : (a : M) → M') ((eval r : (a : PolynomialModule R M) → M) f : M) : M')
      ((f_1 : (a : M) → M') ((eval r : (a : PolynomialModule R M) → M) g : M) : M')
⊢ Eq (α := M')
    (((eval ((algebraMap R R' : (a : R) → R') r) : PolynomialModule R' M' →ₗ[R'] M') :
          (a : PolynomialModule R' M') → M')
        (((map R' f_1 : LinearMap.{u_1, u_1, u_2, u_5} (RingHom.id R) (PolynomialModule R M) (PolynomialModule R' M')) :
              (a : PolynomialModule R M) → PolynomialModule R' M')
            (f + g) :
          PolynomialModule R' M') :
      M')
    ((f_1 : (a : M) → M') ((eval r : (a : PolynomialModule R M) → M) (f + g) : M) : M')
have add₁ : HAdd.hAdd (α := M') (β := M') ((f_1 : (a : M) → M') ((eval r : (a : PolynomialModule R M) → M) f : M) : M')
    (((eval ((algebraMap R R' : (a : R) → R') r) : PolynomialModule R' M' →ₗ[R'] M') :
          (a : PolynomialModule R' M') → M')
        (((map R' f_1 : LinearMap.{u_1, u_1, u_2, u_5} (RingHom.id R) (PolynomialModule R M) (PolynomialModule R' M')) :
              (a : PolynomialModule R M) → PolynomialModule R' M')
            g :
          PolynomialModule R' M') :
      M') =
  HAdd.hAdd (α := M') (β := M') ((f_1 : (a : M) → M') ((eval r : (a : PolynomialModule R M) → M) f : M) : M')
    ((f_1 : (a : M) → M') ((eval r : (a : PolynomialModule R M) → M) g : M) : M')
Tactic: simp_rw [map_add, e₁, e₂]