∀ {S : Type u_3} {A : Type u_2} {B : Type u_1} [inst : Monoid S] [inst_1 : NonUnitalNonAssocSemiring A]
  [inst_2 : NonUnitalNonAssocSemiring B] [inst_3 : DistribMulAction S A] [inst_4 : DistribMulAction S B]
  (f : A →ₙₐ[S] B) (x y : A), (↑f).toFun (x * y) = (↑f).toFun x * (↑f).toFun y