∀ {R : Type u_2} {S : Type u_1} [inst : NonUnitalNonAssocSemiring R] [inst_1 : NonUnitalNonAssocSemiring S]
  (f : R →ₙ+* S) (hf : ∀ (x y : R), Commute (f x) (f y)) (x y : R),
  (f.toOpposite hf).toFun (x * y) = (f.toOpposite hf).toFun x * (f.toOpposite hf).toFun y