by H.G.Muller » 03 Aug 2008, 19:59
Well, the Nalimov generator is no good, and it cannot do 7-men. So I assume that the 7-men EGTBs will be generated by another generator, that does not suffer from this behavior.
The sensible way to approach the dependency problem is through using minimax with iterative deepening on the tablebase tree. If you see that all positions of a certain P-slice of KQPPKPPP are won when you make the assumption that every KQPPKQPP position is draw (because you can always prevent the promotion), there is no point in figuring out which KQPPKQPP positions are not lost after all. You simply prune the branch.
Similarly, when you see that a P-slice of KQPPKPPP is won even if you assume that all KQQPKPPP positons are lost (because you can force mate without a second promotion), the need to do KQQPKPPP would only arise if you were interested in the exact DTC within KQPPKPPP. (Because promotion might be quicker to enforce than mate.) But if you were only interested in the bitbase for KQPPKPPP, because you wanted to calculate DTC in KPPPKPPP, you would not bother with KQPPKPPP.
Chess is pretty much a "first promotion wins" game. Only for a very few P-slices, with multiple Pawns very close to promotion, you would really have to work. And indeed, it will require a lot of effort to figure out which slim winning chances you have when the 3 black Pawns are all on 7th rank. But most of the P-slices that could convert to this troublesome P-sice will not be affected at all. The retrograde building process will simply say: "Hey, when all his Pawns are on 7th rank, it becomes really hard to win this. So let us prevent him from pushing his Pawns."