More IntroductionFirst Things First
OK, so that was pretty trivial. Now, to explain a bit more of what the problem solver is about, we’ll change the example. Look at the solver input forms and edit the text in the “Constraints” box. We want to see what will happen if the stuff in there does not uniquely determine the answer. So change the “equals” sign to a “greater than”:
2 + x > 4.
In order to make the new condition true, x can be any number greater than 2. What does the solver say about that?
Model 1: x = 3
Model 2: x = 4
Model 3: x = 5
Well, it agrees: it starts finding values of x greater than 2. Obviously, this series of models could go on for a long time! In order to keep things within bounds, the solver has been made to stop when it reaches a limit of three models: this is fine for puzzle solving purposes, where typically we only expect a single solution, and are never interested in more than two or three.
That prompts another question: what will the solver do if the conditions are so strong that there is no possible value for x? We can try that, too. Edit the “Constraints” box again and change the condition to the impossible requirement (or pair of requirements):
2 + x > 4.
10 + x < 12.
Click on the SOLVE button, and what happens?
No solution found.
You have to admit it is getting full marks so far!
We have seen that by running the solver, we can quickly find out whether the problem as we have represented it has solutions or not, and if it does, whether there is only one solution or more than one. This is the key point of using it for the exercises with logical puzzles: if we get the puzzle representation right (and if the puzzle setters have done their job) there should be exactly one solution. If we have imposed conditions that are too strong, there will be no solutions, and conversely if we have left out some conditions or formulated them too weakly, there will be several.
Now move onto the next part of the guide.
Solver
Auto Parser Results
No errors found.