One of the defining features of a EuclideanRing
is that you can divide any
pair of elements, as long as the divisor is nonzero. Specifically, if you have
a euclidean ring R
, with x
, y
in R
, and y /= zero
, we need to have x = (x / y) * y + (x `mod` y)
.
We do have a Ring b => Ring (a -> b)
instance, where multiplication is
defined as follows: