text: of Euclid's algorithm by Let  be the number of changes of signs in the sequence, when evaluated at a point . Sturm's theorem asserts that  is the number of real roots of the polynomial in the interval . Thus the Sturm sequence allows computing the number of real roots in a given interval. By subdividing the interval until every subinterval contains at most one root, this provides an algorithm that  locates the real roots in intervals of arbitrary small length.
  GCD over a ring and its field of fractions
  In this section, we consider polynomials over a unique factorization domain R, typically the ring of the integers, and over its field of fractions F, typically the field of the rational numbers, and we denote R[X] and F[X] the rings of polynomials in a set of variables over these rings.
  Primitive part–content factorization
  The content of a polynomial , denoted "",  is the GCD of its coefficients. A polynomial  may be written
  where  and : it suffices to take for  a multiple of all denominators of the coefficients of  (for example their product) and . The content of  is defined as:
  In both cases, the content is defined up to the multiplication by a unit of .
  The primitive part of a polynomial in  or  is defined by
  In both cases, it is a polynomial in  that is primitive, which means that 1 is a GCD of its coefficients.
  Thus every polynomial in  or  may be factorized as