blob: 990dab58f8dbe10c7ec5d8a0b53dcf2e73dc94cb [file] [edit]
class AddGroup (A : Type u) extends Zero A where
gsmul : Int → A → A
gsmul_zero' : ∀ a, gsmul 0 a = 0
class Ring (R : Type u) extends Zero R, AddGroup R
#print Ring.mk
#check {
zero := 0
gsmul := fun x n => x.toNat * n
gsmul_zero' := fun a => Nat.zero_mul _
: Ring Nat
}