Avoiding Circular Solutions

When expanding a state's vertex, we want to eliminate any children that already occur on the path from the root.

For example, the paths shown below are circular because they return to the state represented by the root: