Inherited from CommutativeRing[A]
Inherited from CommutativeRng[A]
Inherited from CommutativeRig[A]
Inherited from MultiplicativeCommutativeMonoid[A]
Inherited from CommutativeSemiring[A]
Inherited from MultiplicativeCommutativeSemigroup[A]
Inherited from algebra.ring.Ring[A]
Inherited from algebra.ring.Rng[A]
Inherited from AdditiveCommutativeGroup[A]
Inherited from algebra.ring.AdditiveGroup[A]
Inherited from algebra.ring.Rig[A]
Inherited from algebra.ring.MultiplicativeMonoid[A]
Inherited from algebra.ring.Semiring[A]
Inherited from algebra.ring.MultiplicativeSemigroup[A]
Inherited from AdditiveCommutativeMonoid[A]
Inherited from AdditiveCommutativeSemigroup[A]
Inherited from algebra.ring.AdditiveMonoid[A]
Inherited from algebra.ring.AdditiveSemigroup[A]
Inherited from Serializable
Inherited from Serializable
Inherited from Any
EuclideanRing implements a Euclidean domain.
The formal definition says that every euclidean domain A has (at least one) euclidean function f: A -> N (the natural numbers) where:
(for every x and non-zero y) x = yq + r, and r = 0 or f(r) < f(y).
This generalizes the Euclidean division of integers, where f represents a measure of length (or absolute value), and the previous equation represents finding the quotient and remainder of x and y. So:
quot(x, y) = q mod(x, y) = r