Code: Select all
uint64_t historyHash() const {
uint64_t ret = hashKey;
if (halfMoveClock >= 80)
ret ^= moveCntKeys[std::min(halfMoveClock, 100)];
return ret;
}
This is the first time I saw this trick that I guess is used to avoid a draw by repeptition score to be stored in TT associated with a position.
I would like to ask from where it comes this idea and what are tests result of this idea (I guess we need long TC to test it).
Thanks
Marco