Data.Semiring
class
Semiring
a
data
Add
a
data
Mul
a