links
I started getting interested when I noticed that some situations, like this one, are unsolvable.
Notes:
- in each example, assume undrawn neighboring squares are numbers (not affecting the count)
- a - in an example means 'don't care' - in other words, a numbered square whose value doesn't affect the squares being shown
Heuristics:
- (Easy) if a numbered square's neighboring exposed mine squares number the same as the number, expose all unexposed neighbors. In this example we can expose a, b, c and d.
The next sections require you to generate sets of 'must be true'
(MBT) and 'must be false'
(MBF statements for each numbered square, e.g....
| @ |
MBT |
MBF |
| 1 |
{A or B} |
{A and B} |
| 2 |
{A and B} or {A and C} or {B and C} |
{A and B and C} |
| 2' |
{B and C} or {B and D} or {C and D} |
{B and C and D} |
| 3 |
{C and D} or {C and E} or {D and E} |
{ C and D and E} |
Note, at 2' we really have {B and C and `D}, {B and D and `C}, {C and D and `B} where ` means 'not'
2. Walk through the MBT statements for the entire puzzle. If two 'or' MBT's differ by a letter, then you can eliminate that letter. This is like finding a least common denominator. For example here we can eliminate 'c' (but we can't know whether it's a or b)...
| @ |
MBT |
| 1 |
A or B |
| 2 |
A or B or C |
3. Compare all the MBT statements with all the MBF statements. If any match, you can eliminate them. For example, we can eliminate {A and B}...
| @ |
MBT |
MBF |
| 1 |
{A or B} |
{A and B} |
| 2 |
{A and B} or {A and C} or {B and C} |
{A and B and C} |
| 2' |
{B and C} or {B and D} or {C and D} |
{B and C and D} |
| 3 |
{C and D} or {C and E} or {D and E} |
{ C and D and E} |
Logic examples
1.
| 1 |
X |
X |
X |
2 |
| 3 |
5 |
a |
4 |
2 |
| X |
X |
b |
3 |
X |
| X |
|
c |
X |
2 |
| @ |
proves |
| 5 |
a or b |
| 4 |
a or b |
| 3 |
a or b or c |
Therefore, 'c' has no mine.
2.
| 1 |
X |
X |
X |
2 |
| 3 |
5 |
a |
4 |
2 |
| X |
X |
b |
3 |
X |
| X |
|
3' |
X |
2 |
| @ |
proves |
| 5 |
a or b |
| 4 |
a or b |
| 3' |
b or c |
Therefore, inconclusive - nothing to do.
3.
| @ |
proves |
| 4 |
{a and b} or {a and c} or {b and c} |
| 2 |
b or c |
Therefore,
- we can eliminate {b and c} - it contradicts b or c
- we know we must have 'a'; {a and b} or {a and c} == {a} + {b or c}
- stuck! Indeterminate!
4. TODO: indeterminate example where you compute the odds and take the best case
-- MattWalsh - 22 Feb 2002