semiring-num library with a semiring class and some useful semirings https://hackage.haskell.org/package/semiring-num