∀ {R : Type u} [inst : NonAssocSemiring R] (s s_1 : Set R) (e_s : s = s_1) (sm sm_1 : Submonoid R) (e_sm : sm = sm_1)
  (hm : ↑sm = s) (sa sa_1 : AddSubmonoid R) (e_sa : sa = sa_1) (ha : ↑sa = s),
  Subsemiring.mk' s sm hm sa ha = Subsemiring.mk' s_1 sm_1 ⋯ sa_1 ⋯