I must be getting confused about how the bounds of transposition table scores are handled, since I have looked at various chess engines (crafty, fruit, etc.) and haven't seen them use the bounds provided by a TT lookup if it doesn't produce a cutoff:
Code: Select all
// TT hit is at a high enough depth, but it was determined that the bounds will not cause a cutoff here
if tt_returns_upperbound {
beta = min(beta, tt_upper_bound)
} else if tt_returns_lowerbound {
alpha = max(alpha, tt_lower_bound)
}
The only explanation I found plausible is that engines do not do cutoffs in PV nodes, and non-PV nodes might have a zero-width window anyway.
Can anyone clear my confusion
