1 The Invariance Principle
We present our first Higher Problem-Solving Strategy. It is extremely useful in
solving certain types of difficult problems, which are easily recognizable.We will
teach it by solving problems which use this strategy. In fact, problem solving
can be learned only by solving problems. But it must be supported by strategies
provided by the trainer.
Our first strategy is the search for invariants, and it is called the Invariance Principle.
The principle is applicable to algorithms (games, transformations). Some
task is repeatedly performed. What stays the same? What remains invariant?
Here is a saying easy to remember:
If there is repetition, look for what does not change!
In algorithms there is a starting state S and a sequence of legal steps (moves,
transformations). One looks for answers to the following questions:
1. Can a given end state be reached?
2. Find all reachable end states.
3. Is there convergence to an end state?
4. Find all periods with or without tails, if any.
Since the Invariance Principle is a heuristic principle, it is best learned by experience,
which we will gain by solving the key examples E1 to E10.