Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix a condition in connected_moves()
When checking if the moving piece p1 in a previous move m1 defends the destination square of a move m2 we have to use the occupancy with the from square of m2 removed so to take in account the case in which f2 will block an x-ray attack from p1. For instance in this position: r2k3r/p1pp1pb1/qn3np1/1N2P3/1p3P2/2B5/PPP3QP/R3K2R b KQ - 1 9 The move eXf6 is connected to the previous move Bc3 that defends the destination square f6. With this patch we have about 10% more moves detected as 'connected'. Anyhow the absolute number is very low, about 4000 more moves out of 6M nodes searched. Another issue spotted by Hongzhi "Hawk Eye" Cheng ;-) new bench: 5757373
- Loading branch information