How to solve it

Notes on George Polya’s How to Solve It.


There are 4 steps to solving a problem:

  1. Understand the problem

  2. Devise a plan

  3. Carry out the plan

  4. Look back at the solution

Understanding the problem

Start with the problem statement and visualize the problem as a whole without worrying too much about the details. Then, work for a better understanding.

Take the problem statement and isolate the 3 principal parts:

  • What is the unknown?

  • What is the data? What is given?

  • What is the condition? The condition is the part of the problem that links the data to the unknown.

We have to come back to these questions again and again from different angles.

Separate the condition itself into parts and go through each one. Relate each one to the others and to the whole.

  • State the problem in your own words

  • Draw a figure and point out the data and the unknowns.

  • Introduce suitable notation.

Test your understanding:

  • Keep only a part of the condition, drop the other part. Is the unknown determined from that? How can it vary?

  • Can you use other data to determine the unknown? Could you change the unknown, the data or both and satisfy the condition?

  • Is it possible to satisfy the condition?

  • Is the data sufficient to determine the unknown?

  • Is the condition redundant? i.e. does it contain superfluous parts?

  • Is the condition contradicatory? i.e. do parts contradict each other

Devising a plan

In order to solve a problem, we draw on our mathematical knowledge and formerly solved problems.

Do you know a related problem with a similar unknown? If so, can you use its result or its method? Can you use introduce an auxiliary element (new unknown, new lines, etc.) in order to make its use possible?

We can find related problems by asking:

  • Is there a simpler analogous problem?

  • Is there a more general version of the problem?

  • Is there a special case of the problem that you could solve?

  • Is there a subproblem that you could solve?

We can also change the problem to generate related problems:

  • Keep only a part of the condition. How far is the unknown then determined? How much can it vary?

  • Is there other data where you could derive the unknown?

  • Can you derive something useful from the data?

  • Could you change the unknown, the data or both so that the new unknown and new data are nearer to each other?

In varying the problem, you may stray from the original. Come back to the original problem. Ask:

  • Did you use all the data?

  • Did you use the whole condition?

  • Have you taken into account all essential notions?

A list of some techniques:

  • Working backwards: Start with the goal and work backwards to something you know.

  • Reductio ad absurdum: Show that the assumption imples a contradiction.

  • Indirect proof: Show that the opposite assumption is wrong.

  • Induction: Can you solve your problem by deriving a generalization from some examples?

  • Guess and check

  • Test by dimension

  • Look for a pattern

Carrying out the plan

Patiently carry out the plan and check each step. You check each step by intuition and/or by formal methods.

Looking back

  • Can you check the result?

  • Can you check the argument?

  • Can you derive the result differently? Can you see it at a glance?

  • Can you use the result or the method for some other problem?

  • Did you use all the data?

  • Plug in extreme values

  • Pick out the “touchy points” of the argument and re-examine them.