Some notes from the book How to Think Like a Mathematician by Kevin Houston. I found this chapter in the book interesting because I was able to
relate to the process when solving competitive programming problems.
Definitions
- Exercise - something that can be solved by a routine method
- Problem - something that will require more thought; will require the application of routine methods learned in exercises
Sample Problems
- How many zeroes are at the end of 100! (100 factorial)
- Suppose that X and Y are two infinite sets. Find a formula that relates |X|, |Y|, | X intersection Y| and |X union Y|.
- Show that the equation x^2 + y^2 = z^n has positive integer solutions for every n = 1,2 ,3, ...
Polya's four-step plan
Understanding the problem
- Understand all the words and symbols in the problem - Know the meaning of the symbols as well as the important definitions and theorems
- Guess - use your intuition - Make an educated guess
- What do you know about the hypothesis and conclusion? - Write down what you know about the hypothesis and conclusion
- Work backwards and forwards - You can start with the conclusion and think what it would imply.
- Work with initial and special cases - Some problems have an index (n in P3). Solve for the initial cases to get a 'feel'.
- Work with a concrete case - For abstract problems, look at a concrete case. Create instantiations of the variables. (P2)
- Draw a picture - Venn diagrams (P2)
- Think about a similar problem - Recall problems you've solved before that may be related to the problem you are solving.
- Find an equivalent problem - Reformulate a problem, say to show that two functions are equal, they can be represented as a new function with difference of zero.
- Solve an easier problem - In P1, solve 10! first to get a feel.
- Rewrite in symbols or word -
- Break the problem into pieces -
- Find the right level - there are many ways to approach a problem so select the right one
- Give things names - "Let X be ..."
- Systematically choose a method - A proving problem can be solved solve using different approaches.
- Check each step - don't use intuition
- Check the answer - Test.
- Find another solution
- Reflect - Think about what solved the problem.