rw [←factor_p_of_le_val evr, pow_add, mul_assoc,
  mul_comm (p ^ m), ← mul_assoc,
  ← mul_assoc,
  ←factor_p_of_le_val evr (_ : n ≤ evr.valtn x), mul_assoc, mul_comm _ (p ^ m),
  ←factor_p_of_le_val evr (_ : m ≤ evr.valtn y)]
R : Type u
inst✝¹ : CommRing R
inst✝ : IsDomain R
p : R
evr : ENatValRing p
x y : R
n m : ℕ
hx : ↑n ≤ v evr.valtn x
hy : ↑m ≤ v evr.valtn y
⊢ p ^ (n + m) * (sub_val evr n x * sub_val evr m y) = p ^ (n + m) * sub_val evr (n + m) (x * y)
R : Type u
inst✝¹ : CommRing R
inst✝ : IsDomain R
p : R
evr : ENatValRing p
x y : R
n m : ℕ
hx : ↑n ≤ v evr.valtn x
hy : ↑m ≤ v evr.valtn y
⊢ ↑m ≤ v evr.valtn y

R : Type u
inst✝¹ : CommRing R
inst✝ : IsDomain R
p : R
evr : ENatValRing p
x y : R
n m : ℕ
hx : ↑n ≤ v evr.valtn x
hy : ↑m ≤ v evr.valtn y
⊢ ↑n ≤ v evr.valtn x

R : Type u
inst✝¹ : CommRing R
inst✝ : IsDomain R
p : R
evr : ENatValRing p
x y : R
n m : ℕ
hx : ↑n ≤ v evr.valtn x
hy : ↑m ≤ v evr.valtn y
⊢ ↑(n + m) ≤ v evr.valtn (x * y)