Primitive part and content

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Script error: No such module "Unsubst".

In algebra, the content of a nonzero polynomial with integer coefficients (or, more generally, with coefficients in a unique factorization domain) is the greatest common divisor of its coefficients. The primitive part of such a polynomial is the quotient of the polynomial by its content. Thus a polynomial is the product of its primitive part and its content, and this factorization is unique up to the multiplication of the content by a unit of the ring of the coefficients (and the multiplication of the primitive part by the inverse of the unit).

A polynomial is primitive if its content equals 1. Thus the primitive part of a polynomial is a primitive polynomial.

Gauss's lemma for polynomials states that the product of primitive polynomials (with coefficients in the same unique factorization domain) also is primitive. This implies that the content and the primitive part of the product of two polynomials are, respectively, the product of the contents and the product of the primitive parts.

As the computation of greatest common divisors is generally much easier than polynomial factorization, the first step of a polynomial factorization algorithm is generally the computation of its primitive part–content factorization (see Template:Slink). Then the factorization problem is reduced to factorizing separately the content and the primitive part.

Content and primitive part may be generalized to polynomials over the rational numbers, and, more generally, to polynomials over the field of fractions of a unique factorization domain. This makes essentially equivalent the problems of computing greatest common divisors and factorization of polynomials over the integers and of polynomials over the rational numbers.

Over the integers

For a polynomial with integer coefficients, the content may be either the greatest common divisor of the coefficients or its additive inverse. The choice is arbitrary, and may depend on a further convention, which is commonly that the leading coefficient of the primitive part be positive.

For example, the content of 12x3+30x20 may be either 2 or −2, since 2 is the greatest common divisor of −12, 30, and −20. If one chooses 2 as the content, the primitive part of this polynomial is

6x3+15x10=12x3+30x202,

and thus the primitive-part-content factorization is

12x3+30x20=2(6x3+15x10).

For aesthetic reasons, one often prefers choosing a negative content, here −2, giving the primitive-part-content factorization

12x3+30x20=2(6x315x+10).

Properties

In the remainder of this article, we consider polynomials over a unique factorization domain RScript error: No such module "Check for unknown parameters"., which can typically be the ring of integers, or a polynomial ring over a field. In RScript error: No such module "Check for unknown parameters"., greatest common divisors are well defined, and are unique up to multiplication by a unit of RScript error: No such module "Check for unknown parameters"..

The content c(P)Script error: No such module "Check for unknown parameters". of a polynomial PScript error: No such module "Check for unknown parameters". with coefficients in RScript error: No such module "Check for unknown parameters". is the greatest common divisor of its coefficients, and, as such, is defined up to multiplication by a unit. The primitive part pp(P)Script error: No such module "Check for unknown parameters". of PScript error: No such module "Check for unknown parameters". is the quotient P/c(P)Script error: No such module "Check for unknown parameters". of PScript error: No such module "Check for unknown parameters". by its content; it is a polynomial with coefficients in RScript error: No such module "Check for unknown parameters"., which is unique up to multiplication by a unit. If the content is changed by multiplication by a unit uScript error: No such module "Check for unknown parameters"., then the primitive part must be changed by dividing it by the same unit, in order to keep the equality P=c(P)pp(P), which is called the primitive-part-content factorization of PScript error: No such module "Check for unknown parameters"..

The main properties of the content and the primitive part are results of Gauss's lemma, which asserts that the product of two primitive polynomials is primitive, where a polynomial is primitive if 1 is the greatest common divisor of its coefficients. This implies:

  • The content of a product of polynomials is the product of their contents: c(P1P2)=c(P1)c(P2).
  • The primitive part of a product of polynomials is the product of their primitive parts: pp(P1P2)=pp(P1)pp(P2).
  • The content of a greatest common divisor of polynomials is the greatest common divisor (in RScript error: No such module "Check for unknown parameters".) of their contents: c(gcd(P1,P2))=gcd(c(P1),c(P2)).
  • The primitive part of a greatest common divisor of polynomials is the greatest common divisor (in RScript error: No such module "Check for unknown parameters".) of their primitive parts: pp(gcd(P1,P2))=gcd(pp(P1),pp(P2)).
  • The complete factorization of a polynomial over RScript error: No such module "Check for unknown parameters". is the product of the factorization (in RScript error: No such module "Check for unknown parameters".) of the content and of the factorization (in the polynomial ring) of the primitive part.

The last property implies that the computation of the primitive-part-content factorization of a polynomial reduces the computation of its complete factorization to the separate factorization of the content and the primitive part. This is generally interesting, because the computation of the prime-part-content factorization involves only greatest common divisor computation in RScript error: No such module "Check for unknown parameters"., which is usually much easier than factorization.

Over the rationals

