Module

Test.StrongCheck.Laws.Data.EuclideanRing

Package
purescript-strongcheck-laws
Repository
garyb/purescript-strongcheck-laws

#checkEuclideanRing Source

checkEuclideanRing :: forall a. EuclideanRing a => Arbitrary a => Eq a => Proxy a -> Effect Unit
  • Integral domain: a /= 0 and b /= 0 implies a * b /= 0
  • Multiplicative Euclidean function: a = (a / b) * b + (a `mod` b) where degree a > 0 and degree a <= degree (a * b)