Helpmate tablebases complete through six pieces (DTM + solution count, 1,001 classes)

Discussion of chess software programming and technical issues.

Moderator: Ras

osi
Posts: 1
Joined: Tue Sep 08, 2026 4:39 pm
Full name: Oliver Sick

Helpmate tablebases complete through six pieces (DTM + solution count, 1,001 classes)

Post by osi »

I have published a tablebase project for chess helpmates which in the current state reached every material class up to six pieces, 1,001 of them, solved and published. Also included are command line tools for mining and generating TBs.

A helpmate is the cooperative case: Black helps White to mate. Because both sides want the same thing, solving is a shortest-path problem rather than min/max, so whole classes are tractable. Each table stores, per position and side to move, the distance to mate and the number of distinct optimal solutions (saturating at 255). This number is what problem composers care about: count = 1 is a sound problem.

Some numbers for the current set of tablebases (up to 6 pieces)
* 18.7 trillion position cells,
* 3.85 TiB block-compressed (zstd, 64 KiB blocks, random access),
* 438 billion positions with a unique solution.
* The longest mate is h#17.5; the longest unique one is h#13, and nothing with six or less pieces goes further.

Most six-piece tables were computed by two contributors from github, T31M (584 tables) and popeye37 (77), on their own machines, and checked with a verify step (sidecar recomputed from the payload, local consistency against successors and sub-tables, an independent python-chess solver). T31M also made the generator about 20x faster, with byte-identical output.

What are the artifacts?
* Code and Docs at github (C++ core, Python bindings, CLI, MIT Licence): https://github.com/osick/helpmate-tablebase
* Tablebases at Huggingface https://huggingface.co/datasets/osick/helpmate-tables
* Showcase with puzzles: https://osick.github.io/helpmate-tablebase/

I would be happy to get your feedback.

A lot of functional extensions are possible. And to extend it to seven pieces it would need about 1.8 TiB of RAM per pawnless class (5.3 TiB with one pawn). If you have access to such a machine, I would like to hear from you.