The primitive-part-content factorization may be extended to polynomials with rational coefficients as follows.

Given a polynomial PScript error: No such module "Check for unknown parameters". with rational coefficients, by rewriting its coefficients with the same common denominator dScript error: No such module "Check for unknown parameters"., one may rewrite PScript error: No such module "Check for unknown parameters". as

P=Qd,

where QScript error: No such module "Check for unknown parameters". is a polynomial with integer coefficients. The content of PScript error: No such module "Check for unknown parameters". is the quotient by dScript error: No such module "Check for unknown parameters". of the content of QScript error: No such module "Check for unknown parameters"., that is

c(P)=c(Q)d,

and the primitive part of PScript error: No such module "Check for unknown parameters". is the primitive part of QScript error: No such module "Check for unknown parameters".:

pp(P)=pp(Q).

It is easy to show that this definition does not depend on the choice of the common denominator, and that the primitive-part-content factorization remains valid:

P=c(P)pp(P).

This shows that every polynomial over the rationals is associated with a unique primitive polynomial over the integers, and that the Euclidean algorithm allows the computation of this primitive polynomial.

A consequence is that factoring polynomials over the rationals is equivalent to factoring primitive polynomials over the integers. As polynomials with coefficients in a field are more common than polynomials with integer coefficients, it may seem that this equivalence may be used for factoring polynomials with integer coefficients. In fact, the truth is exactly the opposite: every known efficient algorithm for factoring polynomials with rational coefficients uses this equivalence for reducing the problem modulo some prime number pScript error: No such module "Check for unknown parameters". (see Factorization of polynomials).

This equivalence is also used for computing greatest common divisors of polynomials, although the Euclidean algorithm is defined for polynomials with rational coefficients. In fact, in this case, the Euclidean algorithm requires one to compute the reduced form of many fractions, and this makes the Euclidean algorithm less efficient than algorithms which work only with polynomials over the integers (see Polynomial greatest common divisor).

Over a field of fractions

The results of the preceding section remain valid if the ring of integers and the field of rationals are respectively replaced by any unique factorization domain RScript error: No such module "Check for unknown parameters". and its field of fractions KScript error: No such module "Check for unknown parameters"..

This is typically used for factoring multivariate polynomials, and for proving that a polynomial ring over a unique factorization domain is also a unique factorization domain.

Unique factorization property of polynomial rings

A polynomial ring over a field is a unique factorization domain. The same is true for a polynomial ring over a unique factorization domain. To prove this, it suffices to consider the univariate case, as the general case may be deduced by induction on the number of indeterminates.

The unique factorization property is a direct consequence of Euclid's lemma: If an irreducible element divides a product, then it divides one of the factors. For univariate polynomials over a field, this results from Bézout's identity, which itself results from the Euclidean algorithm.

So, let RScript error: No such module "Check for unknown parameters". be a unique factorization domain, which is not a field, and R[X]Script error: No such module "Check for unknown parameters". the univariate polynomial ring over RScript error: No such module "Check for unknown parameters".. An irreducible element rScript error: No such module "Check for unknown parameters". in R[X]Script error: No such module "Check for unknown parameters". is either an irreducible element in RScript error: No such module "Check for unknown parameters". or an irreducible primitive polynomial.

If rScript error: No such module "Check for unknown parameters". is in RScript error: No such module "Check for unknown parameters". and divides a product P1P2 of two polynomials, then it divides the content c(P1P2)=c(P1)c(P2). Thus, by Euclid's lemma in RScript error: No such module "Check for unknown parameters"., it divides one of the contents, and therefore one of the polynomials.

If rScript error: No such module "Check for unknown parameters". is not RScript error: No such module "Check for unknown parameters"., it is a primitive polynomial (because it is irreducible). Then Euclid's lemma in R[X]Script error: No such module "Check for unknown parameters". results immediately from Euclid's lemma in K[X]Script error: No such module "Check for unknown parameters"., where KScript error: No such module "Check for unknown parameters". is the field of fractions of RScript error: No such module "Check for unknown parameters"..

Factorization of multivariate polynomials

Script error: No such module "Labelled list hatnote".

For factoring a multivariate polynomial over a field or over the integers, one may consider it as a univariate polynomial with coefficients in a polynomial ring with one less indeterminate. Then the factorization is reduced to factorizing separately the primitive part and the content. As the content has one less indeterminate, it may be factorized by applying the method recursively. For factorizing the primitive part, the standard method consists of substituting integers to the indeterminates of the coefficients in a way that does not change the degree in the remaining variable, factorizing the resulting univariate polynomial, and lifting the result to a factorization of the primitive part.

See also

References

  • Script error: No such module "citation/CS1".
  • Page 181 of Template:Lang Algebra
  • Script error: No such module "citation/CS1".