Drexel dragonThe Math ForumDonate to the Math Forum

Ask Dr. Math - Questions and Answers from our Archives
Associated Topics || Dr. Math Home || Search Dr. Math

Factoring a Multivariate Polynomial: Strategies Beyond Grouping

Date: 11/11/2008 at 09:33:32
From: Greg
Subject: Factoring a Multivariate Polynomial

Hi, Dr. Math.

Could you help me factor this polynomial?

  x^3 + y^3 + z^3 - 3xyz

Also, could you tell me the general techniques for factoring 
multivariate polynomials?  (I'm looking for a technique other than 
"grouping," which doesn't work here.)

And how can I tell when it's "fully factored?" Would I have a product 
of binomials?

I simply have no idea how to factor multivariate polynomials like 
this.  I tried a few things and they didn't work.

The only way I know how to factor multivariate polynomials is to put 
the terms in "groups" and get a common factor out of each 
"group."  (This is similar to factoring quadratic equations after 
splitting the middle term.)  I tried that and I could not get any 
common factors.  Also, I looked at the expression as a cubic equation 
and tried to find possible roots of x using the rational root 
theorem; it got really confusing and I couldn't find the roots.

I don't know what else to try.

Date: 11/15/2008 at 19:33:16
From: Doctor Jerry
Subject: Re: Factoring a Multivariate Polynomial

Hello Greg,

Thanks for writing to Dr. Math.

I noticed your question but didn't reply because I felt that, besides 
the factorization, I had nothing useful to say.

The factorization is

  x^3 + y^3 + z^3 - 3*x*y*z
  = (x + y + z) (x^2 - x y + y^2 - x z - y z + z^2)

My thoughts were not clear at all.  I noticed that the given 
polynomial was symmetric.  One expression that came to mind was x + y 
+ z, and I tried that.

I have no background in factoring polynomials in several unknowns.

If you have questions about this, please write back and show me what 
you have been able to do, and I will try to offer further suggestions.

- Doctor Jerry, The Math Forum

Date: 11/15/2008 at 20:09:39
From: Greg
Subject: Thank you (Factoring a Multivariate Polynomial)

Hello! Thank you for replying. 

I checked my book and the answer is

  (1/2)(x + y + z)[(x - y)^2 + (y - z)^2 + (x - z)^2]

I don't understand what you wrote. What is a symmetric polynomial, 
and why would that imply a factor of x + y + z?

Date: 11/15/2008 at 22:25:39
From: Doctor Jerry
Subject: Re: Thank you (Factoring a Multivariate Polynomial)

Hello Greg,

Thanks for writing to Dr. Math.

A symmetric polynomial is one for which interchanging x and y, or x 
and z, or y and z does not change the polynomial.  One might guess 
that the factors will also be symmetric.  That's all I meant.

If you have questions about this, please write back and show me what 
you have been able to do, and I will try to offer further suggestions.

- Doctor Jerry, The Math Forum

Date: 11/15/2008 at 22:39:41
From: Doctor Pete
Subject: Re: Thank you (Factoring a Multivariate Polynomial)

Hi Greg,

This is another Math Doctor responding to your question.

First, I should point out that the factorization Doctor Jerry 
provided is equivalent to the one in your book, although my 
preference is for Doctor Jerry's form.  The reason is that 
representing the second-degree factor as the sum of squares is not 
necessary, and confers no additional information about the factors 
themselves -- it is not a "more factored" expression.  Also, the 
writing of the second-degree factor in such a way then puts a 
constant factor of 1/2 out in the front, which again is unnecessary.  
However, they are both legitimate ways of rendering a factorization 
of the original polynomial.

Second, a polynomial is symmetric if it is invariant under any 
permutation of its variables.  For example, in your case, we have

  F[x,y,z] = x^3 + y^3 + z^3 - 3xyz.

There are six distinct permutations of the variables x, y, z:


If we applied the function to each of these permutations, then we 
would still have the same polynomial; i.e.,

  F[y,z,x] = F[x,y,z] = F[z,x,y] = ....

This is what we mean by "invariant under any permutation."  Other 
examples of symmetric polynomials include

  x + y,
  x^2 y + y^2 z + z^2 x, and
  xyz + yzw + zwx + wxy,

where the number of variables is 2, 3, and 4, respectively.  Doctor 
Jerry mentioned symmetry because -- as a general heuristic approach 
to factorization -- if a symmetric polynomial can be factored, its 
factors are, themselves, likely to be symmetric.  For example,

  x^2 + 2xy + y^2 = (x + y)^2

is symmetric, and its factors are symmetric.  Also,

  x^3 + y^3 = (x + y)(x^2 - xy + y^2)

is a symmetric polynomial with symmetric factors.

When we look at the structure of F[x,y,z] = x^3 + y^3 + z^3 - 3xyz, 
we might try to factor it by comparing it to other expressions that 
have easy factorizations that we already know.  For example,

  (x + y + z)^3 = x^3 + y^3 + z^3 + 3(x^2 y + y^2 z + z^2 x)
                  + 3(x y^2 + y z^2 + z x^2)
                  + 6xyz.

This implies

       F[x,y,z] = (x + y + z)^3 - 3(x^2 y + y^2 z + z^2 x)
                  - 3(x y ^2 + y z^2 + z x^2)
                  - 9xyz.

We can then try to pull out a factor of x + y + z from the remaining 
terms, because the first term has such a factor.  We observe that

  (x + y + z)(xy + yz + zx) = x^2 y + y^2 z + z^2 x
                              + x y^2 + y z^2 + z x^2
                              + 3xyz,

so we now have

       F[x,y,z] = (x + y + z)^3 - 3(x + y + z)(xy + yz + zx)
                = (x + y + z)[(x + y + z)^2 - 3(xy + yz + zx)].

At this point, we have successfully pulled out one factor.  The 
remaining term,

  (x + y + z)^2 - 3(xy + yz + zx),

simplifies to

  x^2 + y^2 + z^2 - (xy + yz + zx),

which gives the result that Doctor Jerry provided.

The lesson is that factorization is something of a guessing game. 
There do exist algorithms that computers use to factor polynomials. 
These are generally difficult for humans to apply to arbitrary cases, 
however; so you have to try different approaches to see if they solve 
the puzzle -- and there's no guarantee that any of them will work.

- Doctor Pete, The Math Forum

Date: 11/16/2008 at 09:39:03
From: Greg
Subject: Thank you (Factoring a Multivariate Polynomial)

Thank you everyone for the help!

Date: 11/16/2008 at 18:36:41
From: Doctor Vogler
Subject: Re: Thank you (Factoring a Multivariate Polynomial)

Hi Greg,

This is a third Math Doctor.  I was watching your question because 
I'm interested in the same subject myself, although my knowledge of 
the matter is less than I'd like.

Unlike polynomials in a single variable, multivariate polynomials do 
not always factor into linear terms, even over the complex numbers. 
In fact, *most* multivariate polynomials are irreducible.  So yours 
was one of the ones that does not factor.

Your polynomial is also special in two other ways.  Doctors Jerry and 
Pete mentioned that it is symmetric, which is true.  Not all 
symmetric polynomials factor into symmetric factors.  For example,

  (x + y)(x + z)(y + z)

is symmetric in three variables, but none of the factors is.  
However, a symmetric polynomial that factors into terms of different 
degrees will have symmetric factors.  The reason is that permuting 
the variables doesn't have to leave all of the factors unchanged, but 
it does have to leave the collection of factors unchanged, which 
means that the most it can do is rearrange the factors.  (Look at how 
swapping x and y, for example, will rearrange the factors in my 
example polynomial.)

Your polynomial is also homogeneous, which means that every term in 
the polynomial has the same degree.  For example,

  x^3 + 2xy^2 + y^3

is homogeneous of degree 3.  A homogeneous polynomial always factors 
into homogeneous factors (of smaller degree when the polynomial is 
not irreducible).

But homogeneous polynomials are really polynomials in one fewer 
variable than you see.  For example, a homogeneous polynomial f
(x,y,z) of degree d satisfies the equation

  f(rx, ry, rz) = r^d * f(x, y, z),

which means that

  f(x, y, z) = z^d * f(x/z, y/z, 1),

so that the equation

  f(x, y, z) = 0

is the same as

  f(x/z, y/z, 1) = 0.

So we can consider this to be a polynomial in the two variables u = x/
z and v = y/z.

Anyway, back to the point of factoring multivariate polynomials: we 
are left with the question of how do you actually do it.  Well, there 
are a variety of ad-hoc techniques like those Doctors Jerry and Pete 
have described.  Those kinds of things usually work well when you're 
doing this by hand and you really expect to get a factorization.  
They are less useful for determining that your polynomial is 
irreducible. There are other techniques that can determine that your 
polynomial is irreducible.  And there are still others that can do 
either one.  But some of them require a lot of work.  I am certain 
that there are sophisticated algorithms which will work efficiently 
even for rather large polynomials, although I am unfortunately not 
familiar with such techniques.  Let me describe one which -- though 
quite messy, involving lots of variables and equations -- is sort of 
like the last method described (for one-variable polynomials) at


If a degree-3 polynomial factors, then it must factor into a product 
of a degree-1 and a degree-2 polynomial.  (There are more cases for 
higher degrees, but for degrees 2 and 3, there is only one 
possibility.)  So you could argue that if your polynomial is 
irreducible, then it must equal

  (rx + sy + tz)(ax^2 + bxy + cy^2 + dxz + eyz + fz^2)

for some numbers (r, s, t, a, b, c, d, e, f).  In fact, since both of 
these are homogeneous, you can assume that two of these are 1.

For example, you can assume that r = 1 and a = 1 if your polynomial 
has 1 for the coefficient of x^3 (otherwise, you just divide your 
polynomial by the coefficient of x^3).  Then you multiply out the 
above product, gather like terms, and for each one you get an 
equation that says that its coefficient must be equal to the 
coefficient in your polynomial.

Continuing my example above, if you multiply through, you'll get sc 
for the coefficient of y^3; and since your polynomial has y^3 with 
coefficient 1, that means that sc = 1.  Similarly, you'll get te + sf 
for the coefficient of yz^2; and since your polynomial has no yz^2 
term, that means that te + sf = 0.  It turns out that since you have 
more than one variable, this will give you more equations than 
variables, which makes things easier to solve.

But that's still a lot of equations to work out.

If you have any questions about this or need more help, please write 
back and show me what you have been able to do, and I will try to 
offer further suggestions.

- Doctor Vogler, The Math Forum

Date: 11/17/2008 at 16:02:07
From: Greg
Subject: Thank you (Factoring a Multivariate Polynomial)

Thank you!
Associated Topics:
High School Polynomials

Search the Dr. Math Library:

Find items containing (put spaces between keywords):
Click only once for faster results:

[ Choose "whole words" when searching for a word like age.]

all keywords, in any order at least one, that exact phrase
parts of words whole words

Submit your own question to Dr. Math

[Privacy Policy] [Terms of Use]

Math Forum Home || Math Library || Quick Reference || Math Forum Search

Ask Dr. MathTM
© 1994-2013 The Math Forum