constructor Ring.mk.{u} : {R : Type u} → [toZero : Zero R] → (gsmul : Int → R → R) → (∀ (a : R), gsmul 0 a = 0) → Ring R Ring.mk (fun x n => x.toNat * n) ⋯ : Ring Nat