Skip to content

Commit

Permalink
Fix KBPK bug
Browse files Browse the repository at this point in the history
With

position fen 7k/8/8/8/8/7P/6K1/7B w - - 0 1
go depth 25

The evaluation at depth 22 is not draw as it should be. The reason is that
when search reaches the position 8/6kP/8/8/8/3B4/6K1/8 w - - 0 1 if white plays
h8R or h8N then we get a position that is a "KNOWN_WIN" and is _not_ a check, so
futility pruning in qsearch kicks in and black may think that it is "futile"
to reply Kxh8 since, according to the logic of the code, it cannot raise the score
back towards a draw.

bench: 4728533
  • Loading branch information
leachjoinery authored and mcostalba committed Aug 24, 2013
1 parent b9f5d1c commit 5e331f9
Showing 1 changed file with 1 addition and 0 deletions.
1 change: 1 addition & 0 deletions src/search.cpp
Expand Up @@ -1230,6 +1230,7 @@ namespace {
&& !givesCheck
&& move != ttMove
&& type_of(move) != PROMOTION
&& futilityBase > -VALUE_KNOWN_WIN
&& !pos.is_passed_pawn_push(move))
{
futilityValue = futilityBase
Expand Down

0 comments on commit 5e331f9

Please sign in to comment.