In abstract algebra, a Euclidean domain (also called a Euclidean ring) is a type of ring in which the Euclidean algorithm can be used.

More precisely, a Euclidean domain is an integral domain D for which can be defined a function v mapping nonzero elements of D to non-negative integers and possessing the following properties:

  • For all nonzero a and b in D, v(ab) ≥ v(a).
  • If a and b are in D and b is nonzero, then there are q and r in D such that a = bq + r and either r = 0 or v(r) < v(b).

The function v is variously called a gauge, valuation or norm. Note that some authors define the function in an inequivalent way which nonetheless still gives the same class of rings.

Examples of Euclidean domains include:

  • Z, the ring of integers. Define v(n) = |n|, the absolute value of n.
  • Z[i], the ring of Gaussian integers. Define v(z) = |z|2.
  • K[X], the ring of polynomials over a field K. For each nonzero polynomial f. Define v(f) to be the degree of f.
  • K[[X]], the ring of formal power series over the field K. For each nonzero power series f, define v(f) as the degree of the smallest power of X occurring in f.
  • Any field. Define v(x) = 1 for all nonzero x.

Every Euclidean domain is a principal ideal domain. In fact, if I is a nonzero ideal of a Euclidean domain D and a nonzero a in I is chosen to minimize g(a), then I = aD.

The name comes from the fact that the extended Euclidean algorithm can be carried out in any Euclidean domain.