{α : Type u_5} →
  {β : Type u_6} →
    [inst : NonAssocSemiring α] →
      [inst_1 : NonAssocSemiring β] →
        (toFun : α → β) →
          toFun 1 = 1 →
            (∀ (x y : α), toFun (x * y) = toFun x * toFun y) →
              toFun 0 = 0 → (∀ (x y : α), toFun (x + y) = toFun x + toFun y) → α →+* β