Question about the endgame tablebase


I have a question regarding the following position:
8/B7/7P/4p3/7k/8/2K5/b7 w - - 6 4

When you analyse this position with the integrated tablebase it shows two winning moves - Bd4 and Kb1.
I see that Bd4 is winning (although being unintuitive) but how does Kb1 win?

The tablebase itself is stating that
1. Kb1 Bc3
2. Kc2
is winning but to me it seems to be draw due to threefold repetition.
Is this a flaw in the tablebase or am I missing something here?

There is indeed a possible repetition here, but the tablebase doesn't care about that. What it does care about is what, from a certain position, the theoretical winning/losing/drawing moves are, assuming perfect play from both sides after that move. If we assume perfect play after 1. Kb1, then 1... Bc3 2. Kc2 Ba1 3. Bd4 is the line (or even 3. Kb1 as long as white doesn't do it a third time). This repetition has never taken away the fact that white still has a theoretical win in the position: after 1. Kb1, black can do nothing to prevent losing.

The endgame database is supposed to play the quickest win, so Kb1 is an error in the database as it's not playing the perfect move.

I hear a lot about the puzzle doesn't accept a correct answer due to it being one move longer, so it's good to hear the computer, by taking advice from a database, would fail by its own standards.

@jonesmh Kb1 is NOT an error in the database. It's just not the fastest win.

From this position, with 2 queens vs a lone king, all those moves but the 2 stalemating draws are winning. You can play Qc8, for instance, hanging the queen missing the mate in 1 and still win. It's not an error at all in the database to include this. It's just not the fastest mate. An "error in the database" implies that some move that is incorrectly evaluated has made it into the database. The database has no errors. Every possible solution has been solved. It's completely flawless. The evaluation is correct.

An "error in the database" would be for instance a winning position that is claimed to be drawn, or a drawn position that is claimed to be won, or a won position claimed to be lost, or a lost position claimed to be won, or an inaccurate number given on the total # of moves to zero or mate. Tablebases don't do that. On the other hand, I have seen engines claim something like Mate in 10, but it takes them more than 10 moves. So an engine evaluation can be incorrect, but not a tablebase one. Table bases have been BRUTE FORCED TO COMPLETION.

A tablebase alone is even more reliable than all the engines, and Grand Masters combined if they lack a table base. They can spot mate a thousand moves away.

@lurarose As I stated, the database is supposed to play the quickest win, so by not being the fastest win, it is an error. What you inferred is also incorrect. A wrong move is a wrong move. A misspelling is a misspelling. When you tried to change the conversation, either by including equally winning moves is a different position or including computers/GMs, you are, in effect, admitting that you are wrong. (

I've respected your opinion on the Tani debate, but this post (#4) has me suspecting your sanity or your ignorance of what an error is.

@jonesmh i believe this is incorrect. the tablebase is supposed to give _all_ the winning moves, not just the fastest. The tablebase also does not account for possibly having been in the position before the current move. In other words, it will think that Kb1 is a valid winning move even if it leads into threefold repetition, because the first time this position is on the board, it will be a winning move.

This is what makes a tablebase a tablebase; all possible moves are listed, with their game-theoretical values. The fastest win will be listed at the top, it is true, but slower wins will also be listed.

Thanks @lurarose and @ProgramFOX. Your answers make it pretty clear to me.
Even after
1. Kb1 Bc3
2. Kc2
and perfect play by black, black can't avoid being mated.

The tablebase/database, especially to save space, only gives the best move, the result, and the number of moves until mate if applicable. Although other metrics have been included.

As these tablebases are uses for computers to find the best move, adding additional moves would be illogical and make the tablebases more cluttered and add to their already considerable size. Adding inferior moves, especially ones which repeat the position, could cause the computer to play these inferior moves. Although in you scenario of the best being listed first, programmers would easily find the best move.

"Syzygy Bases, a compact six piece endgame database developed by Ronald de Man, published on April 01, 2013. Since August 2018, seven piece Syzygy Bases are available after an effort by Bojun Guo started in March 2018. Syzygy Bases consist of two sets of files, WDL files storing win/draw/loss information considering the fifty-move rule for access during search, and DTZ files with distance-to-zero information for access at the root. The generator is released under the GNU General Public License Version 2, the thread safe probing code is released without restrictions. As of February 2015, all 3-5 and most important 6-men Syzygy Bases are commercially available on 4 DVDs by ChessBase as Endgame Turbo 4 for their products Deep Fritz 14, Komodo Chess 8, Houdini 4 or ChessBase 12/13."

You can't post in the forums yet. Play some games!