Certainly an unintentional side-effect...mar wrote:Then why it helps to solve the above mentioned positions? Without it, Crafty is blind in these. So it must be more than just an optimization. A side effect perhaps?bob wrote:This is a well-known optimization, nothing more. Not related to verification or anything...
IF the positions contain zugzwang, not doing a null is a perfect defense to making such errors. IE the hash table suggests the null-move won't fail high, but in reality it will because the side on move is in zugzwang. But that's not the reason for the trick, it is to avoid null-moves searches that fail low and waste nodes...