Mrs. Hudson path deduction example #3
Here's another worthwhile example of path deductions. I stumbled upon this, but it's a good example because the Hint that the game provides is less than perfect, and is actually misleading. Here's a picture of the puzzle at the point that I asked for a hint, which was that the proto-path circled in RED can NOT be a path because it would cause problems near the area circled in GREEN:
This is another case of how humans and computers think VERY differently. Let's try making that proto-path a PATH and see what happens:
First, that completes the two paths in and out of the street above the Level, so the other two proto-paths in that street can NOT be paths, as shown in the left picture. That now leaves the block directly north of the Level (where the Green Hat is possible) with only one proto-path connected to it. Obviously that can NOT be a path, as then there'd be no way back out of that block. When it is removed, that forces the path coming EAST out of the Brace (Drill) to turn and go south until it connects up with the path coming NORTH between the Crow and the Level, as shown in the picture on the right. But that forces the two EAST-WEST proto-paths between the Crow and the Level to NOT be there, as shown below on the left. And that then leaves us with only one way for the path to get into the Crow block, from the SOUTH, as shown on the right.
But that leaves us with an isolated path loop in the upper-left corner of the puzzle, which obviously is WRONG. But the only way for the PROGRAM to figure that a piece of path has become isolated from other pieces of path is to scan the puzzle for a piece of path that cannot reach another piece of path by any means, following known paths and proto-paths. In this case, the first one it finds is the northwestern-most piece that cannot be connected to the loop, which is the path at the top of B street, as shown in the first picture at the top of this page.
Less than elegant? Sure. But since computers and people think quite differently at times, it can be very challenging to try to explain the machine's deduction in human terms. Sure, you could come up with a method that would handle THIS particular case just fine and explain it in a suitable fashion. The problem is coming up with a GENERAL method that will work for a host of different situations. A difficult problem.
Regardless, the above explains why and how the program came to the conclusion that there can NOT be a path going NORTH out of the Level block.